:root{
--text-xs:clamp(.75rem,.7rem + .25vw,.875rem);--text-sm:clamp(.875rem,.8rem + .35vw,1rem);
--text-base:clamp(1rem,.95rem + .25vw,1.0625rem);--text-lg:clamp(1.125rem,1rem + .6vw,1.375rem);
--text-xl:clamp(1.5rem,1.2rem + 1.1vw,2.125rem);--text-2xl:clamp(1.9rem,1.2rem + 2.4vw,3.25rem);
--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;
--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;
--radius:10px;--maxw:1080px;
--bg:#fbfaf8;--surface:#ffffff;--surface-2:#f4f2ee;--line:#e2ded7;
--ink:#1a1a18;--ink-2:#4a4844;--ink-3:#77736c;--accent:#0b6e6e;--accent-ink:#ffffff;--warn:#8c2b1f;
}
[data-theme="dark"]{--bg:#141413;--surface:#1c1c1a;--surface-2:#232321;--line:#33332f;
--ink:#f2f0ec;--ink-2:#c3bfb7;--ink-3:#8e8a82;--accent:#4fb3ad;--accent-ink:#10201f;--warn:#e0846f;}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#141413;--surface:#1c1c1a;--surface-2:#232321;--line:#33332f;--ink:#f2f0ec;--ink-2:#c3bfb7;--ink-3:#8e8a82;--accent:#4fb3ad;--accent-ink:#10201f;--warn:#e0846f;}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.75;font-feature-settings:"palt" 1;letter-spacing:.01em}
.wrap{max-width:var(--maxw);margin:0 auto;padding-inline:var(--space-6)}
header.site{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;gap:var(--space-4);min-height:60px}
.brand{display:flex;align-items:center;gap:var(--space-2);font-weight:700;letter-spacing:.02em;font-size:var(--text-sm);text-decoration:none;color:var(--ink)}
.brand svg{color:var(--accent)}
nav.top{margin-left:auto;display:flex;align-items:center;gap:var(--space-4);font-size:var(--text-sm)}
nav.top a{color:var(--ink-2);text-decoration:none}nav.top a:hover{color:var(--ink)}
.tbtn{background:none;border:1px solid var(--line);color:var(--ink-2);border-radius:8px;width:34px;height:34px;cursor:pointer;display:grid;place-items:center}
section{padding-block:clamp(var(--space-12),6vw,var(--space-24))}
section+section{border-top:1px solid var(--line)}
h1,h2,h3{line-height:1.3;letter-spacing:-.01em;margin:0 0 var(--space-4)}
h1{font-size:var(--text-2xl);font-weight:700;max-width:22em}
h2{font-size:var(--text-xl);font-weight:700;max-width:26em}
h3{font-size:var(--text-lg);font-weight:600}
p{margin:0 0 var(--space-4);max-width:42em;color:var(--ink-2)}
.lede{font-size:var(--text-lg);color:var(--ink);max-width:36em}
.eyebrow{font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:var(--space-3)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:8px;background:var(--accent);color:var(--accent-ink);font-weight:600;font-size:var(--text-sm);text-decoration:none;border:1px solid var(--accent)}
.btn:hover{filter:brightness(1.08)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}
.grid{display:grid;gap:var(--space-4)}
@media(min-width:760px){.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:repeat(2,1fr)}}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-6)}
.card h3{margin-bottom:var(--space-2)}
.card p{font-size:var(--text-sm);margin-bottom:0}
.price{border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-6);background:var(--surface);display:flex;flex-direction:column;gap:var(--space-3)}
.price.feature{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}
.price .amt{font-size:var(--text-xl);font-weight:700;color:var(--ink);letter-spacing:-.02em}
.price .amt small{font-size:var(--text-sm);font-weight:500;color:var(--ink-3)}
.price ul{margin:0;padding-left:1.1em;font-size:var(--text-sm);color:var(--ink-2)}
.price ul li{margin-bottom:var(--space-1)}
.price .btn{margin-top:auto}
table{width:100%;border-collapse:collapse;font-size:var(--text-sm);margin-bottom:var(--space-4)}
th,td{text-align:left;padding:var(--space-3);border-bottom:1px solid var(--line);vertical-align:top}
th{color:var(--ink-3);font-weight:600;font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase}
td strong{color:var(--ink)}
.note{background:var(--surface-2);border:1px solid var(--line);border-left:3px solid var(--warn);border-radius:8px;padding:var(--space-4) var(--space-6);font-size:var(--text-sm);color:var(--ink-2)}
.note p{font-size:var(--text-sm);margin-bottom:var(--space-2)}.note p:last-child{margin-bottom:0}
.sample{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-4) var(--space-6);font-size:var(--text-sm);line-height:1.7}
.sample .ev{padding-block:var(--space-3);border-bottom:1px solid var(--line)}
.sample .ev:last-child{border-bottom:0}
.sample .tag{display:inline-block;font-size:var(--text-xs);font-weight:600;color:var(--accent);letter-spacing:.06em;text-transform:uppercase}
dl.faq{margin:0}
dl.faq dt{font-weight:600;margin-top:var(--space-6)}
dl.faq dd{margin:var(--space-2) 0 0;color:var(--ink-2);font-size:var(--text-sm);max-width:44em}
footer.site{border-top:1px solid var(--line);background:var(--surface-2);padding-block:var(--space-12);font-size:var(--text-sm)}
footer.site a{color:var(--ink-2)}
footer.site .cols{display:grid;gap:var(--space-6)}
@media(min-width:760px){footer.site .cols{grid-template-columns:2fr 1fr 1fr}}
.small{font-size:var(--text-xs);color:var(--ink-3)}
a{color:var(--accent)}
.legal h2{font-size:var(--text-lg);margin-top:var(--space-10)}
.legal table td:first-child{width:34%;color:var(--ink-3)}
