/* Top Priority Property Buyers — design tokens + components */
:root,[data-theme='light']{
  --text-xs:clamp(.75rem,.7rem + .25vw,.875rem);
  --text-sm:clamp(.875rem,.8rem + .35vw,1rem);
  --text-base:clamp(1rem,.95rem + .25vw,1.125rem);
  --text-lg:clamp(1.125rem,1rem + .75vw,1.5rem);
  --text-xl:clamp(1.5rem,1.2rem + 1.25vw,2.25rem);
  --text-2xl:clamp(2rem,1.2rem + 2.5vw,3.25rem);
  --text-3xl:clamp(2.5rem,1rem + 4vw,4.5rem);
  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;
  --radius-sm:.375rem;--radius-md:.625rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-full:9999px;
  --transition-interactive:180ms cubic-bezier(.16,1,.3,1);
  --content-narrow:680px;--content-default:1000px;--content-wide:1200px;
  --font-display:'Zodiak','Georgia',serif;
  --font-body:'Satoshi','Helvetica Neue',Arial,sans-serif;

  /* Warm sand + desert clay palette */
  --color-bg:#f7f3ec;
  --color-surface:#fffcf7;
  --color-surface-2:#fdfaf4;
  --color-surface-offset:#efe8dc;
  --color-surface-offset-2:#e6dccc;
  --color-divider:#e2d9ca;
  --color-border:#d3c7b3;
  --color-text:#1f1a14;
  --color-text-muted:#6a5f52;
  --color-text-faint:#a89b8a;
  --color-text-inverse:#fbf7f0;
  --color-primary:#a63f17;
  --color-primary-hover:#8a3311;
  --color-primary-active:#6e280d;
  --color-primary-highlight:#f3dfd3;
  --color-ink:#1f1a14;
  --color-ink-2:#2c2620;
  --color-success:#3f7a2a;
  --color-success-highlight:#dde9d3;
  --shadow-sm:0 1px 2px oklch(.25 .02 60 / .08);
  --shadow-md:0 6px 18px oklch(.25 .02 60 / .10);
  --shadow-lg:0 18px 48px oklch(.25 .02 60 / .16);
}
[data-theme='dark']{
  --color-bg:#15120f;--color-surface:#1c1815;--color-surface-2:#201c18;--color-surface-offset:#242019;--color-surface-offset-2:#2c2721;
  --color-divider:#2a251f;--color-border:#3b342c;
  --color-text:#ece5da;--color-text-muted:#a1968a;--color-text-faint:#6b6259;--color-text-inverse:#fbf7f0;
  --color-primary:#e0784c;--color-primary-hover:#eb8f68;--color-primary-active:#c9633a;--color-primary-highlight:#3a261c;
  --color-ink:#0f0d0b;--color-ink-2:#1a1613;
  --color-success:#7fb865;--color-success-highlight:#26321f;
  --shadow-sm:0 1px 2px oklch(0 0 0 / .3);--shadow-md:0 6px 18px oklch(0 0 0 / .4);--shadow-lg:0 18px 48px oklch(0 0 0 / .5);
}
@media (prefers-color-scheme:dark){:root:not([data-theme]){
  --color-bg:#15120f;--color-surface:#1c1815;--color-surface-2:#201c18;--color-surface-offset:#242019;--color-surface-offset-2:#2c2721;
  --color-divider:#2a251f;--color-border:#3b342c;
  --color-text:#ece5da;--color-text-muted:#a1968a;--color-text-faint:#6b6259;--color-text-inverse:#fbf7f0;
  --color-primary:#e0784c;--color-primary-hover:#eb8f68;--color-primary-active:#c9633a;--color-primary-highlight:#3a261c;
  --color-ink:#0f0d0b;--color-ink-2:#1a1613;
  --color-success:#7fb865;--color-success-highlight:#26321f;
}}

