:root{
  --c-red:#8e2a21;
  --c-panel:#9c3128;      /* левая панель - чуть светлее и теплее hero, чтобы не сливалась */
  --c-red-deep:#5a1510;
  --c-red-hot:#c9352b;
  --c-gold:#c8a57b;
  --c-gold-light:#e7cfa8;
  --c-navy:#2b3a4d;
  --c-ink:#22252a;
  --c-ink-soft:#4a4e55;
  --c-muted:#6f747c;       /* подписи на белом: контраст 4,7:1 (был #8a8f97, 3,3:1) */
  --c-line:#e3e1dd;
  --c-dark:#2a2c31;
  --c-tg:#2aabee;         /* фирменный цвет Telegram */
  --c-tg-dark:#229ed9;
  --c-paper:#ffffff;

  --f-head:'Onest','Onest Fallback',system-ui,sans-serif;
  --f-text:'IBM Plex Sans','IBM Plex Sans Fallback',system-ui,sans-serif;

  --sb:clamp(210px,15.5vw,300px);   /* ширина левой панели: ~15% экрана, как в референсе */
  --pad-l:clamp(48px,5vw,96px);
  --pad-r:clamp(32px,5vw,80px);
  --radius:0;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--f-text);font-size:16px;line-height:1.6;color:var(--c-ink);background:var(--c-paper);-webkit-font-smoothing:antialiased}
