/* ==========================================================================
   Сигнум — лендинг. Чистый CSS, без зависимостей.
   Брейкпоинты: 1200+ / 960–1199 / 640–959 / 480–639 / 320–479
   ========================================================================== */
/* Roboto — локально (без Google Fonts) */
@font-face{font-family:'Roboto';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/roboto-cyrillic-400.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Roboto';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/roboto-latin-400.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Roboto';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/roboto-cyrillic-500.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Roboto';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/roboto-latin-500.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Roboto';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/roboto-cyrillic-600.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Roboto';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/roboto-latin-600.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --ink:#020204; --slate:#5A6D7C; --grey:#AFB9C5; --light:#E0E5EA; --surf:#F4F6F8; --white:#fff; --err:#E5484D;
  --field:rgba(90,109,124,.2);
  --pad:16px; --max:1600px;
  --gap:160px; --r-xl:72px; --r-card:32px;
  --h1:40px; --h1-lh:48px; --h2:32px; --h2-lh:40px; --body:16px; --body-lh:24px;
  --led:48px;
  --ease:cubic-bezier(.2,.7,.2,1); --ease-out:cubic-bezier(.16,1,.3,1);
  --btn-tex:linear-gradient(115deg,#020204 0%,#16181c 45%,#3a3f47 52%,#0b0c0f 58%,#020204 100%);
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
.lbl-short{display:none}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--white);color:var(--ink);font:500 var(--body)/var(--body-lh) Roboto,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;letter-spacing:inherit;background:none;border:0;padding:0;cursor:pointer}
p{margin:0}
h1,h2,h3{margin:0;font-weight:600}
:focus-visible{outline:2px solid var(--slate);outline-offset:3px;border-radius:8px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.section{margin-top:var(--gap)}
.muted{color:var(--grey)} .slate{color:var(--slate)}
.muted-link{color:var(--grey);transition:color .2s}.muted-link:hover{color:var(--white)}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--ink);color:#fff;padding:8px 16px;border-radius:40px}
.skip:focus{left:8px}
.h1{font-size:var(--h1);line-height:var(--h1-lh);letter-spacing:-.025em;font-weight:600}
.h2{font-size:var(--h2);line-height:var(--h2-lh);letter-spacing:-.025em;font-weight:600}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 24px;border-radius:40px;font-weight:500;white-space:nowrap;transition:background-color .25s var(--ease),color .25s var(--ease),transform .2s var(--ease),box-shadow .25s;will-change:transform}
.btn:active{transform:scale(.97)}
.btn--primary{color:#fff;background:url(../img/btn-texture.webp) center/cover,var(--btn-tex);background-size:cover,200% 100%;transition:background-position .6s var(--ease),transform .2s var(--ease),box-shadow .25s}
.btn--primary:hover{background:var(--slate);box-shadow:0 8px 24px rgba(2,2,4,.25)}
.btn--outline{height:48px;padding:0 32px;color:#fff;box-shadow:inset 0 0 0 2px #fff}
.btn--outline:hover{background:#fff;color:var(--ink)}
.btn--light{background:var(--light);color:var(--ink)}.btn--light:hover{background:var(--grey)}
.btn--white{background:#fff;color:var(--ink)}.btn--white:hover{background:var(--light)}
.btn--dim{background:rgba(90,109,124,.35);color:#fff}.btn--dim:hover{background:var(--slate)}
.btn--ghost-light{height:56px;border-radius:12px;padding:0 32px;color:#fff;box-shadow:inset 0 0 0 1.5px #fff}.btn--ghost-light:hover{background:#fff;color:var(--ink)}
.btn--block{width:100%}
.link{display:inline-flex;align-items:center;gap:1px;color:var(--slate);transition:color .2s}
.link svg{width:24px;height:24px;transition:transform .3s var(--ease)}
.link:hover{color:var(--ink)}.link:hover svg{transform:translateX(4px)}

/* ---------- Header ---------- */
/* Шапка: fixed + transform (без перерасчёта раскладки), появляется только при уверенном скролле вверх */
:root{--hh:80px}
body{padding-top:var(--hh)}
.header{position:fixed;top:0;left:0;right:0;z-index:40;background:#fff;transform:translate3d(0,0,0);transition:transform .4s var(--ease),box-shadow .3s;will-change:transform;backface-visibility:hidden}
.header.is-hidden{transform:translate3d(0,-100%,0);box-shadow:none}
.header.is-scrolled{box-shadow:0 1px 0 var(--light),0 8px 24px rgba(2,2,4,.06)}
.header__in{display:flex;align-items:center;justify-content:space-between;height:80px;gap:16px}
.logo{color:var(--ink);flex:none}
.logo svg{width:262px;height:48px}
.nav{display:flex;margin-left:auto}
.nav__link{height:48px;padding:0 24px;display:inline-flex;align-items:center;border-radius:40px;color:var(--grey);transition:color .2s,background-color .2s}
.nav__link:hover{color:var(--ink);background:var(--surf)}
.header__actions{display:flex;align-items:center;gap:8px}
.burger{display:none;width:48px;height:48px;border-radius:40px;background:var(--light);flex-direction:column;align-items:center;justify-content:center;gap:5px;transition:background-color .2s}
.burger:hover{background:var(--grey)}
.burger span{display:block;width:18px;height:2px;border-radius:1px;background:var(--ink);transition:transform .35s var(--ease)}
.burger[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}

.menu{position:fixed;inset:0;z-index:35;background:#fff;padding:96px var(--pad) 24px;display:flex;flex-direction:column;justify-content:space-between}
.menu[hidden]{display:none}
.menu__nav{display:flex;flex-direction:column;gap:16px}
.menu__nav a,.menu__nav button{font-size:32px;line-height:40px;font-weight:600;letter-spacing:-.025em;text-align:left;opacity:0;transform:translateY(16px)}
.menu.is-open .menu__nav>*{opacity:1;transform:none;transition:opacity .5s var(--ease),transform .6s var(--ease-out)}
.menu.is-open .menu__nav>*:nth-child(2){transition-delay:.05s}.menu.is-open .menu__nav>*:nth-child(3){transition-delay:.1s}.menu.is-open .menu__nav>*:nth-child(4){transition-delay:.15s}
.menu__bottom{display:flex;flex-direction:column;gap:16px}
.menu__addr{color:var(--grey)}

/* ---------- Intro ---------- */
.intro{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:flex-end;gap:16px;padding-top:168px;padding-bottom:40px}
.intro__mark{flex:none;width:149px}
.mark{width:100%;height:auto;overflow:visible}
.mark circle{fill:var(--grey);transform-box:fill-box;transform-origin:center}
.intro__title{flex:1;min-width:0}
.intro__title .line{display:block;overflow:hidden;padding-bottom:2px}
.intro__title .line>span{display:inline-block}
.intro__metals{color:var(--slate)}
.intro__metals a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;transition:color .2s}
.intro__metals a:hover{color:var(--ink)}

/* ---------- Showcase ---------- */
.showcase{position:relative;width:100%;margin:0;height:600px;border-radius:var(--r-xl);overflow:hidden;color:#fff;background:#111 radial-gradient(120% 90% at 70% 30%,#5b6068 0%,#1a1b1f 45%,#050506 100%);isolation:isolate}
.showcase__media{position:absolute;inset:-8% 0;z-index:-1}
.showcase__media img{width:100%;height:100%;object-fit:cover}
.showcase__content{position:relative;height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 max(clamp(56px,calc(2vw + 32px),64px),calc(50vw - 800px + 64px));gap:24px}
.showcase__text{max-width:323px}
.showcase__logo{justify-self:end;width:262px;height:48px;color:#fff}

/* ---------- Stats ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px 8px;margin-top:48px}
.stat{border-top:1px solid var(--light);padding-top:24px;display:flex;flex-direction:column;gap:16px}
.stat p{color:var(--grey)}

/* ---------- LED dot-matrix ---------- */
.led{display:block;height:var(--led);color:var(--ink)}
.led svg{height:100%;width:auto;max-width:100%;overflow:visible}
.led circle{fill:currentColor;transform-box:fill-box;transform-origin:center}
.led--title{--led:48px;display:flex;justify-content:center}
.led--sm{--led:34px}

/* ---------- Catalog ---------- */
.catalog__head{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:24px 0;margin-bottom:48px}
.catalog__head .h2{max-width:588px;justify-self:start;width:100%}
.catalog__head .link{order:0}
.cards{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px 8px}
.card h3{font-size:16px;line-height:24px;font-weight:500;margin-top:16px}
.card p{color:var(--grey)}
.card__img{height:286px;border-radius:var(--r-card);overflow:hidden;background:var(--surf)}
.card__img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}
.card:hover .card__img img{transform:scale(1.06)}

/* ---------- Materials ---------- */
.materials{text-align:center;overflow-x:clip}
.chips{display:flex;justify-content:center;gap:8px;margin:24px auto 0;padding:0 var(--pad);max-width:var(--max)}
.chip{height:48px;padding:0 24px;border-radius:40px;background:var(--light);color:#030303;white-space:nowrap;transition:background-color .25s,color .25s;flex:none}
.chip:hover{background:var(--grey)}
.chip.is-active{background:var(--ink);color:#fff}
.slider{max-width:760px;display:flex;flex-direction:column;align-items:center;gap:38px;margin-top:56px}
.slider__stage{position:relative;width:668px;height:257px;display:flex;align-items:center;justify-content:space-between}
.piece{position:relative;object-fit:contain;user-select:none;-webkit-user-drag:none}
.piece--l{width:152px;height:157px;opacity:.95}
.piece--c{width:248px;height:257px;animation:float 6s ease-in-out infinite}
.piece--r{width:172px;height:179px;opacity:.95}
@keyframes float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(-2deg)}}
.slider__text{max-width:464px;display:flex;flex-direction:column;gap:16px;align-items:center}
.slider__name{font-size:22px;line-height:28px;color:var(--slate)}
.slider__desc{font-size:20px;line-height:28px}
.slider__marks{font-size:12px;line-height:16px}
.slider__arrows{display:flex;gap:12px}
.arrow{width:32px;height:32px;border-radius:32px;background:var(--light);color:#333;display:grid;place-items:center;transition:background-color .2s,color .2s}
.arrow svg{width:24px;height:24px}
.arrow:hover{background:var(--grey);color:var(--ink)}
.arrow:active{background:var(--slate);color:#fff}
.arrow:disabled{color:#b5b5b5;background:var(--light);cursor:default}
.slider__note{max-width:500px;color:var(--grey)}

/* ---------- Advantages ---------- */
.adv__head{display:flex;justify-content:space-between;align-items:flex-end;gap:72px}
.adv__head p{max-width:420px}
.adv__head .led{flex:none}
.adv__list{list-style:none;margin:72px 0 0;padding:0 16px;display:flex;flex-direction:column;gap:8px}
.adv__label{color:var(--grey)}
.adv__list li:not(.adv__label){display:grid;grid-template-columns:32px 1fr auto;align-items:baseline;border-radius:8px;transition:background-color .25s}
.adv__list span{color:var(--slate)}
.adv__list b{font-weight:500}
.adv__list i{font-style:normal;color:var(--grey);text-align:right;transition:color .25s}
.adv__list li:not(.adv__label):hover i{color:var(--slate)}

/* ---------- Dark block ---------- */
.dark-wrap{margin-top:120px;margin-bottom:16px}
.dark{background:var(--ink);color:#fff;border-radius:var(--r-xl);padding:56px;display:flex;flex-direction:column;gap:120px;overflow:hidden}
.lead__title{font-size:var(--h1);line-height:var(--h1-lh);letter-spacing:-.025em}
.lead__title span{color:var(--slate)}
.form{margin-top:32px;display:flex;flex-direction:column;gap:32px}
.toggle{display:inline-flex;align-self:flex-start;padding:4px;border-radius:9999px;background:var(--field)}
.toggle input{position:absolute;opacity:0;pointer-events:none}
.toggle span{display:inline-flex;align-items:center;height:48px;padding:0 24px;border-radius:9999px;color:var(--slate);cursor:pointer;transition:background-color .3s var(--ease),color .3s}
.toggle label:hover span{color:#fff}
.toggle input:checked+span{background:var(--slate);color:#fff}
.toggle input:focus-visible+span{outline:2px solid #fff;outline-offset:-2px}
.fields{display:flex;gap:8px;align-items:flex-start}
.field{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}
.field input{width:100%;height:56px;padding:0 20px;border:0;border-radius:12px;background:var(--field);color:#fff;font:inherit;letter-spacing:inherit;outline:0;box-shadow:inset 0 0 0 1.5px transparent;transition:background-color .2s,box-shadow .2s}
.field input::placeholder{color:var(--grey)}
.field input:hover{background:rgba(90,109,124,.32)}
.field input:focus{box-shadow:inset 0 0 0 1.5px #fff}
.field.is-error input{box-shadow:inset 0 0 0 1.5px var(--err)}
.field small{font-size:12px;line-height:16px;color:var(--err);min-height:0}
.field small:empty{display:none}
.btn--submit{height:56px;border-radius:12px;padding:0 32px;background:#fff;color:var(--ink)}
.btn--submit:hover{background:var(--light)}.btn--submit:active{background:var(--grey)}
.btn--submit.is-loading{pointer-events:none}
.btn--submit.is-loading::before{content:"";width:16px;height:16px;border-radius:50%;border:2px solid var(--ink);border-right-color:transparent;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.form__policy{font-size:12px;line-height:16px;color:var(--grey)}
.form__policy a{color:#fff;text-decoration:underline;text-underline-offset:2px}
.form-done{margin-top:32px;display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:560px}
.form-done__icon{width:56px;height:56px;border-radius:50%;background:#fff;color:var(--ink);display:grid;place-items:center;font-size:24px;font-weight:600}
.form-done h3{font-size:32px;line-height:40px;letter-spacing:-.025em}
.form-done p{color:var(--grey)} .form-done a{color:#fff}

.footer{display:flex;flex-direction:column;gap:32px}
.footer__logo{width:262px;height:48px;color:#fff}
.footer__cols{display:grid;grid-template-columns:repeat(3,332px);gap:24px 8px}
.footer__cols div{display:flex;flex-direction:column;align-items:flex-start}
.footer__cols a,.footer__cols button{transition:color .2s}
.footer__cols a:hover,.footer__cols button:hover{color:var(--grey)}
.footer__cols .muted{color:var(--slate)}
.footer__bottom{display:flex;justify-content:space-between;gap:8px 24px;font-size:12px;line-height:16px;color:var(--grey)}

/* ---------- Modal ---------- */
.modal{border:0;background:transparent;max-width:none;max-height:none;width:100%;height:100%;margin:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:48px 16px;overflow:hidden}
.modal:not([open]){display:none}
.modal::backdrop{background:rgba(2,2,4,.55);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:0;transition:opacity .35s}
.modal.is-open::backdrop{opacity:1}
.modal__card{position:relative;width:760px;max-width:100%;max-height:100%;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex:none;background:#fff;border-radius:32px;padding:0 48px 48px;display:flex;flex-direction:column;gap:32px;box-shadow:0 24px 64px rgba(0,0,0,.18);opacity:0;transform:translateY(24px) scale(.98);transition:opacity .35s var(--ease),transform .5s var(--ease-out)}
.modal.is-open .modal__card{opacity:1;transform:none}
.modal__grab{display:none}
.modal__head{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;background:#fff;padding:32px 0 12px;margin-bottom:-20px;flex:none}
.modal__head .muted{color:var(--slate)}
.close{position:relative;width:40px;height:40px;border-radius:40px;background:var(--light);transition:background-color .2s,transform .3s var(--ease)}
.close:hover{background:var(--grey);transform:rotate(90deg)}
.close::before,.close::after{content:"";position:absolute;left:12px;top:19px;width:16px;height:2px;border-radius:1px;background:var(--ink);transform:rotate(45deg)}
.close::after{transform:rotate(-45deg)}
.modal__title{font-size:32px;line-height:40px;letter-spacing:-.025em}
.modal__img{height:320px;border-radius:24px;overflow:hidden;background:#9a9a9a}
.modal__img img{width:100%;height:100%;object-fit:cover}
.modal__text{display:flex;flex-direction:column;gap:16px}
.modal__facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 8px}
.modal__facts div{border-top:1px solid var(--light);padding-top:16px;display:flex;flex-direction:column;gap:8px}
.modal__facts p{font-size:14px;line-height:20px;color:var(--grey)}
.modal__req{background:var(--surf);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:20px}
.modal__actions{display:flex;gap:8px;flex-wrap:wrap}

/* ---------- Cookie ---------- */
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;max-width:1168px;margin:0 auto;background:var(--ink);color:#fff;border-radius:32px;padding:24px 32px;display:flex;align-items:center;gap:32px;box-shadow:0 16px 48px rgba(0,0,0,.2);transform:translateY(calc(100% + 32px));transition:transform .6s var(--ease-out)}
.cookie.is-shown{transform:none}
.cookie[hidden]{display:none}
.cookie b{display:block;font-size:20px;line-height:28px;font-weight:600;margin-bottom:4px}
.cookie p{font-size:14px;line-height:20px;color:var(--grey)}
.cookie a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.cookie__actions{display:flex;gap:8px;flex:none}

/* ---------- Reveal ---------- */
.js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform 1s var(--ease-out)}
.js [data-reveal].is-in{opacity:1;transform:none}

/* ==========================================================================
   Адаптив
   ========================================================================== */
@media (max-width:1199px){
  :root{--r-xl:56px}
  .intro{padding-top:120px}
  .showcase{height:520px}
  .showcase__content{padding:0 48px}
  .showcase__logo{width:210px;height:38px}
  .footer__cols{grid-template-columns:repeat(3,1fr)}
  .dark{padding:48px}
}
@media (max-width:959px){
  .cookie{flex-direction:column;align-items:stretch;gap:16px}.cookie__actions .btn{flex:1}
  :root{--h1:32px;--h1-lh:40px;--h2:28px;--h2-lh:36px;--gap:136px;--r-xl:48px;--r-card:28px}
  .nav{display:none}
  .burger{display:flex}
  .logo svg{width:196px;height:36px}
  :root{--hh:72px}
  .header__in{height:72px}
  .intro{padding-top:96px}
  .intro__mark{width:92px}
  .showcase{height:460px}
  .showcase__content{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;justify-items:center;text-align:center;padding:40px}
  .showcase__text{max-width:300px}
  .showcase__content .btn{align-self:center}
  .showcase__logo{justify-self:center;width:210px;height:38px}
  .stats{grid-template-columns:repeat(2,1fr);margin-top:56px}
  .catalog__head{grid-template-columns:1fr;margin-bottom:40px}
  .catalog__head .h2{order:-1;max-width:none}
  .catalog__head .link{justify-self:start}
  .cards{grid-template-columns:1fr 1fr}
  .card--big{grid-column:1/-1}
  .card--big .card__img{height:300px}
  .card__img{height:240px}
  .chips{justify-content:flex-start;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scroll-padding-inline:var(--pad)}
  .chips::-webkit-scrollbar{display:none}
  .chip{scroll-snap-align:start}
  .slider__stage{transform:scale(.88)}
  .adv__list{padding:0;gap:0}
  .adv__list li:not(.adv__label){grid-template-columns:32px 1fr;row-gap:4px;border-top:1px solid var(--light);padding:16px 0;border-radius:0}
  .adv__list li:not(.adv__label) i{grid-column:2;text-align:left}
  .adv__label{margin-bottom:16px}
  .dark{padding:40px;gap:96px}
  .fields{flex-direction:column;align-items:stretch}
  .footer__cols{grid-template-columns:1fr 1fr}
  .footer__cols div:last-child{grid-column:1/-1}
  .footer__bottom{flex-direction:column}
  .footer__logo{width:196px;height:36px}
  .cookie{border-radius:24px}
}
@media (max-width:639px){
  :root{--h1:28px;--h1-lh:36px;--h2:24px;--h2-lh:32px;--gap:120px;--r-xl:40px;--r-card:24px;--led:38px}
  .logo svg{width:157px;height:29px}
  /* Первый экран на мобилке: 100px от шапки до знака, 16px до заголовка */
  .intro{--mark-w:56px;flex-direction:column;align-items:flex-start;gap:0;padding-top:100px;padding-bottom:40px}
  .intro__mark{width:var(--mark-w)}
  .intro__title{margin-top:16px}
  .showcase{height:440px}
  .showcase__content{padding:32px}
  .showcase__logo{width:180px;height:33px}
  .stat p{font-size:14px;line-height:20px}
  .card--big .card__img{height:260px}.card__img{height:200px}
  .slider__stage{transform:scale(.8)}
  .slider__desc{font-size:18px;line-height:26px}
  .adv__head{flex-direction:column-reverse;align-items:flex-start;gap:24px}
  .adv__head .led{--led:34px}
  .dark{padding:32px}
  .toggle{align-self:stretch}.toggle label{flex:1}.toggle span{justify-content:center;width:100%;padding:0 16px}
  .modal{padding:0;justify-content:flex-end}
  .modal__card{width:100%;max-width:100%;max-height:calc(100% - 24px);border-radius:28px 28px 0 0;padding:0 20px calc(24px + env(safe-area-inset-bottom));gap:24px;transform:translateY(100%)}
  .modal__head{padding:24px 0 12px;margin-bottom:-12px;touch-action:none}
  .modal.is-open .modal__card{transform:none}
  .modal__grab{display:block;position:absolute;top:8px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:2px;background:var(--light)}
  .modal__title{font-size:24px;line-height:32px}
  .modal__img{height:200px;border-radius:20px}
  .modal__text p{font-size:14px;line-height:20px}
  .modal__facts{grid-template-columns:1fr 1fr}
  .modal__req{padding:16px;font-size:12px;line-height:16px}
  .modal__actions{flex-direction:column}.modal__actions .btn{width:100%}
  .cookie{flex-direction:column;align-items:stretch;gap:16px;left:8px;right:8px;bottom:8px;padding:20px}
  .cookie b{font-size:16px;line-height:24px}.cookie p{font-size:12px;line-height:16px}
  .cookie__actions .btn{flex:1}
}
@media (max-width:479px){
  :root{--h1:22px;--h1-lh:28px;--h2:20px;--h2-lh:28px;--gap:96px;--r-xl:32px;--r-card:20px;--body:14px;--body-lh:20px;--led:28px}
  :root{--hh:56px}
  .header__in{height:56px;padding:0 12px;gap:8px}
  .logo svg{width:156px;height:29px}
  .burger{width:40px;height:40px}
  .header .btn--primary{height:40px;padding:0 16px;font-size:14px}
  .lbl-full{display:none}.lbl-short{display:inline}
  .intro{--mark-w:48px}
  .showcase__content{padding:24px}
  .showcase__content .btn{height:40px;padding:0 20px;font-size:14px}
  .showcase__logo{width:150px;height:27px}
  .stats{margin-top:40px}
  .stat{padding-top:16px;gap:8px}.stat p{font-size:12px;line-height:16px}
  .cards{grid-template-columns:1fr;gap:32px}
  .card__img,.card--big .card__img{height:200px}
  .card h3{font-size:14px;line-height:20px}
  .chip{height:40px;padding:0 16px;font-size:14px}
  .led--title{--led:36px}
  .slider{gap:28px;margin-top:40px}
  .slider__stage{transform:scale(.64);margin:-46px 0}
  .slider__desc{font-size:16px;line-height:24px}
  .dark{padding:20px;gap:56px}
  .lead__title{font-size:22px;line-height:28px}
  .toggle span{font-size:0;padding:0 12px;height:44px}
  .toggle span::after{content:attr(data-short);font-size:14px}
  .field input{height:52px}
  .footer__cols{grid-template-columns:1fr}
  .footer__cols div:last-child{grid-column:auto}
  .footer__logo{width:144px;height:26px}
  .modal__facts{--led:24px}
}
@media (max-width:959px) and (min-width:480px){.slider__stage{margin:-15px 0}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .js [data-reveal]{opacity:1;transform:none}
}

/* ---------- 404 ---------- */
.nf{display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px;padding-top:120px;padding-bottom:160px}
.nf p{max-width:560px;color:var(--slate)}
.nf .led--404{--led:180px;margin-bottom:16px}
.nf__actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.dark--foot{gap:0}
@media (max-width:639px){.nf{padding-top:72px;padding-bottom:96px}.nf .led--404{--led:96px}.nf__actions{flex-direction:column;align-self:stretch}.nf__actions .btn{width:100%}}
.modal__card>*{flex-shrink:0}

.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.form__error{font-size:14px;line-height:20px;color:var(--err)}.form__error a{color:#fff;text-decoration:underline}

/* ---------- Юридические страницы ---------- */
.legal{max-width:800px;padding-top:96px;padding-bottom:120px;display:flex;flex-direction:column;gap:16px}
.legal .h1{margin-top:24px}
.legal__meta{color:var(--grey);margin-bottom:16px}
.legal h2{font-size:20px;line-height:28px;font-weight:600;letter-spacing:-.01em;margin-top:24px}
.legal p{color:#2b3138}
.legal p a{color:var(--slate);text-decoration:underline;text-underline-offset:3px}
.legal p a:hover{color:var(--ink)}
.legal__back{align-self:flex-start}
@media (max-width:639px){.legal{padding-top:48px;padding-bottom:80px}.legal h2{font-size:18px;line-height:26px}}
