:root{--ink:#0B0F14;--slate:#1B2633;--raised:#141B23;--paper:#F4F7FA;--muted:#9AA6B2;--lime:#C8F542;--line:#26313E;
  font:17px/1.6 "Inter","Segoe UI","Helvetica Neue",Arial,sans-serif;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--ink);color:var(--paper)}
a{color:var(--lime)}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.narrow{max-width:720px}
.nav{display:flex;align-items:center;justify-content:space-between;padding-top:22px;padding-bottom:22px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:22px;color:var(--paper);text-decoration:none;letter-spacing:-.5px}
.logo img{width:34px;height:34px}.logo span{color:var(--lime)}
.nav nav a{color:var(--muted);text-decoration:none;margin-left:22px;font-size:15px}.nav nav a:hover{color:var(--paper)}
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;padding-top:48px;padding-bottom:72px}
.kicker{color:var(--lime);font-weight:700;letter-spacing:1.5px;text-transform:uppercase;font-size:13px}
h1{font-size:clamp(40px,6vw,68px);line-height:1.04;letter-spacing:-2px;margin:14px 0 20px}
h1 span{color:var(--lime)}
h2{font-size:32px;letter-spacing:-.8px;margin:0 0 10px}
h3{margin:0 0 6px;font-size:19px}
.lead{color:#C4CDD6;font-size:19px;max-width:42em}
.hero-art{background:radial-gradient(80% 80% at 50% 45%,var(--slate),var(--ink));border:1px solid var(--line);border-radius:28px;padding:40px;display:grid;place-items:center}
.hero-art img{width:100%;max-width:320px}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:14px;font-weight:700;text-decoration:none;border:1px solid var(--line);color:var(--paper);background:transparent;font:inherit;font-weight:700;cursor:pointer}
.btn.primary{background:var(--lime);color:var(--ink);border-color:var(--lime)}
.btn small{display:block;font-weight:500;font-size:12px;opacity:.75}
section{padding:56px 0}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
.card{background:var(--raised);border:1px solid var(--line);border-radius:20px;padding:24px}
.card p{color:#C4CDD6;margin:0}
.num{font-size:44px;font-weight:800;color:var(--lime);letter-spacing:-1.5px;line-height:1}
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
.steps .card::before{counter-increment:s;content:counter(s);display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--lime);color:var(--ink);font-weight:800;margin-bottom:14px}
.platforms{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:24px}
.platforms .card{padding:18px}.platforms b{display:block}.platforms span{color:var(--muted);font-size:14px}
.ok{color:var(--lime)}
form.card label{display:block;margin:0 0 16px;font-weight:600}
form.card input,form.card textarea,form.card select{display:block;width:100%;margin-top:6px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--ink);color:var(--paper);font:inherit}
form.card small{display:block;color:var(--muted);font-weight:400;margin-top:4px}
.amounts{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.amounts button{padding:8px 14px;border-radius:10px;border:1px solid var(--line);background:transparent;color:var(--paper);font:inherit;cursor:pointer}
.hp{position:absolute;left:-9999px}
footer{border-top:1px solid var(--line);padding:28px 24px;color:var(--muted);font-size:14px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
footer a{color:var(--muted);margin-right:18px}
.prose h2{font-size:22px;margin-top:32px}.prose p,.prose li{color:#C4CDD6}
@media (max-width:820px){.hero,.grid3,.steps{grid-template-columns:1fr}.hero-art{order:-1;padding:24px}.nav nav a{margin-left:14px}}
.logo b{font-weight:800}
.grid3+.grid3{margin-top:20px}
.platforms{grid-template-columns:repeat(6,1fr)}
.platforms span.ok{color:var(--lime)}
@media (max-width:820px){.platforms{grid-template-columns:repeat(2,1fr)}}
/* Pro, help, unlock pages */
.price{display:flex;align-items:baseline;gap:10px;margin:8px 0 4px}.price b{font-size:56px;letter-spacing:-2px;line-height:1}.price span{color:var(--muted)}
.pro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:start;margin-top:28px}
.ticks{list-style:none;padding:0;margin:16px 0}.ticks li{padding:8px 0 8px 34px;position:relative;color:#C4CDD6;border-bottom:1px solid var(--line)}
.ticks li::before{content:"";position:absolute;left:0;top:12px;width:20px;height:20px;border-radius:6px;background:var(--lime);-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M4 10l4 4 8-8" stroke="black" stroke-width="3" fill="none"/></svg>') center/contain no-repeat;mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M4 10l4 4 8-8" stroke="black" stroke-width="3" fill="none"/></svg>') center/contain no-repeat}
.ticks li b{color:var(--paper)}
.free li::before{background:var(--muted)}
.notice{border-color:#3a4a20;background:#151d0c}
.faq details{background:var(--raised);border:1px solid var(--line);border-radius:16px;padding:16px 20px;margin:10px 0}
.faq summary{cursor:pointer;font-weight:700}.faq details p,.faq details li{color:#C4CDD6}
.unlock-grid{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:start;margin:24px 0}
.qr-card{margin:0;text-align:center}.qr-card canvas{background:#fff;border-radius:12px;max-width:100%;image-rendering:pixelated}.qr-card figcaption{color:#C4CDD6;font-size:15px;margin-top:10px;max-width:300px}
.code{font-family:ui-monospace,"Cascadia Mono",Menlo,monospace;font-size:15px;line-height:1.7;word-break:break-all;background:var(--ink);border:1px solid var(--line);border-radius:12px;padding:14px;color:var(--paper)}
.label{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin:0 0 6px}
.hint{color:var(--muted);font-size:14px}.mono{font-family:ui-monospace,Menlo,monospace}
.toc{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.toc a{border:1px solid var(--line);border-radius:999px;padding:6px 14px;color:var(--paper);text-decoration:none;font-size:14px}.toc a:hover{border-color:var(--lime)}
.help-topic{scroll-margin-top:20px}
@media (max-width:820px){.pro-grid,.unlock-grid{grid-template-columns:1fr}}
.compare{width:100%;border-collapse:collapse;font-size:15px;min-width:640px}
.compare th,.compare td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);color:#C4CDD6}
.compare th{color:var(--paper);font-size:14px}.compare th:nth-child(2){color:var(--lime)}
.compare td:first-child{color:var(--paper);font-weight:600}.compare td.y{color:var(--paper)}
.compare tr:last-child td{border-bottom:0}
.grid3 .num{font-size:34px}
@media (max-width:520px){.nav nav a{margin-left:12px;font-size:14px}.nav nav a[href*="#how"],.nav nav a[href*="#uses"]{display:none}.hero{padding-top:16px}.grid3 .num{font-size:28px}}
/* Activation and devices */
.flash{border-radius:12px;padding:12px 16px;margin:16px 0;font-weight:600}.flash.bad{background:#3a1b20;border:1px solid #7a2e38;color:#ffd5da}.flash.ok{background:#16301f;border:1px solid #2f6b44;color:#d6f5e0}
.code.key{font-size:clamp(15px,2vw,21px);letter-spacing:.5px;text-align:center;white-space:nowrap;word-break:normal;overflow-x:auto}
table.devices{width:100%;border-collapse:collapse}table.devices th,table.devices td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line)}table.devices th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:1px}table.devices form{margin:0}
.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--paper)}
.price-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.price-pair .card{display:flex;flex-direction:column;gap:8px}.price-pair .amount{font-size:34px;font-weight:800}.price-pair .save{color:var(--lime);font-weight:700}
@media (max-width:640px){.price-pair{grid-template-columns:1fr}}
