/* prospectspulse.com v2: ppdesign tokens (verbatim block first) + marketing overrides. LIGHT ONLY. */
/* ppdesign tokens-starter, verbatim */
:root {
  color-scheme: light;
  --bg: #eef2f8;
  --bg-page: linear-gradient(160deg, #f7f9fc 0%, #eaeff6 100%);
  --ink: #0f172a; --ink-2: #475569; --ink-3: #64748b; --ink-4: #94a3b8; --ink-body: #334155;
  --card: #fff; --card-2: #f8fafc; --side-bg: #f8fafc; --chrome-bg: #f6f8fb;
  --line: #e9edf3; --line-2: #e4e9f1;
  /* accent — BRAND SLOT (swappable; re-check AA on white when swapped) */
  --blue: #2563eb; --blue-deep: #1d4ed8; --sky: #38bdf8; --sky-deep: #0ea5e9;
  --nav-active-bg: #eff6fb;
  --grad-accent: linear-gradient(135deg, #2563eb, #0ea5e9);
  --grad-avatar: linear-gradient(135deg, #2563eb, #38bdf8);
  /* status — LOCKED; statuses only, never chart series */
  --ok: #059669;   --ok-bg: #ecfdf5;   --ok-line: #a7f3d0;   --ok-dot: #10b981;
  --warn: #b45309; --warn-bg: #fffbeb; --warn-line: #fde68a; --warn-dot: #f59e0b;
  --bad: #b91c1c;  --bad-bg: #fef2f2;  --bad-line: #fecaca;  --bad-dot: #ef4444;
  --info: #1d4ed8; --info-bg: #eff6fb; --info-line: #bfdbfe; --info-dot: #2563eb;
  --neutral-bg: #f1f5f9; --neutral-ink: #64748b; --neutral-line: #e2e8f0;
  --r-sm: 8px; --r: 12px; --r-card: 13px; --r-nav: 9px; --r-pill: 999px;
  --shadow-card: 0 1px 3px rgba(15,23,42,.04);
  --shadow-chip: 0 2px 6px rgba(15,23,42,.05);
  --shadow: 0 4px 16px rgba(15,23,42,.08);
  --shadow-lg: 0 12px 32px rgba(15,23,42,.14);
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
*:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; border-radius: var(--r-sm); }
main h1:focus, main h2:focus, main h3:focus { outline: none; }

/* overrides. body: colour and gradient on SEPARATE properties (the shorthand pair resets colour) */
:root{--sp-1:8px;--sp-2:12px;--sp-3:16px;--sp-4:20px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:72px;--sp-9:112px;--container:1400px;--measure:31rem;--r-ctl:8px;--media-outline:rgba(0,0,0,.1);--accent:var(--blue);--accent-deep:var(--blue-deep);--accent-wash:var(--nav-active-bg);--mark-red:#D04144;--mark-amber:#DB9A49;--mark-blue:#4785E0;--wordmark:#333333;--sky-wash:#bfdbfe;--sec-pad:clamp(56px,7vw,112px);--ease:cubic-bezier(.2,0,0,1);--pad-x:48px}
:root{color-scheme:light only}
html{-webkit-text-size-adjust:100%;scroll-padding-top:84px}
body{font-family:-apple-system,"SF Pro Display","Inter","Helvetica Neue",system-ui,sans-serif;font-size:18px;line-height:1.6;color:var(--ink-body);-webkit-font-smoothing:antialiased;background-color:var(--bg);background-image:var(--bg-page);position:relative;overflow-x:clip}
main:focus{outline:none}
img{max-width:100%}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--card);color:var(--blue-deep);font-weight:700;font-size:14px;padding:10px 16px;border-radius:var(--r-ctl);border:1px solid var(--line);box-shadow:var(--shadow);transition:top 150ms ease}
.skip:focus{top:12px}

h1,h2,h3,h4{margin:0;color:var(--ink);text-wrap:balance}
h1{font-size:clamp(2.5rem,5.4vw,4rem);font-weight:800;line-height:1.04;letter-spacing:-.025em}
h2{font-size:clamp(1.75rem,3.2vw,2.5rem);font-weight:750;line-height:1.12;letter-spacing:-.02em}
h3{font-size:1.375rem;font-weight:700;line-height:1.25;letter-spacing:-.012em}
p{margin:0;text-wrap:pretty}
a{color:var(--blue-deep)}
.lede{font-size:clamp(1.15rem,1.7vw,1.375rem);font-weight:450;line-height:1.5;color:var(--ink-2);max-width:36rem}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin:0 0 var(--sp-3)}
.stamp{display:block;margin-top:10px;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}
.num,[data-count]{font-variant-numeric:tabular-nums}
.measure{max-width:var(--measure)}
.measure>*+*,.prose-body>*+*,.pillar-text>*+*,.offer-text>*+*{margin-top:var(--sp-3)}
.measure>h3,.prose-body>h3{margin-top:var(--sp-6)}
.list{padding-left:1.2em}

.wrap{width:min(var(--container),100% - var(--pad-x)*2);margin-inline:auto}
.band{padding:var(--sec-pad) 0}
.band[data-band="white"]{background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band[data-band="white"]+.band[data-band="white"]{border-top:0}
.sec-head{max-width:42rem}
.sec-head h2+.lede{margin-top:var(--sp-4)}
.sec-head+.measure,.sec-head+.stats-lead{margin-top:var(--sp-5)}
.pillars-head{padding:var(--sec-pad) 0 0}
.pillars-head+.band{padding-top:var(--sp-7)}

.site-head{position:sticky;top:0;z-index:50;background:rgba(247,249,252,.86);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid transparent;transition:box-shadow 200ms var(--ease),background-color 200ms,border-color 200ms}
.site-head .wrap{display:flex;align-items:center;gap:var(--sp-5);height:72px}
.site-head.is-scrolled{box-shadow:var(--shadow-card);border-bottom-color:var(--line);background:rgba(255,255,255,.92)}
.site-head.is-scrolled .wrap{height:60px}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.brand img{display:block;width:40px;height:40px;transition:transform 200ms var(--ease)}
.is-scrolled .brand img{transform:scale(.85)}
.brand b{font-size:1.05rem;font-weight:800;letter-spacing:-.02em;color:var(--wordmark)}
.site-nav{display:flex;align-items:center;gap:var(--sp-5);margin-left:auto}
.site-nav>a:not(.btn){color:var(--ink-2);text-decoration:none;font-size:15.5px;font-weight:550;padding:8px 0}
.site-nav>a:not(.btn):hover,.site-nav>a[aria-current]{color:var(--ink)}
.site-nav>a[aria-current]{box-shadow:inset 0 -2px 0 var(--blue)}
.nav-toggle,.drawer-close{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;flex:none;background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-ctl);cursor:pointer;color:var(--ink)}
.drawer{position:fixed;inset:0;z-index:60}
.drawer-scrim{position:absolute;inset:0;background:rgba(15,23,42,.35);opacity:0;transition:opacity 220ms var(--ease)}
.drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(85vw,340px);background:var(--card);box-shadow:var(--shadow-lg);padding:14px 20px 32px;transform:translateX(100%);transition:transform 240ms var(--ease);display:flex;flex-direction:column;gap:var(--sp-4);overflow-y:auto}
.drawer.is-open .drawer-panel{transform:none}
.drawer.is-open .drawer-scrim{opacity:1}
.drawer-head{display:flex;align-items:center;justify-content:space-between;height:44px}
.drawer-close{display:inline-flex}
.drawer-nav{display:flex;flex-direction:column;gap:4px}
.drawer-nav>a:not(.btn){display:block;padding:12px 8px;min-height:44px;color:var(--ink);text-decoration:none;font-weight:550;border-bottom:1px solid var(--line)}
.drawer-nav>a[aria-current]{color:var(--blue-deep)}
.drawer-nav .btn{margin-top:10px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;min-height:46px;border:1px solid transparent;border-radius:var(--r-ctl);font:inherit;font-size:16px;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color 140ms ease,border-color 140ms ease,color 140ms ease,transform 120ms var(--ease),box-shadow 140ms ease}
.btn-primary{background:var(--blue);color:#fff}
.btn-primary:hover{background:var(--blue-deep);transform:translateY(-1px);box-shadow:var(--shadow)}
.btn-secondary{background:var(--card);color:var(--ink);border-color:var(--line-2);box-shadow:var(--shadow-card)}
.btn-secondary:hover{border-color:var(--ink-4);transform:translateY(-1px)}
.btn:active{transform:scale(.96)}
.btn-sm{padding:10px 16px;min-height:40px;font-size:15px}
.btn[disabled]{opacity:.6;cursor:default}
.cta-row{display:flex;flex-wrap:wrap;gap:var(--sp-5) var(--sp-6);margin-top:var(--sp-6)}
.cta{display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:24rem}
.cta-why{font-size:15px;color:var(--ink-2)}
.cta-why::before{content:"\2192\a0";color:var(--ink-4)}
.pillar-text .cta-row,.offer-text .cta-row{margin-top:var(--sp-6)}

.hero{padding:clamp(40px,6vw,88px) 0 clamp(56px,7vw,96px);position:relative;isolation:isolate;overflow:clip}
.hero::before{content:"";position:absolute;z-index:-1;right:-240px;top:-220px;width:820px;height:820px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(56,189,248,.22) 0%,rgba(37,99,235,.07) 40%,transparent 70%)}
.hero::after{content:"";position:absolute;z-index:-1;left:-200px;top:-200px;width:560px;height:560px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(99,102,241,.12) 0%,transparent 68%)}
.hero-grid{display:grid;gap:var(--sp-7);align-items:center}
.hero h1{max-width:22ch}
.hero .lede{margin-top:var(--sp-4)}
.hero-cta{margin-top:var(--sp-6)}
.stat-strip{display:grid;gap:var(--sp-3)}
.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-card);padding:20px 22px}
.stat-v{font-size:clamp(2.25rem,4vw,3.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.02;color:var(--ink)}
.stat-l{margin-top:10px;font-size:15px;color:var(--ink-body)}
.hero .stat-strip .stat:first-child .stat-v{background:var(--grad-accent);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero .stat-strip .stat:nth-child(2){margin-left:6%}
.hero .stat-strip .stat:nth-child(3){margin-left:12%}

.logos{padding:var(--sp-7) 0}
.logos-cap{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);text-align:center;margin:0 0 var(--sp-5)}
.marquee{display:flex;gap:var(--sp-7);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex;gap:var(--sp-7);flex:none;min-width:100%;justify-content:space-around;list-style:none;margin:0;padding:0;animation:marquee 40s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(calc(-100% - var(--sp-7)))}}
.logo img{display:block;width:88px;height:88px;border-radius:16px;filter:grayscale(1);opacity:.8;outline:1px solid var(--media-outline);outline-offset:-1px;transition:filter 200ms ease,opacity 200ms ease}
.logo:hover img{filter:none;opacity:1}

