:root{
  --bg:#eef4f2; --surface:#fff; --surface2:#f6faf9; --ink:#0d1c1f; --muted:#56696c; --line:#d6e2df;
  --accent:#0b8a7c; --accent-ink:#fff; --accent-soft:#d5efea; --good:#12805c; --good-soft:#dcf2e8;
  --f-display:"Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;
  --f-body:"Figtree", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0a1314; --surface:#111e20; --surface2:#15262a; --ink:#e4efed; --muted:#93a8a7; --line:#223639;
  --accent:#2cc2ae; --accent-ink:#04201c; --accent-soft:#123c37; --good:#44c996; --good-soft:#12352a; color-scheme:dark }}
:root[data-theme="dark"]{
  --bg:#0a1314; --surface:#111e20; --surface2:#15262a; --ink:#e4efed; --muted:#93a8a7; --line:#223639;
  --accent:#2cc2ae; --accent-ink:#04201c; --accent-soft:#123c37; --good:#44c996; --good-soft:#12352a; color-scheme:dark }
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);font:16px/1.6 var(--f-body);-webkit-font-smoothing:antialiased}
a{color:var(--accent)}
.wrap{max-width:1040px;margin:0 auto;padding:0 16px}
header.nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font:800 20px var(--f-display)}
.logo{width:34px;height:34px;border-radius:10px;display:block}
.nav nav{display:flex;gap:16px;flex-wrap:wrap;font-weight:600}
.nav nav a{color:var(--ink);text-decoration:none}
.nav nav a:hover{color:var(--accent)}
.btn{display:inline-block;border:0;border-radius:12px;padding:12px 18px;background:var(--accent);color:var(--accent-ink);font-weight:700;text-decoration:none;cursor:pointer;font-size:15px}
.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}
h1,h2,h3{font-family:var(--f-display);letter-spacing:-.01em;line-height:1.15}
h1{font-size:clamp(32px,6vw,52px);font-weight:800;margin:24px 0 14px}
h2{font-size:clamp(24px,4vw,32px);font-weight:800;margin:0 0 12px}
h3{font-size:19px;font-weight:700;margin:0 0 8px}
.lead{font-size:clamp(17px,2.2vw,20px);color:var(--muted);max-width:640px}
section{padding:40px 0}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px}
.card p{margin:0;color:var(--muted)}
.step{font:800 13px var(--f-display);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.toggle{display:inline-flex;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:4px;gap:4px;margin:6px 0 18px;flex-wrap:wrap}
.toggle button{border:0;background:transparent;border-radius:999px;padding:8px 14px;font:600 14px var(--f-body);color:var(--ink);cursor:pointer}
.toggle button[aria-pressed="true"]{background:var(--accent);color:var(--accent-ink)}
.plan{display:flex;flex-direction:column;gap:10px}
.plan.featured{border:2px solid var(--accent)}
.badge{align-self:flex-start;font-size:12px;font-weight:700;color:var(--good);background:var(--good-soft);padding:3px 10px;border-radius:999px}
.price{font:800 30px var(--f-display);margin:4px 0 0;white-space:nowrap}
.price small{font:500 15px var(--f-body);color:var(--muted);display:block;white-space:nowrap}
.plan ul{margin:6px 0 10px;padding-left:20px;color:var(--ink)}
.plan li{margin:4px 0}
.plan .btn{margin-top:auto;text-align:center}
.note{font-size:14px;color:var(--muted)}
.legal{max-width:760px}
.legal h2{font-size:22px;margin:28px 0 8px}
.legal p,.legal li{color:var(--ink)}
footer{border-top:1px solid var(--line);margin-top:40px;padding:24px 0 40px;font-size:14px;color:var(--muted)}
footer .links{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:8px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
