
:root{
color-scheme:light;
--bg:#f6f7f4;--surface:#ffffff;--surface-2:#f0f3ef;--surface-3:#e6ebe5;
--line:#dde3db;--line-strong:#c3ccc1;
--ink:#14201a;--ink-2:#33423a;--muted:#5a6961;
--accent:#17694a;--accent-hover:#11573c;--accent-ink:#ffffff;--accent-text:#145f43;
--accent-soft:#e4f2eb;--accent-line:#b7dac8;
--amber:#b45309;--amber-soft:#fdf1dc;
--att:#d9f0e2;--att-ink:#1a5b39;--short:#fcefd2;--short-ink:#6d4800;--abs:#eceee9;--abs-ink:#6c7570;
--unk:#e5ebf6;--unk-ink:#33508a;
--danger:#b42318;--warn-bg:#fff3d9;--warn-ink:#6b4700;--bad-bg:#fde7e4;--bad-ink:#9b2317;--ok-bg:#e1f3e9;--ok-ink:#17583a;
--ring:0 0 0 3px rgba(23,105,74,.32);
--shadow-sm:0 1px 2px rgba(20,32,26,.06),0 1px 3px rgba(20,32,26,.06);
--shadow-md:0 10px 24px -10px rgba(20,32,26,.18),0 2px 6px -2px rgba(20,32,26,.08);
--shadow-lg:0 28px 56px -20px rgba(20,32,26,.28),0 6px 14px -6px rgba(20,32,26,.10);
--wash:rgba(23,105,74,.10);--wash-2:rgba(180,83,9,.06);
--band:#123d2c;--band-ink:#eaf5ef;
--r:8px;--r-lg:12px;--r-xl:18px;--maxw:1160px;
--font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
--mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
color-scheme:dark;
--bg:#0c110f;--surface:#131a17;--surface-2:#18211d;--surface-3:#1f2a25;
--line:#25312c;--line-strong:#35443d;
--ink:#e5eee9;--ink-2:#c2cec7;--muted:#93a39b;
--accent:#4cc38a;--accent-hover:#68d29f;--accent-ink:#052013;--accent-text:#72d8a6;
--accent-soft:#0f2a1e;--accent-line:#1f4b37;
--amber:#f0a94b;--amber-soft:#2b2010;
--att:#14382a;--att-ink:#a6e5c2;--short:#3a2d10;--short-ink:#f3d58a;--abs:#1d2522;--abs-ink:#8a968f;
--unk:#1c2640;--unk-ink:#b6c8f5;
--danger:#c4382d;--warn-bg:#352a10;--warn-ink:#f3d58a;--bad-bg:#3b1a16;--bad-ink:#f6b0a7;--ok-bg:#12301f;--ok-ink:#a3e3c0;
--ring:0 0 0 3px rgba(76,195,138,.38);
--shadow-sm:0 1px 3px rgba(0,0,0,.45);
--shadow-md:0 12px 28px -12px rgba(0,0,0,.65);
--shadow-lg:0 28px 60px -20px rgba(0,0,0,.8);
--wash:rgba(76,195,138,.14);--wash-2:rgba(240,169,75,.06);
--band:#0f2a1e;--band-ink:#e5f3eb;}}
:root[data-theme="dark"]{
color-scheme:dark;
--bg:#0c110f;--surface:#131a17;--surface-2:#18211d;--surface-3:#1f2a25;
--line:#25312c;--line-strong:#35443d;
--ink:#e5eee9;--ink-2:#c2cec7;--muted:#93a39b;
--accent:#4cc38a;--accent-hover:#68d29f;--accent-ink:#052013;--accent-text:#72d8a6;
--accent-soft:#0f2a1e;--accent-line:#1f4b37;
--amber:#f0a94b;--amber-soft:#2b2010;
--att:#14382a;--att-ink:#a6e5c2;--short:#3a2d10;--short-ink:#f3d58a;--abs:#1d2522;--abs-ink:#8a968f;
--unk:#1c2640;--unk-ink:#b6c8f5;
--danger:#c4382d;--warn-bg:#352a10;--warn-ink:#f3d58a;--bad-bg:#3b1a16;--bad-ink:#f6b0a7;--ok-bg:#12301f;--ok-ink:#a3e3c0;
--ring:0 0 0 3px rgba(76,195,138,.38);
--shadow-sm:0 1px 3px rgba(0,0,0,.45);
--shadow-md:0 12px 28px -12px rgba(0,0,0,.65);
--shadow-lg:0 28px 60px -20px rgba(0,0,0,.8);
--wash:rgba(76,195,138,.14);--wash-2:rgba(240,169,75,.06);
--band:#0f2a1e;--band-ink:#e5f3eb;}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:84px}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--ink);
font:16px/1.6 var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-wrap:break-word}
main{flex:1 0 auto;padding:36px 0 64px;overflow-x:clip}
main.full{padding:0}
img,svg{max-width:100%}
a{color:var(--accent-text);text-decoration-thickness:1px;text-underline-offset:2px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.skip{position:absolute;left:-9999px;top:8px;z-index:50;background:var(--surface);color:var(--ink);padding:8px 14px;border-radius:var(--r);box-shadow:var(--shadow-md)}
.skip:focus{left:12px}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 16px}
@media (min-width:720px){.wrap{padding:0 24px}}
.wrap.doc,.narrow:not(.wrap){max-width:820px}
.wrap.narrow>*{max-width:820px}
h1,h2,h3{color:var(--ink);letter-spacing:-.02em;line-height:1.18;text-wrap:balance}
h1{font-size:clamp(28px,4.4vw,46px);margin:.15em 0 .45em;font-weight:750}
h2{font-size:clamp(21px,2.6vw,28px);margin:1.7em 0 .55em;font-weight:700}
h3{font-size:18px;margin:1.2em 0 .4em;font-weight:650}
p{margin:0 0 1em}
.lead{font-size:clamp(17px,1.6vw,19px);color:var(--ink-2);max-width:760px}
.muted{color:var(--muted)}.small{font-size:14px}.center{text-align:center}
.fine{font-size:13px;color:var(--muted)}
code,.mono{font-family:var(--mono);font-size:.88em;word-break:break-word}
code{background:var(--surface-2);border:1px solid var(--line);border-radius:5px;padding:1px 5px}
ul.ticks{list-style:none;padding:0;margin:0 0 1em}
ul.ticks li{position:relative;padding-left:26px;margin:7px 0}
ul.ticks li::before{content:"";position:absolute;left:3px;top:.5em;width:12px;height:7px;border-left:2px solid var(--accent);
border-bottom:2px solid var(--accent);transform:rotate(-45deg)}
ol{padding-left:1.3em}ol li{margin:6px 0}
hr{border:0;border-top:1px solid var(--line);margin:28px 0}
svg.i{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.kicker{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text);margin-bottom:6px}
.eyebrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px;color:var(--muted);margin:0 0 14px}
.tag{display:inline-block;font-size:12.5px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--accent-soft);
color:var(--accent-text);border:1px solid var(--accent-line);letter-spacing:.01em}
.logo svg{display:block;width:28px;height:28px}
.logo .frame{fill:var(--accent)}.logo .cell{fill:var(--accent-ink)}.logo .off{fill:var(--accent-ink);opacity:.35}