body.is-locked{overflow:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input{font:inherit}
h1,h2,h3{font-family:var(--f-head);line-height:1.1;font-weight:600;letter-spacing:-0.015em}
:focus-visible{outline:2px solid var(--c-gold);outline-offset:3px}
::selection{background:var(--c-gold-light);color:var(--c-red-deep)}
input,textarea{caret-color:var(--c-gold)}
[hidden]{display:none!important}

/* ================= левая панель (десктоп) ================= */
/* сплошная красная полоса на всю высоту экрана: язык, логотип клиента, меню, контакты внизу (правки клиента 23.09.2026) */
.sb{
  position:fixed;left:0;top:0;bottom:0;z-index:40;
  width:var(--sb);
  display:flex;flex-direction:column;
  color:#fff;background:var(--c-panel);
  padding:calc(var(--sb) * .15) calc(var(--sb) * .12) 112px calc(var(--sb) * .2); /* снизу место под круглую кнопку Telegram */
  box-shadow:8px 0 24px rgba(24,4,3,.22); /* единственная тень на сайте: отделяет панель от hero такого же красного тона */
  overflow-y:auto;scrollbar-width:none;
}
.sb::-webkit-scrollbar{display:none}
.sb__lang{display:flex;gap:1.6em;font-family:var(--f-head);font-size:clamp(12px,.95vw,15px);letter-spacing:.02em}
.sb__lang a{color:rgba(255,255,255,.55);transition:color .2s}
.sb__lang a.is-active,.sb__lang a:hover{color:#fff}
.sb__logo{display:block;flex:none;width:clamp(96px,8.4vw,150px);margin-top:clamp(18px,3.2vh,34px)}
.sb__logo img{width:100%;height:auto}
.sb__nav{margin-top:clamp(24px,6vh,64px)}
.sb__nav a{display:block;font-family:var(--f-head);font-size:clamp(15px,1.2vw,20px);line-height:1;padding:.55em 0;color:rgba(255,255,255,.88);transition:color .2s}
.sb__nav a.is-active{font-weight:600;color:#fff}
.sb__nav a:hover{color:var(--c-gold-light)}
.sb__contacts{margin-top:auto;padding-top:28px;display:flex;flex-direction:column;gap:.45em;font-family:var(--f-head);font-size:clamp(14px,1.05vw,17px);line-height:1.25;white-space:nowrap}
.sb__contacts a{color:#fff;transition:color .2s}
.sb__contacts a[href^="mailto"]{margin-top:.3em;font-size:.84em;color:rgba(255,255,255,.72)}
.sb__contacts a:hover{color:var(--c-gold-light)}

/* ================= верхняя шапка (планшет + мобилка) ================= */
.hd{display:none}

/* ================= сетка ================= */
.page{margin-left:var(--sb)}
.wrap{padding:0 var(--pad-r) 0 var(--pad-l);max-width:1500px}
.h2{font-size:clamp(28px,2.8vw,40px);font-weight:500;color:var(--c-red);letter-spacing:-.02em;margin-bottom:1.4em}

/* ================= hero ================= */
.hero{position:relative;margin-left:calc(-1 * var(--sb));height:min(100vh,900px);min-height:640px;color:#f4ede6;overflow:hidden;background:var(--c-red-deep)}
.hero__bg{position:absolute;inset:0}
.hero__bg svg{width:100%;height:100%}
.hero__frame{position:absolute;inset:0;pointer-events:none;z-index:2}
.hero__frame svg{width:100%;height:100%}
.hero__slides{position:absolute;inset:0;touch-action:pan-y} /* горизонтальный свайп - слайдеру, вертикальный - странице */
.hero__slides.is-dragging{user-select:none;-webkit-user-select:none}
.hero__slides.is-dragging .slide{transition:none}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s,transform .35s ease;display:grid;align-content:end;padding:0 12% 120px calc(var(--sb) + 15%)}
.slide.is-active{opacity:1;visibility:visible}
.slide__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.32;filter:saturate(.6) contrast(1.05);-webkit-user-drag:none}
.slide__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(60,12,10,.75) 0%,rgba(60,12,10,.35) 60%,rgba(60,12,10,.6) 100%)}
.slide__big{
  position:absolute;left:calc(var(--sb) + 13%);top:9%;
  font-family:var(--f-head);font-weight:800;font-size:clamp(120px,19vw,300px);line-height:.85;letter-spacing:-.05em;
  background:linear-gradient(170deg,var(--c-gold-light) 10%,#b8925f 55%,var(--c-gold-light) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;user-select:none;
}
.slide__big small{display:block;font-size:.19em;font-weight:500;letter-spacing:.22em;text-transform:uppercase;line-height:1;margin-top:.18em;-webkit-text-fill-color:var(--c-gold)}
.slide__stat{position:absolute;left:calc(var(--sb) + 13%);top:12%;font-family:var(--f-head);color:var(--c-gold)}
.slide__stat b{display:block;font-size:clamp(96px,14vw,220px);font-weight:800;line-height:.9;letter-spacing:-.04em}
.slide__stat span{display:block;font-size:clamp(15px,1.5vw,22px);font-weight:400;letter-spacing:.06em;margin-top:14px;text-transform:uppercase}
.slide__title{position:relative;font-family:var(--f-head);font-weight:300;text-transform:uppercase;font-size:clamp(28px,3.4vw,50px);line-height:1.15;letter-spacing:.01em;max-width:14.61em;color:#f4ede6}
/* длинный заголовок (слайд 3): кегль меньше в 0,86 раза, строка во столько же раз длиннее - правый край тот же, что у соседних слайдов (не заходит на золотую рамку), и текст укладывается в 5 строк */
.slide__title--long{font-size:clamp(24px,2.92vw,43px);max-width:17em;text-wrap:balance}
.nw{white-space:nowrap}
.hero__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:56px;height:80px;color:rgba(255,255,255,.7);font-size:40px;display:grid;place-items:center;transition:color .2s}
.hero__arrow:hover{color:var(--c-gold-light)}
.hero__arrow--prev{left:calc(var(--sb) + 2.5%)}
.hero__arrow--next{right:2.5%}
.hero__dots{position:absolute;right:2.8%;bottom:104px;display:flex;gap:26px;z-index:3}
.hero__dots button{width:14px;height:14px;border:1px solid var(--c-gold-light);transform:rotate(45deg);position:relative;transition:border-color .2s}
.hero__dots button.is-active::after{content:"";position:absolute;inset:3px;background:var(--c-gold-light)}
.hero__dots button:hover{border-color:#fff}
.hero__dots button::before{content:"";position:absolute;inset:-12px} /* зона нажатия 38 px вокруг ромба 14 px */

/* ================= о компании ================= */
.intro{padding-top:88px;padding-bottom:96px}
.intro p{font-size:18px;line-height:1.85;max-width:43.20em;color:var(--c-ink-soft)}
.intro p b{font-weight:600;color:var(--c-ink)}
.facts{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;margin-top:56px}
.facts li{border-top:1px solid var(--c-gold);padding-top:20px;font-size:15.5px;line-height:1.6;color:var(--c-ink-soft)}
.facts b{display:block;font-family:var(--f-head);font-size:20px;font-weight:600;line-height:1.25;color:var(--c-ink);margin-bottom:8px;letter-spacing:-.01em}

/* ================= каталог ================= */
.catalog{padding-bottom:64px}
.catalog__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:56px 44px}
.card{display:block}
.card__img{position:relative;aspect-ratio:3/2;overflow:hidden;background:#fff;border-bottom:1px solid var(--c-line)} /* вырезка техники из каталога клиента на белом, нижняя линия - пол */
.card__img img{width:100%;height:100%;object-fit:contain;padding:5% 4% 3%;transition:transform .6s ease}
.card__img--photo img{object-fit:cover;padding:0} /* три модели в каталоге есть только фото с фоном */
.card:hover .card__img img{transform:scale(1.04)}
.card__title{font-family:var(--f-head);font-size:21px;font-weight:600;margin:24px 0 10px;letter-spacing:-.01em;transition:color .2s}
.card:hover .card__title{color:var(--c-red)}
.card__specs{font-size:15.5px;line-height:1.55;color:var(--c-muted)}
.card__specs b{font-weight:500;color:var(--c-ink-soft)}
.card.is-hidden{display:none}

.more{display:flex;align-items:center;gap:12px;width:max-content;margin:64px auto 0;padding:8px 0;font-family:var(--f-head);font-size:19px;font-weight:500;color:var(--c-ink);transition:color .2s}
.more i{font-size:22px;color:var(--c-gold);transition:transform .3s}
.more:hover{color:var(--c-red)}
.more:hover i{transform:translateX(4px)}

/* ================= табы каталога ================= */
.tabs{display:flex;gap:32px;border-bottom:1px solid var(--c-line);margin:-16px 0 44px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tabs button{position:relative;font-family:var(--f-head);font-size:17px;font-weight:500;color:var(--c-muted);padding:0 0 14px;white-space:nowrap;transition:color .2s}
.tabs button::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--c-gold);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.tabs button:hover{color:var(--c-ink)}
.tabs button.is-active{color:var(--c-red)}
.tabs button.is-active::after{transform:scaleX(1)}

/* ================= как мы строим ================= */
.build{padding-top:104px}
.build__lead{font-size:17px;line-height:1.7;color:var(--c-ink-soft);max-width:34.80em;margin:-28px 0 52px}
.build__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:start}
.build__stage{position:relative;aspect-ratio:4/3;background:var(--c-dark);overflow:hidden}
.build__stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;filter:saturate(.75);transition:opacity .5s ease}
.build__stage img.is-active{opacity:1}
.build__stage::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(30,32,36,0) 45%,rgba(30,32,36,.85) 100%)}
.build__frame{position:absolute;inset:0;z-index:2;pointer-events:none}
.build__frame svg{width:100%;height:100%}
.build__meta{position:absolute;left:36px;right:36px;bottom:30px;z-index:2;color:#fff}
.build__num{font-family:var(--f-head);font-weight:300;font-size:clamp(64px,7vw,96px);line-height:.9;color:var(--c-gold);letter-spacing:-.03em}
.build__cap{font-family:var(--f-head);font-size:20px;font-weight:500;margin-top:10px}
.build__list{position:relative;padding-left:40px}
.build__list::before{content:"";position:absolute;left:8px;top:14px;bottom:14px;width:1px;background:var(--c-line)}
.step{position:relative;display:block;width:100%;text-align:left;padding:16px 0;border-bottom:1px solid var(--c-line)}
.step:first-child{padding-top:0}
.step:first-child::before{top:12px}
.step::before{content:"";position:absolute;left:-38px;top:28px;width:11px;height:11px;border:1px solid var(--c-gold);background:#fff;transform:rotate(45deg);transition:background .2s}
.step.is-active::before{background:var(--c-gold)}
.step__head{display:flex;gap:18px;align-items:baseline}
.step__num{font-family:var(--f-head);font-weight:300;font-size:24px;color:var(--c-gold);flex:0 0 38px}
.step__title{font-family:var(--f-head);font-size:20px;font-weight:500;color:var(--c-ink);transition:color .2s}
.step:hover .step__title{color:var(--c-red)}
.step.is-active .step__title{color:var(--c-red)}
.step__text{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.step.is-active .step__text{grid-template-rows:1fr}
.step__text div{overflow:hidden}
.step__text p{padding:10px 0 4px 56px;font-size:15px;line-height:1.6;color:var(--c-ink-soft);max-width:30.00em}

/* ================= CTA с формой ================= */
.cta{position:relative;background:var(--c-red);color:#fff;overflow:hidden}
.cta__bg{position:absolute;inset:0;opacity:.35;background:url(../assets/bg-facets-red.svg) center/cover no-repeat}
.cta__in{position:relative;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;padding:88px var(--pad-r) 88px var(--pad-l);max-width:1500px}
.cta__title{font-size:clamp(28px,2.8vw,40px);font-weight:500;color:#fff;letter-spacing:-.02em;margin-bottom:20px}
.cta__text{font-size:17px;line-height:1.7;color:rgba(255,255,255,.82);max-width:25.20em}
.cta__phone{display:block;margin-top:36px;font-family:var(--f-head);font-size:26px;font-weight:300;color:var(--c-gold-light)}
.cta__phone small{display:block;font-size:14px;color:rgba(255,255,255,.6);margin-bottom:4px;letter-spacing:.02em}
.form{display:grid;grid-template-columns:1fr 1fr;gap:26px 32px}
.form__field{display:flex;flex-direction:column;gap:4px;min-width:0}
.form__field--wide{grid-column:1/-1}
.form label{font-family:var(--f-head);font-size:13px;letter-spacing:.04em;color:var(--c-gold-light)}
.form input,.form select,.form textarea{width:100%;background:none;border:0;border-bottom:1px solid rgba(255,255,255,.4);border-radius:0;color:#fff;font-family:var(--f-text);font-size:17px;padding:8px 0 10px;outline:none;appearance:none;-webkit-appearance:none;transition:border-color .2s}
.form input::placeholder,.form textarea::placeholder{color:rgba(255,255,255,.35)}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--c-gold)}
.form select{cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23e7cfa8' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 4px center}
.form select option{color:var(--c-ink);background:#fff}
.form textarea{resize:none;min-height:46px}
.form__actions{grid-column:1/-1;display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:6px}
.btn{font-family:var(--f-head);font-size:17px;font-weight:600;color:var(--c-red-deep);background:var(--c-gold-light);padding:16px 40px 16px 34px;clip-path:polygon(12px 0,100% 0,calc(100% - 6px) 100%,0 100%);transition:background .2s}
.btn:hover{background:#fff}
.form__note{font-size:12.5px;line-height:1.5;color:rgba(255,255,255,.55);max-width:21.60em}
.form input.is-invalid{border-color:var(--c-gold-light)}
.btn:disabled{cursor:progress;background:var(--c-gold-light);opacity:.75}
.form__err{grid-column:1/-1;margin-top:-10px;font-size:15px;line-height:1.5;color:var(--c-gold-light)}
.form__hp{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.form__ok{grid-column:1/-1;font-family:var(--f-head);font-size:22px;font-weight:400;color:var(--c-gold-light);padding:40px 0}
.form__ok small{display:block;font-family:var(--f-text);font-size:15px;color:rgba(255,255,255,.7);margin-top:8px}

/* ================= три направления ================= */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:88px}
.tile{position:relative;height:clamp(300px,30vw,420px);display:flex;align-items:flex-end;justify-content:center;padding-bottom:48px;color:#fff;overflow:hidden;background:var(--c-dark)}
.tile__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5;filter:saturate(.35);transition:transform .7s ease,opacity .3s}
.tile::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(42,44,49,.1) 30%,rgba(42,44,49,.75) 100%);z-index:1}
.tile:hover .tile__img{transform:scale(1.05);opacity:.62}
.tile__cap{position:relative;z-index:2;font-family:var(--f-head);font-size:clamp(22px,2.2vw,32px);font-weight:400;letter-spacing:-.01em;text-align:center;padding:0 20px}
.tile__cap::after{content:"";display:block;width:64px;height:1px;background:var(--c-gold);margin:12px auto 0;transform:scaleX(0);transition:transform .35s}
.tile:hover .tile__cap::after{transform:none}

/* ================= горячая линия ================= */
.hotline{display:flex;align-items:center;justify-content:center;gap:10px 40px;padding:110px var(--pad-r) 70px var(--pad-l);flex-wrap:wrap}
.hotline span{font-family:var(--f-head);font-size:22px}
.hotline a{font-family:var(--f-head);font-size:clamp(30px,3vw,40px);font-weight:300;color:var(--c-gold);letter-spacing:.02em;transition:color .2s}
.hotline a:hover{color:var(--c-red)}

/* ================= футер ================= */
.footer{border-top:1px solid var(--c-line);padding:52px 0 60px}
.footer__in{display:grid;grid-template-columns:auto 1fr auto;gap:48px;align-items:start}
.footer__logo{display:block;width:88px}
.footer__logo img{width:100%;height:auto}
.footer__contacts{display:flex;gap:12px 48px;flex-wrap:wrap;font-family:var(--f-head);font-size:18px;margin-bottom:30px}
.footer__contacts span{color:var(--c-muted)}
.footer__contacts a:hover{color:var(--c-red)}
.footer__copy{font-size:14px;color:var(--c-muted);line-height:1.6}
.footer__right{text-align:right}
.footer__soc{display:inline-flex;gap:8px}
.footer__soc a{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid var(--c-line);color:var(--c-ink-soft);font-size:18px;transition:border-color .2s,color .2s}
.footer__soc a:hover{border-color:var(--c-red);color:var(--c-red)}
.footer__dev{margin-top:40px;font-size:13.5px;color:var(--c-muted)}
.footer__dev a{display:block;font-family:var(--f-head);font-size:20px;font-weight:700;letter-spacing:.12em;color:var(--c-gold);margin-bottom:4px;transition:color .2s}
.footer__dev a:hover{color:var(--c-red)}

/* ================= плавающие кнопки ================= */
.search{
  position:fixed;right:0;bottom:0;z-index:45;
  background:var(--c-dark);color:#fff;font-family:var(--f-head);font-size:19px;
  height:60px;padding:0 40px 0 58px;display:flex;align-items:center;gap:24px;
  clip-path:polygon(28px 0,100% 0,100% 100%,0 100%);transition:background .2s;
}
.search i{color:rgba(255,255,255,.7);font-size:18px}
.search:hover{background:var(--c-red)}

.tg{position:fixed;left:24px;bottom:24px;z-index:45;width:56px;height:56px;border-radius:50%;background:var(--c-tg);color:#fff;display:grid;place-items:center;font-size:24px;transition:background .2s}
.tg i{position:relative;left:-2px;top:1px} /* самолётик визуально сдвинут, центрируем на глаз */
.tg:hover{background:var(--c-tg-dark)}
.is-locked .tg{visibility:hidden} /* при открытом меню или поиске кнопка не лезет поверх */
.tg::before,.tg::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--c-tg);opacity:0;animation:tgPulse 2.6s ease-out infinite}
.tg::after{animation-delay:1.3s}
@keyframes tgPulse{0%{transform:scale(1);opacity:.75}100%{transform:scale(2);opacity:0}}

/* ================= попап поиска ================= */
.smodal{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.5);display:grid;place-items:center;padding:24px;opacity:0;transition:opacity .25s} /* нейтральное затемнение, страница видна на 50% */
.smodal.is-open{opacity:1}
.smodal__box{position:relative;width:min(760px,100%);min-width:0;color:#fff;background:var(--c-dark);padding:44px 48px 40px} /* компактная плашка в цвете кнопки поиска и карточек новостей, без тени и скруглений */
.smodal__form{display:flex;align-items:flex-end;gap:16px;border-bottom:1px solid var(--c-gold)}
.smodal__form input{flex:1 1 0;width:0;background:none;border:0;color:#fff;font-family:var(--f-head);font-size:clamp(24px,3vw,36px);font-weight:300;padding:10px 0 14px;outline:none;min-width:0}
.smodal__form input::placeholder{color:rgba(255,255,255,.35)}
.smodal__form button{color:var(--c-gold);font-size:26px;padding:0 4px 18px;transition:color .2s}
.smodal__form button:hover{color:#fff}
.smodal__hint{margin-top:16px;font-size:14.5px;color:rgba(255,255,255,.55)}
.smodal__close{position:absolute;top:0;right:0;width:48px;height:48px;display:grid;place-items:center;color:rgba(255,255,255,.7);font-size:22px;transition:color .2s}
.smodal__close:hover{color:#fff}
.rmodal__box{width:min(640px,100%);max-height:calc(100vh - 48px);overflow-y:auto}
.rmodal__title{font-size:clamp(26px,2.4vw,34px);font-weight:400;color:#fff;letter-spacing:-.01em}
.rmodal__model{margin:8px 0 30px;font-family:var(--f-head);font-size:17px;color:var(--c-gold-light)}
.rmodal .form__ok{padding:12px 0 4px}

/* ================= внутренние страницы ================= */
.inner .cta{margin-top:clamp(72px,8vw,112px)}
.phead{position:relative;margin-left:calc(-1 * var(--sb));padding-left:var(--sb);color:#f4ede6;overflow:hidden;background:var(--c-red-deep) url(../assets/bg-facets-red.svg) center/cover no-repeat}
.phead__in{position:relative;padding-top:clamp(104px,11vw,160px);padding-bottom:clamp(56px,6vw,92px)}
.crumbs{display:flex;flex-wrap:wrap;row-gap:6px;font-family:var(--f-head);font-size:14px;color:rgba(244,237,230,.66);margin-bottom:26px}
.crumbs a{transition:color .2s}
.crumbs a:hover{color:var(--c-gold-light)}
.crumbs>*+*::before{content:"/";margin:0 12px;color:var(--c-gold)}
.phead__title{font-weight:300;text-transform:uppercase;font-size:clamp(34px,4vw,62px);line-height:1.08;letter-spacing:.005em;max-width:16em;color:#f4ede6;text-wrap:balance}
.phead__lead{margin-top:22px;font-size:clamp(16px,1.2vw,19px);line-height:1.65;color:rgba(244,237,230,.8);max-width:40em}
.phead__lead a{color:var(--c-gold-light);border-bottom:1px solid rgba(231,207,168,.5);transition:border-color .2s}
.phead__lead a:hover{border-color:var(--c-gold-light)}
/* поиск по каталогу (?q=): первый экран - запрос, итог и строка для нового запроса */
.phead__search{display:flex;align-items:flex-end;gap:16px;max-width:640px;margin-top:30px;border-bottom:1px solid var(--c-gold)}
.phead__search input{flex:1 1 0;width:0;min-width:0;background:none;border:0;color:#fff;font-family:var(--f-head);font-size:clamp(20px,1.8vw,26px);font-weight:300;padding:8px 0 12px;outline:none}
.phead__search input::placeholder{color:rgba(255,255,255,.4)}
.phead__search button{color:var(--c-gold);font-size:22px;padding:0 4px 14px;transition:color .2s}
.phead__search button:hover{color:#fff}
.is-search .phead__in{padding-bottom:clamp(40px,4vw,64px)}

/* таблица характеристик: строки с тонкими линиями, как шильдик машины */
.spec{border-top:1px solid var(--c-line)}
.spec__row{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:6px 28px;padding:14px 0;border-bottom:1px solid var(--c-line)}
.spec dt{font-size:15px;line-height:1.5;color:var(--c-muted)}
.spec dd{font-family:var(--f-head);font-size:17px;font-weight:500;line-height:1.45;color:var(--c-ink);font-variant-numeric:tabular-nums}
.spec dd a{transition:color .2s}
.spec dd a:hover{color:var(--c-red)}
.spec--wide .spec__row{grid-template-columns:minmax(0,.3fr) minmax(0,1fr);padding:22px 0}
.spec--wide dt{font-family:var(--f-head);font-size:19px;font-weight:500;color:var(--c-ink)}
.spec--wide dd{font-family:var(--f-text);font-size:16px;font-weight:400;line-height:1.7;color:var(--c-ink-soft);max-width:48em}

.btn--red{color:#fff;background:var(--c-red)}
.btn--red:hover{background:var(--c-red-deep)}
.textlink{display:inline-flex;align-items:center;gap:10px;margin-top:6px;font-family:var(--f-head);font-size:18px;font-weight:500;color:var(--c-red);border-bottom:1px solid var(--c-gold);padding-bottom:4px}
.textlink i{font-size:14px;transition:transform .2s}
.textlink:hover i{transform:translateX(4px)}
.ticks{list-style:none}
.ticks li{position:relative;padding-left:30px;margin-bottom:14px;font-size:16px;line-height:1.65;color:var(--c-ink-soft)}
.ticks li::before{content:"";position:absolute;left:2px;top:.6em;width:8px;height:8px;border:1px solid var(--c-gold);transform:rotate(45deg)} /* ромб, как у этапов на главной */
.ticks--cols{columns:2;column-gap:48px}
.ticks--cols li{break-inside:avoid}

/* каталог */
.catalog--page{padding-top:clamp(48px,5vw,72px);padding-bottom:0}
.catalog__status{margin:-20px 0 32px;font-size:16px;color:var(--c-ink-soft)}
.catalog__status button{margin-left:14px;color:var(--c-red);border-bottom:1px solid var(--c-gold);font-family:var(--f-head);font-weight:500}
.catalog__empty{padding:24px 0 8px;font-size:17px;color:var(--c-ink-soft)}
.catalog__empty a{color:var(--c-red);border-bottom:1px solid var(--c-gold)}

/* модель */
.model{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(40px,5vw,80px);align-items:start;padding-top:clamp(56px,6vw,88px)}
.model__img{aspect-ratio:3/2;background:#fff;border-bottom:1px solid var(--c-line)}
.model__img img{width:100%;height:100%;object-fit:contain;padding:4% 3% 2%}
.model__img--photo img{object-fit:cover;padding:0}
.model__title{font-size:clamp(22px,1.8vw,26px);font-weight:500;color:var(--c-red);margin-bottom:18px}
.model__actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 32px;margin-top:32px}
.minfo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px clamp(40px,5vw,80px);padding-top:clamp(64px,7vw,104px)}
.minfo__block:has(.ticks--cols){grid-column:1/-1}
.minfo__title{font-size:clamp(22px,1.8vw,26px);font-weight:500;color:var(--c-red);margin-bottom:22px}
.gallery,.variants,.catalog--more{padding-top:clamp(64px,7vw,104px)}
.catalog--more{padding-bottom:0}
.gallery__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gallery__item{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--c-dark)}
.gallery__item:only-child{grid-column:1/-1;max-width:720px;aspect-ratio:3/2} /* одно фото - не плиткой на треть */
.gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.gallery__item:hover img{transform:scale(1.04)}

/* компания */
.about{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:start;padding-top:clamp(56px,6vw,96px);padding-bottom:clamp(72px,8vw,112px)}
.about__text p{font-size:18px;line-height:1.8;color:var(--c-ink-soft);max-width:36em}
.about__text p+p{margin-top:1.1em}
.about__text b{font-weight:600;color:var(--c-ink)}
.mission{position:relative;background:var(--c-red);color:#fff;overflow:hidden;padding:112px 0} /* фиксированные ступени, а не clamp(): так отступ видит и детектор impeccable */
.mission::before{content:"";position:absolute;inset:0;opacity:.35;background:url(../assets/bg-facets-red.svg) center/cover no-repeat} /* фасеты как у CTA */
.mission__in{position:relative}
.mission__text{font-weight:300;text-transform:uppercase;font-size:clamp(26px,2.9vw,44px);line-height:1.22;letter-spacing:.01em;max-width:24em;color:#f4ede6;text-wrap:balance}
.values,.partners,.order{padding-top:clamp(72px,8vw,112px)}
.values__row{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:10px 48px;align-items:baseline;padding:26px 0;border-bottom:1px solid var(--c-line)}
.values__row:first-child{border-top:1px solid var(--c-line)}
.values__name{font-size:clamp(20px,1.7vw,26px);font-weight:500;color:var(--c-ink)}
.values__text{font-size:17px;line-height:1.7;color:var(--c-ink-soft);max-width:34em}
.partners__lead{font-size:17px;line-height:1.7;color:var(--c-ink-soft);max-width:34.8em;margin:-28px 0 40px}
.partners__list{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;padding:1px 0 0 1px} /* 13 знаков: неполный последний ряд по центру, рамки ячеек сходятся за счёт -1px */
.partners__list li{flex:0 0 calc(20% + 1px);margin:-1px 0 0 -1px;display:grid;place-items:center;min-height:140px;padding:28px 20px;border:1px solid var(--c-line)}
.partners__list img{max-width:100%;height:auto} /* размер у каждого знака свой: одинаковая площадь, считает tools/prepare-partner-logos.py */

/* покупателям */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,5vw,80px);align-items:center;padding-top:clamp(64px,7vw,104px);scroll-margin-top:24px}
.split--rev .split__img{order:2}
.split__img{aspect-ratio:4/3;overflow:hidden;background:var(--c-dark)}
.split__img img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}
.split__text .h2{margin-bottom:.8em}
.split__text p{font-size:17px;line-height:1.75;color:var(--c-ink-soft);max-width:32em}
.split__text p+p{margin-top:1em}
.countries{list-style:none;display:flex;flex-wrap:wrap;gap:16px 40px;margin-top:28px}
.countries li{padding-top:12px;border-top:2px solid var(--c-gold);font-family:var(--f-head);font-size:22px;font-weight:500;color:var(--c-ink)}
.order__list{list-style:none;counter-reset:ord;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.order__list li{counter-increment:ord;border-top:1px solid var(--c-line);padding-top:24px}
.order__list li::before{content:"0" counter(ord);display:block;font-family:var(--f-head);font-weight:300;font-size:48px;line-height:1;color:var(--c-gold);margin-bottom:18px} /* номер несёт порядок шагов */
.order__list h3{font-size:22px;font-weight:500;margin-bottom:10px}
.order__list p{font-size:16px;line-height:1.65;color:var(--c-ink-soft);max-width:26em}

/* контакты: карта в колонке до 760 px - шире Яндекс добавляет рекламную полосу */
.contacts{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,5vw,72px);align-items:start;padding-top:clamp(56px,6vw,88px)}
.contacts__phones a{display:block}
.contacts__map{aspect-ratio:4/3;max-width:760px;background:#efedea}
.contacts__map iframe{display:block;width:100%;height:100%;border:0}

/* ================= появление блоков ================= */
/* Тематический набор, каждый приём взят из предмета сайта: грани hero собираются как фасеты, золотую рамку ведёт сварочная искра,
   заголовки остывают от раскалённого золота до красного, фото каталога открывают роллетные двери отсеков, плитки «Покупателям»
   раскрываются как ворота бокса, фото этапа появляется вспышкой сварки. Смена слайда hero - мозаика из тех же граней.
   Работает только при JS (html.js) и без prefers-reduced-motion; без JS и при reduced-motion всё видно сразу и статично. */
@media (prefers-reduced-motion:no-preference){
  /* фасеты hero: JS подменяет <use> живой копией граней; до подмены фон тёмно-красный, потом каждая грань встаёт на место волной слева направо (--d из JS) */
  .js .hero__bg use{opacity:0}
  .js .facets-live polygon{opacity:0;transform:scale(.3);transform-box:fill-box;transform-origin:center;animation:svftFacet .7s cubic-bezier(.2,.7,.2,1) var(--d,0s) forwards}
  /* мозаика при смене слайда: поверх фото лежит слой тех же граней (JS вставляет копию в слайды с фото), при активации грани растворяются волной слева направо и открывают фото */
  .js .slide__mosaic{position:absolute;inset:0;pointer-events:none}
  .js .slide__mosaic svg{width:100%;height:100%}
  .js .slide__mosaic polygon{transform-box:fill-box;transform-origin:center}
  .js .slide.is-active .slide__mosaic polygon{animation:svftDissolve .7s cubic-bezier(.4,0,.6,1) var(--d,0s) forwards}
  /* золотая линия: скрыта до старта, рисуется CSS-переходом, искру по той же траектории ведёт SMIL (запуск синхронно из JS) */
  .js .hero__frame path,.js .build__frame path{stroke-dashoffset:1;transition:stroke-dashoffset 1.5s linear}
  .js .build__frame path{transition-duration:1.2s}
  .js .hero__frame path.is-lit,.js .build__frame path.is-lit{stroke-dashoffset:0}
  /* штамп: монограмма, цифра и заголовок активного слайда (и при каждой смене) */
  .js .slide.is-active .slide__big,.js .slide.is-active .slide__stat{animation:svftStamp .5s cubic-bezier(.2,.9,.3,1) .55s both}
  .js .slide.is-active .slide__title{animation:svftStamp .5s cubic-bezier(.2,.9,.3,1) .75s both,svftCoolCream 1.6s ease-out .75s both}
  /* остывание: заголовки секций входят раскалённо-золотыми и остывают до своего цвета */
  .js .rv-cool{color:#f1d9b0}
  .js .rv-cool.is-in{animation:svftCool 1.4s ease-out both}
  .js .rv-cool--light.is-in{animation-name:svftCoolWhite}
  /* роллетная дверь отсека: алюминиевые слаты уезжают вверх, карточки в ряду по очереди */
  .js .card__img::after{content:"";position:absolute;inset:0;z-index:1;background:repeating-linear-gradient(180deg,#4d515a 0 8px,#2a2c31 8px 10px,#5f636c 10px 11px,#3b3e46 11px 12px)}
  .js .card.is-in .card__img::after{animation:svftShutter .9s cubic-bezier(.65,0,.25,1) calc(var(--i,0) * 120ms) forwards}
  /* ворота бокса: две тёмные створки со золотым стыком разъезжаются в стороны */
  .js .tile__gate{position:absolute;inset:0;z-index:3;pointer-events:none}
  .js .tile__gate::before,.js .tile__gate::after{content:"";position:absolute;top:0;bottom:0;width:50%;background:var(--c-dark)}
  .js .tile__gate::before{left:0;border-right:1px solid var(--c-gold)}
  .js .tile__gate::after{right:0}
  .js .tile.is-in .tile__gate::before{animation:svftGateL .95s cubic-bezier(.65,0,.25,1) calc(.1s + var(--i,0) * 140ms) forwards}
  .js .tile.is-in .tile__gate::after{animation:svftGateR .95s cubic-bezier(.65,0,.25,1) calc(.1s + var(--i,0) * 140ms) forwards}
  /* этапы: фото этапа - вспышка сварки при первом показе, направляющая растёт, ромбы вспыхивают по очереди */
  .js .build.is-in .build__stage{animation:svftFlash .8s ease-out .15s both}
  .js .build__list::before{transform:scaleY(0);transform-origin:top}
  .js .build.is-in .build__list::before{animation:svftGrow .9s cubic-bezier(.4,0,.2,1) .3s both}
  .js .step::before{transform:rotate(45deg) scale(0)}
  .js .build.is-in .step::before{transform:rotate(45deg);animation:svftIgnite .55s cubic-bezier(.2,.7,.2,1) calc(.45s + var(--i,0) * 130ms) backwards}
}
@media (prefers-reduced-motion:no-preference){
  /* страница модели (один раз при открытии): вырезка машины въезжает слева и тормозит с лёгким клевком, под ней прорисовывается линия пола, заголовок остывает из золота. У моделей с фото вместо въезда - роллетная дверь, как у карточек */
  .js .page-catalog-model .model__img{position:relative;border-bottom-color:transparent}
  .js .page-catalog-model .model__img::before{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--c-line);transform:scaleX(0);transform-origin:left;animation:svftGrow2 .9s cubic-bezier(.4,0,.2,1) .1s forwards}
  .js .page-catalog-model .model__img:not(.model__img--photo) img{transform-origin:62% 100%;animation:svftRollIn 1.25s cubic-bezier(.22,.8,.3,1) .15s both}
  .js .page-catalog-model .model__img--photo{overflow:hidden}
  .js .page-catalog-model .model__img--photo::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(180deg,#4d515a 0 8px,#2a2c31 8px 10px,#5f636c 10px 11px,#3b3e46 11px 12px);animation:svftShutter .9s cubic-bezier(.65,0,.25,1) .2s forwards}
  .js .page-catalog-model .phead__title{animation:svftCoolCream 1.4s ease-out both}
}
@keyframes svftRollIn{0%{opacity:0;transform:translateX(-16%)}25%{opacity:1}78%{transform:translateX(.6%) rotate(0)}88%{transform:translateX(.2%) rotate(.6deg)}100%{opacity:1;transform:none}}
@keyframes svftGrow2{to{transform:none}}
@keyframes svftFacet{to{opacity:1;transform:none}}
@keyframes svftDissolve{to{transform:scale(0);opacity:0}}
@keyframes svftStamp{from{opacity:0;transform:scale(1.16)}55%{opacity:1;transform:scale(.985)}to{opacity:1;transform:none}}
@keyframes svftCool{from{color:#f1d9b0}30%{color:#dcb488}to{color:var(--c-red)}}
@keyframes svftCoolWhite{from{color:#f1d9b0}to{color:#fff}}
@keyframes svftCoolCream{from{color:#e7cfa8}to{color:#f4ede6}}
@keyframes svftShutter{to{transform:translateY(-101%)}}
@keyframes svftGateL{to{transform:translateX(-101%)}}
@keyframes svftGateR{to{transform:translateX(101%)}}
@keyframes svftFlash{from{filter:brightness(2.4) contrast(.6)}25%{filter:brightness(1.9) contrast(.8)}to{filter:none}}
@keyframes svftGrow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes svftIgnite{0%{transform:rotate(45deg) scale(.2);background:#fff3d6;border-color:#fff3d6}55%{transform:rotate(45deg) scale(1.3);background:var(--c-gold-light);border-color:var(--c-gold-light)}100%{transform:rotate(45deg) scale(1)}}

/* ================= адаптив ================= */
@media (max-width:1099px){
  :root{--sb:0px;--pad-l:40px;--pad-r:40px}

  /* верхняя шапка как в мобильном референсе: прозрачная над hero, белая при скролле */
  .hd{
    display:flex;align-items:center;justify-content:flex-end;gap:30px;
    position:fixed;left:0;right:0;top:0;height:64px;z-index:41;
    padding:0 22px;color:#fff;font-family:var(--f-head);font-size:19px;
    transition:background .25s,color .25s,border-color .25s;border-bottom:1px solid transparent;
  }
  .hd.is-solid{background:#fff;color:var(--c-ink);border-color:var(--c-line)}
  .hd__logo{position:absolute;left:20px;top:8px;width:48px;height:48px}
  .hd__logo img{width:100%;height:100%}
  .hd__search,.hd__menu{display:flex;align-items:center;gap:12px;height:44px}
  .hd__search i{font-size:18px;opacity:.75}
  .hd__lines{position:relative;width:34px;height:14px;display:block}
  .hd__lines::before,.hd__lines::after,.hd__lines i{content:"";position:absolute;left:0;right:0;height:2px;background:currentColor;transition:transform .3s,opacity .2s}
  .hd__lines::before{top:0}
  .hd__lines i{top:6px}
  .hd__lines::after{bottom:0}
  .hd__menu[aria-expanded="true"] .hd__lines::before{transform:translateY(6px) rotate(45deg)}
  .hd__menu[aria-expanded="true"] .hd__lines i{opacity:0}
  .hd__menu[aria-expanded="true"] .hd__lines::after{transform:translateY(-6px) rotate(-45deg)}

  /* панель превращается в выезжающее меню */
  .sb{
    left:auto;right:0;width:min(86vw,380px);height:100vh;height:100dvh;
    background:var(--c-red);box-shadow:none;padding:40px 32px 32px 44px;
    transform:translateX(100%);transition:transform .35s ease;z-index:42;
  }
  .sb.is-open{transform:none}
  .sb__lang{font-size:15px}
  .sb__logo{width:76px;margin-top:28px}
  .sb__nav{margin-top:24px}
  .sb__nav a{font-size:21px;padding:11px 0}
  .sb__contacts{font-size:18px;padding-top:32px;gap:0}
  .sb__contacts a{padding:7px 0} /* зона нажатия в мобильном меню */
  .sb__close{position:absolute;top:10px;right:14px;width:48px;height:48px;display:grid;place-items:center;font-size:26px;color:#fff}
  .sb__veil{position:fixed;inset:0;z-index:41;background:rgba(20,8,6,.5);opacity:0;pointer-events:none;transition:opacity .3s}
  .sb__veil.is-on{opacity:1;pointer-events:auto}

  .page{margin-left:0}
  .hero{margin-left:0;height:auto;min-height:0}
  /* слайды лежат в одной grid-ячейке друг над другом: hero берёт высоту самого высокого и не прыгает при смене, переходы те же, что на десктопе */
  .hero__slides{position:relative;display:grid}
  .slide{position:relative;inset:auto;grid-area:1/1;display:grid;padding:130px 40px 110px;align-content:start}
  .slide__big,.slide__stat{position:static;margin-bottom:64px}
  .slide__big{font-size:clamp(110px,22vw,200px)}
  .slide__stat b{font-size:clamp(90px,18vw,170px)}
  .slide__title{font-size:clamp(26px,4.6vw,40px)}
  .slide__title--long{font-size:clamp(22px,3.95vw,34px)}
  .hero__arrow,.hero__frame{display:none}
  .hero__dots{right:auto;left:40px;bottom:44px;gap:22px}

  .intro{padding-top:64px;padding-bottom:72px}
  .facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 36px;margin-top:44px}
  .catalog__grid{grid-template-columns:repeat(2,1fr);gap:44px 32px}
  .build{padding-top:80px}
  .build__grid{grid-template-columns:1fr;gap:40px}
  .build__stage{aspect-ratio:16/10}
  .cta__in{grid-template-columns:1fr;gap:44px;padding-top:64px;padding-bottom:64px}
  .tiles{margin-top:64px}
  .tile{height:clamp(220px,28vw,320px);padding-bottom:32px}
  .hotline{padding:80px var(--pad-r) 56px var(--pad-l)}
  .footer__in{grid-template-columns:1fr auto}
  .footer__logo{display:none}
  .search{display:none} /* поиск на планшете и мобилке - в шапке */

  .phead{margin-left:0;padding-left:0}
  .phead__in{padding-top:120px}
  .model,.about,.contacts{grid-template-columns:1fr}
  .minfo{grid-template-columns:1fr;gap:44px}
  .gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .split{grid-template-columns:1fr;gap:32px}
  .split--rev .split__img{order:0}
  .split__img{aspect-ratio:16/9}
  .contacts__map{max-width:none;aspect-ratio:16/10}
  .tabs{gap:24px}
  .tabs button{font-size:16px}
  .partners__list li{flex-basis:calc(25% + 1px)}
  .mission{padding:88px 0}
}
@media (min-width:900px) and (max-width:1099px){
  .model{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px} /* планшет в горизонтали: фото и характеристики рядом */
}
@media (max-width:767px){
  :root{--pad-l:24px;--pad-r:24px}
  .hd{gap:22px;padding:0 16px;font-size:17px}
  .hd__logo{left:14px;top:9px;width:46px;height:46px}
  .slide{padding:120px 24px 96px}
  .slide__big,.slide__stat{margin-bottom:48px}
  .slide__big{font-size:clamp(96px,28vw,140px)}
  .slide__stat b{font-size:clamp(80px,24vw,120px)}
  .slide__stat span{font-size:15px}
  .slide__title{font-size:clamp(24px,7vw,32px);max-width:none}
  .slide__title--long{font-size:clamp(19px,5.5vw,27.5px)}
  .hero__dots{left:24px;bottom:40px}
  .h2{margin-bottom:28px}
  .intro{padding-top:52px;padding-bottom:56px}
  .intro p{font-size:16px;line-height:1.7}
  .facts{grid-template-columns:1fr;gap:24px;margin-top:36px}
  .facts b{font-size:18px}
  .catalog__grid{grid-template-columns:1fr;gap:40px}
  .tabs{gap:22px;margin:-8px -24px 36px;padding:0 24px}
  .form textarea{min-height:72px} /* подсказка комментария в две строки */
  .tabs button{font-size:15.5px}
  .build{padding-top:60px}
  .build__lead{margin:-12px 0 32px}
  .build__stage{aspect-ratio:4/3}
  .build__meta{left:20px;right:20px;bottom:18px}
  .build__cap{font-size:17px}
  .build__list{padding-left:30px}
  .step::before{left:-28px}
  .step__title{font-size:18px}
  .step__text p{padding-left:0}
  .cta__in{padding-top:52px;padding-bottom:56px;gap:36px}
  .form{grid-template-columns:1fr;gap:22px}
  .form__actions{gap:18px}
  .btn{width:100%;text-align:center}
  .card__title{font-size:22px}
  .more{margin-top:40px}
  .tiles{grid-template-columns:1fr;margin-top:52px}
  .tile{height:210px;padding-bottom:28px}
  .hotline{padding:60px var(--pad-r) 44px var(--pad-l);gap:6px;flex-direction:column}
  .footer{padding:40px 0 110px}
  .footer__in{grid-template-columns:1fr;gap:26px}
  .footer__contacts{flex-direction:column;gap:12px;font-size:17px;margin-bottom:20px}
  .footer__right{text-align:left}
  .footer__dev{margin-top:22px}
  .tg{left:16px;bottom:16px;width:52px;height:52px;font-size:25px}
  .smodal{padding:16px}
  .smodal__box{padding:52px 22px 28px}

  .phead__in{padding-top:104px;padding-bottom:48px}
  .crumbs{font-size:13px;margin-bottom:20px}
  .crumbs>*+*::before{margin:0 8px}
  .phead__title{font-size:clamp(28px,8vw,38px)}
  .spec__row{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:4px 16px}
  .spec dd{font-size:16px}
  .spec--wide .spec__row{grid-template-columns:1fr;padding:18px 0}
  .spec--wide dt{font-size:18px}
  .ticks--cols{columns:1}
  .gallery__grid{gap:10px}
  .about__text p,.split__text p,.values__text{font-size:16px;line-height:1.7}
  .values__row{grid-template-columns:1fr;padding:20px 0}
  .partners__lead{margin:-12px 0 28px;font-size:16px}
  .partners__list li{flex-basis:calc(50% + 1px)}
  .mission{padding:72px 0}
  .partners__list li{min-height:96px;padding:20px 14px}
  .partners__list img{max-width:88%}
  .countries li{font-size:19px}
  .order__list{grid-template-columns:1fr;gap:28px}
  .order__list li::before{font-size:40px;margin-bottom:12px}
}
@media (max-height:520px){ /* телефон в горизонтали: модалка заявки и меню без лишней высоты */
  .smodal{padding:12px}
  .smodal__box{padding:24px 32px 20px}
  .rmodal__title{font-size:24px}
  .rmodal__model{margin:4px 0 14px}
  .rmodal .form{gap:12px 28px}
  .rmodal .form textarea{min-height:0;height:44px}
}
@media (max-height:520px) and (max-width:1099px){
  .sb{padding-top:24px}
  .sb__logo{display:none} /* логотип и так в шапке */
  .sb__nav{margin-top:12px}
  .sb__nav a{padding:8px 0}
  .sb__contacts{padding-top:16px}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
  html{scroll-behavior:auto}
}
