:root{--y:#f5b800;--dark:#16181c;--text:#1d1f24;--muted:#6b7078;--gray:#f2f3f5;--r:14px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Manrope,system-ui,sans-serif;color:var(--text);background:#fff;line-height:1.55}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.wrap{max-width:1200px;margin:0 auto;padding:0 16px}
h1{font-size:clamp(38px,6vw,72px);line-height:1.05;font-weight:800;margin:12px 0 20px}
h2{font-size:clamp(28px,4vw,42px);font-weight:800;margin-bottom:24px}
h3{font-size:20px;margin-bottom:8px}
.muted{color:var(--muted)}
.btn{display:inline-block;background:var(--y);color:#111;font-weight:700;padding:16px 28px;border-radius:10px;border:0;cursor:pointer;font:inherit;font-weight:700;transition:.2s}
.btn:hover{background:#ffc928;transform:translateY(-2px)}
.btn--ghost{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.5)}
.btn--ghost:hover{background:rgba(255,255,255,.1)}

.top{position:fixed;inset:0 0 auto;z-index:50;background:rgba(22,24,28,.92);backdrop-filter:blur(8px);color:#fff}
.top__in{display:flex;align-items:center;gap:32px;height:70px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:19px}
.logo__mark{background:var(--y);color:#111;width:38px;height:38px;border-radius:8px;display:grid;place-items:center;font-size:15px}
.nav{display:flex;gap:26px;margin-left:auto}
.nav a{opacity:.85}.nav a:hover{opacity:1;color:var(--y)}
.top__phone{font-weight:700;white-space:nowrap}
.burger{display:none;background:none;border:0;width:30px;cursor:pointer}
.burger span{display:block;height:2px;background:#fff;margin:6px 0}

.hero{min-height:100vh;color:#fff;display:flex;align-items:center;padding:110px 0 60px;
 background:linear-gradient(90deg,rgba(15,16,19,.92) 30%,rgba(15,16,19,.45)),var(--bg) center/cover}
.eyebrow{color:var(--y);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:14px}
.lead{max-width:560px;font-size:19px;opacity:.9}
.hero__btns{display:flex;gap:14px;flex-wrap:wrap;margin:34px 0 56px}
.facts{list-style:none;display:flex;gap:44px;flex-wrap:wrap}
.facts b{display:block;font-size:28px;color:var(--y)}
.facts span{opacity:.8;font-size:15px}

.sec{padding:96px 0}
.sec--dark{background:var(--dark);color:#fff}
.sec--dark .muted{color:#a4a9b1}
.sec--gray{background:var(--gray)}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{background:var(--gray);border-radius:var(--r);overflow:hidden;transition:.25s}
.card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,.12)}
.card img{aspect-ratio:4/3;object-fit:cover;width:100%}
.card__body{padding:22px}
.card p{color:var(--muted);font-size:15px}

.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.split__img{border-radius:var(--r);aspect-ratio:4/3;object-fit:cover;width:100%}
.list{list-style:none;margin:24px 0 32px}
.list li{padding:12px 0 12px 32px;border-bottom:1px solid #2c2f35;position:relative}
.list li:before{content:"";position:absolute;left:0;top:19px;width:14px;height:14px;background:var(--y);border-radius:3px}

.price{width:100%;border-collapse:collapse;margin-top:12px}
.price th,.price td{text-align:left;padding:18px 16px;border-bottom:1px solid #e3e5e8}
.price th{font-size:13px;text-transform:uppercase;color:var(--muted);letter-spacing:.05em}
.price td:last-child{font-weight:700;white-space:nowrap}
.price tbody tr:hover{background:var(--gray)}

.steps{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.steps li{background:#fff;border-radius:var(--r);padding:28px;counter-increment:s}
.steps li:before{content:"0" counter(s);display:block;font-size:40px;font-weight:800;color:var(--y);margin-bottom:8px}
.steps b{display:block;font-size:20px;margin-bottom:6px}
.steps span{color:var(--muted);font-size:15px}

.cta{color:#fff;background:linear-gradient(rgba(15,16,19,.82),rgba(15,16,19,.82)),var(--bg) center/cover}
.cta__in{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.cta p{opacity:.85;font-size:18px}
.form{background:#fff;color:var(--text);border-radius:var(--r);padding:32px;display:grid;gap:14px}
.form input,.form textarea{font:inherit;padding:15px 16px;border:1px solid #d7dade;border-radius:10px;width:100%}
.form input:focus,.form textarea:focus{outline:2px solid var(--y);border-color:transparent}
.form small{color:var(--muted);font-size:12px}
.ok{font-size:20px;font-weight:700;color:var(--text)!important;opacity:1!important}

.foot{background:var(--dark);color:#fff;padding:64px 0 28px}
.foot .muted{color:#a4a9b1}
.foot__grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px}
.foot h4{margin-bottom:12px;color:var(--y)}
.foot p{margin-top:10px}
.foot__credits{margin-top:48px;padding-top:20px;border-top:1px solid #2c2f35;font-size:12px;color:#7d828a}

@media (max-width:980px){
  .cards{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr 1fr}
  .split,.cta__in,.foot__grid{grid-template-columns:1fr}
  .nav{display:none;position:absolute;top:70px;left:0;right:0;flex-direction:column;gap:0;background:var(--dark);padding:8px 16px 16px}
  .nav.open{display:flex}.nav a{padding:12px 0}
  .burger{display:block}
  .top__phone{margin-left:auto}
}
@media (max-width:560px){
  .cards,.steps{grid-template-columns:1fr}
  .top__phone{display:none}.burger{margin-left:auto}
  .sec{padding:64px 0}.facts{gap:24px}
  .price th:nth-child(2),.price td:nth-child(2){display:none}
}

/* ---- UX pass ---- */
.skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--y);color:#111;padding:10px 16px;border-radius:8px;font-weight:700}
.skip:focus{left:16px}
:focus-visible{outline:3px solid var(--y);outline-offset:3px;border-radius:6px}
section[id],footer[id]{scroll-margin-top:70px}
.hero{min-height:100dvh}
.btn{min-height:48px;touch-action:manipulation}
.btn:active{transform:scale(.97)}
.btn:disabled{opacity:.5;cursor:wait;transform:none}
.burger{width:44px;height:44px;padding:7px}
.nav a{padding:10px 0}
.price td:last-child,.facts b{font-variant-numeric:tabular-nums}
.form label{font-weight:700;font-size:14px;margin-bottom:-8px}
.form input,.form textarea{font-size:16px;min-height:48px}
.form input[aria-invalid=true]{border-color:#c62828}
.err{color:#c62828;font-size:14px;margin-top:-8px;min-height:0}
.err:empty{display:none}
.muted{color:#5d626a}
.foot__credits{color:#9aa0a8}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
