:root{--bg:#07131f;--bg2:#0d2236;--ice:#7fd4ff;--ice2:#d6f1ff;--txt:#e8f3fb;--mut:#9db5c7;--line:#1c3a54}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--txt);font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--ice)}.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
header{position:sticky;top:0;z-index:5;background:#07131fe6;backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}
.logo{font-weight:800;letter-spacing:.14em;color:var(--ice2);text-decoration:none}
nav a{margin-left:20px;text-decoration:none;color:var(--mut);font-size:15px}nav a:hover{color:var(--ice2)}
.hero{min-height:78vh;display:grid;align-items:center;text-align:center;padding:90px 0;
 background:linear-gradient(180deg,#07131f55,#07131f 100%),url(/static/img/hero.jpg) center/cover no-repeat,radial-gradient(circle at 50% 0,#1a5f8a,#07131f 70%)}
.hero h1,.hero p{text-shadow:0 2px 18px #000a}
.hero h1{font-size:clamp(34px,7vw,68px);line-height:1.05;margin:0 0 16px;letter-spacing:.04em}
.hero p{color:var(--ice2);max-width:640px;margin:0 auto 28px;font-size:20px}
.btn{display:inline-block;border:0;border-radius:12px;padding:13px 26px;font:600 16px inherit;background:var(--ice);color:#04202f;cursor:pointer;text-decoration:none}
.btn:hover{background:var(--ice2)}.btn.ghost{background:none;border:1px solid var(--line);color:var(--ice2)}
section{padding:72px 0}h2{font-size:clamp(26px,4vw,38px);margin:0 0 24px;letter-spacing:.02em}
.about{background:var(--bg2)}.about p{max-width:760px}
.grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.card{background:var(--bg2);border:1px solid var(--line);border-radius:18px;padding:26px;display:flex;flex-direction:column}
.card h3{margin:0 0 6px;font-size:22px}.price{font-size:30px;font-weight:800;color:var(--ice);margin:8px 0 14px}
.card ul{padding-left:20px;margin:0 0 14px}.card small{color:var(--mut);display:block;margin-bottom:18px}
.card .btn{margin-top:auto;text-align:center}
.steps{counter-reset:s;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.steps div{border-left:3px solid var(--ice);padding:4px 0 4px 16px;counter-increment:s}.steps div:before{content:counter(s);color:var(--ice);font-weight:800;display:block}
.motto{text-align:center;background:linear-gradient(135deg,#0d2236,#12466b);font-size:clamp(20px,4vw,32px);font-weight:700;letter-spacing:.08em}
footer{padding:40px 0;color:var(--mut);font-size:14px;border-top:1px solid var(--line)}footer a{margin-right:18px}
.modal{position:fixed;inset:0;background:#000b;display:none;place-items:center;z-index:10;padding:16px}.modal.on{display:grid}
.box{background:var(--bg2);border:1px solid var(--line);border-radius:18px;padding:28px;max-width:440px;width:100%}
.box h3{margin:0 0 4px}.box input[type=email]{width:100%;padding:13px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--txt);font-size:16px;margin:14px 0}
.box label{display:flex;gap:10px;font-size:14px;color:var(--mut);margin-bottom:14px}.err{color:#ff8a8a;min-height:22px;font-size:14px}
.banner{background:var(--ice);color:#04202f;text-align:center;padding:10px;display:none}.banner a{color:#04202f;font-weight:700}
