/* The Apartment King — styles v3 "King style".
   Design language: Alfa Slab One display, Archivo body, Yellowtail script,
   cream/teal/gold/ink, hard offset shadows, crown-rule dividers, ticket valuator.
   RULE: every class app.js injects (.val-*, .v*, .orow*, .lever*, #valLoad, #mktFlag)
   must exist here. Sections marked with ═══ banners. */

*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --ink:#16161D;
  --teal:#5DB0C6; --teal-dk:#3E8296; --teal-deep:#16323C;
  --gold:#F0C419; --gold-dk:#3E8296; /* text accents: switched from dark gold to teal-dk for crisp rendering */
  --cream:#F9F1E2; --cream-dim:#EFE3D3;
  --navy:#16161D; --mid:#5A5A66; --faint:#9A9AA6; --line:#E4E4EA;
  --paper-2:#FDFBF5;
  --display:'Alfa Slab One',serif;
  --script:'Yellowtail',cursive;
  --body:'Archivo',-apple-system,sans-serif;
}
html{scroll-behavior:smooth;background:var(--cream);}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*,*::before,*::after{animation:none!important;transition:none!important;}}
body{background:var(--cream);color:var(--ink);font-family:var(--body);line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;}
.serif{font-family:var(--display);font-weight:400;}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
section{scroll-margin-top:90px;}

/* ═══ CROWN RULE (signature divider) ═══ */
.crown-rule{display:flex;align-items:center;gap:14px;margin:0 0 18px;}
.crown-rule .line{height:4px;flex:0 0 56px;background:var(--gold);border-radius:2px;}
.crown-rule .lbl{font-weight:800;text-transform:uppercase;letter-spacing:.22em;font-size:13px;color:var(--teal-dk);}
.on-dark .crown-rule .lbl{color:var(--gold);}

/* ═══ BUTTONS ═══ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--body);font-weight:800;text-transform:uppercase;letter-spacing:.07em;font-size:14.5px;text-decoration:none;padding:15px 28px;border-radius:8px;border:3px solid var(--ink);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease;}
.btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px;}
.btn-gold{background:var(--gold);color:var(--ink);box-shadow:5px 5px 0 var(--ink);}
.btn-gold:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink);}
.btn-navy{background:var(--ink);color:var(--cream);border-color:var(--ink);box-shadow:5px 5px 0 rgba(22,22,29,.3);}
.btn-navy:hover{transform:translate(-2px,-2px);color:var(--gold);box-shadow:7px 7px 0 rgba(22,22,29,.3);}
.btn-teal{background:var(--teal);color:var(--ink);box-shadow:5px 5px 0 rgba(0,0,0,.4);}
.btn-teal:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 rgba(0,0,0,.4);}
.btn-ghost{background:transparent;color:var(--ink);box-shadow:none;}
.btn-ghost:hover{background:var(--ink);color:var(--cream);}
a.ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;font-size:14.5px;padding:15px 28px;border-radius:8px;border:3px solid var(--ink);cursor:pointer;font-family:var(--body);text-decoration:none;transition:transform .12s ease,box-shadow .12s ease;background:var(--teal);color:var(--ink);box-shadow:5px 5px 0 rgba(0,0,0,.4);}
a.ds-btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 rgba(0,0,0,.4);}

/* ═══ NAV ═══ */
nav.topnav{position:sticky;top:0;z-index:50;background:var(--cream);border-bottom:3px solid var(--ink);}
.navin{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;max-width:1220px;margin:0 auto;}
.navlogo img{height:64px;width:auto;}
.navlinks{display:flex;align-items:center;gap:26px;list-style:none;}
.navlinks a{text-decoration:none;font-weight:700;font-size:14.5px;text-transform:uppercase;letter-spacing:.06em;padding:6px 2px;border-bottom:3px solid transparent;}
.navlinks a:hover{border-bottom-color:var(--teal);}
.navlinks .navcta{background:var(--gold);border:2px solid var(--ink);border-radius:6px;padding:10px 18px;box-shadow:3px 3px 0 var(--ink);}
.navlinks .navcta:hover{border-bottom-color:var(--ink);}
@media(max-width:860px){.navlinks li:not(.keep){display:none;}}

