/* ============================================================
   LITEZ SERVICES & GROUP — дизайн-система litezgroup.uz  v3
   Шрифты: Montserrat ExtraBold (H1/H2) · Montserrat Bold (H3)
           Roboto (весь текст)
   Все классы в namespace .lz-* — bootstrap Yii2 не конфликтует
   ============================================================ */
:root{
  --navy-900:#081C3A;
  --navy-800:#0C2A52;
  --navy:#103463;
  --navy-700:#123A6D;
  --navy-600:#17457E;
  --orange:#F58220;
  --orange-600:#DC6E10;
  --orange-300:#FFA45C;
  --gold:#FFB618;
  --cream:#FFFCFA;
  --mist:#F4F6FA;
  --paper:#FFFFFF;
  --ink:#12233F;
  --muted:#5C6B85;
  --line-d:rgba(255,255,255,.14);
  --line-l:#E2E8F2;
  --shadow:0 26px 60px -30px rgba(12,42,82,.4);
  --glow-o:0 0 24px rgba(245,130,32,.55);
  --glow-g:0 0 22px rgba(255,182,24,.5);
  --hd:'Montserrat',system-ui,sans-serif;
  --bd:'Roboto',system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:120px;
  overflow-x:clip}      /* именно clip: hidden ломает position:sticky у шапки */
body{margin:0;max-width:100%;background:var(--paper);color:var(--ink);font-family:var(--bd);
  font-size:16.5px;line-height:1.68;font-weight:400;-webkit-font-smoothing:antialiased;
  overflow-x:clip}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font-family:var(--bd);color:inherit}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:4px}
.lz-wrap{width:min(1220px,100% - 40px);margin-inline:auto}

/* ---------- типографика ---------- */
h1,h2,h3,h4,.lz-h1,.lz-h2,.lz-h3{font-family:var(--hd)}
.lz-h1{font-weight:800;line-height:1.08;letter-spacing:-.02em;font-size:clamp(30px,4.6vw,54px);margin:0}
.lz-h2{font-weight:800;line-height:1.14;letter-spacing:-.018em;font-size:clamp(25px,3.1vw,40px);margin:0}
.lz-h3{font-weight:700;font-size:clamp(17px,1.9vw,20px);margin:0;line-height:1.34;letter-spacing:-.008em}
.lz-lead{font-size:clamp(16px,1.25vw,18px);color:var(--muted);max-width:60ch;line-height:1.7}
.lz-label{font-family:var(--bd);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}
.lz-sec{padding:clamp(58px,7vw,104px) 0}
.lz-sec--tight{padding:clamp(44px,5vw,68px) 0}
.lz-sec-head{max-width:780px;margin-bottom:clamp(30px,4vw,50px)}
.lz-sec-head .lz-h2{margin-top:18px}
.lz-sec-head p{margin:16px 0 0;color:var(--muted);font-size:16.5px}

/* ============================================================
   ТЁМНЫЕ СЕКЦИИ + НЕОН
   ============================================================ */
.lz-dark{position:relative;overflow:hidden;color:#fff;
  background:linear-gradient(150deg,#17457E 0%,#103463 42%,#081C3A 100%)}
.lz-dark .lz-lead,.lz-dark .lz-sec-head p{color:rgba(255,255,255,.74)}
/* сетка */
.lz-dark::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.38;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:66px 66px;
  mask-image:radial-gradient(circle at 50% 35%,#000 0%,transparent 78%)}
/* мягкое свечение — строго позади контента, ничего не перекрывает */
.lz-dark::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
          radial-gradient(460px 340px at 82% 12%,rgba(245,130,32,.11),transparent 62%),
          radial-gradient(520px 380px at 12% 88%,rgba(23,69,126,.3),transparent 64%)}
@keyframes lz-breathe{to{opacity:.55;transform:translate3d(0,-22px,0)}}
.lz-dark > .lz-wrap{position:relative;z-index:2}

/* неоновая линия-бегунок */
.lz-neonline{position:relative;height:2px;background:rgba(255,255,255,.09);overflow:hidden}
.lz-neonline::after{content:"";position:absolute;top:0;left:-45%;width:45%;height:100%;
  background:linear-gradient(90deg,transparent,var(--orange),var(--gold),transparent);
  box-shadow:var(--glow-o);animation:lz-run 4.2s linear infinite}
@keyframes lz-run{to{left:100%}}

/* неоновое свечение текста */
.lz-neon{color:var(--gold);text-shadow:0 0 12px rgba(255,182,24,.55),0 0 34px rgba(245,130,32,.32);
  animation:lz-flicker 6s ease-in-out infinite}
@keyframes lz-flicker{0%,100%{text-shadow:0 0 12px rgba(255,182,24,.5),0 0 30px rgba(245,130,32,.26)}50%{text-shadow:0 0 16px rgba(255,182,24,.72),0 0 42px rgba(245,130,32,.4)}}

/* карточка со световым бликом — эффект полностью внутри блока */
.lz-glowcard{position:relative;overflow:hidden;border-radius:20px;
  border:1px solid rgba(255,255,255,.18);
  background:linear-gradient(165deg,#12355F,#0A2246);
  box-shadow:0 24px 60px -26px rgba(0,0,0,.8),0 0 0 rgba(245,130,32,0);
  animation:lz-halo 5s ease-in-out infinite}
@keyframes lz-halo{
  0%,100%{box-shadow:0 24px 60px -26px rgba(0,0,0,.8),0 0 26px -6px rgba(245,130,32,.28)}
  50%    {box-shadow:0 24px 60px -26px rgba(0,0,0,.8),0 0 46px -4px rgba(245,130,32,.5)}}
/* блик пробегает по карточке и обрезается её границами */
.lz-glowcard::after{content:"";position:absolute;top:-60%;left:-70%;width:45%;height:220%;
  pointer-events:none;transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.13),rgba(255,182,24,.16),transparent);
  animation:lz-sweep 6.5s ease-in-out infinite}
@keyframes lz-sweep{0%{left:-70%}55%,100%{left:130%}}
/* верхняя световая кромка */
.lz-glowcard::before{content:"";position:absolute;top:0;left:12%;right:12%;height:1px;z-index:2;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.75}

/* ---------- лента-шеврон (фирменный приём с флаера) ---------- */
.lz-ribbon{display:inline-block;background:var(--orange);color:#fff;font-family:var(--hd);
  font-weight:700;font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;
  padding:9px 30px 9px 18px;
  clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%)}
.lz-ribbon--glow{box-shadow:0 0 22px rgba(245,130,32,.5)}
.lz-ribbon--dark{background:var(--navy-700)}