.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:var(--accent-ink);
border:1px solid var(--accent);border-radius:var(--r);padding:10px 18px;font:600 15px/1.25 var(--font);text-decoration:none;
cursor:pointer;box-shadow:var(--shadow-sm);transition:background .15s,border-color .15s,box-shadow .15s;min-height:42px}
.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);text-decoration:none}
.btn:focus-visible{outline:none;box-shadow:var(--ring)}
.btn.small{padding:6px 13px;font-size:14px;min-height:34px}
.btn.big{padding:13px 22px;font-size:16px;min-height:50px;border-radius:10px}
.btn.secondary{background:var(--surface);color:var(--accent-text);border-color:var(--line-strong)}
.btn.secondary:hover{background:var(--accent-soft);border-color:var(--accent-line)}
.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}
.btn.danger:hover{filter:brightness(1.08)}
.btn.light{background:var(--band-ink);color:var(--band);border-color:var(--band-ink)}
.btn.light:hover{background:#fff;border-color:#fff}
.btn.ghost{background:transparent;color:var(--band-ink);border-color:rgba(255,255,255,.35);box-shadow:none}
.btn.ghost:hover{background:rgba(255,255,255,.08)}
.btn[disabled],.btn[aria-disabled="true"]{opacity:.5;cursor:not-allowed}
.btn svg.i{width:18px;height:18px}
button[hidden],[hidden]{display:none!important}
form.inline{display:inline}
p.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
label{display:block;font-weight:600;margin:14px 0 5px;font-size:15px}
input[type=text],input[type=email],input[type=number],select,textarea{width:100%;max-width:440px;padding:10px 12px;
border:1px solid var(--line-strong);border-radius:var(--r);background:var(--surface);color:var(--ink);font:15px/1.4 var(--font);min-height:42px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:var(--ring)}
input[aria-invalid="true"]{border-color:var(--bad-ink)}
input::placeholder{color:var(--muted);opacity:.8}
input[type=checkbox]{accent-color:var(--accent);width:18px;height:18px}
label.check{font-weight:500;display:flex;gap:9px;align-items:center}
.row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.row>div{flex:1 1 180px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px;margin:14px 0;box-shadow:var(--shadow-sm)}
.card>:first-child{margin-top:0}.card>:last-child{margin-bottom:0}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.grid>.card{margin:0}
.stat{font-size:30px;font-weight:750;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-label{color:var(--muted);font-size:14px}
.price{font-size:36px;font-weight:750;letter-spacing:-.02em}.price small{font-size:16px;color:var(--muted);font-weight:500}
.note{border-radius:var(--r);padding:11px 15px;margin:14px 0;font-size:15px;border:1px solid transparent}
.note a{color:inherit;font-weight:600}
.note.warn{background:var(--warn-bg);color:var(--warn-ink)}
.note.bad{background:var(--bad-bg);color:var(--bad-ink)}
.note.ok{background:var(--ok-bg);color:var(--ok-ink)}
.badge{display:inline-block;border-radius:999px;padding:2px 10px;font-size:12.5px;font-weight:650;background:var(--surface-3);color:var(--ink-2);white-space:nowrap}
.badge.complete{background:var(--ok-bg);color:var(--ok-ink)}
.badge.incomplete{background:var(--bad-bg);color:var(--bad-ink)}
.badge.undetermined{background:var(--warn-bg);color:var(--warn-ink)}
.badge.verify{background:var(--unk);color:var(--unk-ink)}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);margin:14px 0;box-shadow:var(--shadow-sm);
-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;font-size:14.5px}
th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top;white-space:nowrap}
td.wrap-cell{white-space:normal;min-width:220px}
th{font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:650;background:var(--surface-2)}
tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}
tbody tr:hover td{background:color-mix(in srgb,var(--surface-2) 60%,transparent)}
table.roster th:first-child,table.roster td:first-child{position:sticky;left:0;background:var(--surface);z-index:1;white-space:normal;min-width:180px}
table.roster th:first-child{background:var(--surface-2)}
td.m{text-align:center;font-variant-numeric:tabular-nums;min-width:58px}
td.attended,.legend .attended{background:var(--att);color:var(--att-ink)}td.short,.legend .short{background:var(--short);color:var(--short-ink)}
td.absent,.legend .absent{background:var(--abs);color:var(--abs-ink)}td.unknown,.legend .unknown{background:var(--unk);color:var(--unk-ink)}
tbody tr:hover td.attended{background:var(--att)}tbody tr:hover td.short{background:var(--short)}
tbody tr:hover td.absent{background:var(--abs)}tbody tr:hover td.unknown{background:var(--unk)}
.legend span{display:inline-block;padding:2px 9px;border-radius:6px;margin:0 6px 6px 0;font-size:13px}
details summary{cursor:pointer;font-weight:600}
dl.facts{display:grid;gap:0;margin:0;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}
dl.facts>div{display:grid;grid-template-columns:minmax(120px,200px) 1fr;gap:14px;padding:13px 18px;border-bottom:1px solid var(--line)}
dl.facts>div:last-child{border-bottom:0}
dl.facts dt{font-weight:650}dl.facts dd{margin:0;color:var(--ink-2)}
@media (max-width:560px){dl.facts>div{grid-template-columns:1fr;gap:2px}th,td{padding:8px 9px}}