.offer-grid,.founder-grid{display:grid;gap:var(--sp-7);align-items:start;margin-top:var(--sp-5)}
.offer-cards,.founder-side{display:grid;gap:var(--sp-4)}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-card);padding:24px 26px;position:relative}
.card h3{margin:0 0 10px}
.card p+p,.card .list{margin-top:10px}
.card .stat{border:0;box-shadow:none;padding:12px 0 0}
.beam::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:2px;pointer-events:none;opacity:0;background:conic-gradient(from var(--a),transparent 0 68%,var(--blue) 84%,var(--sky) 92%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.beam.is-in::before{animation:beam 2.6s var(--ease) 1 both}
@property --a{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes beam{0%{--a:0deg;opacity:1}85%{opacity:1}100%{--a:360deg;opacity:0}}

.pillar-grid{display:grid;gap:var(--sp-7);align-items:center}
.pillar-h{display:flex;align-items:flex-start;gap:14px}
.pillar-h h2,.pillar-h h3{font-size:clamp(1.5rem,2.6vw,2rem);font-weight:750;letter-spacing:-.02em;line-height:1.15}
.pn{flex:none;width:36px;height:36px;border-radius:10px;background:var(--ink);color:#fff;font-weight:800;font-size:15px;display:inline-flex;align-items:center;justify-content:center;margin-top:2px}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-card);background:var(--card);box-shadow:var(--shadow-card)}
.tb{width:100%;border-collapse:collapse;font-size:15px}
.tb th,.tb td{padding:12px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.tb thead th{font-size:11.5px;font-weight:650;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);background:var(--card-2)}
.tb tbody tr:last-child td{border-bottom:0}
.compare .usual{color:var(--ink-3);width:45%}
.compare .ours{color:var(--ink);font-weight:550}
.fit td{width:50%;color:var(--ink-body)}
.fit .no{color:var(--ink-2)}
.dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin:0 10px 3px 0}
.dot.ok{background:var(--ok-dot)}
.dot.no{background:var(--ink-4)}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:var(--r-pill);border:1px solid;white-space:nowrap;line-height:1.4;transition:background-color 320ms ease,color 320ms ease,border-color 320ms ease}
.chip i{width:5px;height:5px;border-radius:50%;background:currentColor}
.chip-ok{color:var(--ok);background:var(--ok-bg);border-color:var(--ok-line)}
.chip-neutral{color:var(--neutral-ink);background:var(--neutral-bg);border-color:var(--neutral-line)}
.chip.is-pending{color:var(--ink-4);background:var(--card-2);border-color:var(--line-2)}

.proof{margin:0}
.window{background:var(--card);border:1px solid var(--line-2);border-radius:16px;overflow:hidden;box-shadow:0 24px 56px rgba(15,23,42,.1),0 2px 6px rgba(15,23,42,.05)}
.chrome{display:flex;align-items:center;gap:12px;padding:11px 14px;background:var(--chrome-bg);border-bottom:1px solid var(--line)}
.lights{display:flex;gap:7px}
.lights span{width:10px;height:10px;border-radius:50%}
.lights .r{background:#ff5f57}.lights .y{background:#febc2e}.lights .g{background:#28c840}
.addr{flex:1;display:flex;justify-content:center;min-height:26px}
.pill{display:inline-flex;align-items:center;gap:7px;background:var(--card);border:1px solid var(--line-2);color:var(--ink-3);font-size:12px;padding:4px 14px;border-radius:var(--r-pill);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.win-body{position:relative}
.shot{display:block;width:100%;height:auto;outline:1px solid var(--media-outline);outline-offset:-1px}
.shot-pending{aspect-ratio:16/10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--ink-3);background:repeating-linear-gradient(135deg,var(--card-2) 0 14px,var(--card) 14px 28px)}
.shot-pending .eyebrow{margin:0}
.shot-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}
figcaption{margin-top:var(--sp-3);font-size:14px;line-height:1.5;color:var(--ink-3);max-width:36rem}
.chart-wrap{padding:22px 24px 18px}
.chart{width:100%;height:auto;display:block;font-family:inherit}
.chart text{font-size:13px;fill:var(--ink-2)}
.chart .cv{font-size:14px;font-weight:700;fill:var(--ink);font-variant-numeric:tabular-nums}
.chart .cbig{font-size:30px;font-weight:800;fill:var(--ink);letter-spacing:-.03em}
.chart .base{stroke:var(--line-2);stroke-width:1}
.chart .ref{stroke:var(--ink-4);stroke-width:1.5}
.chart .bar{transform-box:fill-box;transform-origin:left center;transition:transform 900ms var(--ease)}
.mock-list{width:100%;border-collapse:collapse;font-size:13.5px}
.mock-list th{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);background:var(--card-2);text-align:left;padding:9px 14px}
.mock-list td{padding:10px 14px;border-top:1px solid var(--line);color:var(--ink-body);vertical-align:middle}
.mock-mail{padding:18px 20px;font-size:14px}
.mail-hd{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;padding-bottom:12px;border-bottom:1px solid var(--line);align-items:baseline}
.mail-k{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-weight:700}
.mail-v{color:var(--ink);font-weight:600;min-height:1.2em}
.mail-body{padding:14px 0;min-height:8.5em;color:var(--ink-body)}
.mail-body p+p{margin-top:8px}
.is-typing .mail-body p:last-child::after{content:"";display:inline-block;width:2px;height:1em;background:var(--ink);vertical-align:-2px;margin-left:1px;animation:caret 1s steps(2) infinite}
@keyframes caret{50%{opacity:0}}
.mail-foot{display:flex;min-height:24px}
.mail-reply{margin-top:14px;padding:12px 14px;background:var(--card-2);border:1px solid var(--line);border-radius:10px}
.mail-from{display:block;font-size:11.5px;font-weight:700;color:var(--ink-3);margin-bottom:4px}
.mock-health ul{list-style:none;margin:0;padding:6px 0}
.mock-health li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;border-bottom:1px solid var(--line);font-size:13.5px;color:var(--ink-body)}
.mock-health li:last-child{border-bottom:0}
.mock-alert{margin:12px 18px 18px;padding:12px 14px;border-radius:10px;background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--warn);font-size:13px}
.mock-alert-t{display:block;font-weight:700;margin-bottom:2px}
.mock-notify{position:relative}
.mock-note{position:absolute;right:14px;top:14px;width:min(260px,72%);background:var(--card);border:1px solid var(--line-2);border-radius:12px;box-shadow:var(--shadow-lg);padding:12px 14px;font-size:13px;color:var(--ink-body)}
.mock-note-t{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ok)}
.mock-note-f{display:block;font-weight:700;color:var(--ink);margin:3px 0}

