:root{
  --ink:#0B1613; --ink2:#111F1B; --paper:#F6F7FB; --white:#fff;
  --teal:#0FB5A8; --teal-d:#0C9488; --amber:#FFB020; --amber-d:#E09400;
  --tx:#1A2B24; --mut:#5B6577; --mut2:#8B93A5; --line:#E4E8F1; --line-d:rgba(255,255,255,.1);
  --r:18px; --sh:0 18px 50px -18px rgba(11,22,19,.18);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font:16px/1.6 Manrope,system-ui,sans-serif;color:var(--tx);background:var(--white)}
a{color:inherit}
h1,h2,h3{font-family:Unbounded,Manrope,sans-serif;line-height:1.18;font-weight:600;letter-spacing:-.01em}
h2{font-size:clamp(26px,3.4vw,40px);margin-bottom:14px}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
section{padding:84px 0}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin-bottom:16px}
.eyebrow:before{content:"";width:26px;height:2px;background:var(--amber)}
.sub{color:var(--mut);font-size:17.5px;max-width:660px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--teal);color:#fff;border:none;border-radius:999px;padding:16px 30px;font:700 15.5px Manrope,sans-serif;cursor:pointer;text-decoration:none;transition:.22s;box-shadow:0 12px 28px -10px rgba(15,181,168,.55)}
.btn:hover{background:var(--teal-d);transform:translateY(-2px)}
.btn.amber{background:var(--amber);color:var(--ink);box-shadow:0 12px 28px -10px rgba(255,176,32,.5)}
.btn.amber:hover{background:var(--amber-d)}
.btn.ghost{background:transparent;color:var(--tx);border:1.5px solid var(--line);box-shadow:none}
.btn.ghost:hover{border-color:var(--teal);color:var(--teal)}
.btn.gw{background:transparent;color:#fff;border:1.5px solid var(--line-d);box-shadow:none}
.btn.gw:hover{border-color:var(--amber);color:var(--amber)}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}

header.site{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.hrow{display:flex;align-items:center;gap:14px;height:72px}
.logo{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-decoration:none;flex-shrink:0}
.logo .tagline{font:600 10.5px/1.2 Manrope,sans-serif;color:var(--mut2);letter-spacing:.03em;white-space:nowrap}
nav.nv{display:flex;gap:2px;flex:1;justify-content:center}
nav.nv a{text-decoration:none;font-size:14px;font-weight:600;color:var(--mut);padding:9px 12px;border-radius:999px;transition:.18s;white-space:nowrap}
nav.nv a:hover{color:var(--ink);background:var(--paper)}
.hbtns{display:flex;gap:10px;align-items:center;flex-shrink:0;margin-left:auto}
.hbtn{padding:11px 18px;font-size:13.5px;white-space:nowrap}
@media(max-width:560px){.logo .tagline{display:none}}
@media(max-width:1080px){nav.nv{display:none}}
@media(max-width:520px){.hbtn.ghost{display:none}}

footer.site{background:var(--ink);color:#AEB8C6;padding:52px 0 40px;font-size:14px}
footer.site .frow{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;padding-bottom:26px;border-bottom:1px solid var(--line-d);margin-bottom:22px}
footer.site .flinks{display:flex;gap:20px;flex-wrap:wrap}
footer.site .flinks a{text-decoration:none;color:#AEB8C6}
footer.site .flinks a:hover{color:#fff}
footer.site .flegal{font-size:12.5px;line-height:1.8;color:#7C8798}
footer.site .flegal a{color:#AEB8C6}

/* формы */
.authbox{max-width:440px;margin:70px auto;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:38px 34px}
.authbox h1{font-size:24px;margin-bottom:8px}
.authbox .hint{color:var(--mut);font-size:14px;margin-bottom:24px}
.fld{margin-bottom:16px}
.fld label{display:block;font-size:13px;font-weight:700;color:var(--mut);margin-bottom:6px}
.fld input{width:100%;padding:13px 15px;border:1.5px solid var(--line);border-radius:12px;font:15px Manrope,sans-serif;transition:.15s;background:#fff;color:var(--tx)}
.fld input:focus{outline:none;border-color:var(--teal)}
.formerr{display:none;background:#FEF2F2;color:#B91C1C;border:1px solid #FECACA;border-radius:10px;padding:10px 14px;font-size:13.5px;margin-bottom:16px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:26px 28px;box-shadow:0 6px 22px -14px rgba(11,22,19,.14)}
.badge{display:inline-block;padding:4px 12px;border-radius:999px;font-size:12.5px;font-weight:700}
.badge.ok{background:#ECFDF5;color:#047857}
.badge.warn{background:#FFFBEB;color:#B45309}
.badge.bad{background:#FEF2F2;color:#B91C1C}