/* ═══ HERO ═══ */
.hero{background:var(--cream);position:relative;overflow:hidden;}
.hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding:56px 24px 64px;max-width:1120px;margin:0 auto;}
.hero .script{font-family:var(--script);font-size:clamp(28px,3.5vw,40px);color:var(--teal-dk);display:block;margin-bottom:2px;}
.hero h1{font-family:var(--display);font-weight:400;font-size:clamp(38px,5.4vw,64px);line-height:1.02;text-transform:uppercase;letter-spacing:.01em;}
.hero h1 .gold{color:transparent;-webkit-text-stroke:2px var(--ink);text-shadow:4px 4px 0 var(--gold);}
/* Signature outlined-headline treatment (yellow shadow, ink outline). Needs a LIGHT bg to read. */
.goldpop{color:transparent;-webkit-text-stroke:2px var(--ink);text-shadow:4px 4px 0 var(--gold);paint-order:stroke fill;}
@media (max-width:640px){.goldpop{-webkit-text-stroke-width:1.5px;text-shadow:3px 3px 0 var(--gold);}}
.hero p.lede{margin:22px 0 30px;font-size:19px;max-width:52ch;color:#2c3140;}
.hero .cta-row{display:flex;gap:16px;flex-wrap:wrap;}
.hero-logo{justify-self:center;position:relative;}
.hero-logo img{width:min(440px,100%);filter:drop-shadow(0 18px 30px rgba(22,22,29,.18));}
.hero-badge{position:absolute;bottom:-6px;right:-6px;background:var(--ink);color:var(--gold);font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.14em;padding:10px 16px;border-radius:999px;border:2px solid var(--gold);transform:rotate(-4deg);}
@media(max-width:880px){.hero-in{grid-template-columns:1fr;padding-top:36px;}.hero-logo{order:-1;}.hero-logo img{width:min(340px,84%);margin:0 auto;}}

/* ═══ STAT BAND ═══ */
.statband{background:var(--teal);border-top:4px solid var(--ink);border-bottom:4px solid var(--ink);}
.statband-in{display:grid;grid-template-columns:repeat(3,1fr);gap:0;max-width:1120px;margin:0 auto;}
.stat{padding:28px 24px;text-align:center;border-left:3px solid rgba(22,22,29,.35);}
.stat:first-child{border-left:none;}
.stat .n{font-family:var(--display);font-size:clamp(26px,3.2vw,40px);color:var(--ink);line-height:1;}
.stat .n.word{font-size:clamp(19px,2.2vw,27px);white-space:nowrap;}
.stat .t{font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:12.5px;margin-top:8px;color:var(--teal-deep);}
@media(max-width:680px){.statband-in{grid-template-columns:1fr;}.stat{border-left:none;border-top:3px solid rgba(22,22,29,.35);}.stat:first-child{border-top:none;}}

/* ═══ VALUATOR SECTION (dark) + TICKET ═══ */
.valsec{background:var(--ink);color:var(--cream);padding:76px 0 88px;position:relative;}
.valsec::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 118px,rgba(249,241,226,.035) 118px 120px);pointer-events:none;}
.valsec .wrap{position:relative;}
.val-head{max-width:720px;margin-bottom:38px;}
.val-head h2{font-family:var(--display);font-weight:400;font-size:clamp(30px,4.2vw,50px);text-transform:uppercase;line-height:1.05;}
.val-head h2 em{font-style:normal;color:var(--gold);}
.val-head p{margin-top:16px;color:#cfc8bd;font-size:18px;}

.ticket{background:var(--cream);color:var(--ink);border-radius:16px;border:3px solid var(--ink);box-shadow:10px 10px 0 var(--teal);overflow:hidden;position:relative;max-width:760px;margin:0 auto;}
.ticket-top{background:var(--gold);border-bottom:3px solid var(--ink);padding:14px 26px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;}
.ticket-top .tt{font-weight:800;text-transform:uppercase;letter-spacing:.16em;font-size:13.5px;}
.ticket-top .tno{font-family:var(--display);font-size:15px;letter-spacing:.06em;}
.ticket-pad{padding:26px 26px 30px;}
@media(max-width:560px){.ticket-pad{padding:20px 16px 24px;}}

/* val-shell: the wizard container app.js drives (vStep/vBars/vBody live here) */
.val-shell{max-width:100%;margin:0 auto;background:#fff;border:2.5px solid var(--ink);border-radius:14px;overflow:hidden;}
.val-top{position:sticky;top:87px;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:2.5px solid var(--ink);background:var(--teal);}
.vt-nav{background:none;border:none;font-family:inherit;font-size:12px;font-weight:800;letter-spacing:.02em;color:var(--ink);cursor:pointer;padding:0;line-height:1}
.vt-nav:hover{text-decoration:underline;text-underline-offset:3px}
.val-top .vt-step{font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);}
.val-bars{display:flex;gap:5px;}
.val-bars div{width:24px;height:5px;border-radius:2px;background:rgba(22,22,29,.25);transition:background .4s;}
.val-bars div.on{background:var(--gold);box-shadow:0 0 0 1px rgba(22,22,29,.35);}
.val-body{padding:30px 24px;min-height:340px;text-align:left;}
.vnav-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;}
.vnav-btn{background:none;border:none;font-family:inherit;font-size:13px;font-weight:800;letter-spacing:.03em;color:var(--teal-dk);cursor:pointer;padding:5px 2px;}
.vnav-btn:hover{text-decoration:underline;text-underline-offset:3px;}
.vnav-reset{color:var(--faint);}
.val-body h3{font-family:var(--display);font-weight:400;font-size:clamp(20px,3vw,27px);text-transform:uppercase;margin-bottom:8px;letter-spacing:.01em;color:var(--ink);}
.val-sub{font-size:15px;color:var(--mid);margin-bottom:26px;}
.vlabel{display:block;font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-deep);margin-bottom:9px;}
.vfield{width:100%;background:#fff;border:2.5px solid var(--ink);border-radius:8px;padding:14px 16px;font-size:16.5px;font-weight:600;color:var(--ink);outline:none;font-family:var(--body);transition:box-shadow .15s;margin-bottom:22px;}
.vfield:focus{box-shadow:0 0 0 3px var(--gold);}
.vfield::placeholder{color:var(--faint);font-weight:500;}
.vrow2{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.vchoice{background:var(--paper-2);border:2.5px solid var(--ink);border-radius:12px;padding:18px 20px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;box-shadow:4px 4px 0 var(--cream-dim);}
.vchoice:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--gold);}
.vchoice .vc-t{font-family:var(--display);font-size:17px;text-transform:uppercase;color:var(--ink);}
.vchoice .vc-d{font-size:13px;color:var(--mid);margin-top:2px;}
.vchoice .vc-x{font-size:22px;color:var(--gold-dk);flex-shrink:0;}
.vsliderwrap{margin-bottom:8px;}
.vslider-val{font-family:var(--display);font-size:clamp(40px,9vw,60px);color:var(--ink);line-height:1;margin-bottom:10px;}
.vslider-val .pre{color:var(--ink);}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:8px;border-radius:4px;border:2px solid var(--ink);background:linear-gradient(90deg,var(--gold) 0%,var(--gold) var(--pct,30%),#fff var(--pct,30%),#fff 100%);outline:none;cursor:pointer;}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:32px;height:32px;border-radius:50%;background:var(--gold);border:3px solid var(--ink);box-shadow:2px 2px 0 rgba(22,22,29,.4);cursor:grab;}
input[type=range]::-moz-range-thumb{width:32px;height:32px;border-radius:50%;background:var(--gold);border:3px solid var(--ink);box-shadow:2px 2px 0 rgba(22,22,29,.4);cursor:grab;}
input[type=range]:focus-visible{box-shadow:0 0 0 3px var(--teal);}
.vticks{display:flex;justify-content:space-between;margin-top:12px;font-size:12px;font-weight:600;color:var(--faint);}
.vedit{margin-top:14px;background:none;border:none;color:var(--teal-dk);font-size:13px;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px;font-family:var(--body);}
.vchip{display:inline-block;margin-top:8px;margin-bottom:6px;background:#fff;border:2px solid var(--gold);border-radius:50px;padding:8px 18px;font-size:13px;font-weight:600;color:var(--mid);}
.vchip b{font-family:var(--display);font-size:15px;color:var(--ink);margin-left:6px;}
.vpills{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px;}
.vpill{padding:11px 22px;border:2.5px solid var(--ink);border-radius:50px;background:#fff;color:var(--mid);font-size:14px;font-weight:700;cursor:pointer;font-family:var(--body);transition:all .15s;box-shadow:3px 3px 0 var(--cream-dim);}
.vpill:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--cream-dim);}
.vpill.on{background:var(--ink);color:var(--gold);border-color:var(--ink);box-shadow:3px 3px 0 var(--gold);}
.vnext{display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:var(--ink);border:3px solid var(--ink);font-family:var(--body);font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:15px 32px;border-radius:8px;cursor:pointer;box-shadow:5px 5px 0 var(--ink);transition:transform .12s ease,box-shadow .12s ease;}
.vnext:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink);}
.vnext:disabled{opacity:.45;transform:none;box-shadow:3px 3px 0 var(--ink);cursor:default;}
.vnext:focus-visible{outline:3px solid var(--teal);outline-offset:3px;}
.vgate{text-align:center;}
.vgate .vlabel{text-align:left;}

