body{margin:0}img{max-width:100%}[hidden]{display:none!important}

:root{
  color-scheme: dark;
  --black:#0b0b0b; --onyx:#111111; --graphite:#171717; --slate:#1d1d1d;
  --line:#2a2a2a; --line-2:#1f1f1f;
  --white:#ffffff; --silver:#ececea; --smoke:#a4a4a0; --ash:#7c7c78; --sig:rgba(255,255,255,.55);
  --platinum:linear-gradient(180deg,#ffffff 0%,#ffffff 100%);
  --sheen:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.55) 50%,rgba(255,255,255,0) 100%);
  --navy:#174087; --navy-hi:#1f4fa8; --ice:#a9bde6;
  --ok:#93c2a2; --ok-bg:rgba(147,194,162,.10);
  --warn:#d9b574; --warn-bg:rgba(217,181,116,.10);
  --miss:#dd8f82; --miss-bg:rgba(221,143,130,.10);
  --display:"Zilla Slab",Rockwell,"Roboto Slab",Georgia,serif;
  --body:"Raleway","Avenir Next","Segoe UI",system-ui,sans-serif;
  --script:"Mr Dafoe","Brush Script MT","Segoe Script",cursive;
  --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --gutter:clamp(16px,5vw,56px);
  --top:calc(64px + env(safe-area-inset-top,0px));
}
*{box-sizing:border-box}
html{scroll-snap-type:y mandatory;scroll-behavior:smooth;background:var(--black);overscroll-behavior-y:none}
html.pager{scroll-snap-type:none;scroll-behavior:auto}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} }
body{margin:0;background:var(--black);color:var(--white);font-family:var(--body);font-size:16px;line-height:1.65;letter-spacing:.25px;font-weight:400;font-variant-numeric:lining-nums;-webkit-font-smoothing:antialiased}
a{color:var(--ice)}
:focus-visible{outline:1.5px solid var(--silver);outline-offset:3px;border-radius:6px}
h1,h2,h3,h4{margin:0;font-family:var(--display);font-weight:300;text-wrap:balance;color:var(--white)}
p{margin:0}

/* ---------- Chrome ---------- */
.bar{position:fixed;left:0;right:0;top:0;z-index:30;padding-top:env(safe-area-inset-top,0px);
  background:linear-gradient(180deg,rgba(11,11,11,.92),rgba(11,11,11,.65) 70%,rgba(11,11,11,0));}
.bar-in{height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-inline:var(--gutter)}
.mark{display:flex;align-items:baseline;gap:8px;text-decoration:none;color:var(--silver)}
.mark .s{font-family:var(--script);font-size:30px;line-height:1;color:var(--silver)}
.mark .c{font-family:var(--body);font-size:9px;font-weight:600;letter-spacing:3px;color:var(--ash)}
.where{display:flex;align-items:center;gap:14px;font-size:11px;font-weight:600;letter-spacing:2.6px;text-transform:uppercase;color:var(--smoke);white-space:nowrap}
.where .n{font-family:var(--display);font-weight:400;font-size:14px;letter-spacing:1px;color:var(--white)}
.where .n span{color:var(--ash)}
.rule{position:absolute;left:0;bottom:0;height:1px;width:100%;background:var(--line-2)}
.rule i{display:block;height:100%;width:100%;background:#fff;transform-origin:0 50%;transform:scaleX(0)}
.dots{position:fixed;right:clamp(10px,2vw,26px);top:50%;transform:translateY(-50%);z-index:30;display:flex;flex-direction:column;gap:12px}
.dots a{position:relative;display:block;width:9px;height:9px;border-radius:50%;border:1px solid var(--ash);background:transparent;transition:background .3s,border-color .3s,transform .3s}
.dots a.on{background:var(--white);border-color:var(--white);transform:scale(1.15)}
.dots a span{position:absolute;right:20px;top:50%;transform:translateY(-50%);white-space:nowrap;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--silver);opacity:0;pointer-events:none;transition:opacity .2s}
.dots a:hover span,.dots a:focus-visible span{opacity:1}

/* ---------- Slides ---------- */
.slide{position:relative;min-height:100vh;min-height:100svh;scroll-snap-align:start;scroll-snap-stop:always;display:grid;align-content:center;padding:var(--top) var(--gutter) 40px;border-bottom:1px solid var(--line-2);overflow:hidden}
.inner{width:100%;max-width:1140px;margin:0 auto;min-width:0}
.slide{grid-template-columns:minmax(0,1fr)}
.kicker{display:flex;align-items:center;gap:14px;font-size:11px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--smoke);margin-bottom:22px}
.kicker::before{content:"";width:36px;height:1px;background:var(--sig)}
.kicker b{font-family:var(--display);font-weight:400;font-style:italic;letter-spacing:1px;text-transform:none;font-size:14px;color:var(--silver)}
.title{font-size:clamp(34px,5.2vw,64px);line-height:1.04;letter-spacing:.2px;max-width:17ch}
.title em{font-style:italic;color:var(--silver)}
.title.t2{font-size:clamp(30px,3.9vw,50px);max-width:none}
.t2 + .sub{margin-top:10px}
.sub{margin-top:18px;font-size:clamp(16px,1.6vw,19px);color:var(--silver);max-width:60ch;font-weight:300}
.plat{background:var(--platinum);-webkit-background-clip:text;background-clip:text;color:transparent}
.src{font-size:11.5px;color:var(--ash);letter-spacing:.3px;line-height:1.5}
.ask{margin-top:26px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px}
.ask small{font-size:10.5px;font-weight:600;letter-spacing:2.4px;text-transform:uppercase;color:var(--ash)}
.ask q{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(18px,1.9vw,22px);color:var(--white);quotes:none}
.ask q::before{content:"\201C"}.ask q::after{content:"\201D"}

/* ---------- 0 Cover ---------- */
.cover canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:.9;
  -webkit-mask-image:radial-gradient(90% 80% at 70% 45%,#000 20%,transparent 75%);mask-image:radial-gradient(90% 80% at 70% 45%,#000 20%,transparent 75%)}
.cover .inner{position:relative;z-index:1;display:grid;gap:clamp(20px,3vw,36px)}
.sig-wrap{position:relative;width:max-content;max-width:100%}
.sig{font-family:var(--script);font-weight:400;font-size:clamp(120px,21vw,300px);line-height:.9;letter-spacing:-2px;
  background:linear-gradient(180deg,#b7b7b2 0%,#7d7d78 60%,#5e5e5a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;padding:0 .1em 0 .02em}
.sig-co{position:absolute;right:.2em;bottom:.55em;font-family:var(--body);font-weight:500;font-size:clamp(11px,1.3vw,17px);letter-spacing:.45em;color:var(--ash)}
.cover h1{font-family:var(--display);font-weight:300;font-size:clamp(18px,2.2vw,26px);letter-spacing:.42em;text-transform:uppercase;color:var(--white)}
.cover .lede{font-family:var(--display);font-weight:300;font-style:italic;font-size:clamp(22px,2.8vw,34px);line-height:1.25;color:var(--silver);max-width:26ch}
.cover-meta{display:flex;flex-wrap:wrap;gap:10px 36px;padding-top:22px;border-top:1px solid var(--line);max-width:900px}
.cover-meta div{font-size:13px;color:var(--smoke);line-height:1.5}
.cover-meta b{display:block;font-weight:500;color:var(--white);font-size:14.5px;letter-spacing:.3px}
.cue{display:inline-flex;align-items:center;gap:12px;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--smoke)}
.cue i{position:relative;display:block;width:48px;height:1px;background:var(--line);overflow:hidden}
.cue i::after{content:"";position:absolute;inset:0;background:var(--sheen);animation:sheen 2.6s ease-in-out infinite}
@keyframes sheen{from{transform:translateX(-100%)}to{transform:translateX(100%)}}

/* ---------- 1 Working ---------- */
.working{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,90px);align-items:center;margin-top:clamp(28px,4vw,48px)}
.rating .big{font-family:var(--display);font-weight:300;font-size:clamp(96px,13vw,180px);line-height:.85;letter-spacing:-3px}
.rating .stars{margin-top:14px;font-size:18px;letter-spacing:6px;color:var(--silver)}
.rating p{margin-top:10px;color:var(--smoke);font-size:14px}
.quotes{display:grid;gap:26px}
.quotes figure{margin:0;padding-left:22px;border-left:1px solid var(--line)}
.quotes blockquote{margin:0;font-family:var(--display);font-weight:300;font-size:clamp(20px,2.1vw,26px);line-height:1.3;color:var(--white)}
.quotes figcaption{margin-top:8px;font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--ash)}
.working-note{margin-top:clamp(28px,4vw,44px);font-size:clamp(16px,1.6vw,18px);color:var(--silver);max-width:62ch;font-weight:300}

