﻿/* в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ
   BOVID KAMAZ landing вЂ” styles (LIGHT / KAMAZ brand palette)
   Mobile-first. Breakpoints: 480 / 768 / 1200.
   Palette: white + #203a4c navy (KAMAZ brandbook / BOVID logo) + #ffb020 premium gold + graphite text.
в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */

:root {
  /* Base surfaces */
  --bg:          #ffffff;      /* page background */
  --surface:     #ffffff;      /* cards */
  --surface-2:   #f4f6f9;      /* alt sections, inputs */
  --surface-3:   #eef1f5;      /* subtle striping */

  /* Ink (text) */
  --ink:         #0f1720;      /* primary headings */
  --ink-body:    #1f2a37;      /* body text */
  --ink-dim:     #4a5565;      /* secondary text */
  --ink-mute:    #7b8594;      /* captions / kickers */

  /* Lines */
  --line:        #e3e8ef;
  --line-strong: #c9d2df;

  /* Brand accent — BOVID corporate deep-blue (reserved for primary actions / buttons) */
  --accent:         #2e4090;   /* new brand blue */
  --accent-hover:   #243373;   /* darker hover */
  --accent-soft:    #eef0fa;   /* very light tint for highlights */
  --accent-border:  #c5cce4;
  --accent-rgb:     46, 64, 144;

  /* Secondary highlight — white (replaces former yellow/gold premium accent) */
  --gold:           #ffffff;
  --gold-soft:      rgba(255,255,255,.16);
  --gold-border:    rgba(255,255,255,.40);

  /* Hero navy overlay вЂ” warmer than graphite */
  --hero-navy-1:    rgba(10, 22, 40, 0.82);
  --hero-navy-2:    rgba(10, 22, 40, 0.55);
  --hero-navy-3:    rgba(10, 22, 40, 0.15);

  /* Utility */
  --ok:          #12a150;
  --shadow-sm:   0 1px 2px rgba(15,23,32,.06);
  --shadow-md:   0 10px 28px -14px rgba(15,23,32,.18);
  --shadow-lg:   0 24px 60px -22px rgba(15,23,32,.25);

  --radius:      14px;
  --radius-lg:   20px;
  --container:   1200px;
  --gutter:      20px;
  --font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html, body { overflow-x: hidden; max-width: 100%; }
:target, #lead-form, #hero-cta, #models, #top, #trailer-promo, #killer-deal, #calc { scroll-margin-top: 20px; }
/* Topbar СЃРєСЂС‹С‚ вЂ” hero Р·Р°РЅРёРјР°РµС‚ РІРµСЃСЊ РїРµСЂРІС‹Р№ СЌРєСЂР°РЅ */
.topbar { display: block; }
img { max-width: 100%; height: auto; }

/* Keyboard accessibility вЂ” consistent focus ring */
:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; border-radius: 6px; }
.btn:focus-visible { outline: 3px solid #fff; box-shadow: 0 0 0 5px var(--accent); }
body {
  margin: 0;
  font-family: var(--font);
  font-size: 16px;
  line-height: 1.55;
  color: var(--ink-body);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img { max-width: 100%; display: block; }
a { color: var(--ink); text-decoration: none; }
a:hover { color: var(--accent); }

.container {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 var(--gutter);
}

.skip {
  position: absolute; left: -9999px; top: 0;
  background: var(--accent); color: #fff; padding: 10px 16px; z-index: 999;
}
.skip:focus { left: 12px; top: 12px; }

/* в”Ђв”Ђ Typography utilities в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.h2 {
  color: var(--ink);
  font-size: 28px;
  line-height: 1.18;
  font-weight: 800;
  letter-spacing: -0.01em;
  margin: 6px 0 18px;
}
.kicker {
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  font-weight: 700;
  color: var(--accent);
  margin: 0 0 8px;
}
.eyebrow {
  display: inline-block;
  padding: 7px 14px;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 999px;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #ffffff;
  margin: 0 0 20px;
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
  background: rgba(15,23,32,.35);
}
.accent { color: var(--accent); }

/* в”Ђв”Ђ Buttons в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 22px;
  border: 0;
  border-radius: 10px;
  font-family: inherit;
  font-weight: 700;
  font-size: 15px;
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
  transition: transform .12s ease, background .18s ease, box-shadow .18s ease, color .18s ease;
  text-decoration: none;
}
.btn--primary {
  background: var(--accent);
  color: #fff;
  box-shadow: 0 10px 24px -12px rgba(var(--accent-rgb),.55);
}
.btn--primary:hover { background: var(--accent-hover); color: #fff; transform: translateY(-1px); }
.btn--ghost {
  background: #ffffff;
  color: var(--ink);
  border: 1px solid var(--line-strong);
}
.btn--ghost:hover { background: var(--accent-soft); color: var(--accent); border-color: var(--accent-border); }
.btn--lg { padding: 14px 22px; font-size: 15px; }
.btn--sm { padding: 10px 16px; font-size: 14px; }

/* в”Ђв”Ђ Header в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.topbar {
  position: sticky;
  top: 0;
  z-index: 40;
  background: rgba(255,255,255,.92);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--line);
}
.topbar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px var(--gutter);
  min-height: 60px;
}
/* Logo — horizontal layout: image + thin vertical divider + dealer caption,
   matches kamaz74.ru / tdbovid.ru navbar pattern. Subtitle hidden on mobile. */
.logo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--ink);
  text-decoration: none;
  line-height: 1.1;
}
.logo__img {
  display: block;
  height: 48px;
  width: auto;
  image-rendering: -webkit-optimize-contrast;  /* sharper raster downscale in Chromium */
}
.logo__mark { font-weight: 800; font-size: 22px; letter-spacing: .02em; color: var(--accent); display: inline-flex; align-items: baseline; gap: 6px; }
.logo__est  { font-size: 11px; font-weight: 700; color: var(--gold); letter-spacing: .08em; padding: 2px 6px; background: var(--gold-soft); border-radius: 4px; }
.logo__sub {
  display: none;                              /* hidden by default — appears only on ≥768px */
  font-size: 11px;
  font-weight: 600;
  color: var(--ink-mute);
  text-transform: uppercase;
  /* letter-spacing: .1em; */
  padding-left: 12px;
  border-left: 1px solid var(--line-strong);
  max-width: 220px;
  line-height: 1.35;
}
@media (min-width: 768px) { .logo__sub { display: inline-block; } }
@media (max-width: 480px) { .logo__img { height: 38px; } }
.footer__logo { display: block; height: 48px; width: auto; margin-bottom: 10px; }
.topbar__right { display: flex; align-items: center; gap: 10px; }

/* Кнопки в навбаре на ПК — одинаковые по высоте, паддингам, font-weight.
   Отличаются только цветом (ghost vs primary), как на special.kamaz74.ru. */
@media (min-width: 768px) {
  .topbar .callbtn,
  .topbar .btn--sm {
    height: 44px;
    padding: 0 18px;
    font-size: 14px;
    font-weight: 700;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    line-height: 1;
    letter-spacing: .01em;
    box-sizing: border-box;
  }
  .topbar .callbtn { min-width: 130px; }
  .topbar .btn--sm { min-width: 140px; }
}
.phone { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: var(--ink); }
.phone__num { font-size: 15px; }
.phone__icon { opacity: .9; }

/* РљРЅРѕРїРєР° В«РџРѕР·РІРѕРЅРёС‚СЊВ» вЂ” Р·Р°РјРµРЅСЏРµС‚ РІРёРґРёРјС‹Рµ РЅРѕРјРµСЂР° */
.callbtn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 9px 16px;
  border-radius: 10px;
  background: var(--surface-2);
  border: 1px solid var(--line-strong);
  color: var(--ink);
  font-weight: 700; font-size: 14px;
  transition: background .15s, border-color .15s, color .15s, transform .12s;
  cursor: pointer;
  white-space: nowrap;
}
.callbtn:hover { background: var(--accent-soft); border-color: var(--accent-border); color: var(--accent); }
.callbtn:active { transform: scale(.97); }
.callbtn__ico { font-size: 15px; }

