:root{--ink:#0a0b10;--ink2:#3b3f4d;--ink3:#5b6070;--acc:#1f4bff;--tint:#f4f6fb;--line:#e4e7ee;--bg:#fff;
--sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:116px}
body{margin:0;padding-top:112px;background:var(--bg);color:var(--ink);font:400 17.5px/1.45 var(--sans);-webkit-font-smoothing:antialiased}
svg{display:block;max-width:100%}a{color:inherit}
code,pre{font-family:var(--mono)}
.wrap{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}
.read{max-width:680px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 16px;z-index:40}
.label{font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);margin:0 0 16px}
h1,h2,h3{font-weight:400;margin:0;letter-spacing:-.01em}
h1{font-size:72px;line-height:1;letter-spacing:-.03em}
h2{font-size:42px;line-height:1.1;margin-bottom:20px}
h3{font-size:24px;line-height:1.25;margin-bottom:8px}
p{margin:0 0 16px}
.small,figcaption{font-size:14.5px;color:var(--ink3)}
.lede{font-size:20px;color:var(--ink2)}
code.i{font-size:.88em;background:var(--tint);border-radius:6px;padding:1px 6px}
.lnk{text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:1px}.lnk:hover{border-color:var(--ink)}
.btn{display:inline-block;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:999px;padding:12px 24px;font-size:16px;font-weight:500;text-decoration:none}
.btn.line{background:transparent;color:var(--ink)}.btn.sm{padding:7px 16px;font-size:14.5px;background:transparent;color:var(--ink);border-color:var(--line)}
.btn:hover{border-color:var(--ink)}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
/* header */
.topmsg{position:fixed;top:0;left:0;right:0;z-index:30;background:var(--acc);color:#fff;text-align:center;font:600 13.5px/1.2 var(--sans);letter-spacing:.02em;padding:10px 16px}
.hdr{position:fixed;top:35px;left:0;right:0;z-index:20;pointer-events:none;padding:0;
background:rgba(255,255,255,.92);
-webkit-backdrop-filter:blur(14px) saturate(180%);backdrop-filter:blur(14px) saturate(180%)}
/* The frosted sheet belongs to the fixed bar, not to the centred column inside it: with the
   background on .wrap the white stopped at 1680px and the header ran see-through to the page
   edge on a wide monitor. .wrap stays the measure. */
.hdr .wrap{display:flex;align-items:center;gap:32px;height:64px;max-width:1680px;width:100%;margin:0 auto;
padding:0 clamp(20px,5vw,96px);background:none;
border:0;border-radius:0;box-shadow:none;pointer-events:auto;position:relative}
.logo svg{height:22px;width:auto}
.nav{display:flex;gap:24px;font-size:14.5px;margin-left:auto}.nav a{text-decoration:none;color:var(--ink2)}.nav a:hover{color:var(--ink)}
.hdr-r{display:flex;align-items:center;gap:16px;font-size:14.5px}.hdr-r .si{text-decoration:none;color:var(--ink2)}
/* sections */
.sec{padding:96px 0;border-top:1px solid var(--line)}.sec.tint{background:var(--tint)}
.hero{padding:72px 0 80px}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.hero-sub{font-size:20px;color:var(--ink2);margin:24px 0 24px;max-width:480px}
.micro{font-size:14.5px;color:var(--ink3);margin:16px 0 0}
/* figures */
.fig{margin:48px 0 0;--ps:paused}.fig.on{--ps:running}
.fig .art{background:var(--tint);border-radius:24px;padding:24px}
.sec.tint .fig .art{background:#fff}
.fig figcaption{margin-top:12px;max-width:680px}.fig figcaption b{font-weight:500;color:var(--ink)}
.hero .fig{margin:0}
.sx{overflow-x:auto}.sx svg{width:100%;min-width:520px;height:auto}
.bx{fill:#fff;stroke:var(--ink);stroke-width:1.5}.bt{fill:var(--tint)}.sec.tint .bt{fill:var(--tint)}
.bc{stroke:var(--acc);stroke-width:2}.bd{stroke-dasharray:5 4;stroke:var(--ink3)}
svg .t{font:500 15px var(--sans);fill:var(--ink)}svg .s{font:400 13px var(--sans);fill:var(--ink3)}svg .ac{fill:var(--acc)}
.ln{fill:none;stroke:var(--line);stroke-width:2}.lk{fill:none;stroke:var(--ink3);stroke-width:1.5}.lf{fill:none;stroke:#c3c9d6;stroke-width:1.5;stroke-dasharray:4 4}
.pk{fill:var(--acc);opacity:0;animation-duration:6s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-play-state:var(--ps)}
.p1{animation-name:hop}
@keyframes hop{0%{offset-distance:0;opacity:0}10%{opacity:1}82%{opacity:1}100%{offset-distance:100%;opacity:0}}
.fo .pk{animation-duration:8s}
.ka{animation-name:ka}.kb{animation-name:kb}
@keyframes ka{0%{offset-distance:0;opacity:0}4%{opacity:1}30%{offset-distance:72%;opacity:1}34%,100%{offset-distance:72%;opacity:0}}
@keyframes kb{0%,50%{offset-distance:0;opacity:0}54%{opacity:1}82%{offset-distance:100%;opacity:1}88%,100%{offset-distance:100%;opacity:0}}
.sw{animation:sw 8s ease-in-out infinite;animation-play-state:var(--ps)}
@keyframes sw{0%,34%{transform:translateY(-25px)}44%,92%{transform:translateY(25px)}100%{transform:translateY(-25px)}}
.xa{opacity:0;animation:xa 8s ease-in-out infinite;animation-play-state:var(--ps)}
@keyframes xa{0%,34%{opacity:0}42%,90%{opacity:1}98%,100%{opacity:0}}
.gb{fill:var(--acc);opacity:0;animation:gb 8s ease-in-out infinite;animation-play-state:var(--ps)}
@keyframes gb{0%,48%{opacity:0}56%,88%{opacity:.1}96%,100%{opacity:0}}
.ps{animation-name:hop;animation-duration:4s}.pf{animation-name:hop;animation-duration:8s;opacity:0}
.pf{fill:#8fa4ff}
.dr{stroke-dasharray:1;animation:draw 1.75s ease-in-out both;animation-play-state:var(--ps)}
@keyframes draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
/* results strip */
.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:40px 0}
.strip ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:24px}
.strip .fg{font-size:56px;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.strip .fg small{font-size:24px;color:var(--ink3);margin-left:2px}
.strip .tl{font-size:14.5px;color:var(--ink2);margin-top:8px;display:block}
.strip .label{margin-bottom:24px}
/* research */
.pubs{list-style:none;margin:32px 0 0;padding:0;border-top:1px solid var(--line)}
.pubs li{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}
.pubs .d{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);padding-top:6px}.pubs .d b{display:block;font-weight:500;color:var(--acc);margin-bottom:4px}
.pubs h3{font-size:20px;margin-bottom:4px}.pubs h3 a{text-decoration:none}.pubs h3 a:hover{text-decoration:underline}
.pubs p{margin:0;color:var(--ink2);font-size:17.5px}
/* tiers + chips */
.tiers{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:0;padding:0;list-style:none}
.tiers li{position:relative;background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px}
.tiers li::after{content:"";position:absolute;inset:-1px;border:2px solid var(--acc);border-radius:24px;opacity:0;animation:lit 6s ease-in-out infinite;animation-play-state:var(--ps);pointer-events:none}
.tiers li:nth-child(2)::after{animation-delay:1.5s}.tiers li:nth-child(3)::after{animation-delay:3s}.tiers li:nth-child(4)::after{animation-delay:4.5s}
@keyframes lit{0%,30%,100%{opacity:0}8%,18%{opacity:1}}
.tiers .n{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--acc);display:block;margin-bottom:12px}
.tiers h4{font-size:24px;font-weight:400;margin:0 0 4px}.tiers p{margin:0 0 12px;font-size:14.5px;color:var(--ink3)}
.tag{font-size:12px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line);border-radius:12px;padding:2px 10px;color:var(--ink2)}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:16px 0 0;padding:0}
.chips li{border:1px solid var(--line);border-radius:12px;padding:6px 14px;font-size:14.5px;background:#fff}
.chips.pol li{font-family:var(--mono);font-size:14.5px}
.chips li.on2{border-color:var(--acc);color:var(--acc)}
.agents{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;list-style:none;margin:0;padding:0}
.agents li{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;font-family:var(--mono);font-size:14.5px}
.where{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px}
.where div{border-radius:12px;background:#fff;border:1px dashed #c3c9d6;padding:14px 16px;font-size:14.5px;color:var(--ink2)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:48px}
/* code */
pre.code{background:var(--ink);color:#e9ecf5;border-radius:24px;padding:24px;font-size:14.5px;line-height:1.6;overflow:auto;margin:24px 0 0}
.cmdrow{display:flex;align-items:center;gap:12px;background:var(--tint);border-radius:12px;padding:10px 14px;margin-top:10px}
.cmdrow code{font-size:13.5px;white-space:normal;word-break:break-all;flex:1;min-width:0}.cmdrow .p{color:var(--acc);margin-right:8px}
.cmdrow button{font:inherit;font-size:12px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 12px;cursor:pointer}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:0}
.step{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;min-width:0}
.step svg{width:48px;height:48px;margin-bottom:16px;fill:none;stroke:var(--acc);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.step p{font-size:14.5px;color:var(--ink2)}.step .os{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);display:block;margin:12px 0 0}
.step .cmdrow{margin-top:6px}
/* pricing */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
.plan{background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px;display:flex;flex-direction:column}
.plan.feat{border-color:var(--ink)}
.price{font-size:56px;line-height:1;letter-spacing:-.02em}.price small{font-size:17.5px;color:var(--ink3);letter-spacing:0}
.plan .pn{font-size:14.5px;color:var(--ink3);margin:12px 0 24px;min-height:4.4em}
.plan .btn{margin-top:auto;align-self:flex-start}
.plan .label em{font-style:normal;color:var(--acc);margin-left:8px}
.plan ul{list-style:none;margin:0 0 24px;padding:0;font-size:14.5px;color:var(--ink2)}.plan li{padding:4px 0}
.mx{width:100%;border-collapse:collapse}
.mx th,.mx td{padding:12px 0;border-bottom:1px solid var(--line);text-align:left;font-weight:400;font-size:17.5px}
.mx thead th{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);width:90px;text-align:center}.mx thead th:first-child{width:auto;text-align:left}
.mx td{text-align:center}
.dot{display:inline-block;width:14px;height:14px;border-radius:50%;border:2px solid var(--line)}.dot.f{background:var(--acc);border-color:var(--acc)}
.lad{border-collapse:collapse;font-size:17.5px}.lad td,.lad th{padding:10px 32px 10px 0;border-bottom:1px solid var(--line);text-align:left;font-weight:400}
.assure{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:48px}
.assure div{border-top:1px solid var(--ink);padding-top:12px}.assure b{font-size:24px;font-weight:400;display:block}.assure p{font-size:14.5px;color:var(--ink3);margin:4px 0 0}
/* faq */
.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-size:20px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:8px;top:16px;font-size:28px;color:var(--ink3)}.faq details[open] summary::after{content:"\2212"}
.faq .a{padding:0 40px 20px 0;color:var(--ink2)}.faq .a p{margin:0}
.end{padding:96px 0;text-align:left}.end h2{max-width:680px}
/* footer */
.ft{border-top:1px solid var(--line);padding:56px 0 40px;font-size:14.5px}
.ft-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
.ft ul{list-style:none;margin:0;padding:0}.ft li{padding:4px 0}.ft a{text-decoration:none;color:var(--ink2)}.ft a:hover{color:var(--ink)}
.ft-bot{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:40px;padding-top:20px;color:var(--ink3)}.ft-bot p{margin:0}
@media (max-width:980px){
 h1{font-size:56px}h2{font-size:36px}
 .hero-grid,.two{grid-template-columns:1fr}
 .strip ul{grid-template-columns:repeat(3,1fr)}
 .tiers,.assure{grid-template-columns:repeat(2,1fr)}.steps,.plans{grid-template-columns:1fr}
 .agents{grid-template-columns:repeat(3,1fr)}.where{grid-template-columns:repeat(2,1fr)}
 .nav{display:none}.hdr-r{margin-left:auto}
 .ft-top{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
 body{font-size:16.5px}h1{font-size:44px}h2{font-size:30px}h3{font-size:22px}.sec{padding:64px 0}
 .strip ul{grid-template-columns:repeat(2,1fr)}.strip .fg{font-size:44px}
 .pubs li{grid-template-columns:1fr;gap:4px}
 .tiers{grid-template-columns:1fr}.agents{grid-template-columns:repeat(2,1fr)}
 .hdr-r .si{display:none}.fig .art{padding:16px;border-radius:20px}
 .plan .pn{min-height:0}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.btn.pri{padding:14px 32px;font-size:17.5px}
.btn.inv{background:#fff;color:var(--acc);border-color:#fff}
.hdr .btn.sm{background:var(--ink);color:#fff;border-color:var(--ink)}
.offerline{font-size:17.5px;margin:16px 0 0;color:var(--ink2)}.offerline b{font-weight:500;color:var(--ink)}
.hero-grid{grid-template-columns:1.05fr .95fr}
.trust{border-top:1px solid var(--line);padding:28px 0}.trust ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.trust li{display:flex;gap:12px;align-items:center;font-size:14.5px}.trust a{text-decoration:none;color:var(--ink2)}.trust a:hover{color:var(--ink)}
.trust svg{width:32px;height:32px;flex:none;fill:none;stroke:var(--acc);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:40px}
.card{background:#fff;border-radius:24px;padding:28px;display:flex;flex-direction:column;min-width:0}
.card.fig{margin:0}.card svg.ic{width:48px;height:48px;fill:none;stroke:var(--acc);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin-bottom:16px}
.card h3{font-size:24px}.card ul{margin:8px 0 0;padding:0 0 0 18px;font-size:14.5px;color:var(--ink2)}.card li{padding:3px 0}
.card p{font-size:14.5px;color:var(--ink2);margin:0}
.card .sm{margin-top:16px;width:100%;height:auto}
.calc{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start;margin-top:40px}
.ctl .row{margin-bottom:24px}.ctl label{display:block;font-size:17.5px;margin-bottom:8px}.ctl .hint{display:block;font-size:14.5px;color:var(--ink3);margin-top:4px}
.ctl .rw{display:flex;gap:16px;align-items:center}.ctl input[type=range]{flex:1;accent-color:var(--acc);min-width:0}
.ctl input[type=number]{width:96px;font:inherit;font-size:17.5px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}
.out{background:#fff;border-radius:24px;padding:32px;border:1px solid var(--line)}
.out .big{font-size:56px;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.out dl{margin:24px 0 0}.out .r{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--line);font-size:17.5px}
.out dt{color:var(--ink2)}.out dd{margin:0;font-variant-numeric:tabular-nums;text-align:right}
.tb{height:12px;border-radius:6px;background:var(--ink);overflow:hidden;margin:24px 0 8px}.tb i{display:block;height:100%;background:var(--acc);transform-origin:0 0;transform:scaleX(.4);transition:transform .4s ease-in-out}
.tl2{display:flex;justify-content:space-between;font-size:14.5px;color:var(--ink3)}
.note{font-size:14.5px;color:var(--ink3);margin-top:16px}
.term{background:var(--ink);color:#e9ecf5;border-radius:24px;padding:20px 24px;font:14.5px/1.6 var(--mono);margin:24px 0 0;overflow:auto;max-width:560px}.term .q{color:#8fa4ff}.term .d{color:#8a90a6}
.plan.feat{border:2px solid var(--acc)}
.cta-band{background:var(--acc);color:#fff;padding:96px 0}.cta-band h2{max-width:720px}.cta-band p{color:#dfe6ff;max-width:560px}
.offer{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line);z-index:6;transform:translateY(100%);visibility:hidden;transition:transform .3s ease-in-out,visibility .3s;font-size:14.5px}
body.past .offer{transform:none;visibility:visible}
.offer .wrap{display:flex;align-items:center;justify-content:center;gap:16px;height:56px;flex-wrap:nowrap;padding-top:0;padding-bottom:0}.offer span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.offer .btn.sm{flex:none;white-space:nowrap}.offer-x{flex:none;background:none;border:0;font:inherit;font-size:22px;line-height:1;width:36px;height:36px;border-radius:50%;cursor:pointer;color:var(--ink2)}.offer-x:hover{background:#f4f6fb}body.endzone .offer,body.dismissed .offer{transform:translateY(100%)!important;visibility:hidden!important}@media (max-width:640px){.offer span{display:none}.offer .wrap{justify-content:space-between}}.offer .btn.sm{background:var(--ink);color:#fff;border-color:var(--ink)}
.ft{padding-bottom:32px}
details.mxd{margin-top:32px}details.mxd summary{cursor:pointer;font-size:20px;padding:12px 0}
@media (max-width:980px){.cards{grid-template-columns:repeat(2,1fr)}.calc{grid-template-columns:1fr}.trust ul{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr}}
@media (max-width:600px){.cards{grid-template-columns:1fr}.out .big{font-size:44px}.out{padding:24px}.trust ul{grid-template-columns:1fr}}
.card.fig{background:#fff}.sec.tint .card{border:1px solid var(--line)}.hero-grid>*,.calc>*,.two>*,.fig,.wrap>*{min-width:0}html,body{overflow-x:hidden}.wrap{max-width:1680px;padding:0 clamp(20px,5vw,96px)}.read{max-width:820px}
/* the two parts + bundle */
.cards.two{grid-template-columns:repeat(2,1fr)}
.bundle{margin-top:16px;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:28px;align-items:center;
background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px}
.bundle h3{margin:6px 0 8px;font-size:22px;line-height:1.25}
.bundle p{margin:0;color:var(--ink2)}
.bundle-act{text-align:right}
.bundle .bp{font-size:20px;color:var(--ink);margin-bottom:14px}
.pnl{margin:14px 0 0;padding-left:20px;color:var(--ink2)}
@media (max-width:980px){.bundle{grid-template-columns:1fr}.bundle-act{text-align:left}}
@media (max-width:600px){.cards.two{grid-template-columns:1fr}}
.buy{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.btn.line.pri{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.inv.line{background:transparent;color:#fff;border-color:#fff}
.hero .micro{margin:12px 0 0}
#split .wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,96px);align-items:center}#split .fig{margin:0}
.art svg{margin:0 auto}.sx svg{max-width:1000px}
.hero{padding:clamp(48px,6vw,96px) 0}
.plan{padding:clamp(24px,2.4vw,48px)}
@media (max-width:980px){#split .wrap{grid-template-columns:1fr}}
.card{border:1px solid var(--line)}.chips2{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.chips2 button{font:inherit;font-size:14.5px;border:1px solid var(--line);background:var(--tint);border-radius:12px;padding:8px 14px;cursor:pointer;color:var(--ink)}.chips2 button:hover{border-color:var(--acc)}.chips2 b{font-weight:500;color:var(--acc);margin-left:6px}
.ast{font-size:.5em;vertical-align:.8em;font-weight:400;margin-left:1px}.fn{font-size:12px;line-height:1.4;color:var(--ink2);max-width:62ch;margin:14px 0 0}

/* ---- subpage components (pricing, about, affiliates, legal, docs) ----
   Same tokens as the homepage: --ink/--ink2/--ink3/--acc/--tint/--line/--bg.
   Flat: no gradients, no shadows. Rounded: 999px pills, 24px panels, 16px code. */
.eyebrow{display:inline-block;font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--acc);margin:0 0 12px}
.chip{display:inline-block;background:var(--tint);border:1px solid var(--line);border-radius:999px;padding:7px 16px;font-size:14.5px;margin:0 0 20px}
.chip b{font-weight:500;color:var(--acc)}
.grid{display:grid;gap:20px;margin-top:40px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.align-start{align-items:start}
.narrow{max-width:820px}
.sec-head{max-width:760px;margin-bottom:8px}
.sec-head h2{margin-bottom:16px}
.card h2{font-size:24px;line-height:1.25;margin-bottom:8px}
.card .n{width:32px;height:32px;border-radius:999px;background:var(--acc);color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;margin-bottom:16px}
.muted{font-size:14.5px;color:var(--ink3)}
.ticks{list-style:none;margin:12px 0 0;padding:0}
.ticks li{position:relative;padding:6px 0 6px 26px;font-size:15px;color:var(--ink2)}
.ticks li::before{content:"";position:absolute;left:0;top:15px;width:9px;height:9px;border-radius:999px;background:var(--acc)}
.plan .price{font-size:42px;line-height:1.1;margin:8px 0 6px}
.plan .price .was{font-size:20px;color:var(--ink3);text-decoration:line-through;margin-left:10px}
.plan .price .per{font-size:16px;color:var(--ink3);margin-left:6px}
.featured{border:1px solid var(--acc)}
.tag{display:inline-block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--acc);margin:0 0 12px}
.intervals{display:flex;flex-wrap:wrap;gap:16px;border:0;padding:0;margin:0 0 12px;font-size:14.5px}
.intervals label{display:flex;align-items:center;gap:8px;cursor:pointer}
.facts{margin:0}
.facts>div{display:grid;grid-template-columns:170px minmax(0,1fr);gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}
.facts>div:last-child{border-bottom:0}
.facts dt{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.facts dd{margin:0;font-size:15px;min-width:0;overflow-wrap:anywhere}
.link-arrow{text-decoration:none;color:var(--acc)}
.link-arrow::after{content:" \2192"}
.rules{padding-left:20px;margin:0}
.rules li{padding:8px 0;font-size:15.5px;color:var(--ink2)}
.panel-dark{background:var(--ink);color:#fff;border-radius:24px;padding:clamp(32px,4vw,64px)}
.panel-dark h2{color:#fff;max-width:720px}
.panel-dark .eyebrow{color:#9db4ff}
.panel-dark .lead{color:#c9cfdd}
.stack-list{list-style:none;margin:32px 0 0;padding:0;max-width:840px}
.stack-list li{padding:12px 0;border-top:1px solid rgba(255,255,255,.14);font-size:15.5px;color:#c9cfdd}
.stack-list li:last-child{border-bottom:1px solid rgba(255,255,255,.14)}
.stack-list strong{color:#fff;font-weight:500}
.note-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px;font-size:14.5px;color:#c9cfdd}
.note-row p{margin:0}
.note-row b{color:#fff;font-weight:500}
.install{display:flex;align-items:center;gap:12px;background:var(--ink);color:#e9ecf5;border-radius:16px;padding:16px 18px;font-size:14.5px;position:relative}
.install .prompt{color:#9db4ff}
.install code{flex:1;min-width:0;white-space:normal;word-break:break-all}
.copy-btn{font:inherit;font-size:11px;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#e9ecf5;border-radius:999px;padding:5px 12px;cursor:pointer;flex:none}
.copy-btn:hover{background:rgba(255,255,255,.16)}
.copy-btn.copied{color:#9db4ff}
.cmp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:40px}
.cmp>div{border-radius:24px;padding:28px}
.cmp .them{background:var(--tint)}
.cmp .us{border:1px solid var(--acc)}
.cmp h3{font-size:24px;margin-bottom:12px}
.cmp ul{margin:0;padding-left:20px}
.cmp li{padding:5px 0;font-size:15px;color:var(--ink2)}
.faq details{border-bottom:1px solid var(--line);padding:18px 0}
.faq details:first-of-type{border-top:1px solid var(--line)}
.faq summary{font-size:19px;cursor:pointer;list-style:none;padding-right:32px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:-2px;color:var(--acc);font-size:22px}
.faq details[open] summary::after{content:"\2212"}
.faq .answer{padding-top:12px;color:var(--ink2);font-size:15.5px}
.faq .answer p{margin:0 0 12px}
.hero-note{font-size:14.5px;color:var(--ink3)}
.cap{font-size:13px;color:var(--ink3);margin:16px 0 0}
.num{text-align:right}
.err{color:#c0281f}
.sub-head{font-size:24px;margin-bottom:16px}
.promo-list p{margin:0 0 12px;font-size:15px;color:var(--ink2)}
.table-wrap{overflow-x:auto;margin:24px 0}
.card table{width:100%;border-collapse:collapse;font-size:15px}
.card th,.card td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line)}
.card thead th{font:500 12px/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.card tbody th{font-weight:400;color:var(--ink2)}
.card .yes{color:var(--acc)}
.card .no{color:var(--ink3)}
.matrix{width:100%;border-collapse:collapse;font-size:15px}
.matrix caption{caption-side:top;text-align:left;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);padding-bottom:12px}
.matrix th,.matrix td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.matrix thead th{font:500 12px/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.matrix tbody th{font-weight:400;color:var(--ink2);width:44%}
.matrix .yes{color:var(--acc)}
.matrix .no{color:var(--ink3)}
.matrix .total th,.matrix .total td{font-weight:500;color:var(--ink);border-top:1px solid var(--ink);border-bottom:0}
.matrix .win{color:var(--acc)}
details.plain summary{font-size:19px;cursor:pointer;list-style:none}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;align-items:center}
@media (max-width:980px){.g3,.g2,.cmp,.note-row,.facts>div{grid-template-columns:1fr}.grid{gap:16px}}

/* ---- names still emitted by the pricing page's offer renderer, + shared page bits ---- */
.page-h1{font-size:clamp(40px,6vw,76px);line-height:1.02;letter-spacing:-.03em;margin:0 0 18px}
.price{font-size:42px;line-height:1.1;margin:8px 0 6px}
.price .was{font-size:20px;color:var(--ink3);text-decoration:line-through;margin-left:10px}
.price .per{font-size:16px;color:var(--ink3);margin-left:6px}
.btn-lg{display:inline-block;border:1px solid var(--ink);background:var(--ink);color:#fff;border-radius:999px;padding:12px 24px;font-size:16px;font-weight:500;font-family:inherit;text-decoration:none;cursor:pointer}
.btn-lg.btn-ghost{background:transparent;color:var(--ink)}
.tag.quiet{color:var(--ink3)}
.plan-body{margin-top:12px;flex:1}
.plan-foot{margin-top:auto;padding-top:24px}
.callout{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;background:var(--tint);border-radius:24px;padding:32px;margin:40px 0}
.callout h3{margin:0 0 8px}
.callout p{margin:0;color:var(--ink2);font-size:15px}
@media (max-width:900px){.callout{grid-template-columns:1fr}}
