/* Typhu Homes concierge widget — thc- prefixed, self-contained (no Tailwind dependency) */
#thc *{box-sizing:border-box}
.thc-btn{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;align-items:center;gap:9px;
  background:#0c2d40;color:#fff;border:none;border-radius:999px;padding:13px 18px 13px 15px;cursor:pointer;
  font:600 15px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  box-shadow:0 6px 22px rgba(12,45,64,.28);transition:transform .15s,box-shadow .15s}
.thc-btn:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(12,45,64,.34)}
.thc-btn svg{flex:none}
@media (max-width:767px){.thc-btn{bottom:84px;right:14px;padding:12px 15px}.thc-btn .thc-lbl{display:none}}
.thc-panel{position:fixed;right:18px;bottom:18px;z-index:61;width:378px;max-width:calc(100vw - 28px);
  height:600px;max-height:calc(100vh - 36px);background:#fff;border-radius:18px;overflow:hidden;
  display:none;flex-direction:column;box-shadow:0 18px 60px rgba(12,45,64,.32);
  font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:#1a2732}
.thc-panel.open{display:flex}
@media (max-width:767px){.thc-panel{right:0;bottom:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}}
.thc-hd{background:linear-gradient(150deg,#0c2d40,#123a52);color:#fff;padding:15px 16px;display:flex;align-items:center;gap:11px}
.thc-hd img{width:34px;height:34px;flex:none}
.thc-hd .t{flex:1;min-width:0}
.thc-hd .t b{display:block;font-size:15.5px;font-weight:700}
.thc-hd .t span{font-size:12.5px;color:#a9c6d6;display:flex;align-items:center;gap:5px}
.thc-dot{width:7px;height:7px;border-radius:50%;background:#4ade80;display:inline-block}
.thc-x{background:transparent;border:none;color:#cfe0ea;cursor:pointer;padding:4px;border-radius:6px;line-height:0}
.thc-x:hover{background:rgba(255,255,255,.12);color:#fff}
.thc-msgs{flex:1;overflow-y:auto;padding:16px;background:#f6f4ee;display:flex;flex-direction:column;gap:10px}
.thc-m{max-width:85%;padding:10px 13px;border-radius:14px;font-size:14.5px;line-height:1.45;white-space:pre-wrap;word-wrap:break-word}
.thc-bot{background:#fff;border:1px solid #e7e1d3;border-bottom-left-radius:4px;align-self:flex-start}
.thc-user{background:#0e5c86;color:#fff;border-bottom-right-radius:4px;align-self:flex-end}
.thc-typing{align-self:flex-start;color:#7a8894;font-size:13px;padding:4px 6px}
.thc-chips{display:flex;flex-wrap:wrap;gap:7px;padding:0 16px 10px;background:#f6f4ee}
.thc-chip{background:#fff;border:1px solid #cfe0ea;color:#0e5c86;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}
.thc-chip:hover{background:#eaf4fa}
.thc-in{display:flex;gap:8px;padding:12px;border-top:1px solid #e7e1d3;background:#fff}
.thc-in input{flex:1;border:1px solid #cbd3da;border-radius:10px;padding:11px 12px;font-size:16px;font-family:inherit}
.thc-send{background:#0e5c86;color:#fff;border:none;border-radius:10px;padding:0 15px;cursor:pointer;font-weight:600;font-family:inherit}
.thc-send:disabled{opacity:.5;cursor:default}
.thc-lead{padding:14px 16px;background:#fff;border-top:1px solid #e7e1d3;display:none;flex-direction:column;gap:8px}
.thc-lead.open{display:flex}
.thc-lead h4{margin:0;font-size:15px;color:#0c2d40}
.thc-lead input{border:1px solid #cbd3da;border-radius:9px;padding:10px;font-size:16px;font-family:inherit}
.thc-lead .go{background:#0c2d40;color:#fff;border:none;border-radius:10px;padding:12px;font-weight:700;cursor:pointer;font-size:15px;font-family:inherit}
.thc-ho{display:none;flex-direction:column;gap:8px;padding:14px 16px;background:#e7f4ec;border-top:1px solid #bfe3cd}
.thc-ho.open{display:flex}
.thc-ho a{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:10px;font-weight:700;text-decoration:none;font-size:15px}
.thc-wa{background:#25d366;color:#0a3d1e}
.thc-sms{background:#0e5c86;color:#fff}
.thc-tel{background:#fff;color:#0c2d40;border:1px solid #0c2d40}
.thc-note{font-size:12px;color:#6b7883;text-align:center;padding:6px 16px 10px;background:#f6f4ee}
.thc-btn:focus-visible,.thc-chip:focus-visible,.thc-send:focus-visible,.thc-x:focus-visible{outline:2px solid #4bb0e0;outline-offset:2px}

/* ---- exit-intent capture ---- */
.thx-wrap{position:fixed;inset:0;z-index:70;background:rgba(12,45,64,.55);display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;transition:opacity .2s}
.thx-wrap.open{opacity:1}
.thx-card{position:relative;background:#fff;border-radius:18px;max-width:440px;width:100%;padding:30px 26px 22px;box-shadow:0 24px 70px rgba(12,45,64,.4);transform:translateY(8px);transition:transform .2s;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
.thx-wrap.open .thx-card{transform:none}
.thx-card h3{font-family:Georgia,"Times New Roman",serif;font-size:24px;line-height:1.2;color:#0c2d40;margin:0 0 10px}
.thx-card p{color:#4a5b68;font-size:15px;line-height:1.5;margin:0 0 16px}
.thx-x{position:absolute;top:10px;right:12px;background:none;border:none;font-size:26px;line-height:1;color:#94a3b8;cursor:pointer;padding:4px 8px;border-radius:6px}
.thx-x:hover{background:#f1f5f9;color:#0c2d40}
.thx-f{display:flex;gap:8px;flex-wrap:wrap}
.thx-f input{flex:1;min-width:180px;border:1px solid #cbd3da;border-radius:10px;padding:12px;font-size:16px;font-family:inherit}
.thx-f button{background:#0c2d40;color:#fff;border:none;border-radius:10px;padding:12px 18px;font-weight:700;cursor:pointer;font-size:15px;font-family:inherit}
.thx-f button:hover{background:#123a52}
.thx-f button:disabled{opacity:.6;cursor:default}
.thx-fine{font-size:12px;color:#94a3b8;margin:12px 0 0}
.thx-ok{display:none;background:#e7f4ec;color:#166534;border-radius:10px;padding:12px;font-weight:600;margin:0}
.thx-card.done .thx-f,.thx-card.done .thx-fine,.thx-card.done>p:not(.thx-ok){display:none}
.thx-card.done .thx-ok{display:block}
.thx-f input:focus-visible,.thx-f button:focus-visible,.thx-x:focus-visible{outline:2px solid #4bb0e0;outline-offset:2px}
@media (prefers-reduced-motion:reduce){.thx-wrap,.thx-card{transition:none}}

/* ---- promo popup extras (name row, consent, inline code) ---- */
.thx-row{display:flex;gap:8px;flex-wrap:wrap}
.thx-row input{flex:1;min-width:130px}
.thx-check{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;color:#5b6b78;line-height:1.4;margin:2px 0 0}
.thx-check input{margin-top:3px;flex:none}
.thx-check a{color:#0e5c86;text-decoration:underline}
.thx-code{display:none;font:700 22px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;letter-spacing:1px;
  background:#f0f9ff;border:1px solid #bae6fd;color:#0c2d40;border-radius:10px;padding:14px;text-align:center;margin:0 0 10px}
.thx-card.done .thx-code{display:block}