/* РљР°СЂС‚РѕС‡РєР° РјРµРЅРµРґР¶РµСЂР°: В«РџРѕР·РІРѕРЅРёС‚СЊ РјРµРЅРµРґР¶РµСЂСѓВ» РІРјРµСЃС‚Рѕ РЅРѕРјРµСЂР° */
.manager__call {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  width: fit-content;
  margin: 18px auto 0;             /* центр по горизонтали через auto-margin */
  padding: 11px 18px;
  border-radius: 10px;
  background: var(--accent);
  color: #fff;
  font-weight: 700; font-size: 14px;
  transition: background .15s, transform .12s, box-shadow .18s;
  box-shadow: 0 8px 18px -10px rgba(var(--accent-rgb),.55);
}
.manager__call:hover { background: var(--accent-hover); color: #fff; transform: translateY(-1px); box-shadow: 0 12px 22px -10px rgba(var(--accent-rgb),.65); }
.manager__call:active { transform: scale(.97); }

/* РљРЅРѕРїРєР° РІ footer */
.footer__call {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 10px 16px;
  border-radius: 8px;
  background: var(--accent);
  color: #fff !important;
  font-weight: 700; font-size: 14px;
  transition: background .15s, transform .12s;
}
.footer__call:hover { background: var(--accent-hover); color: #fff !important; transform: translateY(-1px); }

@media (max-width: 640px) {
  .callbtn__txt { display: none; }
  .callbtn { padding: 9px 11px; }
}

@media (max-width: 640px) {
  .phone__num { display: none; }
  .topbar__right .btn { padding: 9px 12px; font-size: 13px; }
}

/* в”Ђв”Ђ Hero в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.hero {
  position: relative;
  overflow: hidden;
  color: #fff;                  /* text on image side */
  background: #0f1720;          /* fallback before image loads */
  min-height: 100vh;
  min-height: 100svh;
}
.hero__bg {
  position: absolute; inset: 0;
  background:
    linear-gradient(90deg,
      var(--hero-navy-1) 0%,
      var(--hero-navy-2) 45%,
      var(--hero-navy-3) 70%,
      rgba(10,22,40,.02) 100%),
    linear-gradient(180deg,
      rgba(10,22,40,.35) 0%,
      rgba(10,22,40,0) 30%,
      rgba(10,22,40,0) 70%,
      rgba(10,22,40,.25) 100%),
    url('./hero.png') center/cover no-repeat;
}
.hero__inner {
  position: relative;
  min-height: inherit;
  padding: 24px 20px 24px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.hero__content { max-width: 620px; width: 100%; }
.hero__title {
  font-size: clamp(26px, 3.6vw, 40px);
  line-height: 1.08;
  letter-spacing: -0.02em;
  font-weight: 800;
  margin: 0 0 10px;
  color: #fff;
  text-shadow: 0 2px 24px rgba(0,0,0,.45);
}
.hero__accent {
  display: inline-block;
  color: var(--gold);
  text-shadow: 0 2px 16px rgba(0,0,0,.55);
}
/* «КАМАЗ» в hero — фирменный синий с белым halo для читаемости на тёмном overlay */
.hero__brand {
  color: var(--accent);                       /* #2e4090 — точный brandbook-цвет */
  font-weight: 900;                           /* тяжелее основного title, как «штамп» */
  letter-spacing: .005em;
  text-shadow:
    0 0 12px rgba(255, 255, 255, 0.55),       /* white halo — лифтит с тёмного фона */
    0 2px 18px rgba(0, 0, 0, 0.5);            /* dark drop — заземляет */
}
.hero__lead {
  font-size: 14.5px;
  line-height: 1.4;
  color: rgba(255, 255, 255, .92);
  max-width: 460px;
  margin: 8px 0 10px;
  text-wrap: balance;             /* красивые переносы строк, равная длина */
  letter-spacing: .005em;
}
.hero__usp {
  list-style: none;
  padding: 0;
  margin: 0 0 10px;
  display: grid;
  gap: 4px;
}
.hero__usp li {
  /* icon is absolutely placed вЂ” text flows as normal inline */
  position: relative;
  padding-left: 32px;
  min-height: 22px;
  font-size: 13.5px;
  line-height: 1.5;
  color: rgba(255,255,255,.94);
}
.hero__usp li .check {
  position: absolute; left: 0; top: 1px;
  background: #ffffff;          /* белый кружок поверх тёмного overlay */
  color: var(--accent);         /* брендовая синяя галка */
}
/* Кликабельный USP — ведёт на #trailer-promo */
.hero__usp-link { font-weight: 500; }
.hero__usp-anchor {
  color: #fff;
  text-decoration: underline;
  text-decoration-color: rgba(var(--accent-rgb), .55);   /* gold soft underline */
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  transition: text-decoration-color .15s, color .15s;
}
.hero__usp-anchor:hover,
.hero__usp-anchor:focus-visible {
  color: var(--gold);
  text-decoration-color: var(--gold);
}
.hero__usp-arrow {
  display: inline-block;
  margin-left: 4px;
  color: var(--gold);
  font-weight: 800;
  transition: transform .18s ease;
}
.hero__usp-anchor:hover .hero__usp-arrow { transform: translateX(3px); }
.hero__killer {
  margin: 2px 0 10px;
  padding: 8px 12px 10px;
  border-radius: 10px;
  background: linear-gradient(135deg, rgba(var(--accent-rgb), .18) 0%, rgba(var(--accent-rgb),.14) 100%);
  border: 1px solid rgba(var(--accent-rgb), .45);
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  position: relative; overflow: hidden;
}
.hero__killer::before {
  content: ''; position: absolute; inset: 0 0 auto 0; height: 2px;
  background: linear-gradient(90deg, var(--gold), var(--accent), var(--gold));
  background-size: 200% 100%;
  animation: killerShine 3s linear infinite;
}
@keyframes killerShine { from { background-position: 0 0; } to { background-position: -200% 0; } }
.hero__killer-tag {
  display: inline-block; padding: 3px 9px; margin-bottom: 4px;
  background: var(--accent); color: #ffffff;     /* брендовый синий pill */
  font-size: 9px; font-weight: 900; letter-spacing: .1em;
  border-radius: 4px;
}
.hero__killer-title { margin: 0 0 3px; font-size: 15px; font-weight: 800; color: #fff; line-height: 1.2; }
.hero__killer-title b { color: var(--gold); font-size: 18px; }
.hero__killer-desc { margin: 0; font-size: 12.5px; line-height: 1.4; color: rgba(255,255,255,.88); }
.hero__killer-desc b { color: var(--gold); font-weight: 800; }

/* CTA РІ hero РІРјРµСЃС‚Рѕ С„РѕСЂРјС‹ вЂ” Р·Р°СЏРІРєР° С‡РµСЂРµР· РїРѕРїР°Рї */
.hero__cta {
  margin-top: 6px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
}
.hero__cta-note {
  margin: 0;
  font-size: 13px;
  line-height: 1.35;
  color: rgba(255, 255, 255, 0.88);
}
.hero .hero__cta .btn--lg {
  width: 100%;
}

/* ── Hero — mobile compact layout (≤1023px) ───────────────────────────
   Один viewport: title сверху, USPs в glass-card снизу, фото грузовика
   заполняет середину. Лид/in-hero CTA/killer-карточка скрыты — они
   повторяются ниже на странице (sticky-mobile bar + #killer-deal). */
@media (max-width: 1023px) {
  .hero { min-height: 100svh; }
  .hero__inner {
    padding: 20px 20px 92px;          /* 92px снизу — место под sticky-mobile bar */
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    min-height: inherit;
  }
  .hero__content {
    display: flex;
    flex-direction: column;
    flex: 1;
    max-width: 100%;
    width: 100%;
  }
  .hero__title {
    font-size: clamp(26px, 7vw, 34px);
    line-height: 1.08;
    margin: 0;
  }
  .hero__accent {
    margin-top: 6px;
    color: #ffffff;                   /* брендово-белый, без жёлтого */
  }
  /* Лид теперь компактный (одна фраза, ~50 символов) — оставляем на мобайле.
     Killer-карточку и in-hero CTA скрываем — они дублируют sticky-bar и #killer-deal. */
  .hero__lead {
    font-size: 13.5px;
    line-height: 1.4;
    margin: 6px 0 0;
    color: rgba(255, 255, 255, .9);
    max-width: 320px;
    text-wrap: balance;
  }
  .hero__killer  { display: none; }
  .hero__cta     { display: none; }

  /* USPs — финальный glass-card внизу hero, поверх фото */
  .hero__usp {
    margin: auto 0 0;                 /* auto-margin прижимает к низу flex-контейнера */
    padding: 14px 16px;
    background: rgba(10, 22, 40, 0.78);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 14px;
    -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
    box-shadow: 0 14px 36px -18px rgba(0, 0, 0, 0.65);
    gap: 8px;
  }
  .hero__usp li {
    font-size: 13.5px;
    padding-left: 30px;
    min-height: 22px;
    line-height: 1.45;
  }
  .hero__usp li .check {
    width: 20px; height: 20px;
    font-size: 11px;
    top: 1px;
  }
}

/* ── Hero — desktop redesign (≥1024px) ───────────────────────────────
   Двухколоночный лейаут: текст слева, killer-карточка справа.
   Усиленная левая тёмная шторка под текстом для читаемости.
   Никаких изменений в DOM — killer вытащен через position:absolute. */
@media (min-width: 1024px) {
  .hero {
    min-height: 620px;
    min-height: min(720px, 100svh);
  }
  /* Стронгер-градиент слева → ровно под текстом, фото справа открыто */
  .hero__bg {
    background:
      linear-gradient(90deg,
        rgba(10, 22, 40, 0.92) 0%,
        rgba(10, 22, 40, 0.78) 28%,
        rgba(10, 22, 40, 0.45) 55%,
        rgba(10, 22, 40, 0.10) 78%,
        rgba(10, 22, 40, 0.00) 100%),
      linear-gradient(180deg,
        rgba(10, 22, 40, .30) 0%,
        rgba(10, 22, 40, 0) 35%,
        rgba(10, 22, 40, 0) 70%,
        rgba(10, 22, 40, .35) 100%),
      url('./hero.png') center/cover no-repeat;
  }
  /* Hero — расширенный контейнер 1360px, центрирован, текст в левой половине */
  .container.hero__inner {
    position: relative;
    max-width: 1360px;
    padding: 72px 48px 64px;
    justify-content: center;
    min-height: inherit;
  }
  .hero__content {
    max-width: 580px;
    width: 100%;
    margin: 0;                  /* левая половина контейнера, не центрируется */
  }
  .hero__title {
    font-size: clamp(40px, 4.4vw, 60px);
    line-height: 1.04;
    letter-spacing: -0.025em;
    margin: 0 0 20px;
    text-shadow: 0 4px 32px rgba(0, 0, 0, .55);
  }
  .hero__lead {
    font-size: 17px;
    line-height: 1.55;
    color: rgba(255, 255, 255, .96);
    max-width: 520px;
    margin: 0 0 22px;
  }
  .hero__usp {
    gap: 10px;
    margin: 0 0 26px;
  }
  .hero__usp li {
    font-size: 15px;
    line-height: 1.55;
    padding-left: 36px;
    min-height: 26px;
    color: rgba(255, 255, 255, .97);
  }
  .hero__usp li .check {
    width: 24px; height: 24px;
    font-size: 13px;
    top: 2px;
  }

  /* Killer-карточка («Реальный кейс») скрыта на ПК — фото грузовика остаётся открытым справа */
  .hero__killer { display: none; }

  /* CTA — крупнее, тяжелее тень */
  .hero__cta { max-width: 380px; }
  .hero .hero__cta .btn--lg {
    padding: 18px 28px;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: .01em;
    box-shadow: 0 14px 36px -10px rgba(var(--accent-rgb), .8);
  }
  .hero .hero__cta .btn--lg:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 46px -10px rgba(var(--accent-rgb), .9);
  }
}

/* MacBook Air/Pro 13-14" (1280-1439): шрифты подрастают, padding мягче */
@media (min-width: 1280px) {
  .container.hero__inner { padding: 80px 56px 72px; }
  .hero__content { max-width: 600px; }
  .hero__title {
    font-size: clamp(44px, 4vw, 60px);
    line-height: 1.04;
    letter-spacing: -0.025em;
    margin-bottom: 22px;
  }
  .hero__lead {
    font-size: 17.5px;
    line-height: 1.55;
    max-width: 540px;
    margin-bottom: 24px;
  }
  .hero__usp { gap: 11px; margin-bottom: 30px; }
  .hero__usp li { font-size: 15.5px; padding-left: 36px; min-height: 26px; }
  .hero__cta { max-width: 380px; }
}

/* MacBook Pro 16" / большие мониторы (≥1440px): больше воздуха, без гигантизма */
@media (min-width: 1440px) {
  .container.hero__inner {
    max-width: 1440px;
    padding: 88px 64px 80px;
  }
  .hero__content { max-width: 620px; }
  .hero__title {
    font-size: clamp(48px, 4vw, 64px);
    margin-bottom: 24px;
  }
  .hero__lead {
    font-size: 18px;
    max-width: 560px;
  }
  .hero__usp li { font-size: 16px; }
}

.check {
  flex-shrink: 0;
  width: 22px; height: 22px;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--accent);
  color: #fff;
  border-radius: 50%;
  font-size: 13px;
  font-weight: 800;
  margin-top: 1px;
}

/* в”Ђв”Ђ Lead form в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.lead {
  background: #ffffff;
  border: 1px solid var(--line);
  padding: 16px;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  color: var(--ink-body);
}
.lead__hint { margin: 0 0 10px; font-size: 13px; color: var(--ink-dim); }
.lead__row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}
.lead__row .btn { width: 100%; }
.lead__input {
  width: 100%;
  padding: 13px 16px;
  border-radius: 10px;
  border: 1px solid var(--line-strong);
  background: var(--surface-2);
  color: var(--ink);
  font-family: inherit;
  font-size: 15px;
  letter-spacing: .02em;
  outline: none;
  transition: border .15s, background .15s, box-shadow .15s;
}
.lead__input::placeholder { color: var(--ink-mute); }
.lead__input:focus {
  border-color: var(--accent);
  background: #ffffff;
  box-shadow: 0 0 0 4px var(--accent-soft);
}
.lead__input.is-invalid { border-color: var(--accent); animation: shake .3s; }
@keyframes shake { 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }
.lead__consent-mini {
  margin: 6px 0 0;
  font-size: 10.5px;
  color: var(--ink-mute);
  line-height: 1.4;
  text-align: center;
}
.lead__consent-mini a { color: var(--ink-dim); text-decoration: underline; }
.lead__consent {
  display: grid;
  grid-template-columns: 16px 1fr;
  gap: 8px;
  align-items: start;
  margin-top: 10px;
  font-size: 11.5px;
  line-height: 1.4;
  color: var(--ink-dim);
}
.lead__consent input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  accent-color: var(--accent);
}
.lead__consent input[type="checkbox"].is-invalid {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
  border-radius: 4px;
}
.lead__linkbtn,
.footer__linkbtn {
  display: inline;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--accent);
  font: inherit;
  font-weight: 600;
  text-decoration: underline;
  cursor: pointer;
}
.lead__linkbtn:hover,
.footer__linkbtn:hover {
  color: var(--accent-hover);
}
.lead--final {
  background: #ffffff;
  border-color: var(--line);
}

/* Single-column on all screens: input stacked over full-width CTA */

/* в”Ђв”Ђ Trust strip в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.trust {
  background: var(--surface-2);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.trust__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
  background: var(--line);
  padding: 0;
}
.trust__item {
  background: var(--surface-2);
  padding: 24px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 4px;
}
.trust__ico {
  font-size: 22px;
  width: 44px; height: 44px;
  display: inline-flex; align-items: center; justify-content: center;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 50%;
  margin-bottom: 6px;
  box-shadow: var(--shadow-sm);
}
.trust__item b {
  font-size: 22px;
  font-weight: 800;
  color: var(--ink);
  letter-spacing: -.01em;
}
.trust__item span { font-size: 13px; color: var(--ink-dim); line-height: 1.4; max-width: 200px; }
.trust__item--accent { background: linear-gradient(180deg, #eef0fa 0%, #eef2f6 100%); position: relative; }
.trust__item--accent::before {
  content: '';
  position: absolute; inset: 0 0 auto 0; height: 3px;
  background: linear-gradient(90deg, var(--accent), var(--accent-hover));
}
.trust__item--accent .trust__ico { background: #fff; }
.trust__item--accent b { color: var(--accent); }
@media (min-width: 768px) {
  .trust__grid { grid-template-columns: repeat(4, 1fr); }
}

/* в”Ђв”Ђ Sections base в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
section { padding: 72px 0; }
@media (max-width: 640px) { section { padding: 52px 0; } }

/* в”Ђв”Ђ Subsidy в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.subsidy { background: var(--bg); }
.subsidy__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  align-items: center;
}
.subsidy__lead { color: var(--ink-dim); font-size: 16px; margin: 0 0 22px; }
.subsidy__card {
  background: linear-gradient(160deg, #ffffff 0%, var(--accent-soft) 100%);
  border: 1px solid var(--accent-border);
  border-radius: var(--radius-lg);
  padding: 28px;
  box-shadow: var(--shadow-md);
}
.subsidy__row {
  display: flex; justify-content: space-between; align-items: baseline;
  padding: 14px 0;
  border-bottom: 1px dashed var(--line-strong);
  font-size: 15px;
}
.subsidy__row:last-of-type { border-bottom: 0; }
.subsidy__row span { color: var(--ink-dim); }
.subsidy__row b { font-size: 18px; font-weight: 700; color: var(--ink); }
.subsidy__row--total { padding-top: 18px; margin-top: 6px; border-top: 2px solid var(--accent); border-bottom: 0; }
.subsidy__row--total b { font-size: 26px; font-weight: 800; }
.subsidy__foot { margin: 14px 0 0; font-size: 12px; color: var(--ink-mute); }
.subsidy__bullets {
  list-style: none; padding: 0; margin: 18px 0 0;
  display: grid; gap: 10px;
}
.subsidy__bullets li {
  position: relative;
  padding: 8px 12px 8px 32px;
  font-size: 14px; color: var(--ink-body);
  background: rgba(255,255,255,.6);
  border-radius: 8px;
}
.subsidy__bullets li::before {
  content: '\2713';                       /* ✓ — CSS escape, encoding-safe */
  position: absolute; left: 10px; top: 50%;
  transform: translateY(-50%);
  width: 18px; height: 18px;
  display: flex; align-items: center; justify-content: center;
  background: var(--accent); color: #fff;
  border-radius: 50%; font-size: 11px; font-weight: 800;
  line-height: 1;
  font-family: 'Segoe UI Symbol', 'Apple Color Emoji', system-ui, sans-serif;
}
@media (min-width: 900px) {
  .subsidy__inner { grid-template-columns: 1.15fr 1fr; gap: 56px; }
}

