/* Stand-in fonts sized to match Manrope and Big Shoulders, so text doesn't shift when the real fonts finish loading */
@font-face{font-family:"Manrope Fallback";src:local("Arial"),local("ArialMT"),local("Liberation Sans"),local("LiberationSans");font-weight:100 599;size-adjust:103.76%;ascent-override:102.74%;descent-override:28.91%;line-gap-override:0%}
@font-face{font-family:"Manrope Fallback";src:local("Arial Bold"),local("Arial-BoldMT"),local("Liberation Sans Bold"),local("LiberationSans-Bold");font-weight:600 900;size-adjust:103.76%;ascent-override:102.74%;descent-override:28.91%;line-gap-override:0%}
@font-face{font-family:"Big Shoulders Fallback";src:local("Arial Bold"),local("Arial-BoldMT"),local("Liberation Sans Bold"),local("LiberationSans-Bold");font-weight:100 900;size-adjust:67.11%;ascent-override:146.62%;descent-override:31.74%;line-gap-override:0%}
:root{
  color-scheme: only light;
  --ink:#15171C;          /* headings, dark bands */
  --ink-2:#3B3F48;        /* body text */
  --mute:#6B7079;         /* captions */
  --paper:#FFFFFF;
  --stone:#F1F0EC;        /* quiet section background */
  --line:#DEDCD5;
  --red:#C21F2E;          /* brand: actions */
  --red-dk:#9E1724;
  --green:#127A4B;        /* money you keep */
  --green-bg:#E7F3EC;
  --display:"Big Shoulders Display", "Big Shoulders Fallback", "Arial Narrow", Impact, sans-serif;
  --body:"Manrope", "Manrope Fallback", system-ui, -apple-system, "Segoe UI", sans-serif;
  --r-sm:8px; --r-md:14px;
  --wrap:1120px;
}
html{overflow-x:hidden;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink-2);font:16px/1.6 var(--body);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--display);color:var(--ink);margin:0;line-height:1.02;font-weight:800;letter-spacing:.005em}
h1{font-size:clamp(44px,8vw,84px)}
h2{font-size:clamp(34px,5vw,52px)}
h3{font-size:26px;font-weight:700}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.lede{font-size:clamp(17px,2vw,19px);color:var(--ink-2);max-width:56ch}
.fine{font-size:12.5px;color:var(--mute);line-height:1.5}
:focus-visible{outline:3px solid var(--red);outline-offset:3px;border-radius:4px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 24px;border-radius:var(--r-sm);font:700 16px/1 var(--body);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:background .15s,border-color .15s}
.btn-red{background:var(--red);color:#fff}.btn-red:hover{background:var(--red-dk)}
.btn-line{border-color:var(--ink);color:var(--ink);background:transparent}.btn-line:hover{background:var(--ink);color:#fff}
.btn-light{border-color:rgba(255,255,255,.5);color:#fff}.btn-light:hover{background:#fff;color:var(--ink)}
.btn svg{width:18px;height:18px;flex:none}

/* top bar */
.top{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;gap:16px;height:64px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}
.brand .rpr{height:46px;width:auto;max-width:none;object-fit:contain}
.mark{display:flex;flex-direction:column;line-height:1;padding-left:12px;border-left:1px solid var(--line)}
.brand .rpr:not([src]),.brand > .mark:first-child{padding-left:0;border-left:0}
.mark b{font:800 26px/.92 var(--display);color:var(--ink);letter-spacing:.01em}
.mark i{font:700 12.5px/1.2 var(--body);font-style:normal;color:var(--red);margin-top:2px}
.top nav{margin-left:auto;display:flex;gap:18px;font-size:14.5px;font-weight:600}
.top nav a{text-decoration:none;color:var(--ink-2)}.top nav a:hover{color:var(--red)}
.top .call{margin-left:8px;min-height:40px;padding:0 16px;font-size:14.5px}
@media (max-width:860px){.top nav{display:none}.top .call{margin-left:auto}}
@media (max-width:1180px){.hide-sm{display:none}}
@media (max-width:560px){.brand{gap:10px}.brand .rpr{height:38px}.mark{padding-left:10px}.mark b{font-size:22px}.mark i{font-size:11px}.top .call{padding:0 14px}}

/* sections */
section{padding:84px 0}
.band-stone{background:var(--stone)}
.band-ink{background:var(--ink);color:#C9CBD1}
.band-ink h2,.band-ink h3{color:#fff}
.sec-head{max-width:640px;margin-bottom:40px}
.sec-head p{margin-top:14px}
@media (max-width:640px){section{padding:60px 0}}

/* the closing statement: the signature element */
.stmt{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 1px 0 var(--line),0 24px 48px -28px rgba(21,23,28,.35);overflow:hidden}
.stmt-head{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;border-bottom:1px dashed var(--line);font-size:13px;color:var(--mute)}
.stmt-head strong{color:var(--ink);font-size:14px}
.stmt-price{padding:20px 22px 8px}
.stmt-price label{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;color:var(--mute)}
.stmt-price output{font:800 40px/1 var(--display);color:var(--ink)}
input[type=range]{width:100%;margin:14px 0 6px;accent-color:var(--red);height:28px}
.stmt-lines{padding:6px 22px 4px}
.ln{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--stone);font-size:15px}
.ln span:last-child{font-variant-numeric:tabular-nums;font-weight:700;color:var(--ink);white-space:nowrap}
.ln.strike span:last-child{color:var(--mute);text-decoration:line-through;text-decoration-color:var(--red)}
.ln.sub{font-size:13.5px;color:var(--mute);border-top:0;padding-top:0}
.ln.sub span:last-child{color:var(--mute);font-weight:600}
.stmt-total{margin:10px 0 0;padding:18px 22px 20px;background:var(--green-bg);display:flex;justify-content:space-between;align-items:end;gap:10px}
.stmt-total span{font-size:14px;font-weight:700;color:var(--green);max-width:14ch;line-height:1.3}
.stmt-total output{font:800 clamp(44px,7vw,60px)/.9 var(--display);color:var(--green);font-variant-numeric:tabular-nums}
.stmt-foot{padding:12px 22px 18px;background:var(--green-bg)}

/* hero */
.hero{padding:56px 0 64px}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hero h1{max-width:12ch}
.hero .lede{margin:22px 0 28px}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px}
.hero-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:22px;font-size:14px;color:var(--mute)}
.stars{color:#E2A400;letter-spacing:1px}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr;gap:36px}}

/* facts row */
.facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.facts div{padding:22px 20px;border-left:1px solid var(--line)}
.facts div:first-child{border-left:0}
.facts b{display:block;font:800 36px/1 var(--display);color:var(--ink)}
.facts span{font-size:13.5px;color:var(--mute)}
@media (max-width:700px){.facts{grid-template-columns:1fr 1fr}.facts div:nth-child(3){border-left:0}.facts div:nth-child(n+3){border-top:1px solid var(--line)}}

/* case study */
.case{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:center}
.case-nums{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
.case-nums div{background:var(--paper);padding:20px}
.case-nums b{display:block;font:800 34px/1 var(--display);color:var(--ink)}
.case-nums .keep{grid-column:1/-1;background:var(--green-bg)}
.case-nums .keep b{color:var(--green);font-size:48px}
.case-nums span{font-size:13.5px;color:var(--mute)}
@media (max-width:820px){.case{grid-template-columns:1fr}}

/* steps */
.steps{list-style:none;margin:0;padding:0;counter-reset:s;display:grid;gap:0}
.steps li{counter-increment:s;display:grid;grid-template-columns:72px 1fr;gap:20px;padding:26px 0;border-top:1px solid rgba(255,255,255,.14)}
.steps li::before{content:counter(s);font:800 54px/.85 var(--display);color:var(--red)}
.steps h3{margin-bottom:6px}
.steps p{margin:0;max-width:62ch}
.steps .adv{color:#fff}

/* compare table */
.compare{width:100%;border-collapse:separate;border-spacing:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;font-size:15px;box-shadow:0 1px 2px rgba(21,23,28,.05),0 10px 30px rgba(21,23,28,.08)}
.compare thead th{background:var(--ink);color:#D5D7DC;font:700 12px/1.35 var(--body);letter-spacing:.12em;text-transform:uppercase;text-align:left;padding:17px 20px;border-left:1px solid #2C2F37}
.compare thead th:first-child{border-left:0}
.compare thead th:nth-child(2){text-align:center}
.compare tbody th,.compare tbody td{padding:17px 20px;border-top:1px solid var(--line);border-left:1px solid var(--line);vertical-align:middle;text-align:left}
.compare tbody th{border-left:0;width:30%;font-weight:400}
.compare tbody th b{display:block;font:800 23px/1.05 var(--display);color:var(--ink);letter-spacing:.01em}
.compare tbody th span{display:block;margin-top:4px;font-size:14px;color:var(--mute)}
.compare .cp{text-align:center;width:30%}
.compare .cp b{display:block;font-weight:800;font-size:15.5px;line-height:1.25;color:var(--ink)}
.compare .cp span{display:block;margin-top:2px;font-size:14px;color:var(--mute)}
.compare .cp.good span{color:var(--green);font-weight:700}
.compare .cp.bad span{color:var(--red);font-weight:700}
.compare .cv{display:flex;align-items:center;gap:10px;font-weight:700;font-size:14.5px;line-height:1.3}
.compare .cv svg{flex:none;width:26px;height:26px}
.compare .cm.good{color:var(--green)}
.compare .cm.bad{color:var(--red)}
.compare tr.us th,.compare tr.us td{background:var(--green-bg)}
.compare tr.us th{box-shadow:inset 4px 0 0 var(--green)}
.compare tr.us th b{color:var(--green)}
@media (max-width:600px){
  .cmp-head{margin-bottom:18px}
  .cmp-head p.lede{margin-top:8px;font-size:16px}
  .compare{font-size:13.5px}
  .compare thead th{padding:11px 8px;font-size:10px;letter-spacing:.08em}
  .compare tbody th,.compare tbody td{padding:12px 8px}
  .compare tbody th{width:29%}
  .compare tbody th b{font-size:18px}
  .compare tbody th span{font-size:12px;margin-top:2px}
  .compare .cp{width:33%}
  .compare .cp b{font-size:13px;white-space:nowrap}
  .compare .cp span{font-size:12px;white-space:nowrap}
  .compare .cv{gap:6px;font-size:12.5px}
  .compare .cv svg{width:20px;height:20px}
}
.tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}

/* included */
.two{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.ticks{list-style:none;padding:0;margin:0;columns:2;column-gap:28px}
.ticks li{break-inside:avoid;padding:9px 0 9px 28px;position:relative;border-bottom:1px solid var(--line)}
.ticks li::before{content:"";position:absolute;left:2px;top:15px;width:12px;height:7px;border-left:2.5px solid var(--green);border-bottom:2.5px solid var(--green);transform:rotate(-45deg)}
.guarantee{border:2px solid var(--ink);border-radius:var(--r-md);padding:28px;background:var(--paper)}
.g-head{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.g-shield{flex:none;width:54px;height:54px;color:var(--green)}
.g-shield svg{width:100%;height:100%;display:block}
.guarantee h3{font-size:32px;margin:0}
.g-lead{margin:0 0 10px;font-weight:800;font-size:18px;color:var(--ink)}
.guarantee>p{margin:0 0 16px}
.g-no{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-wrap:wrap;gap:8px}
.g-no li{display:inline-flex;align-items:center;gap:6px;background:var(--green-bg);color:var(--green);font-weight:800;font-size:14.5px;border-radius:99px;padding:7px 13px 7px 11px}
.g-no li::before{content:"";width:8px;height:4.5px;border-left:2.5px solid currentColor;border-bottom:2.5px solid currentColor;transform:rotate(-45deg) translateY(-1px)}
@media (max-width:560px){.guarantee{padding:22px}.guarantee h3{font-size:28px}.g-shield{width:46px;height:46px}}
@media (max-width:820px){.two{grid-template-columns:1fr;gap:36px}.ticks{columns:1}}

/* reviews: loaded live from Google */
.gr-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px 32px;flex-wrap:wrap;margin-bottom:32px}
.gr-head h2{max-width:16ch}
.gr-sum{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin:16px 0 0;font-size:16px;color:var(--ink-2)}
.gr-sum b{font:800 34px/1 var(--display);color:var(--ink)}
.gr-sub{margin:10px 0 0;color:var(--mute);max-width:560px}
.gr-stars{position:relative;display:inline-block;font-size:20px;line-height:1;letter-spacing:2px;color:#DAD7CF}
.gr-stars::before{content:"\2605\2605\2605\2605\2605"}
.gr-stars i{position:absolute;inset:0 auto 0 0;width:var(--w,100%);overflow:hidden;white-space:nowrap;color:#E2A400}
.gr-stars i::before{content:"\2605\2605\2605\2605\2605"}
.gr-acts{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.gr-write{font-size:14px;font-weight:600;color:var(--ink-2);text-underline-offset:3px}
.gr-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;align-items:start}
.gr-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);padding:22px;display:flex;flex-direction:column;gap:12px;min-width:0}
.gr-who{display:flex;align-items:center;gap:12px;min-width:0}
.gr-av{width:42px;height:42px;border-radius:50%;flex:none;object-fit:cover;background:var(--stone)}
.gr-ini{width:42px;height:42px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--ink);color:#fff;font-weight:800;font-size:17px;line-height:1}
.gr-who div{min-width:0}
.gr-who a,.gr-who b{display:block;color:var(--ink);font-weight:700;font-size:15.5px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gr-who a:hover{text-decoration:underline}
.gr-who div>span{display:block;font-size:13px;color:var(--mute)}
.gr-rs{color:#E2A400;letter-spacing:2px;font-size:17px;line-height:1}
.gr-rs s{color:#DAD7CF;text-decoration:none}
.gr-text{margin:0;color:var(--ink-2);white-space:pre-line;overflow-wrap:anywhere}
.gr-text.clamp{display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.gr-more{font-size:14px;align-self:flex-start}
.gr-links{display:flex;justify-content:space-between;gap:12px;margin-top:2px}
.gr-link{font-size:13px;font-weight:600;color:var(--mute);text-underline-offset:3px}
.gr-flag{font-weight:500}
.gr-skel{gap:14px;min-height:190px}
.gr-skel span{display:block;height:14px;border-radius:7px;background:linear-gradient(90deg,var(--stone) 0%,#E7E5DF 50%,var(--stone) 100%);background-size:200% 100%;animation:grpulse 1.4s ease-in-out infinite}
.gr-skel span:first-child{width:45%;height:18px}.gr-skel span:nth-child(2){width:92%}.gr-skel span:nth-child(3){width:70%}
@keyframes grpulse{0%{background-position:100% 0}100%{background-position:-100% 0}}
.gr-empty{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;background:var(--stone);border:0;padding:26px}
.gr-empty p{margin:0;font-size:17px;color:var(--ink);font-weight:600;max-width:46ch}
.gr-note{margin:18px 0 0;font-size:13px;color:var(--mute)}
.gr-card[hidden]{display:none}
.gr-moreall{margin:18px 0 0;text-align:center}
.gr-note a{color:var(--ink-2);font-weight:600;text-underline-offset:3px}
.gr-who .gmaps{font-size:13px}
.gmaps{font-family:Roboto,Arial,sans-serif;font-weight:400;font-size:13px;color:#5E5E5E;white-space:nowrap}
@media (max-width:640px){.gr-acts{align-items:stretch;width:100%}.gr-acts .btn{width:100%}.gr-write{text-align:center}.gr-list{grid-template-columns:1fr}.gr-empty .btn{width:100%}}

/* buyer */
.buyer{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
@media (max-width:860px){.buyer{grid-template-columns:1fr}}

/* about */
.about{display:grid;grid-template-columns:320px 1fr;gap:48px;align-items:start}
.portrait{aspect-ratio:4/5;border-radius:var(--r-md);background:var(--ink);overflow:hidden;position:relative}
.portrait img{width:100%;height:100%;object-fit:cover}
.portrait .mono{position:absolute;inset:0;display:grid;place-items:center;font:800 96px/1 var(--display);color:#fff}
.portrait img~.mono{display:none} /* the YK letters only show if the photo can't load */
.social{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
@media (max-width:820px){.about{grid-template-columns:1fr}.portrait{max-width:280px}}
.about-name{color:var(--green)}
.about-lead{margin-top:18px;color:var(--ink);max-width:62ch}
.about-more{margin:16px 0 0;color:var(--mute);font-size:16.5px;max-width:62ch}
.xp-chips{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.xp-chips li{border:1.5px solid var(--line);border-radius:99px;padding:8px 14px;font:700 12px/1.2 var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);background:var(--paper)}
.about-links{display:flex;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap}
.ico-btn{width:48px;height:48px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;color:var(--ink-2);background:var(--paper);transition:border-color .15s,color .15s}
.ico-btn:hover{border-color:var(--ink);color:var(--ink)}
.ico-btn svg{width:22px;height:22px}
.about-all{margin-left:6px;font-weight:700;color:var(--ink);text-decoration:none;border-bottom:1.5px solid var(--line);padding-bottom:3px}
.about-all:hover{border-color:var(--ink)}

/* faq */
.faq details{border-top:1px solid var(--line);padding:4px 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:18px 40px 18px 0;font-weight:700;color:var(--ink);font-size:17px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:12px;font:400 28px/1 var(--body);color:var(--red);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 18px;margin:0;max-width:70ch}

/* estimate form */
.estimate{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.form{background:var(--paper);color:var(--ink-2);border-radius:var(--r-md);padding:28px}
.seg{display:grid;grid-template-columns:1fr 1fr;background:var(--stone);border-radius:var(--r-sm);padding:4px;margin-bottom:18px}
.seg label{position:relative}
.seg input{position:absolute;opacity:0}
.seg span{display:block;text-align:center;padding:11px;border-radius:6px;font-weight:700;cursor:pointer;color:var(--mute)}
.seg input:checked+span{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.seg input:focus-visible+span{outline:3px solid var(--red)}
.field{display:block;margin-bottom:14px}
.field>span{display:block;font-size:13.5px;font-weight:700;color:var(--ink);margin-bottom:6px}
.field>span em{font-style:normal;font-weight:500;color:var(--mute)}
.field input{width:100%;min-height:50px;border:1.5px solid var(--line);border-radius:var(--r-sm);padding:0 14px;font:16px var(--body);color:var(--ink);background:#fff}
.field input:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 3px rgba(21,23,28,.12)}
.form .btn{width:100%;margin-top:6px}
.form .fine{margin-top:12px}
.done{display:none;text-align:center;padding:30px 10px}
.done h3{margin-bottom:8px}
.err{color:var(--red);font-size:14px;margin-top:10px;display:none}
@media (max-width:860px){.estimate{grid-template-columns:1fr;gap:32px}}

/* footer */
footer{background:var(--ink);color:#9A9EA7;padding:48px 0 120px;font-size:13.5px}
footer a{color:#fff}
footer .row{display:flex;flex-wrap:wrap;gap:12px 28px;margin-bottom:18px}
footer b{color:#fff}

/* sticky call/text bar */
.dock{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:6px;padding:10px 10px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);border-top:1px solid var(--line);transform:translateY(110%);transition:transform .25s}
.dock.on{transform:none}
.dock .btn{min-height:48px;padding:0 6px;font-size:14.5px;white-space:nowrap}
@media (min-width:861px){.dock{display:none}}

/* buyer agent fee picker */
.pick{border:0;margin:0;padding:2px 22px 12px;min-width:0}
.pick legend{font-size:13.5px;color:var(--mute);padding:0;margin-bottom:8px}
.pick-opts{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;background:var(--stone);border-radius:var(--r-sm);padding:4px}
.pick-opts label{position:relative}
.pick-opts input{position:absolute;opacity:0;inset:0;margin:0}
.pick-opts span{display:block;text-align:center;padding:9px 0;border-radius:6px;font-weight:700;font-size:14px;color:var(--mute);cursor:pointer}
.pick-opts input:checked+span{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.14)}
.pick-opts input:focus-visible+span{outline:3px solid var(--red)}
.ln small{display:block;font-size:12.5px;color:var(--mute);font-weight:500;margin-top:1px}
.ln small.on{color:var(--red);font-weight:700}
@media (max-width:400px){.pick{padding:2px 16px 12px}.pick-opts span{font-size:13px}}

/* benefit lists */
.perks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:56px}
.perks li{display:grid;grid-template-columns:46px 1fr;gap:16px;padding:24px 0;border-top:1px solid var(--line)}
.perks h3{font-size:27px;margin-bottom:6px}
.perks p{margin:0;max-width:52ch}
.perks.one{grid-template-columns:1fr}
.perks.one li{padding:18px 0}
.perks.one h3{font-size:24px;margin-bottom:4px}
.ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--green-bg);color:var(--green)}
.ic svg{width:23px;height:23px}
#buyers .ic{background:#fff}
[data-credit]{color:var(--green)}
@media (max-width:760px){.perks{grid-template-columns:1fr}}

.case-photo{margin-top:24px;border-radius:var(--r-md);aspect-ratio:16/10;object-fit:cover;width:100%}
.buyer{align-items:start}
.buyer-card{position:sticky;top:88px}
@media (max-width:860px){.buyer-card{position:static}}
section[id]{scroll-margin-top:64px}

/* typed inputs */
.in{display:flex;align-items:center;gap:4px;border:1.5px solid var(--line);border-radius:var(--r-sm);background:#fff;min-height:46px;padding:0 12px}
.in:focus-within{border-color:var(--ink);box-shadow:0 0 0 3px rgba(21,23,28,.1)}
.in i{font-style:normal;color:var(--mute);font-weight:600}
.in input,.in select{border:0;outline:0;background:transparent;font:600 16px var(--body);color:var(--ink);width:100%;min-width:0;padding:0;height:42px}
.in select{cursor:pointer}
.pct-row{display:grid;grid-template-columns:1fr 112px;align-items:center;gap:4px 12px;padding:2px 22px 14px}
.pct-row label{font-size:14px;color:var(--ink);font-weight:700}
.pct-row input{text-align:right}
.pct-row small{grid-column:1/-1;font-size:12.5px;color:var(--mute)}
.nf{display:block;min-width:0}
.nf>span:first-child{display:block;font-size:13.5px;font-weight:700;color:var(--ink);margin-bottom:6px}
.nf em{font-style:normal;font-weight:500;color:var(--mute)}
.field em{font-style:normal;font-weight:500;color:var(--mute)}
.field select{width:100%;min-height:50px;border:1.5px solid var(--line);border-radius:var(--r-sm);padding:0 12px;font:16px var(--body);background:#fff;color:var(--ink)}

/* net sheet: a slim bar that opens */
.ns{padding:36px 0 0}
.ns-box{border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--paper);overflow:hidden}
.ns-bar{appearance:none;border:0;font:inherit;color:inherit;text-align:left;display:flex;align-items:center;gap:14px;width:100%;padding:14px 18px;cursor:pointer;background:var(--stone)}
.ns-bar:focus-visible{outline:3px solid var(--red);outline-offset:-3px}
.ns-ic{width:44px;height:44px;border-radius:10px;background:var(--paper);display:grid;place-items:center;color:var(--ink);flex:none}
.ns-ic svg{width:22px;height:22px}
.ns-txt{flex:1;min-width:0}
.ns-txt b{display:block;font:800 25px/1.1 var(--display);color:var(--ink)}
.ns-txt>span{display:block;font-size:15px;color:var(--ink-2);line-height:1.35}
.ns-open{display:flex;align-items:center;gap:6px;background:var(--red);color:#fff;font-weight:700;font-size:16px;border-radius:var(--r-sm);padding:11px 16px;flex:none}
.ns-open svg{transition:transform .2s}
.ns-bar[aria-expanded=true] .ns-open svg{transform:rotate(180deg)}
.ns-body{padding:26px 24px}
.sent{background:var(--green-bg);border-radius:var(--r-sm);padding:16px;font-size:16px;margin-top:4px}
.sent b{color:var(--green)}
#nsForm .field{margin-bottom:12px}

/* simple tools, shared by the net sheet and the buyer tool */
.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}
.q{display:block;margin-bottom:22px}
.q-t{display:block;font-size:18.5px;font-weight:800;color:var(--ink);margin:0 0 10px;line-height:1.3}
.q-h{display:block;font-size:15.5px;color:var(--ink-2);margin:-4px 0 10px;line-height:1.4}
.in.big{min-height:62px;border-width:2px;padding:0 16px;border-radius:10px}
.in.big i{font-size:24px;color:var(--ink);font-weight:700}
.in.big input{font:700 25px var(--body);height:58px}
.q-note{font-size:15.5px;color:var(--green);font-weight:700;margin:-6px 0 14px}
.more,.costs{border-top:1px solid var(--line);padding-top:6px}
.more summary,.costs summary{cursor:pointer;font-weight:700;color:var(--ink);font-size:16.5px;padding:10px 0;list-style:none;display:flex;align-items:center;gap:10px}
.more summary::-webkit-details-marker,.costs summary::-webkit-details-marker{display:none}
.more summary::before,.costs summary::before{content:"+";display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--stone);font-weight:800;font-size:18px;color:var(--red);flex:none}
.more[open] summary::before,.costs[open] summary::before{content:"\2212"}
.more summary em{font-style:normal;font-weight:500;color:var(--mute)}
.more-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:8px 0 6px}
.more-grid small{display:block;font-size:13.5px;color:var(--mute);margin-top:5px;line-height:1.35}
.more-grid .nf>span:first-child{font-size:15px}
.out-t{font-size:18.5px;font-weight:800;color:var(--ink);margin:0 0 14px}
.cmp{display:grid;gap:16px}
.cmp-row{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:end}
.cmp-row>span:first-child{font-size:16px;color:var(--ink-2);font-weight:600}
.cmp-row b{font:800 28px/1 var(--display);color:var(--ink-2);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.cmp-row>span:first-child{grid-row:1;grid-column:1}
.cmp-row b{grid-row:1;grid-column:2}
.cmp-row .track{grid-row:2;grid-column:1/-1;height:16px;background:var(--stone);border-radius:8px;overflow:hidden}
.cmp-row .track i{display:block;height:100%;width:0;background:#A3A7AF;border-radius:8px;transition:width .35s}
.cmp-row .track i.g{background:var(--green)}
.win-row>span:first-child{color:var(--ink);font-weight:800}
.win-row b{color:var(--green)}
.win{margin:20px 0 16px;background:var(--green-bg);border-radius:var(--r-md);padding:16px 18px;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;color:var(--green);font-weight:700;font-size:17px}
.win output{font:800 clamp(42px,6vw,54px)/1 var(--display);color:var(--green);font-variant-numeric:tabular-nums}
.costs{margin-bottom:16px}
.costs .stmt-lines{padding:0 0 4px}
.costs .ln{font-size:15.5px}
.big-btn{width:100%;min-height:58px;font-size:17px}
.ln.strong span{color:var(--ink);font-weight:800}
.ln.good span:last-child{color:var(--green)}
.ln.off{opacity:.4}

/* buyer tool card */
.buyer-card.tool-card{position:static;padding:0}
.tool-card .pad{padding:24px}
.tool-card .tool-out{border-top:1px dashed var(--line);background:var(--paper)}
.tool-card .q{margin-bottom:12px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.chips button{border:1.5px solid var(--line);background:#fff;border-radius:99px;padding:9px 14px;font:700 15px var(--body);color:var(--ink);cursor:pointer}
.chips button:hover{border-color:var(--ink)}
.chips button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.opts{display:grid;gap:8px;margin-bottom:24px}
.opts.four{grid-template-columns:repeat(4,1fr)}
.opts.two{grid-template-columns:1fr 1fr;margin-bottom:0}
.opts label{position:relative;cursor:pointer;display:block}
.opts input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.opts span{display:block;border:2px solid var(--line);border-radius:10px;padding:12px 8px;text-align:center;background:#fff;height:100%}
.opts b{display:block;font-size:18px;color:var(--ink);line-height:1.25}
.opts.two b{font-size:16.5px}
.opts small{display:block;font-size:13.5px;color:var(--mute);margin-top:3px}
.opts input:checked+span{border-color:var(--green);background:var(--green-bg)}
.opts input:checked+span b{color:var(--green)}
.opts input:focus-visible+span{outline:3px solid var(--red);outline-offset:2px}
.wide-tool{grid-template-columns:.85fr 1.15fr}

@media (max-width:980px){.tool-grid{grid-template-columns:1fr;gap:24px}}
@media (max-width:860px){.wide-tool{grid-template-columns:1fr}}
@media (max-width:560px){
  .ns-bar{padding:12px 14px;gap:12px}.ns-ic{display:none}.ns-txt b{font-size:22px}.ns-txt>span{font-size:14px}.ns-open{padding:10px 13px}
  .ns-body{padding:20px 16px}.more-grid{grid-template-columns:1fr}
  .opts.four{grid-template-columns:1fr 1fr}.tool-card .pad{padding:18px}
}

/* early access */
.early{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:start}
.deals{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:26px 0 10px}
.deal{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:#fff}
.deal .ph{height:104px;position:relative;background:linear-gradient(160deg,#DCE6EF,#B4C5D4);display:grid;place-items:center;overflow:hidden}
.deal .ph svg{width:116px;filter:blur(3px);opacity:.8}
.deal .tag{position:absolute;top:8px;left:8px;color:#fff;font-size:12px;font-weight:700;border-radius:6px;padding:3px 8px;z-index:1}
.t-ink{background:var(--ink)}.t-red{background:var(--red)}.t-green{background:var(--green)}
.deal .dl{padding:12px 12px 8px}
.blur{display:block;filter:blur(5px);user-select:none;color:var(--ink-2);font-size:13.5px;line-height:1.5}
.blur.strong{color:var(--ink);font-weight:800;font-size:15px}
.deal .lock{display:flex;align-items:center;gap:6px;padding:0 12px 12px;font-size:12.5px;font-weight:700;color:var(--red)}
.early .form{border:1px solid var(--line);box-shadow:0 24px 48px -32px rgba(21,23,28,.4)}
.form h3{margin-bottom:14px}
@media (max-width:900px){.early{grid-template-columns:1fr;gap:28px}}
@media (max-width:560px){.deals{grid-template-columns:1fr 1fr}.deal:nth-child(3){display:none}}

.rpr-txt{font:800 14px/1.05 var(--body);color:var(--ink);text-align:left;margin-right:2px}
.logos .rpr-txt{font-size:16px;margin-right:14px}
.early-list{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:0}
.early-list li{padding:10px 0 10px 28px;position:relative;border-top:1px solid var(--line);font-weight:600;color:var(--ink)}
.early-list li::before{content:"";position:absolute;left:2px;top:16px;width:12px;height:7px;border-left:2.5px solid var(--green);border-bottom:2.5px solid var(--green);transform:rotate(-45deg)}

/* ===== two pages: Sell / Buy tabs ===== */
.top nav a.tab{font-weight:800;color:var(--ink)}
.top nav a[aria-current=page]{color:var(--red);box-shadow:inset 0 -2px 0 var(--red);padding-bottom:4px}
.modebar{display:none}
@media (max-width:860px){
  .modebar{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);background:var(--paper)}
  .modebar a{text-align:center;padding:11px 0;font-weight:800;font-size:15px;color:var(--mute);text-decoration:none;border-bottom:3px solid transparent}
  .modebar a[aria-current=page]{color:var(--ink);border-bottom-color:var(--red)}
  section[id]{scroll-margin-top:110px}
}

/* ===== cross links between selling and buying ===== */
.xsell{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.combo{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 24px 48px -36px rgba(21,23,28,.45)}
.combo-t{font-size:14px;color:var(--mute);font-weight:600;margin:0 0 10px}
.combo-row{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;border-top:1px solid var(--stone);font-size:16px}
.combo-row b{font:800 30px/1 var(--display);color:var(--ink);font-variant-numeric:tabular-nums}
.combo-row.total{border-top:2px solid var(--ink)}
.combo-row.total span{font-weight:800;color:var(--ink)}
.combo-row.total b{color:var(--green);font-size:42px}
@media (max-width:860px){.xsell{grid-template-columns:1fr;gap:28px}}

/* buying page: the savings tool sits in the hero */
.buy-hero{align-items:start}
.buy-hero .hero-ctas{margin-top:24px}
@media (min-width:901px){.buy-hero>div:first-child{padding-top:24px}}

/* ===== side panels ===== */
.drawer{position:fixed;inset:0;z-index:60}
.drawer[hidden]{display:none}
.drawer-bg{position:absolute;inset:0;background:rgba(21,23,28,.45);animation:fadeIn .2s ease}
.drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(560px,100%);background:var(--paper);display:flex;flex-direction:column;box-shadow:-20px 0 60px -20px rgba(0,0,0,.4);animation:slideIn .25s ease}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line)}
.drawer-head h2{font-size:28px}
.drawer-x{appearance:none;border:0;background:var(--stone);width:40px;height:40px;border-radius:50%;font-size:26px;line-height:1;cursor:pointer;color:var(--ink)}
.drawer-body{overflow:auto;padding:20px;-webkit-overflow-scrolling:touch;flex:1}
.drawer .tool-grid{grid-template-columns:1fr;gap:20px}
.drawer .buyer-card{box-shadow:none;border:0}
.drawer .tool-card .pad{padding:0 0 18px}
.drawer .tool-card .tool-out{padding-top:18px}
body.drawer-open{overflow:hidden}
@keyframes slideIn{from{transform:translateX(40px);opacity:.4}to{transform:none;opacity:1}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
[hidden]{display:none!important}
.linkbtn{appearance:none;background:none;border:0;padding:0;font:inherit;color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ===== Style 3: savings with and without Yousef ===== */
.hero3{padding:52px 0 60px;background:var(--paper)}
.hero3-grid{display:grid;grid-template-columns:.95fr 1.05fr;grid-template-areas:'head card' 'more card';column-gap:52px;row-gap:0;align-items:start}
.h3-head{grid-area:head}.h3-more{grid-area:more}.hero3-grid .calc3{grid-area:card}
.hero3 h1{max-width:12ch}
.hero3 .lede{margin:16px 0 0;max-width:42ch}
.ref-note{display:inline-block;margin:0 0 16px;background:var(--green-bg);color:var(--green);font-weight:700;font-size:15px;border-radius:12px;padding:10px 14px}
.chips3{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.chips3 span{display:inline-flex;align-items:center;gap:8px;background:var(--stone);border-radius:99px;padding:8px 14px;font-weight:700;font-size:14.5px;color:var(--ink)}
.chips3 span::before{content:"";width:9px;height:5px;border-left:2.5px solid var(--green);border-bottom:2.5px solid var(--green);transform:rotate(-45deg);margin-top:-3px}
.rate3{margin:18px 0 0;font-size:14px;color:var(--mute)}.rate3 a{text-decoration:none;color:inherit}.rate3 a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.calc3{background:var(--stone);border-radius:22px;padding:28px}
.q3{display:block;font-weight:700;color:var(--ink);font-size:16px;margin-bottom:8px}
.inp3{display:flex;align-items:center;gap:4px;background:#fff;border:2px solid var(--line);border-radius:12px;padding:0 14px;min-height:58px;transition:border-color .15s}
.inp3:focus-within{border-color:var(--ink)}
.inp3 i{font-style:normal;font-weight:800;font-size:22px;color:var(--ink)}
.inp3 input{border:0;outline:0;background:transparent;font:800 22px var(--body);color:var(--ink);width:100%;min-width:0;height:54px}
.rows3{margin-top:24px;display:grid;gap:16px}
.row3{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:end}
.row3>span:first-child{font-weight:700;color:var(--ink-2);font-size:15.5px}
.row3>b{font:800 30px/1 var(--display);color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.track3{grid-column:1/-1;height:18px;background:#fff;border-radius:9px;overflow:hidden}
.track3 i{display:block;height:100%;border-radius:9px;background:#A3A7AF;transition:width .35s}
.row3.yes>span:first-child{color:var(--ink)}
.row3.yes>b{color:var(--green);font-size:36px}
.row3.yes .track3 i{background:var(--green)}
.incl3{margin-top:16px;background:#fff;border-radius:14px;padding:14px 16px;font-size:14.5px}
.incl3 b{color:var(--ink)}
.incl3 ul{list-style:none;padding:0;margin:8px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}
.incl3 li{position:relative;padding-left:20px;font-weight:600;color:var(--ink)}
.incl3 li::before{content:"";position:absolute;left:2px;top:7px;width:9px;height:5px;border-left:2.5px solid var(--green);border-bottom:2.5px solid var(--green);transform:rotate(-45deg)}
.acts3{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.acts3 .btn{flex:1 1 auto}
.calc3 .fine{margin:14px 0 0}
@media (max-width:900px){.hero3{padding:28px 0 44px}.hero3-grid{grid-template-columns:1fr;grid-template-areas:'head' 'card' 'more';row-gap:22px}.h3-more .chips3{margin-top:0}}
@media (max-width:560px){.calc3{padding:20px 16px;border-radius:18px}.incl3 ul{grid-template-columns:1fr}.acts3 .btn{width:100%}.row3.yes>b{font-size:32px}}

/* ===== Style 3: share the Advantage banner ===== */
.vstrip{background:var(--red);color:#fff;padding:30px 0}
.vstrip-in{display:flex;align-items:center;justify-content:space-between;gap:20px 32px;flex-wrap:wrap}
.vstrip h2{color:#fff;font-size:clamp(28px,3.4vw,38px)}
.vstrip p{color:#FFE3E5;font-size:15.5px;margin:6px 0 0}
.vstrip-acts,.vstrip-alt{display:flex;gap:10px;flex-wrap:wrap}
.vstrip-alt{flex-basis:100%;justify-content:flex-end}
.btn-white{background:#fff;color:var(--red)}.btn-white:hover{background:#FFF1F2}
.btn-ghost{background:transparent;border-color:rgba(255,255,255,.65);color:#fff}.btn-ghost:hover{background:rgba(255,255,255,.12)}
@media (max-width:560px){.vstrip{padding:24px 0}.vstrip-acts,.vstrip-alt{width:100%}.vstrip-acts .btn,.vstrip-alt .btn{flex:1 1 0;padding:0 10px;font-size:15px;white-space:nowrap}.vstrip-alt{justify-content:stretch}}

/* ===== save my Advantage panel ===== */
.v-lead{font-size:16.5px;color:var(--ink-2);margin:0 0 14px}
.vben{list-style:none;padding:0;margin:0 0 18px}
.vben li{position:relative;padding:9px 0 9px 28px;border-top:1px solid var(--line);font-weight:600;color:var(--ink)}
.vben li::before{content:"";position:absolute;left:3px;top:15px;width:11px;height:6px;border-left:2.5px solid var(--green);border-bottom:2.5px solid var(--green);transform:rotate(-45deg)}
.v-form .field{margin-bottom:12px}
.v-form .fine{margin:10px 0 0}
.vcard{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 20px 40px -30px rgba(21,23,28,.5)}
.vcard-top{background:var(--red);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:14px 18px}
.vcard-top b{font:800 22px/1 var(--display);letter-spacing:.01em}
.vcard-top span{font-size:13px;font-weight:700;background:rgba(255,255,255,.18);border-radius:99px;padding:3px 10px}
.vcard-body{padding:16px 18px 18px}
.vcard-body span{display:block;font-size:12.5px;color:var(--mute);font-weight:700}
.vcard-body>b{display:block;font-size:22px;color:var(--ink);margin:2px 0 12px}
.vcard-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid var(--stone);padding-top:12px}
.vcard-row b{display:block;font-size:16px;color:var(--ink);margin-top:2px}
.vcard.expired .vcard-top{background:#8E929B}
.v-acts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.v-acts .btn{min-height:52px}
.v-acts svg{flex:none}
.v-share-alt{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.v-fine{font-size:13.5px;color:var(--ink-2);margin:12px 0 0}
.v-exp{font-weight:700;color:var(--red);margin:16px 0 12px}
@media (max-width:420px){.v-acts{grid-template-columns:1fr}}

/* advanced home value report (RVM) */
.hv-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hv-kicker{margin:0 0 14px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--red)}
.hv-copy h2{max-width:15ch}
.hv-copy .lede{margin:16px 0 0}
.hv-pts{list-style:none;padding:0;margin:22px 0 0}
.hv-pts li{position:relative;padding:12px 0 12px 32px;border-top:1px solid var(--line)}
.hv-pts li::before{content:"";position:absolute;left:3px;top:19px;width:12px;height:7px;border-left:2.5px solid var(--green);border-bottom:2.5px solid var(--green);transform:rotate(-45deg)}
.hv-pts b{display:block;color:var(--ink);font-size:16.5px}
.hv-pts span{display:block;font-size:15px;margin-top:2px}
.hv-acts{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;margin-top:24px}
.hv-note{font-size:14px;color:var(--mute)}
.hv-fine{margin:28px 0 0}
.hv-card{margin:0;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 60px -36px rgba(21,23,28,.45);overflow:hidden}
.hv-top{position:relative;display:grid;gap:3px;padding:24px 24px 16px;border-bottom:1px solid var(--line)}
.hv-top::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--red)}
.hv-top b{font:800 24px/1.05 var(--display);color:var(--ink);padding-right:84px}
.hv-top span{font-size:13.5px;color:var(--mute)}
.hv-top .hv-tag{position:absolute;top:22px;right:20px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--red);border:1.5px solid var(--red);border-radius:99px;padding:3px 10px}
.hv-val{padding:20px 24px 4px}
.hv-val span,.hv-pair span{display:block;font-size:13px;font-weight:700;color:var(--mute)}
.hv-val b{display:block;font:800 clamp(46px,6vw,60px)/1 var(--display);color:var(--ink);margin-top:6px}
.hv-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:20px 24px 4px;align-items:end}
.hv-pair b{display:block;font:800 clamp(32px,4vw,40px)/1 var(--display);color:var(--ink);margin-top:6px;white-space:nowrap}
.hv-pair .hv-est b{color:var(--green)}
.hv-range{padding:18px 24px 4px}
.hv-bar{position:relative;height:10px;border-radius:99px;background:linear-gradient(90deg,#CFE3D7,var(--green))}
.hv-bar i{position:absolute;top:50%;width:20px;height:20px;border-radius:50%;background:#fff;border:4px solid var(--ink);transform:translate(-50%,-50%)}
.hv-bar em{position:absolute;top:50%;width:4px;height:26px;border-radius:2px;background:var(--red);transform:translate(-50%,-50%)}
.hv-rl{display:flex;justify-content:space-between;margin-top:10px;font-size:13px;color:var(--mute);font-weight:600}
.hv-rl span:first-child,.hv-rl span:last-child{color:var(--ink);font-weight:800}
.hv-key{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:8px;font-size:12.5px;color:var(--mute)}
.hv-key i{display:inline-block;width:11px;height:11px;border-radius:50%;border:3px solid var(--ink);margin-right:6px;vertical-align:-1px}
.hv-key em{display:inline-block;width:3px;height:12px;border-radius:2px;background:var(--red);margin-right:7px;vertical-align:-2px}
.hv-verdict{margin:14px 24px 0;background:var(--green-bg);color:var(--ink);border-radius:12px;padding:12px 14px;font-size:14.5px;line-height:1.45}
.hv-verdict b{color:var(--green)}
.hv-row{display:grid;grid-template-columns:1fr 1fr;margin-top:16px;border-top:1px solid var(--line)}
.hv-row div{padding:14px 24px;border-bottom:1px solid var(--line);min-width:0}
.hv-row div:nth-child(odd){border-right:1px solid var(--line)}
.hv-row span{display:block;font-size:12.5px;color:var(--mute);font-weight:600}
.hv-row b{display:block;font-size:17px;color:var(--ink);margin-top:2px;white-space:nowrap}
.hv-row b.hv-stars{color:#E2A400;letter-spacing:2px}
.hv-stars s{color:#DAD7CF;text-decoration:none}
.hv-row b.hv-up{color:var(--green)}
.hv-card figcaption{padding:12px 24px 16px;font-size:12.5px;color:var(--mute)}
.hv-done{text-align:center;padding:30px 6px}
.hv-done h3{margin-bottom:8px}
.hv-done .btn{margin-top:8px}
.field textarea{display:block;width:100%;min-height:50px;border:1.5px solid var(--line);border-radius:var(--r-sm);padding:12px 14px;font:16px/1.4 var(--body);color:var(--ink);background:#fff;resize:vertical}
.field textarea:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 3px rgba(21,23,28,.12)}
@media (max-width:900px){.hv-grid{grid-template-columns:1fr;gap:36px}}
@media (max-width:640px){
  .hv-acts .btn{width:100%}
  .hv-top,.hv-val,.hv-pair,.hv-range{padding-left:18px;padding-right:18px}
  .hv-row div{padding:12px 18px}
  .hv-verdict{margin:14px 18px 0}
  .hv-card figcaption{padding:12px 18px 14px}
}
.hv-kicker span{display:inline-block;margin:4px 0 0 8px;padding:4px 10px;border-radius:99px;background:var(--ink);color:#fff;font-size:11px;letter-spacing:.06em;vertical-align:1px}
@media (max-width:640px){.hv-kicker span{margin-left:0;display:table;margin-top:8px}}
.btn{text-align:center;line-height:1.2}
@media (max-width:420px){.acts3 .btn,.hv-acts .btn,.form .btn,.big-btn{padding-left:12px;padding-right:12px}}
@media (max-width:420px){.form{padding:24px 18px}}
.hv-inc{margin:22px 0 0;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.hv-inc+.hv-pts{margin-top:10px}
.hv-pts li{padding:10px 0 10px 32px}
.hv-pts li::before{top:17px}
.hv-comps{margin:16px 24px 0}
.hv-comps p{margin:0 0 6px;font-size:13px;font-weight:700;color:var(--mute)}
.hv-comps ul{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.hv-comps li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--line)}
.hv-comps li:first-child{border-top:0}
.hv-comps li span{font-weight:700;color:var(--ink);font-size:14.5px;min-width:0}
.hv-comps li small{display:block;font-weight:500;color:var(--mute);font-size:12.5px}
.hv-comps li b{color:var(--ink);font-size:15.5px;white-space:nowrap}
@media (max-width:640px){.hv-comps{margin:16px 18px 0}.hv-comps li{padding:10px 12px}}

/* trust badges under the hero */
.badges{list-style:none;margin:0;padding:8px 0 40px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.badges li{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;box-shadow:0 12px 28px -24px rgba(21,23,28,.45);min-width:0}
.badges .bi{width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--green-bg);color:var(--green)}
.badges li:first-child .bi{background:#FBEDEE;color:var(--red)}
.badges b{display:block;font:800 30px/1 var(--display);color:var(--ink);white-space:nowrap}
.badges div span{display:block;margin-top:4px;font-size:13px;line-height:1.3;color:var(--mute)}
@media (max-width:980px){.badges{grid-template-columns:repeat(2,1fr)}}
@media (max-width:420px){.badges{gap:10px}.badges li{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}.badges .bi{width:40px;height:40px}.badges b{font-size:27px}}

/* footer: areas */
footer .row.areas{gap:10px 20px}

/* 1% plus a grant (buying page) */
.cl-card{display:grid;grid-template-columns:1fr 1.1fr;gap:0;border-radius:20px}
.cl-qs{padding:28px;border-right:1px solid var(--line)}
.cl-qs .in.big{margin-bottom:26px}
.cl-out{padding:28px}
.cl-form{border-top:1px solid var(--line);padding-top:18px;margin-top:4px}
.cl-ft{font-weight:700;color:var(--ink);margin:0 0 12px}
.cl-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
#grantDone{padding:18px 0 4px}
@media (max-width:900px){.cl-card{grid-template-columns:1fr}.cl-qs{border-right:0;border-bottom:1px solid var(--line)}}
@media (max-width:520px){.cl-qs,.cl-out{padding:20px 18px}.cl-fields{grid-template-columns:1fr}.opts.four{grid-template-columns:1fr 1fr}}

/* featured homes: cards */
.hgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.hcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .2s,transform .2s}
.hcard:hover{box-shadow:0 18px 40px -26px rgba(21,23,28,.5);transform:translateY(-2px)}
.hc-ph{position:relative;aspect-ratio:3/2;background:linear-gradient(160deg,#DCE6EF,#B4C5D4);overflow:hidden}
.hc-ph img{width:100%;height:100%;object-fit:cover}
.hc-tag{position:absolute;top:10px;left:10px;background:var(--ink);color:#fff;font-size:12.5px;font-weight:800;border-radius:7px;padding:4px 9px;letter-spacing:.02em}
.hc-tag.sold{background:var(--red)}
.hc-tag.big{top:14px;left:14px;font-size:14px;padding:6px 12px}
.hc-body{display:flex;flex-direction:column;gap:2px;padding:14px 16px 16px}
.hc-price{font:800 28px/1.05 var(--display);color:var(--ink)}
.hc-meta{font-size:14px;font-weight:700;color:var(--ink)}
.hc-title{font-size:14.5px;color:var(--ink-2);margin-top:4px}
.hc-town{font-size:13.5px;color:var(--mute)}
.hc-back{margin-top:10px;align-self:flex-start;background:var(--green-bg);color:var(--green);font-weight:800;font-size:13.5px;border-radius:8px;padding:5px 10px}

/* featured homes: pages */
.homes-hero{padding:56px 0 28px}
.homes-hero .lede{margin-top:14px}
.homes-list{padding:12px 0 72px}
.homes-empty{background:var(--stone);border-radius:20px;padding:36px;max-width:720px}
.homes-empty h2{margin-bottom:12px}
.homes-cta .lede{color:#C9CBD1;margin:14px 0 24px}
.crumbs{display:flex;gap:8px;font-size:14px;color:var(--mute);padding-top:22px;padding-bottom:14px}
.crumbs a{color:var(--ink);font-weight:700;text-decoration:none}
.home-pg{padding-bottom:40px}
.home-pg section{padding:56px 0 0}
.home-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);grid-template-areas:'top side' 'rest side';gap:0 40px;align-items:start}
.home-top{grid-area:top}.home-rest{grid-area:rest}.home-side{grid-area:side;align-self:start}
.gal{position:relative;border-radius:18px;overflow:hidden;background:#DCE6EF}
.gal-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.gal-track::-webkit-scrollbar{display:none}
.gal-s{flex:0 0 100%;margin:0;scroll-snap-align:start;aspect-ratio:3/2}
.gal-s img{width:100%;height:100%;object-fit:cover}
.gal-none{display:grid;place-items:center;color:var(--mute);font-weight:700}
.gal-b{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:var(--ink);font-size:28px;line-height:1;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.2)}
.gal-b.prev{left:12px}.gal-b.next{right:12px}
.gal-n{position:absolute;right:12px;bottom:12px;background:rgba(21,23,28,.75);color:#fff;font-size:13px;font-weight:700;border-radius:99px;padding:4px 10px}
.home-note{margin:16px 0 0;background:#FBEDEE;color:var(--ink);border-radius:12px;padding:12px 14px;font-weight:600}
.home-note.sold{background:var(--stone)}
.home-h1{font-size:clamp(26px,3vw,36px);line-height:1.15;margin-top:22px}
.home-loc{margin:8px 0 0;color:var(--mute);font-weight:600}
.home-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin:14px 0 6px}
.home-price b{font:800 clamp(38px,5vw,48px)/1 var(--display);color:var(--ink)}
.home-price span{font-weight:700;color:var(--ink);font-size:16.5px}
.home-hl{list-style:none;padding:0;margin:20px 0 0}
.hl-icons li{display:flex;align-items:center;gap:14px;padding:11px 0;border-top:1px solid var(--line)}
.hl-icons li:last-child{border-bottom:1px solid var(--line)}
.hl-icons b{font-size:16px;font-weight:600;color:var(--ink);line-height:1.45}
.hl-ic{flex:none;display:grid;place-items:center;width:26px;height:26px;color:var(--green)}
.hl-ic svg{width:24px;height:24px}
.home-desc{margin-top:18px}

.home-credit{margin-top:18px}
.home-side{position:sticky;top:84px;display:grid;gap:12px}
.home-back,.town-buy-card{background:var(--stone);border-radius:18px;padding:22px}
.hb-k{display:block;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.hb-v{display:block;font:800 clamp(36px,4vw,44px)/1.05 var(--display);color:var(--green);margin-top:6px}
.hb-s{display:block;font-weight:700;color:var(--ink)}
.hb-p{margin:12px 0 0;font-weight:700;color:var(--ink)}
.home-back .incl3,.town-buy-card .incl3{background:#fff}
.home-contact{display:flex;gap:18px;align-items:center;justify-content:center;font-weight:700}
.home-contact a{color:var(--ink)}
.home-side .big-btn{width:100%}
.homes-more h2{margin-bottom:22px}
@media (max-width:900px){.home-grid{grid-template-columns:1fr;grid-template-areas:'top' 'side' 'rest';gap:22px}.home-side{position:static}}
@media (max-width:560px){.gal{border-radius:0;margin:0 -20px}.gal-b{display:none}}

/* town pages: local guides */
.town-hero{padding:56px 0 64px}
.town-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:48px;align-items:start}
.town-hero .lede{margin-top:16px;max-width:60ch}
.town-jump{margin-top:26px}
.town-glance{background:var(--stone);border-radius:20px;padding:24px}
.town-glance dl{margin:6px 0 0}
.town-glance dl div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:12px;padding:11px 0;border-top:1px solid var(--line)}
.town-glance dl div:first-child{border-top:0}
.town-glance dt{font-size:13.5px;color:var(--mute);font-weight:600}
.town-glance dd{margin:0;font-weight:700;color:var(--ink)}
.town-things{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.town-things li{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}
.town-things h3{font-size:24px;margin-bottom:8px}
.town-things p{margin:0;font-size:15.5px}
.town-info h2{font-size:clamp(30px,4vw,40px);margin-bottom:12px}
.town-info p{font-size:17px}
.town-calc .h3-head h2,#buy .h3-head h2{font-size:clamp(34px,4.6vw,52px);margin-top:4px}
.town-calc .lede,#buy .h3-head .lede{margin-top:16px}
.town-links{display:flex;flex-direction:column;gap:10px;margin-top:20px;font-weight:700}
.town-links a{color:var(--ink);text-underline-offset:3px}
.town-others{margin-top:28px;display:flex;flex-wrap:wrap;gap:6px 14px;font-weight:600}
.town-others a{color:var(--ink)}
@media (max-width:900px){.town-hero-grid{grid-template-columns:1fr;gap:28px}.town-hero{padding:36px 0 48px}}

/* current listings: extras */
.hc-tag.new{background:var(--red)}
.hc-n{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;gap:5px;background:rgba(21,23,28,.72);color:#fff;font-size:12.5px;font-weight:700;border-radius:99px;padding:4px 9px}
.hcard .hc-ph img{transition:transform .35s}
.hcard:hover .hc-ph img{transform:scale(1.04)}
.homes-count{margin:12px 0 0;font-size:17px;color:var(--ink-2)}
.homes-count b{font:800 30px/1 var(--display);color:var(--ink);margin-right:2px}
.hfilter{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.hfilter button{border:1.5px solid var(--line);background:#fff;border-radius:99px;padding:8px 14px;font:700 14px var(--body);color:var(--ink);cursor:pointer}
.hfilter button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.homes-cta .two{gap:48px}
.homes-cta h2{color:#fff}
.homes-cta .lede{color:#C9CBD1;margin:12px 0 22px}
.hcard[hidden]{display:none}

/* listing page: show available grants */
.gx{margin:14px 0 0;border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--paper)}
.gx summary{list-style:none;display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer}
.gx summary::-webkit-details-marker{display:none}
.gx-sw{flex:none;position:relative;width:46px;height:28px;border-radius:99px;background:#C9CBD1;transition:background .2s}
.gx-sw::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s}
.gx[open] .gx-sw{background:var(--green)}
.gx[open] .gx-sw::after{transform:translateX(18px)}
.gx-t b{display:block;color:var(--ink);font-size:15.5px}
.gx-t small{display:block;color:var(--mute);font-size:13px}
.gx-body{padding:0 16px 16px}
.gx-ln,.gx-tot,.gx-more li{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:9px 0;border-top:1px solid var(--line)}
.gx-ln span,.gx-more span{font-weight:600;color:var(--ink-2);font-size:14.5px}
.gx-ln small,.gx-more small{display:block;font-weight:500;color:var(--mute);font-size:12.5px;margin-top:1px}
.gx-ln b{color:var(--green);font-size:15.5px;white-space:nowrap}
.gx-tot{border-top:2px solid var(--ink);padding-top:10px}
.gx-tot span{font-weight:800;color:var(--ink)}
.gx-tot b{color:var(--green);font:800 22px/1.1 var(--display);white-space:nowrap}
.gx-h{margin:12px 0 4px;font-size:13px;color:var(--mute);font-weight:600}
.gx-more{list-style:none;padding:0;margin:0}
.gx-more li{padding:7px 0}
.gx-more span{font-size:13.5px}
.gx-more b{color:var(--ink-2);font-size:14px;white-space:nowrap}
.gx .big-btn{margin-top:12px}
.gx .fine{margin:10px 0 0}
.home-side:has(.gx[open]){position:static}

/* privacy policy */
.legal{max-width:780px}
.legal h2{font-size:clamp(22px,2.4vw,26px);margin:30px 0 8px}
.legal p,.legal li{color:var(--ink-2);font-size:16.5px;line-height:1.65}
.legal ul{padding-left:20px;margin:8px 0}
.legal li{margin:4px 0}
.legal a{color:var(--ink);font-weight:600}
