/* ===========================================================
   Infinite Realty — shared design system (homepage + subpages)
   Gold/black brand. One source of truth for all pages.
   =========================================================== */
:root{
  --black:#14120C; --black2:#1D1A11;
  --gold:#C9A14E; --gold-l:#E2C375; --gold-d:#A8823A;
  --cream:#FAF7F1; --ink:#262219; --gray:#6A6456; --line:#E8E2D3;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Public Sans',sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}
h1,h2{font-family:'Libre Caslon Text',serif;line-height:1.2}
.wrap{max-width:1100px;margin:0 auto;padding:0 22px}
.eyebrow{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--gold-d)}

/* NAV */
header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:3px solid var(--gold)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:10px 22px;max-width:1180px;margin:0 auto;gap:16px}
.nav .brand{display:block;line-height:0}
.nav .brand img{height:46px;width:auto;display:block}
.menu{display:flex;gap:22px;align-items:center;list-style:none}
.menu>li{position:relative}
.menu a{color:var(--ink);text-decoration:none;font-size:.82rem;font-weight:700;letter-spacing:.04em}
.menu a:hover{color:var(--gold-d)}
.menu .drop{display:none;position:absolute;top:130%;left:0;background:#fff;border:1px solid var(--line);border-radius:10px;min-width:200px;box-shadow:0 12px 30px rgba(20,18,12,.12);padding:8px 0;list-style:none}
.menu li:hover .drop{display:block}
.drop a{display:block;padding:9px 16px;font-weight:600}
.nav .call{color:var(--gold-l);background:var(--black);text-decoration:none;font-weight:700;font-size:.85rem;padding:9px 16px;border-radius:8px;white-space:nowrap}
.burger{display:none;background:none;border:none;font-size:1.6rem;cursor:pointer;color:var(--black)}
.mnav{display:none;background:#fff;border-bottom:1px solid var(--line);padding:10px 22px 18px;flex-direction:column;gap:2px}
.mnav a{color:var(--ink);text-decoration:none;font-weight:700;font-size:.95rem;padding:10px 0;border-bottom:1px solid var(--line)}
.mnav a.sub{font-weight:500;padding-left:16px;color:var(--gray)}
.mnav.open{display:flex}

/* HERO */
.hero{
  background-image:linear-gradient(100deg, rgba(20,18,12,.94) 0%, rgba(20,18,12,.82) 40%, rgba(20,18,12,.58) 68%, rgba(201,161,78,.42) 100%), url('hero.webp');
  background-size:cover;background-position:center right;background-repeat:no-repeat;
  color:#fff;padding:62px 0 96px;position:relative;overflow:hidden
}
.hero .eyebrow{color:var(--gold-l)}
.hero h1{font-size:clamp(1.95rem,5vw,3.1rem);max-width:20ch;margin:14px 0 12px}
.hero h1 em{font-style:normal;color:var(--gold-l)}
.hero .sub{color:rgba(255,255,255,.78);max-width:52ch;margin-bottom:26px;font-size:1.02rem}
.crumb{font-size:.74rem;letter-spacing:.04em;color:rgba(255,255,255,.6)}
.crumb a{color:var(--gold-l);text-decoration:none}
.addr{display:flex;background:#fff;border-radius:10px;overflow:hidden;max-width:600px;box-shadow:0 16px 44px rgba(201,161,78,.25)}
.addr input{flex:1;border:none;padding:16px 17px;font-size:.97rem;font-family:inherit;outline:none;min-width:0}
.addr button{border:none;background:var(--gold);color:var(--black);font-weight:800;padding:0 24px;cursor:pointer;font-family:inherit;font-size:.92rem;white-space:nowrap}
.micro{margin-top:12px;font-size:.78rem;color:rgba(255,255,255,.6)}
.lead-form{max-width:600px}
.lead-form.mid{margin:0 auto}
.step2{display:none}
.lead-form.advanced .step2{display:block}
.lead-form.advanced .addr:not(.s2) .lf-next{display:none}
.s2-head{font-size:.82rem;font-weight:700;color:var(--gold-l);margin:14px 0 4px;text-align:left}
.s2-head.dark{color:var(--gold-d)}
.addr.s2{margin-top:10px}
.lf-submit{display:block;width:100%;margin-top:12px;border:none;background:var(--gold);color:var(--black);font-weight:800;font-family:inherit;font-size:.95rem;padding:15px;border-radius:10px;cursor:pointer}
.lf-submit:hover{background:var(--gold-l)}
.lf-submit:disabled{opacity:.7;cursor:default}
.lf-done{display:none;margin-top:14px;background:rgba(201,161,78,.15);border:1px solid var(--gold);border-radius:10px;padding:14px 16px;font-weight:700;font-size:.92rem;color:var(--gold-l);text-align:left}
.lf-done.dark{color:var(--gold-d)}
.lead-form.complete .step2,.lead-form.complete .addr:not(.s2){display:none}
.lead-form.complete .lf-done{display:block}

/* Google address autocomplete dropdown */
.lf-ac{position:absolute;z-index:60;margin:0;padding:0;list-style:none;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 18px 44px rgba(20,18,12,.20);overflow:hidden;display:none;text-align:left}
.lf-ac.on{display:block}
.lf-ac li{display:flex;align-items:center;gap:9px;padding:10px 14px;font-size:.92rem;line-height:1.3;color:var(--ink);cursor:pointer;border-bottom:1px solid var(--line)}
.lf-ac li b{font-weight:700}
.lf-ac li small{color:var(--gray);font-weight:400}
.lf-ac li .pin{flex-shrink:0;color:var(--gold-d)}
.lf-ac li.active,.lf-ac li:not(.pwr):hover{background:rgba(201,161,78,.12)}
.lf-ac .pwr{cursor:default;justify-content:flex-end;border-bottom:none;border-top:1px solid var(--line);background:#FAFAF7;color:var(--gray);font-size:.72rem;padding:7px 14px}
.hero .alt{margin-top:8px;font-size:.84rem;color:rgba(255,255,255,.65)}
.hero .alt a{color:var(--gold-l)}
.fc-cue{margin-top:24px;display:inline-block;background:rgba(201,161,78,.12);border:1px solid rgba(201,161,78,.4);border-radius:10px;padding:12px 16px;font-size:.85rem;color:rgba(255,255,255,.88);text-decoration:none}
.fc-cue b{color:var(--gold-l)}

/* PROOF */
.proof{background:#fff;border-bottom:1px solid var(--line)}
.proof .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;padding-top:26px;padding-bottom:26px}
.pstat{text-align:center;flex:1;min-width:130px}
.pstat b{display:block;font-family:'Libre Caslon Text',serif;font-size:1.7rem;color:var(--black)}
.pstat b em{color:var(--gold-d);font-style:normal}
.pstat span{font-size:.78rem;color:var(--gray)}

section.pad{padding:72px 0}
.h2{font-size:clamp(1.5rem,3.4vw,2.1rem);max-width:26ch;margin:12px 0 32px}
.lead{font-size:1.05rem;color:var(--gray);max-width:70ch;margin-bottom:8px}
.prose p{color:var(--gray);font-size:.95rem;margin-bottom:14px;max-width:72ch}
.prose p b{color:var(--ink)}

/* REVIEWS CAROUSEL */
.reviews{background:var(--cream)}
.rev-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:26px}
.gbadge{display:inline-flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 18px;text-decoration:none;color:var(--ink)}
.gbadge .glogo{height:36px;width:36px;flex-shrink:0}
.gbadge .gtxt b{display:block;line-height:1.08;font-size:.92rem;font-weight:800;color:#3C3C3C}
.gbadge .gscore{font-family:'Libre Caslon Text',serif;font-weight:700;font-size:1.7rem;color:var(--black);margin-left:4px}
.gbadge .gstars{color:#F5B400;letter-spacing:2px;font-size:1.05rem;line-height:1.1}
.gbadge .gstars small{display:block;color:var(--gray);font-size:.7rem;letter-spacing:0}
.carousel{position:relative;overflow:hidden;border-radius:16px}
.track{display:flex;transition:transform .45s ease}
.slide{min-width:100%;background:#fff;border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:16px;padding:34px 38px}
.slide .stars{color:var(--gold-d);letter-spacing:3px;margin-bottom:14px}
.slide p{font-family:'Libre Caslon Text',serif;font-size:clamp(1rem,2.2vw,1.18rem);color:var(--ink);margin-bottom:16px}
.slide b{font-size:.85rem;color:var(--gray);font-weight:700}
.rev-ctl{display:flex;align-items:center;justify-content:space-between;margin-top:18px}
.arrows{display:flex;gap:10px}
.arrow{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--black);font-size:1.1rem;cursor:pointer;transition:.2s}
.arrow:hover{background:var(--gold);border-color:var(--gold)}
.dots{display:flex;gap:7px}
.dot{width:9px;height:9px;border-radius:50%;background:var(--line);cursor:pointer}
.dot.on{background:var(--gold-d)}
.rev-link{font-weight:700;font-size:.88rem;color:var(--gold-d);text-decoration:none;border-bottom:2px solid var(--gold);padding-bottom:2px}

/* BENEFIT / WAYS CARDS */
.benefits{background:var(--black);color:#fff;border-top:4px solid var(--gold)}
.benefits .eyebrow{color:var(--gold-l)}
.benefits .h2{color:#fff}
.bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.bcard{background:rgba(255,255,255,.05);border:1px solid rgba(201,161,78,.35);border-radius:12px;padding:22px}
.bcard.light{background:#fff;border:1px solid var(--line);border-top:4px solid var(--gold)}
.bcard b{display:block;font-size:.98rem;margin-bottom:6px;color:var(--gold-l)}
.bcard.light b{color:var(--ink)}
.bcard span{font-size:.85rem;color:rgba(255,255,255,.65)}
.bcard.light span{color:var(--gray)}
.bcard .ico{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;background:rgba(201,161,78,.16);border:1px solid rgba(201,161,78,.5);color:var(--gold-l);margin-bottom:14px}
.bcard.light .ico{color:var(--gold-d);background:rgba(201,161,78,.13);border-color:rgba(201,161,78,.4)}
.bcard .ico svg{width:25px;height:25px;display:block}
.bcard a.more{display:inline-block;margin-top:12px;color:var(--gold-l);font-weight:700;font-size:.84rem;text-decoration:none;border-bottom:2px solid var(--gold);padding-bottom:1px}
.bcard.light a.more{color:var(--gold-d)}

/* STEPS */
.sgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.sitem{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:12px;padding:20px}
.sitem b{display:block;margin-bottom:6px;font-size:.95rem}
.sitem p{font-size:.84rem;color:var(--gray)}
.sitem .n{font-family:'Libre Caslon Text',serif;color:var(--gold-d);font-size:1.4rem;display:block;margin-bottom:4px}

/* CHECK LIST (why choose us) */
.checks{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.check{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.check .ck{color:var(--gold-d);font-weight:800;font-size:1.05rem;line-height:1.3;flex-shrink:0}
.check b{display:block;font-size:.92rem;margin-bottom:2px}
.check span{font-size:.83rem;color:var(--gray)}

/* CITY PILLS */
.pills{display:flex;flex-wrap:wrap;gap:10px}
.pill{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:.85rem;font-weight:600;color:var(--ink)}

/* CASE / BEFORE-AFTER */
.case{padding:0 0 8px}
.case-card{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:0 12px 12px 0;padding:18px 22px;font-size:.93rem;color:var(--gray);max-width:760px}
.case-card b{color:var(--ink)}
.ck{color:var(--gold-d);font-weight:800;font-size:1.1rem;line-height:1.3}

/* MID CTA */
.midcta{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:44px 0;text-align:center}
.midcta h2{font-size:clamp(1.3rem,3vw,1.7rem);margin-bottom:20px}
.addr.light{margin:0 auto;border:2px solid var(--black);box-shadow:0 12px 34px rgba(201,161,78,.22)}
.midcta .micro{color:var(--gray)}

/* FORECLOSURE */
.fc{background:var(--black);color:#fff;border-top:4px solid var(--gold)}
.fc .eyebrow{color:var(--gold-l)}
.fc .h2{color:#fff}
.fc-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.fc-col h3{color:var(--gold-l);font-weight:800;font-size:1.02rem;margin-bottom:10px}
.fc-col p{color:rgba(255,255,255,.7);font-size:.9rem;margin-bottom:14px}
.fc-benefits{list-style:none;margin-bottom:16px}
.fc-benefits li{font-size:.88rem;color:rgba(255,255,255,.78);padding:7px 0;border-bottom:1px dashed rgba(201,161,78,.3)}
.fc-benefits li::before{content:"✓ ";color:var(--gold-l);font-weight:800}
.fc a.more{color:var(--gold-l);font-weight:700;font-size:.88rem;text-decoration:none;border-bottom:2px solid var(--gold);padding-bottom:2px}

/* TOP DOLLAR */
.topdollar{background:#fff;border-top:1px solid var(--line)}
.td-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.td-inner p{color:var(--gray);font-size:.95rem;max-width:56ch}
.td-inner p b{color:var(--ink)}
.toggle-cmp{background:none;border:2px solid var(--gold);color:var(--gold-d);font-weight:800;font-family:inherit;font-size:.88rem;padding:12px 20px;border-radius:10px;cursor:pointer;white-space:nowrap}
.toggle-cmp:hover{background:var(--gold);color:var(--black)}
.cmp{display:none;margin-top:32px}
.cmp.open{display:block}
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.card{background:var(--cream);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:14px;padding:24px}
.card h3{font-size:1.02rem;font-weight:800;margin-bottom:12px}
.card ul{list-style:none}
.card li{font-size:.86rem;color:var(--gray);padding:6px 0;border-bottom:1px dashed var(--line)}
.card li b{color:var(--ink)}

/* ABOUT */
.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center}
.about p{color:var(--gray);font-size:.95rem;margin-bottom:14px}
.about p b{color:var(--ink)}
.aside{background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:0 14px 14px 0;padding:26px}
.aside h3{font-weight:800;font-size:1rem;margin-bottom:12px}
.aside li{list-style:none;font-size:.88rem;color:var(--gray);padding:8px 0;border-bottom:1px dashed var(--line)}
.aside li b{color:var(--ink);display:block}

/* COUNTY CARDS */
.lgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.lcard{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;text-decoration:none;color:var(--ink)}
.lcard:hover{border-color:var(--gold)}
.lcard b{display:block;margin-bottom:2px}
.lcard span{font-size:.82rem;color:var(--gray)}

/* FAQ */
.faq{background:#fff;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;text-align:left;background:none;border:none;font-family:inherit;font-size:.98rem;font-weight:700;color:var(--ink);padding:18px 30px 18px 0;cursor:pointer;position:relative}
.faq-q::after{content:"+";position:absolute;right:6px;color:var(--gold-d);font-size:1.3rem;font-weight:400}
.faq-item.open .faq-q::after{content:"–"}
.faq-a{display:none;padding:0 0 18px;color:var(--gray);font-size:.9rem;max-width:70ch}
.faq-item.open .faq-a{display:block}

/* FINAL + FOOTER */
.final{background:var(--gold);text-align:center;padding:60px 22px;color:var(--black)}
.final h2{font-size:clamp(1.5rem,3.4vw,2.1rem);max-width:24ch;margin:0 auto 20px}
.final a{display:inline-block;background:var(--black);color:var(--gold-l);font-weight:800;text-decoration:none;padding:15px 30px;border-radius:10px}
footer{background:var(--black);color:rgba(255,255,255,.55);padding:48px 0 34px;font-size:.85rem}
.fgrid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:28px;margin-bottom:30px}
.fgrid h4{color:var(--gold-l);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.fgrid a{display:block;color:rgba(255,255,255,.65);text-decoration:none;font-size:.85rem;padding:4px 0}
.fgrid a:hover{color:var(--gold-l)}
.fgrid .flogo{height:46px;width:auto;margin-bottom:12px;display:block}
.fbottom{border-top:1px solid rgba(255,255,255,.12);padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

.mobilebar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--black);text-align:center;padding:14px;border-top:3px solid var(--gold)}
.mobilebar a{color:var(--gold-l);text-decoration:none;font-weight:700;font-size:.92rem}

@media(max-width:880px){
  .menu{display:none}
  .burger{display:block}
  .bgrid{grid-template-columns:1fr 1fr}
  .sgrid,.lgrid,.cards,.about-grid,.fc-grid,.checks{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr 1fr}
  .addr{flex-direction:column}
  .addr button{padding:14px}
  .mobilebar{display:block}
  body{padding-bottom:52px}
  .nav .brand img{height:38px}
  .slide{padding:26px 22px}
  .hero{background-position:center;background-image:linear-gradient(160deg,rgba(20,18,12,.9) 0%,rgba(20,18,12,.72) 55%,rgba(201,161,78,.4) 100%),url('hero-mobile.webp')}
}
@media(max-width:560px){.bgrid{grid-template-columns:1fr}}

/* ---- call-or-text pill ---- */
.callpill{display:inline-flex;align-items:center;gap:13px;background:var(--black);border:1px solid rgba(201,161,78,.5);border-radius:999px;padding:11px 22px 11px 14px;text-decoration:none}
.callpill .pic{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(201,161,78,.18);color:var(--gold-l);flex-shrink:0}
.callpill .pic svg{width:19px;height:19px}
.callpill .num{display:block;color:var(--gold-l);font-weight:800;font-size:1.08rem;line-height:1.1}
.callpill .lbl{display:block;color:rgba(255,255,255,.62);font-size:.64rem;letter-spacing:.13em;text-transform:uppercase;margin-top:3px}
.nav .call{display:inline-flex;align-items:center;gap:7px}
.nav .call svg{width:15px;height:15px}

/* ---- situations grid ---- */
.sit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.sit{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}
.sit .ico{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:rgba(201,161,78,.13);border:1px solid rgba(201,161,78,.4);color:var(--gold-d);margin-bottom:12px}
.sit .ico svg{width:23px;height:23px}
.sit b{display:block;font-size:.96rem;margin-bottom:4px}
.sit p{font-size:.85rem;color:var(--gray)}

/* ---- any reason / condition / challenge ---- */
.anycols{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.anycol{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:12px;padding:22px}
.anycol h3{font-size:1rem;font-weight:800;margin-bottom:10px;color:var(--ink)}
.anycol ul{list-style:none}
.anycol li{font-size:.85rem;color:var(--gray);padding:6px 0;border-bottom:1px dashed var(--line)}
.anycol li::before{content:"✓ ";color:var(--gold-d);font-weight:800}

/* ---- review attribution ---- */
.slide .who{display:flex;align-items:center;gap:11px}
.slide .av{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.05rem;flex-shrink:0}
.slide .nm{font-size:.9rem;color:var(--ink);font-weight:700}
.slide .nm span{display:block;font-size:.78rem;color:var(--gray);font-weight:600}

/* ---- footer legal ---- */
.disclaimer{font-size:.72rem;color:rgba(255,255,255,.4);line-height:1.6;margin-top:16px;border-top:1px solid rgba(255,255,255,.1);padding-top:14px}
.disclaimer b{color:rgba(255,255,255,.58)}

@media(max-width:880px){.sit-grid,.anycols{grid-template-columns:1fr}}