/* ---------- layout ---------- */
.container{width:min(100% - 2*clamp(var(--space-4),4vw,var(--space-10)),var(--content-wide));margin-inline:auto}
.container--narrow{max-width:var(--content-narrow)}
.container--default{max-width:var(--content-default)}
.section{padding-block:clamp(var(--space-12),7vw,var(--space-24))}
.section--tight{padding-block:clamp(var(--space-8),5vw,var(--space-16))}
.section--offset{background:var(--color-surface-offset)}
.section--ink{background:var(--color-ink);color:var(--color-text-inverse)}
.section--ink .eyebrow{color:var(--color-primary)}
.section--ink p{color:oklch(from var(--color-text-inverse) l c h / .8)}
.grid{display:grid;gap:var(--space-6)}
.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.grid-4{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.split{display:grid;gap:clamp(var(--space-8),5vw,var(--space-16));align-items:center}
@media (min-width:880px){.split{grid-template-columns:1.1fr .9fr}.split--reverse>:first-child{order:2}}
.stack>*+*{margin-top:var(--space-4)}
.flow>*+*{margin-top:var(--space-6)}
.prose h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;margin-top:var(--space-12);margin-bottom:var(--space-4);letter-spacing:-.01em}
.prose h3{font-size:var(--text-lg);font-weight:700;margin-top:var(--space-8);margin-bottom:var(--space-3)}
.prose p+p{margin-top:var(--space-4)}
.prose ul,.prose ol{padding-left:var(--space-6);margin-block:var(--space-4)}
.prose li+li{margin-top:var(--space-2)}
.prose a{color:var(--color-primary);text-decoration-thickness:1px;text-underline-offset:3px}
.prose a:hover{color:var(--color-primary-hover)}

/* ---------- type ---------- */
.eyebrow{font-size:var(--text-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-3)}
.h-display{font-family:var(--font-display);font-weight:400;letter-spacing:-.015em;line-height:1.05}
.h-hero{font-size:var(--text-3xl)}
.h-page{font-size:var(--text-2xl)}
.h-section{font-family:var(--font-display);font-size:var(--text-xl);font-weight:400;letter-spacing:-.01em}
.h-card{font-size:var(--text-lg);font-weight:700}
.lede{font-size:var(--text-lg);color:var(--color-text-muted);line-height:1.5;font-weight:400}
.muted{color:var(--color-text-muted)}
.small{font-size:var(--text-sm)}
.center{text-align:center}
.center p{margin-inline:auto}
.section-head{max-width:640px;margin-bottom:clamp(var(--space-8),4vw,var(--space-12))}
.section-head.center{margin-inline:auto}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:700;text-decoration:none;line-height:1.2;min-height:48px;white-space:nowrap}
.btn--primary{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}
.btn--primary:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}
.btn--primary:active{background:var(--color-primary-active);transform:none}
.btn--ghost{border:1.5px solid currentColor;color:inherit;background:transparent}
.btn--ghost:hover{background:oklch(from currentColor l c h / .08)}
.btn--light{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}
.btn--light:hover{border-color:var(--color-text)}
.btn--lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base);min-height:56px}
.btn--block{width:100%}

/* ---------- header ---------- */
.header{position:sticky;top:0;z-index:50;background:oklch(from var(--color-bg) l c h / .88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--color-divider)}
.header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);min-height:72px}
.brand{display:inline-flex;align-items:center;gap:var(--space-3);text-decoration:none;color:inherit}
.brand__mark{width:38px;height:38px;color:var(--color-primary);flex:none}
.brand__name{font-family:var(--font-display);font-weight:400;font-size:1.125rem;line-height:1.05;letter-spacing:-.01em;white-space:nowrap}
.brand__sub{display:none;font-family:var(--font-body);font-size:var(--text-xs);font-weight:500;color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase}
.nav{display:none;gap:var(--space-6);align-items:center}
.nav a{text-decoration:none;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:500}
.nav a:hover,.nav a[aria-current]{color:var(--color-text)}
.header__cta{display:flex;align-items:center;gap:var(--space-3)}
.phone-link{display:none;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--color-text);font-weight:700;font-size:var(--text-sm);font-variant-numeric:tabular-nums}
.phone-link svg{width:18px;height:18px;color:var(--color-primary)}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-full);color:var(--color-text-muted);border:1px solid transparent}
.icon-btn:hover{color:var(--color-text);border-color:var(--color-border)}
.nav-toggle{display:inline-flex}
.header .btn--primary{display:none}
@media (min-width:560px){.brand__sub{display:block}}
@media (min-width:1000px){.nav{display:flex}.phone-link{display:inline-flex}.nav-toggle{display:none}.header .btn--primary{display:inline-flex}}
.mobile-nav{display:none;border-top:1px solid var(--color-divider);background:var(--color-bg);padding-block:var(--space-4) var(--space-6)}
.mobile-nav[data-open]{display:block}
.mobile-nav a{display:block;padding:var(--space-3) 0;text-decoration:none;color:var(--color-text);font-weight:500;border-bottom:1px solid var(--color-divider)}
.mobile-nav .btn{margin-top:var(--space-4)}