/* в”Ђв”Ђ Calc widget (interactive subsidy + leasing) в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.calc { background: var(--surface-2); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.calc__intro { max-width: 700px; color: var(--ink-dim); margin: 0 0 26px; font-size: 15px; }

.calcwidget {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  overflow: hidden;
}
@media (min-width: 900px) {
  .calcwidget { grid-template-columns: 1.1fr 1fr; gap: 0; }
}

.calcwidget__controls { padding: 26px; }
.calcwidget__result { padding: 26px; background: linear-gradient(160deg, #ffffff 0%, var(--accent-soft) 100%); border-top: 1px solid var(--line); }
@media (min-width: 900px) {
  .calcwidget__result { border-top: 0; border-left: 1px solid var(--line); }
}

.calcfield { display: block; margin-bottom: 22px; }
.calcfield__label {
  display: block; margin-bottom: 10px;
  font-size: 13px; color: var(--ink-dim);
  text-transform: uppercase; letter-spacing: .08em; font-weight: 700;
}
.calcfield__label b { color: var(--accent); font-variant-numeric: tabular-nums; }

.calcfield__select {
  width: 100%;
  padding: 14px 16px;
  border: 1px solid var(--line-strong);
  border-radius: 10px;
  background: var(--surface-2);
  font-family: inherit; font-size: 15px; font-weight: 600;
  color: var(--ink);
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23e30613' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 42px;
}
.calcfield__select:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 4px var(--accent-soft); }

.calcfield__range {
  -webkit-appearance: none; appearance: none;
  width: 100%; height: 6px; border-radius: 999px;
  background: var(--line-strong);
  outline: none;
  cursor: pointer;
}
.calcfield__range::-webkit-slider-thumb {
  -webkit-appearance: none; appearance: none;
  width: 24px; height: 24px; border-radius: 50%;
  background: var(--accent); border: 3px solid #fff;
  box-shadow: 0 2px 8px rgba(var(--accent-rgb),.45);
  cursor: grab;
}
.calcfield__range::-moz-range-thumb {
  width: 22px; height: 22px; border-radius: 50%;
  background: var(--accent); border: 3px solid #fff;
  box-shadow: 0 2px 8px rgba(var(--accent-rgb),.45);
  cursor: grab;
}
.calcfield__range:active::-webkit-slider-thumb { cursor: grabbing; transform: scale(1.08); }
.calcfield__hint {
  display: flex; justify-content: space-between;
  margin-top: 6px; font-size: 11px; color: var(--ink-mute);
  text-transform: uppercase; letter-spacing: .06em;
}

.calcwidget__note {
  margin: 6px 0 0;
  padding: 10px 12px;
  background: #eef0fa;
  border-left: 3px solid var(--accent);
  border-radius: 6px;
  font-size: 12.5px;
  color: var(--ink-dim);
  line-height: 1.5;
}

.calcrow {
  display: flex; justify-content: space-between; align-items: baseline;
  padding: 11px 0;
  border-bottom: 1px dashed var(--line-strong);
  font-size: 14.5px;
}
.calcrow span { color: var(--ink-dim); }
.calcrow b {
  font-size: 16px; font-weight: 700; color: var(--ink);
  font-variant-numeric: tabular-nums;
}
.calcrow--neg b { color: var(--ok); }
.calcrow--total { border-bottom: 2px solid var(--line-strong); padding-top: 14px; }
.calcrow--total b { font-size: 18px; }
.calcrow--savings { border-bottom: 0; padding-bottom: 18px; }
.calcrow--savings b { font-size: 20px; font-weight: 800; }

.calchero {
  margin: 4px 0 20px;
  padding: 20px 18px;
  background: #ffffff;
  border: 2px solid var(--accent);
  border-radius: var(--radius);
  text-align: center;
  box-shadow: 0 8px 22px -10px rgba(var(--accent-rgb),.3);
}
.calchero__label {
  display: block; margin-bottom: 6px;
  font-size: 12px; color: var(--ink-mute);
  text-transform: uppercase; letter-spacing: .12em; font-weight: 700;
}
.calchero__num {
  display: block;
  font-size: clamp(32px, 5vw, 44px);
  font-weight: 800;
  color: var(--accent);
  letter-spacing: -.02em;
  line-height: 1.05;
  font-variant-numeric: tabular-nums;
}
.calchero__num em { font-style: normal; font-size: .5em; color: var(--ink-dim); font-weight: 600; margin-left: 4px; }
.calchero__sub { display: block; margin-top: 8px; font-size: 12px; color: var(--ink-mute); }

.calcwidget__cta { width: 100%; }

/* в”Ђв”Ђ Models grid в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.models { background: var(--bg); }
.models__grid {
  margin-top: 20px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.model {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: var(--shadow-sm);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.model:hover { transform: translateY(-3px); border-color: var(--accent); box-shadow: var(--shadow-md); }
.model__img {
  aspect-ratio: 4 / 3;
  background: var(--surface-3);
  overflow: hidden;
}
.model__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.model:hover .model__img img { transform: scale(1.04); }
.model__title { margin: 18px 20px 6px; font-size: 22px; font-weight: 800; color: var(--ink); letter-spacing: -.01em; }
.model__meta { margin: 0 20px 16px; font-size: 14px; color: var(--ink-mute); }
.model__cta {
  margin: auto 20px 20px;
  align-self: flex-start;
  color: var(--accent);
  font-weight: 700;
  font-size: 15px;
border: 0;
border-radius: 10px;
  padding: 10px 15px;
  background: var(--accent);
  color: #fff;
  box-shadow: 0 10px 24px -12px rgba(var(--accent-rgb), .55);
}
.model__cta:hover { }
@media (min-width: 600px) { .models__grid { grid-template-columns: repeat(2, 1fr); gap: 22px; } }
@media (min-width: 1000px) { .models__grid { grid-template-columns: repeat(3, 1fr); gap: 24px; } }

/* в”Ђв”Ђ Why в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.why { background: var(--surface-2); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.why__grid {
  margin-top: 8px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}
.why__item {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 24px;
  box-shadow: var(--shadow-sm);
  transition: border-color .15s, box-shadow .15s;
}
.why__item:hover { border-color: var(--accent-border); box-shadow: var(--shadow-md); }
.why__ico { font-size: 28px; margin-bottom: 10px; }
.why__item h3 { margin: 6px 0 6px; font-size: 18px; color: var(--ink); }
.why__item p { margin: 0; color: var(--ink-dim); font-size: 14.5px; }
@media (min-width: 700px) { .why__grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1100px) { .why__grid { grid-template-columns: repeat(4, 1fr); } }

/* в”Ђв”Ђ Process в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.process {
  background:
    radial-gradient(circle at top left, rgba(var(--accent-rgb),.07), transparent 32%),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}
.process__top {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  align-items: start;
}
.process__intro {
  max-width: 760px;
}
.process__lead {
  margin: 0;
  max-width: 760px;
  font-size: 17px;
  line-height: 1.65;
  color: var(--ink-dim);
}
.process__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
.process__meta-item {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.85);
  border: 1px solid var(--line);
  color: var(--ink);
  font-size: 13px;
  font-weight: 700;
  box-shadow: var(--shadow-sm);
}
.process__summary {
  position: relative;
  overflow: hidden;
  background: linear-gradient(160deg, #f6f9fc 0%, #ffffff 62%);
  border: 1px solid var(--accent-border);
  border-radius: var(--radius-lg);
  padding: 26px 24px 24px;
  box-shadow: var(--shadow-md);
}
.process__summary::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, var(--accent), #3d5a72);
}
.process__summary-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid var(--accent-border);
  color: var(--accent);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.process__summary-title {
  display: block;
  margin: 14px 0 10px;
  font-size: 22px;
  line-height: 1.2;
  color: var(--ink);
  letter-spacing: -.02em;
}
.process__summary-text {
  margin: 0 0 18px;
  color: var(--ink-dim);
  font-size: 14.5px;
  line-height: 1.6;
}
.process__summary-points {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
}
.process__summary-points span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid var(--line);
  color: var(--ink-dim);
  font-size: 12px;
  font-weight: 600;
}
.process__summary .btn {
  min-width: 196px;
}
.process__hint {
  margin: 24px auto 0;
  max-width: 760px;
  padding: 16px 18px;
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: center;
  background: rgba(255,255,255,.86);
  border: 1px solid var(--line);
  border-radius: 16px;
  box-shadow: 0 14px 30px -22px rgba(15,23,32,.25);
  color: var(--ink-dim);
  font-size: 15px;
  text-align: center;
}
.process__hint b {
  color: var(--ink);
}
.process__hint-badge {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 74px;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  background: var(--accent);
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .03em;
}
.process__list {
  list-style: none;
  padding: 0;
  margin: 22px 0 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  align-items: stretch;
}
.process__list li {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 22px 20px 20px;
  background: rgba(255,255,255,.96);
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: var(--shadow-sm);
  min-height: 236px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.process__list li::before {
  content: '';
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: linear-gradient(90deg, var(--accent) 0%, #4a6a85 100%);
}
.process__list li::after {
  content: '';
  position: absolute;
  inset: 22px -10px auto auto;
  width: 20px;
  height: 20px;
  border-top: 2px solid rgba(var(--accent-rgb),.18);
  border-right: 2px solid rgba(var(--accent-rgb),.18);
  transform: rotate(45deg);
}
.process__list li:hover {
  transform: translateY(-4px);
  border-color: var(--accent-border);
  box-shadow: var(--shadow-md);
}
.process__card-top {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  min-height: 44px;
}
.process__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px; height: 44px;
  background: var(--accent); color: #fff;
  border-radius: 14px; font-weight: 800; font-size: 16px;
  box-shadow: 0 10px 20px -12px rgba(var(--accent-rgb),.65);
  flex-shrink: 0;
}
.process__eta {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  background: var(--surface-2);
  color: var(--ink-dim);
  font-size: 12px;
  font-weight: 700;
}
.process__list b {
  display: block;
  font-size: 20px;
  line-height: 1.2;
  margin-bottom: 10px;
  color: var(--ink);
  letter-spacing: -.01em;
}
.process__list p {
  margin: 0;
  color: var(--ink-dim);
  font-size: 15px;
  line-height: 1.65;
}
@media (min-width: 700px) {
  .process__top {
    grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
    gap: 32px;
  }
  .process__list { grid-template-columns: repeat(2, 1fr); gap: 16px; }
}
@media (min-width: 900px) {
  .process__list { grid-template-columns: repeat(3, 1fr); }
  .process__list li:nth-child(3n)::after {
    display: none;
  }
}
@media (min-width: 1200px) {
  .process__list { grid-template-columns: repeat(5, 1fr); gap: 14px; }
  .process__list li { min-height: 252px; }
  .process__list b { text-wrap: balance; }
  .process__list li:nth-child(3n)::after {
    display: block;
  }
}
@media (max-width: 699px) {
  .process__hint {
    align-items: flex-start;
    flex-direction: column;
    text-align: left;
  }
  .process__summary .btn {
    width: 100%;
  }
  .process__card-top {
    flex-wrap: wrap;
  }
  .process__list li::after {
    display: none;
  }
}
@media (min-width: 1200px) {
  .process__list li:last-child::after {
    display: none;
  }
}

/* в”Ђв”Ђ Partners в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.partners { background: var(--surface-2); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.partners__grid {
  margin-top: 10px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.partner {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 28px 10px;
  text-align: center;
  font-weight: 700;
  letter-spacing: .02em;
  color: var(--ink-dim);
  line-height: 1.2;
  min-height: 88px;
  display: flex; align-items: center; justify-content: center;
  box-shadow: var(--shadow-sm);
  transition: color .15s, border-color .15s;
}
.partner:hover { color: var(--ink); border-color: var(--line-strong); }
.partners__note { margin-top: 22px; color: var(--ink-mute); font-size: 13.5px; max-width: 780px; }
@media (min-width: 900px) { .partners__grid { grid-template-columns: repeat(5, 1fr); } }

/* в”Ђв”Ђ Reviews в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.reviews { background: var(--bg); }
.reviews__grid {
  margin-top: 8px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}
.review {
  background: #ffffff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--accent);
  border-radius: var(--radius);
  padding: 22px 24px;
  box-shadow: var(--shadow-sm);
}
.review__head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.review__avatar {
  flex-shrink: 0;
  width: 42px; height: 42px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--accent) 0%, var(--accent-hover) 100%);
  color: #fff; font-weight: 800; font-size: 14px;
  display: flex; align-items: center; justify-content: center;
  letter-spacing: .02em;
}
.review__who { margin: 0; font-weight: 700; font-size: 14.5px; color: var(--ink); line-height: 1.2; }
.review__where { margin: 2px 0 0; font-size: 12px; color: var(--ink-mute); }
.review__badge {
  margin-left: auto;
  width: 22px; height: 22px;
  border-radius: 50%;
  background: var(--ok); color: #fff;
  font-size: 12px; font-weight: 800;
  display: flex; align-items: center; justify-content: center;
  cursor: help;
}
.review__text { margin: 0; font-size: 15.5px; line-height: 1.6; color: var(--ink-body); }
.reviews__note { margin-top: 20px; color: var(--ink-mute); font-size: 12px; }
@media (min-width: 900px) { .reviews__grid { grid-template-columns: repeat(3, 1fr); } }

/* в”Ђв”Ђ FAQ в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.faq { background: var(--surface-2); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.faq__inner { max-width: 900px; }
.faq__list {
  margin-top: 10px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.faq details {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 18px 22px;
  box-shadow: var(--shadow-sm);
  transition: border-color .15s;
}
.faq details[open] { border-color: var(--accent); }
.faq summary {
  cursor: pointer;
  font-weight: 700;
  font-size: 16px;
  list-style: none;
  position: relative;
  padding-right: 36px;
  color: var(--ink);
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding-right: 0; }
.faq summary::after {
  content: '+';
  flex-shrink: 0;
  width: 28px; height: 28px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%;
  background: var(--accent-soft);
  color: var(--accent);
  font-weight: 700; font-size: 20px; line-height: 1;
  transition: background .2s, transform .2s;
}
.faq details[open] summary::after { content: '\2212'; background: var(--accent); color: #fff; transform: rotate(180deg); }
.faq details p { margin: 12px 0 0; color: var(--ink-dim); font-size: 14.5px; }

/* в”Ђв”Ђ Final CTA в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.final-cta {
  background: linear-gradient(135deg, #ffffff 0%, var(--accent-soft) 100%);
  position: relative;
  overflow: hidden;
  border-top: 1px solid var(--accent-border);
  border-bottom: 1px solid var(--accent-border);
}
.final-cta::before {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(circle at 85% 50%, rgba(var(--accent-rgb),.08), transparent 55%);
  pointer-events: none;
}
.final-cta__inner { position: relative; max-width: 820px; text-align: center; }
.final-cta h2 { margin-bottom: 10px; color: var(--ink); }
.final-cta p { color: var(--ink-dim); margin: 0 auto 28px; max-width: 620px; }
.final-cta .lead { text-align: left; }

/* в”Ђв”Ђ Footer в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.footer {
  background: var(--surface-2);
  padding: 56px 0 28px;
  border-top: 1px solid var(--line);
  color: var(--ink-dim);
}
.footer__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px 20px;
}
.footer__h { font-size: 12px; text-transform: uppercase; letter-spacing: .12em; color: var(--ink-mute); margin: 0 0 10px; }
.footer a { color: var(--ink); }
.footer a:hover { color: var(--accent); }
.footer p { margin: 4px 0; font-size: 14px; color: var(--ink-dim); }
.footer .logo__mark { color: var(--accent); }
.footer__sub { font-size: 13px !important; color: var(--ink-mute) !important; }
.footer__small { font-size: 12px !important; color: var(--ink-mute) !important; line-height: 1.5; }
.footer__bottom { margin-top: 32px; padding-top: 20px; border-top: 1px solid var(--line); font-size: 12px; color: var(--ink-mute); }
@media (min-width: 768px) { .footer__grid { grid-template-columns: repeat(5, 1fr); } }

/* в”Ђв”Ђ Modal в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.modal {
  border: 0;
  padding: 0;
  border-radius: var(--radius-lg);
  background: #ffffff;
  color: var(--ink-body);
  max-width: 520px;
  width: calc(100% - 32px);
  box-shadow: 0 30px 80px rgba(15,23,32,.28);
}
.modal::backdrop { background: rgba(15,23,32,.55); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.modal__form { padding: 28px; position: relative; }
.modal__form .h2 { color: var(--ink); }
.modal__close {
  position: absolute; right: 14px; top: 10px;
  background: transparent; border: 0; color: var(--ink-mute);
  font-size: 30px; cursor: pointer; line-height: 1;
}
.modal__close:hover { color: var(--ink); }
.modal__label { display: block; margin: 14px 0; }
.modal__label span { display: block; font-size: 13px; color: var(--ink-dim); margin-bottom: 6px; }
.modal__label input,
.modal__label select,
.modal__label textarea {
  width: 100%;
  padding: 12px 14px;
  background: var(--surface-2);
  border: 1px solid var(--line-strong);
  border-radius: 10px;
  color: var(--ink);
  font-family: inherit;
  font-size: 15px;
  outline: none;
  resize: vertical;
}
.modal__label input:focus,
.modal__label select:focus,
.modal__label textarea:focus {
  border-color: var(--accent);
  background: #ffffff;
  box-shadow: 0 0 0 4px var(--accent-soft);
}
.modal__actions { display: flex; gap: 10px; margin-top: 18px; flex-wrap: wrap; }
.modal__actions .btn { flex: 1 1 auto; }
.modal--info {
  max-width: 640px;
}
.modal__text {
  display: grid;
  gap: 12px;
  color: var(--ink-dim);
  font-size: 14.5px;
  line-height: 1.65;
}
.modal__text p {
  margin: 0;
}
.modal__text a {
  color: var(--accent);
  text-decoration: underline;
}

/* в”Ђв”Ђ CP popup (РєРѕРјРїР°РєС‚РЅР°СЏ Р·Р°СЏРІРєР°) в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.modal--cp { max-width: 620px; }
.modal--cp .modal__form { padding: 28px 32px 24px; }
.cp__head {
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: 18px;
  align-items: center;
  margin: 4px 0 22px;
}
.cp__photo {
  position: relative;
  width: 96px; height: 96px;
  border-radius: 50%;
  overflow: hidden;
  border: 3px solid var(--accent);
  box-shadow: 0 0 0 4px var(--accent-soft), 0 12px 28px -12px rgba(var(--accent-rgb), .6);
}
.cp__photo img {
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center;
}
.cp__photo-aura {
  position: absolute; inset: -6px;
  border-radius: 50%;
  background: conic-gradient(from 0deg, rgba(var(--accent-rgb), .35), rgba(var(--accent-rgb),.25), rgba(var(--accent-rgb), .35));
  z-index: -1;
  animation: managerAura 6s linear infinite;
  filter: blur(8px);
}
.cp__head .kicker { margin-bottom: 4px; }
.cp__head .h2 { margin: 0 0 8px; font-size: 22px; line-height: 1.2; }
.cp__lead { margin: 0; font-size: 14px; color: var(--ink-dim); line-height: 1.5; }

.lead--cp { background: var(--surface-2); border: 1px solid var(--line); padding: 18px; border-radius: 12px; box-shadow: none; }
.lead--cp .lead__row { gap: 12px; }
.lead--cp .lead__input { background: #fff; }

.cp__benefits {
  list-style: none; padding: 16px 18px; margin: 18px 0 0;
  background: #eef0fa;
  border-left: 3px solid var(--accent);
  border-radius: 8px;
  display: grid; gap: 8px;
  font-size: 13.5px; color: var(--ink-body);
  line-height: 1.45;
}
.cp__benefits b { color: var(--accent); font-weight: 700; }

@media (max-width: 560px) {
  .cp__head { grid-template-columns: 72px 1fr; gap: 14px; }
  .cp__photo { width: 72px; height: 72px; }
  .cp__head .h2 { font-size: 18px; }
  .modal--cp .modal__form { padding: 22px 20px 20px; }
}

/* в”Ђв”Ђ Manager thanks modal (РљСЂСЏС‡РєРѕРІ РѕС‚РІРµС‡Р°РµС‚) в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.modal--manager { max-width: 560px; }
.modal__manager {
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 18px;
  align-items: center;
  margin: 4px 0 20px;
}
.modal__manager-photo {
  position: relative;
  width: 140px; height: 140px;
  border-radius: 50%;
  overflow: hidden;
  border: 4px solid var(--accent);
  box-shadow: 0 0 0 6px var(--accent-soft), 0 16px 36px -14px rgba(var(--accent-rgb), .6);
}
.modal__manager-photo img {
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center;
}
.modal__manager-aura {
  position: absolute;
  inset: -6px;
  border-radius: 50%;
  background: conic-gradient(from 0deg, rgba(var(--accent-rgb), .35), rgba(var(--accent-rgb),.25), rgba(var(--accent-rgb), .35));
  z-index: -1;
  animation: managerAura 6s linear infinite;
  filter: blur(8px);
}
@keyframes managerAura { to { transform: rotate(360deg); } }
.modal__manager-bubble {
  position: relative;
  padding: 12px 16px;
  background: var(--surface-2);
  border: 1px solid var(--line);
  border-radius: 12px;
  border-top-left-radius: 4px;
}
.modal__manager-bubble::before {
  content: '';
  position: absolute;
  left: -8px; top: 16px;
  width: 0; height: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-right: 8px solid var(--surface-2);
  filter: drop-shadow(-1px 0 0 var(--line));
}
.modal__manager-name {
  margin: 0 0 6px;
  font-size: 13px; font-weight: 800;
  color: var(--accent);
  text-transform: uppercase; letter-spacing: .06em;
}
.modal__manager-say {
  margin: 0;
  font-size: 14.5px; line-height: 1.5;
  color: var(--ink-body);
}
.modal__manager-say span { font-weight: 700; color: var(--ink); }

@media (max-width: 480px) {
  .modal__manager { grid-template-columns: 100px 1fr; gap: 14px; }
  .modal__manager-photo { width: 100px; height: 100px; border-width: 3px; box-shadow: 0 0 0 4px var(--gold-soft), 0 12px 28px -12px rgba(var(--accent-rgb), .6); }
}

/* в”Ђв”Ђ Sticky mobile bar в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.sticky-mobile {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 30;
  display: none;
  flex-direction: column;
  gap: 6px;
  padding: 8px 10px 10px;
  background: rgba(255,255,255,.96);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  border-top: 1px solid var(--line);
  box-shadow: 0 -8px 22px -12px rgba(15,23,32,.15);
}
.sticky-mobile__hint { margin: 0; font-size: 12px; color: var(--ink-dim); text-align: center; }
.sticky-mobile__hint b { color: var(--accent); }
.sticky-mobile__row { display: flex; gap: 8px; }
.sticky-mobile__btn {
  flex: 1;
  padding: 13px 10px;
  border-radius: 10px;
  font-weight: 700;
  font-size: 14px;
  text-align: center;
}
.sticky-mobile__btn--ghost { background: #ffffff; color: var(--ink); border: 1px solid var(--line-strong); }
.sticky-mobile__btn--primary { background: var(--accent); color: #fff; }
@media (max-width: 767px) {
  .sticky-mobile { display: flex; }
  body { padding-bottom: 96px; }
}
@media (min-width: 768px) {
  .sticky-mobile { display: none !important; }
  body { padding-bottom: 0 !important; }
}

.cookie-banner {
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 18px;
  z-index: 45;
}
.cookie-banner__inner {
  margin-left: auto;
  max-width: 760px;
  display: grid;
  gap: 14px;
  align-items: center;
  padding: 16px 18px;
  background: rgba(15,23,32,.94);
  color: #fff;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 18px;
  box-shadow: 0 24px 50px -24px rgba(0,0,0,.45);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.cookie-banner__text {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: rgba(255,255,255,.88);
}
.cookie-banner__text b {
  color: #fff;
}
.cookie-banner__actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.cookie-banner__actions .btn--ghost {
  background: rgba(255,255,255,.08);
  color: #fff;
  border-color: rgba(255,255,255,.18);
}
.cookie-banner__actions .btn--ghost:hover {
  background: rgba(255,255,255,.14);
  color: #fff;
  border-color: rgba(255,255,255,.28);
}
@media (min-width: 860px) {
  .cookie-banner__inner {
    grid-template-columns: 1fr auto;
  }
}

/* Desktop safety reset (do not affect mobile/tablet) */
@media (min-width: 1025px) {
  .hero__bg {
    background:
      linear-gradient(90deg,
        var(--hero-navy-1) 0%,
        var(--hero-navy-2) 45%,
        var(--hero-navy-3) 70%,
        rgba(10,22,40,.02) 100%),
      linear-gradient(180deg,
        rgba(10,22,40,.35) 0%,
        rgba(10,22,40,0) 30%,
        rgba(10,22,40,0) 70%,
        rgba(10,22,40,.25) 100%),
      url('./hero.png') center/cover no-repeat !important;
  }

  .hero__inner {
    min-height: inherit;
    padding: 24px 20px 24px !important;
  }

  .hero__content {
    display: block !important;
    padding-bottom: 0 !important;
  }

  .hero__cta {
    transform: none !important;
  }
}