.mini-row{display:flex;gap:18px;padding:14px 18px 6px}.mini-v{display:block;font-size:24px;font-weight:800;letter-spacing:-.03em;color:var(--ink);line-height:1}.mini-l{display:block;font-size:11.5px;color:var(--ink-3);margin-top:4px}.mock-foot{margin:0 18px 16px;font-size:12px;color:var(--ink-3)}.mock-counter{padding:16px 20px 8px}.counter-row{display:flex;align-items:baseline;gap:14px;padding:8px 0;border-bottom:1px solid var(--line)}.counter-row:last-child{border-bottom:0}.counter-v{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:800;letter-spacing:-.03em;color:var(--ink);min-width:6.5ch}.counter-l{font-size:14px;color:var(--ink-2)}.mock-stats{margin:0;padding:16px;gap:12px}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--sp-4);margin-top:var(--sp-6)}
.stat-grid+.measure{margin-top:var(--sp-6)}
.band-grad{background-color:var(--blue);background-image:var(--grad-accent);background-size:160% 160%;color:#fff;animation:drift 18s ease-in-out infinite alternate}
@keyframes drift{from{background-position:0% 0%}to{background-position:100% 100%}}
.band-grid{display:grid;gap:var(--sp-7);align-items:center}
.band-grad .stat{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.28);box-shadow:none}
.band-grad .stat-v,.band-grad .stat-l,.band-grad h2,.band-grad p,.band-grad .cta-why{color:#fff}
.band-grad .stamp,.band-grad .cta-why::before{color:rgba(255,255,255,.78)}
.band-grad .btn-primary{background:#fff;color:var(--blue-deep)}
.band-grad .btn-secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.band-text>p+p,.band-text h2+p{margin-top:var(--sp-3)}
.stat-big .stat-v{font-size:clamp(3rem,6vw,5rem)}
.quote-track{display:grid;grid-auto-flow:column;grid-auto-columns:min(100%,30rem);gap:var(--sp-4);overflow-x:auto;scroll-snap-type:x mandatory;padding:4px var(--sp-5) 14px;margin:var(--sp-6) calc(var(--sp-5)*-1) 0;scrollbar-width:thin;-webkit-mask-image:linear-gradient(90deg,transparent,#000 var(--sp-5),#000 calc(100% - var(--sp-5)),transparent);mask-image:linear-gradient(90deg,transparent,#000 var(--sp-5),#000 calc(100% - var(--sp-5)),transparent)}
.quote{scroll-snap-align:start;margin:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-card);padding:24px 26px}
.quote blockquote{margin:0;font-size:1.2rem;line-height:1.45;font-weight:500;color:var(--ink)}
.quote blockquote p::before{content:"\201C"}.quote blockquote p::after{content:"\201D"}
.quote figcaption{margin-top:14px;font-size:13px;font-weight:600;color:var(--ink-3)}
.quote-track+.measure{margin-top:var(--sp-5)}

.timeline{list-style:none;margin:var(--sp-6) 0 0;padding:0;position:relative;max-width:42rem}
.timeline::before,.timeline::after{content:"";position:absolute;left:17px;top:10px;bottom:30px;width:2px;border-radius:1px;background:var(--line-2)}
.timeline::after{background:var(--blue);transform-origin:top;transform:scaleY(var(--drawn,1))}
.tl-step{position:relative;display:flex;gap:18px;padding-bottom:var(--sp-6)}
.tl-n{flex:none;width:36px;height:36px;border-radius:50%;background:var(--ink);color:#fff;font-weight:800;font-size:14px;display:inline-flex;align-items:center;justify-content:center;position:relative;z-index:1;box-shadow:0 0 0 4px var(--card);transition:background-color 400ms ease}
.tl-body h3{margin:5px 0 6px;font-size:1.25rem}
.tl-body p{color:var(--ink-body)}
@keyframes draw{from{transform:scaleY(0)}to{transform:scaleY(1)}}

.cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-4);margin-top:var(--sp-6)}
.flow{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.flow .row{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--ink-body);line-height:1.5}
.flow .g{width:6px;height:6px;border-radius:50%;background:var(--ok-dot);flex:none;margin-top:9px}
.band-fit .table-wrap{margin-top:var(--sp-6)}
.faq-list{margin-top:var(--sp-6);max-width:46rem;border-top:1px solid var(--line)}
.faq{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 4px;font-weight:650;color:var(--ink);font-size:1.05rem;line-height:1.35}
.faq summary::-webkit-details-marker{display:none}
.faq-ic{flex:none;color:var(--ink-3);transition:transform 260ms var(--ease)}
.faq[open] .faq-ic{transform:rotate(45deg)}
.faq-a{display:grid;grid-template-rows:1fr;transition:grid-template-rows 320ms var(--ease)}
.faq-a.is-closed{grid-template-rows:0fr}
.faq-a>div{overflow:hidden;min-height:0}
.faq-a p,.faq-a .list{padding:0 4px 18px;color:var(--ink-body);max-width:40rem}
.cta-band{position:relative;isolation:isolate;overflow:clip;text-align:center}
.cta-band::before{content:"";position:absolute;z-index:-1;left:50%;top:50%;width:900px;height:900px;margin:-450px 0 0 -450px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(56,189,248,.20) 0%,rgba(37,99,235,.07) 40%,transparent 68%);animation:breathe 7s ease-in-out infinite alternate}
@keyframes breathe{from{transform:scale(1);opacity:.8}to{transform:scale(1.12);opacity:1}}
.cta-inner{max-width:46rem;margin:0 auto}
.cta-inner h2{font-size:clamp(2rem,4vw,3rem)}
.cta-inner .lede{margin:var(--sp-4) auto 0}
.cta-inner .cta-row{justify-content:center}
.cta-inner .cta{align-items:center;text-align:center}
.cta-phone{margin-top:var(--sp-5);font-size:15px;color:var(--ink-3)}
.cta-phone a{color:var(--ink-2);font-weight:600;text-decoration:none;padding:6px 0}
.nf{min-height:62vh;display:flex;align-items:center}
.nf-links{list-style:none;padding:0;margin:var(--sp-6) 0 0;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}

.site-foot{background:var(--card);border-top:1px solid var(--line);padding:var(--sp-7) 0 var(--sp-8);font-size:14px;color:var(--ink-3)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:var(--sp-6)}
.site-foot .brand img{width:28px;height:28px}
.foot-h{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin:0 0 10px}
.foot-note{margin:0 0 8px;max-width:26rem;line-height:1.5}
.site-foot .brand+.foot-note{margin-top:var(--sp-3)}
.foot-note a{color:var(--ink-2);display:inline-block;padding:4px 0}
.sep{color:var(--ink-4);margin:0 3px}

.form{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);max-width:46rem;margin-top:var(--sp-6)}
.field{display:flex;flex-direction:column;gap:6px}
.field-wide,.form-actions,.form-status,.ts{grid-column:1/-1}
.field label{font-size:14px;font-weight:650;color:var(--ink-2)}
.field .opt{font-weight:400;color:var(--ink-3)}
.field input,.field textarea{font:inherit;font-size:16px;padding:11px 13px;min-height:46px;color:var(--ink);background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-ctl);width:100%}
.field textarea{min-height:96px;resize:vertical}
.field input:focus,.field textarea:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px rgba(37,99,235,.35)}
.field input[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:var(--bad)}
.form-actions{display:flex;flex-wrap:wrap;gap:var(--sp-2)}
.form-status{font-size:15px;color:var(--ink-2);min-height:1.4em}
.form-status[data-state="err"]{color:var(--bad)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ts:empty{display:none}
.success{max-width:46rem;margin-top:var(--sp-6);padding:26px 28px;background:var(--card);border:1px solid var(--ok-line);border-radius:var(--r-card);box-shadow:var(--shadow-card)}
.success h3{margin-bottom:8px}
.calendly{margin-top:var(--sp-7);max-width:46rem}
.cal-note{margin-top:var(--sp-2);font-size:14px;color:var(--ink-3)}
.cal-mount{margin-top:var(--sp-4);min-height:700px;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;background:var(--card)}

/* motion: initial hidden states exist ONLY when JS runs (html.js) */
html.js [data-reveal]{opacity:0;transform:translateY(16px)}
html.js [data-reveal].is-in{opacity:1;transform:none}
html.js [data-rise]{transform:translateY(12px)}
html.js [data-rise].is-in{transform:none}
html.js [data-motion="hero"] .stat .stamp{opacity:0;transition:opacity 400ms ease}
html.js [data-motion="hero"] .stat.is-counted .stamp{opacity:1}
html.js [data-motion="list-rows"] [data-row],html.js [data-motion="health-rows"] [data-row],html.js [data-motion="health-rows"] [data-alert]{opacity:0;transform:translateY(8px)}
html.js [data-motion="list-rows"] [data-row].is-in,html.js [data-motion="health-rows"] [data-row].is-in,html.js [data-motion="health-rows"] [data-alert].is-in{opacity:1;transform:none}
html.js [data-motion="notify"] [data-note]{opacity:0;transform:translateX(24px)}
html.js [data-motion="notify"] [data-note].is-in{opacity:1;transform:none}
html.js [data-motion="type-email"] [data-mail-reply],html.js [data-motion="type-email"] [data-mail-delivered]{opacity:0}
html.js [data-motion="type-email"] [data-mail-reply]{transform:translateY(10px)}
html.js [data-motion="type-email"] [data-mail-reply].is-in,html.js [data-motion="type-email"] [data-mail-delivered].is-in{opacity:1;transform:none}
html.js [data-motion="grow-bars"] .chart:not(.is-in) .bar,html.js [data-motion="verify-counter"] .chart:not(.is-in) .bar{transform:scaleX(0)}
html.js [data-motion="draw-line"] .timeline::after{transform:scaleY(var(--drawn,0))}
@supports (animation-timeline:view()){html.js [data-motion="draw-line"] .timeline::after{animation:draw linear both;animation-timeline:view();animation-range:entry 10% cover 60%;transform:none}}
html.js .tl-step:not(.is-lit) .tl-n{background:var(--ink-4)}

@media (min-width:1024px){
.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--sp-8)}
.pillar-grid{grid-template-columns:minmax(0,31rem) minmax(0,1fr);gap:var(--sp-8)}
.pillar[data-side="left"] .pillar-media{order:-1}
.pillar[data-side="left"] .pillar-grid{grid-template-columns:minmax(0,1fr) minmax(0,31rem)}
.offer-grid,.founder-grid,.chart-grid{grid-template-columns:minmax(0,31rem) minmax(0,1fr);gap:var(--sp-8)}
.band-grid{grid-template-columns:auto minmax(0,1fr)}
}
@media (max-width:1023.98px){.chart-grid{display:grid;gap:var(--sp-6)}.chart-media{margin-top:var(--sp-6)}}
@media (max-width:999.98px){.site-nav>a:not(.btn){display:none}.nav-toggle{display:inline-flex}.site-nav{gap:var(--sp-2)}}
@media (max-width:900px){.cols{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr;gap:var(--sp-5)}}
@media (max-width:768px){
:root{--pad-x:20px}
body{font-size:17px}
.site-head .wrap{height:64px}
.hero .stat-strip .stat:nth-child(2),.hero .stat-strip .stat:nth-child(3){margin-left:0}
.quote-track{padding-inline:16px;margin-inline:-16px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 16px,#000 calc(100% - 16px),transparent);mask-image:linear-gradient(90deg,transparent,#000 16px,#000 calc(100% - 16px),transparent)}
.marquee,.marquee-track{gap:var(--sp-6)}
@keyframes marquee{to{transform:translateX(calc(-100% - var(--sp-6)))}}
.logo img{width:72px;height:72px}
}
@media (max-width:640px){
.form{grid-template-columns:1fr}
.tb thead{display:none}
.tb,.tb tbody,.tb tr,.tb td{display:block;width:100%}
.tb tr{border-bottom:1px solid var(--line);padding:8px 0}
.tb tr:last-child{border-bottom:0}
.tb td{border:0;padding:6px 16px}
.tb td::before{content:attr(data-label);display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:2px}
.mock-list th:nth-child(2),.mock-list td:nth-child(2){display:none}
.mock-note{position:static;width:auto;margin:12px}
.btn{white-space:normal}
}
@media (max-width:480px){.stat-grid{grid-template-columns:1fr}.cta-row{gap:var(--sp-4)}}

/* reduced motion: every animated thing renders in its final state */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important; animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important; scroll-behavior: auto !important;
  }
  html.js [data-reveal],html.js [data-rise],html.js [data-motion] [data-row],html.js [data-motion] [data-note],html.js [data-motion] [data-alert],html.js [data-motion] [data-mail-reply],html.js [data-motion] [data-mail-delivered],html.js [data-motion="hero"] .stat .stamp{opacity:1;transform:none}
  html.js [data-motion] .chart:not(.is-in) .bar,html.js .chart .bar{transform:none}
  html.js .tl-step:not(.is-lit) .tl-n{background:var(--ink)}
  html.js [data-motion="draw-line"] .timeline::after{animation:none;transform:none}
  .marquee{-webkit-mask-image:none;mask-image:none;flex-wrap:wrap;justify-content:center}
  .marquee-track{animation:none;flex-wrap:wrap;justify-content:center}
  .marquee-track[aria-hidden]{display:none}
  .band-grad,.cta-band::before,.beam::before{animation:none}
}