/* reveal overlay */
#valLoad{position:fixed;inset:0;background:var(--ink);z-index:300;display:none;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;}
#valLoad.show{display:flex;}
.vl-mark{font-family:var(--script);font-size:30px;color:var(--teal);margin-bottom:20px;}
.vl-spin{font-family:var(--display);font-size:clamp(46px,12vw,84px);color:var(--gold);letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin-bottom:18px;text-shadow:0 0 40px rgba(240,196,25,.4);}
.vl-msg{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:rgba(249,241,226,.6);}
.vl-bill{position:absolute;top:-56px;font-size:30px;pointer-events:none;animation-name:vlFall;animation-timing-function:linear;animation-fill-mode:forwards;}
@keyframes vlFall{to{transform:translateY(115vh) rotate(340deg);opacity:.92;}}
/* animated "underwriting" show on the loading overlay */
.vlx{width:min(560px,90vw);color:rgba(249,241,226,.92);text-align:center;}
.vlx-head{font-family:var(--script);font-size:30px;color:var(--teal);margin-bottom:8px;}
.vlx-addr{font-family:var(--display);font-size:clamp(19px,4.8vw,26px);color:#fff;line-height:1.15;}
.vlx-meta{font-size:13px;color:rgba(249,241,226,.6);margin-top:6px;}
.vlx-gross{margin:20px 0 22px;}
.vlx-gross .lbl{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:rgba(249,241,226,.5);}
.vlx-gross .num{font-family:var(--display);font-size:clamp(40px,11vw,66px);color:var(--gold);font-variant-numeric:tabular-nums;line-height:1.04;margin-top:4px;text-shadow:0 0 40px rgba(240,196,25,.35);}
.vlx-gross .eqn{font-size:12.5px;color:rgba(249,241,226,.55);margin-top:6px;font-variant-numeric:tabular-nums;}
.vlx-steps{list-style:none;margin:0 auto;padding:0;max-width:430px;text-align:left;}
.vlx-step{display:flex;align-items:center;gap:12px;padding:8px 2px;font-size:14.5px;color:rgba(249,241,226,.85);border-bottom:1px solid rgba(249,241,226,.08);opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .3s ease;}
.vlx-step:last-child{border-bottom:none;}
.vlx-step.in{opacity:1;transform:none;}
.vlx-ic{position:relative;flex:0 0 18px;width:18px;height:18px;}
.vlx-dot{position:absolute;inset:1px;border-radius:50%;border:2px solid var(--teal);border-top-color:transparent;animation:vlxspin .6s linear infinite;}
.vlx-check{position:absolute;inset:0;display:grid;place-items:center;color:var(--gold);font-weight:900;font-size:14px;opacity:0;transform:scale(.5);transition:opacity .2s ease,transform .2s ease;}
.vlx-step.done .vlx-dot{opacity:0;}
.vlx-step.done .vlx-check{opacity:1;transform:none;}
.vlx-step .tx{flex:1;}
.vlx-step .val{margin-left:auto;font-variant-numeric:tabular-nums;color:var(--gold);font-weight:800;font-size:12.5px;opacity:0;transition:opacity .25s ease;white-space:nowrap;}
.vlx-step.done .val{opacity:1;}
@keyframes vlxspin{to{transform:rotate(360deg);}}
@media(max-width:520px){.vlx-step{font-size:13.5px;}.vlx-gross{margin:16px 0 18px;}}

/* results */
.vres-hero{text-align:center;padding:8px 0 24px;border-bottom:3px dashed var(--ink);margin-bottom:24px;}
.vres-hero .l{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--teal-dk);margin-bottom:14px;}
.vres-hero .v{font-family:var(--display);font-size:clamp(42px,10vw,70px);color:var(--ink);line-height:1;letter-spacing:-.01em;}
.vres-hero .v.range{font-size:clamp(26px,6.6vw,46px);}
.vres-hero .n{font-size:13px;color:var(--faint);margin-top:12px;font-family:var(--script);font-size:20px;color:var(--gold-dk);}
.vres-prompt{text-align:center;font-family:var(--display);font-size:20px;text-transform:uppercase;margin-bottom:20px;color:var(--ink);}
.vres-prompt em{font-style:normal;color:var(--gold-dk);}
.orow{display:flex;align-items:center;gap:15px;background:#fff;border:2.5px solid var(--ink);border-radius:12px;padding:15px 17px;text-decoration:none;color:var(--ink);transition:transform .12s ease,box-shadow .12s ease;margin-bottom:12px;box-shadow:4px 4px 0 var(--cream-dim);}
.orow:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--teal);}
.orow-gold{background:var(--gold);box-shadow:4px 4px 0 var(--ink);}
.orow-gold:hover{box-shadow:6px 6px 0 var(--ink);}
.orow-ic{font-size:26px;flex-shrink:0;}
.orow-mid{flex:1;text-align:left;min-width:0;}
.orow-t{font-family:var(--display);font-size:16px;text-transform:uppercase;line-height:1.2;color:var(--ink);}
.orow-d{font-size:12.5px;font-weight:600;color:var(--mid);margin-top:2px;}
.orow-gold .orow-d{color:rgba(22,22,29,.7);}
.orow-x{font-size:20px;color:var(--gold-dk);flex-shrink:0;}
.orow-gold .orow-x{color:var(--ink);}
.orestart{margin-top:16px;background:none;border:2px solid var(--ink);color:var(--mid);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:11px 22px;border-radius:50px;cursor:pointer;font-family:var(--body);transition:all .15s;}
.orestart:hover{background:var(--ink);color:var(--cream);}