/* Final hard-fix for desktop/mobile split */
@media (min-width: 768px) {
  header.topbar {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .sticky-mobile {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  body {
    padding-bottom: 0 !important;
  }
}

@media (max-width: 767px) {
  .sticky-mobile {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
}

/* Force desktop layout on desktop-class devices (mouse/trackpad) */
@media (hover: hover) and (pointer: fine) {
  header.topbar {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .sticky-mobile {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  body {
    padding-bottom: 0 !important;
  }

  .hero {
    min-height: 100svh !important;
  }

  .hero__inner {
    min-height: inherit !important;
    padding: 24px 20px 24px !important;
    display: flex !important;
    flex-direction: column !important;
  }

  .hero__content {
    display: block !important;
    padding-bottom: 0 !important;
  }

  .hero__title {
    font-size: clamp(26px, 3.6vw, 40px) !important;
    line-height: 1.08 !important;
  }

  .hero__bg {
    background:
      linear-gradient(90deg,
        var(--hero-navy-1) 0%,
        var(--hero-navy-2) 45%,
        var(--hero-navy-3) 70%,
        rgba(10,22,40,.02) 100%),
      linear-gradient(180deg,
        rgba(10,22,40,.35) 0%,
        rgba(10,22,40,0) 30%,
        rgba(10,22,40,0) 70%,
        rgba(10,22,40,.25) 100%),
      url('./hero.png') center/cover no-repeat !important;
  }

  .hero__bg::before {
    content: none !important;
  }
}
@media (max-width: 767px) {
  .cookie-banner {
    left: 10px;
    right: 10px;
    bottom: 84px;
  }
  .cookie-banner__actions .btn {
    flex: 1 1 calc(50% - 5px);
  }
}

/* в”Ђв”Ђ Model card badges в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.model__img { position: relative; }
.model__badge {
  position: absolute; left: 14px; top: 14px;
  padding: 7px 14px;
  border-radius: 999px;
  font-size: 12px; font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
  box-shadow: 0 4px 12px -4px rgba(15,23,32,.25);
}
.model__badge--sub   { background: var(--accent); color: #fff; }
.model__badge--k4    { background: rgba(15,23,32,.82); color: #fff; }
.model__badge--k3    { background: rgba(255,255,255,.92); color: var(--ink); border: 1px solid var(--line); }
.model__badge--stock { background: #12a150; color: #fff; }
.model__badge--order { background: rgba(255,255,255,.92); color: var(--ink-dim); border: 1px solid var(--line); }

/* в”Ђв”Ђ Subsidy card вЂ” hero number at top в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.subsidy__hero {
  text-align: center;
  padding: 6px 0 18px;
  margin: -8px 0 14px;
  border-bottom: 2px solid var(--accent);
}
.subsidy__hero-label {
  margin: 0 0 6px;
  font-size: 12px; font-weight: 700;
  color: var(--ink-mute);
  text-transform: uppercase; letter-spacing: .12em;
}
.subsidy__hero-num {
  margin: 0;
  font-size: clamp(36px, 6vw, 52px);
  font-weight: 800;
  line-height: 1;
  color: var(--accent);
  letter-spacing: -.02em;
  font-variant-numeric: tabular-nums;
}
.subsidy__hero-num span { font-size: .6em; margin-left: 4px; }
.subsidy__hero-num--compact { font-size: clamp(22px, 3vw, 30px); line-height: 1.15; letter-spacing: -.01em; }
.subsidy__hero-sub { margin: 8px 0 0; font-size: 13px; color: var(--ink-mute); }

/* в”Ђв”Ђ Psychology additions (countdown, goal-gradient, peak-end) в”Ђв”Ђ */
.hero__deadline {
  display: inline-flex; align-items: center; gap: 10px;
  max-width: 100%;
  margin: 0 0 18px;
  padding: 8px 14px;
  border-radius: 999px;
  background: var(--gold-soft);
  border: 1px solid var(--gold-border);
  color: #eef0fa;
  font-size: 13px; font-weight: 600;
  line-height: 1.3;
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.hero__deadline b { color: #fff; }
@media (max-width: 480px) {
  .hero__deadline { font-size: 12px; padding: 7px 12px; gap: 8px; }
}
.hero__deadline b { color: #fff; }
.hero__deadline-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--gold);
  box-shadow: 0 0 0 0 rgba(var(--accent-rgb), .8);
  animation: pulse 1.8s infinite;
}
@keyframes pulse {
  0%   { box-shadow: 0 0 0 0 rgba(var(--accent-rgb), .7); }
  70%  { box-shadow: 0 0 0 10px rgba(var(--accent-rgb), 0); }
  100% { box-shadow: 0 0 0 0 rgba(var(--accent-rgb), 0); }
}

.lead__step {
  margin: 0 0 4px;
  font-size: 12px; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--accent);
}

.countdown {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin: 18px 0 14px;
  max-width: 420px;
}
.countdown__cell {
  display: flex; flex-direction: column; align-items: center;
  padding: 10px 6px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: 0 2px 8px -4px rgba(15,23,32,.1);
}
.countdown__cell b {
  font-size: 28px; font-weight: 800; line-height: 1;
  color: var(--accent);
  font-variant-numeric: tabular-nums;
}
.countdown__cell span {
  font-size: 11px; color: var(--ink-mute);
  text-transform: uppercase; letter-spacing: .06em;
  margin-top: 4px;
}

.subsidy__warn {
  margin: 14px 0 18px;
  padding: 12px 14px;
  border-radius: 10px;
  background: #eef0fa;
  border-left: 3px solid var(--accent);
  color: var(--ink-body);
  font-size: 14px;
}
.subsidy__warn b { color: var(--accent); }

.calc__anchor {
  margin: 22px auto 6px;
  padding: 14px 18px;
  max-width: 720px;
  text-align: center;
  background: linear-gradient(180deg, #fff, #f4f6f9);
  border: 1px solid var(--line);
  border-radius: 12px;
  font-size: 16px;
  color: var(--ink-body);
}
.calc__anchor b { font-size: 20px; }

.final-cta__promises {
  list-style: none; padding: 0; margin: 22px auto 28px;
  display: grid; grid-template-columns: 1fr; gap: 10px;
  max-width: 100%;
  text-align: left;
}
.final-cta__promises li {
  padding: 14px 18px;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 12px;
  font-weight: 600;
  color: var(--ink-body);
  font-size: 15px;
  box-shadow: var(--shadow-sm);
}
@media (min-width: 700px) {
  .final-cta__promises { grid-template-columns: repeat(2, 1fr); gap: 12px; }
}
@media (min-width: 1000px) {
  .final-cta__promises { grid-template-columns: repeat(4, 1fr); }
  .final-cta__promises li { text-align: center; padding: 16px 14px; }
}

.kicker--light { color: var(--accent); }
.kicker--light b { color: var(--ink); }

.modal__timeline {
  list-style: none; counter-reset: step;
  padding: 0; margin: 14px 0 18px;
  display: grid; gap: 10px;
}
.modal__timeline li {
  position: relative;
  counter-increment: step;
  padding: 10px 14px 10px 46px;
  border-radius: 10px;
  background: var(--surface-2);
  border: 1px solid var(--line);
}
.modal__timeline li::before {
  content: counter(step);
  position: absolute; left: 10px; top: 50%;
  transform: translateY(-50%);
  width: 26px; height: 26px; border-radius: 50%;
  background: var(--accent); color: #fff;
  display: grid; place-items: center;
  font-weight: 800; font-size: 13px;
}
.modal__timeline b { display: block; font-size: 14px; color: var(--ink); }
.modal__timeline span { font-size: 13px; color: var(--ink-dim); }

/* в”Ђв”Ђ Fighters (MK-style team section) в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.fighters {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 20% 30%, rgba(var(--accent-rgb),.18), transparent 45%),
    radial-gradient(circle at 80% 70%, rgba(var(--accent-rgb), .15), transparent 45%),
    linear-gradient(180deg, #0a0f1a 0%, #131b2d 100%);
  color: #f4f6f9;
  padding: 80px 0;
}
.fighters__scanlines {
  position: absolute; inset: 0;
  background: repeating-linear-gradient(
    0deg,
    rgba(255,255,255,.02) 0px,
    rgba(255,255,255,.02) 1px,
    transparent 1px,
    transparent 3px
  );
  pointer-events: none;
  mix-blend-mode: overlay;
}
.fighters__inner { position: relative; text-align: center; }
.fighters__kicker {
  display: inline-block;
  margin: 0 0 10px;
  padding: 6px 14px;
  border: 1px solid var(--gold-border);
  background: var(--gold-soft);
  border-radius: 999px;
  color: var(--gold);
  font-size: 11px; font-weight: 800;
  letter-spacing: .2em; text-transform: uppercase;
}
.fighters__title {
  margin: 8px 0 8px;
  font-size: clamp(36px, 6vw, 64px);
  font-weight: 900;
  letter-spacing: -.02em;
  line-height: 1;
  color: #fff;
  text-shadow:
    0 0 20px rgba(var(--accent-rgb),.55),
    0 0 40px rgba(var(--accent-rgb),.25),
    2px 2px 0 #0a0f1a;
}
.fighters__title span {
  margin: 0 10px;
  color: var(--gold);
  text-shadow: 0 0 16px rgba(var(--accent-rgb), .6);
}
.fighters__sub {
  margin: 0 0 44px;
  color: rgba(244,246,249,.7);
  font-size: 15px;
  letter-spacing: .04em;
}

.arena {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
  border-radius: 16px;
  overflow: hidden;
  background: linear-gradient(180deg, #0a0f1a 0%, #131b2d 100%);
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 30px 80px -30px rgba(0,0,0,.7), inset 0 0 0 1px rgba(255,255,255,.03);
}
.arena__canvas {
  display: block;
  width: 100%;
  aspect-ratio: 1000 / 560;
  position: relative;
}
.arena__canvas canvas { display: block; max-width: 100%; height: auto !important; }
.arena__stats {
  display: flex; justify-content: space-between;
  padding: 14px 20px 4px;
  color: rgba(244,246,249,.85);
  font-family: 'Inter', sans-serif;
}
.arena__player-name {
  margin: 0;
  font-size: 16px; font-weight: 900;
  letter-spacing: .12em;
}
.arena__player-name--villain { color: #ff6b78; }
.arena__player-name--hero    { color: var(--gold); text-align: right; }
.arena__player-role {
  margin: 2px 0 0;
  font-size: 11px;
  color: rgba(244,246,249,.55);
  letter-spacing: .06em; text-transform: uppercase;
}
.arena__player--right .arena__player-role { text-align: right; }
.arena__fallback {
  padding: 60px 20px; text-align: center;
  color: rgba(244,246,249,.7);
  font-size: 14px;
}
.arena[data-state="fighting"] { animation: shake 0.4s infinite; }
@keyframes shake {
  0%, 100% { transform: translate(0, 0); }
  25%      { transform: translate(-2px, 1px); }
  50%      { transform: translate(2px, -1px); }
  75%      { transform: translate(-1px, 2px); }
}

/* HP bars */
.hpbar { display: flex; flex-direction: column; gap: 6px; margin-bottom: 8px; }
.hpbar__label {
  font-size: 11px; font-weight: 800; letter-spacing: .16em;
  text-transform: uppercase;
  color: rgba(244,246,249,.8);
  font-variant-numeric: tabular-nums;
}
.fighter--hero .hpbar__label { text-align: right; }
.hpbar__track {
  position: relative;
  height: 12px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 3px;
  overflow: hidden;
}
.hpbar__fill {
  display: block;
  height: 100%; width: 100%;
  background: linear-gradient(90deg, #12a150 0%, #5a6dbd 60%, #e30613 100%);
  transition: width .5s cubic-bezier(.4,0,.2,1);
  box-shadow: inset 0 -2px 0 rgba(0,0,0,.2);
}
.fighter--hero .hpbar__fill { background: linear-gradient(270deg, #12a150 0%, #5a6dbd 60%, #e30613 100%); float: right; }

/* Fighter states during battle */
.fighter { transition: transform .25s ease, filter .25s ease; }
.fighter__img {
  transition: filter .2s;
  transform-origin: 50% 80%;     /* rotate around feet, not center */
  will-change: transform, filter;
}

/* === PUNCH (attacking) вЂ” wind-up в†’ thrust в†’ recover ==== */
.fighter.is-attacking .fighter__img { animation: punchRight 0.55s cubic-bezier(.45,.05,.3,1); }
.fighter--hero.is-attacking .fighter__img { animation: punchLeft 0.55s cubic-bezier(.45,.05,.3,1); }
@keyframes punchRight {
  0%   { transform: translateX(0) rotateZ(0) scaleX(1); }
  18%  { transform: translateX(-14px) rotateZ(-6deg) scaleX(0.94); filter: brightness(.9); }
  45%  { transform: translateX(38px)  rotateZ(9deg)  scaleX(1.08); filter: brightness(1.25); }
  60%  { transform: translateX(34px)  rotateZ(7deg)  scaleX(1.04); }
  100% { transform: translateX(0)     rotateZ(0)    scaleX(1); filter: brightness(1); }
}
@keyframes punchLeft {
  0%   { transform: translateX(0) rotateZ(0) scaleX(1); }
  18%  { transform: translateX(14px) rotateZ(6deg)  scaleX(0.94); filter: brightness(.9); }
  45%  { transform: translateX(-38px) rotateZ(-9deg) scaleX(1.08); filter: brightness(1.25); }
  60%  { transform: translateX(-34px) rotateZ(-7deg) scaleX(1.04); }
  100% { transform: translateX(0)     rotateZ(0)    scaleX(1); filter: brightness(1); }
}

/* === HIT REACTION вЂ” head-snap + recoil + red-flash ===== */
.fighter.is-hit .fighter__img { animation: hitReact 0.4s cubic-bezier(.3,.7,.4,1); }
.fighter--hero.is-hit .fighter__img { animation: hitReactMirror 0.4s cubic-bezier(.3,.7,.4,1); }
@keyframes hitReact {
  0%   { transform: translateX(0) rotateZ(0); filter: brightness(1); }
  10%  { transform: translateX(18px) rotateZ(12deg); filter: brightness(2.5) hue-rotate(-25deg) saturate(1.5); }
  28%  { transform: translateX(-10px) rotateZ(-8deg); filter: brightness(1.8) hue-rotate(-15deg); }
  50%  { transform: translateX(6px) rotateZ(4deg); filter: brightness(1.2); }
  75%  { transform: translateX(-3px) rotateZ(-2deg); }
  100% { transform: translateX(0) rotateZ(0); filter: brightness(1); }
}
@keyframes hitReactMirror {
  0%   { transform: translateX(0) rotateZ(0); filter: brightness(1); }
  10%  { transform: translateX(-18px) rotateZ(-12deg); filter: brightness(2.5) hue-rotate(-25deg) saturate(1.5); }
  28%  { transform: translateX(10px) rotateZ(8deg); filter: brightness(1.8) hue-rotate(-15deg); }
  50%  { transform: translateX(-6px) rotateZ(-4deg); filter: brightness(1.2); }
  75%  { transform: translateX(3px) rotateZ(2deg); }
  100% { transform: translateX(0) rotateZ(0); filter: brightness(1); }
}

/* === DODGE вЂ” quick sidelean ============================ */
.fighter.is-dodge .fighter__img { animation: dodgeL 0.45s cubic-bezier(.3,.7,.4,1); }
.fighter--hero.is-dodge .fighter__img { animation: dodgeR 0.45s cubic-bezier(.3,.7,.4,1); }
@keyframes dodgeL {
  0%, 100% { transform: translateX(0) rotateZ(0) skewX(0); }
  40%      { transform: translateX(-22px) rotateZ(-8deg) skewX(6deg); }
  60%      { transform: translateX(-20px) rotateZ(-6deg); }
}
@keyframes dodgeR {
  0%, 100% { transform: translateX(0) rotateZ(0) skewX(0); }
  40%      { transform: translateX(22px) rotateZ(8deg) skewX(-6deg); }
  60%      { transform: translateX(20px) rotateZ(6deg); }
}

/* === UPPERCUT (jump + swing) =========================== */
.fighter.is-uppercut .fighter__img { animation: uppercut 0.75s cubic-bezier(.3,.1,.2,1.2); }
@keyframes uppercut {
  0%   { transform: translateY(0) rotateZ(0) scale(1); }
  20%  { transform: translateY(10px) rotateZ(-3deg) scale(0.94); }   /* crouch */
  55%  { transform: translateY(-35px) rotateZ(12deg) scale(1.08); filter: brightness(1.3); }
  75%  { transform: translateY(-20px) rotateZ(8deg) scale(1.04); }
  100% { transform: translateY(0) rotateZ(0) scale(1); }
}

/* === CHARGING (super buildup) ========================== */
.fighter.is-charging .fighter__img {
  animation: chargeBody 0.4s ease-in-out infinite alternate;
  filter: brightness(1.3) drop-shadow(0 0 24px rgba(var(--accent-rgb), .8));
}
.fighter.is-charging .fighter__aura { animation: chargeAura 0.5s infinite alternate; }
@keyframes chargeBody {
  from { transform: translateY(0) scale(1); }
  to   { transform: translateY(-4px) scale(1.03) rotateZ(-1deg); }
}
@keyframes chargeAura {
  from { transform: translateX(-50%) scale(1);   opacity: .7; }
  to   { transform: translateX(-50%) scale(1.6); opacity: 1; }
}

/* === SPECIAL HIT (victim of super) ===================== */
.fighter.is-special-hit .fighter__img { animation: specialHit 1s cubic-bezier(.2,.6,.3,1) forwards; }
.fighter--hero.is-special-hit .fighter__img { animation: specialHitMirror 1s cubic-bezier(.2,.6,.3,1) forwards; }
@keyframes specialHit {
  0%   { transform: translateX(0) rotateZ(0) scale(1); filter: brightness(1); }
  8%   { transform: translateX(26px) rotateZ(18deg) scale(1.05); filter: brightness(3) hue-rotate(-30deg); }
  25%  { transform: translateX(-30px) rotateZ(-12deg) scale(0.96); filter: brightness(1.8); }
  55%  { transform: translateX(-90px) rotateZ(30deg) scale(0.88); filter: brightness(1.2); }
  80%  { transform: translateX(-130px) rotateZ(-25deg) scale(0.82); filter: brightness(.8); }
  100% { transform: translateX(-150px) rotateZ(-50deg) scale(0.75); filter: brightness(.6); }
}
@keyframes specialHitMirror {
  0%   { transform: translateX(0) rotateZ(0) scale(1); filter: brightness(1); }
  8%   { transform: translateX(-26px) rotateZ(-18deg) scale(1.05); filter: brightness(3) hue-rotate(-30deg); }
  25%  { transform: translateX(30px) rotateZ(12deg) scale(0.96); filter: brightness(1.8); }
  55%  { transform: translateX(90px) rotateZ(-30deg) scale(0.88); filter: brightness(1.2); }
  80%  { transform: translateX(130px) rotateZ(25deg) scale(0.82); filter: brightness(.8); }
  100% { transform: translateX(150px) rotateZ(50deg) scale(0.75); filter: brightness(.6); }
}

/* === DEFEATED вЂ” tumble and fade ======================== */
.fighter.is-defeated .fighter__img {
  animation: tumble 1.2s cubic-bezier(.3,.6,.4,1) forwards;
}
@keyframes tumble {
  0%   { transform: rotateZ(0) translateY(0); opacity: 1; filter: grayscale(0); }
  30%  { transform: rotateZ(-35deg) translateY(10px); opacity: .9; filter: grayscale(.3); }
  65%  { transform: rotateZ(-70deg) translateY(40px); opacity: .7; filter: grayscale(.6); }
  100% { transform: rotateZ(-95deg) translateY(80px); opacity: .35; filter: grayscale(1) brightness(.45); }
}
.fighter.is-defeated { filter: none !important; }   /* reset outer вЂ” img owns animation */
.fighter.is-defeated .fighter__aura { opacity: .15; }

/* === WINNING POSE (on img, outer already has its own) == */
.fighter.is-winning-pose .fighter__img {
  animation: winImg 1.2s cubic-bezier(.2,.8,.3,1) forwards;
}
@keyframes winImg {
  0%   { transform: translateY(0) scale(1) rotateZ(0); filter: brightness(1); }
  40%  { transform: translateY(-18px) scale(1.08) rotateZ(3deg); filter: brightness(1.3) drop-shadow(0 0 28px rgba(var(--accent-rgb), .9)); }
  70%  { transform: translateY(-10px) scale(1.05) rotateZ(-2deg); }
  100% { transform: translateY(-14px) scale(1.06) rotateZ(0); filter: brightness(1.2) drop-shadow(0 0 32px rgba(var(--accent-rgb), 1)); }
}

/* === ATTACK TRAIL вЂ” gold/red streak behind attacker ==== */
.fighter__stage { isolation: isolate; }
.fighter__stage::after {
  content: '';
  position: absolute; inset: 0;
  pointer-events: none;
  opacity: 0;
  background: linear-gradient(90deg, transparent, rgba(var(--accent-rgb),.6), transparent);
  mix-blend-mode: screen;
  filter: blur(10px);
  z-index: 3;
}
.fighter--hero .fighter__stage::after {
  background: linear-gradient(90deg, transparent, rgba(var(--accent-rgb), .7), transparent);
}
.fighter.is-attacking .fighter__stage::after { animation: trailSwipe 0.55s; }
@keyframes trailSwipe {
  0%   { opacity: 0; transform: translateX(-80%) skewX(-20deg); }
  30%  { opacity: 1; transform: translateX(0)    skewX(-20deg); }
  100% { opacity: 0; transform: translateX(80%)  skewX(-20deg); }
}

/* === IMPACT SPARKS (spawned by JS) ===================== */
.arena__spark {
  position: absolute;
  width: 60px; height: 60px;
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%) scale(0);
  background:
    radial-gradient(circle, #fff 0%, var(--gold) 20%, transparent 60%);
  mix-blend-mode: screen;
  z-index: 12;
  animation: sparkBurst 0.5s ease-out forwards;
}
.arena__spark--red {
  background: radial-gradient(circle, #fff 0%, var(--accent) 25%, transparent 60%);
}
@keyframes sparkBurst {
  0%   { transform: translate(-50%, -50%) scale(0); opacity: 1; }
  40%  { transform: translate(-50%, -50%) scale(1.4); opacity: 1; }
  100% { transform: translate(-50%, -50%) scale(2.2); opacity: 0; }
}

/* === IMPACT STARS вЂ” 6 radial shards on mega hit ======== */
.arena__star {
  position: absolute;
  width: 6px; height: 50px;
  background: linear-gradient(180deg, var(--gold), transparent);
  transform-origin: 50% 0;
  pointer-events: none;
  z-index: 11;
  animation: starFly 0.55s ease-out forwards;
}
@keyframes starFly {
  0%   { transform: translate(-50%, 0) rotate(var(--deg)) scaleY(0); opacity: 1; }
  30%  { transform: translate(-50%, 0) rotate(var(--deg)) scaleY(1); opacity: 1; }
  100% { transform: translate(-50%, 0) rotate(var(--deg)) scaleY(2.5) translateY(30px); opacity: 0; }
}

/* FX layer вЂ” flying action text */
.arena__fx {
  position: absolute; inset: 0;
  pointer-events: none;
  display: grid; place-items: center;
  z-index: 10;
}
.arena__fx-msg {
  position: absolute;
  font-size: clamp(32px, 6vw, 72px);
  font-weight: 900;
  letter-spacing: -.02em;
  white-space: nowrap;
  text-shadow: 0 0 24px currentColor, 4px 4px 0 #0a0f1a;
  animation: fxFly 1s cubic-bezier(.2,.9,.3,1) forwards;
}
.arena__fx-msg--hit  { color: #ff5e6c; }
.arena__fx-msg--buff { color: var(--gold); }
.arena__fx-msg--crit { color: #fff; background: linear-gradient(90deg, var(--gold), var(--accent)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
@keyframes fxFly {
  0%   { opacity: 0; transform: scale(0.3) rotate(-8deg); }
  25%  { opacity: 1; transform: scale(1.15) rotate(-2deg); }
  70%  { opacity: 1; transform: scale(1) rotate(-2deg); }
  100% { opacity: 0; transform: scale(1.4) rotate(2deg) translateY(-30px); }
}

/* K.O. overlay */
.arena__ko {
  position: absolute; inset: 0;
  display: grid; place-items: center;
  text-align: center;
  background: radial-gradient(circle at center, rgba(10,15,26,.85) 0%, rgba(10,15,26,.95) 100%);
  border-radius: 14px;
  opacity: 0; pointer-events: none;
  transition: opacity .5s;
  z-index: 20;
}
.arena[data-state="ko"] .arena__ko { opacity: 1; pointer-events: auto; }
.arena__ko-label {
  margin: 0;
  font-size: clamp(64px, 12vw, 140px);
  font-weight: 900;
  letter-spacing: .1em;
  color: var(--accent);
  text-shadow: 0 0 40px rgba(var(--accent-rgb),.9), 0 0 80px rgba(var(--accent-rgb),.5);
  animation: koZoom 0.6s cubic-bezier(.2,.9,.3,1);
}
.arena__ko-winner {
  margin: 10px 0 6px;
  font-size: clamp(18px, 3vw, 28px);
  font-weight: 900;
  letter-spacing: .2em;
  color: var(--gold);
  text-shadow: 0 0 16px rgba(var(--accent-rgb), .7);
}
.arena__ko-flaw {
  margin: 0;
  font-size: 14px; font-weight: 700;
  letter-spacing: .08em;
  color: #fff;
  opacity: .85;
}
@keyframes koZoom {
  from { transform: scale(0); opacity: 0; }
  60%  { transform: scale(1.3); opacity: 1; }
  to   { transform: scale(1);   opacity: 1; }
}

/* Arena CTA controls */
.arena__cta .btn { min-width: 240px; }
.arena__cta-final { display: flex; flex-direction: column; align-items: center; gap: 14px; margin-top: 8px; }

/* в”Ђв”Ђ Arena вЂ” cinematic / ultimate upgrades в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.arena { transition: transform .4s cubic-bezier(.2,.8,.3,1), filter .4s; }
.arena[data-state="cinematic"] { transform: scale(1.03); filter: brightness(.55) contrast(1.2); }
.arena[data-state="fighting"]  { animation: shake 0.3s infinite; }
.arena[data-state="crit"]      { animation: shakeHard 0.5s; }
@keyframes shakeHard {
  0%, 100% { transform: translate(0,0); }
  15%      { transform: translate(-8px, 4px); }
  30%      { transform: translate(7px, -5px); }
  45%      { transform: translate(-6px, 6px); }
  60%      { transform: translate(5px, -3px); }
  80%      { transform: translate(-3px, 2px); }
}

/* Idle stance вЂ” subtle bobbing */
.fighter.is-stance .fighter__img { animation: stanceBob 1.6s ease-in-out infinite; }
@keyframes stanceBob {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-6px); }
}

/* Ring announcer banner */
.arena__ring {
  position: absolute;
  top: 40%; left: 50%;
  transform: translate(-50%, -50%) scale(0.3);
  z-index: 30;
  pointer-events: none;
  padding: 14px 40px;
  background: linear-gradient(90deg, var(--accent) 0%, var(--gold) 100%);
  color: #0a0f1a;
  font-size: clamp(28px, 5vw, 52px);
  font-weight: 900;
  letter-spacing: .2em;
  text-transform: uppercase;
  white-space: nowrap;
  border-radius: 6px;
  box-shadow: 0 0 40px rgba(var(--accent-rgb), .7), 0 0 80px rgba(var(--accent-rgb),.5);
  opacity: 0;
}
.arena__ring.is-shown { animation: ringShow 1.5s cubic-bezier(.2,.9,.3,1) forwards; }
@keyframes ringShow {
  0%   { opacity: 0; transform: translate(-50%, -50%) scale(0.3) rotate(-8deg); }
  20%  { opacity: 1; transform: translate(-50%, -50%) scale(1.15) rotate(-2deg); }
  75%  { opacity: 1; transform: translate(-50%, -50%) scale(1) rotate(-2deg); }
  100% { opacity: 0; transform: translate(-50%, -50%) scale(1.6) rotate(2deg); }
}

/* SUPER meter */
.arena__super {
  position: absolute; left: 50%; bottom: 18px;
  transform: translateX(-50%);
  z-index: 5;
  display: flex; align-items: center; gap: 8px;
  padding: 6px 12px;
  background: rgba(10,15,26,.7);
  border: 1px solid var(--gold-border);
  border-radius: 999px;
  opacity: 0;
  transition: opacity .4s;
  font-family: 'Inter', sans-serif;
}
.arena__super.is-shown { opacity: 1; }
.arena__super-label {
  font-size: 10px; font-weight: 900; letter-spacing: .2em;
  color: var(--gold);
}
.arena__super-track {
  display: block;
  width: 140px; height: 8px;
  background: rgba(255,255,255,.1);
  border-radius: 999px;
  overflow: hidden;
}
.arena__super-fill {
  display: block; height: 100%; width: 0%;
  background: linear-gradient(90deg, var(--gold), #fff 50%, var(--gold));
  background-size: 200% 100%;
  box-shadow: 0 0 10px rgba(var(--accent-rgb), .8);
  transition: width .4s;
}
.arena__super.is-full .arena__super-fill { animation: superShine 0.8s linear infinite; }
@keyframes superShine {
  0%   { background-position: 100% 50%; }
  100% { background-position: -100% 50%; }
}

/* Combo counter */
.arena__combo {
  position: absolute; top: 12px; right: 12px;
  z-index: 5;
  display: flex; align-items: baseline; gap: 6px;
  padding: 6px 12px;
  background: rgba(var(--accent-rgb),.15);
  border: 1px solid rgba(var(--accent-rgb),.5);
  border-radius: 4px;
  opacity: 0;
  transform: translateX(20px);
  transition: opacity .3s, transform .3s;
}
.arena__combo.is-shown { opacity: 1; transform: translateX(0); }
.arena__combo.is-pop   { animation: comboPop 0.4s; }
@keyframes comboPop {
  0%, 100% { transform: translateX(0) scale(1); }
  50%      { transform: translateX(0) scale(1.25); filter: brightness(1.5); }
}
.arena__combo-val {
  font-size: 24px; font-weight: 900;
  color: var(--accent);
  text-shadow: 0 0 8px rgba(var(--accent-rgb),.6);
  font-variant-numeric: tabular-nums;
}
.arena__combo-label {
  font-size: 10px; font-weight: 800;
  color: rgba(244,246,249,.75);
  letter-spacing: .15em; text-transform: uppercase;
}

/* Screen flash */
.arena__flash {
  position: absolute; inset: 0;
  background: #fff;
  opacity: 0;
  pointer-events: none;
  z-index: 25;
  mix-blend-mode: screen;
  border-radius: 14px;
}
.arena__flash.is-flash { animation: flashHit 0.25s; }
@keyframes flashHit {
  0%   { opacity: 0; }
  40%  { opacity: 1; }
  100% { opacity: 0; }
}

/* Chromatic aberration overlay (RGB split look) */
.arena__chroma {
  position: absolute; inset: 0;
  pointer-events: none;
  z-index: 24;
  border-radius: 14px;
  opacity: 0;
  background:
    radial-gradient(circle at 30% 50%, rgba(255,0,80,.3), transparent 35%),
    radial-gradient(circle at 70% 50%, rgba(0,180,255,.3), transparent 35%);
  mix-blend-mode: screen;
  filter: blur(2px);
}
.arena__chroma.is-split { animation: chromaSplit 0.6s; }
@keyframes chromaSplit {
  0%   { opacity: 0; transform: translateX(0); }
  30%  { opacity: 1; transform: translateX(-6px); }
  60%  { opacity: 1; transform: translateX(4px); }
  100% { opacity: 0; transform: translateX(0); }
}

/* Victory rays behind K.O. overlay */
.arena__rays {
  position: absolute; inset: 0;
  background:
    repeating-conic-gradient(from 0deg at 50% 50%,
      rgba(var(--accent-rgb), .22) 0deg,
      rgba(var(--accent-rgb), .22) 6deg,
      transparent 6deg,
      transparent 18deg);
  opacity: 0;
  animation: raysSpin 12s linear infinite;
  pointer-events: none;
}
.arena[data-state="ko"] .arena__rays { opacity: 1; animation: raysSpin 12s linear infinite, raysFadeIn 1s forwards; }
@keyframes raysSpin { to { transform: rotate(360deg); } }
@keyframes raysFadeIn { from { opacity: 0; } to { opacity: 1; } }

/* FLAWLESS VICTORY subtitle */
.arena__ko-flawless {
  margin: 6px 0;
  font-size: clamp(14px, 2vw, 22px);
  font-weight: 900;
  letter-spacing: .4em;
  color: #fff;
  opacity: 0;
  text-shadow: 0 0 14px rgba(255,255,255,.7);
}
.arena[data-state="ko"] .arena__ko-flawless { animation: flawlessIn 0.8s 0.8s forwards; }
@keyframes flawlessIn {
  0%   { opacity: 0; letter-spacing: 1em; transform: translateY(20px); }
  100% { opacity: 1; letter-spacing: .4em; transform: translateY(0); }
}

/* Winner pose вЂ” РљСЂСЏС‡РєРѕРІ rises */
.fighter.is-winning-pose {
  animation: winPose 1s cubic-bezier(.2,.9,.3,1) forwards;
  z-index: 3;
}
@keyframes winPose {
  0%   { transform: translateY(0) scale(1); filter: brightness(1); }
  60%  { transform: translateY(-14px) scale(1.04); filter: brightness(1.2) drop-shadow(0 0 20px rgba(var(--accent-rgb), .7)); }
  100% { transform: translateY(-8px) scale(1.03); filter: brightness(1.15) drop-shadow(0 0 24px rgba(var(--accent-rgb), .8)); }
}

/* Sound mute toggle */
.arena__sound {
  position: absolute; top: 12px; left: 12px;
  z-index: 5;
  width: 36px; height: 36px;
  border-radius: 50%;
  background: rgba(10,15,26,.6);
  border: 1px solid rgba(255,255,255,.15);
  color: #fff;
  font-size: 16px;
  cursor: pointer;
  display: grid; place-items: center;
  transition: background .2s, border-color .2s;
}
.arena__sound:hover { background: rgba(10,15,26,.9); border-color: var(--gold-border); }
.arena__sound.is-on { border-color: var(--gold); }

/* Bigger and punchier fx messages */
.arena__fx-msg--banner {
  font-size: clamp(40px, 8vw, 96px) !important;
  letter-spacing: .05em;
}
@media (min-width: 900px) {
  .arena { grid-template-columns: 1fr auto 1fr; gap: 20px; align-items: center; }
}

.fighter {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.fighter--hero { text-align: right; }
.fighter--villain { text-align: left; }
@media (max-width: 899px) {
  .fighter--hero, .fighter--villain { text-align: center; }
}

/* Speech bubble (pixel-sharp MK style) */
.fighter__bubble {
  position: relative;
  display: inline-block;
  align-self: center;
  padding: 12px 18px;
  max-width: 100%;
  font-weight: 800;
  font-size: 17px;
  line-height: 1.25;
  letter-spacing: .01em;
  clip-path: polygon(0 0, 100% 0, 100% 80%, 60% 80%, 55% 100%, 50% 80%, 0 80%);
  border-radius: 4px;
}
.fighter__bubble--villain {
  background: linear-gradient(180deg, #2a0005 0%, #5a0b14 100%);
  color: #ff5e6c;
  border: 1px solid rgba(var(--accent-rgb),.5);
  text-shadow: 0 0 8px rgba(var(--accent-rgb),.5);
  padding-bottom: 26px;
}
.fighter__bubble--hero {
  background: linear-gradient(180deg, #2d1f00 0%, #5a3e00 100%);
  color: var(--gold);
  border: 1px solid var(--gold-border);
  text-shadow: 0 0 8px rgba(var(--accent-rgb), .5);
  padding-bottom: 26px;
}
.fighter__bubble-hp {
  display: block;
  margin-bottom: 4px;
  font-size: 10px;
  letter-spacing: .25em;
  text-transform: uppercase;
  opacity: .7;
}

/* Fighter stage (image + aura) */
.fighter__stage {
  position: relative;
  margin: 0 auto;
  width: 100%;
  max-width: 360px;
  aspect-ratio: 3 / 4;
  display: grid;
  place-items: end center;
  overflow: hidden;
  border-radius: 14px;
  background:
    radial-gradient(ellipse at center bottom, rgba(255,255,255,.08) 0%, transparent 60%),
    linear-gradient(180deg, transparent 40%, rgba(10,15,26,.6) 100%);
  border: 1px solid rgba(255,255,255,.06);
}
.fighter__img {
  position: relative;
  z-index: 2;
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 20%;
  filter: contrast(1.05) saturate(1.1);
}
.fighter__aura {
  position: absolute;
  left: 50%; bottom: -20%;
  transform: translateX(-50%);
  width: 120%; height: 60%;
  border-radius: 50%;
  filter: blur(40px);
  z-index: 1;
  animation: auraPulse 2.4s infinite ease-in-out;
}
.fighter__aura--villain { background: radial-gradient(circle, rgba(var(--accent-rgb),.55), transparent 70%); }
.fighter__aura--hero    { background: radial-gradient(circle, rgba(var(--accent-rgb), .55), transparent 70%); }
@keyframes auraPulse {
  0%, 100% { opacity: .7; transform: translateX(-50%) scale(1); }
  50%      { opacity: 1;  transform: translateX(-50%) scale(1.08); }
}

/* Fighter plate (name + stats) */
.fighter__plate {
  padding: 14px 16px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 10px;
}
.fighter__name {
  margin: 0 0 2px;
  font-size: 22px; font-weight: 900;
  letter-spacing: .12em;
  color: #fff;
}
.fighter--villain .fighter__name { color: #ff6b78; }
.fighter--hero .fighter__name    { color: var(--gold); }
.fighter__role {
  margin: 0 0 10px;
  font-size: 12px;
  color: rgba(244,246,249,.65);
  text-transform: uppercase; letter-spacing: .08em;
}
.fighter__stats {
  list-style: none; padding: 0; margin: 0;
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  border-top: 1px solid rgba(255,255,255,.08);
  padding-top: 10px;
}
.fighter__stats li {
  display: flex; flex-direction: column;
  font-size: 11px;
  color: rgba(244,246,249,.55);
  text-transform: uppercase; letter-spacing: .06em;
}
.fighter__stats b {
  display: block; margin-top: 3px;
  font-size: 14px; color: #fff;
  font-variant-numeric: tabular-nums;
}
.fighter--hero .fighter__stats b    { color: var(--gold); }
.fighter--villain .fighter__stats b { color: #ff8890; }

/* VS badge */
.arena__vs {
  position: relative;
  display: grid; place-items: center;
  width: 110px; height: 110px;
  margin: 0 auto;
  font-family: 'Inter', sans-serif;
}
.arena__vs-text {
  position: relative;
  z-index: 2;
  font-size: 56px;
  font-weight: 900;
  letter-spacing: -.03em;
  color: #fff;
  background: linear-gradient(180deg, var(--gold) 0%, var(--accent) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 0 20px rgba(var(--accent-rgb), .45);
  filter: drop-shadow(0 4px 12px rgba(var(--accent-rgb),.4));
}
.arena__vs-glow {
  position: absolute; inset: 0;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--accent-rgb), .3), rgba(var(--accent-rgb),.2) 40%, transparent 70%);
  animation: vsPulse 2.2s infinite;
}
@keyframes vsPulse {
  0%, 100% { transform: scale(1);   opacity: .8; }
  50%      { transform: scale(1.2); opacity: 1; }
}

/* Finish bar */
.arena__cta {
  margin-top: 48px;
  text-align: center;
}
.arena__finish {
  margin: 0 0 18px;
  font-size: clamp(22px, 3vw, 32px);
  font-weight: 900;
  letter-spacing: .2em;
  color: var(--gold);
  text-shadow:
    0 0 12px rgba(var(--accent-rgb), .6),
    0 0 24px rgba(var(--accent-rgb),.4);
  animation: flicker 2.8s infinite;
}
@keyframes flicker {
  0%, 90%, 100% { opacity: 1; }
  92%           { opacity: .4; }
  94%           { opacity: 1; }
  96%           { opacity: .7; }
}
.arena__joke {
  margin: 18px auto 0;
  max-width: 560px;
  font-size: 12px;
  color: rgba(244,246,249,.55);
  font-style: italic;
  line-height: 1.5;
}

/* в”Ђв”Ђ Managers вЂ” СЃРїРѕРєРѕР№РЅРѕРµ Р·РЅР°РєРѕРјСЃС‚РІРѕ СЃ РєРѕРјР°РЅРґРѕР№ в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.managers { background: var(--surface-2); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.managers .container { text-align: center; }
.managers .kicker,
.managers .h2 { text-align: center; }
.managers__sub { max-width: 640px; color: var(--ink-dim); margin: 0 auto 32px; font-size: 15px; text-align: center; }
.managers__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  max-width: 440px;             /* размер как у одной из старых двух карточек */
  margin: 0 auto;
  text-align: left;
}
.manager {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.manager:hover { transform: translateY(-3px); border-color: var(--accent-border); box-shadow: var(--shadow-md); }
.manager__photo {
  position: relative;
  aspect-ratio: 4 / 3;
  background: var(--surface-3);
  overflow: hidden;
}
.manager__photo img { width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.manager__badge {
  position: absolute; left: 14px; bottom: 14px;
  padding: 6px 12px; border-radius: 999px;
  background: rgba(255,255,255,.92); color: var(--ink);
  font-size: 12px; font-weight: 700; letter-spacing: .01em;
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  box-shadow: 0 1px 2px rgba(16,18,23,.06);
}
.manager__body { padding: 22px 24px 24px; }
.manager__name { margin: 0 0 4px; font-size: 22px; font-weight: 800; color: var(--ink); letter-spacing: -.01em; }
.manager__role {
  margin: 0 0 16px;
  font-size: 13px; font-weight: 500;
  color: var(--ink-dim);
}
.manager__bullets {
  margin: 0 0 20px; padding: 0; list-style: none;
  display: grid; gap: 8px;
}
.manager__bullets li {
  position: relative; padding-left: 20px;
  font-size: 14.5px; line-height: 1.5; color: var(--ink);
}
.manager__bullets li::before {
  content: ''; position: absolute; left: 0; top: 10px;
  width: 10px; height: 2px; background: var(--accent);
  border-radius: 2px;
}
.manager__phone {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 11px 16px;
  background: var(--surface-2);
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  font-size: 15px; font-weight: 700; color: var(--ink);
  transition: background .15s, border-color .15s, color .15s, transform .15s;
}
.manager__phone::before { content: '\1F4DE'; font-size: 13px; font-family: 'Segoe UI Emoji', 'Apple Color Emoji', system-ui, sans-serif; }
.manager__phone:hover { background: var(--accent-soft); border-color: var(--accent-border); color: var(--accent); transform: translateY(-1px); }

.managers__note {
  margin: 20px auto 0; max-width: 720px;
  font-size: 13px; line-height: 1.5; color: var(--ink-dim);
  text-align: center;
}
.managers__trust {
  margin: 28px 0 0; padding: 18px 22px; list-style: none;
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius-md, 12px);
  display: grid; gap: 10px 28px; grid-template-columns: 1fr;
}
.managers__trust li {
  font-size: 14px; line-height: 1.45; color: var(--ink);
}
.managers__trust b { color: var(--ink); font-weight: 700; }
@media (min-width: 800px) {
  .managers__trust { grid-template-columns: repeat(3, minmax(0,1fr)); }
}

/* в”Ђв”Ђ KILLER FEATURE вЂ” РїСЂРµРјРёР°Р»СЊРЅР°СЏ СЃРІРµС‚Р»Р°СЏ СЃРµРєС†РёСЏ в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.killer {
  position: relative;
  padding: 72px 0 84px;
  background:
    radial-gradient(circle at 15% 20%, rgba(var(--accent-rgb), .14), transparent 45%),
    radial-gradient(circle at 85% 80%, rgba(var(--accent-rgb),.08),  transparent 45%),
    linear-gradient(180deg, #f6f9fc 0%, #f6f9fc 60%, #eef2f6 100%);
  overflow: hidden;
}
.killer::before,
.killer::after {
  content: ''; position: absolute; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold-border), transparent);
}
.killer::before { top: 0; }
.killer::after  { bottom: 0; }

.killer__card {
  position: relative;
  padding: 44px 48px 40px;
  border-radius: 24px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid rgba(var(--accent-rgb), .35);
  box-shadow:
    0 30px 60px -30px rgba(var(--accent-rgb),.22),
    0 12px 28px -14px rgba(var(--accent-rgb), .25),
    inset 0 0 0 1px rgba(255,255,255,1);
}
.killer__card::before {
  content: ''; position: absolute; inset: 0 0 auto 0; height: 4px;
  background: linear-gradient(90deg, var(--accent) 0%, var(--accent-hover) 50%, var(--accent) 100%);
  background-size: 200% 100%;
  animation: killerShine 3.5s linear infinite;
}

.killer__head { text-align: center; margin-bottom: 32px; }
.killer__tag {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 16px;
  background: linear-gradient(135deg, var(--accent) 0%, #5a6dbd 100%);
  color: #ffffff;
  font-size: 11px; font-weight: 900; letter-spacing: .16em;
  text-transform: uppercase;
  border-radius: 999px;
  margin-bottom: 16px;
  box-shadow: 0 6px 16px -6px rgba(var(--accent-rgb), .6);
}
.killer__title {
  margin: 0 auto;
  color: var(--ink);
  font-size: clamp(22px, 2.6vw, 32px);
  font-weight: 800; line-height: 1.18;
  letter-spacing: -.01em;
  max-width: 780px;
}
.killer__title span {
  color: var(--accent);
  font-weight: 900;
}

.killer__grid {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  gap: 16px;
  align-items: stretch;
  margin-bottom: 32px;
}
.killer__step {
  position: relative;
  background: linear-gradient(180deg, #ffffff 0%, #fafbfd 100%);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 26px 22px 22px;
  transition: transform .2s, box-shadow .2s, border-color .2s;
}
.killer__step:hover { transform: translateY(-2px); border-color: var(--line-strong); box-shadow: 0 16px 28px -16px rgba(16,18,23,.18); }
.killer__step--result {
  background:
    radial-gradient(circle at 100% 0%, rgba(var(--accent-rgb), .20), transparent 55%),
    linear-gradient(160deg, #f6f9fc 0%, #eef2f6 100%);
  border-color: var(--accent);
  box-shadow:
    0 20px 40px -20px rgba(var(--accent-rgb),.28),
    0 10px 24px -12px rgba(var(--accent-rgb), .40);
}
.killer__step--result::after {
  content: '';
  position: absolute; inset: 0;
  border-radius: 16px;
  border: 1px solid rgba(var(--accent-rgb), .5);
  pointer-events: none;
}
.killer__step-num {
  position: absolute; top: -14px; left: 22px;
  width: 32px; height: 32px; border-radius: 50%;
  background: #ffffff;
  color: var(--accent);
  border: 2px solid var(--accent);
  display: inline-flex; align-items: center; justify-content: center;
  font-weight: 900; font-size: 14px;
  box-shadow: 0 6px 14px -4px rgba(var(--accent-rgb),.35);
}
.killer__step--result .killer__step-num {
  background: linear-gradient(135deg, var(--accent) 0%, #5a6dbd 100%);
  color: #ffffff;
  border-color: var(--accent);
  box-shadow: 0 6px 16px -4px rgba(var(--accent-rgb), .6);
}
.killer__step-label {
  margin: 6px 0 10px;
  font-size: 11px; font-weight: 800; letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ink-mute);
}
.killer__step-value {
  margin: 0 0 10px;
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 800; letter-spacing: -.01em;
  color: var(--ink);
  line-height: 1.1;
  font-variant-numeric: tabular-nums;
}
.killer__step--result .killer__step-value {
  color: var(--accent);
}
.killer__step--result .killer__step-value b {
  font-size: 1.15em;
  color: var(--accent);
  font-weight: 900;
}
.killer__step-desc {
  margin: 0;
  font-size: 13px; line-height: 1.5;
  color: var(--ink-dim);
}
.killer__step--plus,
.killer__step--arrow {
  display: grid; place-items: center;
  width: 36px;
  font-size: 28px; font-weight: 800;
  background: none; border: 0; padding: 0;
  color: var(--accent);
  text-shadow: 0 2px 8px rgba(var(--accent-rgb), .4);
}
.killer__step--arrow { color: var(--accent); text-shadow: 0 2px 8px rgba(var(--accent-rgb),.4); }

.killer__bonuses {
  list-style: none; padding: 0; margin: 0 0 30px;
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px;
}
.killer__bonuses li {
  display: flex; align-items: center; justify-content: center; gap: 12px;
  padding: 14px 16px;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 12px;
  font-size: 13.5px; line-height: 1.4;
  color: var(--ink-body);
  text-align: center;
  transition: border-color .2s, box-shadow .2s;
}
.killer__bonuses li:hover { border-color: var(--gold-border); box-shadow: 0 8px 18px -10px rgba(var(--accent-rgb), .35); }
.killer__bonuses b { color: var(--ink); font-weight: 800; margin-right: 2px; }
.killer__bonus-ico {
  font-size: 20px; flex-shrink: 0;
  width: 36px; height: 36px;
  display: grid; place-items: center;
  background: linear-gradient(135deg, #eef0fa 0%, #eef2f6 100%);
  border-radius: 10px;
  border: 1px solid var(--line);
}

.killer__cta-row {
  display: flex; flex-direction: column; align-items: center; gap: 12px;
  text-align: center;
}
.killer__cta-row .btn--lg {
  min-width: 280px;
  background: linear-gradient(135deg, var(--accent) 0%, #15283a 100%);
  box-shadow: 0 12px 26px -10px rgba(var(--accent-rgb),.55);
}
.killer__cta-row .btn--lg:hover { box-shadow: 0 16px 32px -10px rgba(var(--accent-rgb),.7); }
.killer__note {
  margin: 0; max-width: 640px;
  font-size: 12px; line-height: 1.5;
  color: var(--ink-mute);
}

.trailer-promo {
  background: linear-gradient(180deg, #f4f7fb 0%, #eef3fa 100%);
  padding: clamp(44px, 7vw, 72px) 0;
}
.trailer-promo__head {
  max-width: 920px;
  margin: 0 auto 24px;
  text-align: center;
}
.trailer-promo__lead {
  margin: 14px auto 0;
  max-width: 640px;
  color: var(--ink-dim);
  font-size: 15.5px;
  line-height: 1.5;
  text-wrap: balance;
}
.trailer-promo__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
  margin-top: 32px;
}
.trailer-promo__grid .trailer-card { grid-column: span 2; }
/* 5 cards → 3 в верхнем ряду + 2 центрированных в нижнем (вместо пустой клетки) */
.trailer-promo__grid .trailer-card:nth-child(4) { grid-column: 2 / span 2; }
.trailer-promo__grid .trailer-card:nth-child(5) { grid-column: 4 / span 2; }

/* Trailer card — переработанный визуальный ритм:
   chip (тип) сверху → цена крупным акцентом → spec mid → ТЗА reference самым мелким. */
.trailer-card {
  border: 1px solid rgba(12, 27, 52, .10);
  border-radius: 16px;
  background: #fff;
  padding: 22px 22px 20px;
  box-shadow: 0 10px 22px -16px rgba(7, 18, 34, .25);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.trailer-card:hover {
  transform: translateY(-2px);
  border-color: var(--accent-border);
  box-shadow: 0 16px 32px -16px rgba(var(--accent-rgb), .30);
}

/* Тип — chip-плашка сверху, не текст */
.trailer-card__type {
  align-self: flex-start;
  margin: 0;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--accent);
  background: var(--accent-soft);
  border-radius: 999px;
}

/* Цена — главный акцент, занимает визуальный приоритет */
.trailer-card__price {
  margin: 4px 0 0;
  font-size: 30px;
  font-weight: 900;
  letter-spacing: -.02em;
  color: var(--accent);
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.trailer-card__price span {
  font-size: 18px;
  font-weight: 700;
  margin-left: 2px;
  vertical-align: baseline;
}

/* Спецификация — нейтральная средняя строка */
.trailer-card__meta {
  margin: 0;
  font-size: 13px;
  color: var(--ink-dim);
  line-height: 1.4;
}

/* Технический model-номер — самым мелким и приглушённым (dealer reference, не для покупателя) */
.trailer-card__model {
  margin: 0;
  padding-top: 10px;
  border-top: 1px dashed var(--line);
  font-size: 11.5px;
  font-weight: 600;
  color: var(--ink-mute);
  letter-spacing: .02em;
  font-family: 'SF Mono', 'Consolas', 'Monaco', monospace;
}

.trailer-promo__cta {
  margin-top: 28px;
  display: flex;
  justify-content: center;
}
@media (max-width: 900px) {
  .trailer-promo__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
  .trailer-promo__grid .trailer-card { grid-column: span 2; }
  /* tablet: 2 + 2 + 1 centered */
  .trailer-promo__grid .trailer-card:nth-child(4) { grid-column: 1 / span 2; }
  .trailer-promo__grid .trailer-card:nth-child(5) { grid-column: 2 / span 2; }
}
@media (max-width: 540px) {
  .trailer-promo { padding: 36px 0 46px; }
  .trailer-promo__lead { font-size: 14.5px; }
  .trailer-card { padding: 18px 18px 16px; gap: 8px; }
  .trailer-card__price { font-size: 26px; }
  .trailer-promo__grid { grid-template-columns: 1fr; gap: 12px; }
  .trailer-promo__grid .trailer-card,
  .trailer-promo__grid .trailer-card:nth-child(4),
  .trailer-promo__grid .trailer-card:nth-child(5) { grid-column: 1 / -1; }
  .trailer-promo__benefits { grid-template-columns: 1fr; gap: 8px; }
  .trailer-card__price { font-size: 24px; }
  .trailer-promo__cta .btn--lg { min-width: 0; width: 100%; }
}

@media (max-width: 900px) {
  .killer { padding: 56px 0 64px; }
  .killer__card { padding: 34px 28px 30px; }
  .killer__grid {
    grid-template-columns: 1fr;
    gap: 10px;                     /* было 28 — компактный вертикальный ритм */
  }
  /* Разделители «+» и «↓» — НЕ карточки. Сбрасываем всё унаследованное
     от .killer__step и центрируем символ строго по середине ряда. */
  .killer__step--plus,
  .killer__step--arrow {
    grid-column: 1 / -1;                  /* span на всю ширину 1fr-сетки */
    width: 100%;
    height: 40px;
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 0;                         /* убираем text-baseline от пустого узла */
    line-height: 0;
  }
  .killer__step--plus:hover,
  .killer__step--arrow:hover { transform: none; box-shadow: none; border-color: transparent; background: transparent; }
  .killer__step--plus::before  {
    content: '+';
    display: inline-block;
    font-size: 32px;
    font-weight: 800;
    color: var(--accent);
    line-height: 1;
    font-family: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
    text-align: center;
    /* убираем optical-bias плюса в системных шрифтах через micro-shift */
    transform: translateY(-1px);
  }
  .killer__step--arrow::before {
    content: '\2193';
    display: inline-block;
    font-size: 26px;
    font-weight: 800;
    color: var(--accent);
    line-height: 1;
    text-align: center;
  }
  .killer__bonuses { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 540px) {
  .killer { padding: 44px 0 56px; }
  .killer__card { padding: 28px 20px 24px; border-radius: 20px; }
  .killer__bonuses { grid-template-columns: 1fr; gap: 10px; }
  .killer__bonuses li { font-size: 13px; padding: 12px 14px; }
  .killer__step { padding: 20px 18px 16px; }
  .killer__step-num { width: 28px; height: 28px; font-size: 12px; top: -12px; left: 18px; }
  .killer__cta-row .btn--lg { min-width: 0; width: 100%; }
}

/* в•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђ
   RESPONSIVE REFINEMENTS вЂ” РєРѕРјРїР»РµРєСЃРЅР°СЏ Р°РґР°РїС‚Р°С†РёСЏ РїРѕРґ РІСЃРµ СѓСЃС‚СЂРѕР№СЃС‚РІР°
   РџРѕСЂСЏРґРѕРє: Р±РѕР»СЊС€РёРµ в†’ РјР°Р»РµРЅСЊРєРёРµ СЌРєСЂР°РЅС‹
   в•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђ */

/* в”Ђв”Ђ HERO: РµСЃС‚РµСЃС‚РІРµРЅРЅР°СЏ РІС‹СЃРѕС‚Р° РїРѕРґ РєРѕРЅС‚РµРЅС‚ (РЅРёРєР°РєРёС… max-/min-height).
   Hero СЂР°СЃС‚С‘С‚ СЂРѕРІРЅРѕ РїРѕРґ РєРѕРЅС‚РµРЅС‚ + padding. Р•СЃР»Рё РєРѕРЅС‚РµРЅС‚Р° РјРЅРѕРіРѕ вЂ”
   Р±Р»РѕРє РїСЂРѕСЃС‚Рѕ СЃС‚Р°РЅРѕРІРёС‚СЃСЏ РІС‹С€Рµ, РєРѕРЅС‚РµРЅС‚ РЅРµ РѕР±СЂРµР·Р°РµС‚СЃСЏ.              */

/* в”Ђв”Ђ Desktop large (в‰Ґ1440) в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
@media (min-width: 1440px) {
  :root { --container: 1280px; }
  .hero__content { max-width: 680px; }
  .hero__title { font-size: clamp(36px, 4.2vw, 60px); }
}

/* в”Ђв”Ђ Tablet landscape (в‰¤1024) в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
@media (max-width: 1024px) {
  :root { --gutter: 18px; }
  section { padding: 64px 0; }
  .h2 { font-size: 26px; }
  .hero__inner { padding: 32px 18px 44px; }
  .hero__content { max-width: 560px; }
  .hero__killer { padding: 12px 16px 14px; }
  .hero__killer-title { font-size: 18px; }
  .hero__killer-title b { font-size: 22px; }
  .hero__killer-desc { font-size: 13.5px; }
  .hero__lead { font-size: 16px; }
  .hero__usp li { font-size: 14.5px; }
}

/* в”Ђв”Ђ Tablet portrait (в‰¤900) в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
@media (max-width: 900px) {
  .hero__bg {
    background:
      linear-gradient(180deg,
        rgba(10,22,40,.82) 0%,
        rgba(10,22,40,.58) 55%,
        rgba(10,22,40,.72) 100%),
      url('./hero.png') center right / cover no-repeat;
  }
  .hero__content { max-width: 100%; }
  .subsidy__inner { grid-template-columns: 1fr; gap: 28px; }
  .trust__grid { grid-template-columns: repeat(2, 1fr); }
}

/* в”Ђв”Ђ Mobile L (в‰¤640) в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
@media (max-width: 640px) {
  :root { --gutter: 16px; }
  section { padding: 48px 0; }
  .h2 { font-size: 22px; line-height: 1.22; }
  .kicker { font-size: 11px; }

  /* Hero вЂ” РєРѕРјРїР°РєС‚РЅР°СЏ РІС‹СЃРѕС‚Р° РїРѕРґ viewport СЃРјР°СЂС‚С„РѕРЅР° в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
  .hero { min-height: 100svh; }
  .hero__inner {
    padding: 16px 16px 20px;
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }
  .hero__bg { background: url('./hero.png') center/cover no-repeat; }
  .hero__title { font-size: clamp(22px, 6.5vw, 30px); line-height: 1.12; margin-bottom: 8px; }
  .hero__lead { display: none; }

  /* Eyebrow вЂ” РєРѕРјРїР°РєС‚РЅР°СЏ РїР»Р°С€РєР° СЃ gold-РѕР±РІРѕРґРєРѕР№ */
  .eyebrow {
    display: inline-block;
    padding: 5px 11px;
    margin: 0 0 14px;
    background: rgba(var(--accent-rgb), .12);
    border: 1px solid rgba(var(--accent-rgb), .4);
    border-radius: 999px;
    color: #eef0fa;
    font-size: 10px;
    letter-spacing: .1em;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 1.3;
  }

  .hero__content {
    display: flex;
    flex-direction: column;
    min-height: 100%;
  }

  .hero__usp {
    margin-top: auto;
    margin-bottom: 14px;
    padding: 10px 12px;
    gap: 7px;
    background: rgba(10,15,26,.55);
    border: 1px solid rgba(var(--accent-rgb), .18);
    border-radius: 10px;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
  }
  .hero__usp li {
    font-size: 13px;
    padding-left: 26px;
    min-height: 18px;
    line-height: 1.4;
    color: rgba(255,255,255,.92);
  }
  .hero__usp li .check { top: 1px; }
  .check { width: 18px; height: 18px; font-size: 11px; }

  /* РџРѕРґР»РѕР¶РєР° hero: СѓСЃРёР»РёС‚СЊ РєРѕРЅС‚СЂР°СЃС‚ С‚РµРєСЃС‚Р° */
  .hero__bg::after { content: none; }

  /* Killer-teaser СЃРєСЂС‹С‚ РЅР° РјРѕР±РёР»СЊРЅРѕРј вЂ” РґСѓР±Р»РёСЂСѓРµС‚СЃСЏ РїРѕР»РЅРѕР№ СЃРµРєС†РёРµР№ РЅРёР¶Рµ */
  .hero__killer { display: none; }

  .hero__cta { margin-top: 0; padding-top: 0; gap: 8px; }
  .hero__cta-note { font-size: 12px; color: rgba(255, 255, 255, 0.82); }
  .hero .hero__cta .btn--lg { font-size: 14px; padding: 12px 16px; }

  /* Р¤РѕСЂРјС‹ lead РІРЅРµ hero (С„РёРЅР°Р»СЊРЅС‹Р№ Р±Р»РѕРє, РјРѕРґР°Р»РєРё) */
  .lead { padding: 12px; border-radius: 12px; }
  .lead__hint { font-size: 12.5px; margin-bottom: 8px; }
  .lead__input { font-size: 16px; padding: 11px 14px; }  /* 16px С‡С‚РѕР±С‹ iOS РЅРµ Р·СѓРјРёР» */
  .lead .btn--lg { font-size: 13.5px; padding: 12px 14px; line-height: 1.2; }
  .lead__consent { font-size: 11px; gap: 6px; margin-top: 8px; line-height: 1.35; }
  .lead__consent-mini { font-size: 10px; margin-top: 4px; }
  .lead__row { gap: 6px; }

  /* Topbar вЂ” РєРѕРјРїР°РєС‚ */
  .topbar__inner { min-height: 56px; padding: 10px 16px; }
  .logo__mark { font-size: 18px; }
  .logo__sub { display: none; }   /* РѕСЃРІРѕР±РѕР¶РґР°РµРј РјРµСЃС‚Рѕ */
  .topbar__right { gap: 10px; }

  /* Trust-strip вЂ” 2Г—2 СЃРѕ СЃР¶Р°С‚С‹Рј padding */
  .trust__item { padding: 18px 12px; gap: 2px; }
  .trust__ico { width: 38px; height: 38px; font-size: 18px; margin-bottom: 4px; }
  .trust__item b { font-size: 18px; }
  .trust__item span { font-size: 12px; }

  /* Subsidy-card вЂ” СѓР¶Рµ */
  .subsidy__card { padding: 22px 18px; }
  .subsidy__hero-num { font-size: clamp(28px, 7vw, 40px); }
  .subsidy__hero-num--compact { font-size: clamp(20px, 5vw, 26px); }

  /* Calculator вЂ” РІРµСЂС‚РёРєР°Р»СЊ */
  .calcwidget__controls, .calcwidget__result { padding: 20px; }
  .calchero { padding: 16px 14px; }
  .calchero__num { font-size: clamp(26px, 7vw, 36px); }
  .calcrow { font-size: 13.5px; padding: 9px 0; }
  .calcrow b { font-size: 14.5px; }
  .calcrow--savings b { font-size: 18px; }
  .calcfield { margin-bottom: 18px; }
  .calc__intro { font-size: 14px; }
  .calcwidget__note { font-size: 12px; padding: 10px 11px; }

  /* Models вЂ” РѕРґРЅР° РєРѕР»РѕРЅРєР°, С„РѕС‚Рѕ 16:10 С‡С‚РѕР±С‹ РЅРµ Р±С‹Р»Рѕ РѕРіСЂРѕРјРЅРѕРіРѕ */
  .models__grid { gap: 16px; }
  .model__img { aspect-ratio: 16 / 10; }
  .model__title { font-size: 19px; margin: 14px 18px 4px; }
  .model__meta  { font-size: 13px; margin: 0 18px 12px; }
  .model__cta   { margin: auto 18px 16px; font-size: 14px; }
  .model__badge { font-size: 11px; padding: 5px 10px; left: 10px; top: 10px; }

  /* Process вЂ” 1 РєРѕР»РѕРЅРєР°, С‚Р°Р№РјР»Р°Р№РЅ РІРµСЂС‚РёРєР°Р»СЊРЅС‹Р№ */
  .process__list { gap: 12px; }
  .process__list li { padding: 16px 16px 16px 64px; }
  .process__num { width: 32px; height: 32px; font-size: 14px; left: 16px; top: 14px; }
  .process__list b { font-size: 16px; }
  .process__list p { font-size: 14px; }

  /* FAQ */
  .faq details { padding: 16px 18px; }
  .faq summary { font-size: 15px; gap: 12px; }
  .faq summary::after { width: 24px; height: 24px; font-size: 18px; }
  .faq details p { font-size: 14px; }

  /* Final CTA */
  .final-cta__inner { padding: 0 4px; }

  /* Footer вЂ” 2 РєРѕР»РѕРЅРєРё */
  .footer { padding: 44px 0 24px; }
  .footer__grid { grid-template-columns: 1fr 1fr; gap: 24px 16px; }

  /* Manager-cards */
  .manager__body { padding: 18px 18px 20px; }
  .manager__name { font-size: 20px; }
  .manager__bio  { font-size: 14px; margin-bottom: 14px; }

  /* Modal */
  .modal { max-width: calc(100% - 24px); }
  .modal__form { padding: 22px 20px; }
  .modal__form .h2 { font-size: 20px; }
}

/* в”Ђв”Ђ Mobile S (в‰¤400) вЂ” XS iPhone SE/mini, СѓР·РєРёРµ Android в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
@media (max-width: 400px) {
  :root { --gutter: 14px; }
  .hero__title { font-size: clamp(24px, 7.5vw, 30px); }
  .hero__inner { padding: 32px 14px 48px; }
  .hero__cta-note { display: none; }
  .lead .btn--lg { font-size: 13px; padding: 13px 12px; }

  /* Trust-strip РЅР° СЃРѕРІСЃРµРј СѓР·РєРёС… вЂ” 1 РєРѕР»РѕРЅРєР° */
  .trust__grid { grid-template-columns: 1fr; }

  /* Topbar: РµСЃР»Рё РЅРµ С…РІР°С‚Р°РµС‚ РјРµСЃС‚Р° вЂ” CTA С‡СѓС‚СЊ СѓР¶Рµ */
  .topbar__right .btn { font-size: 12px; padding: 9px 11px; }
}

/* в”Ђв”Ђ Landscape РЅР° РєРѕСЂРѕС‚РєРёС… СѓСЃС‚СЂРѕР№СЃС‚РІР°С… в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
@media (max-height: 560px) and (orientation: landscape) {
  .hero { min-height: 0; }
  .hero__inner { padding: 24px 16px 32px; }
}

/* в”Ђв”Ђ Sticky-mobile: РЅРµ РїРµСЂРµРєСЂС‹РІР°РµС‚ С„РёРЅР°Р»СЊРЅС‹Р№ CTA в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
@media (max-width: 767px) {
  body { padding-bottom: 78px; }
  .final-cta { padding-bottom: 80px; }
  /* Hero umРµСЃС‚РёРј РІ РІРёРґРёРјС‹Р№ viewport РјРёРЅСѓСЃ sticky-bar (78px) */
  .hero,
  .hero__inner { min-height: calc(100svh - 78px); }
}

/* в”Ђв”Ђ Mobile gallery (С‚РѕР»СЊРєРѕ РЅР° СѓР·РєРёС… СЌРєСЂР°РЅР°С…) в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
.mgallery { display: none; padding: 24px 0 30px; background: var(--surface-2); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.mgallery__scroll {
  display: flex;
  gap: 12px;
  padding: 0 16px 6px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
}
.mgallery__scroll { scrollbar-width: none; }
.mgallery__scroll::-webkit-scrollbar { display: none; }
.mgallery__item {
  flex: 0 0 84%;
  scroll-snap-align: center;
  margin: 0;
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 12px 28px -14px rgba(15,23,32,.25);
}
.mgallery__item img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.mgallery__item figcaption {
  padding: 10px 14px;
  font-size: 13px; font-weight: 700; color: var(--ink);
  background: #fff;
}
.mgallery__cta { display: block; margin: 18px 16px 0; width: calc(100% - 32px); }

/* в•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђ
   MOBILE ADAPTATION (в‰¤ 640 px) вЂ” РєРѕРјРїР°РєС‚РЅС‹Р№ С‚РµРєСЃС‚, РєСЂСѓРїРЅС‹Рµ С„РѕС‚Рѕ
   в•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђв•ђ */
@media (max-width: 640px) {
  /* вЂ” Hero: РјРµРЅСЊС€Рµ РІРѕР·РґСѓС…Р°, РєРѕРјРїР°РєС‚РЅРµРµ С‚РµРєСЃС‚ вЂ” */
  .hero { min-height: 0; }
  .hero__inner { padding: 36px 16px 48px; }
  .hero__title { font-size: clamp(28px, 8vw, 36px); margin-bottom: 14px; }
  .hero__lead { font-size: 15px; margin-bottom: 16px; }
  .hero__usp { gap: 6px; margin-bottom: 18px; }
  .hero__usp li { font-size: 14px; }

  /* вЂ” Killer-Р±Р»РѕРє РєРѕРјРїР°РєС‚РЅРѕ: С‚РѕР»СЊРєРѕ Р·Р°РіРѕР»РѕРІРѕРє + РіР»Р°РІРЅР°СЏ С†РёС„СЂР° вЂ” */
  .hero__killer { padding: 14px 16px; margin-bottom: 16px; }
  .hero__killer-tag { font-size: 10px; }
  .hero__killer-title { font-size: 16px; }
  .hero__killer-desc { font-size: 13px; }
  .killer__steps { display: none; }     /* СЃРєСЂС‹РІР°РµРј С€Р°РіРё-СЂР°СЃС‡С‘С‚Р° РЅР° РјРѕР±РёР»Рµ */

  /* вЂ” Trust strip: 2Г—2 РІРјРµСЃС‚Рѕ 4Г—1 вЂ” */
  .trust__grid { grid-template-columns: repeat(2, 1fr); }
  .trust__item { padding: 16px 10px; }
  .trust__item b { font-size: 16px; }
  .trust__item span { font-size: 12px; }

  /* вЂ” Subsidy: РєРѕСЂРѕС‚РєРѕ вЂ” */
  .subsidy__lead { font-size: 14px; }
  .subsidy__hero-num { font-size: 38px; }

  /* вЂ” РљР°Р»СЊРєСѓР»СЏС‚РѕСЂ: СѓР±СЂР°С‚СЊ РґР»РёРЅРЅРѕРµ РІСЃС‚СѓРїР»РµРЅРёРµ, СѓР¶Р°С‚СЊ вЂ” */
  .calc__intro { font-size: 13px; }
  .calc__intro b { display: block; margin-top: 4px; }
  .calcwidget__controls, .calcwidget__result { padding: 18px; }
  .calchero__num { font-size: 30px; }

  /* вЂ” Models grid: 2 РєРѕР»РѕРЅРєРё + РєРІР°РґСЂР°С‚РЅС‹Рµ С„РѕС‚Рѕ РґР»СЏ РІРёР·СѓР°Р»Р° вЂ” */
  .models__grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .model__img { aspect-ratio: 1 / 1; }
  .model__title { font-size: 15px; margin: 12px 12px 4px; }
  .model__meta { font-size: 11px; margin: 0 12px 10px; }
  .model__cta { font-size: 12px; margin: auto 12px 12px; padding: 0; background: transparent; border: 0; color: var(--accent); cursor: pointer; text-align: left; }
  .model__badge { font-size: 10px; padding: 4px 8px; left: 8px; top: 8px; }
  .models { padding: 40px 0 8px; }

  /* вЂ” Р’РєР»СЋС‡Р°РµРј РіРѕСЂРёР·РѕРЅС‚Р°Р»СЊРЅСѓСЋ РіР°Р»РµСЂРµСЋ вЂ” */
  .mgallery { display: block; }

  /* вЂ” Process: СѓР±РёСЂР°РµРј aside, С€Р°РіРё РІ 1 РєРѕР»РѕРЅРєСѓ РєРѕРјРїР°РєС‚РЅРѕ вЂ” */
  .process__summary { display: none; }
  .process__top { grid-template-columns: 1fr; }
  .process__lead { font-size: 14px; }
  .process__list li { padding: 14px 14px 14px 56px; }

  /* вЂ” Reviews: СЃРїСЂСЏС‚Р°С‚СЊ РІС‚РѕСЂРѕР№ Рё С‚СЂРµС‚РёР№, РѕСЃС‚Р°РІРёС‚СЊ РѕРґРёРЅ вЂ” */
  .review:nth-of-type(n+2) { display: none; }

  /* вЂ” FAQ: РєРѕРјРїР°РєС‚РЅРµРµ вЂ” */
  .faq summary { font-size: 14.5px; }
  .faq details { padding: 14px 16px; }
  .faq details p { font-size: 13.5px; }

  /* вЂ” Р¤РёРЅР°Р»СЊРЅС‹Р№ CTA: РјРµРЅСЊС€Рµ padding вЂ” */
  .final-cta { padding: 36px 0; }
  .final-cta h2 { font-size: 22px; }

  /* вЂ” Footer: РѕРґРЅР° РєРѕР»РѕРЅРєР°, СЂРµРєРІРёР·РёС‚С‹ РєРѕРјРїР°РєС‚РЅРµРµ вЂ” */
  .footer__grid { grid-template-columns: 1fr; gap: 18px; }
  .footer__small { font-size: 12px; }

  /* вЂ” Sections РѕР±С‰РёР№ padding вЂ” */
  section { padding: 40px 0; }

  /* вЂ” Sticky bar: С‡СѓС‚СЊ РІС‹С€Рµ РґР»СЏ Р±РµР·РѕРїР°СЃРЅРѕР№ Р·РѕРЅС‹ iOS вЂ” */
  body { padding-bottom: 110px; }
}

@media (max-width: 380px) {
  .models__grid { grid-template-columns: 1fr; }   /* РѕС‡РµРЅСЊ СѓР·РєРёРµ СЌРєСЂР°РЅС‹ вЂ” 1 РєРѕР»РѕРЅРєР° */
  .mgallery__item { flex: 0 0 90%; }
  .trust__grid { grid-template-columns: 1fr; }
}

/* в”Ђв”Ђ Reduce motion в”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђв”Ђ */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { animation: none !important; transition: none !important; }
}

/* в”Ђв”Ђ РџР°С‚С‡: РѕРґРёРЅ Р°РєС†РµРЅС‚ РЅР° СЃРµСЂРІРёСЃРµ (РїРѕР»РѕСЃР° РґРѕРІРµСЂРёСЏ), РјРѕР±РёР»СЊРЅС‹Р№ РІРёР·СѓР°Р» в”Ђв”Ђ */
.subsidy__lead--short,
.calc__intro--short {
  display: none;
}

@media (min-width: 768px) {
  section.mgallery.mgallery--early {
    display: none !important;
  }
}

@media (max-width: 767px) {
  section.mgallery.mgallery--early {
    display: block !important;
    padding: 14px 0 22px;
  }

  .mgallery--early .mgallery__item {
    flex: 0 0 90%;
  }

  .mgallery--early .mgallery__item img {
    aspect-ratio: 3 / 4;
    min-height: 220px;
    object-fit: cover;
  }

  .mgallery--early figcaption {
    font-size: 12px;
    padding: 8px 12px;
  }

  .subsidy__lead--long,
  .calc__intro--long {
    display: none !important;
  }

  .subsidy__lead--short,
  .calc__intro--short {
    display: block !important;
  }

  .subsidy__lead--short {
    color: var(--ink-dim);
    font-size: 15px;
    margin: 0 0 18px;
    line-height: 1.45;
  }

  .calc__intro--short {
    color: var(--ink-dim);
    font-size: 14px;
    margin: 0 0 18px;
    line-height: 1.45;
  }

  .killer__step-desc,
  .killer__note,
  .subsidy__foot,
  .process__list li > p,
  .manager__bullets,
  .managers__sub,
  .calchero__sub,
  .calcwidget__note {
    display: none !important;
  }

  .process__meta {
    flex-wrap: wrap;
    gap: 6px;
  }

  .process__meta-item {
    font-size: 12px;
  }

  .model__img {
    aspect-ratio: 3 / 4 !important;
    min-height: 200px;
  }
}

/* Match the current live mobile hero image and framing. */
@media (max-width: 640px) {
  .hero {
    min-height: calc(100svh - 78px);
  }

  .hero__inner {
    min-height: calc(100svh - 78px);
    display: flex;
    flex-direction: column;
    padding: 6px 16px 20px !important;
  }

  .hero__content {
    flex: 1;
    display: flex;
    flex-direction: column;
  }

  .hero__bg {
    background:
      url('hero-main.jpg') center 64% / cover no-repeat,
      #0f1720 !important;
  }

  .hero__bg::before {
    content: none;
  }

  .hero__bg::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(
      180deg,
      rgba(10, 22, 40, 0.62) 0%,
      rgba(10, 22, 40, 0.34) 24%,
      rgba(10, 22, 40, 0.14) 52%,
      rgba(10, 22, 40, 0.06) 100%
    );
  }

  /* Узкие телефоны (≤640px) — компактные размеры, без !important-конфликтов */
  .hero__usp {
    margin-bottom: 4px;
  }

  .hero__title {
    font-size: clamp(28px, 8.5vw, 38px);
    line-height: 1.06;
    margin-top: 0;
    color: #ffffff;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.5);   /* чистый drop-shadow, без glow */
  }

  .hero__accent {
    color: #ffffff;
    text-shadow: 0 2px 14px rgba(0, 0, 0, 0.55);
  }

  .killer .container,
  .process .container {
    max-width: 560px;
    padding-left: 24px;
    padding-right: 24px;
  }

  .killer__card {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 767px) {
  .process__list {
    gap: 10px;
  }

  .process__list li {
    min-height: 0 !important;
    padding: 12px 12px 10px !important;
    border-radius: 12px;
  }

  .process__card-top {
    margin-bottom: 8px;
    min-height: 0;
    gap: 8px;
  }

  .process__num {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    font-size: 13px;
  }

  .process__eta {
    min-height: 24px;
    padding: 0 9px;
    font-size: 11px;
  }

  .process__list b {
    font-size: 15px;
    margin-bottom: 0;
    line-height: 1.25;
  }
}

