:root{--navy:#0f1424;--navy-2:#16213b;--cyan:#5ec4e3;--cyan-deep:#1f8fb4;--mist:#f3f6f9;--ink:#182026;--muted:#5b6577;--line:#dde3ea;--ok:#1f9d55;--late:#d1435b;
--display:"Montserrat","Segoe UI",system-ui,sans-serif;--body:"Source Sans 3","Segoe UI",system-ui,sans-serif;--wrap:1080px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;font-family:var(--body);font-size:18px;line-height:1.6;color:var(--ink);background:#fff}
h1,h2,h3{font-family:var(--display);line-height:1.2;margin:0 0 .5em}
h1{font-size:clamp(30px,5vw,48px);font-weight:800}h2{font-size:clamp(24px,3.4vw,34px);font-weight:700}h3{font-size:19px;font-weight:700}
a{color:var(--cyan-deep)}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
header.top{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
header.top .logo{display:flex;align-items:center;gap:10px;text-decoration:none}header.top img{height:40px;width:auto;display:block}.brand{font-family:var(--display);font-weight:800;color:var(--navy);font-size:20px;line-height:1.1}.brand small{display:block;font-weight:500;font-size:11px;color:var(--muted)}header.top nav a{color:var(--navy);text-decoration:none;margin-left:22px;font-size:16px}
header.top nav a.btn{color:var(--navy)}
.btn{display:inline-block;background:var(--cyan);color:var(--navy);font-family:var(--display);font-weight:700;padding:14px 26px;border-radius:8px;text-decoration:none;border:0;cursor:pointer;font-size:17px}
.btn:hover{background:#7fd3ee}.btn.ghost{background:transparent;border:2px solid var(--cyan);color:var(--cyan)}
.btn.dark{background:var(--navy);color:#fff}.btn[disabled]{opacity:.6;cursor:wait}
.hero{background:linear-gradient(160deg,var(--navy),var(--navy-2));color:#fff;padding:72px 0 80px}
.hero p{color:#cbd5e1;max-width:640px;font-size:20px}.hero .eyebrow{color:var(--cyan);font-family:var(--display);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:14px}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.hero small{display:block;margin-top:14px;color:#94a3b8}
section{padding:64px 0}section.alt{background:var(--mist)}
.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px}
.card .n{font-family:var(--display);font-weight:800;font-size:34px;color:var(--cyan-deep)}
.card ul{padding-left:18px;margin:8px 0 0;font-size:16px;color:var(--muted)}
.steps{counter-reset:s;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.steps div{counter-increment:s;background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}
.steps div:before{content:counter(s);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--navy);color:var(--cyan);font-family:var(--display);font-weight:700;margin-bottom:10px}
.buy{display:grid;gap:28px;grid-template-columns:1fr 1fr;align-items:start}
@media(max-width:760px){.buy{grid-template-columns:1fr}header.top nav a:not(.btn){display:none}}
.price{font-family:var(--display);font-weight:800;font-size:46px;color:var(--navy)}.price small{font-size:16px;color:var(--muted);font-weight:500}
form label{display:block;font-weight:600;margin:14px 0 4px;font-size:16px}
form input[type=text],form input[type=email]{width:100%;padding:12px;border:1px solid #b9c3d0;border-radius:8px;font:inherit}
form .chk{display:flex;gap:10px;align-items:flex-start;margin:14px 0;font-size:15px;color:var(--muted)}form .chk input{margin-top:5px}
.hp{position:absolute;left:-9999px}.err{color:var(--late);font-size:15px;min-height:20px}
details{border:1px solid var(--line);border-radius:10px;padding:14px 18px;margin-bottom:10px;background:#fff}summary{font-weight:700;cursor:pointer}
.band{background:var(--navy);color:#fff;text-align:center}.band p{color:#cbd5e1;max-width:640px;margin:0 auto 24px}
footer{background:var(--navy);color:#94a3b8;font-size:15px;padding:32px 0}footer a{color:#cfe9f3}
.legal{max-width:780px;margin:0 auto;padding:48px 20px}.legal h2{margin-top:1.6em;font-size:22px}.draft{background:#fff7e0;border:1px solid #e8c766;padding:12px 16px;border-radius:8px;font-size:15px}
