/* ═══════════════════════════════════════════════════════════
   SATYA REALTY · funnel.css — buyer funnel pages
   Reuses tokens from style.css (loaded first).
   ═══════════════════════════════════════════════════════════ */

/* ---------- funnel hero (light, advisory feel) ---------- */
.f-hero{position:relative;background:var(--grad-hero);color:#fff;padding:150px 0 80px;overflow:hidden}
.f-hero .wrap{position:relative;z-index:2}
.f-hero h1{color:#fff;font-size:clamp(2.2rem,5.4vw,3.6rem);font-weight:800;max-width:18ch}
.f-hero .sub{color:#dbe6f5;font-size:1.16rem;margin-top:16px;max-width:56ch}
.f-hero .hero-cta{margin-top:30px}
.f-hero .crumb{font-size:.85rem;color:var(--mist);margin-bottom:18px}
.f-hero .crumb a{color:var(--gold-bright);font-weight:600}
@media(max-width:700px){.f-hero{padding:120px 0 60px}}

/* ---------- multi-step form ---------- */
.srf-zone{background:var(--cream);padding:70px 0 90px}
.srf-wrap{width:min(760px,92vw);margin:0 auto}
.srf-progress{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.srf-prog-track{flex:1;height:8px;border-radius:99px;background:#e9dfcd;overflow:hidden}
.srf-prog-fill{height:100%;border-radius:99px;background:var(--grad-gold);transition:width .35s var(--ease)}
.srf-prog-label{font-size:.8rem;font-weight:700;color:var(--muted);white-space:nowrap}
.srf-card{background:#fff;border:1px solid var(--line-lt);border-radius:var(--r-lg);padding:38px;box-shadow:var(--shadow-card);position:relative}
.srf-q{font-size:clamp(1.3rem,3vw,1.7rem);color:var(--navy-800)}
.srf-sub{color:var(--muted);font-size:.98rem;margin-top:6px}
.srf-opts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}
.srf-opts.wide{grid-template-columns:1fr 1fr 1fr}
@media(max-width:640px){.srf-opts,.srf-opts.wide{grid-template-columns:1fr 1fr}.srf-card{padding:26px 20px}}
@media(max-width:420px){.srf-opts,.srf-opts.wide{grid-template-columns:1fr}}
.srf-opt{
  display:flex;align-items:center;justify-content:center;text-align:center;
  min-height:58px;padding:.9rem 1rem;border-radius:14px;border:1.6px solid var(--line-lt);
  background:#fdfbf6;font:inherit;font-size:1rem;font-weight:600;color:var(--ink);cursor:pointer;
  transition:border .15s,background .15s,transform .12s;
}
.srf-opt:hover{border-color:var(--gold)}
.srf-opt:active{transform:scale(.98)}
.srf-opt.on{border-color:var(--gold);background:#fdf3e0;color:var(--navy-800);box-shadow:0 0 0 3px rgba(232,163,61,.18)}
.srf-opt:focus-visible{outline:3px solid rgba(232,163,61,.5);outline-offset:2px}
.srf-next{width:100%;margin-top:24px;padding:1.05rem;font-size:1.05rem}
.srf-back{background:none;border:0;color:var(--muted);font:inherit;font-weight:700;font-size:.9rem;cursor:pointer;margin-top:18px;padding:6px 2px}
.srf-back:hover{color:var(--navy-800)}
.srf-shake{animation:srfshake .35s}
@keyframes srfshake{0%,100%{transform:translateX(0)}25%{transform:translateX(-7px)}75%{transform:translateX(7px)}}

/* fields step */
.srf-fields{margin-top:24px;display:grid;gap:4px}
.srf-fields .field label{display:block;font-weight:700;font-size:.86rem;margin-bottom:7px;color:var(--navy-800)}
.srf-fields .field{margin-bottom:14px}
.srf-fields input,.srf-fields select{
  width:100%;padding:.95rem 1.05rem;border:1.6px solid var(--line-lt);border-radius:12px;
  font:inherit;font-size:1rem;background:#fdfbf6;color:var(--ink);
}
.srf-fields input:focus,.srf-fields select:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 4px rgba(232,163,61,.16);background:#fff}
.srf-phone-row{display:grid;grid-template-columns:150px 1fr;gap:10px}
@media(max-width:480px){.srf-phone-row{grid-template-columns:125px 1fr}}
.srf-err{color:#c0392b;font-size:.82rem;font-weight:600;min-height:1em;margin-top:4px}
.srf-opt-tag{font-weight:500;color:var(--muted);font-size:.78rem}

/* result screen */
.srf-result h3{font-size:1.6rem;color:var(--navy-800)}
.srf-result .srf-summary{
  margin:18px 0;padding:18px 22px;border-radius:var(--r-md);background:#fdf6e8;
  border:1px solid rgba(232,163,61,.35);color:var(--ink);font-size:1.02rem;line-height:1.7;
}
.srf-result ul{list-style:none;margin:16px 0;display:grid;gap:8px}
.srf-result ul li{display:flex;gap:.55rem;align-items:flex-start;font-size:.95rem;color:var(--ink);font-weight:600}
.srf-result ul li::before{content:"✓";color:var(--green);font-weight:800}
.srf-result .btn{margin-top:10px}
.srf-result .srf-alt{margin-top:14px;font-size:.9rem;color:var(--muted)}
.srf-result .srf-alt a{color:var(--ember-deep);font-weight:700;text-decoration:underline}

/* ---------- trust section ---------- */
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:44px}
.trust-card{background:#fff;border:1.4px solid var(--line-lt);border-radius:var(--r-md);padding:26px 22px}
.trust-card .tnum{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:var(--navy-800);color:var(--gold-bright);font-family:'Sora';font-weight:800;margin-bottom:14px}
.trust-card b{display:block;color:var(--navy-800);font-size:1rem;line-height:1.4}
.trust-card small{display:block;color:var(--muted);font-size:.86rem;margin-top:5px}
@media(max-width:900px){.trust-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.trust-grid{grid-template-columns:1fr}}

/* ---------- guide/location cards ---------- */
.loc-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:44px}
@media(max-width:820px){.loc-grid{grid-template-columns:1fr}}
.loc-card{background:#fff;border:1.4px solid var(--line-lt);border-radius:var(--r-lg);padding:30px;box-shadow:var(--shadow-sm, 0 6px 20px rgba(11,36,71,.06))}
.loc-card h3{font-size:1.3rem;color:var(--navy-800)}
.loc-card .loc-tag{color:var(--ember-deep);font-weight:700;font-size:.84rem;margin:4px 0 14px}
.loc-card dl{display:grid;gap:10px;margin:0}
.loc-card dt{font-weight:800;font-size:.82rem;color:var(--navy-800);text-transform:uppercase;letter-spacing:.06em}
.loc-card dd{margin:0 0 6px;color:var(--muted);font-size:.94rem;line-height:1.6}
.loc-card .btn{margin-top:16px}

/* mid-page CTA band */
.mini-cta{
  margin:44px 0;padding:30px;border-radius:var(--r-lg);background:linear-gradient(150deg,var(--navy-700),var(--navy-950));
  color:#fff;display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between;
}
.mini-cta b{font-family:'Sora';font-size:1.15rem;color:#fff}
.mini-cta span{display:block;color:var(--mist);font-size:.92rem;margin-top:4px;font-weight:500}

/* checklists on SEO pages */
.check-list{list-style:none;display:grid;gap:10px;margin:22px 0}
.check-list li{display:flex;gap:.6rem;align-items:flex-start;color:var(--ink);font-size:.98rem;line-height:1.6}
.check-list li::before{content:"✓";color:var(--green);font-weight:800;flex:none}

/* FAQ */
.faq{display:grid;gap:12px;margin-top:36px}
.faq details{background:#fff;border:1.4px solid var(--line-lt);border-radius:var(--r-md);padding:18px 22px}
.faq summary{font-weight:700;color:var(--navy-800);cursor:pointer;font-size:1rem}
.faq p{color:var(--muted);margin-top:10px;font-size:.95rem;line-height:1.7}

/* real listings strip */
.inv-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
@media(max-width:860px){.inv-strip{grid-template-columns:1fr}}
.inv-card{display:block;background:#fff;border:1.4px solid var(--line-lt);border-radius:var(--r-md);padding:20px;transition:border .2s,transform .2s}
.inv-card:hover{border-color:var(--gold);transform:translateY(-4px)}
.inv-card b{display:block;color:var(--navy-800);font-size:1rem}
.inv-card span{display:block;color:var(--muted);font-size:.86rem;margin-top:5px;line-height:1.5}
.inv-card .inv-go{color:var(--ember-deep);font-weight:700;font-size:.86rem;margin-top:10px}

/* section paddings for content pages */
.f-section{padding:70px 0}
.f-section.alt{background:#fff}
.f-note{margin-top:30px;padding:16px 20px;border-radius:var(--r-md);background:#fdf6e8;border:1px solid rgba(232,163,61,.3);color:var(--muted);font-size:.88rem}