.site-head{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--surface) 88%,transparent);
-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.head-inner{display:flex;align-items:center;gap:18px;min-height:64px}
.brand{display:inline-flex;align-items:center;gap:10px;font-weight:750;letter-spacing:-.015em;color:var(--ink);text-decoration:none;font-size:17px;min-width:0}
.brand span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand:hover{text-decoration:none}
.site-nav{display:flex;gap:4px;align-items:center;margin-left:auto}
.site-nav a{font-size:15px;color:var(--ink-2);text-decoration:none;padding:7px 11px;border-radius:7px;white-space:nowrap}
.site-nav a:hover{background:var(--surface-2);color:var(--ink)}
.site-nav a[aria-current="page"]{color:var(--accent-text);background:var(--accent-soft)}
.head-cta{display:flex;align-items:center;gap:8px}
.site-nav:not(.app)+.head-cta{margin-left:6px}
.mnav{display:none;position:relative}
.mnav summary{list-style:none;display:grid;place-items:center;width:42px;height:42px;border-radius:var(--r);border:1px solid var(--line-strong);
background:var(--surface);color:var(--ink);cursor:pointer}
.mnav summary::-webkit-details-marker{display:none}
.mnav summary:focus-visible{outline:none;box-shadow:var(--ring)}
.mnav-list{position:absolute;right:0;top:50px;min-width:220px;list-style:none;margin:0;padding:8px;background:var(--surface);
border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);z-index:30}
.mnav-list a{display:block;padding:10px 12px;border-radius:7px;color:var(--ink);text-decoration:none}
.mnav-list a:hover{background:var(--surface-2)}
@media (max-width:900px){.site-nav{display:none}.mnav{display:block}.site-nav:not(.app)+.head-cta,.mnav.app{margin-left:auto}}
.mnav-list a.mnav-cta{margin-top:6px;background:var(--accent);color:var(--accent-ink);text-align:center;font-weight:650}
.mnav-list a.mnav-cta:hover{background:var(--accent-hover)}
.head-cta .btn{white-space:nowrap}
@media (max-width:480px){.head-cta>.btn{display:none}.brand{font-size:16px}}
.site-foot{border-top:1px solid var(--line);background:var(--surface);padding:44px 0 28px;font-size:14.5px;color:var(--muted)}
.foot-grid{display:grid;gap:28px;grid-template-columns:minmax(220px,1.6fr) repeat(4,minmax(130px,1fr))}
.foot-brand p{margin:12px 0 0;max-width:330px}
.foot-h{font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin:4px 0 10px}
.site-foot ul{list-style:none;margin:0;padding:0}
.site-foot li{margin:7px 0}
.site-foot a{color:var(--muted);text-decoration:none}
.site-foot a:hover{color:var(--accent-text);text-decoration:underline}
.foot-legal{margin-top:34px;padding-top:20px;border-top:1px solid var(--line)}
.foot-legal p{margin:0 0 8px}
@media (max-width:980px){.foot-grid{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}}
@media (max-width:420px){.foot-grid{grid-template-columns:1fr}}
.page-head{margin:4px 0 26px}
.page-head h1{margin-top:4px}
.section{padding:64px 0}
.section.alt{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section-head{max-width:740px;margin:0 0 30px}
.section-head h2{margin:2px 0 10px}
.section-head p{color:var(--ink-2);font-size:17px;margin:0}
main>.wrap>.section{padding:40px 0 0}
@media (max-width:640px){.section{padding:46px 0}}
.doc h1{margin-top:4px}
.doc h2{font-size:22px}
.doc .kicker{margin:0}
.doc p,.doc li{color:var(--ink-2)}
.doc p.muted{color:var(--muted)}
.guide ol li{padding-left:4px}
.more-guides{margin-top:40px;padding:20px 22px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}
.more-guides h2{margin-top:0;font-size:18px}
.more-guides ul{margin:0}


.hero{position:relative;padding:56px 0 40px;background:
radial-gradient(900px 420px at 85% 10%,var(--wash),transparent 70%),radial-gradient(700px 360px at 5% 0%,var(--wash-2),transparent 70%)}
.hero-inner{display:grid;gap:40px;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center}
.hero h1{font-size:clamp(31px,4.2vw,50px);margin:0 0 18px}
.hero .lead{margin-bottom:24px}
.hero-note{font-size:14px;color:var(--muted);margin:16px 0 0;max-width:560px}
@media (max-width:960px){.hero-inner{grid-template-columns:1fr;gap:34px}.hero{padding-top:36px}}
.mock{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);overflow:hidden;min-width:0}
.mock-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--surface-2)}
.mock-bar i{width:10px;height:10px;border-radius:50%;background:var(--line-strong)}
.mock-title{font:600 13px/1.3 var(--font);color:var(--ink-2);margin-left:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}
.mock-bar .tag{font-size:11.5px;padding:2px 8px}
.mock-scroll{overflow-x:auto}
table.mini{font-size:13.5px}
table.mini th,table.mini td{padding:9px 10px}
table.mini thead th{font-size:11.5px;background:var(--surface)}
table.mini tbody th{font-weight:600;color:var(--ink);text-transform:none;letter-spacing:0;font-size:13.5px;background:var(--surface);white-space:nowrap}
table.mini tbody th small{display:block;font-weight:500;color:var(--muted);font-size:11.5px}
.roster-mock td{text-align:center;font-variant-numeric:tabular-nums;font-weight:600;padding:9px 6px;min-width:46px}
.roster-mock thead th{text-align:center;padding:9px 6px}.roster-mock thead th:first-child{text-align:left;padding-left:12px}
.roster-mock td.attended{background:var(--att);color:var(--att-ink)}.roster-mock td.short{background:var(--short);color:var(--short-ink)}
.roster-mock td.absent{background:var(--abs);color:var(--abs-ink)}.roster-mock td.unknown{background:var(--unk);color:var(--unk-ink)}
.mock figcaption{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;padding:11px 14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}
.key{display:inline-flex;align-items:center;gap:5px}
.key::before{content:"";width:11px;height:11px;border-radius:3px;background:var(--abs)}
.key.attended::before{background:var(--att);box-shadow:inset 0 0 0 1px var(--att-ink)}.key.short::before{background:var(--short);box-shadow:inset 0 0 0 1px var(--short-ink)}
.key.absent::before{box-shadow:inset 0 0 0 1px var(--abs-ink)}.key.unknown::before{background:var(--unk);box-shadow:inset 0 0 0 1px var(--unk-ink)}
.book-mock td{color:var(--ink-2)}
.sheet-tabs{display:flex;gap:2px;padding:0 10px;border-top:1px solid var(--line);background:var(--surface-2);overflow-x:auto}
.sheet-tabs span{font-size:12.5px;padding:7px 12px;color:var(--muted);border-top:2px solid transparent;white-space:nowrap}
.sheet-tabs span.on{color:var(--accent-text);border-top-color:var(--accent);background:var(--surface);font-weight:650}
.trust{list-style:none;margin:8px 0 0;padding:18px;display:grid;gap:14px 22px;grid-template-columns:repeat(4,minmax(0,1fr));
background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}
.trust li{display:flex;gap:11px;align-items:flex-start;font-size:14px;color:var(--muted)}
.trust li strong{display:block;color:var(--ink);font-size:14.5px}
.trust svg.i{color:var(--accent-text);margin-top:2px}
@media (max-width:900px){.trust{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.trust{grid-template-columns:1fr}}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr));counter-reset:step}
.steps li{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px 22px 18px;box-shadow:var(--shadow-sm);counter-increment:step}
.steps li::after{content:counter(step);position:absolute;top:18px;right:20px;font-size:13px;font-weight:700;color:var(--muted)}
.steps strong{display:block;font-size:17px;margin:12px 0 6px}
.steps p{margin:0;color:var(--ink-2);font-size:15px}
.step-icon,.feature-icon{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--accent-text);border:1px solid var(--accent-line)}
@media (max-width:860px){.steps{grid-template-columns:1fr}}
.features{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}
.feature{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px}
.feature strong{display:block;font-size:16.5px;margin:12px 0 6px}
.feature p{margin:0;color:var(--ink-2);font-size:15px}
@media (max-width:960px){.features{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.features{grid-template-columns:1fr}}
.sample{display:grid;gap:40px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}
.sample-copy h2{margin-top:2px}
@media (max-width:960px){.sample{grid-template-columns:1fr}}
.plans{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;margin:6px 0 18px}
.plan{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:24px;box-shadow:var(--shadow-sm)}
.plan.featured{border-color:var(--accent);box-shadow:var(--shadow-md),0 0 0 1px var(--accent)}
.plan-flag{position:absolute;top:-12px;left:22px;background:var(--accent);color:var(--accent-ink);font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px}
.plan h3{margin:0 0 6px;font-size:18px}
.plan-price{font-size:40px;font-weight:780;letter-spacing:-.03em;margin:0 0 14px;line-height:1.1}
.plan-per{display:block;font-size:14px;font-weight:500;color:var(--muted);letter-spacing:0;margin-top:4px}
.plan ul{flex:1;margin-bottom:20px}
.plan .btn{width:100%}
@media (max-width:900px){.plans{grid-template-columns:1fr;max-width:520px}}
.faq .qa{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);margin:10px 0;box-shadow:var(--shadow-sm)}
.faq .qa summary{list-style:none;padding:16px 48px 16px 18px;position:relative;font-size:16px}
.faq .qa summary::-webkit-details-marker{display:none}
.faq .qa summary::after{content:"+";position:absolute;right:18px;top:12px;font-size:22px;font-weight:400;color:var(--muted)}
.faq .qa[open] summary::after{content:"−"}
.faq .qa summary:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--r-lg)}
.faq .qa div{padding:0 18px 16px;color:var(--ink-2)}
.guide-cards{list-style:none;margin:0;padding:0;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}
.guide-cards a{display:block;height:100%;padding:20px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);
text-decoration:none;color:var(--ink);box-shadow:var(--shadow-sm);transition:border-color .15s,box-shadow .15s}
.guide-cards a:hover{border-color:var(--accent-line);box-shadow:var(--shadow-md)}
.guide-cards strong{display:block;margin:12px 0 4px;color:var(--accent-text)}
.guide-cards span:last-child{display:block;color:var(--ink-2);font-size:14.5px}
@media (max-width:700px){.guide-cards{grid-template-columns:1fr}}
.operator{display:flex;gap:18px;align-items:flex-start}
.avatar{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-weight:750}
@media (max-width:520px){.operator{flex-direction:column}}
.cta-band{background:var(--band);color:var(--band-ink);padding:60px 0;text-align:center;
background-image:radial-gradient(700px 300px at 50% 0%,rgba(255,255,255,.08),transparent 70%)}
.cta-band h2{color:var(--band-ink);margin:0 auto 12px;max-width:720px}
.cta-band p{max-width:640px;margin:0 auto 22px;opacity:.88}
.cta-band p.actions{justify-content:center;opacity:1;margin-bottom:0}
.wrap .cta-band{border-radius:var(--r-xl);margin:56px 0 0;padding:48px 0}
.wrap .cta-band .wrap{padding:0 20px}
.waitlist-hero{padding:52px 0 64px;background:radial-gradient(900px 420px at 90% 0%,var(--wash),transparent 70%)}
.waitlist{display:grid;gap:36px;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);align-items:start}
.waitlist h1{font-size:clamp(28px,3.8vw,42px)}
.waitlist-form{max-width:600px;padding:22px}
.waitlist-form label{margin-top:0}
.field-row{display:flex;gap:10px;flex-wrap:wrap}
.field-row input{flex:1 1 240px;max-width:none}
.field-row .btn{flex:none}
.waitlist-form .fine{margin:12px 0 0}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.waitlist-aside h2{font-size:18px;margin-top:0}
.waitlist-done h2{margin-top:0}
@media (max-width:900px){.waitlist{grid-template-columns:1fr}}
