:root{--canvas:#FDFBF7;--surface:#FFFFFF;--raised:#F6F2EA;--line:#E7E1D6;--ink:#17123A;--ink-2:#4A4560;--ink-3:#6E6980;--accent:#461DFB;--on-accent:#FFFFFF;--accent-soft:#EEE8FF;--lilac:#C8A6FC;--night:#0F074D;--radius-m:12px;--radius-l:18px;--radius-xl:24px;--shadow:0 1px 2px rgba(15,7,77,.05),0 12px 32px -12px rgba(15,7,77,.14);--sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,sans-serif}
@media (prefers-color-scheme:dark){:root{--canvas:#0F0B26;--surface:#17123A;--raised:#1E1848;--line:#2C2560;--ink:#F4F1FA;--ink-2:#C9C3DD;--ink-3:#9D97B4;--accent:#C8A6FC;--on-accent:#0F074D;--accent-soft:#251C5C}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--canvas);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--accent)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
header.top{position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--canvas) 86%,transparent);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo img{height:30px;display:block}.logo .dark{display:none}@media (prefers-color-scheme:dark){.logo .light{display:none}.logo .dark{display:block}}
nav.links{display:flex;gap:24px;align-items:center;font-size:15px}nav.links a{color:var(--ink-2);text-decoration:none}nav.links a:hover{color:var(--ink)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:999px;font-weight:600;font-size:15px;text-decoration:none;border:1px solid transparent;transition:transform .05s,background .12s cubic-bezier(.25,.1,.25,1)}
.btn:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{filter:brightness(1.08)}
.btn-ghost{border-color:var(--line);color:var(--ink);background:var(--surface)}.btn-ghost:hover{background:var(--raised)}
nav.links .btn,nav.links .btn:hover{padding:9px 18px;color:var(--on-accent)}
.hero{padding:96px 0 72px;text-align:center}
.eyebrow{display:inline-block;font-size:13px;font-weight:600;color:var(--accent);background:var(--accent-soft);padding:6px 12px;border-radius:999px;margin-bottom:24px}
h1{font:800 clamp(38px,6vw,64px)/1.05 var(--display);letter-spacing:-.025em;margin:0 auto 20px;max-width:15ch}
.lead{font-size:clamp(17px,2vw,20px);color:var(--ink-2);max-width:60ch;margin:0 auto 32px}
.cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
section{padding:72px 0}section.alt{background:var(--raised)}
h2{font:700 clamp(28px,3.6vw,40px)/1.15 var(--display);letter-spacing:-.02em;margin:0 0 12px}
.sub{color:var(--ink-2);margin:0 0 40px;max-width:62ch}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width:860px){.grid3{grid-template-columns:1fr}}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);padding:28px;box-shadow:var(--shadow)}
.card h3{margin:14px 0 8px;font-size:19px;letter-spacing:-.01em}.card p{margin:0;color:var(--ink-2)}
.ico{width:44px;height:44px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;list-style:none;padding:0;margin:0}@media (max-width:860px){.steps{grid-template-columns:1fr}}
.steps li{counter-increment:s;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);padding:24px}
.steps li::before{content:counter(s);display:grid;place-items:center;width:32px;height:32px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-weight:700;margin-bottom:12px}
.steps strong{display:block;font-size:17px;margin-bottom:4px}.steps span{color:var(--ink-2)}
.plans{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:stretch}@media (max-width:1240px){.plans{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.plans{grid-template-columns:1fr}}
.plan{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);padding:24px;box-shadow:var(--shadow)}
.plan.featured{border:2px solid var(--accent)}
.plan .tag{font-size:12px;font-weight:600;color:var(--ink-3);text-transform:none;margin-bottom:4px}
.plan h3{margin:0;font-size:20px}.plan .use{color:var(--ink-2);font-size:14px;margin:4px 0 16px;min-height:42px}
.price{font:800 clamp(22px,1.9vw,30px)/1.1 var(--display);letter-spacing:-.02em}.price small{display:block;margin-top:4px;font:500 14px var(--sans);color:var(--ink-3);letter-spacing:0}
.plan ul{list-style:none;padding:0;margin:18px 0 22px;display:grid;gap:9px;font-size:14px;color:var(--ink-2);flex:1}
.plan li{display:flex;gap:8px;align-items:flex-start}.plan li::before{content:"";flex:none;width:16px;height:16px;margin-top:3px;border-radius:999px;background:var(--accent);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.3 2.3 4.7-5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.3 2.3 4.7-5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.plan .btn{width:100%}
.fine{font-size:14px;color:var(--ink-3);margin-top:24px;max-width:80ch}
.faq{display:grid;gap:12px;max-width:820px}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);padding:16px 20px}
.faq summary{cursor:pointer;font-weight:600;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";float:right;color:var(--ink-3)}.faq details[open] summary::after{content:"–"}.faq p{margin:10px 0 0;color:var(--ink-2)}
footer{border-top:1px solid var(--line);padding:36px 0 48px;font-size:14px;color:var(--ink-3)}footer .wrap{display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between}footer a{color:var(--ink-2)}footer nav{display:flex;gap:20px;flex-wrap:wrap}
.doc{max-width:760px;padding:56px 24px 80px;margin:0 auto}.doc h1{font-size:clamp(30px,4vw,42px);max-width:none;text-align:left}.doc h2{font-size:22px;margin:36px 0 8px}.doc p,.doc li{color:var(--ink-2)}.doc .meta{color:var(--ink-3);font-size:14px}
@media (max-width:640px){nav.links a:not(.btn){display:none}.hero{padding:64px 0 48px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
.notice{display:flex;gap:12px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius-m);padding:16px 20px;margin:0 0 28px;color:var(--ink-2);max-width:900px}.notice strong{color:var(--ink)}
.skip{position:absolute;left:-9999px;top:8px;background:var(--accent);color:var(--on-accent);padding:8px 14px;border-radius:999px;z-index:10}.skip:focus{left:16px}