/* levers + market flag */
.levers{background:#fff;border:2.5px solid var(--gold);border-left:8px solid var(--gold);border-radius:12px;padding:18px 18px 14px;margin:0 0 18px;}
.lev-t{font-family:var(--display);font-size:17px;text-transform:uppercase;margin-bottom:8px;color:var(--ink);}
.lever{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px;font-weight:600;color:var(--mid);}
.lever:last-of-type{border-bottom:none;}
.lever b{color:var(--gold-dk);font-family:var(--display);font-size:15px;white-space:nowrap;}
.lev-cta{font-size:13px;font-weight:600;color:var(--mid);padding-top:10px;border-top:1px solid var(--line);}
.lev-cta a{color:var(--teal-dk);font-weight:800;}
#mktFlag .mkt{background:#fff;border:2.5px solid var(--teal);border-left:8px solid var(--teal);border-radius:12px;padding:14px 16px;margin:0 0 14px;font-size:14px;font-weight:500;color:var(--ink);line-height:1.55;}
#mktFlag .mkt{background:#fff;border:2.5px solid var(--teal);border-left:8px solid var(--teal);border-radius:12px;padding:16px 18px;margin:0 0 16px;font-size:14px;color:var(--ink);line-height:1.55;}
#mktFlag .mkt-nums{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:10px;font-size:13px;color:var(--mid);font-weight:600;}
#mktFlag .mkt-nums b{font-family:var(--display);font-size:16px;color:var(--ink);margin:0 2px;}
#mktFlag .mkt p{margin-bottom:10px;font-size:13.5px;}
#mktFlag .mkt a{color:var(--teal-dk);font-weight:800;}
.equity{background:#fff;border:2.5px solid var(--gold);border-left:8px solid var(--gold);border-radius:12px;padding:18px 20px;margin:0 0 18px;box-shadow:4px 4px 0 var(--cream-dim);}
.equity .eq-t{font-family:var(--display);font-size:18px;text-transform:none;color:var(--ink);margin-bottom:12px;line-height:1.15;}
.equity .eq-rows{margin-bottom:12px;}
.equity .eq-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px;font-weight:600;color:var(--mid);}
.equity .eq-row b{font-family:var(--display);color:var(--ink);font-size:16px;white-space:nowrap;}
.equity .eq-row.eq-gain{border-bottom:none;color:var(--ink);}
.equity .eq-row.eq-gain b{color:var(--ink);font-size:19px;}
.equity .eq-cta{font-size:13px;font-weight:600;color:var(--mid);padding-top:10px;border-top:1px solid var(--line);}
.equity .eq-cta a{color:var(--teal-dk);font-weight:800;}
.kingcall{background:#fff;border:2.5px solid var(--ink);border-left:8px solid var(--gold);border-radius:12px;padding:18px 20px;margin:0 0 18px;box-shadow:4px 4px 0 var(--cream-dim);}
.kingcall .kc-t{font-family:var(--display);font-size:18px;text-transform:none;color:var(--ink);line-height:1.15;margin-bottom:6px;}
.kingcall .kc-d{font-size:13px;color:var(--mid);margin-bottom:14px;line-height:1.5;}
.kingcall .kc-row{display:flex;gap:10px;align-items:stretch;}
.kingcall .kc-row .vfield{flex:1;}
.kingcall .kc-lbl{display:block;font-size:13px;font-weight:800;color:var(--ink);margin:12px 0 6px;}
.kingcall .kc-lbl:first-of-type{margin-top:2px;}
.kingcall .primaryclose .vfield,.kingcall .vfield{width:100%;}
@media(max-width:520px){.kingcall .kc-row{flex-direction:column;}.kingcall .kc-row .vnext{width:100%;justify-content:center;}}
.pac-container{z-index:10000!important;font-family:var(--body);}

/* ═══ SERVICES (three crown cards) ═══ */
.services{padding:80px 0;background:var(--cream);}
.services h2{font-family:var(--display);font-weight:400;font-size:clamp(28px,3.8vw,44px);text-transform:uppercase;line-height:1.06;max-width:760px;}
.svc-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:42px;}
@media(max-width:880px){.svc-cards{grid-template-columns:1fr;}}
.svc-card{background:#fff;border:3px solid var(--ink);border-radius:14px;padding:28px;box-shadow:6px 6px 0 var(--gold);display:flex;flex-direction:column;}
.svc-card.alt{box-shadow:6px 6px 0 var(--teal);}
.svc-card .crown{width:52px;height:52px;border-radius:50%;background:var(--teal);border:2.5px solid var(--ink);display:grid;place-items:center;font-size:24px;margin-bottom:16px;}
.svc-card .bignum{font-family:var(--display);font-size:42px;line-height:1;color:var(--ink);}
.svc-card .bignum small{font-size:19px;}
.svc-card h3{font-family:var(--display);font-weight:400;font-size:20px;text-transform:uppercase;margin:8px 0 10px;}
.svc-card p{color:#2c3140;font-size:15.5px;flex:1;}
.svc-card .cta{margin-top:20px;display:flex;flex-direction:column;gap:10px;}
.svc-card .cta a{font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:13px;text-decoration:none;border:2.5px solid var(--ink);border-radius:8px;padding:12px 14px;text-align:center;background:var(--gold);box-shadow:3px 3px 0 var(--ink);transition:transform .12s ease,box-shadow .12s ease;color:var(--ink);}
.svc-card .cta a:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink);}
.svc-card .cta a.quiet{background:transparent;box-shadow:none;}
.svc-card .cta a.quiet:hover{background:var(--ink);color:var(--cream);}

/* ═══ WHY / CHECKS ═══ */
.why{padding:72px 0 80px;background:var(--cream);}
.why-in{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
@media(max-width:820px){.why-in{grid-template-columns:1fr;}}
.why h2{font-family:var(--display);font-weight:400;font-size:clamp(26px,3.4vw,40px);text-transform:uppercase;line-height:1.08;}
.why .script{font-family:var(--script);font-size:30px;color:var(--teal-dk);}
.checks{list-style:none;display:grid;gap:16px;}
.checks li{display:flex;gap:14px;align-items:flex-start;background:#fff;border:2.5px solid var(--ink);border-radius:10px;padding:16px 18px;box-shadow:4px 4px 0 var(--cream-dim);}
.checks .ck{flex:0 0 26px;height:26px;border-radius:6px;background:var(--gold);border:2px solid var(--ink);display:grid;place-items:center;font-weight:900;font-size:15px;margin-top:2px;}
.checks b{display:block;text-transform:uppercase;letter-spacing:.05em;font-size:14.5px;}
.checks span.d{color:#2c3140;font-size:15px;}

/* ═══ PROOF (gold band) ═══ */
.proof{background:var(--gold);border-top:4px solid var(--ink);border-bottom:4px solid var(--ink);padding:64px 0;}
.proof .crown-rule .line{background:var(--ink);}
.proof .crown-rule .lbl{color:var(--ink);}
.proof h2{font-family:var(--display);font-weight:400;font-size:clamp(26px,3.4vw,40px);text-transform:uppercase;line-height:1.08;}
.deal-scroll{display:flex;gap:18px;margin-top:34px;overflow:hidden;position:relative;padding-bottom:0;}
.deal-scroll-inner{display:flex;gap:18px;animation:autoScroll 90s linear infinite;will-change:transform;}
@keyframes autoScroll{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
.deal-scroll-inner:hover{animation-play-state:paused;}
.deal{background:var(--cream);border:3px solid var(--ink);border-radius:12px;padding:14px 16px;box-shadow:6px 6px 0 var(--ink);flex:0 0 200px;}
.deal-price{font-family:var(--display);font-size:20px;color:var(--ink);line-height:1;}
.deal-name{font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-size:11px;margin-top:7px;color:var(--teal-dk);line-height:1.2;}
.deal-meta{color:var(--mid);font-size:11px;margin-top:2px;font-weight:600;}
@media(max-width:820px){.deal{flex:0 0 190px;}}
.testimonial{max-width:660px;margin:34px auto 0;text-align:center;background:var(--cream);border:3px solid var(--ink);border-radius:14px;padding:26px 28px;box-shadow:6px 6px 0 var(--ink);}
.testimonial p{font-size:clamp(16px,2.4vw,19px);font-weight:500;font-style:italic;color:var(--ink);line-height:1.5;margin-bottom:12px;font-family:var(--body);}
.testimonial cite{font-size:13px;color:var(--mid);font-style:normal;font-weight:700;text-transform:uppercase;letter-spacing:.05em;}

/* ═══ ABOUT (deep teal) ═══ */
.about{background:var(--teal-deep);color:var(--cream);padding:76px 0;}
.about-in{display:grid;grid-template-columns:.85fr 1.15fr;gap:52px;align-items:center;}
@media(max-width:820px){.about-in{grid-template-columns:1fr;}}
.about .crown-rule .lbl{color:var(--gold);}
.about h2{font-family:var(--display);font-weight:400;font-size:clamp(26px,3.6vw,42px);text-transform:uppercase;line-height:1.08;}
.about p{margin-top:18px;color:#dfe8e3;font-size:17px;}
.about .sig{font-family:var(--script);font-size:38px;color:var(--gold);margin-top:26px;}
.about .role{font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:12.5px;color:#a9cbd4;margin-top:2px;}
.about-portrait{background:var(--ink);border:3px solid var(--gold);border-radius:16px;padding:22px;box-shadow:10px 10px 0 rgba(0,0,0,.35);text-align:center;}
.about-portrait img{width:82%;margin:0 auto;}
.about-portrait .tag{font-family:var(--script);color:var(--teal);font-size:26px;margin-top:12px;}
.about-badges{display:flex;gap:16px;margin-top:28px;flex-wrap:wrap;justify-content:center;}
.about-badge{background:rgba(249,241,226,.06);border:2px solid rgba(249,241,226,.3);border-radius:10px;padding:20px 26px;text-align:center;}
.about-badge b{font-family:var(--display);font-size:28px;color:var(--gold);display:block;line-height:1.15;}
.about-badge span{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.14em;color:#a9cbd4;margin-top:10px;display:block;line-height:1.3;}

/* ═══ LISTINGS BAND ═══ */
.listings-band{background:var(--cream);text-align:center;padding:76px 0;border-bottom:4px solid var(--ink);}
.listings-band h2{font-family:var(--display);font-weight:400;font-size:clamp(26px,3.6vw,42px);text-transform:uppercase;line-height:1.08;}
.listings-band p{color:var(--mid);font-size:17px;max-width:520px;margin:14px auto 30px;}

/* ═══ CONTACT ═══ */
.contact{background:var(--cream);padding:80px 0;}
.contact-card{background:var(--ink);color:var(--cream);border-radius:18px;border:3px solid var(--ink);box-shadow:10px 10px 0 var(--gold);padding:48px 42px;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;}
@media(max-width:820px){.contact-card{grid-template-columns:1fr;padding:38px 26px;}}
.contact h2{font-family:var(--display);font-weight:400;font-size:clamp(26px,3.6vw,42px);text-transform:uppercase;line-height:1.08;}
.contact h2 em{font-style:normal;color:var(--gold);}
.contact p{margin-top:14px;color:#cfc8bd;}
.contact .ways{display:grid;gap:14px;}
.way{display:flex;gap:14px;align-items:center;background:rgba(249,241,226,.06);border:2px solid rgba(249,241,226,.25);border-radius:12px;padding:15px 18px;text-decoration:none;transition:border-color .12s ease;}
.way:hover{border-color:var(--gold);}
.way .ic{flex:0 0 40px;height:40px;border-radius:10px;background:var(--gold);color:var(--ink);display:grid;place-items:center;font-size:18px;border:2px solid var(--ink);}
.way b{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--gold);}
.way span{font-weight:600;font-size:16px;color:var(--cream);}

/* ═══ FOOTER ═══ */
footer{background:var(--ink);color:#cfc8bd;padding:52px 0 38px;border-top:4px solid var(--gold);}
.foot-in{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center;}
@media(max-width:680px){.foot-in{grid-template-columns:1fr;text-align:center;}.foot-in img{margin:0 auto;}}
.foot-in img{height:110px;width:auto;}
.foot-legal{font-size:14px;line-height:1.8;}
.foot-legal b{color:var(--cream);}
.foot-legal a{color:inherit;text-decoration:underline;}
.foot-legal .lic{display:inline-block;margin-top:6px;background:rgba(240,196,25,.12);border:1.5px solid var(--gold);color:var(--gold);border-radius:6px;padding:4px 12px;font-weight:700;letter-spacing:.08em;font-size:12.5px;text-transform:uppercase;text-decoration:none;}
.foot-tag{font-family:var(--script);color:var(--gold);font-size:26px;margin-top:12px;}

/* ═══ SCROLL REVEAL ═══ */
.rv{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);}
.rv.in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;}}

/* ═══ MOBILE ═══ */
@media(max-width:900px){
  .wrap{padding:0 20px;}
  .services,.contact{padding:56px 0;}
  .why{padding:48px 0 56px;}
  .about,.valsec{padding:56px 0 64px;}
  .val-body{padding:26px 18px;}
  .cta-row .btn{width:100%;}
}
/* Mobile hero: declutter the stacked intro so it reads clean, not jumbled.
   The redundant stats line duplicates the stat band right below it. */
@media(max-width:600px){
  .val-head{margin-bottom:26px;}
  .val-head .script{display:block;font-size:19px;line-height:1.35;margin-bottom:10px;}
  .val-head h2{margin:0 0 14px;}
  .val-head p{margin-top:0;}
  .val-head p:nth-of-type(2){display:none;}
  .valsec .crown-rule{margin-top:20px;}
  .valsec .crown-rule .lbl{letter-spacing:.08em;font-size:12px;}
  .valsec .crown-rule .line{flex-basis:34px;}
}

/* ═══ Inline validation + numeric editor ═══════════════════════════════
   Rendered by the shared core.js (fieldError / stepError / attachExactEditor),
   replacing the old alert()/prompt() dialogs. Ported from the MHP funnel so
   both sites share one look. Uses --gold / --ink / --mid / --body (already
   defined above). */
.vfield.bad{border-color:#C0392B}
.vfield.bad:focus{box-shadow:0 0 0 3px rgba(192,57,43,.28)}
.verr{color:#C0392B;font-size:13px;font-weight:600;line-height:1.4;margin:-16px 0 18px}
.verr-step{margin:14px 0 0;padding:12px 14px;background:#FDEDEA;border:2px solid #C0392B;border-radius:8px}
.vexact{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;margin-top:12px}
.vexact .vfield{flex:1;min-width:140px;margin-bottom:0}
.vexact-set{background:var(--gold);color:var(--ink);border:2.5px solid var(--ink);border-radius:8px;
  padding:13px 20px;font-family:var(--body);font-size:14px;font-weight:800;text-transform:uppercase;
  letter-spacing:.05em;cursor:pointer;box-shadow:3px 3px 0 var(--ink)}
.vexact-set:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}
.vexact-cancel{background:#fff;color:var(--mid);border:2.5px solid var(--ink);border-radius:8px;
  padding:13px 15px;font-size:14px;font-weight:800;cursor:pointer;line-height:1}
.vexact .vhint{flex-basis:100%;color:#C0392B;font-size:12.5px;font-weight:600;margin-top:2px}
@media(max-width:520px){.vexact{gap:8px}.vexact .vfield{min-width:0}}

/* Postcard QR prefill — step 1 becomes a one-tap confirmation (Project F). */
.vconfirm{display:flex;gap:16px;align-items:flex-start;background:var(--paper-2);
  border:3px solid var(--ink);border-radius:14px;padding:22px;margin-bottom:26px;
  box-shadow:6px 6px 0 var(--gold)}
.vconfirm-ic{font-size:26px;line-height:1;flex-shrink:0}
.vconfirm-body{min-width:0}
.vconfirm-a{font-family:var(--display);font-size:clamp(17px,4vw,22px);line-height:1.2;
  color:var(--ink);word-break:break-word}
.vconfirm-b{font-size:15px;font-weight:600;color:var(--mid);margin-top:4px}
.vconfirm-c{font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  color:var(--teal-dk);margin-top:10px}
@media(max-width:520px){.vconfirm{padding:18px;gap:12px}}
.vsv{width:100%;border-radius:12px;margin-bottom:16px;display:block;border:2px solid var(--ink)}

/* ═══════════════════════════════════════════════════════════════════
   VALUATOR v2 — tap-first UI (steppers, cards, range chips, progress).
   All classes namespaced .v2* so nothing here touches other pages.
   ═══════════════════════════════════════════════════════════════════ */
.val-top{display:flex;align-items:center;gap:12px}
.v2back{font-family:inherit;font-weight:800;font-size:13px;color:var(--teal-dk);background:none;border:none;cursor:pointer;white-space:nowrap;padding:0}
.v2bars{display:flex;gap:4px;flex:1}
.v2bar{height:6px;flex:1;background:#e6e1d4;border-radius:4px;transition:background .35s}
.v2bar.on{background:var(--gold);box-shadow:0 0 0 1px var(--gold-dk) inset}
.v2time{font-size:11px;color:var(--mid);font-weight:700;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.v2q{font-family:var(--display,'Alfa Slab One',serif);font-weight:400;font-size:clamp(21px,5.4vw,27px);line-height:1.14;margin-bottom:8px;color:var(--ink)}
.v2blurb{font-size:13px;color:var(--mid);line-height:1.5;margin-bottom:20px;background:#f3f7f8;border-left:3px solid var(--gold);border-radius:0 8px 8px 0;padding:10px 13px}
.v2blurb b{color:var(--ink)}
.v2note{font-size:12.5px;color:var(--teal-dk);font-weight:700;margin-bottom:10px}
.v2cards{display:flex;flex-direction:column;gap:11px}
.v2card{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;font-family:inherit;font-size:16.5px;font-weight:700;color:var(--ink);background:#fff;border:2.5px solid var(--ink);border-radius:13px;padding:17px 18px;cursor:pointer;transition:transform .1s,box-shadow .1s,background .12s;box-shadow:3px 3px 0 rgba(22,22,29,.13)}
.v2card:hover{background:#f3f7f8;transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--teal-dk)}
.v2card:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--teal-dk)}
.v2card.sel{background:var(--teal-dk);color:#fff;border-color:var(--ink)}
.v2arw{color:var(--teal-dk);font-weight:800;font-size:19px}
.v2card.sel .v2arw{color:var(--gold)}
.v2grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.v2chip{font-family:inherit;font-size:16px;font-weight:800;color:var(--ink);background:#fff;border:2.5px solid var(--ink);border-radius:13px;padding:18px 12px;cursor:pointer;text-align:center;transition:transform .1s,box-shadow .1s,background .12s;box-shadow:3px 3px 0 rgba(22,22,29,.13)}
.v2chip:hover{background:#f3f7f8;transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--teal-dk)}
.v2chip:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--teal-dk)}
.v2skip{display:block;width:100%;text-align:center;margin-top:16px;background:none;border:none;font-family:inherit;font-size:13.5px;color:var(--teal-dk);text-decoration:underline;cursor:pointer;font-weight:600}
.v2step{display:flex;align-items:center;justify-content:center;gap:22px;margin:10px 0 6px}
.v2stepbtn{width:64px;height:64px;border-radius:50%;border:3px solid var(--ink);background:var(--gold);font-size:34px;font-weight:700;line-height:1;color:var(--ink);cursor:pointer;font-family:inherit;box-shadow:3px 3px 0 var(--ink);transition:transform .08s,box-shadow .08s}
.v2stepbtn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.v2stepval{font-family:var(--display,'Alfa Slab One',serif);font-size:54px;min-width:120px;text-align:center;line-height:1;color:var(--ink)}
.v2unit{text-align:center;font-size:12px;color:var(--mid);text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin:-2px 0 8px}
.v2badge{display:inline-block;margin-top:12px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:5px 13px;border-radius:50px;border:2px solid}
.v2badge-tight{background:var(--gold);color:var(--ink);border-color:var(--gold)}
.v2badge-working{background:transparent;color:var(--gold);border-color:var(--gold)}
.v2badge-wider{background:transparent;color:#e5b7a0;border-color:#e5b7a0}
.v2method{font-size:13px;color:var(--mid);text-align:center;margin:14px auto 18px;max-width:460px;line-height:1.55}
.v2buyer{background:#f3f7f8;border:2.5px solid var(--teal-dk);border-radius:12px;padding:15px 16px;font-size:14px;line-height:1.55;margin-bottom:20px;box-shadow:4px 4px 0 var(--teal-dk)}
.v2buyer b{color:var(--teal-dk)}
.v2follow{background:var(--cream);border:2.5px solid var(--ink);border-radius:13px;padding:18px 16px;margin:18px 0}
.v2fh{font-size:16px;margin-bottom:4px;color:var(--ink)}
.v2fb{font-size:12.5px;color:var(--mid);margin-bottom:14px}
.v2mlbl{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--teal-dk);margin:8px 0}
.v2chiprow{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.v2mchip{font-family:inherit;font-size:13px;font-weight:700;border:2.5px solid var(--ink);background:#fff;border-radius:50px;padding:8px 14px;cursor:pointer}
.v2mchip.on{background:var(--teal-dk);color:#fff}

/* offer cards — high-clickthrough layout */
.svc-eyebrow{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-dk);margin-bottom:4px}
.svc-card .svc-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:16px;background:var(--gold);color:var(--ink);border:3px solid var(--ink);border-radius:10px;padding:15px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:14.5px;text-decoration:none;box-shadow:4px 4px 0 var(--ink);transition:transform .08s,box-shadow .08s}
.svc-card .svc-btn:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}
.svc-card .svc-btn:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}
.svc-card .svc-quiet{display:block;text-align:center;margin-top:10px;font-size:13px;color:var(--teal-dk);font-weight:700;text-decoration:none}
.svc-card .svc-quiet:hover{text-decoration:underline}

/* results screen — single clear close */
.kingcall.primaryclose{border:3px solid var(--gold);box-shadow:6px 6px 0 var(--gold)}
/* Post-submit confirmation: flip the card to a bold colored panel so the
   "on its way" + optional questions clearly register as a state change. */
.kingcall.sent{background:var(--teal);border:3px solid var(--ink);box-shadow:7px 7px 0 var(--ink);animation:kcpop .35s ease}
.kingcall.sent .kc-t,.kingcall.sent .kc-d,.kingcall.sent .kc-el,.kingcall.sent .v2mlbl{color:var(--ink)}
.kingcall.sent .kc-d a{color:var(--ink);text-decoration:underline}
.kingcall.sent .kc-enrich{border-top-color:rgba(22,22,29,.3)}
.kingcall.sent .v2mchip{background:#fff;color:var(--ink);border-color:var(--ink)}
.kingcall.sent .v2mchip.on{background:var(--ink);color:#fff}
@keyframes kcpop{from{transform:scale(.97);opacity:.4}to{transform:scale(1);opacity:1}}
.kc-now{text-align:center;font-size:13px;color:var(--mid);margin-top:12px}
.kc-now a{color:var(--teal-dk);font-weight:800;text-decoration:none}
.bovfallback{border:2px solid var(--line);border-radius:12px;padding:14px 16px;margin:14px 0 4px;background:#faf8f2}
.bf-t{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:10px}
.bf-fine{font-size:12px;color:var(--faint);margin-top:8px}
.vnext-ghost{background:#fff;color:var(--ink);border:2.5px solid var(--ink);box-shadow:none}
.vres-tertiary{display:flex;flex-wrap:wrap;gap:8px 10px;justify-content:center;align-items:center;margin:18px 0 6px;font-size:13px}
.vres-tertiary a{color:var(--teal-dk);font-weight:700;text-decoration:none;cursor:pointer}
.vres-tertiary a:hover{text-decoration:underline}
.vres-tertiary span{color:var(--faint)}

/* results: callback-time picker + prefilled "move now" DocuSign buttons */
.kc-when{display:block;margin-top:12px;font-size:13px;font-weight:700;color:var(--mid)}
.vwhen{margin-top:6px;width:100%;padding:12px;border:2.5px solid var(--ink);border-radius:10px;font-family:inherit;font-size:15px;background:#fff}
.vres-act{border:2.5px solid var(--ink);border-radius:12px;padding:16px;margin:14px 0 4px;background:#fff}
.vres-act-h{font-family:var(--display,'Alfa Slab One',serif);font-weight:400;font-size:15px;margin-bottom:12px;text-align:center;color:var(--ink)}
.vres-act-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.actbtn{display:flex;align-items:center;justify-content:center;text-align:center;gap:6px;background:var(--gold);color:var(--ink);border:2.5px solid var(--ink);border-radius:10px;padding:13px 10px;font-weight:800;font-size:13.5px;text-decoration:none;box-shadow:3px 3px 0 var(--ink);transition:transform .08s,box-shadow .08s}
.actbtn.ghost{background:#fff}
.actbtn:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}
.actbtn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.vres-act-fine{font-size:11.5px;color:var(--faint);text-align:center;margin-top:10px}
@media(max-width:480px){.vres-act-row{grid-template-columns:1fr}}

/* post-submit optional enrichment on the callback confirmation */
.kc-enrich{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line)}
.kc-el{font-size:12.5px;color:var(--mid);margin-bottom:8px}

/* offers: single bold conversion band (one dominant action) */
.offerband{background:radial-gradient(circle at 20% -20%,rgba(240,196,25,.16),transparent 55%),var(--ink);color:var(--cream);border:3px solid var(--ink);border-radius:18px;padding:42px 26px;text-align:center;box-shadow:10px 10px 0 var(--gold)}
.offerband-eyebrow{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.offerband-h{font-family:var(--display,'Alfa Slab One',serif);font-weight:400;color:var(--cream);font-size:clamp(26px,4.6vw,42px);text-transform:uppercase;line-height:1.05;margin:0}
/* override .services h2 max-width so the offer headline centers in the band */
.offerband .offerband-h{max-width:none;margin-left:auto;margin-right:auto}
.offerband-p{color:rgba(249,241,226,.85);font-size:16.5px;max-width:560px;margin:14px auto 22px;line-height:1.5}
.offerband-cta{display:inline-block;background:var(--gold);color:var(--ink);border:3px solid var(--ink);border-radius:11px;padding:17px 34px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:16px;text-decoration:none;box-shadow:5px 5px 0 rgba(0,0,0,.4);transition:transform .1s,box-shadow .1s}
.offerband-cta:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 rgba(0,0,0,.4)}
.offerband-alt{margin-top:16px;font-size:14px;color:rgba(249,241,226,.75)}
.offerband-alt a{color:var(--gold);font-weight:800;text-decoration:none}
.offerband-alt a:hover{text-decoration:underline}
.offerband-alt span{color:rgba(249,241,226,.4);margin:0 4px}