/* ---------- 2 Google ---------- */
.gl{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(28px,5vw,72px);align-items:start;margin-top:clamp(28px,4vw,44px)}
.chart{border:1px solid var(--line);border-radius:18px;padding:clamp(20px,3vw,32px);background:linear-gradient(180deg,var(--onyx),var(--black))}
.chart h3{font-family:var(--body);font-weight:600;font-size:11px;letter-spacing:2.6px;text-transform:uppercase;color:var(--smoke);margin-bottom:18px}
.brow{display:grid;grid-template-columns:minmax(110px,180px) 1fr;gap:4px 18px;align-items:center;padding-block:10px;border-top:1px solid var(--line-2)}
.brow:first-of-type{border-top:0}
.brow .who{font-size:14px;color:var(--smoke)}
.brow.me .who{color:var(--white);font-weight:600}
.btrack{display:flex;align-items:center;gap:12px;min-height:24px}
.bfill{height:6px;border-radius:3px;background:#3b3b39;min-width:5px;flex:none}
.brow.me .bfill{background:var(--white);box-shadow:0 0 18px rgba(255,255,255,.35)}
.bval{font-family:var(--display);font-size:18px;font-variant-numeric:lining-nums tabular-nums;color:var(--white)}
.facts3{display:grid;gap:0}
.facts3 div{padding-block:18px;border-top:1px solid var(--line)}
.facts3 div:last-child{border-bottom:1px solid var(--line)}
.facts3 small{display:block;font-size:10.5px;font-weight:600;letter-spacing:2.4px;text-transform:uppercase;color:var(--ash)}
.facts3 b{display:block;margin-top:4px;font-family:var(--display);font-weight:300;font-size:clamp(24px,2.6vw,32px);color:var(--white);line-height:1.15}
.facts3 span{display:block;margin-top:4px;font-size:13.5px;color:var(--smoke)}

/* ---------- 3 SEO ---------- */
.seo-top{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:20px 40px}
.tally{display:flex;gap:22px}
.tally b{display:block;font-family:var(--display);font-weight:300;font-size:40px;line-height:1}
.tally span{font-size:10.5px;font-weight:600;letter-spacing:2.2px;text-transform:uppercase;color:var(--smoke)}
.tally .t-ok b{color:var(--ok)} .tally .t-warn b{color:var(--warn)} .tally .t-miss b{color:var(--miss)}
.checks{list-style:none;margin:clamp(24px,3.5vw,40px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(20px,3vw,40px)}
.checks li{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:start;padding-block:14px;border-top:1px solid var(--line)}
.checks h4{font-family:var(--body);font-weight:600;font-size:14px;letter-spacing:.2px;color:var(--white)}
.checks p{grid-column:1 / -1;font-size:13px;color:var(--smoke);line-height:1.5}
.checks p code{font-family:var(--display);font-size:13.5px;color:var(--silver);background:none}
.chip{font-size:9.5px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;padding:3px 8px;border-radius:999px;white-space:nowrap}
.chip.ok{color:var(--ok);background:var(--ok-bg)} .chip.warn{color:var(--warn);background:var(--warn-bg)} .chip.miss{color:var(--miss);background:var(--miss-bg)}

/* ---------- 4 Market ---------- */
.market{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:clamp(28px,4vw,48px);border-top:1px solid var(--line)}
.market > div{padding:22px 26px 20px 0}
.market > div + div{padding-left:26px;border-left:1px solid var(--line-2)}
.market .v{font-family:var(--display);font-weight:300;font-size:clamp(40px,4.6vw,60px);line-height:1}
.market .l{margin-top:14px;font-size:15px;color:var(--silver);line-height:1.5}
.market .src{margin-top:10px}

/* ---------- 5 Speed ---------- */
.speed{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:clamp(28px,4vw,48px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.speed > div{padding:28px 24px 26px 0;display:flex;flex-direction:column;gap:12px}
.speed > div + div{padding-left:24px;border-left:1px solid var(--line-2)}
.speed .v{font-family:var(--display);font-weight:300;font-size:clamp(56px,6.4vw,92px);line-height:.9;letter-spacing:-1px}
.speed .v small{font-size:.4em;letter-spacing:0;margin-left:4px}
.speed .l{font-size:14.5px;color:var(--silver);line-height:1.5}
.speed .src{margin-top:auto}
.night{margin-top:clamp(24px,3vw,36px);display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;max-width:820px}
.night .moon{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;color:var(--silver)}
.night p{font-size:clamp(16px,1.7vw,19px);color:var(--silver);font-weight:300}
.night b{color:var(--white);font-weight:500}

/* ---------- 6 Demo ---------- */
.demo{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(28px,6vw,90px);align-items:center}
.phone{position:relative;width:100%;max-width:370px;justify-self:center;border-radius:40px;padding:12px;background:linear-gradient(145deg,#2c2c2b,#0f0f0f 40%,#232322);box-shadow:0 30px 80px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.08)}
.screen{border-radius:30px;background:#050505;overflow:hidden;display:flex;flex-direction:column;height:min(560px,64vh);min-height:430px}
.screen-top{padding:14px 18px 12px;border-bottom:1px solid #1b1b1b;display:flex;align-items:center;gap:10px}
.avatar{width:34px;height:34px;border-radius:50%;background:#1c1c1c;display:grid;place-items:center;font-family:var(--script);font-size:20px;color:var(--silver)}
.screen-top b{display:block;font-size:13.5px;font-weight:600;color:var(--white);line-height:1.2}
.screen-top span{font-size:11px;color:var(--ash)}
.thread{flex:1;padding:14px 12px 16px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;scrollbar-width:none}
.thread::-webkit-scrollbar{display:none}
.msg{max-width:84%;padding:9px 12px;border-radius:18px;font-size:13.5px;line-height:1.4;transition:opacity .35s ease,transform .35s ease}
.msg.them{align-self:flex-start;background:#1e1e1e;color:var(--white);border-bottom-left-radius:6px}
.msg.us{align-self:flex-end;background:var(--navy);color:#fff;border-bottom-right-radius:6px}
.msg.sys{align-self:center;max-width:none;background:none;padding:2px 0;font-size:11px;letter-spacing:.6px;color:var(--ash);text-align:center}
.msg.sys b{color:var(--miss);font-weight:600}
.msg.card{align-self:stretch;max-width:none;background:#121212;border:1px solid #262626;border-radius:14px;color:var(--silver);font-size:12.5px}
.msg.card b{display:block;color:var(--white);font-size:12px;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:4px}
.msg.hide{opacity:0;transform:translateY(6px)}
.typing{align-self:flex-end;display:none;gap:4px;padding:10px 12px;border-radius:18px;background:#10244d}
.typing.on{display:flex}
.typing i{width:6px;height:6px;border-radius:50%;background:#9fb3df;animation:blink 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{0%,100%{opacity:.25}50%{opacity:1}}
.demo-copy .stat{display:flex;align-items:baseline;gap:14px;margin-top:26px;padding-block:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.demo-copy .stat b{font-family:var(--display);font-weight:300;font-size:clamp(52px,5.6vw,76px);line-height:.9}
.demo-copy .stat span{font-size:14px;color:var(--silver);max-width:26ch}
.live{margin-top:28px;padding:22px;border-radius:18px;border:1px solid rgba(169,189,230,.22);background:radial-gradient(120% 140% at 0% 0%,rgba(23,64,135,.35),transparent 60%),var(--onyx)}
.live h3{font-size:24px;font-weight:400}
.live p{margin-top:6px;font-size:14.5px;color:var(--silver)}
.live .row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:16px}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:999px;background:var(--navy);color:#fff;text-decoration:none;font-weight:600;font-size:14.5px;letter-spacing:.4px;border:1px solid rgba(169,189,230,.35);transition:background .2s}
.btn:hover{background:var(--navy-hi)}
.btn svg{width:18px;height:18px}
.ghost{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 16px;border-radius:999px;background:none;border:1px solid var(--line);color:var(--silver);font:inherit;font-size:13px;cursor:pointer}
.ghost:hover{border-color:var(--ash);color:var(--white)}
.live .num{font-family:var(--display);font-size:20px;color:var(--white);user-select:all}
.demo-note{margin-top:14px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* ---------- 7 System ---------- */
.sys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:clamp(20px,3vw,36px);border-top:1px solid var(--line)}
.sys > div{padding:24px 22px 8px 0;display:grid;align-content:start;gap:14px}
.sys > div + div{padding-left:22px;border-left:1px solid var(--line-2)}
.sys .ph{font-family:var(--display);font-style:italic;font-size:14px;color:var(--smoke)}
.sys h3{font-size:clamp(22px,2.2vw,27px);font-weight:400;line-height:1.15;margin-top:-6px}
.sys ul{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:10px}
.sys li b{display:block;font-weight:600;font-size:14.5px;color:var(--white)}
.sys li span{display:block;font-size:13.5px;color:var(--smoke);line-height:1.5;margin-top:2px}
.tag{display:inline-block;margin-left:6px;font-size:9px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;padding:2px 7px;border-radius:999px;vertical-align:2px}
.tag.start{background:var(--white);color:var(--black)}
.tag.inc{border:1px solid var(--line);color:var(--silver)}
.tag.opt{border:1px dashed var(--ash);color:var(--smoke)}

/* ---------- 8 Get found ---------- */
.fixes{margin-top:clamp(18px,2.6vw,30px);display:grid;gap:0;border-top:1px solid var(--line)}
.fix{display:grid;grid-template-columns:minmax(140px,.55fr) minmax(0,1fr) 28px minmax(0,1.35fr);gap:8px 22px;align-items:baseline;padding-block:10px;border-bottom:1px solid var(--line-2)}
.fix .what{font-size:10.5px;font-weight:600;letter-spacing:2.2px;text-transform:uppercase;color:var(--ash)}
.fix .now{font-size:14.5px;color:var(--smoke);text-decoration:line-through;text-decoration-color:rgba(221,143,130,.6)}
.fix .arrow{color:var(--ash);text-align:center}
.fix .next{font-family:var(--display);font-weight:400;font-size:clamp(16px,1.6vw,19px);color:var(--white);line-height:1.35}

/* ---------- 9 Meta & tools ---------- */
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start;margin-top:clamp(18px,2.6vw,30px)}
.bench{display:grid;gap:0;border-top:1px solid var(--line)}
.bench > div{display:grid;grid-template-columns:minmax(118px,auto) 1fr;gap:4px 20px;align-items:baseline;padding-block:10px;border-bottom:1px solid var(--line-2)}
.bench .v{font-family:var(--display);font-weight:300;font-size:clamp(28px,2.8vw,36px);line-height:1;white-space:nowrap}
.bench .l{font-size:14px;color:var(--silver);line-height:1.45}
.bench .src{grid-column:2}
.card{border:1px solid var(--line);border-radius:20px;padding:clamp(18px,2.2vw,26px);background:linear-gradient(180deg,var(--graphite),var(--onyx));position:relative;overflow:hidden}
.card::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--sheen)}
.card h3{font-size:22px;font-weight:400}
.card .intro{font-size:13.5px;color:var(--smoke);margin-top:4px}
.fields{display:grid;gap:12px;margin-top:14px}
.fields.cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px}
.f label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:13.5px;color:var(--silver);line-height:1.35}
.f .box{display:inline-flex;align-items:center;gap:2px;flex:none;border-bottom:1px solid var(--line);padding:0 2px 2px;min-width:74px;justify-content:flex-end}
.f .box span{color:var(--ash);font-size:13px}
.f input[type=number]{appearance:textfield;-moz-appearance:textfield;width:100%;max-width:74px;min-width:0;background:transparent;border:0;color:var(--white);font-family:var(--display);font-size:18px;text-align:right;font-variant-numeric:lining-nums tabular-nums;padding:0}
.f input[type=number]::-webkit-inner-spin-button,.f input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.f input[type=number]:focus{outline:none}
.f .box:focus-within{border-color:var(--white)}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:26px;background:transparent;margin-top:6px;cursor:pointer;--p:50%}
input[type=range]::-webkit-slider-runnable-track{height:2px;background:linear-gradient(90deg,var(--white) 0,var(--white) var(--p),#333331 var(--p))}
input[type=range]::-moz-range-track{height:2px;background:#333331}
input[type=range]::-moz-range-progress{height:2px;background:var(--white)}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--white);margin-top:-8px;box-shadow:0 0 0 5px rgba(255,255,255,.08),0 2px 8px rgba(0,0,0,.6)}
input[type=range]::-moz-range-thumb{width:16px;height:16px;border:0;border-radius:50%;background:var(--white)}
.out{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);display:grid;gap:6px}
.out .ln{display:flex;justify-content:space-between;gap:12px;font-size:13.5px;color:var(--smoke)}
.out .ln b{font-family:var(--display);font-weight:400;font-size:17px;color:var(--white);font-variant-numeric:lining-nums tabular-nums}
.out .hero-n{margin-top:10px}
.out .hero-n small{display:block;font-size:10.5px;font-weight:600;letter-spacing:2.4px;text-transform:uppercase;color:var(--smoke)}
.out .hero-n > b{display:block;font-family:var(--display);font-weight:300;font-size:clamp(40px,4vw,54px);line-height:1.05;font-variant-numeric:lining-nums tabular-nums}
.out .hero-n span{font-size:14px;color:var(--silver)}
.out .hero-n span b{font-family:var(--display);font-weight:400;color:var(--white)}
.waiting{margin-top:12px;font-size:13.5px;color:var(--silver);padding:12px 14px;border:1px solid var(--line);border-radius:12px}
.waiting b{font-family:var(--display);font-weight:400;font-size:17px;color:var(--white)}
.chip-ex{display:inline-block;font-size:9.5px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--smoke);border:1px solid var(--line);border-radius:999px;padding:3px 9px;margin-top:10px}
.numbers{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(24px,4vw,56px);align-items:start;margin-top:clamp(18px,2.6vw,30px)}
.help{font-size:12px;color:var(--ash);margin-top:4px;line-height:1.45}

/* ---------- 11 Guarantee ---------- */
.g{display:grid;grid-template-columns:auto 1fr;gap:clamp(28px,6vw,90px);align-items:center}
.g .x{font-family:var(--display);font-weight:300;font-size:clamp(110px,17vw,240px);line-height:.85;letter-spacing:-4px}
.g h2{font-size:clamp(28px,3.6vw,46px);line-height:1.1}
.g p{margin-top:16px;font-size:clamp(17px,1.8vw,20px);color:var(--silver);max-width:44ch;font-weight:300}

/* ---------- 12 Next ---------- */
.final .sig{position:absolute;right:-2%;bottom:-6%;font-size:clamp(160px,30vw,420px);opacity:.14;pointer-events:none;z-index:0}
.final .inner{position:relative;z-index:1}
.final .say{font-family:var(--display);font-weight:300;font-size:clamp(30px,4.2vw,54px);line-height:1.15;max-width:22ch}
.final .say em{color:var(--silver)}
.person{margin-top:clamp(28px,4vw,48px);display:flex;flex-wrap:wrap;gap:8px 40px;align-items:baseline;padding-top:20px;border-top:1px solid var(--line);max-width:760px}
.person b{font-family:var(--display);font-weight:400;font-size:24px}
.person span{font-size:14px;color:var(--smoke)}
details{margin-top:28px;max-width:860px}
summary{cursor:pointer;display:inline-flex;align-items:center;gap:10px;min-height:36px;font-size:11px;font-weight:600;letter-spacing:2.4px;text-transform:uppercase;color:var(--smoke);list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:15px;color:var(--white)}
details[open] summary::after{content:"\2013"}
details ol{margin:10px 0 0;padding-left:18px;font-size:12.5px;color:var(--ash);line-height:1.7}
.foot{margin-top:18px;font-size:12px;color:var(--ash)}

/* ---------- ROI ---------- */
.roi{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,72px);align-items:start;margin-top:clamp(18px,2.6vw,30px)}
.card .q{font-size:14.5px;color:var(--silver);line-height:1.45}
.seg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:14px;padding:5px;border:1px solid var(--line);border-radius:999px}
.seg button{min-height:44px;border-radius:999px;border:0;background:transparent;color:var(--smoke);font-family:var(--display);font-size:20px;cursor:pointer;transition:background .2s,color .2s}
.seg button:hover{color:var(--white)}
.seg button[aria-checked="true"]{background:var(--white);color:var(--black)}

/* ---------- Call demo ---------- */
.call{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px));background:rgba(5,5,5,.8);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.call-panel{width:100%;max-width:400px;max-height:100%;overflow:auto;border-radius:36px;padding:34px 24px 22px;background:radial-gradient(120% 70% at 50% 0%,#1d1d1d,#0a0a0a 70%);border:1px solid #262626;box-shadow:0 40px 120px rgba(0,0,0,.7);display:grid;gap:16px;text-align:center}
.call-avatar{position:relative;width:92px;height:92px;margin:0 auto;border-radius:50%;background:#161616;border:1px solid #2c2c2c;display:grid;place-items:center;font-family:var(--script);font-size:46px;color:var(--silver)}
.call-avatar i{position:absolute;inset:-8px;border-radius:50%;border:1px solid rgba(255,255,255,.2);opacity:0}
.call.ringing .call-avatar i{animation:ringout 1.6s ease-out infinite}
@keyframes ringout{0%{transform:scale(.92);opacity:.85}100%{transform:scale(1.4);opacity:0}}
.call-name{font-family:var(--display);font-size:25px;font-weight:400;color:var(--white)}
.call-status{margin-top:2px;font-size:13px;letter-spacing:1.4px;color:var(--smoke);font-variant-numeric:lining-nums tabular-nums}
.wave{display:flex;align-items:center;justify-content:center;gap:4px;height:48px}
.wave i{display:block;width:4px;height:4px;border-radius:2px;background:var(--silver)}
.captions{min-height:118px;display:grid;gap:10px;align-content:end;text-align:left}
.cap{font-size:15px;line-height:1.45;color:var(--white)}
.cap small{display:block;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ash);margin-bottom:2px}
.cap.riley small{color:var(--ice)}
.cap.prev{opacity:.4;font-size:13.5px}
.summary{text-align:left;border:1px solid var(--line);border-radius:16px;padding:14px 16px;font-size:13.5px;color:var(--silver);line-height:1.5}
.summary b{display:block;font-size:10.5px;letter-spacing:1.8px;text-transform:uppercase;color:var(--white);margin-bottom:4px}
.call-actions{display:flex;justify-content:center;gap:28px;align-items:center}
.cico{width:54px;height:54px;border-radius:50%;background:#1b1b1b;display:grid;place-items:center;color:var(--smoke)}
.cend{width:66px;height:66px;border-radius:50%;background:#c2413a;border:0;color:#fff;display:grid;place-items:center;cursor:pointer;transition:background .2s}
.cend:hover{background:#d24b43}
.call-foot{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
@media (max-width: 980px){ .roi{grid-template-columns:1fr} }

/* ---------- Ambient background ---------- */
.bgwrap{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:#050506;contain:strict}
#bgimg{position:absolute;max-width:none;display:block;will-change:transform;animation:breathe 36s ease-in-out infinite alternate}
@keyframes breathe{from{transform:scale(1)}to{transform:scale(1.05)}}
#bg{position:absolute;inset:0;width:100%;height:100%;display:block;will-change:opacity}
.fog{position:absolute;left:0;width:70vw;height:18vh;top:calc(var(--hz,40vh) - 9vh);background:radial-gradient(closest-side,rgba(225,232,242,.08),rgba(225,232,242,0));will-change:transform;animation:drift 80s linear infinite}
.fog.f2{top:calc(var(--hz,40vh) - 2vh);width:90vw;animation-duration:110s;animation-delay:-50s;opacity:.8}
@keyframes drift{from{transform:translateX(-80vw)}to{transform:translateX(130vw)}}
.bgshade{position:absolute;inset:0;background:radial-gradient(ellipse 60% 55% at 50% 45%,rgba(0,0,0,.6),rgba(0,0,0,.25) 60%,rgba(0,0,0,0) 100%),radial-gradient(ellipse at center,rgba(0,0,0,0) 45%,rgba(0,0,0,.55) 100%)}
.bgdim{position:absolute;inset:0;background:#060607;opacity:0;will-change:opacity}
@media (prefers-reduced-motion: reduce){ #bgimg,.fog{animation:none} }
.no-gl #bg{display:none}
.no-gl body{background:radial-gradient(80% 60% at 60% 30%,#1a2233 0%,#0b0b0b 60%) fixed}
.grain{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.035;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .7 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
main{position:relative;z-index:2}
.slide{border-bottom:0}
.bar{background:linear-gradient(180deg,rgba(8,8,9,.8),rgba(8,8,9,.35) 70%,rgba(8,8,9,0));transition:opacity .45s ease,transform .45s ease}
body.on-cover .bar{opacity:0;transform:translateY(-10px);pointer-events:none}
.chart,.card{background:linear-gradient(180deg,rgba(24,24,25,.9),rgba(12,12,13,.86))}
.live{background:radial-gradient(120% 140% at 0% 0%,rgba(23,64,135,.35),transparent 60%),rgba(14,14,15,.9)}
.title em{color:#ffffff}
.final .sig{background:linear-gradient(#fff,#fff);-webkit-background-clip:text;background-clip:text;opacity:.1}

/* ---------- Grand cover ---------- */
.cover{text-align:center}
.cover::before{content:"";position:absolute;left:50%;top:40%;width:min(1200px,130vw);height:640px;transform:translate(-50%,-50%);pointer-events:none;
  background:radial-gradient(closest-side,rgba(255,255,255,.06),transparent 70%)}
.cover .inner{position:relative;z-index:1;display:grid;justify-items:center;gap:clamp(12px,2vw,22px);max-width:1100px}
.pre{font-size:11px;font-weight:600;letter-spacing:.55em;margin-right:-.55em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.sig-box{position:relative;width:min(100%,960px);margin-block:clamp(-10px,-1vw,0px) clamp(-34px,-3vw,-8px)}
.sig-svg{display:block;width:100%;height:auto;overflow:visible}
.sig-svg text{font-family:var(--script);font-size:300px;fill:url(#silver);stroke:#ffffff;stroke-width:1.1;stroke-dasharray:1900;stroke-dashoffset:1900;fill-opacity:0;filter:drop-shadow(0 8px 30px rgba(0,0,0,.65))}
.sig-svg.draw text{animation:sigdraw 2.8s cubic-bezier(.55,.1,.3,1) forwards,sigfill 1.6s ease 1.8s forwards}
.sig-svg.static text{stroke-dashoffset:0;fill-opacity:1;stroke-opacity:0}
@keyframes sigdraw{to{stroke-dashoffset:0}}
@keyframes sigfill{to{fill-opacity:1;stroke-opacity:0}}
.sig-co2{position:absolute;right:12%;bottom:16%;font-size:clamp(9px,1.15vw,15px);font-weight:600;letter-spacing:.5em;color:rgba(255,255,255,.8)}
.orn{display:flex;align-items:center;gap:14px;width:min(440px,72%);margin-top:clamp(4px,1vw,10px)}
.orn i{flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.85))}
.orn i:last-child{background:linear-gradient(270deg,transparent,rgba(255,255,255,.85))}
.orn b{width:7px;height:7px;transform:rotate(45deg);border:1px solid #fff}
.cover h1{font-family:var(--display);font-weight:300;font-size:clamp(20px,2.8vw,36px);letter-spacing:.55em;margin-right:-.55em;text-transform:uppercase;color:var(--white)}
.cover .lede{font-family:var(--display);font-weight:300;font-style:italic;font-size:clamp(19px,2.2vw,28px);line-height:1.3;color:var(--silver);max-width:32ch;text-align:center}
.cover .cover-meta{justify-content:center;gap:0;border-top:0;padding-top:clamp(10px,2vw,22px);max-width:none}
.cover .cover-meta div{padding:4px clamp(14px,2.4vw,30px);font-size:13px;color:var(--smoke);text-align:center}
.cover .cover-meta div + div{border-left:1px solid var(--line)}
.cover .cover-meta b{font-size:10px;font-weight:600;letter-spacing:2.6px;text-transform:uppercase;color:var(--ash);margin-bottom:2px}
.begin{display:inline-flex;flex-direction:column;align-items:center;gap:10px;margin-top:clamp(8px,2vw,20px);text-decoration:none;font-size:10.5px;font-weight:600;letter-spacing:.5em;margin-right:-.5em;text-transform:uppercase;color:var(--silver)}
.begin i{position:relative;display:block;width:1px;height:46px;background:rgba(255,255,255,.14);overflow:hidden}
.begin i::after{content:"";position:absolute;left:0;top:-50%;width:1px;height:50%;background:linear-gradient(180deg,transparent,#fff);animation:drip 2.2s ease-in-out infinite}
@keyframes drip{to{top:100%}}
.seal{position:absolute;right:clamp(16px,4vw,64px);bottom:clamp(40px,8vh,96px);width:clamp(92px,9.5vw,138px);z-index:1;opacity:.95}
.seal svg{display:block;overflow:visible}
.seal textPath{font-family:var(--body);font-size:11.5px;font-weight:600;letter-spacing:2px;fill:rgba(255,255,255,.78)}
.seal .mono{font-family:var(--script);font-size:72px;fill:#ffffff}
.seal{aspect-ratio:1/1}
.seal svg{position:absolute;inset:0;width:100%;height:100%}
.seal .ring{animation:spin 60s linear infinite;will-change:transform}
@keyframes spin{to{transform:rotate(360deg)}}
@media (max-width: 760px){
  .seal{width:78px;right:14px;top:calc(env(safe-area-inset-top,0px) + 14px);bottom:auto;opacity:.8}
  .cover .cover-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:12px}
  .cover .cover-meta div:nth-child(3){border-left:0}
  .pre,.cover h1{letter-spacing:.38em;margin-right:-.38em}
}
@media (prefers-reduced-motion: reduce){ .seal .ring,.begin i::after{animation:none} }

/* ---------- Readability ---------- */
:root{--smoke:#c6c6c2; --ash:#a4a4a0}
body{font-size:17px}
.kicker{font-size:12px;letter-spacing:2px;color:#d6d6d2}
.sub,.working-note,.night p,.g p,.cover .lede{font-weight:400}
.sub{color:#e6e6e3}
.src{font-size:12.5px;color:#a8a8a4}
.ask small,.facts3 small,.fix .what,.tally span,.chart h3,.out .hero-n small,.cover .cover-meta b,.chip-ex,.summary b,.cap small,.where{font-size:11.5px;letter-spacing:1.6px}
.chip{font-size:10.5px;letter-spacing:1.2px}
.checks h4{font-size:15px}
.checks p{font-size:14px;color:#cfcfcb}
.bench .l,.speed .l,.market .l{font-size:15.5px;color:#eeeeec}
.sys li b{font-size:15.5px}
.sys li span{font-size:14.5px;color:#cfcfcb}
.fix .now{font-size:15px;color:#bdbdb9}
.quotes figcaption{font-size:12.5px;letter-spacing:1.2px;color:#b8b8b4}
.f label{font-size:14.5px;color:#eeeeec}
.cover .cover-meta div{font-size:14px;color:#e6e6e3}
.cover .cover-meta b{color:#b8b8b4}
.rating p,.facts3 span,.card .intro,.help,.out .ln{color:#cacac6}
.out .ln{font-size:14.5px}
.msg{font-size:14px}
.live p{font-size:15px;color:#e6e6e3}
.grain{opacity:.05}
.demo-tag{display:inline-block;margin-top:8px;font-size:11px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:4px 10px}
@media (max-width: 520px){ .seal{display:none} }

@media (min-width: 900px) and (max-height: 820px){
  .slide{padding-top:calc(58px + env(safe-area-inset-top,0px));padding-bottom:22px}
  .title{font-size:clamp(30px,4.3vw,54px)}
  .sig-box{width:min(100%,740px)}
  .cover .inner{gap:10px}
  .begin{margin-top:4px}
  .begin i{height:28px}
  .quotes{gap:18px}
  .checks li{padding-block:11px}
  .screen{height:min(520px,62vh)}
}
/* ---------- Two trades ---------- */
.trades{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.4vw,28px);margin-top:clamp(20px,3vw,34px)}
.trade{position:relative;margin:0;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.16);aspect-ratio:3/2;max-width:100%;background:#111;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.trade img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.trade:hover img{transform:scale(1.04)}
.trade::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 42%,rgba(0,0,0,.85) 100%);pointer-events:none}
.trade figcaption{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:18px 22px;display:grid;gap:2px}
.trade figcaption b{font-family:var(--display);font-weight:400;font-size:clamp(22px,2.2vw,28px);color:#fff}
.trade figcaption span{font-size:14.5px;color:#ececea}
@media (max-width: 640px){ .trades{grid-template-columns:1fr} }
@media (prefers-reduced-motion: reduce){ .trade img{transition:none} }

/* ---------- Tax ---------- */
.tax .v{font-size:clamp(30px,3.2vw,44px)}
.tax > div{padding-top:16px;padding-bottom:12px}
.tax{margin-top:clamp(16px,2.4vw,28px)}
.tax .l b{color:#fff;font-weight:600}
.taxbox{margin-top:clamp(16px,2.4vw,26px);padding:18px 22px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(14,14,15,.88);display:grid;gap:8px;max-width:900px}
.taxbox p{font-size:15.5px;color:#ececea;line-height:1.55}
.taxbox p b{color:#fff;font-weight:600}
.taxbox .src{font-size:12.5px;color:#a8a8a4}
/* ---------- Value Equation levers ---------- */
.head-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 28px}
.levers{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:6px}
.levers span{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:5px 11px;white-space:nowrap}
.eyebrow-s{font-size:11.5px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:#c6c6c2}
.panel{border:1px solid var(--line);border-radius:16px;background:rgba(14,14,15,.88)}

/* ---------- Dream outcome ---------- */
.dream{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(24px,4vw,56px);margin-top:clamp(20px,3vw,34px);align-items:start}
.outcomes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line)}
.outcomes div{padding:18px 20px 18px 0;border-bottom:1px solid var(--line-2)}
.outcomes div:nth-child(even){padding-left:20px;border-left:1px solid var(--line-2)}
.outcomes b{display:block;font-family:var(--display);font-weight:400;font-size:clamp(22px,2.2vw,28px);color:#fff}
.outcomes span{display:block;margin-top:6px;font-size:15px;color:#dededb;line-height:1.5}
.equation{border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:22px 22px 18px;background:rgba(14,14,15,.9)}
.eq{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:14px;margin-top:14px}
.eq .v{font-family:var(--display);font-size:24px;color:#fff;white-space:nowrap}
.frac{display:grid;text-align:center}
.frac .top,.frac .bot{font-size:14px;color:#fff;padding:9px 4px;line-height:1.35}
.frac .top{border-bottom:1.5px solid #fff}
.frac b{font-weight:600}
.eq-note{margin-top:14px;font-size:15px;color:#e6e6e3;line-height:1.5}
.equation .src{margin-top:8px}

/* ---------- Scorecard ---------- */
.scores{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.8vw,22px);margin-top:clamp(16px,2.4vw,28px)}
.score{display:grid;justify-items:center;text-align:center;gap:4px;padding:16px 10px 14px;border:1px solid var(--line);border-radius:16px;background:rgba(14,14,15,.86)}
.ring{position:relative;width:clamp(84px,8vw,108px);aspect-ratio:1/1;max-width:100%}
.ring svg{display:block;width:100%;height:100%;transform:rotate(-90deg)}
.ring .bgc{fill:none;stroke:#2c2c2c;stroke-width:9}
.ring .fg{fill:none;stroke:#fff;stroke-width:9;stroke-linecap:round;stroke-dasharray:0 314.16;transition:stroke-dasharray 1s cubic-bezier(.2,.8,.2,1)}
.ring b{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--display);font-weight:400;font-size:clamp(24px,2.4vw,32px);color:#fff;font-variant-numeric:lining-nums tabular-nums}
.score h3{margin-top:6px;font-family:var(--body);font-size:12.5px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#fff}
.score p{font-size:13px;color:#c6c6c2}
.gb{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,3vw,40px);margin-top:clamp(14px,2.2vw,24px)}
.gb h3{font-family:var(--body);font-size:12px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;margin-bottom:8px}
.gb .good h3{color:var(--ok)} .gb .bad h3{color:var(--miss)}
.gb ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.gb li{position:relative;padding-left:18px;font-size:14.5px;color:#e6e6e3;line-height:1.45}
.gb li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;border-radius:50%}
.gb .good li::before{background:var(--ok)} .gb .bad li::before{background:var(--miss)}
details.method{margin-top:12px}
details.method ol{font-size:12.5px;color:#b8b8b4}
details.method b{color:#e6e6e3}

/* ---------- Rankings ---------- */
.rank{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(20px,3.5vw,48px);margin-top:clamp(16px,2.4vw,28px);align-items:start}
.serp{border:1px solid var(--line);border-radius:16px;background:rgba(14,14,15,.9);padding:16px 18px}
.serp .q{display:flex;align-items:center;gap:10px;padding:9px 14px;border:1px solid rgba(255,255,255,.22);border-radius:999px;font-size:14px;color:#fff;margin-bottom:12px}
.serp ol{margin:0;padding:0 0 0 22px;display:grid;gap:4px;font-size:14px;color:#dededb}
.serp .you{margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--miss-bg);color:var(--miss);font-size:14px;font-weight:700}
.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:rgba(14,14,15,.9)}
.cmp{width:100%;border-collapse:collapse;font-size:14px;min-width:520px}
.cmp th,.cmp td{padding:9px 12px;border-bottom:1px solid var(--line-2);text-align:left;vertical-align:top;line-height:1.4}
.cmp tbody tr:last-child th,.cmp tbody tr:last-child td{border-bottom:0}
.cmp thead th{font-size:11px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;color:#c6c6c2;vertical-align:bottom}
.cmp tbody th{font-weight:500;color:#e6e6e3}
.cmp .me{color:#fff;background:rgba(255,255,255,.045)}
.cmp thead th.me{color:#fff}
.cmp td.y{color:var(--ok)} .cmp td.n{color:var(--miss)} .cmp td.m{color:var(--warn)}
.cmp td b{color:#fff}

/* ---------- AEO ---------- */
.aeo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:clamp(16px,2.4vw,28px)}
.src-card{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:rgba(14,14,15,.88);display:grid;gap:6px;align-content:start}
.src-card h4{margin:0;font-family:var(--body);font-weight:700;font-size:14.5px;color:#fff;display:flex;justify-content:space-between;gap:8px;align-items:center}
.src-card p{font-size:14px;color:#d2d2ce;line-height:1.5}
.define{margin-top:16px;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;max-width:880px}
.define b{font-family:var(--display);font-weight:400;font-size:30px;color:#fff;line-height:1}
.define p{font-size:15px;color:#e6e6e3;line-height:1.5}
.define strong{color:#fff}

/* ---------- After hours ---------- */
.tl{margin-top:clamp(18px,2.6vw,30px);display:grid;gap:12px;max-width:1000px}
.tl-row,.tl-axis{display:grid;grid-template-columns:minmax(140px,200px) 1fr;gap:16px;align-items:center}
.tl-row .who{font-size:14.5px;font-weight:600;color:#fff}
.tl-bar{position:relative;height:18px;border-radius:9px;background:#1f1f1f;overflow:visible}
.tl-bar i{position:absolute;top:0;bottom:0;border-radius:9px}
.tl-bar i.open{background:linear-gradient(90deg,#fff 0%,#fff 66%,rgba(255,255,255,0) 100%)}
.tl-bar i.all{background:#fff;box-shadow:0 0 18px rgba(255,255,255,.35)}
.tl-bar .mark9{position:absolute;top:-6px;bottom:-6px;width:2px;background:var(--miss);transform:translateX(-1px)}
.tl-axis > div{display:flex;justify-content:space-between;font-size:12px;color:#b8b8b4;font-variant-numeric:lining-nums tabular-nums}
.tl-note{gap:12px}
.tl-note .nine{color:var(--miss);text-align:right}
.hours-ev{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);margin-top:clamp(18px,2.6vw,30px)}
.hours-ev > div{padding:18px 22px 6px 0}
.hours-ev > div + div{padding-left:22px;border-left:1px solid var(--line-2)}
.hours-ev .v{font-family:var(--display);font-weight:300;font-size:clamp(28px,3vw,40px);line-height:1}
.hours-ev .l{margin-top:10px;font-size:15px;color:#e6e6e3;line-height:1.5}
.hours-ev .src{margin-top:8px}

/* ---------- Website pillars ---------- */
.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:clamp(16px,2.4vw,26px)}
.pillars > div{border:1px solid var(--line);border-radius:16px;padding:16px 18px;background:rgba(14,14,15,.88);display:grid;gap:8px;align-content:start}
.pk{font-family:var(--display);font-weight:300;font-size:34px;line-height:1;color:#fff}
.pillars h3{font-family:var(--body);font-size:12.5px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:#d6d6d2}
.pillars p{font-size:14.5px;color:#dededb;line-height:1.5}
.pillars .res{color:#fff;font-weight:600}

/* ---------- Offer ---------- */
.offer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(22px,4vw,56px);margin-top:clamp(16px,2.4vw,28px);align-items:start}
.lead-in{font-size:clamp(16px,1.6vw,18px);color:#ececea;line-height:1.55;margin-bottom:10px}
.pull{margin:14px 0 0;padding:14px 18px;border-left:2px solid #fff;font-family:var(--display);font-style:italic;font-size:clamp(18px,1.8vw,21px);color:#fff;line-height:1.35}
.pull cite{display:block;margin-top:6px;font-family:var(--body);font-style:normal;font-size:12.5px;color:#a8a8a4}
.ve{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin-top:18px}
.ve b{display:block;font-size:11.5px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#c6c6c2}
.ve span{display:block;font-size:14.5px;color:#fff;margin-top:2px}
.offer-card{position:relative;border:1px solid rgba(255,255,255,.3);border-radius:20px;padding:22px 24px;background:radial-gradient(120% 90% at 100% 0%,rgba(255,255,255,.08),transparent 60%),rgba(12,12,13,.94);box-shadow:0 30px 80px rgba(0,0,0,.55)}
.oc-tag{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:#0b0b0b;background:#fff;border-radius:999px;padding:4px 10px}
.offer-card h3{margin-top:12px;font-size:clamp(26px,2.8vw,34px);font-weight:400;line-height:1.1}
.oc-sub{margin-top:4px;font-size:15px;color:#c6c6c2}
.offer-card ul{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.offer-card li{position:relative;padding-left:24px;font-size:14.5px;color:#ececea;line-height:1.45}
.offer-card li::before{content:"";position:absolute;left:2px;top:.35em;width:12px;height:7px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
.oc-promise{margin-top:16px;padding:12px 14px;border-radius:12px;border:1px dashed rgba(255,255,255,.4);font-size:15px;font-weight:600;color:#fff}
.offer-card .src{margin-top:10px}

/* ---------- Launch ---------- */
.launch{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(22px,4vw,56px);margin-top:clamp(16px,2.4vw,28px);align-items:start}
.channels{list-style:none;margin:0 0 10px;padding:0;counter-reset:ch;display:grid;gap:0;border-top:1px solid var(--line)}
.channels li{counter-increment:ch;display:grid;grid-template-columns:34px 1fr;gap:2px 12px;padding:11px 0;border-bottom:1px solid var(--line-2)}
.channels li::before{content:counter(ch,decimal-leading-zero);grid-row:span 2;font-family:var(--display);font-size:18px;color:#a8a8a4}
.channels b{font-size:15px;color:#fff;font-weight:600}
.channels span{font-size:14px;color:#d2d2ce;line-height:1.45}
.mocks{display:grid;gap:12px}
.ad-mock{border:1px solid #2c2c2c;border-radius:16px;background:#141415;padding:14px;display:grid;gap:10px;max-width:380px}
.ad-top{display:flex;align-items:center;gap:10px}
.ad-av{width:32px;height:32px;border-radius:50%;background:#222;display:grid;place-items:center;font-family:var(--script);font-size:20px;color:#fff}
.ad-top b{display:block;font-size:13.5px;color:#fff}
.ad-top span{font-size:11.5px;color:#a8a8a4}
.ad-mock p{font-size:13.5px;color:#e6e6e3;line-height:1.45}
.ad-img{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:1.9/1;max-width:100%;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.75)),url("../assets/denate-coast.jpg") center 30%/cover;display:grid;align-content:end;padding:12px}
.ad-img span{font-family:var(--display);font-size:20px;color:#fff;letter-spacing:.12em}
.ad-img small{font-size:11px;color:#dededb}
.ad-cta{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ad-cta span{font-size:12px;color:#a8a8a4}
.ad-cta b{font-size:12.5px;color:#0b0b0b;background:#fff;border-radius:8px;padding:7px 12px}
.sms-mock{display:grid;gap:6px;max-width:380px}
.sms-mock .msg{max-width:88%}

/* ---------- AI Estimator HUD ---------- */
.hud{--hud-line:rgba(255,255,255,.1);position:relative;margin-top:clamp(12px,1.8vw,20px);border:1px solid rgba(255,255,255,.18);border-radius:18px;background:
  linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px) 0 0/24px 24px,
  linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px) 0 0/24px 24px,
  rgba(9,10,11,.95);box-shadow:0 30px 90px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.03);overflow:hidden}
.hud::after{content:"";position:absolute;left:0;right:0;top:-30%;height:30%;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.06),rgba(255,255,255,0));pointer-events:none;opacity:0}
.hud.busy::after{opacity:1;animation:scan 1.1s linear infinite}
@keyframes scan{to{transform:translateY(430%)}}
.hud-bar{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--hud-line);font-family:var(--mono);font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:#a8a8a4}
.hud-bar .live{display:inline-flex;align-items:center;gap:8px;color:#fff;font-weight:600}
.hud-bar .live i{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 10px var(--ok);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{opacity:.35}}
.hud-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,.8fr) minmax(0,1.25fr)}
.hud-col{padding:14px 16px;min-width:0}
.hud-col + .hud-col{border-left:1px solid var(--hud-line)}
.hud-l{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:#a8a8a4;margin-bottom:8px}
#est-text{width:100%;resize:vertical;min-height:84px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.16);border-radius:10px;color:#fff;font:inherit;font-size:14px;line-height:1.45;padding:10px 12px}
#est-text:focus{outline:none;border-color:#fff}
.presets{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.presets button{font:inherit;font-size:12px;color:#dededb;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:5px 10px;cursor:pointer}
.presets button:hover{color:#fff;border-color:#fff}
.est-go{margin-top:10px;width:100%;justify-content:center;background:#fff;color:#0b0b0b;border-color:#fff}
.est-go:hover{background:#e8e8e6}
.est-go[disabled]{opacity:.6;cursor:progress}
.steps{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:3px;font-family:var(--mono);font-size:11.5px;color:#7c7c78}
.steps li{display:flex;align-items:center;gap:8px}
.steps li::before{content:"";width:7px;height:7px;border-radius:50%;border:1px solid #555}
.steps li.run{color:#fff} .steps li.run::before{border-color:#fff;animation:pulse .6s ease-in-out infinite}
.steps li.ok{color:#cfcfcb} .steps li.ok::before{background:var(--ok);border-color:var(--ok)}
.hud-note{margin-top:8px;font-size:12px;color:#a8a8a4;line-height:1.45}
#est-scope{margin:0;display:grid;gap:0}
#est-scope > div{display:grid;gap:1px;padding:7px 0;border-bottom:1px solid var(--hud-line)}
#est-scope dt{display:flex;justify-content:space-between;gap:8px;font-family:var(--mono);font-size:10.5px;letter-spacing:.8px;text-transform:uppercase;color:#a8a8a4}
#est-scope dt em{font-style:normal;color:var(--ok)}
#est-scope dt em.as{color:var(--warn)}
#est-scope dd{margin:0;font-size:13.5px;color:#fff;line-height:1.35}
.gbb{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.gbb button{display:grid;gap:2px;text-align:left;padding:10px 11px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.03);color:#fff;font:inherit;cursor:pointer;min-width:0}
.gbb button[aria-checked="true"]{border-color:#fff;background:rgba(255,255,255,.1);box-shadow:0 0 0 1px #fff inset}
.gbb .t{font-family:var(--mono);font-size:10.5px;letter-spacing:1px;text-transform:uppercase;color:#c6c6c2}
.gbb .p{font-family:var(--mono);font-size:clamp(15px,1.4vw,18px);font-weight:500;color:#fff;font-variant-numeric:lining-nums tabular-nums}
.gbb .mo{font-size:11.5px;color:#a8a8a4}
.lines-wrap{margin-top:10px;max-height:190px;overflow:auto;border:1px solid var(--hud-line);border-radius:10px}
.lines{width:100%;border-collapse:collapse;font-size:12.5px}
.lines td{padding:6px 10px;border-bottom:1px solid var(--hud-line);color:#dededb;vertical-align:top}
.lines td:last-child{text-align:right;font-family:var(--mono);color:#fff;white-space:nowrap;font-variant-numeric:lining-nums tabular-nums}
.lines tr:last-child td{border-bottom:0}
.totals{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}
.tot-nums{display:grid;gap:2px;font-family:var(--mono);font-size:12px;color:#c6c6c2;font-variant-numeric:lining-nums tabular-nums}
.tot-nums b{font-size:clamp(18px,1.8vw,24px);color:#fff;font-weight:500}
.mg{display:flex;align-items:center;gap:10px;font-size:12px;color:#c6c6c2;max-width:150px}
.ring.sm{width:62px;flex:none}
.ring.sm b{font-family:var(--mono);font-size:14px}
.hud-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.hud-actions .ghost{font-size:12.5px;min-height:36px;padding:6px 12px}
.hud-toast{margin-top:8px;font-size:12.5px;color:#fff;padding:8px 10px;border-radius:8px;background:rgba(147,194,162,.12);border:1px solid rgba(147,194,162,.35)}

/* ---------- Receptionist ---------- */
.recep{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(20px,3.5vw,48px);margin-top:clamp(16px,2.4vw,28px);align-items:start}
.cmp.vs td,.cmp.vs th{font-size:14px}
.choose{margin-top:12px;font-size:15px;color:#fff;line-height:1.5;max-width:640px}
.inbox{border:1px solid #2c2c2c;border-radius:22px;background:#0d0d0e;padding:14px;display:grid;gap:8px}
.inbox-h{font-family:var(--mono);font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:#a8a8a4;padding:2px 4px 4px}
.note{position:relative;display:grid;gap:3px;padding:10px 12px 10px 14px;border-radius:14px;background:#18181a;border:1px solid #262628}
.note::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:2px}
.note.p1::before{background:var(--miss)} .note.p2::before{background:var(--warn)} .note.p3::before{background:var(--ok)} .note.p4::before{background:#555}
.note .pt{font-size:10.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase}
.note.p1 .pt{color:var(--miss)} .note.p2 .pt{color:var(--warn)} .note.p3 .pt{color:var(--ok)} .note.p4 .pt{color:#9a9a95}
.note p{font-size:13.5px;color:#ececea;line-height:1.4}
.note time{position:absolute;right:12px;top:10px;font-family:var(--mono);font-size:10.5px;color:#8a8a85}

/* ---------- Stack + why now ---------- */
.stack-wrap{margin-top:clamp(16px,2.4vw,28px)}
.cmp.stack tbody th{color:#fff;font-weight:600;max-width:320px}
.cmp.stack td:last-child{color:#dededb}
.cmp.stack tbody th{max-width:none;width:44%}
.cmp.stack td:nth-child(2){width:30%}
.cmp.stack .pkg{display:block;font-size:10.5px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;color:#bdbdb8;margin-bottom:3px}
.cmp.stack .inc{display:block;font-weight:400;color:#d4d4d0;font-size:13px;margin-top:2px}
@media (max-width: 640px){
  .cmp.stack,.cmp.vs{min-width:0}
  .cmp.stack thead,.cmp.vs thead{display:none}
  .cmp.stack tr,.cmp.vs tr{display:block;padding:12px 14px;border-bottom:1px solid var(--line-2)}
  .cmp.stack tbody tr:last-child,.cmp.vs tbody tr:last-child{border-bottom:0}
  .cmp.stack tbody th,.cmp.stack tbody td,.cmp.vs tbody th,.cmp.vs tbody td{display:block;width:auto!important;max-width:none;padding:3px 0;border:0;background:none}
  .cmp.vs tbody th{font-weight:700;color:#fff}
  .rank .cmp{min-width:0;font-size:13px}
  .rank .cmp th,.rank .cmp td{padding:8px 9px}
  .rank .cmp thead th{font-size:9.5px;letter-spacing:.6px}
  .cmp.stack td::before,.cmp.vs td::before{display:block;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#a9a9a4;margin-top:4px}
  .cmp.stack td:nth-child(2)::before{content:"What it fixes"}
  .cmp.stack td:nth-child(3)::before{content:"Typically elsewhere"}
  .cmp.vs td:nth-child(2)::before{content:"Full-time receptionist"}
  .cmp.vs td:nth-child(3)::before{content:"AI front desk";color:#fff}
}
.why{display:grid;grid-template-columns:auto repeat(3,minmax(0,1fr));gap:0;margin-top:clamp(28px,4vw,48px);border-top:1px solid var(--line)}
.why > div{padding:16px 20px 4px 0}
.why > div + div{padding-left:20px;border-left:1px solid var(--line-2)}
.why-h{font-family:var(--display);font-style:italic;font-size:20px;color:#fff;padding-right:28px !important}
.why b{display:block;font-size:15px;color:#fff;font-weight:600}
.why span{display:block;margin-top:4px;font-size:14px;color:#d2d2ce;line-height:1.45}

@media (max-width: 980px){
  .dream,.rank,.offer,.launch,.recep{grid-template-columns:minmax(0,1fr)}
  .scores{grid-template-columns:repeat(2,minmax(0,1fr))}
  .aeo,.pillars{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hud-grid{grid-template-columns:1fr}
  .hud-col + .hud-col{border-left:0;border-top:1px solid var(--hud-line)}
  .why{grid-template-columns:1fr}
  .why > div,.why > div + div{padding-left:0;border-left:0}
  .hours-ev{grid-template-columns:1fr}
  .hours-ev > div,.hours-ev > div + div{padding-left:0;border-left:0}
}
@media (max-width: 640px){
  .outcomes,.gb,.aeo,.pillars,.ve{grid-template-columns:1fr}
  .outcomes div:nth-child(even){padding-left:0;border-left:0}
  .tl-row,.tl-axis{grid-template-columns:1fr;gap:6px}
  .tl-axis > span{display:none}
  .gbb{grid-template-columns:1fr}
  .eq{grid-template-columns:1fr}
}
@media (prefers-reduced-motion: reduce){ .hud.busy::after,.hud-bar .live i,.steps li.run::before{animation:none} .ring .fg{transition:none} }

@media (min-width: 900px) and (max-height: 820px){
  .pillars > div{padding:12px 14px;gap:6px} .pillars p{font-size:13.5px} .pk{font-size:28px}
  .fixes .fix{padding-block:7px}
  .channels li{padding:7px 0} .channels span{font-size:13px}
  .ad-img{aspect-ratio:2.6/1} .ad-mock p{font-size:12.5px} .ad-mock{gap:8px;padding:12px}
  .lines-wrap{max-height:118px} #est-text{min-height:60px} .steps,.hud-note{display:none}
  #est-scope > div{padding:5px 0} #est-scope dd{font-size:12.5px}
  .hud-col{padding:12px 14px}
  .hud{margin-top:8px} .hud-bar{padding:8px 14px} .gbb button{padding:8px 10px} .lines td{padding:4px 10px} .totals,.hud-actions{margin-top:8px}
  #s-est .kicker,#s-launch .kicker{margin-bottom:14px}
  .channels li{padding:6px 0} .mocks{gap:8px} .sms-mock .msg{font-size:13px;padding:7px 10px}
}
.cursive{display:block;font-family:var(--script);font-weight:400;font-size:30px;line-height:1.05;color:#fff;margin:2px 0 1px;letter-spacing:0;text-transform:none}
.cursive.lg{font-size:clamp(40px,4.4vw,58px)}
.sig-co2{white-space:nowrap;right:6% !important}
.sig-co2 i{font-style:normal;color:#fff;margin:0 .35em}
.after{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:clamp(24px,3.5vw,40px);border-top:1px solid var(--line);max-width:960px}
.after > div{padding:16px 22px 6px 0}
.after > div + div{padding-left:22px;border-left:1px solid var(--line-2)}
.after b{display:block;font-size:15px;color:#fff;font-weight:600}
.after span{display:block;margin-top:5px;font-size:15px;color:#e2e2df;line-height:1.5}
.signoff{display:flex;flex-wrap:wrap;gap:18px 64px;margin-top:clamp(18px,2.6vw,30px)}
.signoff small{display:block;margin-top:4px;font-size:12px;letter-spacing:1.4px;text-transform:uppercase;color:#b8b8b4}
@media (max-width: 640px){ .after{grid-template-columns:1fr} .after > div + div{padding-left:0;border-left:0} .sig-co2{position:static !important;display:block;text-align:center;margin-top:-4px;font-size:10px !important} }
#s-launch .ad-img{aspect-ratio:2.6/1}
#s-launch .channels li{padding:8px 0}
@media (min-width: 900px) and (max-height: 820px){
  .screen{height:min(470px,60vh);min-height:360px}
  .live{margin-top:16px;padding:16px} .demo-copy .stat{margin-top:16px;padding-block:12px}
  .final .say{font-size:clamp(26px,3.3vw,42px)} .after{margin-top:18px} .after > div{padding-top:12px} .signoff{margin-top:12px} .cursive.lg{font-size:40px}
  #s-launch .sub{margin-top:6px}
}
/* ---------- Responsive ---------- */
@media (max-width: 980px){
  .working,.gl,.demo,.two,.numbers,.g{grid-template-columns:1fr}
  .checks{grid-template-columns:repeat(2,minmax(0,1fr))}
  .speed{grid-template-columns:repeat(2,minmax(0,1fr))}
  .speed > div:nth-child(3){padding-left:0;border-left:0}
  .speed > div:nth-child(n+3){border-top:1px solid var(--line-2)}
  .sys{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sys > div:nth-child(3){padding-left:0;border-left:0}
  .sys > div:nth-child(n+3){border-top:1px solid var(--line-2)}
  .fix{grid-template-columns:1fr;gap:4px}
  .fix .arrow{display:none}
  .phone{order:2}
  .dots{display:none}
}
@media (max-width: 640px){
  body{font-size:15.5px}
  .where .c{display:none}
  .checks,.speed,.sys,.market{grid-template-columns:1fr}
  .speed > div,.sys > div,.market > div{padding-left:0 !important;border-left:0 !important}
  .speed > div + div,.sys > div + div,.market > div + div{border-top:1px solid var(--line-2)}
  .fields.cols{grid-template-columns:1fr}
  .brow{grid-template-columns:1fr;gap:2px}
  .bench > div{grid-template-columns:1fr}
  .bench .src{grid-column:1}
  .slide{padding-bottom:48px}
  .f label{flex-wrap:wrap}
}
@media (prefers-reduced-motion: reduce){ .cue i::after,.typing i{animation:none} .msg{transition:none} }
/* ==================== v12 redesign: readability, lighthouse gold, phone-first ==================== */
:root{
  --gold:#f2c46d; --gold-hi:#ffdf9e; --gold-deep:#d8a04a;
  --gold-grad:linear-gradient(180deg,#ffe9b8 0%,#f2c46d 55%,#d8a04a 100%);
  --gold-soft:rgba(242,196,109,.12); --gold-line:rgba(242,196,109,.42);
  --platinum:var(--gold-grad);
  --text:#f1f1ef; --text-2:#dcdcd8; --text-3:#b8b8b3; --label:#e2e2de;
  --silver:#ececea; --smoke:#dcdcd8; --ash:#b8b8b3;
  --line:#303030; --line-2:#262626;
  --panel:rgba(17,17,18,.93); --panel-line:rgba(255,255,255,.10); --r:18px;
  --panel-shadow:0 18px 44px rgba(0,0,0,.42);
  --ok:#86dba2; --ok-bg:rgba(134,219,162,.14);
  --warn:#ffab5c; --warn-bg:rgba(255,171,92,.14);
  --miss:#ff8479; --miss-bg:rgba(255,132,121,.14);
  --body:"Inter","Helvetica Neue","Segoe UI",system-ui,-apple-system,sans-serif;
  --label-font:"Raleway","Inter","Segoe UI",system-ui,sans-serif;
}
body{font-family:var(--body);font-size:17px;line-height:1.6;letter-spacing:0;color:var(--text);font-variant-numeric:lining-nums}
@media (min-width:900px){ body{font-size:18px} }
h1,h2,h3,h4{font-weight:400}
b,strong{font-weight:600}

/* ---- Type roles ---- */
.kicker{font-family:var(--label-font);font-size:12.5px;font-weight:700;letter-spacing:2px;color:var(--label);gap:14px;margin-bottom:18px}
.kicker::before{width:38px;height:2px;border-radius:1px;background:linear-gradient(90deg,var(--gold),rgba(242,196,109,.2))}
.kicker b{font-size:16px;font-weight:500;color:var(--gold-hi);letter-spacing:.5px}
.title{font-weight:400;letter-spacing:-.3px;line-height:1.06;color:#fff}
.title.t2{font-weight:400}
.title em,.final .say em{font-style:italic;font-weight:400;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding-right:.07em}
.sub{margin-top:14px;font-size:17px;line-height:1.55;font-weight:400;color:var(--text-2);max-width:62ch}
.t2 + .sub{margin-top:12px}
@media (min-width:900px){ .sub{font-size:18px} }
.src{font-size:13px;color:var(--text-3);letter-spacing:0;line-height:1.5}
.plat{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.ask small,.facts3 small,.fix .what,.tally span,.chart h3,.cover .cover-meta b,.eyebrow-s,.pillars h3,.score h3,.gb h3,.ve b,
.cmp thead th,.cmp.stack .pkg,.oc-tag,.summary b,.cap small,.note .pt,.demo-tag,summary,.signoff small,.quotes figcaption,.msg.card b{
  font-family:var(--label-font);font-size:12.5px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--label)}
.chip{font-family:var(--label-font);font-size:12.5px;font-weight:700;letter-spacing:1.2px;padding:3px 9px}
.chip.ok{color:var(--ok);background:var(--ok-bg)} .chip.warn{color:var(--warn);background:var(--warn-bg)} .chip.miss{color:var(--miss);background:var(--miss-bg)}

/* ---- Panels ---- */
.chart,.card,.panel,.equation,.serp,.tbl-wrap,.src-card,.pillars > div,.score,.taxbox,.inbox,.ad-mock,
.speed,.hours-ev,.market,.outcomes,.why,.after,.facts3,.fixes,.channels,.checks,.gb > div{
  background:var(--panel);border:1px solid var(--panel-line);border-radius:var(--r);box-shadow:var(--panel-shadow)}

/* ---- Chrome ---- */
.bar{background:linear-gradient(180deg,rgba(8,8,9,.9),rgba(8,8,9,.55) 70%,rgba(8,8,9,0))}
.mark .c{font-family:var(--label-font);font-size:12.5px;font-weight:700;letter-spacing:2px;color:var(--text-3)}
.where{font-family:var(--label-font);font-size:12.5px;font-weight:700;letter-spacing:1.8px;color:var(--label)}
.where .n{font-size:16px;font-weight:500;color:#fff;font-variant-numeric:lining-nums tabular-nums}
.where .n span{color:var(--text-3)}
.rule{height:2px;background:rgba(255,255,255,.06)}
.rule i{background:linear-gradient(90deg,var(--gold-deep),var(--gold-hi))}
.dots a{border-color:rgba(255,255,255,.45)}
.dots a.on{background:var(--gold);border-color:var(--gold);box-shadow:0 0 12px rgba(242,196,109,.55)}
.dots a span{font-family:var(--label-font);font-size:12.5px;font-weight:700;letter-spacing:1.4px;color:var(--label)}

/* ---- Buttons ---- */
.btn{min-height:50px;padding:12px 24px;background:linear-gradient(180deg,#ffe6ad 0%,#f2c46d 55%,#dda752 100%);color:#15120c;border:1px solid rgba(255,227,166,.85);
  font-family:var(--body);font-weight:600;font-size:16px;letter-spacing:.1px;box-shadow:0 10px 28px rgba(242,196,109,.24),inset 0 1px 0 rgba(255,255,255,.55)}
.btn:hover{background:linear-gradient(180deg,#fff0cc 0%,#f7cf82 55%,#e3b060 100%)}
.est-go{background:linear-gradient(180deg,#ffe6ad 0%,#f2c46d 55%,#dda752 100%);color:#15120c;border-color:rgba(255,227,166,.85)}
.est-go:hover{background:linear-gradient(180deg,#fff0cc 0%,#f7cf82 55%,#e3b060 100%)}
.ghost{min-height:44px;padding:9px 18px;font-size:15px;font-weight:500;color:var(--silver);border-color:rgba(255,255,255,.22)}
.ghost:hover{border-color:var(--gold);color:#fff}
.levers{gap:8px}
.levers span{font-family:var(--label-font);font-size:12.5px;font-weight:700;letter-spacing:1.3px;color:var(--gold-hi);border-color:var(--gold-line);background:var(--gold-soft);padding:6px 12px}

/* ---- Cover ---- */
.pre{font-family:var(--label-font);font-size:12.5px;font-weight:700;color:rgba(255,255,255,.88)}
.sig-co2{font-family:var(--label-font);font-size:clamp(12.5px,1.15vw,15px);font-weight:700;color:rgba(255,255,255,.9)}
.sig-co2 i{color:var(--gold)}
.orn i{background:linear-gradient(90deg,transparent,rgba(242,196,109,.9))}
.orn i:last-child{background:linear-gradient(270deg,transparent,rgba(242,196,109,.9))}
.orn b{border-color:var(--gold)}
.cover h1{font-weight:400}
.cover .lede{font-weight:400;color:#ececea}
.cover .cover-meta div{font-size:15px;color:var(--text-2)}
.cover .cover-meta b{color:var(--gold);letter-spacing:2px;margin-bottom:4px}
.cover .cover-meta div + div{border-left-color:rgba(255,255,255,.14)}
.begin{font-family:var(--label-font);font-size:12.5px;font-weight:700;color:#fff}
.begin i::after{background:linear-gradient(180deg,transparent,var(--gold-hi))}
.cursive{color:#fff}

/* ---- Dream ---- */
.eyebrow-s{color:var(--gold)}
.outcomes{border-top:1px solid var(--panel-line)}
.outcomes div{padding:20px 22px;border-bottom:1px solid var(--panel-line)}
.outcomes div:nth-child(even){padding-left:22px;border-left:1px solid var(--panel-line)}
.outcomes div:nth-child(n+3){border-bottom:0}
.outcomes b{font-weight:500;font-size:clamp(22px,2.1vw,27px)}
.outcomes span{font-size:16px;color:var(--text-2);line-height:1.55}
.eq .v{font-weight:500}
.frac .top,.frac .bot{font-size:15px}
.frac .top{border-bottom-color:var(--gold)}
.eq-note{font-size:16px;color:var(--text-2)}

/* ---- Scorecard ---- */
.score{padding:18px 12px 16px}
.ring b{font-weight:500;font-size:clamp(28px,2.6vw,36px)}
.score h3{font-size:13px;color:#fff;letter-spacing:1.6px}
.score p{font-size:14.5px;color:var(--text-2)}
.gb > div{padding:18px 20px}
.gb h3{font-size:12.5px}
.gb li{font-size:15.5px;color:var(--text-2);line-height:1.5}
details.method ol{font-size:14px;color:var(--text-2);line-height:1.65}
details.method b{color:#fff}
summary{color:var(--gold);min-height:44px}
summary::after{color:var(--gold)}

/* ---- Working ---- */
.rating .big{font-weight:400}
.rating .stars{color:var(--gold)}
.rating p{font-size:15.5px;color:var(--text-2)}
.quotes figure{border-left:2px solid var(--gold-line)}
.quotes blockquote{font-weight:400}
.quotes figcaption{color:var(--text-3)}
.working-note{font-weight:400;color:var(--text-2)}
.trade figcaption b{font-weight:500}
.trade figcaption span{font-size:15.5px}

/* ---- SEO checks ---- */
.tally b{font-weight:500;font-size:48px;font-variant-numeric:lining-nums tabular-nums}
.checks{padding:4px 24px 8px}
.checks li{border-top-color:var(--panel-line)}
.checks li:nth-child(-n+3){border-top:0}
.checks h4{font-size:16px;font-weight:600}
.checks p{font-size:14.5px;color:var(--text-2)}
.checks p code{font-size:15px;font-weight:500;color:#fff}

/* ---- Rankings ---- */
.serp .q{font-size:15px}
.serp ol{font-size:15px;color:var(--text-2)}
.serp ol li::marker{color:var(--gold);font-weight:600}
.serp .you{font-size:15px}
.cmp{font-size:14.5px}
.cmp thead th{letter-spacing:1.1px}
.cmp tbody th{color:var(--text)}
.cmp .me{background:rgba(242,196,109,.06)}
.cmp thead th.me{color:var(--gold)}
.cmp th,.cmp td{border-bottom-color:rgba(255,255,255,.08)}

/* ---- AEO ---- */
.src-card{padding:16px 18px}
.src-card h4{font-size:16px;font-weight:600}
.src-card p{font-size:15px;color:var(--text-2)}
.define b{font-weight:500;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.define p{font-size:16px;color:var(--text-2)}

/* ---- Google ---- */
.chart h3{margin-bottom:14px}
.brow .who{font-size:15px;color:var(--text-2)}
.brow.me .who{color:#fff}
.bval{font-weight:500}
.facts3 div{padding:16px 22px;border-top:1px solid var(--panel-line)}
.facts3 div:first-child{border-top:0}
.facts3 div:last-child{border-bottom:0}
.facts3 b{font-weight:500}
.facts3 span{font-size:15.5px;color:var(--text-2)}
.ask q{font-weight:400;color:#fff}

/* ---- Speed / hours / tax stat panels ---- */
.speed{border-bottom:1px solid var(--panel-line)}
.speed > div{padding:26px 24px 22px}
.speed > div + div{padding-left:24px;border-left:1px solid var(--panel-line)}
.speed .v{font-weight:500;font-size:clamp(60px,6.8vw,100px);font-variant-numeric:lining-nums tabular-nums}
.speed .l,.market .l,.hours-ev .l{font-size:16px;color:var(--text);line-height:1.5}
.hours-ev > div{padding:22px 24px 18px}
.hours-ev > div + div{padding-left:24px;border-left:1px solid var(--panel-line)}
.hours-ev .v{font-weight:500;font-size:clamp(30px,3.2vw,44px)}
.market > div{padding:22px 24px 18px}
.market > div + div{padding-left:24px;border-left:1px solid var(--panel-line)}
.tax .v{font-weight:500;font-size:clamp(36px,3.8vw,54px)}
.taxbox{padding:18px 22px}
.taxbox p{font-size:16.5px;color:var(--text)}
.taxbox p b{color:var(--gold-hi)}
.tl-row .who{font-size:15.5px}
.tl-bar{background:#262626}
.tl-bar i.open{background:linear-gradient(90deg,#d4d4d0 0%,#d4d4d0 66%,rgba(212,212,208,0) 100%)}
.tl-bar i.all{background:linear-gradient(90deg,var(--gold-deep),var(--gold) 40%,var(--gold-hi));box-shadow:0 0 18px rgba(242,196,109,.35)}
.tl-axis > div{font-size:13px;color:var(--text-3)}

/* ---- Website pillars + fixes ---- */
.pillars > div{padding:18px 20px}
.pk{font-weight:500;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;width:max-content}
.pillars h3{color:#fff}
.pillars p{font-size:15.5px;color:var(--text-2)}
.pillars .res{color:#fff;font-weight:600}
.fixes{padding:2px 22px}
.fix{border-bottom-color:var(--panel-line)}
.fix:last-child{border-bottom:0}
.fix .what{color:var(--text-3)}
.fix .now{font-size:15px;color:var(--text-3);text-decoration-color:rgba(255,132,121,.75)}
.fix .arrow{color:var(--gold)}
.fix .next{font-weight:500;font-size:clamp(17px,1.6vw,19px)}

/* ---- Offer ---- */
.lead-in{font-size:17px;color:var(--text)}
.pull{border-left-color:var(--gold);font-weight:400}
.pull cite{font-size:13px;color:var(--text-3)}
.ve span{font-size:15.5px}
.offer-card{border-color:rgba(242,196,109,.5);background:radial-gradient(120% 90% at 100% 0%,rgba(242,196,109,.10),transparent 60%),rgba(17,17,18,.95)}
.oc-tag{color:#15120c;background:var(--gold-grad);letter-spacing:1.8px}
.offer-card h3{font-weight:500}
.oc-sub{font-size:16px;color:var(--gold-hi)}
.offer-card li{font-size:15.5px;color:var(--text)}
.offer-card li::before{border-color:var(--gold)}
.oc-promise{font-size:16px;border-color:rgba(242,196,109,.6);background:var(--gold-soft)}

/* ---- Launch ---- */
.channels{padding:2px 20px}
.channels li{border-bottom-color:var(--panel-line)}
.channels li:last-child{border-bottom:0}
.channels li::before{color:var(--gold);font-weight:500;font-size:20px}
.channels b{font-size:16px}
.channels span{font-size:15px;color:var(--text-2)}
.ad-top b{font-size:14.5px}
.ad-top span,.ad-cta span,.ad-img small{font-size:12.5px;color:var(--text-3)}
.ad-img small{color:#ececea}
.ad-mock p{font-size:14.5px;color:var(--text)}
.ad-img span{font-weight:500}
.ad-cta b{font-size:13.5px;background:var(--gold);color:#15120c}

/* ---- Estimator HUD ---- */
.hud{border-color:rgba(255,255,255,.14)}
.hud-bar .live{margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;font-size:12.5px}
.hud-bar{font-size:12.5px;color:var(--text-3)}
.hud-l{font-size:12.5px;letter-spacing:1px;color:var(--text-3)}
#est-text{font-size:15.5px;color:#fff}
#est-text:focus{border-color:var(--gold)}
.presets button{font-size:13.5px;color:var(--text);min-height:36px;padding:6px 12px}
.presets button:hover{border-color:var(--gold)}
.steps{font-size:12.5px;color:#8f8f8a}
.steps li.ok{color:var(--text-2)}
.hud-note{font-size:13px;color:var(--text-3)}
#est-scope dt{font-size:12.5px;letter-spacing:.4px;color:var(--text-3)}
#est-scope dd{font-size:15px}
.gbb button[aria-checked="true"]{border-color:var(--gold);background:rgba(242,196,109,.10);box-shadow:0 0 0 1px var(--gold) inset}
.gbb button[aria-checked="true"] .t{color:var(--gold-hi)}
.gbb .t{font-size:12.5px;color:var(--label)}
.gbb .mo{font-size:12.5px;color:var(--text-3)}
.lines{font-size:14px}
.lines td{color:var(--text)}
.tot-nums{font-size:13px;color:var(--text-2)}
.tot-nums b{font-size:clamp(22px,2vw,28px);background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;width:max-content}
.mg{font-size:13px;color:var(--text-2);max-width:170px}
.hud-actions .ghost{font-size:14px;min-height:40px}
.hud-toast{font-size:14px}

/* ---- Demo ---- */
.screen-top b{font-size:14.5px}
.screen-top span{font-size:12.5px;color:var(--text-3)}
.msg{font-size:15px;line-height:1.42}
.msg.sys{font-size:12.5px;color:var(--text-3);letter-spacing:.2px}
.msg.card{font-size:14px;color:var(--text)}
.msg.card b{color:var(--gold)}
.demo-copy .stat{border-color:var(--line)}
.demo-copy .stat b{font-weight:500;white-space:nowrap}
.demo-copy .stat span{font-size:16px;color:var(--text-2)}
.live{border-color:rgba(242,196,109,.32);background:radial-gradient(120% 140% at 0% 0%,rgba(242,196,109,.12),transparent 60%),var(--panel);box-shadow:var(--panel-shadow)}
.live h3{font-size:26px;font-weight:500}
.live p{font-size:16px;color:var(--text-2)}

/* ---- Call overlay (no backdrop blur; opaque instead) ---- */
.call{background:rgba(5,5,6,.94);-webkit-backdrop-filter:none;backdrop-filter:none}
.call-panel{gap:16px}
.call-name{font-weight:500;font-size:27px}
.call-status{font-size:14px;color:var(--text-2)}
.demo-tag{color:var(--gold-hi);border-color:var(--gold-line);font-size:12.5px;letter-spacing:1.3px}
.wave i{background:var(--gold)}
.captions{min-height:150px}
.cap{font-size:18px;line-height:1.45;color:#fff}
.cap.prev{font-size:16px;opacity:.5}
.cap small{margin-bottom:4px;color:var(--text-3)}
.cap.riley small{color:var(--gold)}
.summary{font-size:15px;color:var(--text);border-color:rgba(242,196,109,.35)}
.summary b{color:var(--gold)}
.cico{color:var(--text-2)}

/* ---- Receptionist ---- */
.choose{font-size:16px}
.inbox{padding:14px}
.inbox-h{font-size:12.5px;color:var(--text-3)}
.note{background:#1a1a1c}
.note .pt{font-size:12.5px;letter-spacing:1.2px}
.note p{font-size:15px;color:var(--text)}
.note time{font-size:12.5px;color:var(--text-3)}

/* ---- Stack ---- */
.cmp.stack{font-size:15px}
.cmp.stack .pkg{color:var(--gold)}
.cmp.stack .inc{font-size:14px;color:var(--text-2)}
.cmp.stack td:last-child{color:var(--text-2)}

/* ---- Guarantee / why ---- */
.g .x{font-weight:500}
.g h2{font-weight:500}
.g p{font-weight:400;color:var(--text-2)}
.why > div{padding:18px 22px 16px}
.why > div + div{padding-left:22px;border-left:1px solid var(--panel-line)}
.why-h{font-weight:500;font-size:24px;color:var(--gold-hi)}
.why b{font-size:16px}
.why span{font-size:15px;color:var(--text-2)}

/* ---- Final ---- */
.final .say{font-weight:400}
.after{border-top:1px solid var(--panel-line)}
.after > div{padding:18px 22px 16px}
.after > div + div{padding-left:22px;border-left:1px solid var(--panel-line)}
.after b{font-size:16px}
.after span{font-size:16px;color:var(--text-2)}
.signoff small{color:var(--text-3);letter-spacing:1.4px}
details ol{font-size:13.5px;color:var(--text-3)}
.foot{font-size:13px;color:var(--text-3)}

/* ---- Desktop: keep every slide inside one viewport on shorter laptop screens ---- */
@media (min-width:981px){ .hud-grid{grid-template-columns:minmax(0,.9fr) minmax(0,.92fr) minmax(0,1.18fr)} }
@media (min-width:900px) and (max-height:920px){
  #est-scope > div{padding:5px 0}
  #est-scope dd{font-size:14.5px;line-height:1.3}
  .lines-wrap{max-height:150px}
}
@media (min-width:900px) and (max-height:820px){
  .sub{font-size:17px}
  .t2 + .sub{margin-top:8px}
  .pillars > div{padding:12px 16px;gap:5px}
  .pillars p{font-size:14.5px;line-height:1.45}
  .pk{font-size:30px}
  .fixes .fix{padding-block:6px}
  .fix .next{font-size:17px}
  .lead-in{font-size:16px;margin-bottom:8px}
  .pull{margin-top:10px;padding:8px 16px;font-size:18px}
  .ve{margin-top:12px;gap:8px 18px}
  .ve span{font-size:15px}
  .offer-card{padding:16px 22px}
  .offer-card h3{margin-top:8px}
  .offer-card ul{gap:5px;margin-top:10px}
  .offer-card li{font-size:14.5px}
  .oc-promise{margin-top:12px;padding:9px 14px;font-size:15px}
  .channels span{font-size:14px}
  #est-scope > div{padding:3px 0}
  #est-scope dd{font-size:14px}
  .presets{gap:5px}
  .presets button{min-height:32px;padding:4px 10px;font-size:13px}
  .lines-wrap{max-height:118px}
  .lines{font-size:13.5px}
  .tot-nums b{font-size:22px}
  .hud-actions .ghost{min-height:36px}
  .score{padding:14px 10px 12px}
  .gb > div{padding:14px 18px}
  .gb li{font-size:15px}
  .screen{height:min(470px,60vh)}
}

/* ---- Swipe hint (phones only) ---- */
.swipe{display:none}

/* ---- Slide reveal (JS adds html.rv; without JS everything is simply visible) ---- */
@media (prefers-reduced-motion: no-preference){
  html.rv .slide:not(.cover) .inner > *{transition:opacity .5s cubic-bezier(.2,.7,.2,1),transform .5s cubic-bezier(.2,.7,.2,1)}
  html.rv .slide:not(.cover):not(.shown) .inner > *{opacity:0;transform:translateY(14px);transition:none}
  html.rv .slide.shown .inner > *:nth-child(2){transition-delay:.06s}
  html.rv .slide.shown .inner > *:nth-child(3){transition-delay:.12s}
  html.rv .slide.shown .inner > *:nth-child(4){transition-delay:.18s}
  html.rv .slide.shown .inner > *:nth-child(5){transition-delay:.24s}
  html.rv .slide.shown .inner > *:nth-child(6){transition-delay:.30s}
  html.rv .slide.shown .inner > *:nth-child(n+7){transition-delay:.36s}
}

/* ---- Tablet (701–980) tidy-ups for the new panels ---- */
@media (max-width:980px){
  .speed > div,.speed > div + div{padding:22px}
  .speed > div:nth-child(odd){border-left:0}
  .speed > div:nth-child(n+3){border-top:1px solid var(--panel-line)}
  .hours-ev > div,.hours-ev > div + div{padding:18px 22px;border-left:0}
  .hours-ev > div + div{border-top:1px solid var(--panel-line)}
  .why > div,.why > div + div{padding:16px 22px;border-left:0}
  .why > div + div{border-top:1px solid var(--panel-line)}
  .checks li:nth-child(3){border-top:1px solid var(--panel-line)}
}

/* ================= Phones ================= */
@media (max-width:700px){
  :root{--gutter:20px;--top:calc(56px + env(safe-area-inset-top,0px))}
  html{scroll-snap-type:y proximity}
  .slide{scroll-snap-stop:normal;padding:calc(var(--top) + 26px) max(var(--gutter),env(safe-area-inset-right,0px)) calc(52px + env(safe-area-inset-bottom,0px)) max(var(--gutter),env(safe-area-inset-left,0px))}
  body{font-size:17px}
  .dots{display:none}
  .bar{background:linear-gradient(180deg,rgba(8,8,9,.96),rgba(8,8,9,.9) 75%,rgba(8,8,9,.0))}
  .bar-in{height:56px;padding-inline:max(var(--gutter),env(safe-area-inset-left,0px))}
  .mark .s{font-size:28px}
  .mark .c,.where .c{display:none}
  .where .n{font-size:17px}

  .kicker{display:block;margin-bottom:14px;line-height:1.7}
  .kicker::before{display:inline-block;vertical-align:middle;width:26px;margin:-2px 12px 0 0}
  .kicker b{margin-left:4px}
  .title{font-size:clamp(31px,9vw,38px);line-height:1.08;max-width:none}
  .title.t2{font-size:clamp(30px,8.2vw,36px)}
  .sub{font-size:17px;margin-top:12px}
  .head-row{gap:14px}
  .levers{padding-bottom:0}

  /* Carousels */
  .car{display:grid !important;grid-auto-flow:column;grid-template-columns:none !important;grid-auto-columns:84%;gap:12px;
    overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;
    margin:0 calc(-1 * var(--gutter)) !important;padding:2px var(--gutter) 16px !important;scroll-padding-inline:var(--gutter);
    border:0 !important;background:none !important;box-shadow:none !important;border-radius:0 !important}
  .car::-webkit-scrollbar{display:none}
  .car > *{scroll-snap-align:start;min-width:0;margin:0 !important;background:var(--panel) !important;border:1px solid var(--panel-line) !important;border-radius:var(--r) !important;padding:20px !important;box-shadow:0 12px 30px rgba(0,0,0,.35)}
  .car.r2{grid-template-rows:repeat(2,auto)}
  .car.r4{grid-template-rows:repeat(4,auto);row-gap:10px}
  .swipe{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:18px 0 10px;font-family:var(--label-font);font-size:12.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold)}
  .swipe i{position:relative;display:block;width:26px;height:1.5px;background:currentColor}
  .swipe i::after{content:"";position:absolute;right:0;top:50%;width:7px;height:7px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:translateY(-50%) rotate(45deg)}
  .slide.in .swipe i{animation:nudge 1.8s ease-in-out infinite}
  @keyframes nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}

  /* Cover */
  .cover{padding-top:calc(env(safe-area-inset-top,0px) + 34px)}
  .cover .inner{gap:14px}
  .pre{letter-spacing:.42em;margin-right:-.42em}
  .sig-box{width:106%;max-width:none;margin:0 -3% -12px}
  .sig-co2{position:static !important;display:block;text-align:center;margin-top:-6px;font-size:12.5px !important;letter-spacing:.42em;margin-right:-.42em}
  .orn{width:72%}
  .cover h1{font-size:22px;letter-spacing:.34em;margin-right:-.34em}
  .cover .lede{font-size:20px;max-width:24ch}
  .cover .cover-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px;width:100%;padding-top:10px}
  .cover .cover-meta div{padding:4px 10px;font-size:14.5px;line-height:1.4}
  .cover .cover-meta div:nth-child(3){border-left:0}
  .cover .cover-meta .cursive{font-size:32px}
  .begin{margin-top:6px}
  .begin i{height:34px}

  /* Dream */
  .dream{gap:0;margin-top:6px}
  .outcomes b{font-size:24px}
  .outcomes span{margin-top:8px}
  .equation{margin-top:14px;padding:20px}
  .eq{grid-template-columns:1fr;gap:10px}
  .frac .top,.frac .bot{font-size:15.5px}

  /* Scores */
  .scores{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}
  .score{padding:16px 10px 14px}
  .ring{width:92px}
  .gb{grid-template-columns:1fr;gap:12px;margin-top:12px}
  .gb li{font-size:16px}

  /* Working */
  .working{gap:26px;margin-top:22px}
  .rating{display:grid;grid-template-columns:auto 1fr;column-gap:18px;align-items:center}
  .rating .big{font-size:96px;grid-row:span 2}
  .rating .stars{margin-top:0;font-size:20px;letter-spacing:4px}
  .rating p{margin-top:4px}
  .quotes{gap:20px}
  .quotes blockquote{font-size:22px}
  .working-note{font-size:17px;margin-top:26px}

  /* Trades */
  .trades.car{grid-auto-columns:86%}
  .trades.car > .trade{padding:0 !important;aspect-ratio:4/3;background:#111 !important}

  /* SEO */
  .seo-top{gap:18px}
  .tally{gap:20px}
  .tally b{font-size:44px}
  .checks.car{margin-top:0 !important}
  .checks.car > li{padding:14px 16px !important}
  .checks p{font-size:15px}

  /* Rankings */
  .rank{gap:16px;margin-top:18px}
  .serp{padding:16px}
  .serp ol{gap:3px;font-size:15.5px}
  .rank .tbl-wrap{overflow-x:auto}
  .rank .cmp{min-width:0;font-size:14px}
  .rank .cmp th,.rank .cmp td{padding:9px 8px}
  .rank .cmp thead th{font-size:12.5px;letter-spacing:.3px;text-transform:none;font-family:var(--body);font-weight:600;line-height:1.25}
  .rank .cmp tbody th{font-size:14px;width:36%}
  .rank .cmp td{width:21%}

  /* AEO */
  .aeo.car{grid-auto-columns:84%}
  .src-card h4{font-size:16px}
  .define{grid-template-columns:1fr;gap:6px;margin-top:10px}
  .define b{font-size:34px}

  /* Google */
  .gl{gap:16px;margin-top:20px}
  .chart{padding:18px}
  .brow{grid-template-columns:1fr;gap:2px;padding-block:9px}
  .facts3 div{padding:14px 18px}
  .facts3 b{font-size:26px}

  /* Speed / hours / tax */
  .speed.car > div{display:flex;flex-direction:column;gap:12px}
  .speed .v{font-size:76px}
  .speed .l{font-size:16.5px}
  .hours-ev .v{font-size:34px}
  .hours-ev .l{font-size:16.5px}
  .tax .v{font-size:46px}
  .market .l{font-size:16px}
  .taxbox{padding:18px}
  .taxbox p{font-size:16.5px}
  .tl{margin-top:22px}
  .tl-note{flex-direction:column;align-items:flex-start;gap:2px}
  .tl-note .nine{text-align:left}

  /* Website */
  .pillars.car > div{display:grid;align-content:start;gap:10px}
  .pk{font-size:38px}
  .pillars p{font-size:16px}
  .fixes{margin-top:14px;padding:2px 18px}
  .fix{padding-block:14px;gap:3px}
  .fix .next{font-size:18px}

  /* Offer */
  .offer{gap:22px;margin-top:18px}
  .lead-in{font-size:17px}
  .pull{font-size:20px;padding:12px 16px}
  .ve{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
  .offer-card{padding:22px 20px}
  .offer-card li{font-size:16px}

  /* Launch */
  .launch{gap:18px;margin-top:4px}
  .channels.car{margin-bottom:0 !important}
  .channels.car > li{grid-template-columns:1fr;gap:6px}
  .channels.car > li::before{grid-row:auto;font-size:30px;line-height:1}
  .channels b{font-size:17px}
  .channels span{font-size:16px}
  .ad-mock,.sms-mock{max-width:none}

  /* Estimator: compact */
  .hud{margin-top:16px;border-radius:16px}
  .hud-bar{flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;scrollbar-width:none;gap:16px;padding:10px 14px;-webkit-overflow-scrolling:touch}
  .hud-bar::-webkit-scrollbar{display:none}
  .hud-bar{-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent)}
  .hud-bar > span{flex:none}
  .hud-col{padding:14px}
  #est-text{font-size:16px;min-height:88px;resize:none}
  .presets{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:10px -14px 0;padding:0 14px 2px;gap:8px}
  .presets::-webkit-scrollbar{display:none}
  .presets button{flex:none;min-height:44px;font-size:14px;padding:8px 14px}
  .est-go{min-height:52px;margin-top:12px}
  .steps{--pp:1;position:relative;display:block;margin-top:14px;padding-top:12px}
  .steps::before,.steps::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;border-radius:2px;background:rgba(255,255,255,.12)}
  .steps::after{background:linear-gradient(90deg,var(--gold-deep),var(--gold-hi));transform-origin:0 50%;transform:scaleX(var(--pp));transition:transform .3s ease}
  .steps li{display:none;font-size:13px}
  .steps li.run{display:flex}
  .steps:not(:has(li.run)) li:last-child{display:flex}
  .hud-note{font-size:13px;margin-top:6px}
  #est-scope{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}
  #est-scope > div{padding:7px 0}
  #est-scope > div:first-child,#est-scope > div:last-child{grid-column:1 / -1}
  #est-scope > div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;column-gap:6px;row-gap:2px}
  #est-scope dt{display:contents;font-size:12.5px;letter-spacing:.2px}
  #est-scope dt em{grid-column:2;grid-row:1;font-family:var(--body);font-size:12.5px;text-transform:none;letter-spacing:0}
  #est-scope dd{grid-column:1 / -1}
  #est-scope dd{font-size:15px}
  .gbb{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .gbb button{padding:10px 9px;min-height:44px}
  .gbb .p{font-size:16px}
  .lines-wrap{max-height:180px;-webkit-overflow-scrolling:touch}
  .lines{font-size:14px}
  .lines td{padding:8px 10px}
  .totals{margin-top:14px}
  .tot-nums b{font-size:26px}
  .mg{max-width:150px}
  .ring.sm{width:58px}
  .hud-actions{gap:10px;margin-top:14px}
  .hud-actions .ghost{flex:1 1 0;justify-content:center;min-height:46px;font-size:14.5px}

  /* Demo */
  .demo{gap:28px}
  .phone{max-width:330px;border-radius:36px;padding:10px}
  .screen{height:440px;min-height:0;border-radius:28px}
  .demo-copy .stat{margin-top:20px}
  .demo-copy .stat b{font-size:64px}
  .live{margin-top:20px;padding:20px}
  .live h3{font-size:26px}
  .live .row .btn{flex:1 1 auto;justify-content:center;min-height:54px;font-size:17px}
  .demo-note .ghost{min-height:46px}

  /* Call overlay: full screen */
  .call{padding:0;background:#070708}
  .call-panel{max-width:none;width:100%;height:100%;max-height:none;border-radius:0;border:0;box-shadow:none;
    padding:calc(26px + env(safe-area-inset-top,0px)) 22px calc(18px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:14px;overflow-y:auto}
  .call-avatar{width:84px;height:84px;font-size:42px;flex:none}
  .captions{flex:1 1 auto;min-height:200px;align-content:end;gap:14px}
  .cap{font-size:20px;line-height:1.45}
  .cap.prev{font-size:18px}
  .cap small{font-size:12.5px}
  .call-actions{gap:34px;padding-block:6px}
  .cico{width:62px;height:62px;flex:none}
  .cend{width:78px;height:78px;flex:none}
  .call-foot .btn,.call-foot .ghost{min-height:54px;flex:1 1 40%;justify-content:center;font-size:17px}
  .summary{font-size:16px}

  /* Receptionist */
  .recep{gap:18px;margin-top:18px}
  .choose{font-size:16.5px}
  .note p{font-size:15.5px}

  /* Stacked tables become cards */
  .tbl-wrap:has(.cmp.stack),.tbl-wrap:has(.cmp.vs){background:none;border:0;box-shadow:none;border-radius:0;overflow:visible}
  .cmp.stack tr,.cmp.vs tr{margin-bottom:12px;padding:16px 18px;background:var(--panel);border:1px solid var(--panel-line);border-radius:16px;box-shadow:0 10px 28px rgba(0,0,0,.3)}
  .cmp.stack tbody tr:last-child,.cmp.vs tbody tr:last-child{border-bottom:1px solid var(--panel-line);margin-bottom:0}
  .cmp.stack tbody th,.cmp.vs tbody th{font-size:17px;padding-bottom:4px}
  .cmp.stack tbody td,.cmp.vs tbody td{font-size:15.5px;padding:6px 0 0}
  .cmp.stack td::before,.cmp.vs td::before{font-family:var(--label-font);font-size:12.5px;font-weight:700;letter-spacing:1.4px;color:var(--text-3);margin:6px 0 2px}
  .cmp.vs td:nth-child(3)::before{color:var(--gold)}
  .cmp.vs td.me{background:none;color:#fff}
  .cmp.stack .pkg{font-size:12.5px;margin-bottom:6px}
  .cmp.stack .inc{font-size:15px}
  .cmp.vs,.cmp.stack{display:block}
  .cmp.vs tbody,.cmp.stack tbody{display:grid;grid-auto-flow:column;grid-auto-columns:84%;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;
    margin:0 calc(-1 * var(--gutter));padding:2px var(--gutter) 16px;scroll-padding-inline:var(--gutter);scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .cmp.vs tbody::-webkit-scrollbar,.cmp.stack tbody::-webkit-scrollbar{display:none}
  .cmp.stack tr,.cmp.vs tr,.cmp.stack tbody tr:last-child,.cmp.vs tbody tr:last-child{scroll-snap-align:start;margin:0;border-bottom:1px solid var(--panel-line)}
  .stack-wrap{margin-top:0}
  .gb.car > div{padding:18px 20px !important}

  /* Guarantee */
  .g{gap:10px}
  .g .x{font-size:110px}
  .g h2{font-size:32px}
  .g p{font-size:17px}
  .why{margin-top:26px}
  .why > div,.why > div + div{padding:16px 18px}
  .why-h{padding-right:18px !important}

  /* Final */
  .final .say{font-size:30px;line-height:1.18}
  .after{grid-template-columns:1fr;margin-top:22px}
  .after > div,.after > div + div{padding:16px 18px;border-left:0}
  .after > div + div{border-top:1px solid var(--panel-line)}
  .signoff{gap:14px 40px}
  .cursive.lg{font-size:44px}
  .final .sig{font-size:190px;bottom:-2%}
}
@media (max-width:370px){
  .gbb .p{font-size:15px}
  .cover .cover-meta .cursive{font-size:29px}
  .title{font-size:30px}
  .title.t2{font-size:29px}
}
@media (prefers-reduced-motion: reduce){ .slide.in .swipe i{animation:none} .steps::after{transition:none} }
/* ==================== /v12 ==================== */
/* ==================== v13: smoother scrolling ==================== */
/* Fewer full-screen layers to blend on every frame */
.grain,.bgdim{display:none}
.bgwrap.past .fog,.bgwrap.past #bg{visibility:hidden}
.bgwrap.past #bgimg,.bgwrap.past .fog{animation-play-state:paused}
/* No hover repaints while a slide is gliding past the cursor */
body.paging main{pointer-events:none}
/* Touch: native momentum. Tablets align gently; phones scroll freely */
@media (pointer:coarse),(max-width:899px){ html{scroll-snap-type:y proximity} .slide{scroll-snap-stop:normal} }
@media (max-width:700px){ html{scroll-snap-type:none} .slide{scroll-snap-align:none} }
/* ==================== /v13 ==================== */
/* ==================== v14: SEO audit on one page ==================== */
.lab{font-family:var(--label-font);font-size:12.5px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
#s3 .seo-top{align-items:center}
#s3 .tally b{font-size:44px}
.seo1{margin-top:18px;gap:18px}
.seo1 .serp{padding:16px 18px}
.seo1 .serp .q{margin-bottom:10px;padding:8px 14px}
.seo1 .serp ol{gap:2px;font-size:14.5px;line-height:1.45}
.seo1 .serp .you{margin-top:10px;padding:8px 12px}
.seo1 .serp .src,.seo1-cmp .src,.seo1-src{margin-top:8px}
.seo1 .cmp th,.seo1 .cmp td{padding:7px 12px}
.seo1-lab{margin:18px 0 0}
@media (min-width:701px){
  .seo1 .serp ol{display:block;columns:2;column-gap:18px;padding-left:0;list-style-position:inside}
  .seo1 .serp ol li{break-inside:avoid;margin-bottom:3px;padding-left:1.35em;text-indent:-1.35em}
}
@media (min-width:981px){
  #s3 .checks{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:0;padding:2px 20px 4px}
  #s3 .checks li{padding-block:9px;border-top:1px solid var(--panel-line)}
  #s3 .checks li:nth-child(-n+4){border-top:0}
  #s3 .checks h4{font-size:15px}
  #s3 .checks p{font-size:13.5px;line-height:1.4}
}
@media (min-width:981px){
  .seo1{grid-template-columns:minmax(0,.66fr) minmax(0,1.34fr)}
  .seo1 .serp ol{column-gap:16px;font-size:14px}
  .seo1 .cmp thead th{font-size:11.5px;letter-spacing:.9px;line-height:1.3}
  .seo1 .cmp thead th:first-child{width:34%}
  #s3 .checks .chip{padding:2px 8px}
}
@media (min-width:900px) and (max-height:920px){
  #s3 .title.t2{font-size:clamp(30px,3.2vw,42px)}
  #s3 .kicker{margin-bottom:12px}
  #s3 .tally b{font-size:38px}
  .seo1{margin-top:10px}
  .seo1 .lab{margin-bottom:8px}
  .seo1 .serp{padding:14px 16px}
  .seo1 .serp ol{font-size:14px;line-height:1.38}
  .seo1 .cmp{font-size:14px}
  .seo1 .cmp th,.seo1 .cmp td{padding:4px 11px;line-height:1.35}
  .seo1 .cmp thead th{padding-block:8px 6px}
  #s3 .checks li{padding-block:7px}
  #s3 .checks p{font-size:13px;line-height:1.35}
  .seo1-lab{margin-top:10px}
  #s3 .checks{padding-block:0 2px}
}
@media (max-width:700px){ .seo1{margin-top:16px} .seo1-lab{margin-top:22px} }

/* ---- Main Nav ---- */
.main-nav { display: none; }
@media (min-width: 900px) {
  .main-nav { display: flex; gap: 24px; margin: 0 auto; align-items: center; }
  .main-nav a { font-family: var(--label-font); font-size: 12.5px; font-weight: 700; letter-spacing: 1.6px; text-transform: uppercase; color: var(--label); text-decoration: none; transition: color 0.2s; }
  .main-nav a:hover, .main-nav a.active { color: var(--gold); }
}
@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* ---- v16 compositions: typography + animated SVG ---- */
.d-grad{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.d-split{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:clamp(24px,4vw,60px);align-items:center}
.d-vis{display:flex;justify-content:center;align-items:center;min-width:0}
.d-vis svg{display:block;width:100%;height:auto;max-height:64vh;overflow:visible}
.d-copy{max-width:56ch}
.d-copy .sub{max-width:54ch;font-size:clamp(16px,1.5vw,18px);line-height:1.6}
.d-copy p{max-width:54ch}
.d-cta{margin-top:24px;display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.d-checks{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:11px;max-width:54ch}
.d-checks li{position:relative;padding-left:32px;font-size:clamp(15px,1.35vw,17px);line-height:1.5;color:var(--text)}
.d-checks li::before{content:"";position:absolute;left:0;top:.25em;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--gold);background:var(--gold-soft)}
.d-checks li::after{content:"";position:absolute;left:6px;top:.55em;width:8px;height:4.5px;border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}
.d-checks strong{color:#fff;font-weight:600}
.svt{font-family:var(--label-font);font-size:11px;font-weight:700;letter-spacing:1.6px;fill:#d6d6d2}
.svt2{font-family:var(--label-font);font-size:11.5px;font-weight:700;letter-spacing:1.2px;fill:#e6e6e2}

/* services list */
.d-svc{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:14px}
.d-svc li{display:flex;align-items:baseline;gap:16px}
.d-svc i{font-style:normal;font-family:var(--display);font-size:24px;min-width:34px;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.d-svc b{font-family:var(--display);font-weight:500;font-size:clamp(20px,2vw,25px);color:#fff}
.d-svc span{display:block;font-size:15.5px;color:var(--text-2);line-height:1.45;margin-top:1px}

/* residential: scene behind typography */
.d-res .d-scene{position:absolute;right:0;bottom:0;width:min(82vw,1050px);height:auto;z-index:0;pointer-events:none}
.d-res .inner{position:relative;z-index:1}
.d-res .d-copy{max-width:540px}

/* commercial: headline over a full-width skyline */
.d-com .title{max-width:22ch}
.d-sky{display:block;width:100%;height:auto;margin-top:clamp(16px,3vh,30px)}
.d-inline{list-style:none;margin:clamp(16px,3vh,28px) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px 0}
.d-inline li{padding:0 clamp(16px,2.6vw,36px);border-left:1px solid var(--gold-line);font-size:clamp(16px,1.6vw,19px);color:#fff}
.d-inline li:first-child{padding-left:0;border-left:0}
.d-inline small{display:block;font-size:14.5px;color:var(--text-2);margin-top:2px}

/* rebates: centred diagram */
.d-center{text-align:center;display:grid;justify-items:center}
.d-center .title{max-width:none}
.d-center .sub{max-width:62ch}
.d-flow{display:block;width:min(100%,880px);height:auto;margin-top:clamp(10px,2vh,24px)}
.d-chipline{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.d-chipline li{font-family:var(--label-font);font-size:12px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--gold-hi);border:1px solid var(--gold-line);background:var(--gold-soft);border-radius:999px;padding:7px 14px}

/* financing */
.d-fin .d-vis{max-width:430px;justify-self:end;width:100%}

/* about */
.d-about .title{max-width:20ch}
.d-about .d-lead{margin-top:18px;max-width:58ch;font-size:clamp(17px,1.7vw,20px);line-height:1.6;color:var(--text-2)}
.d-pulse{position:absolute;right:max(2vw,-40px);top:50%;width:min(46vw,560px);transform:translateY(-50%);z-index:0;pointer-events:none;opacity:.9}
.d-about .inner{position:relative;z-index:1}
.d-creds{list-style:none;margin:clamp(24px,4vh,40px) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:16px 0}
.d-creds li{display:flex;align-items:center;gap:10px;padding:0 clamp(10px,1.3vw,18px);border-left:1px solid var(--panel-line);font-family:var(--label-font);font-size:12px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#fff}
.d-creds li:first-child{padding-left:0;border-left:0}
.d-ring{fill:none}

/* faq accordion */
.d-acc{max-width:900px;margin-top:clamp(18px,3vh,32px);border-top:1px solid var(--panel-line)}
.d-acc details{margin:0;max-width:none;border-bottom:1px solid var(--panel-line)}
.d-acc summary{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:0;padding:20px 4px;font-family:var(--display);font-size:clamp(19px,2vw,24px);font-weight:500;letter-spacing:0;text-transform:none;color:#fff;cursor:pointer;transition:color .2s}
.d-acc summary:hover{color:var(--gold-hi)}
.d-acc summary::after{content:"+";flex:none;display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--gold-line);border-radius:50%;font-family:var(--body);font-size:22px;line-height:1;color:var(--gold);transition:transform .25s,background .25s}
.d-acc details[open] summary::after{content:"+";transform:rotate(45deg);background:var(--gold-soft)}
.d-acc details p{padding:0 56px 22px 4px;max-width:70ch;font-size:16.5px;line-height:1.6;color:var(--text-2)}

/* ---- SVG motion ---- */
@keyframes d-spin{to{transform:rotate(360deg)}}
@keyframes d-dash{to{stroke-dashoffset:-44}}
@keyframes d-pp{from{stroke-dashoffset:70}to{stroke-dashoffset:-1000}}
@keyframes d-pulse{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes d-snow{from{transform:translate(0,-12px)}to{transform:translate(34px,520px)}}
@keyframes d-win{0%,100%{opacity:.1}50%{opacity:.85}}
@keyframes d-gl{0%,100%{opacity:.25}50%{opacity:1}}
@keyframes d-fill1{0%,6%{transform:scaleX(0)}42%,92%{transform:scaleX(1)}100%{transform:scaleX(0)}}
@keyframes d-fill2{0%,6%{transform:scaleX(0)}42%,92%{transform:scaleX(.62)}100%{transform:scaleX(0)}}
@keyframes d-over{0%,40%{opacity:0}46%,92%{opacity:1}100%{opacity:0}}
@keyframes d-hnd{0%,4%{fill:#4a4a4c}12%,90%{fill:#f2c46d}100%{fill:#4a4a4c}}
@keyframes d-coin{0%{opacity:0;transform:translateY(0)}15%{opacity:1}65%{opacity:1;transform:translateY(96px)}80%,100%{opacity:0;transform:translateY(104px)}}
@keyframes d-drip{0%{opacity:0;transform:translateY(0)}20%{opacity:1}100%{opacity:0;transform:translateY(26px)}}
@keyframes d-seg{0%{opacity:0}8%,78%{opacity:1}92%,100%{opacity:0}}
@keyframes d-ringout{0%{transform:scale(.28);opacity:.7}100%{transform:scale(1);opacity:0}}
@keyframes d-draw{from{stroke-dasharray:80;stroke-dashoffset:80}to{stroke-dasharray:80;stroke-dashoffset:0}}
.ppulse{stroke-dasharray:70 1000;stroke-dashoffset:70}
.sn{fill:#fff;opacity:.7}
.wn{fill:#f2c46d;opacity:.1}
.bkg{opacity:.25}
.hnd{fill:#4a4a4c}
.f1,.f2{transform-box:fill-box;transform-origin:left center;transform:scaleX(0)}
.over,.spare{opacity:0}
.coin,.drip{opacity:0}
.seg{opacity:0}
.ring{transform-box:fill-box;transform-origin:center;opacity:0;transform:scale(.28)}
@media (prefers-reduced-motion:no-preference){
  .spin{transform-box:fill-box;transform-origin:center;animation:d-spin 1.6s linear infinite}
  .dash{animation:d-dash 1.1s linear infinite}
  .ppulse{animation:d-pp 3.6s linear infinite}
  .pulse{animation:d-pulse 4s ease-in-out infinite}
  .pulse.w2{animation-delay:-2s}
  .sn{animation:d-snow linear infinite}
  .wn{animation:d-win 5s ease-in-out infinite}
  .bkg{animation:d-gl 2.4s ease-in-out infinite}
  .bkg.b2{animation-delay:-1.2s}
  .f1{animation:d-fill1 9s ease-in-out infinite}
  .f2{animation:d-fill2 9s ease-in-out infinite}
  .over,.spare{animation:d-over 9s linear infinite}
  .hnd{animation:d-hnd 9s ease-in-out infinite}
  .coin{animation:d-coin 3s ease-in infinite}
  .coin.c2{animation-delay:-1s}.coin.c3{animation-delay:-2s}
  .drip{animation:d-drip 1.8s ease-in infinite}
  .seg{animation:d-seg 8s ease-in-out infinite}
  .slow{transform-box:fill-box;transform-origin:center;animation:d-spin 40s linear infinite}
  .ring{animation:d-ringout 5.4s ease-out infinite}
  .ring.r2{animation-delay:1.8s}.ring.r3{animation-delay:3.6s}
  html.rv .slide.shown .d-ic path{animation:d-draw 1.2s ease both}
}
@media (prefers-reduced-motion:reduce){
  .seg,.coin.c1,.over,.spare{opacity:1}.f1{transform:scaleX(1)}.f2{transform:scaleX(.62)}
  .ring.r1{opacity:.3;transform:scale(.7)}
}

@media (min-width:900px) and (max-height:820px){
  .d-svc{gap:9px;margin-top:16px} .d-svc span{font-size:14.5px}
  .d-vis svg{max-height:62vh} .d-checks{gap:8px;margin-top:16px}
  .d-acc summary{padding-block:13px} .d-acc details p{padding-bottom:14px}
  .d-flow{width:min(100%,760px)}
}
@media (max-width:900px){
  .d-split{grid-template-columns:1fr}
  .d-fin .d-vis{justify-self:center;max-width:340px}
  .d-pulse{opacity:.25}
  .d-res .d-scene{opacity:.4;width:130vw}
}
@media (max-width:700px){
  .d-creds li{border-left:0;padding:0 18px 0 0}
  .d-inline li{border-left:0;padding:0;flex:1 1 100%}
  .d-acc details p{padding-right:4px}
}
/* ==================== /v14 ==================== */

/* ---- Services Quote Form Card ---- */
.cta-card {
  background: radial-gradient(120% 90% at 100% 0%, rgba(242, 196, 109, 0.08), transparent 60%), rgba(16, 17, 20, 0.95);
  border: 1px solid var(--gold-line);
  border-radius: 20px;
  padding: clamp(20px, 2.5vw, 28px);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55);
  width: 100%;
  max-width: 500px;
  position: relative;
  z-index: 2;
}
.cta-tiles {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}
.cta-tile {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  padding: 11px 14px;
  display: grid;
  gap: 3px;
  transition: border-color 0.2s, background 0.2s;
}
.cta-tile:hover {
  border-color: var(--gold-line);
  background: rgba(242, 196, 109, 0.04);
}
.cta-tile-h {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.cta-tile-h b {
  font-size: 13.5px;
  color: #fff;
  font-family: var(--body);
}
.cta-tile-h span {
  font-family: var(--mono);
  font-size: 10px;
  color: var(--gold-hi);
  letter-spacing: 0.8px;
  text-transform: uppercase;
}
.cta-tile p {
  margin: 0;
  font-size: 12.5px;
  color: var(--text-2);
  line-height: 1.45;
}
@media (min-width: 900px) and (max-height: 860px) {
  .cta-card { padding: 16px 20px; }
  .cta-tiles { gap: 8px; margin-top: 12px; }
  .cta-tile { padding: 9px 12px; }
  .cta-tile p { font-size: 11.5px; }
}

.svc-card {
  background: var(--panel);
  border: 1px solid var(--gold-line);
  border-radius: var(--r);
  padding: clamp(20px, 2.5vw, 28px);
  box-shadow: 0 20px 48px rgba(0,0,0,0.5);
  width: 100%;
  max-width: 500px;
  position: relative;
  z-index: 2;
}
.svc-badge {
  display: inline-block;
  font-family: var(--label-font);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--gold-hi);
  background: var(--gold-soft);
  border: 1px solid var(--gold-line);
  padding: 4px 10px;
  border-radius: 999px;
}
.svc-form {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}
.svc-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
@media (max-width: 600px) {
  .svc-row { grid-template-columns: 1fr; }
}
.svc-field {
  display: grid;
  gap: 5px;
}
.svc-field label {
  font-family: var(--label-font);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--label);
}
.svc-field input, .svc-field select {
  width: 100%;
  background: #141416;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 8px;
  padding: 10px 12px;
  font-family: var(--body);
  font-size: 14.5px;
  color: #fff;
  outline: none;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.svc-field select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23f2c46d' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  padding-right: 32px;
}
.svc-field input:focus, .svc-field select:focus {
  border-color: var(--gold);
  box-shadow: 0 0 0 2px var(--gold-soft);
}
.svc-field select optgroup {
  background: #18181b;
  color: var(--gold);
  font-family: var(--label-font);
  font-weight: 700;
}
.svc-field select option {
  background: #141416;
  color: #fff;
  font-family: var(--body);
  font-weight: 400;
}
@media (min-width: 900px) and (max-height: 860px) {
  .svc-card { padding: 16px 20px; }
  .svc-form { gap: 8px; margin-top: 10px; }
  .svc-field input, .svc-field select { padding: 8px 10px; font-size: 13.5px; }
  .svc-field label { font-size: 10.5px; }
}


.d-text {
  margin-top: 14px;
  color: var(--text-2);
  line-height: 1.65;
  font-size: clamp(15.5px, 1.3vw, 17px);
  max-width: 56ch;
}
@media (min-width: 900px) and (max-height: 860px) {
  .d-text { margin-top: 10px; font-size: 14.5px; line-height: 1.55; }
}


/* ---- Balanced 60/40 Split Layout ---- */
.d-split {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  gap: clamp(24px, 4vw, 56px);
  align-items: center;
}
.d-vis {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 0;
  width: 100%;
}
.d-vis svg {
  display: block;
  width: 100%;
  height: auto;
  max-height: 75vh;
  overflow: visible;
}
.d-copy {
  max-width: 60ch;
}
.d-copy .title.t2 {
  font-size: clamp(28px, 3.2vw, 44px);
  line-height: 1.08;
  margin-bottom: 6px;
}
.d-copy .sub {
  margin-top: 8px;
  font-size: clamp(15.5px, 1.35vw, 17.5px);
  line-height: 1.48;
  color: var(--gold-hi);
  max-width: 58ch;
}
.d-copy .d-text {
  margin-top: 10px;
  color: var(--text-2);
  line-height: 1.55;
  font-size: clamp(14px, 1.15vw, 15.5px);
  max-width: 58ch;
}
.d-cta {
  margin-top: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}
@media (min-width: 900px) and (max-height: 860px) {
  .slide { padding-top: calc(56px + env(safe-area-inset-top,0px)); padding-bottom: 24px; }
  .d-copy .title.t2 { font-size: clamp(24px, 2.6vw, 36px); }
  .d-copy .sub { margin-top: 6px; font-size: 14.5px; line-height: 1.4; }
  .d-copy .d-text { margin-top: 7px; font-size: 13.5px; line-height: 1.45; }
  .d-cta { margin-top: 12px; }
  .d-vis svg { max-height: 70vh; }
  .kicker { margin-bottom: 10px; }
}