/* ---------- hero ---------- */
.hero{position:relative;isolation:isolate;color:#fff;overflow:hidden}
.hero__bg{position:absolute;inset:0;z-index:-2}
.hero__bg picture,.hero__bg img{width:100%;height:100%}.hero__bg img{object-fit:cover;object-position:60% 55%}
.hero__scrim{position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,oklch(.18 .02 50 / .92) 0%,oklch(.18 .02 50 / .78) 45%,oklch(.18 .02 50 / .45) 100%)}
.hero__inner{display:grid;gap:clamp(var(--space-10),5vw,var(--space-16));padding-block:clamp(var(--space-12),7vw,var(--space-24));align-items:center}
@media (min-width:960px){.hero__inner{grid-template-columns:1.05fr .95fr}}
.hero .eyebrow{color:#f2b28f}
.hero__title{font-size:clamp(2.5rem,1rem + 3.6vw,4.25rem);max-width:16ch}
.hero__lede{margin-top:var(--space-6);font-size:var(--text-lg);color:oklch(1 0 0 / .84);max-width:52ch;line-height:1.5}
.hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-8)}
.hero__proof{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);margin-top:var(--space-8);font-size:var(--text-sm);color:oklch(1 0 0 / .8)}
.hero__proof span{display:inline-flex;align-items:center;gap:var(--space-2)}
.hero__proof svg{width:16px;height:16px;color:#f2b28f;flex:none}
.hero--compact .hero__inner{grid-template-columns:1fr;padding-block:clamp(var(--space-12),6vw,var(--space-20))}
.hero--compact .hero__title{font-size:var(--text-2xl);max-width:20ch}

/* ---------- form card ---------- */
.form-card{background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-xl);padding:clamp(var(--space-6),3vw,var(--space-10));box-shadow:var(--shadow-lg);border:1px solid oklch(from var(--color-border) l c h / .5)}
.form-card__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:400;letter-spacing:-.01em}
.form-card__sub{color:var(--color-text-muted);font-size:var(--text-sm);margin-top:var(--space-2)}
.form{display:grid;gap:var(--space-4);margin-top:var(--space-6)}
.form__row{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))}
.form__row--addr{grid-template-columns:2fr 1fr}
.field{display:grid;gap:var(--space-1)}
.field label{font-size:var(--text-xs);font-weight:700;letter-spacing:.02em;color:var(--color-text-muted)}
.field input,.field select,.field textarea{width:100%;min-height:48px;padding:var(--space-3) var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-text);font-size:1rem}
.field textarea{min-height:96px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-highlight)}
.field input::placeholder,.field textarea::placeholder{color:var(--color-text-faint)}
.form__consent{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.5}
.form__consent a{color:inherit}
.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}

/* ---------- trust bar ---------- */
.trustbar{border-bottom:1px solid var(--color-divider);background:var(--color-surface)}
.trustbar__inner{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3) var(--space-8);padding-block:var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted)}
.trustbar__inner span{display:inline-flex;align-items:center;gap:var(--space-2)}
.trustbar__inner svg{width:16px;height:16px;color:var(--color-primary)}

/* ---------- cards ---------- */
.card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:clamp(var(--space-6),3vw,var(--space-8));box-shadow:var(--shadow-sm)}
.card--link{display:block;text-decoration:none;color:inherit;transition:transform var(--transition-interactive),box-shadow var(--transition-interactive),border-color var(--transition-interactive)}
.card--link:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--color-border)}
.card__icon{width:44px;height:44px;border-radius:var(--radius-md);background:var(--color-primary-highlight);color:var(--color-primary);display:grid;place-items:center;margin-bottom:var(--space-5)}
.card__icon svg{width:22px;height:22px}
.card p{color:var(--color-text-muted);font-size:var(--text-sm);margin-top:var(--space-2);line-height:1.55}
.card .more{display:inline-block;margin-top:var(--space-4);color:var(--color-primary);font-weight:700;font-size:var(--text-sm)}

/* steps */
.steps{counter-reset:step;display:grid;gap:var(--space-6)}
@media (min-width:800px){.steps{grid-template-columns:repeat(3,1fr)}}
.step{position:relative;padding:var(--space-8) var(--space-6) var(--space-6);background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-divider)}
.step__num{font-family:var(--font-display);font-size:var(--text-2xl);line-height:1;color:var(--color-primary);margin-bottom:var(--space-4)}
.step h3{font-size:var(--text-lg);font-weight:700}
.step p{color:var(--color-text-muted);font-size:var(--text-sm);margin-top:var(--space-2)}

/* area lists */
.area-cols{display:grid;gap:var(--space-8)}
@media (min-width:760px){.area-cols{grid-template-columns:1fr 1fr}}
.area-col h3{font-family:var(--font-display);font-size:var(--text-lg);font-weight:500;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}
.area-col h3 a{color:inherit;text-decoration:none}
.area-col h3 a:hover{color:var(--color-primary)}
.chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.chip{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);text-decoration:none;font-size:var(--text-sm);font-weight:500;min-height:40px}
.chip:hover{border-color:var(--color-primary);color:var(--color-primary)}
.chip--static{cursor:default}
.chip--static:hover{border-color:var(--color-border);color:var(--color-text)}

