/* =======================================================================
   H&N CUSTOM HOMES — capture surfaces styling (hn-capture.css)
   Palette: azure #00AEEF, ink #14181B, paper #F7F6F2, marine #0C2A3A,
   marine-2 #0a222f, champagne #C9A86A, mist #8B97A0.
   Display: Cormorant Garamond. Body: Inter. (Both loaded by the pages.)
   All overlays sit at z-index 500+.
   ======================================================================= */

/* ---------- honeypot ---------- */
.hnc-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0;pointer-events:none}

/* ---------- modal shell ---------- */
.hnc-overlay{position:fixed;inset:0;z-index:520;background:rgba(8,18,24,.66);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;animation:hncFade .25s ease}
.hnc-modal{position:relative;width:100%;max-width:520px;max-height:88vh;overflow-y:auto;background:#F7F6F2;color:#14181B;border-radius:12px;padding:38px 34px 34px;box-shadow:0 30px 80px -30px rgba(8,18,24,.7);font-family:'Inter',system-ui,sans-serif}
.hnc-x{position:absolute;top:12px;right:14px;width:36px;height:36px;border:0;background:none;font-size:1.5rem;line-height:1;color:#8B97A0;cursor:pointer;transition:.2s}
.hnc-x:hover{color:#14181B}
@keyframes hncFade{from{opacity:0}to{opacity:1}}

/* ---------- shared form bits ---------- */
.hnc-eyebrow{font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:#00AEEF;font-weight:600;margin-bottom:10px}
.hnc-q{font-family:'Cormorant Garamond',serif;font-size:1.7rem;line-height:1.15;margin:6px 0 14px;color:#0C2A3A}
.hnc-sub{font-size:.88rem;font-weight:300;color:#4a555c;margin:0 0 16px;line-height:1.55}
.hnc-note{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#8B97A0;margin:-8px 0 14px}
.hnc-dots{display:flex;gap:7px;margin:0 0 18px}
.hnc-dot{width:26px;height:3px;border-radius:2px;background:#dfe3e1}
.hnc-dot.on{background:#00AEEF}
.hnc-opts{display:grid;gap:10px}
.hnc-opt{text-align:left;padding:14px 16px;border:1px solid #d8ddda;border-radius:8px;background:#fff;font:500 .9rem 'Inter',sans-serif;color:#14181B;cursor:pointer;transition:.2s}
.hnc-opt:hover{border-color:#00AEEF;box-shadow:0 8px 22px -14px rgba(0,174,239,.55)}
.hnc-form{display:grid;gap:10px;margin-top:4px}
.hnc-in{padding:13px 14px;border:1px solid #d8ddda;border-radius:8px;background:#fff;font:400 .9rem 'Inter',sans-serif;color:#14181B;width:100%}
.hnc-in:focus{outline:none;border-color:#00AEEF;box-shadow:0 0 0 3px rgba(0,174,239,.18)}
.hnc-btn{padding:14px 22px;border:0;border-radius:8px;background:#00AEEF;color:#04222e;font:600 .78rem 'Inter',sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:.2s}
.hnc-btn:hover{background:#12bdfb;transform:translateY(-1px)}
.hnc-back{margin-top:14px;border:0;background:none;font:500 .74rem 'Inter',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#8B97A0;cursor:pointer}
.hnc-back:hover{color:#0C2A3A}
.hnc-ok{padding:18px;border-radius:8px;background:rgba(0,174,239,.1);border:1px solid rgba(0,174,239,.35);color:#0C2A3A;font:400 .92rem/1.5 'Inter',sans-serif}
.hnc-err{margin-top:12px;padding:13px 15px;border-radius:8px;background:rgba(201,168,106,.12);border:1px solid rgba(201,168,106,.5);color:#0C2A3A;font:400 .85rem/1.5 'Inter',sans-serif}
.hnc-err a{color:#00789f;text-decoration:underline}

/* ---------- tier 3 inline follow forms ---------- */
.hnc-follow{max-width:560px;margin:26px auto 0;padding:22px 24px;background:#0a222f;border:1px solid rgba(201,168,106,.25);border-radius:10px;color:#fff}
.hnc-fh{font-family:'Cormorant Garamond',serif;font-size:1.35rem;color:#fff;margin-bottom:4px}
.hnc-follow .hnc-sub{color:rgba(255,255,255,.68)}
.hnc-follow .hnc-in{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.2);color:#fff}
.hnc-follow .hnc-in::placeholder{color:rgba(255,255,255,.45)}
.hnc-follow .hnc-in:focus{border-color:#00AEEF}
.hnc-follow .hnc-ok{background:rgba(0,174,239,.14);color:#fff;border-color:rgba(0,174,239,.4)}
.hnc-follow .hnc-err{color:#fff}
.hnc-row{grid-template-columns:1fr auto}
.hnc-row .hnc-hp{grid-column:1/-1}
.hnc-followband{background:#F7F6F2;padding:10px 0 34px}
.hnc-followband .wrap{max-width:1200px;margin:0 auto;padding:0 40px}
.hnc-followband .hnc-follow{margin:0 auto}

/* ---------- exit intent ---------- */
.hnc-modal.hnc-exit{background:linear-gradient(160deg,#0C2A3A 0%,#0a222f 70%,#081a24 100%);color:#fff;border:1px solid rgba(201,168,106,.3)}
.hnc-exit .hnc-q{color:#fff;font-size:2rem}
.hnc-exit .hnc-sub{color:rgba(255,255,255,.7)}
.hnc-exit .hnc-eyebrow{color:#C9A86A}
.hnc-exit .hnc-x{color:rgba(255,255,255,.55)}
.hnc-exit .hnc-x:hover{color:#fff}
.hnc-exit .hnc-follow{margin:0;padding:0;background:none;border:0}

/* ---------- chatbot ---------- */
.hnc-chat-bubble{position:fixed;right:22px;bottom:22px;z-index:510;width:58px;height:58px;border-radius:50%;border:0;background:#00AEEF;color:#04222e;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 14px 34px -12px rgba(0,174,239,.65);transition:.25s}
.hnc-chat-bubble:hover{transform:translateY(-2px) scale(1.04)}
.hnc-chat-panel{position:fixed;right:22px;bottom:92px;z-index:515;width:min(380px,calc(100vw - 32px));max-height:min(560px,calc(100vh - 120px));display:none;flex-direction:column;background:#F7F6F2;border-radius:14px;overflow:hidden;box-shadow:0 30px 70px -25px rgba(8,18,24,.6);font-family:'Inter',system-ui,sans-serif;border:1px solid rgba(12,42,58,.12)}
.hnc-chat-panel.open{display:flex;animation:hncUp .3s cubic-bezier(.2,.8,.2,1)}
@keyframes hncUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.hnc-chat-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:#0C2A3A;color:#fff}
.hnc-chat-head b{font-family:'Cormorant Garamond',serif;font-size:1.15rem;display:block}
.hnc-chat-head span{display:block;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:#C9A86A;margin-top:2px}
.hnc-chat-close{border:0;background:none;color:rgba(255,255,255,.6);font-size:1.4rem;cursor:pointer;line-height:1}
.hnc-chat-close:hover{color:#fff}
.hnc-chat-log{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;min-height:120px}
.hnc-msg{max-width:88%;padding:11px 14px;border-radius:12px;font-size:.85rem;line-height:1.5}
.hnc-msg.bot{background:#fff;border:1px solid #e2e6e4;color:#14181B;align-self:flex-start;border-bottom-left-radius:4px}
.hnc-msg.me{background:#00AEEF;color:#04222e;align-self:flex-end;border-bottom-right-radius:4px}
.hnc-msg a{color:#00789f;text-decoration:underline}
.hnc-chat-actions{padding:12px 16px 16px;display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid #e2e6e4;background:#F7F6F2}
.hnc-chip{padding:9px 14px;border:1px solid #00AEEF;border-radius:999px;background:#fff;color:#0C2A3A;font:500 .78rem 'Inter',sans-serif;cursor:pointer;transition:.2s}
.hnc-chip:hover{background:#00AEEF;color:#04222e}
.hnc-chat-form{width:100%}
.hnc-chat-formwrap{width:100%}

/* ---------- mobile ---------- */
@media(max-width:640px){
  .hnc-modal{padding:30px 22px 26px;max-height:92vh}
  .hnc-q{font-size:1.45rem}
  .hnc-row{grid-template-columns:1fr}
  .hnc-followband .wrap{padding:0 24px}
  .hnc-chat-panel{right:16px;bottom:86px}
  .hnc-chat-bubble{right:16px;bottom:16px;width:52px;height:52px}
}

/* optional message field on the Tier 1 form — matches .hnc-in exactly */
.hnc-textarea{width:100%;font:inherit;font-size:.95rem;color:inherit;background:#fff;border:1px solid var(--line,#e2ddd2);padding:13px 14px;margin-bottom:10px;resize:vertical;min-height:84px;font-family:'Inter',system-ui,sans-serif}
.hnc-textarea:focus{outline:none;border-color:var(--azure,#00AEEF)}

/* Consent line under every submit button. Deliberately quiet but legible:
   it has to be readable to count as express permission, so it is not greyed
   into invisibility. */
.hnc-consent{
  grid-column:1/-1;
  margin:10px 0 0;
  font-size:.72rem;
  line-height:1.5;
  font-weight:300;
  opacity:.72;
}