/* ---------- контурные пилюли ---------- */
.lz-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.lz-badge{border:1.6px solid rgba(255,255,255,.35);border-radius:999px;padding:9px 18px;
  font-size:13.5px;font-weight:500;color:#fff;white-space:nowrap;transition:.25s}
.lz-badge:hover{border-color:var(--orange);box-shadow:0 0 18px rgba(245,130,32,.35)}
.lz-badge--dark{border-color:var(--line-l);color:var(--navy-700)}
.lz-badge--dark:hover{border-color:var(--orange)}

/* ---------- шестигранная плашка контакта ---------- */
.lz-hex{background:#fff;color:var(--navy-700);padding:15px 32px;display:inline-flex;
  align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;transition:.25s;
  clip-path:polygon(16px 0,calc(100% - 16px) 0,100% 50%,calc(100% - 16px) 100%,16px 100%,0 50%)}
.lz-hex:hover{transform:translateY(-3px);box-shadow:0 0 34px rgba(255,255,255,.28)}
.lz-hex small{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.lz-hex b{font-family:var(--hd);font-size:18px;font-weight:800;color:var(--orange);white-space:nowrap}

/* ---------- кнопки ---------- */
.lz-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:15px 27px;border-radius:999px;border:2px solid transparent;cursor:pointer;
  font-family:var(--hd);font-weight:700;font-size:15px;transition:.24s cubic-bezier(.2,.7,.3,1);text-align:center}
.lz-btn svg{width:17px;height:17px;flex:none}
.lz-btn--primary{background:var(--orange);color:#fff;border-color:var(--orange);
  box-shadow:0 10px 30px -12px rgba(245,130,32,.8)}
.lz-btn--primary:hover{background:var(--orange-600);border-color:var(--orange-600);
  transform:translateY(-2px);box-shadow:0 0 30px rgba(245,130,32,.6)}
.lz-btn--ghost{border-color:rgba(255,255,255,.4);color:#fff}
.lz-btn--ghost:hover{border-color:var(--gold);color:var(--gold);box-shadow:0 0 24px rgba(255,182,24,.32)}
.lz-btn--dark{background:var(--navy);color:#fff;border-color:var(--navy)}
.lz-btn--dark:hover{background:var(--navy-700);border-color:var(--navy-700);transform:translateY(-2px)}
.lz-btn--wide{width:100%}

/* ============================================================ ШАПКА */
.lz-topbar{background:var(--navy-900);color:rgba(255,255,255,.75);font-size:13px}
.lz-topbar .lz-wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:9px 0;flex-wrap:wrap}
.lz-topbar b{font-family:var(--hd);color:#fff;font-weight:700}
.lz-topbar-facts{display:flex;gap:22px;flex-wrap:wrap;font-size:12.5px}
.lz-topbar-facts span{display:inline-flex;align-items:center;gap:7px}
.lz-dot{width:7px;height:7px;border-radius:50%;background:var(--orange);
  box-shadow:0 0 10px var(--orange);animation:lz-pulse 2.2s infinite}
@keyframes lz-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}

/* Верхняя полоса и шапка намертво закреплены вверху экрана и едут одним
   блоком: при прокрутке вниз меню всегда остаётся на виду.
   Именно fixed, а не sticky — sticky отваливается, если у любого родителя
   окажется overflow, а fixed работает всегда.
   Отступ сверху для страницы подставляет скрипт по реальной высоте блока. */
.lz-topwrap{position:fixed;top:0;left:0;right:0;z-index:95;transition:box-shadow .3s}
.lz-topwrap.is-stuck{box-shadow:0 14px 40px -20px rgba(0,0,0,.75)}
.lz-topwrap.is-stuck .lz-header{background:#0C2A52}

.lz-header{position:relative;z-index:1;
  /* Шапка закреплена, и размытие фона под ней пересчитывалось на каждом
     кадре прокрутки — самая дорогая операция на странице. Плотный цвет
     выглядит так же, а стоит почти ничего. */
  background:#123A6D;
  color:#fff;border-bottom:1px solid var(--line-d);transition:background .3s}
.lz-header .lz-wrap{display:flex;align-items:center;gap:22px;height:76px}
.lz-logo{flex:none;display:flex;align-items:center;gap:11px;text-decoration:none}
.lz-logo-mark{height:44px;width:auto;flex:none}
.lz-logo-txt{line-height:1;display:block}
.lz-logo-txt b{font-family:var(--hd);font-weight:800;font-size:24px;color:#fff;
  display:block;letter-spacing:-.015em}
.lz-logo-txt i{font-style:normal;font-family:var(--bd);font-weight:400;font-size:11.5px;
  color:rgba(255,255,255,.82);display:block;margin-top:3px;letter-spacing:.01em;white-space:nowrap}
.lz-logo--big .lz-logo-mark{height:56px}
.lz-logo--big .lz-logo-txt b{font-size:30px}
.lz-logo--big .lz-logo-txt i{font-size:13px;margin-top:4px}
.lz-nav{display:flex;gap:2px;margin-left:auto}
.lz-nav a{padding:9px 13px;border-radius:999px;font-size:14.5px;font-weight:500;
  color:rgba(255,255,255,.85);transition:.2s;white-space:nowrap;position:relative}
.lz-nav a:hover{color:#fff;background:rgba(255,255,255,.1)}
.lz-nav a.is-on{color:var(--gold)}
.lz-nav a.is-on::after{content:"";position:absolute;left:13px;right:13px;bottom:2px;height:2px;
  background:var(--gold);box-shadow:var(--glow-g);border-radius:2px}
.lz-head-right{display:flex;align-items:center;gap:11px;flex:none}
.lz-lang{display:flex;gap:2px;background:rgba(255,255,255,.09);padding:4px;border-radius:999px}
.lz-lang button{border:0;background:transparent;color:rgba(255,255,255,.72);cursor:pointer;
  font-family:var(--hd);font-size:11.5px;font-weight:700;padding:6px 11px;border-radius:999px;transition:.2s;letter-spacing:.04em}
.lz-lang button:hover{color:#fff}
.lz-lang button.is-on{background:var(--orange);color:#fff;box-shadow:0 0 14px rgba(245,130,32,.55)}
.lz-burger{display:none;width:44px;height:44px;border:1px solid var(--line-d);background:transparent;
  border-radius:12px;cursor:pointer;place-items:center}
.lz-burger span{display:block;width:19px;height:2px;background:#fff;position:relative;transition:.25s}
.lz-burger span::before,.lz-burger span::after{content:"";position:absolute;left:0;width:19px;height:2px;background:#fff;transition:.25s}
.lz-burger span::before{top:-6px}.lz-burger span::after{top:6px}
.lz-burger.is-on span{background:transparent}
.lz-burger.is-on span::before{top:0;transform:rotate(45deg)}
.lz-burger.is-on span::after{top:0;transform:rotate(-45deg)}
/* мобильное меню */
/* ---------- мобильное меню: панель справа ---------- */
.lz-mnav{position:fixed;top:0;right:0;bottom:0;width:86vw;max-width:340px;z-index:130;
  color:#fff;
  background-color:#0C2A52;                                   /* запасной цвет */
  background-image:linear-gradient(165deg,#123A6D,#081C3A);
  -webkit-transform:translateX(102%);transform:translateX(102%);
  -webkit-transition:-webkit-transform .38s cubic-bezier(.22,.8,.28,1);
  transition:transform .38s cubic-bezier(.22,.8,.28,1);
  display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  box-shadow:-18px 0 50px -22px rgba(0,0,0,.8);padding:0 0 24px;
  visibility:hidden}                                     /* закрыта — не тянет вправо */
.lz-mnav.is-on{visibility:visible}
.lz-mnav *{color:inherit}
.lz-mnav.is-on{-webkit-transform:none;transform:none}
.lz-mnav-top{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:18px 22px;border-bottom:1px solid var(--line-d);position:sticky;top:0;
  background:#0C2A52;z-index:2;flex:none}
.lz-mnav-top img{height:34px;width:auto}
.lz-mnav-close{width:40px;height:40px;border-radius:50%;border:1px solid var(--line-d);
  background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center;font-size:22px;
  line-height:1;transition:.2s;flex:none}
.lz-mnav-close:hover{background:var(--orange);border-color:var(--orange)}
.lz-mnav-links{padding:10px 22px 0;display:block;flex:1 0 auto}
.lz-mnav-links a{display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:16px 0;border-bottom:1px solid rgba(255,255,255,.09);color:#fff;
  font-family:var(--hd);font-weight:700;font-size:17px;transition:.2s}
.lz-mnav-links a::after{content:"›";color:var(--orange);font-size:22px;opacity:.7}
.lz-mnav-links a:active,.lz-mnav-links a.is-on{color:var(--gold)}
.lz-mnav-foot{padding:22px 22px 0;display:block;flex:none}
.lz-mnav-foot > *{margin-top:11px}
.lz-mnav-foot > *:first-child{margin-top:0}
.lz-mnav-phone{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;
  background:rgba(255,255,255,.07);border:1px solid var(--line-d);color:#fff}
.lz-mnav-phone svg{width:20px;height:20px;color:var(--orange);flex:none}
.lz-mnav-phone b{display:block;font-family:var(--hd);font-size:16px}
.lz-mnav-phone span{font-size:12px;color:rgba(255,255,255,.6)}
.lz-mnav-lang{display:flex;gap:8px;margin-top:4px}
.lz-mnav-lang a{flex:1;text-align:center;padding:11px 0;border-radius:12px;
  border:1px solid var(--line-d);color:rgba(255,255,255,.8);font-family:var(--hd);
  font-weight:700;font-size:13px}
.lz-mnav-lang a.is-on{background:var(--orange);border-color:var(--orange);color:#fff}
.lz-backdrop{position:fixed;inset:0;z-index:125;background:rgba(8,28,58,.6);
  backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:.32s}
.lz-backdrop.is-on{opacity:1;pointer-events:auto}
body.lz-locked{overflow:hidden}

/* ============================================================ ГЕРОЙ-АКЦИЯ */
.lz-hero{padding:clamp(44px,5vw,74px) 0 clamp(54px,6vw,88px)}
.lz-hero .lz-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,470px);
  gap:clamp(30px,4vw,54px);align-items:center}
.lz-hero h1{margin:20px 0 0}
.lz-hero-sub{margin:20px 0 0;color:rgba(255,255,255,.8);font-size:clamp(15.5px,1.2vw,17.5px);max-width:50ch}
.lz-hero-cta{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.lz-hero-trust{display:flex;gap:26px;margin-top:34px;padding-top:24px;border-top:1px solid var(--line-d);flex-wrap:wrap}
.lz-hero-trust div{min-width:86px}
.lz-hero-trust b{font-family:var(--hd);font-weight:800;font-size:clamp(22px,2.4vw,30px);
  display:block;line-height:1;color:#fff;letter-spacing:-.02em}
.lz-hero-trust b i{font-style:normal;color:var(--orange)}
.lz-hero-trust span{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;
  color:rgba(255,255,255,.55);display:block;margin-top:8px;font-weight:500}

/* — карточка цен обратки — */
.lz-pricecard{position:relative;z-index:1}
.lz-pc-top{background:var(--orange);color:#fff;padding:16px 22px;display:flex;
  justify-content:space-between;align-items:center;gap:12px}
.lz-pc-top strong{font-family:var(--hd);font-weight:800;font-size:14px;letter-spacing:.03em;
  text-transform:uppercase;display:flex;align-items:center;gap:9px}
.lz-pc-top strong .lz-dot{background:#fff;box-shadow:0 0 10px #fff}
.lz-pc-top em{font-style:normal;font-size:12px;color:rgba(255,255,255,.92);font-weight:500}
.lz-pr{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 22px;
  border-bottom:1px solid rgba(255,255,255,.07);font-size:16px;transition:.22s}
.lz-pr:hover{background:rgba(245,130,32,.09)}
.lz-pr span{color:rgba(255,255,255,.9)}
.lz-pr b{font-family:var(--hd);font-weight:800;font-size:17px;color:var(--gold);white-space:nowrap;
  text-shadow:0 0 14px rgba(255,182,24,.4)}
.lz-pr--hi{background:rgba(245,130,32,.16)}
.lz-pr--hi span{font-weight:700;color:#fff}
.lz-pc-note{display:flex;align-items:center;gap:10px;padding:14px 22px;
  background:rgba(255,182,24,.09);font-size:13.5px;color:rgba(255,255,255,.85)}
.lz-pc-note svg{width:18px;height:18px;flex:none;color:var(--gold)}
.lz-pc-foot{background:rgba(255,255,255,.06);padding:14px 22px;text-align:center;
  font-size:14px;font-weight:500;color:rgba(255,255,255,.8);border-top:1px solid rgba(255,255,255,.08)}

/* ---------- бегущая строка ----------
   Буквы дрожали по трём причинам сразу:
   1. subpixel-antialiased — при движении браузер пересчитывает
      цветное сглаживание каждый кадр, отсюда «рябь» на буквах;
      нужен режим antialiased, он рисует текст один раз;
   2. дробный размер шрифта 15,5px и дробный letter-spacing ставили
      буквы между пикселями;
   3. в keyframes стояло calc() с переменной — часть браузеров
      интерполирует такое рывками. Теперь правило собирает скрипт
      с готовым числом.
   ---------------------------------------------------------------- */
.lz-marquee{background:var(--orange);color:#fff;padding:15px 0;overflow:hidden;
  box-shadow:0 0 34px rgba(245,130,32,.45);
  /* свой слой у родителя — иначе он заставляет перерисовывать содержимое */
  transform:translateZ(0);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

.lz-marquee-track{display:flex;width:max-content;
  animation:lz-slide 46s linear infinite;
  will-change:transform;
  transform:translate3d(0,0,0);
  -webkit-backface-visibility:hidden;backface-visibility:hidden;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.lz-marquee:hover .lz-marquee-track{animation-play-state:paused}

/* запасное правило — скрипт заменит его на точное, в пикселях */
@keyframes lz-slide{
  from{transform:translate3d(0,0,0)}
  to  {transform:translate3d(-50%,0,0)}
}

.lz-marquee-track span{font-family:var(--hd);font-weight:700;
  font-size:16px;letter-spacing:0;               /* целые значения, без дробей */
  display:flex;align-items:center;gap:40px;white-space:nowrap;
  padding-right:40px;flex:none}
.lz-marquee-track span::after{content:"\25C6";font-size:8px;opacity:.6}

/* ============================================================ АВТОПАРК */
.lz-fleet{display:grid;grid-template-columns:repeat(auto-fit,minmax(266px,1fr));gap:20px}
.lz-fleet-card{border:1.6px solid var(--line-l);border-radius:18px;padding:30px 26px;background:#fff;
  transition:.28s cubic-bezier(.2,.7,.3,1);position:relative;overflow:hidden}
.lz-fleet-card::before{content:"";position:absolute;inset:auto 0 0 0;height:5px;background:var(--orange);
  transform:scaleX(0);transform-origin:left;transition:.35s cubic-bezier(.2,.7,.3,1)}
.lz-fleet-card:hover{border-color:var(--navy);transform:translateY(-6px);box-shadow:var(--shadow)}
.lz-fleet-card:hover::before{transform:scaleX(1)}
.lz-fleet-top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:20px}
.lz-fleet-ico{width:56px;height:56px;border-radius:15px;background:var(--mist);display:grid;
  place-items:center;color:var(--navy);transition:.28s;flex:none}
.lz-fleet-card:hover .lz-fleet-ico{background:var(--navy);color:var(--gold)}
.lz-fleet-ico svg{width:29px;height:29px}
.lz-fleet-qty{font-family:var(--hd);font-size:11.5px;font-weight:700;letter-spacing:.05em;background:var(--orange);
  color:#fff;padding:6px 12px;border-radius:999px;white-space:nowrap}
.lz-fleet-card h3{font-family:var(--hd);font-weight:700;font-size:19px;margin:0 0 10px}
.lz-fleet-card p{margin:0;font-size:15px;color:var(--muted)}
.lz-fleet-spec{margin-top:20px;padding-top:17px;border-top:1px dashed var(--line-l);
  display:flex;gap:18px;font-size:13px;color:var(--navy-600);flex-wrap:wrap;font-weight:500}
.lz-fleet-spec b{font-family:var(--hd);color:var(--ink);font-weight:700}

/* ============================================================ ФОРМА */
.lz-calc-grid{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);
  gap:clamp(28px,4vw,54px);align-items:start}
.lz-calc-aside .lz-h2{margin-top:18px}
.lz-calc-steps{margin:28px 0 0;padding:0;list-style:none;display:grid;gap:14px}
.lz-calc-steps li{display:flex;gap:13px;align-items:flex-start;font-size:15px;color:var(--muted)}
.lz-dark .lz-calc-steps li{color:rgba(255,255,255,.86)}
.lz-calc-steps i{flex:none;width:27px;height:27px;border-radius:9px;background:var(--orange);color:#fff;
  display:grid;place-items:center;font-size:12px;font-style:normal;font-weight:700;font-family:var(--hd);
  box-shadow:0 0 14px rgba(245,130,32,.5)}
.lz-tg-note{margin-top:26px;padding:16px 18px;background:rgba(255,255,255,.07);
  border:1px solid var(--line-d);border-radius:14px;display:flex;gap:13px;align-items:center;
  font-size:13px;color:rgba(255,255,255,.68)}
.lz-tg-note svg{width:27px;height:27px;flex:none;color:#2AABEE}
.lz-tg-note b{font-family:var(--hd);color:#fff;display:block;font-size:14px;font-weight:700}

.lz-form{background:#fff;border-radius:20px;padding:clamp(22px,3vw,34px);
  box-shadow:0 40px 90px -40px rgba(0,0,0,.55);color:var(--ink)}
.lz-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.lz-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.lz-field--full{grid-column:1/-1}
.lz-field label{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted);font-weight:500}
.lz-field label em{font-style:normal;color:#D8402F}
.lz-field input,.lz-field select,.lz-field textarea{width:100%;padding:13px 15px;
  border:1.6px solid var(--line-l);border-radius:11px;background:#fff;font-size:15.5px;transition:.2s}
.lz-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235C6B85' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 13px center;background-size:17px;padding-right:40px;cursor:pointer}
.lz-field textarea{resize:vertical;min-height:86px}
.lz-field input:focus,.lz-field select:focus,.lz-field textarea:focus{
  border-color:var(--orange);box-shadow:0 0 0 4px rgba(245,130,32,.14);outline:0}
.lz-swap{grid-column:1/-1;display:flex;justify-content:center;margin:-6px 0}
.lz-swap button{border:1.6px solid var(--line-l);background:#fff;width:38px;height:38px;border-radius:50%;
  cursor:pointer;display:grid;place-items:center;transition:.25s;color:var(--navy)}
.lz-swap button:hover{background:var(--orange);color:#fff;border-color:var(--orange);transform:rotate(180deg)}
.lz-swap svg{width:17px;height:17px}
.lz-check{grid-column:1/-1;display:flex;gap:11px;align-items:flex-start;font-size:13.5px;color:var(--muted)}
.lz-check input{width:19px;height:19px;flex:none;margin-top:2px;accent-color:var(--orange)}
.lz-form-out{grid-column:1/-1;background:var(--navy);color:#fff;border-radius:14px;
  padding:18px 20px;display:none;gap:14px;align-items:center}
.lz-form-out.is-on{display:flex}
.lz-form-out svg{width:30px;height:30px;color:var(--gold);flex:none}
.lz-form-out b{display:block;font-weight:700;font-size:16px;font-family:var(--hd)}
.lz-form-out span{font-size:14px;color:rgba(255,255,255,.72)}

/* ============================================================ ГОРОДА */
.lz-cities{display:grid;grid-template-columns:repeat(auto-fill,minmax(166px,1fr));gap:12px}
.lz-city{background:rgba(255,255,255,.055);border:1px solid var(--line-d);border-radius:13px;
  padding:16px 18px;display:flex;align-items:center;gap:10px;transition:.25s;
  font-family:var(--hd);font-size:14.5px;font-weight:700;color:#fff}
.lz-city::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--orange);flex:none;transition:.25s}
.lz-city:hover{background:rgba(245,130,32,.14);border-color:var(--orange);transform:translateY(-3px)}
.lz-city:hover::before{box-shadow:0 0 12px var(--orange)}

/* ============================================================ ЦИФРЫ */
.lz-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(184px,1fr));gap:2px;
  background:var(--line-l);border:1px solid var(--line-l);border-radius:16px;overflow:hidden}
.lz-num{background:#fff;padding:32px 26px;transition:.25s}
.lz-num:hover{background:var(--cream)}
.lz-num b{font-family:var(--hd);font-weight:800;font-size:clamp(30px,3.7vw,44px);line-height:1;
  display:block;color:var(--navy);letter-spacing:-.03em}
.lz-num b i{font-style:normal;color:var(--orange)}
.lz-num span{display:block;margin-top:12px;font-size:14.5px;color:var(--muted);max-width:21ch}

/* ============================================================ ШАГИ */
.lz-steps{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(222px,1fr));gap:26px}
.lz-steps::before{content:"";position:absolute;top:27px;left:6%;right:6%;height:2px;
  background:repeating-linear-gradient(90deg,var(--line-l) 0 12px,transparent 12px 24px);z-index:0}
.lz-step{position:relative;z-index:1}
.lz-step-n{width:56px;height:56px;border-radius:15px;background:#fff;border:2.5px solid var(--navy);
  display:grid;place-items:center;margin-bottom:22px;box-shadow:0 8px 22px -12px rgba(12,42,82,.5)}
.lz-step-n b{font-family:var(--hd);font-weight:800;font-size:18px;color:var(--navy);line-height:1}
.lz-step h3{font-family:var(--hd);font-weight:700;font-size:18px;margin:0 0 10px}
.lz-step p{margin:0;font-size:15px;color:var(--muted)}

/* ============================================================ FAQ */
.lz-faq-grid{display:grid;grid-template-columns:minmax(0,318px) minmax(0,1fr);gap:clamp(28px,4vw,54px);align-items:start}
.lz-faq-list{border-top:1px solid var(--line-l)}
.lz-faq-item{border-bottom:1px solid var(--line-l)}
.lz-faq-q{width:100%;background:transparent;border:0;cursor:pointer;text-align:left;
  padding:21px 46px 21px 0;position:relative;font-family:var(--hd);font-weight:700;
  font-size:clamp(15px,1.5vw,17px);line-height:1.42;color:var(--ink);transition:.2s}
.lz-faq-q:hover{color:var(--navy-600)}
.lz-faq-q::after{content:"";position:absolute;right:6px;top:50%;width:12px;height:12px;
  border-right:2.5px solid var(--navy);border-bottom:2.5px solid var(--navy);
  transform:translateY(-70%) rotate(45deg);transition:.3s}
.lz-faq-item.is-open .lz-faq-q::after{transform:translateY(-20%) rotate(-135deg);border-color:var(--orange)}
.lz-faq-a{max-height:0;overflow:hidden;transition:max-height .38s cubic-bezier(.4,0,.2,1)}
.lz-faq-a p{margin:0 0 22px;color:var(--muted);font-size:15.5px;max-width:74ch}

/* ============================================================ КОНТАКТЫ */
.lz-contact-head{text-align:center;max-width:720px;margin:0 auto clamp(28px,4vw,44px)}
.lz-contact-head .lz-h2{margin-top:18px}
.lz-hexes{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}
.lz-contact-more{margin-top:32px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* ============================================================ ПРОЗА (внутренние) */
.lz-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,330px);gap:clamp(28px,4vw,56px);align-items:start}
.lz-prose h2{font-family:var(--hd);font-weight:800;font-size:clamp(22px,2.4vw,29px);
  letter-spacing:-.018em;margin:42px 0 16px;line-height:1.2}
.lz-prose h2:first-child{margin-top:0}
.lz-prose h3{font-family:var(--hd);font-weight:700;font-size:19px;margin:28px 0 12px}
.lz-prose p{margin:0 0 15px;font-size:16.5px;color:#2A3550}
.lz-prose ul{margin:0 0 18px;padding-left:0;list-style:none;display:grid;gap:11px}
.lz-prose ul li{display:flex;gap:11px;align-items:flex-start;font-size:16px;color:#2A3550}
.lz-prose ul li::before{content:"";flex:none;width:8px;height:8px;border-radius:2px;background:var(--orange);margin-top:9px}
.lz-note{background:var(--cream);border-left:5px solid var(--orange);border-radius:0 12px 12px 0;
  padding:20px 22px;margin:26px 0;font-size:15.5px;color:#2A3550}
.lz-note b{color:var(--ink)}
.lz-side{position:sticky;top:96px;display:grid;gap:18px}
.lz-scard{border:1.6px solid var(--line-l);border-radius:18px;padding:26px 24px;background:#fff}
.lz-scard--dark{background:var(--navy);border-color:var(--navy);color:#fff}
.lz-scard h3{font-family:var(--hd);font-weight:700;font-size:18px;margin:0 0 10px}
.lz-scard p{margin:0 0 20px;font-size:14.5px;color:var(--muted)}
.lz-scard--dark p{color:rgba(255,255,255,.72)}
.lz-slinks a{font-family:var(--hd)}
.lz-slinks{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.lz-slinks a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;
  border-bottom:1px dashed var(--line-l);font-size:15px;font-weight:500;transition:.2s}
.lz-slinks a:hover{color:var(--orange);padding-left:6px}
.lz-slinks a span{font-size:12.5px;color:var(--muted);flex:none;font-weight:400}
.lz-slinks li:last-child a{border-bottom:0}

/* шапка внутренней страницы */
.lz-crumbs{padding:16px 0;font-size:12.5px;color:rgba(255,255,255,.58);
  display:flex;gap:9px;flex-wrap:wrap;align-items:center}
.lz-crumbs a:hover{color:var(--orange)}
.lz-crumbs i{font-style:normal;opacity:.4}
.lz-ihero{padding-bottom:clamp(40px,5vw,64px)}
.lz-ihero h1{margin:16px 0 0;max-width:20ch}
.lz-ihero .lz-lead{margin:20px 0 0}
.lz-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:1px;
  background:var(--line-d);border:1px solid var(--line-d);border-radius:16px;overflow:hidden;margin-top:32px}
.lz-fact{background:rgba(255,255,255,.05);padding:22px 20px;transition:.25s}
.lz-fact:hover{background:rgba(245,130,32,.12)}
.lz-fact b{font-family:var(--hd);font-weight:800;font-size:clamp(20px,2.1vw,26px);display:block;line-height:1}
.lz-fact b i{font-style:normal;color:var(--orange);font-size:.62em}
.lz-fact span{font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;
  color:rgba(255,255,255,.55);display:block;margin-top:10px;font-weight:500}
.lz-icta{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}

/* ============================================================ ФУТЕР */
.lz-footer{background:var(--navy-900);color:rgba(255,255,255,.66);padding-top:clamp(44px,5vw,68px);
  position:relative;overflow:hidden}
.lz-footer::before{content:"";position:absolute;top:-260px;left:50%;transform:translateX(-50%);
  width:900px;height:520px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(245,130,32,.13),transparent 68%)}
.lz-footer > .lz-wrap{position:relative;z-index:2}
.lz-foot-grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:32px;padding-bottom:40px}
.lz-footer h4{font-family:var(--hd);font-size:12px;letter-spacing:.13em;text-transform:uppercase;
  color:#fff;margin:0 0 18px;font-weight:700}
.lz-foot-links{list-style:none;margin:0;padding:0;display:grid;gap:11px;font-size:14.5px}
.lz-foot-links a:hover{color:var(--orange)}
.lz-foot-about{font-size:14.5px;margin:18px 0 0;max-width:38ch}
.lz-foot-soc{display:flex;gap:9px;margin-top:22px}
.lz-foot-soc a{width:40px;height:40px;border-radius:12px;border:1px solid var(--line-d);
  display:grid;place-items:center;transition:.24s;color:#fff}
.lz-foot-soc a:hover{background:var(--orange);border-color:var(--orange);transform:translateY(-3px);
  box-shadow:0 0 22px rgba(245,130,32,.55)}
.lz-foot-soc svg{width:17px;height:17px}
.lz-foot-bottom{border-top:1px solid var(--line-d);padding:22px 0;display:flex;
  justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:13px}

/* ============================================================
   ПЛАВАЮЩАЯ КНОПКА СВЯЗИ
   ============================================================ */
.lz-fab{position:fixed;right:22px;bottom:22px;z-index:120;display:flex;
  flex-direction:column;align-items:flex-end;gap:12px}
.lz-fab-items{display:flex;flex-direction:column;align-items:flex-end;gap:11px;
  pointer-events:none}
.lz-fab-item{display:flex;align-items:center;gap:11px;opacity:0;transform:translateY(16px) scale(.85);
  transition:.34s cubic-bezier(.2,.8,.3,1);pointer-events:none}
.lz-fab.is-open .lz-fab-item{opacity:1;transform:none;pointer-events:auto}
.lz-fab.is-open .lz-fab-item:nth-child(1){transition-delay:.05s}
.lz-fab.is-open .lz-fab-item:nth-child(2){transition-delay:.11s}
.lz-fab.is-open .lz-fab-item:nth-child(3){transition-delay:.17s}
.lz-fab-lbl{background:#fff;color:var(--navy-700);font-weight:700;font-size:14px;
  padding:9px 15px;border-radius:999px;white-space:nowrap;
  box-shadow:0 10px 28px -12px rgba(0,0,0,.5);font-family:var(--hd)}
.lz-fab-ico{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;
  color:#fff;flex:none;transition:.24s;box-shadow:0 12px 30px -10px rgba(0,0,0,.55)}
.lz-fab-item:hover .lz-fab-ico{transform:scale(1.1)}
.lz-fab-ico--tg{background:#2AABEE;box-shadow:0 0 24px rgba(42,171,238,.6)}
.lz-fab-ico--call{background:#25C765;box-shadow:0 0 24px rgba(37,199,101,.55)}
.lz-fab-ico--calc{background:var(--orange);box-shadow:0 0 24px rgba(245,130,32,.6)}
.lz-fab-ico svg{width:24px;height:24px}

.lz-fab-main{width:64px;height:64px;border-radius:50%;border:0;cursor:pointer;position:relative;
  background:linear-gradient(140deg,var(--orange),var(--gold));color:#fff;display:grid;place-items:center;
  box-shadow:0 14px 34px -10px rgba(245,130,32,.85);transition:.3s cubic-bezier(.2,.8,.3,1)}
.lz-fab-main:hover{transform:scale(1.07)}
.lz-fab.is-open .lz-fab-main{transform:rotate(135deg);background:var(--navy)}
.lz-fab-main svg{width:28px;height:28px;transition:.3s}
/* пульсирующие неоновые кольца */
.lz-fab-main::before,.lz-fab-main::after{content:"";position:absolute;inset:0;border-radius:50%;
  border:2px solid var(--orange);animation:lz-ring 2.6s cubic-bezier(.2,.6,.4,1) infinite;pointer-events:none}
.lz-fab-main::after{animation-delay:1.3s}
.lz-fab.is-open .lz-fab-main::before,.lz-fab.is-open .lz-fab-main::after{display:none}
@keyframes lz-ring{0%{transform:scale(1);opacity:.85}100%{transform:scale(1.85);opacity:0}}
.lz-fab-badge{position:absolute;top:-3px;right:-3px;background:#fff;color:var(--orange);
  font-size:10px;font-weight:800;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;
  font-family:var(--hd);box-shadow:0 0 12px rgba(255,255,255,.7)}
.lz-fab.is-open .lz-fab-badge{display:none}
.lz-fab-back{position:fixed;inset:0;background:rgba(8,28,58,.55);backdrop-filter:blur(3px);
  opacity:0;pointer-events:none;transition:.3s;z-index:110}
.lz-fab-back.is-on{opacity:1;pointer-events:auto}

/* ---------- появление ---------- */
[data-rv]{opacity:0;transform:translateY(26px);
  transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1)}
[data-rv].is-in{opacity:1;transform:none}

/* ============================================================ АДАПТИВ */
@media(max-width:1080px){
  .lz-hero .lz-wrap,.lz-calc-grid,.lz-faq-grid,.lz-two{grid-template-columns:1fr}
  .lz-glowcard{max-width:560px}
  .lz-nav{display:none}
  .lz-burger{display:grid}
  .lz-side{position:static}
  .lz-foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  body{font-size:16px}
  .lz-wrap{width:min(1220px,100% - 28px)}
  .lz-sec{padding:46px 0}
  .lz-sec--tight{padding:38px 0}
  .lz-sec-head{margin-bottom:26px}

  /* шапка */
  .lz-topbar{font-size:12px}
  .lz-topbar-facts{display:none}
  .lz-topbar .lz-wrap{justify-content:center;padding:8px 0}
  .lz-header .lz-wrap{height:62px;gap:10px}
  .lz-logo-mark{height:32px}
  .lz-logo-txt b{font-size:18px}
  .lz-logo-txt i{font-size:9px;margin-top:2px}
  .lz-head-right{gap:8px}
  .lz-head-right .lz-btn{display:none}
  .lz-head-right .lz-lang{display:none}
  .lz-burger{width:42px;height:42px}

  /* первый экран */
  .lz-hero{padding:34px 0 44px}
  .lz-hero .lz-wrap{gap:26px}
  .lz-hero-sub{font-size:15.5px}
  .lz-hero-cta{gap:10px}
  .lz-hero-cta .lz-btn{width:100%}
  .lz-hero-trust{gap:14px 20px;margin-top:26px;padding-top:20px}
  .lz-hero-trust div{min-width:66px}
  .lz-hero-trust span{font-size:10.5px;letter-spacing:.04em}
  .lz-badges{gap:8px;margin-top:20px}
  .lz-badge{font-size:12.5px;padding:8px 14px}
  .lz-ribbon{font-size:11px;padding:8px 26px 8px 14px}

  /* карточка цен */
  .lz-pr{padding:13px 16px;font-size:15px}
  .lz-pr b{font-size:16px}
  .lz-pc-top{padding:13px 16px}
  .lz-pc-top strong{font-size:12.5px}
  .lz-pc-note,.lz-pc-foot{padding:12px 16px;font-size:13px}

  /* форма */
  .lz-form,.lz-form--cms{padding:20px 16px;border-radius:16px}
  .lz-form-grid,.lz-form--cms form{grid-template-columns:1fr;gap:14px}
  .lz-calc-steps li{font-size:14.5px}
  .lz-tg-note{padding:14px 15px;font-size:12.5px}

  /* прочее */
  .lz-marquee-track{animation-duration:34s}
  .lz-marquee-track span{font-size:15px;gap:26px;padding-right:26px}
  .lz-fleet{gap:14px}
  .lz-fleet-card{padding:24px 20px}
  .lz-nums{grid-template-columns:1fr 1fr}
  .lz-num{padding:22px 18px}
  .lz-num span{font-size:13px;margin-top:8px}
  .lz-steps{gap:20px}
  .lz-steps::before{display:none}
  .lz-cities{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:9px}
  .lz-city{padding:12px 13px;font-size:13.5px}
  .lz-faq-q{padding:18px 38px 18px 0;font-size:15.5px}
  .lz-faq-a p{font-size:15px}
  .lz-prose p,.lz-prose ul li{font-size:15.5px}
  .lz-facts{grid-template-columns:1fr 1fr}
  .lz-fact{padding:16px 15px}
  .lz-icta .lz-btn{width:100%}

  /* контакты */
  .lz-hexes{gap:10px}
  .lz-hex{width:100%;padding:14px 20px;clip-path:none;border-radius:14px;
    justify-content:space-between;flex-wrap:nowrap}
  .lz-hex small{font-size:11px}
  .lz-hex b{font-size:17px}
  .lz-contact-more .lz-btn{width:100%}

  /* подвал */
  .lz-foot-grid{grid-template-columns:1fr;gap:24px;padding-bottom:30px}
  .lz-foot-bottom{flex-direction:column;gap:8px;text-align:center;font-size:12px}

  /* карусель */
  .lz-slider{padding-bottom:40px}
  .lz-slider-nav{width:40px;height:40px}
  .lz-slider-nav--prev{left:-4px}
  .lz-slider-nav--next{right:-4px}
  .lz-team-info{padding:15px 16px 18px}
  .lz-team-card h3{font-size:16px}
  .lz-team-card p{font-size:13px}

  /* плавающая кнопка */
  .lz-fab{right:13px;bottom:13px}
  .lz-fab-main{width:56px;height:56px}
  .lz-fab-main svg{width:25px;height:25px}
  .lz-fab-ico{width:44px;height:44px}
  .lz-fab-ico svg{width:21px;height:21px}
  .lz-fab-lbl{font-size:13px;padding:8px 12px}

  /* кнопки и поля крупнее — под палец */
  .lz-btn{padding:15px 22px;font-size:15px}
  .lz-field input,.lz-field select,.lz-field textarea,
  .lz-form--cms .form-control,.lz-form--cms input,
  .lz-form--cms select,.lz-form--cms textarea,.lz-pick{
    font-size:16px;padding:14px 15px;min-height:52px}
  .lz-form--cms textarea,.lz-field textarea{min-height:90px}
}
@media(max-width:400px){
  .lz-wrap{width:min(1220px,100% - 22px)}
  .lz-hero-trust div{min-width:58px}
  .lz-hero-trust b{font-size:21px}
  .lz-badge{font-size:12px;padding:7px 12px}
  .lz-nums{grid-template-columns:1fr}
  .lz-cities{grid-template-columns:1fr 1fr}
  .lz-logo-txt i{display:none}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important}
  [data-rv]{opacity:1;transform:none}
}


/* ============================================================
   ДОПОЛНЕНИЯ ДЛЯ ИНТЕГРАЦИИ В SKEEKS CMS
   ============================================================ */

/* Сброс остатков чужих стилей, если что-то всё же прорвётся */
.lz-body img{max-width:100%}
.lz-body .container,.lz-body .row,.lz-body [class^="col-"]{all:unset}
.lz-body p:last-child{margin-bottom:0}

/* маленькая кнопка в шапке */
.lz-btn--sm{padding:11px 19px;font-size:14px}

/* переключатель языков — теперь ссылки, а не кнопки */
.lz-lang a{color:rgba(255,255,255,.72);font-family:var(--hd);font-size:11.5px;font-weight:700;
  padding:6px 11px;border-radius:999px;transition:.2s;letter-spacing:.04em;display:block}
.lz-lang a:hover{color:#fff}
.lz-lang a.is-on{background:var(--orange);color:#fff;box-shadow:0 0 14px rgba(245,130,32,.55)}

/* неоновая линия по верху тёмной секции */
.lz-neonline--top{position:absolute;top:0;left:0;right:0;z-index:3}

/* хлебные крошки от SkeekS внутри тёмной шапки */
.lz-ihero .breadcrumb,.lz-ihero ul.breadcrumb{list-style:none;display:flex;gap:9px;flex-wrap:wrap;
  padding:16px 0;margin:0;background:transparent;font-size:12.5px;color:rgba(255,255,255,.58)}
.lz-ihero .breadcrumb li+li::before{content:"/";opacity:.4;margin-right:9px}
.lz-ihero .breadcrumb a{color:rgba(255,255,255,.58)}
.lz-ihero .breadcrumb a:hover{color:var(--orange)}

/* ---------- таблица цен на внутренней странице ---------- */
.lz-ptable{border:1px solid var(--line-l);border-radius:16px;overflow:hidden;margin:24px 0 8px;
  box-shadow:var(--shadow)}
.lz-ptable-cap{background:var(--navy-700);color:#fff;padding:15px 22px;display:flex;
  justify-content:space-between;font-family:var(--hd);font-weight:700;font-size:14px;
  letter-spacing:.03em;text-transform:uppercase}
.lz-ptr{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 22px;
  background:var(--mist);border-bottom:2px solid #fff;font-size:16.5px}
.lz-ptr b{font-family:var(--hd);font-weight:800;color:var(--orange);white-space:nowrap}
.lz-ptr--hi{background:var(--orange);color:#fff;font-family:var(--hd);font-weight:800;font-size:19px}
.lz-ptr--hi b{color:#fff}
.lz-ptable-foot{background:var(--navy-700);color:#fff;padding:14px 22px;text-align:center;
  font-weight:500;font-size:14.5px}

/* ============================================================
   ФОРМА ЗАЯВКИ SKEEKS — приводим стандартную вёрстку Yii к нашему виду
   Разметка формы генерируется модулем form2, поэтому стилизуем
   её классы, а не переписываем сам виджет.
   ============================================================ */
.lz-form--cms{background:#fff;border-radius:20px;padding:clamp(22px,3vw,34px);
  box-shadow:0 40px 90px -40px rgba(0,0,0,.55);color:var(--ink)}
.lz-form--cms form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.lz-form--cms .form-group{display:flex;flex-direction:column;gap:7px;min-width:0;margin:0}
.lz-form--cms .form-group:nth-last-child(-n+2){grid-column:1/-1}
.lz-form--cms label{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted);font-weight:500;font-family:var(--bd)}
.lz-form--cms .form-control,
.lz-form--cms input[type=text],
.lz-form--cms input[type=tel],
.lz-form--cms input[type=email],
.lz-form--cms input[type=number],
.lz-form--cms input[type=date],
.lz-form--cms select,
.lz-form--cms textarea{
  width:100%;padding:13px 15px;border:1.6px solid var(--line-l);border-radius:11px;
  background:#fff;font-size:15.5px;font-family:var(--bd);color:var(--ink);
  transition:.2s;box-shadow:none;height:auto;line-height:1.5}
.lz-form--cms select{appearance:none;cursor:pointer;padding-right:40px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235C6B85' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 13px center;background-size:17px}
.lz-form--cms textarea{resize:vertical;min-height:86px}
.lz-form--cms .form-control:focus,
.lz-form--cms input:focus,.lz-form--cms select:focus,.lz-form--cms textarea:focus{
  border-color:var(--orange);box-shadow:0 0 0 4px rgba(245,130,32,.14);outline:0}
.lz-form--cms .help-block{font-size:12.5px;color:#D8402F;margin:0}
.lz-form--cms .help-block:empty{display:none}
.lz-form--cms .has-error .form-control,
.lz-form--cms .has-error input,.lz-form--cms .has-error select{border-color:#D8402F}
.lz-form--cms .required label::after{content:" *";color:#D8402F}
.lz-form--cms .lz-btn{grid-column:1/-1}
.lz-form--cms .result,
.lz-form--cms .alert{grid-column:1/-1;background:var(--navy);color:#fff;border-radius:14px;
  padding:16px 20px;font-size:15px;border:0;margin:0}
.lz-form--cms .alert:empty,.lz-form--cms .result:empty{display:none}
.lz-form--cms .alert-success{background:var(--navy)}
.lz-form--cms .alert-danger{background:#8C2318}

@media(max-width:680px){
  .lz-form--cms form{grid-template-columns:1fr}
  .lz-ptr{padding:14px 17px;font-size:15.5px}
  .lz-ptable-cap,.lz-ptable-foot{padding:13px 17px;font-size:13px}
}


/* ============================================================
   КАРУСЕЛЬ (команда)
   ============================================================ */
.lz-slider{position:relative;padding:0 0 46px;overflow:hidden}
.lz-slider-viewport{overflow:hidden;margin:0}
.lz-slider-track{display:flex;transition:transform .62s cubic-bezier(.25,.8,.3,1);will-change:transform}
.lz-slide{flex:0 0 33.3333%;max-width:33.3333%;padding:0 8px;box-sizing:border-box}

/* карточка сотрудника */
.lz-team-card{background:rgba(255,255,255,.06);border:1px solid var(--line-d);border-radius:20px;
  overflow:hidden;height:100%;display:flex;flex-direction:column;
  transition:.3s cubic-bezier(.2,.7,.3,1)}
.lz-team-card:hover{background:rgba(245,130,32,.1);border-color:var(--orange);transform:translateY(-6px);
  box-shadow:0 26px 56px -28px rgba(0,0,0,.8)}
.lz-team-photo{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;
  background:linear-gradient(150deg,#17457E,#0C2A52);display:grid;place-items:center}
.lz-team-photo img{width:100%;height:100%;object-fit:cover;object-position:center 18%;display:block;
  transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.lz-team-card:hover .lz-team-photo img{transform:scale(1.05)}
.lz-team-photo::after{content:"";position:absolute;inset:auto 0 0 0;height:52%;pointer-events:none;
  background:linear-gradient(transparent,rgba(8,28,58,.55))}
.lz-team-ini{font-family:var(--hd);font-weight:800;font-size:54px;color:var(--gold)}
.lz-team-info{padding:18px 20px 22px;flex:1}
.lz-team-card h3{font-family:var(--hd);font-weight:700;font-size:17.5px;margin:0 0 7px;color:#fff;
  line-height:1.28;letter-spacing:-.012em}
.lz-team-card p{margin:0;font-size:14px;color:rgba(255,255,255,.7);line-height:1.5}

/* стрелки */
.lz-slider-nav{position:absolute;top:calc(50% - 46px);transform:translateY(-50%);z-index:4;
  width:48px;height:48px;border-radius:50%;border:1.6px solid rgba(255,255,255,.28);
  background:rgba(8,28,58,.75);backdrop-filter:blur(6px);color:#fff;cursor:pointer;
  display:grid;place-items:center;transition:.24s}
.lz-slider-nav:hover{background:var(--orange);border-color:var(--orange);
  box-shadow:0 0 24px rgba(245,130,32,.6);transform:translateY(-50%) scale(1.07)}
.lz-slider-nav:disabled{opacity:.3;cursor:default;pointer-events:none}
.lz-slider-nav svg{width:21px;height:21px}
.lz-slider-nav--prev{left:6px}
.lz-slider-nav--next{right:6px}

/* точки */
.lz-slider-dots{position:absolute;left:0;right:0;bottom:6px;display:flex;justify-content:center;
  gap:9px;flex-wrap:wrap}
.lz-slider-dots button{width:9px;height:9px;border-radius:50%;border:0;padding:0;cursor:pointer;
  background:rgba(255,255,255,.28);transition:.25s}
.lz-slider-dots button:hover{background:rgba(255,255,255,.55)}
.lz-slider-dots button.is-on{width:30px;border-radius:99px;background:var(--orange);
  box-shadow:0 0 14px rgba(245,130,32,.7)}

@media(max-width:1080px){
  .lz-slide{flex-basis:50%;max-width:50%}
  .lz-slider-nav--prev{left:-6px}
  .lz-slider-nav--next{right:-6px}
}
@media(max-width:680px){
  .lz-slide{flex-basis:100%;max-width:100%}
  .lz-slider{padding-bottom:42px}
  .lz-slider-nav{width:42px;height:42px}
  .lz-slider-nav--prev{left:-2px}
  .lz-slider-nav--next{right:-2px}
  .lz-team-info{padding:16px 17px 19px}
  .lz-team-card h3{font-size:16.5px}
}
@media(prefers-reduced-motion:reduce){
  .lz-slider-track{transition:none}
}


/* ============================================================
   ВЫБОР ГОРОДА И ДРУГИХ СПИСКОВ — удобный лист вместо select
   ============================================================ */
.lz-pick{width:100%;padding:13px 15px;border:1.6px solid var(--line-l);border-radius:11px;
  background:#fff;font-size:15.5px;font-family:var(--bd);color:var(--ink);cursor:pointer;
  text-align:left;display:flex;align-items:center;justify-content:space-between;gap:10px;
  transition:.2s;min-height:50px}
.lz-pick:hover,.lz-pick:focus{border-color:var(--orange);outline:0}
.lz-pick.is-empty{color:#9AA3B4}
.lz-pick-txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.lz-sheet{position:fixed;inset:0;z-index:140;display:none}
.lz-sheet.is-on{display:block}
.lz-sheet-bg{position:absolute;inset:0;background:rgba(8,28,58,.55);backdrop-filter:blur(3px)}
.lz-sheet-box{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(520px,94vw);max-height:82vh;background:#fff;border-radius:20px;overflow:hidden;
  display:flex;flex-direction:column;box-shadow:0 40px 90px -30px rgba(0,0,0,.6);
  animation:lz-sheet-in .28s cubic-bezier(.2,.8,.3,1)}
@keyframes lz-sheet-in{from{opacity:0;transform:translate(-50%,-46%) scale(.97)}to{opacity:1}}
.lz-sheet-head{padding:18px 20px 14px;border-bottom:1px solid var(--line-l);flex:none}
.lz-sheet-head h4{margin:0 0 12px;font-family:var(--hd);font-weight:800;font-size:18px;color:var(--ink)}
.lz-sheet-search{width:100%;padding:13px 15px 13px 42px;border:1.6px solid var(--line-l);
  border-radius:11px;font-size:16px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235C6B85' stroke-width='2.2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") no-repeat 13px center/18px}
.lz-sheet-search:focus{border-color:var(--orange);outline:0}
.lz-sheet-list{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1}
.lz-sheet-group{padding:14px 20px 6px;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--muted);font-weight:700;background:var(--mist);position:sticky;top:0}
.lz-sheet-item{width:100%;text-align:left;padding:15px 20px;border:0;background:#fff;
  font-size:16.5px;color:var(--ink);cursor:pointer;border-bottom:1px solid #F1F4F9;
  display:flex;align-items:center;justify-content:space-between;gap:10px}
.lz-sheet-item:active,.lz-sheet-item:hover{background:var(--cream)}
.lz-sheet-item.is-on{color:var(--orange);font-weight:700}
.lz-sheet-item.is-on::after{content:"✓";color:var(--orange)}
.lz-sheet-empty{padding:28px 20px;text-align:center;color:var(--muted);font-size:15px}
.lz-sheet-close{flex:none;padding:14px 20px;border-top:1px solid var(--line-l);background:#fff}
.lz-sheet-close button{width:100%;padding:14px;border:0;border-radius:12px;background:var(--mist);
  font-family:var(--hd);font-weight:700;font-size:15px;color:var(--ink);cursor:pointer}
.lz-sheet-close button:hover{background:var(--line-l)}


/* Списки не должны раскрываться на несколько строк: модуль иногда отдаёт
   их с size="5", и форма разъезжается. Схлопываем и на уровне стилей. */
.lz-form--cms select[size],
.lz-form--cms select[multiple],
.lz-form select[size]{height:auto;min-height:52px;overflow:hidden}
.lz-form--cms select{height:auto}


/* Ничто не должно вылезать за правый край — иначе появляется
   горизонтальная прокрутка, которой на сайте быть не должно. */
.lz-sec,.lz-hero,.lz-dark,.lz-footer,.lz-marquee{max-width:100vw;overflow-x:clip}
/* обёртка шапки обрезать ничего не должна, иначе приклеивание отвалится */
.lz-topwrap{overflow:visible}
.lz-wrap{max-width:100%}
img,svg,video,iframe{max-width:100%}


/* Запасной отступ под закреплённой шапкой — на случай, если скрипт
   не успел посчитать её точную высоту. */
body{padding-top:114px}
@media(max-width:680px){body{padding-top:104px}}


/* ============================================================
   ГОРОД → ФОРМА
   ============================================================ */
.lz-city[data-city]{cursor:pointer}
.lz-city[data-city]::after{content:"→";margin-left:auto;color:var(--orange);
  opacity:0;transform:translateX(-4px);transition:.22s;font-weight:700}
.lz-city[data-city]:hover::after{opacity:1;transform:none}

/* короткая подсветка поля «Куда», когда город подставился сам */
.lz-flash{animation:lz-flash 1.6s ease}
@keyframes lz-flash{
  0%   {box-shadow:0 0 0 0 rgba(245,130,32,.55);border-color:var(--orange)}
  40%  {box-shadow:0 0 0 7px rgba(245,130,32,0);border-color:var(--orange)}
  100% {box-shadow:0 0 0 0 rgba(245,130,32,0)}
}
@media(prefers-reduced-motion:reduce){.lz-flash{animation:none;border-color:var(--orange)}}


/* Исходный список прячем полностью: он заменён удобной кнопкой выбора.
   display:none оставляет значение в форме — оно уходит вместе с заявкой.
   !important здесь оправдан: правила формы задают полям min-height,
   и без него старое поле оставалось видимым рядом с кнопкой. */
.lz-hidden-select{
  display:none !important;
  position:absolute !important;
  width:1px !important;height:1px !important;min-height:0 !important;
  padding:0 !important;border:0 !important;opacity:0 !important;
  pointer-events:none !important;
}


/* ============================================================
   СПИСКИ В ФОРМЕ — свой вид вместо чужих оформителей
   Тема навешивала на них nice-select, движок — свой виджет; каждый
   рисовал рядом отдельную оболочку, и в строке оказывалось два поля.
   Теперь показываем сам список и оформляем его сами.
   ============================================================ */
.lz-form--cms select,
.lz-form--cms select.lz-select{
  display:block !important;position:static !important;
  width:100% !important;height:auto !important;min-height:52px !important;
  opacity:1 !important;pointer-events:auto !important;
  padding:13px 40px 13px 15px !important;
  border:1.6px solid var(--line-l) !important;border-radius:11px !important;
  background-color:#fff !important;color:var(--ink);font-size:16px;font-family:var(--bd);
  appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235C6B85' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;background-size:18px;
}
.lz-form--cms select:focus{border-color:var(--orange) !important;
  box-shadow:0 0 0 4px rgba(245,130,32,.14);outline:0}

/* оболочки чужих оформителей, если вдруг успеют появиться */
.lz-form--cms .nice-select,
.lz-form--cms .select2,
.lz-form--cms .selectize-control,
.lz-form--cms .bootstrap-select,
.lz-form--cms .chosen-container,
.lz-form--cms .lz-pick{display:none !important}

/* В строке формы Yii оставляет подпись, само поле и текст ошибки.
   Любой другой блок — это оболочка чужого оформителя списка
   (nice-select из темы или виджет движка). Прячем всё такое:
   правило не зависит от названий классов, поэтому ловит любой плагин. */
.lz-form--cms .form-group > div:not(.help-block):not(.lz-keep){display:none !important}
.lz-form--cms .form-group > span:not(.help-block){display:none !important}

/* ============================================================
   ПЕРВЫЙ ЭКРАН С ФУРОЙ
   Машина выезжает из-за левого края и неспешно уходит вправо —
   в ту сторону, куда смотрит. Затемнение положено так, чтобы текст
   слева читался, а рекламный борт фуры оставался светлым.
   ============================================================ */

.lz-hero{position:relative;overflow:hidden;isolation:isolate}

/* ---------- полоса дороги ----------
   Тянется во всю ширину экрана. Справа, под машиной, полотно плотное;
   к левому краю постепенно уходит в прозрачность и растворяется в фоне.
   Сверху и снизу тоже нет кромок — полоса нигде не обрывается. */
.lz-road{position:absolute;left:0;right:0;bottom:-1%;height:15%;z-index:2;
  pointer-events:none;overflow:hidden;transform:rotate(1.2deg);
  opacity:0;animation:lz-road-in 1.1s ease 1.1s forwards;
  /* плотно справа → прозрачно слева */
  -webkit-mask-image:linear-gradient(90deg,
  transparent 0%,rgba(0,0,0,.18) 22%,rgba(0,0,0,.55) 40%,
  rgba(0,0,0,.88) 56%,#000 68%,#000 100%);
  mask-image:linear-gradient(90deg,
  transparent 0%,rgba(0,0,0,.18) 22%,rgba(0,0,0,.55) 40%,
  rgba(0,0,0,.88) 56%,#000 68%,#000 100%)}
@keyframes lz-road-in{to{opacity:1}}

/* асфальт: мягкое пятно, растворённое сверху и снизу */
.lz-road-plane{position:absolute;inset:0;
  /* без filter: размытие фильтром пересчитывается при каждом кадре
     соседних анимаций, а мягкость даёт сам градиент */
  background:
          radial-gradient(ellipse 58% 120% at 74% 55%,rgba(19,31,52,.6),transparent 76%),
          linear-gradient(180deg,transparent 0%,rgba(18,30,50,.34) 30%,
          rgba(19,31,52,.42) 58%,rgba(18,30,50,.16) 84%,transparent 100%)}

/* разметка — один ряд крупных штрихов ровно под колёсами.
   Слева её гасит общая маска полосы, отдельная не нужна. */
.lz-road-dash{position:absolute;left:-25%;right:-25%;bottom:38%;height:7px;border-radius:4px;
  background:repeating-linear-gradient(90deg,
  rgba(255,255,255,.62) 0 140px,transparent 140px 320px);
  animation:lz-dash-run 1.4s linear infinite}
@keyframes lz-dash-run{to{transform:translateX(-320px)}}

/* тень под колёсами — без резкой кромки */
.lz-road-haze{position:absolute;left:52%;right:6%;bottom:16%;height:46%;
  background:radial-gradient(ellipse at 52% 100%,rgba(4,12,26,.5),transparent 72%);
  filter:blur(8px)}

/* ---------- сама фура ---------- */
.lz-truck{position:absolute;right:-2%;bottom:3%;width:min(58%,880px);z-index:3;
  pointer-events:none;
  transform:translateX(-165vw);
  animation:lz-truck-in 2.6s cubic-bezier(.22,.68,.24,1) .35s forwards}
.lz-truck img{width:100%;height:auto;display:block;
  /* Тень считается по контуру картинки — это дорого. Раньше поверх неё
     шло постоянное покачивание, и браузер пересчитывал тень каждый кадр:
     отсюда рывки при прокрутке. Покачивание убрано, тень статична. */
  filter:drop-shadow(0 26px 40px rgba(0,0,0,.5)) brightness(1.06) contrast(1.05) saturate(1.05)}
.lz-truck-shadow{position:absolute;left:3%;right:3%;bottom:-1%;height:8%;
  /* мягкость даёт сам градиент, без фильтра размытия */
  background:radial-gradient(ellipse at center,rgba(4,14,32,.55),transparent 72%)}

@keyframes lz-truck-in{
  0%  {transform:translateX(-165vw)}
  100%{transform:translateX(0)}
}
/* Покачивание убрано: постоянная анимация поверх тени-фильтра
   заставляла браузер пересчитывать её каждый кадр.
   Класс is-ready тоже убран — с animation:none машина теряла
   конечное положение выезда и уезжала обратно за экран. */

/* ---------- затемнение: плотное только под текстом ---------- */
.lz-hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
          linear-gradient(96deg,
          rgba(8,28,58,.92) 0%,
          rgba(9,32,66,.84) 28%,
          rgba(10,34,70,.5) 40%,
          rgba(12,42,82,.16) 50%,
          transparent 62%),
          linear-gradient(180deg,transparent 62%,rgba(6,20,44,.28))}
.lz-hero > .lz-wrap{position:relative;z-index:4}

/* ---------- карточка цен: матовое стекло ---------- */
.lz-glasscard{position:relative;border-radius:20px;overflow:hidden;
  background:rgba(9,30,62,.58);
  -webkit-backdrop-filter:blur(18px) saturate(1.25);
  backdrop-filter:blur(18px) saturate(1.25);
  border:1px solid rgba(255,255,255,.24);
  box-shadow:0 30px 70px -30px rgba(0,0,0,.78),
  inset 0 1px 0 rgba(255,255,255,.18)}
.lz-glasscard .lz-pc-top{background:rgba(245,130,32,.95)}
.lz-glasscard .lz-pr{border-bottom-color:rgba(255,255,255,.1)}
.lz-glasscard .lz-pr--hi{background:rgba(245,130,32,.22)}
.lz-glasscard .lz-pc-note{background:rgba(255,182,24,.13)}
.lz-glasscard .lz-pc-foot{background:rgba(255,255,255,.08)}

@supports not ((backdrop-filter:blur(4px)) or (-webkit-backdrop-filter:blur(4px))){
  .lz-glasscard{background:rgba(9,30,62,.92)}
}

/* ============================================================
   ПЛАНШЕТ  (до 1080px)
   Фура встаёт под текст обычным блоком, поэтому дорога, приклеенная
   к низу всей секции, оказывалась под карточкой цен. Здесь дорога
   переезжает к самой машине — рисуем её прямо под колёсами.
   ============================================================ */
@media(max-width:1080px){
  .lz-hero{padding-bottom:0}
  .lz-hero .lz-wrap{grid-template-columns:1fr;gap:26px}

  /* на одной колонке текст лучше читается в ограниченной ширине */
  .lz-hero-sub{max-width:60ch}
  .lz-hero-trust{gap:20px 28px}

  .lz-truck{position:relative;right:auto;bottom:auto;
    width:100%;max-width:none;margin:20px auto -2px;
    transform:translateX(-130vw);
    animation:lz-truck-in 1.9s cubic-bezier(.22,.7,.25,1) .2s forwards}
  .lz-truck img{filter:drop-shadow(0 18px 30px rgba(0,0,0,.42))
  brightness(1.06) contrast(1.05) saturate(1.05)}
  .lz-truck::after{right:2%;bottom:4%;width:30%;height:22%}

  /* затемнение сверху вниз: текст над машиной, а не сбоку */
  .lz-hero::after{background:linear-gradient(180deg,
  rgba(8,28,58,.9) 0%,rgba(9,32,66,.7) 44%,
  rgba(12,42,82,.22) 76%,transparent 100%)}

  /* прежняя дорога через всю секцию здесь не нужна */
  .lz-road{display:none}

  /* дорога переехала под колёса: она часть блока с машиной */
  .lz-truck-shadow{left:-12%;right:-12%;bottom:0;height:15%;
    background:radial-gradient(ellipse at 54% 100%,rgba(4,12,26,.5),transparent 72%);
    filter:blur(7px)}
  .lz-truck-shadow::after{content:"";position:absolute;
    left:-18%;right:-18%;bottom:44%;height:6px;border-radius:4px;
    background:repeating-linear-gradient(90deg,
    rgba(255,255,255,.55) 0 110px,transparent 110px 250px);
    animation:lz-dash-run 1.6s linear infinite;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 26%,#000 84%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 26%,#000 84%,transparent)}
}

/* ============================================================
   ТЕЛЕФОН  (до 680px)
   Машина остаётся — это живой снимок нашей техники, он работает
   на доверие. Выезд короче: на маленьком экране ждать неприятно.
   ============================================================ */
@media(max-width:680px){
  .lz-hero .lz-wrap{gap:20px}
  .lz-hero-trust{gap:14px 22px;margin-top:24px;padding-top:18px}
  .lz-truck{width:118%;margin:14px -9% -2px;
    transform:translateX(-120vw);
    animation:lz-truck-in 1.4s cubic-bezier(.2,.72,.26,1) .12s forwards}
  .lz-truck img{filter:drop-shadow(0 10px 18px rgba(0,0,0,.38))
  brightness(1.07) contrast(1.05)}
  .lz-truck::after{display:none}          /* свет фар в такой мелкости не читается */

  .lz-hero::after{background:linear-gradient(180deg,
  rgba(8,28,58,.86) 0%,rgba(9,32,66,.58) 52%,transparent 90%)}

  .lz-truck-shadow{left:-8%;right:-8%;height:13%}
  .lz-truck-shadow::after{bottom:46%;height:4px;
    background-image:repeating-linear-gradient(90deg,
    rgba(255,255,255,.5) 0 78px,transparent 78px 180px);
    animation-duration:1.9s}

  /* сквозь сильное стекло цифры на телефоне читаются хуже */
  .lz-glasscard{background:rgba(9,30,62,.82)}
}

/* ============================================================
   УЗКИЕ ЭКРАНЫ  (до 400px)
   ============================================================ */
@media(max-width:400px){
  .lz-truck{width:126%;margin:10px -13% 0}
  .lz-truck-shadow::after{height:3px;
    background-image:repeating-linear-gradient(90deg,
    rgba(255,255,255,.45) 0 62px,transparent 62px 150px)}
}

@media(prefers-reduced-motion:reduce){
  .lz-truck{animation:none;transform:none}
  .lz-road{opacity:1;animation:none}
  .lz-road-dash,.lz-truck-shadow::after{animation:none}
  .lz-truck::after{opacity:1;animation:none}
}


/* ============================================================
   ВЕРХ СТРАНИЦЫ АВТОПАРКА
   Машина стоит справа, но её левый край сам растворяется в фоне —
   так текст читается по-настоящему, а не сквозь тёмную заслонку.
   Появление спокойное: проявляется и слегка наплывает.
   ============================================================ */
.lz-ihero--truck{position:relative;overflow:hidden;isolation:isolate;
  padding-bottom:clamp(46px,5vw,72px)}

.lz-ihero-truck{position:absolute;right:-4%;bottom:-4%;width:min(62%,940px);
  z-index:1;pointer-events:none;
  opacity:0;transform:translate3d(26px,0,0) scale(1.02);
  animation:lz-ihero-truck-in 1.15s cubic-bezier(.2,.75,.28,1) .15s forwards;
  /* левый край уходит в прозрачность — плавный переход к тексту */
  -webkit-mask-image:linear-gradient(90deg,
  transparent 0%,rgba(0,0,0,.12) 10%,rgba(0,0,0,.45) 20%,
  rgba(0,0,0,.82) 30%,#000 40%,#000 100%);
  mask-image:linear-gradient(90deg,
  transparent 0%,rgba(0,0,0,.12) 10%,rgba(0,0,0,.45) 20%,
  rgba(0,0,0,.82) 30%,#000 40%,#000 100%)}
.lz-ihero-truck img{width:100%;height:auto;display:block;
  filter:drop-shadow(0 26px 44px rgba(0,0,0,.5)) brightness(1.05) contrast(1.04)}
@keyframes lz-ihero-truck-in{
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}

.lz-ihero-truck::after{content:"";position:absolute;left:34%;right:6%;bottom:2%;height:9%;
  background:radial-gradient(ellipse at 58% 100%,rgba(4,12,26,.45),transparent 74%);z-index:-1}

/* Заслонку поверх машины оставляем совсем лёгкой: основную работу
   делает растворение самой картинки. */
.lz-ihero--truck::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(97deg,
  rgba(8,28,58,.72) 0%,rgba(9,32,66,.5) 26%,rgba(10,34,70,.2) 38%,
  transparent 50%)}
.lz-ihero--truck > .lz-wrap{position:relative;z-index:3}
/* текст держим в левой половине: под машину он заходить не должен */
.lz-ihero--truck .lz-h1{max-width:15ch}
.lz-ihero--truck .lz-lead{max-width:46ch}
.lz-ihero--truck .lz-ihero-facts{max-width:640px}
.lz-ihero--truck .lz-icta{max-width:640px}

/* сводка по парку */
.lz-ihero-facts{display:flex;flex-wrap:wrap;gap:22px 34px;margin-top:28px;
  padding-top:22px;border-top:1px solid var(--line-d)}
.lz-ihero-facts b{font-family:var(--hd);font-weight:800;font-size:clamp(21px,2.3vw,29px);
  display:block;line-height:1;color:#fff}
.lz-ihero-facts b i{font-style:normal;color:var(--orange);font-size:.62em;margin-left:2px}
.lz-ihero-facts span{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;
  color:rgba(255,255,255,.55);display:block;margin-top:8px}

/* ---------- планшет и телефон ----------
   Здесь машина не фон, а самостоятельная картинка: идёт после текста,
   без растворения и без заслонки — чёткая, как на фотографии. */
@media(max-width:1080px){
  .lz-ihero--truck{display:flex;flex-direction:column}
  .lz-ihero--truck > .lz-wrap{order:1}
  .lz-ihero-truck{order:2}

  .lz-ihero-truck{position:relative;right:auto;bottom:auto;width:100%;
    margin:28px auto -6px;
    transform:translate3d(0,18px,0);
    -webkit-mask-image:none;mask-image:none}   /* чёткая, без растворения */
  .lz-ihero--truck::after{display:none}        /* заслонки на мобильных нет */
  .lz-ihero-truck::after{left:8%;right:8%}
  .lz-ihero-facts{gap:18px 26px}
  /* на узком экране ограничения ширины ни к чему */
  .lz-ihero--truck .lz-h1,
  .lz-ihero--truck .lz-lead,
  .lz-ihero--truck .lz-ihero-facts,
  .lz-ihero--truck .lz-icta{max-width:none}
}

@media(max-width:680px){
  .lz-ihero-truck{width:114%;margin:24px -7% -4px}
  .lz-ihero-truck img{filter:drop-shadow(0 14px 24px rgba(0,0,0,.42))}
  .lz-ihero-facts{gap:14px 22px;margin-top:22px;padding-top:18px}
  .lz-ihero-facts > div{min-width:calc(50% - 11px)}
}

@media(prefers-reduced-motion:reduce){
  .lz-ihero-truck{opacity:1;transform:none;animation:none}
}


/* Каждая секция перерисовывается сама по себе: браузеру не нужно
   пересчитывать всю страницу при изменении внутри одной из них. */
.lz-sec,.lz-hero,.lz-footer{contain:layout paint}


/* Постоянные подсветки и бегущие блики останавливаются, пока секция
   за пределами экрана. Иначе браузер считает их все сразу и прокрутка
   идёт рывками. */
@media (prefers-reduced-motion:no-preference){
  .lz-neonline::after,.lz-glowcard::after,.lz-neon{
    animation-play-state:paused}
  .is-seen .lz-neonline::after,
  .is-seen.lz-glowcard::after,
  .is-seen .lz-glowcard::after,
  .is-seen .lz-neon{animation-play-state:running}
}

/* ============================================================
   КАЛЕНДАРЬ ВЫБОРА ДАТЫ
   Свой, а не системный: тот выглядит по-разному в каждом браузере
   и никак не оформляется.
   ============================================================ */
.lz-cal{position:absolute;z-index:150;display:none;
  width:296px;padding:14px;border-radius:16px;
  background:#fff;color:var(--ink);
  border:1px solid var(--line-l);
  box-shadow:0 24px 60px -22px rgba(8,28,58,.42),0 2px 8px rgba(8,28,58,.08);
  font-family:var(--bd);
  animation:lz-cal-in .18s ease}
.lz-cal.is-on{display:block}
@keyframes lz-cal-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1}}

.lz-cal-head{display:flex;align-items:center;justify-content:space-between;
  gap:8px;margin-bottom:12px}
.lz-cal-head b{font-family:var(--hd);font-weight:800;font-size:15.5px;color:var(--navy)}
.lz-cal-nav{width:32px;height:32px;flex:none;border:0;border-radius:10px;
  background:var(--mist);color:var(--navy);font-size:19px;line-height:1;cursor:pointer;
  transition:.18s}
.lz-cal-nav:hover:not(:disabled){background:var(--orange);color:#fff}
.lz-cal-nav:disabled{opacity:.3;cursor:default}

.lz-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.lz-cal-dow{display:grid;place-items:center;height:26px;font-size:11px;font-weight:700;
  letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.lz-cal-day{height:36px;border:0;border-radius:10px;background:transparent;
  font-family:var(--bd);font-size:14.5px;color:var(--ink);cursor:pointer;transition:.15s}
.lz-cal-day:hover:not(:disabled){background:var(--cream);color:var(--orange)}
.lz-cal-day:disabled{color:#C3CBD8;cursor:default}
.lz-cal-day.is-today{box-shadow:inset 0 0 0 1.6px var(--line-l);font-weight:700}
.lz-cal-day.is-on{background:var(--orange);color:#fff;font-weight:700;
  box-shadow:0 6px 16px -6px rgba(245,130,32,.8)}

.lz-cal-foot{display:flex;gap:6px;margin-top:12px;padding-top:12px;
  border-top:1px solid var(--line-l)}
.lz-cal-link{flex:1;padding:9px 6px;border:0;border-radius:10px;background:var(--mist);
  font-family:var(--hd);font-weight:700;font-size:12.5px;color:var(--navy);cursor:pointer;
  transition:.18s}
.lz-cal-link:hover{background:var(--navy);color:#fff}
.lz-cal-clear{color:var(--muted)}
.lz-cal-clear:hover{background:#8C2318;color:#fff}

@media(max-width:400px){
  .lz-cal{width:calc(100vw - 32px);left:16px !important}
  .lz-cal-day{height:40px}
}


/* ============================================================
   АДРЕС ОФИСА
   ============================================================ */
.lz-office{display:flex;align-items:flex-start;gap:16px;margin-top:26px;
  padding:20px 22px;border-radius:16px;text-decoration:none;
  background:rgba(255,255,255,.06);border:1px solid var(--line-d);
  transition:.25s cubic-bezier(.2,.7,.3,1)}
a.lz-office:hover{background:rgba(245,130,32,.1);border-color:var(--orange);
  transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(0,0,0,.7)}
.lz-office-pin{flex:none;width:44px;height:44px;border-radius:12px;display:grid;
  place-items:center;background:rgba(245,130,32,.16);color:var(--orange)}
.lz-office-pin svg{width:22px;height:22px}
.lz-office small{display:block;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;
  color:rgba(255,255,255,.55);margin-bottom:5px}
.lz-office b{display:block;font-family:var(--hd);font-weight:700;font-size:16.5px;
  color:#fff;line-height:1.4}
.lz-office i{display:inline-block;margin-top:7px;font-style:normal;font-size:13px;
  color:var(--orange)}
a.lz-office:hover i{text-decoration:underline}

/* адрес в подвале */
.lz-foot-addr{color:rgba(255,255,255,.72);line-height:1.5;margin-bottom:10px}
.lz-foot-addr a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;
  transition:.2s}
.lz-foot-addr a:hover{color:var(--gold);border-bottom-color:rgba(255,182,24,.5)}

@media(max-width:680px){
  .lz-office{padding:16px 17px;gap:13px}
  .lz-office-pin{width:38px;height:38px}
  .lz-office b{font-size:15.5px}
}