/* offer math */
.math{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);overflow:hidden}
.math__row{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-divider);font-variant-numeric:tabular-nums}
.math__row:last-child{border-bottom:0;background:var(--color-primary-highlight);font-weight:700}
.math__row span:first-child{color:var(--color-text-muted)}
.math__row:last-child span:first-child{color:inherit}

/* image blocks */
.img-frame{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:4/3;background:var(--color-surface-offset)}
.img-frame picture,.img-frame img{width:100%;height:100%}.img-frame img{object-fit:cover}
.img-frame--tall{aspect-ratio:4/5}

/* faq */
.faq{display:grid;gap:var(--space-3)}
.faq details{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:0 var(--space-6)}
.faq summary{list-style:none;cursor:pointer;padding:var(--space-5) 0;font-weight:700;display:flex;justify-content:space-between;gap:var(--space-4);align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';font-family:var(--font-display);font-size:1.5rem;line-height:1;color:var(--color-primary);flex:none;transition:transform var(--transition-interactive)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding-bottom:var(--space-5);color:var(--color-text-muted);max-width:none}

/* stats */
.stats{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr))}
.stat{padding:var(--space-5);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-divider)}
.stat b{display:block;font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;color:var(--color-primary);line-height:1.1}
.stat span{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}

/* cta band */
.cta-band{background:var(--color-ink);color:var(--color-text-inverse);border-radius:var(--radius-xl);padding:clamp(var(--space-8),5vw,var(--space-16));display:grid;gap:var(--space-6);align-items:center}
@media (min-width:860px){.cta-band{grid-template-columns:1.3fr auto}}
.cta-band h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500}
.cta-band p{color:oklch(from var(--color-text-inverse) l c h / .75);margin-top:var(--space-2)}
.cta-band .actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.cta-band .btn--ghost{color:var(--color-text-inverse)}

/* breadcrumb */
.crumbs{font-size:var(--text-xs);color:oklch(1 0 0 / .7);margin-bottom:var(--space-4)}
.crumbs a{color:inherit;text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.crumbs span{margin-inline:var(--space-2)}

/* footer */
.footer{background:var(--color-ink);color:oklch(from var(--color-text-inverse) l c h / .78);padding-block:clamp(var(--space-12),6vw,var(--space-20)) var(--space-8);font-size:var(--text-sm)}
.footer .brand{color:var(--color-text-inverse)}
.footer .brand__sub{color:oklch(from var(--color-text-inverse) l c h / .6)}
.footer__grid{display:grid;gap:var(--space-10)}
@media (min-width:860px){.footer__grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.footer h4{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:oklch(from var(--color-text-inverse) l c h / .55);margin-bottom:var(--space-4);font-weight:700}
.footer ul{list-style:none}
.footer li+li{margin-top:var(--space-2)}
.footer a{color:inherit;text-decoration:none}
.footer a:hover{color:var(--color-text-inverse)}
.footer__contact a{display:block;font-weight:700;color:var(--color-text-inverse);font-size:var(--text-base)}
.footer__legal{margin-top:var(--space-12);padding-top:var(--space-6);border-top:1px solid oklch(1 0 0 / .1);font-size:var(--text-xs);color:oklch(from var(--color-text-inverse) l c h / .55);display:grid;gap:var(--space-3)}
.footer__legal p{max-width:none}

/* sticky mobile call bar */
.callbar{position:fixed;inset-inline:0;bottom:0;z-index:40;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--color-border);border-top:1px solid var(--color-border)}
.callbar svg{width:18px;height:18px}
.callbar a{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:56px;text-decoration:none;font-weight:700;font-size:var(--text-sm)}
.callbar a:first-child{background:var(--color-surface);color:var(--color-text)}
.callbar a:last-child{background:var(--color-primary);color:#fff}
@media (min-width:1000px){.callbar{display:none}}
body{padding-bottom:57px}
@media (min-width:1000px){body{padding-bottom:0}}

/* reveal */
.reveal{opacity:0;transform:translateY(12px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}
.reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

/* utilities */
.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mt-12{margin-top:var(--space-12)}
.list-check{list-style:none;display:grid;gap:var(--space-3)}
.list-check li{display:flex;gap:var(--space-3);align-items:flex-start}
.list-check svg{width:20px;height:20px;flex:none;color:var(--color-success);margin-top:2px}
.notice{padding:var(--space-4) var(--space-5);border-left:3px solid var(--color-primary);background:var(--color-surface);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:var(--text-sm);color:var(--color-text-muted)}
.notice p{max-width:none}
