/* =========================================================
   HT SOUND — персональные кинотеатры
   Первый экран. Адаптив: 320px → 4K.
   Опорный макет: 1672 × 944
   ========================================================= */

/* ---------- Шрифты ---------- */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:300;font-display:swap;src:url('../assets/fonts/montserrat-cyrillic-300-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:300;font-display:swap;src:url('../assets/fonts/montserrat-latin-300-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/montserrat-cyrillic-400-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/montserrat-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/montserrat-cyrillic-500-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/montserrat-latin-500-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/montserrat-cyrillic-600-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/montserrat-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/montserrat-cyrillic-700-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/montserrat-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/playfair-display-cyrillic-400-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/playfair-display-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/playfair-display-cyrillic-500-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/playfair-display-latin-500-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/playfair-display-cyrillic-600-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/playfair-display-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/playfair-display-cyrillic-700-normal.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/playfair-display-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}


/* ---------- Токены ---------- */
:root{
  /* Палитра */
  --c-bg:            #0B0908;
  --c-bg-deep:       #070505;
  --c-white:         #FFFFFF;
  --c-text:          #C6BDB1;
  --c-muted:         #A2988B;
  --c-gold:          #C9A063;
  --c-gold-light:    #E8CE9C;
  --c-gold-dim:      rgba(201,160,99,.42);
  --c-line:          rgba(206,170,110,.20);
  --grad-gold-text:  linear-gradient(180deg,#F5E1B8 0%,#DDB77C 46%,#B98A47 100%);
  --grad-gold-btn:   linear-gradient(96deg,#BC8A44 0%,#D4A768 38%,#EFD9AE 100%);

  /* Типографика.
     Первый аргумент min() — плавный рост по ШИРИНЕ (360px → 1672px).
     Второй — потолок по ВЫСОТЕ экрана: на низких вьюпортах
     (ноутбуки 1366×768 и т.п.) первый экран сам себя ужимает
     и весь контент остаётся выше линии сгиба. */
  --fs-title-top:  min(clamp(19px, calc(19px + 21 * (100vw - 360px) / 1312), 40px), 4.3vh);
  --fs-title-main: min(clamp(33px, calc(33px + 40 * (100vw - 360px) / 1312), 73px), 7.8vh);
  --fs-title-sub:  min(clamp(14px, calc(14px + 17 * (100vw - 360px) / 1312), 31px), 3.3vh);
  --fs-lead:       min(clamp(15px, calc(15px +  4 * (100vw - 360px) / 1312), 19px), 2.05vh);
  --fs-btn:        clamp(12px, calc(12px +  2 * (100vw - 360px) / 1312), 14px);
  --fs-feature:    min(clamp(11px, calc(11px +  2 * (100vw - 360px) / 1312), 13px), 1.42vh);
  --fs-stat:       min(clamp(28px, calc(28px + 16 * (100vw - 360px) / 1312), 44px), 4.7vh);
  --fs-stat-label: min(clamp(11px, calc(11px +  2 * (100vw - 360px) / 1312), 13px), 1.42vh);
  --fs-nav:        clamp(15px, calc(15px +  1 * (100vw - 360px) / 1312), 16px);
  --fs-phone:      clamp(16px, calc(16px +  6 * (100vw - 360px) / 1312), 22px);

  /* Метрика */
  --pad-x:      clamp(16px, calc(16px + 40 * (100vw - 360px) / 1312), 56px);
  --hero-inset: clamp(0px,  calc(0px  + 56 * (100vw - 860px) /  812), 56px);
  --header-h:   min(clamp(62px, calc(62px + 42 * (100vw - 360px) / 1312), 104px), 11vh);
  --icon-size:  min(clamp(28px, calc(28px +  6 * (100vw - 360px) / 1312), 34px), 3.6vh);

  /* Вертикальные отступы — тоже с потолком по высоте */
  --gap-lead:     min(clamp(14px, 1.6vw, 26px), 2.8vh);
  --gap-actions:  min(clamp(20px, 2.1vw, 34px), 3.6vh);
  --gap-features: min(clamp(26px, 2.6vw, 42px), 4.5vh);
  --gap-bottom:   min(clamp(18px, 2.1vw, 32px), 3.4vh);
  --pad-top:      min(clamp(26px, calc(26px + 46 * (100vw - 360px) / 1312), 72px), 7.6vh);
  --pad-bottom:   min(clamp(22px, calc(22px +  8 * (100vw - 360px) / 1312), 30px), 3.2vh);

  --radius:     10px;
  --ease:       cubic-bezier(.22,.61,.36,1);
}

/* ---------- Сброс ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:var(--header-h)}
body{
  margin:0;
  background:var(--c-bg);
  color:var(--c-text);
  font-family:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:16px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
img,svg,video{display:block;max-width:100%}
h1,p,dl,dd,dt,ul,li{margin:0;padding:0}
ul{list-style:none}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}

:where(a,button,[tabindex]):focus-visible{
  outline:2px solid var(--c-gold-light);
  outline-offset:3px;
  border-radius:4px;
}

.skip-link{
  position:absolute;left:-9999px;top:0;z-index:200;
  padding:12px 20px;background:var(--c-gold);color:#160E04;font-weight:600;
}
.skip-link:focus{left:12px;top:12px}

body.is-locked{overflow:hidden}


/* =========================================================
   ШАПКА
   ========================================================= */
/* ВАЖНО: backdrop-filter вынесен в ::before.
   На самой .header он делал бы её containing block
   для position:fixed потомков — и выезжающее меню
   обрезалось бы по высоте шапки. */
.header{
  position:fixed;
  inset:0 0 auto 0;
  z-index:60;
  height:var(--header-h);
}
.header::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:0;
  background:rgba(11,9,8,.86);
  border-bottom:1px solid rgba(206,170,110,.10);
  border-radius:0 0 18px 18px;
  -webkit-backdrop-filter:blur(14px) saturate(120%);
  backdrop-filter:blur(14px) saturate(120%);
  transition:background .3s var(--ease),box-shadow .3s var(--ease);
}
.header.is-scrolled::before{
  background:rgba(8,6,5,.95);
  box-shadow:0 10px 34px rgba(0,0,0,.5);
}
.header__inner{
  position:relative;
  z-index:1;
  height:100%;
  display:flex;
  align-items:center;
  gap:clamp(12px,2vw,28px);
  padding:0 var(--pad-x);
  padding-left:max(var(--pad-x),env(safe-area-inset-left));
  padding-right:max(var(--pad-x),env(safe-area-inset-right));
}

/* Логотип */
.logo{
  display:flex;
  flex-direction:column;
  justify-content:center;
  flex:0 0 auto;
  transition:opacity .25s var(--ease);
}
.logo:hover{opacity:.85}
.logo__row{
  display:flex;
  align-items:center;
  gap:clamp(6px,.6vw,10px);
}
.logo__mark{
  width:auto;
  height:clamp(21px,calc(21px + 13 * (100vw - 360px) / 1312),34px);
  filter:drop-shadow(0 2px 10px rgba(201,160,99,.28));
}
.logo__word{
  font-weight:700;
  font-size:clamp(19px,calc(19px + 13 * (100vw - 360px) / 1312),32px);
  line-height:1;
  letter-spacing:.002em;
  color:var(--c-white);
}
.logo__tagline{
  margin-top:clamp(4px,.45vw,7px);
  font-size:clamp(6.5px,calc(6.5px + 3 * (100vw - 360px) / 1312),9.5px);
  font-weight:500;
  line-height:1;
  letter-spacing:.185em;
  text-transform:uppercase;
  color:var(--c-muted);
  white-space:nowrap;
}

/* Навигация */
.nav{
  flex:1 1 auto;
  display:flex;
  justify-content:center;
}
.nav__list{
  display:flex;
  align-items:center;
  gap:clamp(14px,2.4vw,42px);
}
.nav__link{
  position:relative;
  display:inline-block;
  padding:6px 0;
  font-size:var(--fs-nav);
  font-weight:500;
  color:#E6E0D6;
  white-space:nowrap;
  transition:color .25s var(--ease);
}
.nav__link::after{
  content:'';
  position:absolute;
  left:0;right:0;bottom:0;
  height:1.5px;
  background:var(--c-gold);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .3s var(--ease);
}
.nav__link:hover{color:var(--c-gold-light)}
.nav__link.is-active{color:var(--c-gold)}
.nav__link.is-active::after,
.nav__link:hover::after{transform:scaleX(1)}
.nav__phone{display:none}

/* Контакт справа */
.contact{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:clamp(8px,.8vw,13px);
  transition:opacity .25s var(--ease);
}
.contact:hover{opacity:.85}
.contact__icon{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:clamp(28px,calc(28px + 8 * (100vw - 360px) / 1312),36px);
  height:clamp(28px,calc(28px + 8 * (100vw - 360px) / 1312),36px);
  border:1px solid var(--c-gold-dim);
  border-radius:50%;
  color:var(--c-gold);
}
.contact__icon svg{width:52%;height:52%}
.contact__body{display:flex;flex-direction:column;align-items:flex-end}
.contact__phone{
  font-size:var(--fs-phone);
  font-weight:600;
  line-height:1.15;
  letter-spacing:.01em;
  color:var(--c-white);
  white-space:nowrap;
}
.contact__hours{
  margin-top:.2em;
  font-size:clamp(9px,calc(9px + 3.5 * (100vw - 360px) / 1312),12.5px);
  font-weight:400;
  line-height:1.2;
  color:var(--c-muted);
  white-space:nowrap;
}

/* Бургер */
.burger{
  display:none;
  position:relative;
  z-index:2;
  width:44px;height:44px;
  flex:0 0 auto;
  padding:11px 9px;
}
.burger span{
  display:block;
  height:1.8px;
  border-radius:2px;
  background:var(--c-gold-light);
  transition:transform .3s var(--ease),opacity .2s var(--ease);
}
.burger span+span{margin-top:6px}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7.8px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7.8px) rotate(-45deg)}

.nav-backdrop{
  position:fixed;
  inset:0;
  z-index:55;
  background:rgba(4,3,2,.62);
  -webkit-backdrop-filter:blur(3px);
  backdrop-filter:blur(3px);
  opacity:0;
  transition:opacity .3s var(--ease);
}
.nav-backdrop.is-visible{opacity:1}


/* =========================================================
   ПЕРВЫЙ ЭКРАН
   ========================================================= */
.hero{
  position:relative;
  isolation:isolate;
  display:flex;
  min-height:100vh;
  min-height:100svh;
  padding-top:var(--header-h);
  background:var(--c-bg-deep);
  overflow:hidden;
}

/* ----- Видео-фон ----- */
.hero__media{
  position:absolute;
  inset:0;
  z-index:-1;
  background:#070505 url('../assets/hero-poster.jpg') center/cover no-repeat;
}
.hero__video{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:0;
  transition:opacity .9s var(--ease);
}
.hero__video.is-ready{opacity:1}

/* Затемнение слева — чтобы текст всегда читался */
.hero__overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,
      rgba(6,4,3,.95)  0%,
      rgba(6,4,3,.90) 24%,
      rgba(6,4,3,.72) 40%,
      rgba(6,4,3,.34) 60%,
      rgba(6,4,3,.10) 78%,
      rgba(6,4,3,.30) 100%),
    linear-gradient(180deg,
      rgba(6,4,3,.72) 0%,
      rgba(6,4,3,.10) 26%,
      rgba(6,4,3,.10) 58%,
      rgba(6,4,3,.80) 100%);
}
/* Виньетка по краям */
.hero__vignette{
  position:absolute;
  inset:0;
  background:radial-gradient(120% 100% at 50% 45%,transparent 40%,rgba(4,3,2,.55) 100%);
}

/* ----- Раскладка контента ----- */
.hero__inner{
  position:relative;
  z-index:1;
  width:100%;
  display:flex;
  flex-direction:column;
  padding:var(--pad-top) var(--pad-x) var(--pad-bottom);
  padding-left:max(var(--pad-x),env(safe-area-inset-left));
  padding-right:max(var(--pad-x),env(safe-area-inset-right));
  padding-bottom:max(var(--pad-bottom),env(safe-area-inset-bottom));
}
/* flex:1 0 auto + flex-end: свободная высота уходит НАД контентом,
   а расстояние до блока статистики остаётся стабильным
   на любых пропорциях экрана. */
.hero__content{
  flex:1 0 auto;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding-left:var(--hero-inset);
  padding-bottom:var(--gap-bottom);
  max-width:min(760px,62%);
}

/* ----- Заголовок ----- */
.hero__title{
  display:flex;
  flex-direction:column;
  font-family:'Playfair Display',Georgia,'Times New Roman',serif;
  font-weight:500;
  text-transform:uppercase;
}
.hero__title-top{
  font-size:var(--fs-title-top);
  line-height:1.12;
  letter-spacing:.13em;
  color:var(--c-white);
  text-shadow:0 2px 26px rgba(0,0,0,.65);
}
.hero__title-main{
  margin-top:.06em;
  font-size:var(--fs-title-main);
  font-weight:600;
  line-height:1.04;
  letter-spacing:.018em;
  background:var(--grad-gold-text);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 3px 26px rgba(0,0,0,.55));
}
.hero__title-sub{
  display:flex;
  align-items:center;
  gap:clamp(12px,1.5vw,24px);
  width:min(100%,clamp(260px,calc(260px + 190 * (100vw - 360px) / 1312),450px));
  margin-top:clamp(10px,1.1vw,18px);
  font-size:var(--fs-title-sub);
  font-weight:500;
  line-height:1.2;
  letter-spacing:.22em;
  color:var(--c-white);
  white-space:nowrap;
}
.hero__title-sub::before,
.hero__title-sub::after{
  content:'';
  flex:1 1 auto;
  height:1px;
  min-width:24px;
  background:linear-gradient(90deg,transparent,var(--c-gold-dim),transparent);
}
.hero__title-sub>span{padding-left:.22em}

/* ----- Описание ----- */
.hero__lead{
  margin-top:var(--gap-lead);
  max-width:34em;
  font-size:var(--fs-lead);
  font-weight:400;
  line-height:1.72;
  color:var(--c-text);
  text-shadow:0 1px 16px rgba(0,0,0,.6);
}

/* ----- Кнопки ----- */
.hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:clamp(10px,.9vw,15px);
  margin-top:var(--gap-actions);
}
.btn{
  --btn-h:min(clamp(48px,calc(48px + 15 * (100vw - 360px) / 1312),63px), 6.7vh);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:clamp(9px,.75vw,13px);
  height:var(--btn-h);
  padding:0 clamp(20px,2vw,34px);
  border-radius:var(--radius);
  font-size:var(--fs-btn);
  font-weight:700;
  letter-spacing:.10em;
  text-transform:uppercase;
  white-space:nowrap;
  transition:transform .25s var(--ease),box-shadow .3s var(--ease),
             background-color .3s var(--ease),border-color .3s var(--ease),color .3s var(--ease);
}
.btn__icon{
  flex:0 0 auto;
  width:clamp(17px,1.15vw,20px);
  height:clamp(17px,1.15vw,20px);
}
.btn--primary{
  background:var(--grad-gold-btn);
  color:#221604;
  box-shadow:0 6px 30px rgba(214,168,96,.30),
             0 0 0 1px rgba(247,226,186,.28) inset;
}
.btn--primary:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 40px rgba(224,182,112,.45),
             0 0 0 1px rgba(255,240,210,.42) inset;
}
.btn--ghost{
  border:1px solid var(--c-gold-dim);
  background:rgba(16,11,7,.30);
  color:var(--c-gold-light);
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
}
.btn--ghost:hover{
  transform:translateY(-2px);
  border-color:var(--c-gold);
  background:rgba(201,160,99,.14);
  color:#F5E4C2;
}
.btn:active{transform:translateY(0)}

/* ----- Преимущества ----- */
.features{
  display:flex;
  flex-wrap:wrap;
  margin-top:var(--gap-features);
}
.features__item{
  position:relative;
  flex:0 1 auto;
  min-width:0;
  padding:0 clamp(16px,1.9vw,32px);
}
.features__item:first-child{padding-left:0}
.features__item:not(:first-child)::before{
  content:'';
  position:absolute;
  left:0;top:8%;bottom:8%;
  width:1px;
  background:linear-gradient(180deg,transparent,rgba(201,160,99,.34),transparent);
}
.features__icon{
  display:block;
  width:var(--icon-size);
  height:var(--icon-size);
  color:var(--c-gold);
}
.features__icon svg{width:100%;height:100%}
.features__label{
  display:block;
  margin-top:min(clamp(12px,1.15vw,19px), 2vh);
  font-size:var(--fs-feature);
  font-weight:600;
  line-height:1.55;
  letter-spacing:.075em;
  text-transform:uppercase;
  color:#E9E3D8;
  text-shadow:0 1px 12px rgba(0,0,0,.55);
}

/* ----- Статистика ----- */
.stats{
  flex:0 0 auto;
  display:grid;
  /* пропорции колонок повторяют макет: последняя шире — там длинная подпись */
  grid-template-columns:1.18fr 1fr 1.06fr 1.46fr;
  width:min(100%,clamp(320px,calc(320px + 634 * (100vw - 360px) / 1312),954px));
  margin-left:0;
  padding:min(clamp(17px,1.4vw,23px), 2.45vh) clamp(16px,1.9vw,32px);
  border:1px solid var(--c-line);
  border-radius:14px;
  background:rgba(18,14,10,.52);
  -webkit-backdrop-filter:blur(16px) saturate(120%);
  backdrop-filter:blur(16px) saturate(120%);
  box-shadow:0 18px 50px rgba(0,0,0,.34),
             0 1px 0 rgba(255,235,200,.05) inset;
}
.stats__item{
  position:relative;
  min-width:0;
  padding:0 clamp(11px,1.35vw,24px);
}
.stats__item:first-child{padding-left:clamp(6px,1vw,18px)}
.stats__item:not(:first-child)::before{
  content:'';
  position:absolute;
  left:0;top:2%;bottom:2%;
  width:1px;
  background:linear-gradient(180deg,transparent,rgba(201,160,99,.28),transparent);
}
.stats__value{
  font-family:'Playfair Display',Georgia,serif;
  font-size:var(--fs-stat);
  font-weight:500;
  line-height:1.1;
  letter-spacing:.01em;
  background:var(--grad-gold-text);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
}
.stats__unit{
  font-size:.55em;
  font-weight:400;
  letter-spacing:.02em;
}
.stats__label{
  margin-top:min(clamp(6px,.6vw,10px), 1.1vh);
  font-size:var(--fs-stat-label);
  font-weight:400;
  line-height:1.5;
  color:var(--c-muted);
}


/* =========================================================
   АДАПТИВ
   ========================================================= */

/* Большие экраны (1673px → 2560px): вторая ступень масштаба.
   Пропорции макета 1672×944 совпадают с 16:9, поэтому композицию
   просто увеличиваем, а не растягиваем пустотами. */
@media (min-width:1673px){
  :root{
    --fs-title-top:  min(52px,  calc(40px + 12 * (100vw - 1672px) / 888), 4.3vh);
    --fs-title-main: min(96px,  calc(73px + 23 * (100vw - 1672px) / 888), 7.8vh);
    --fs-title-sub:  min(40px,  calc(31px +  9 * (100vw - 1672px) / 888), 3.3vh);
    --fs-lead:       min(24px,  calc(19px +  5 * (100vw - 1672px) / 888), 2.05vh);
    --fs-btn:        min(17px,  calc(14px +  3 * (100vw - 1672px) / 888));
    --fs-feature:    min(16px,  calc(13px +  3 * (100vw - 1672px) / 888), 1.42vh);
    --fs-stat:       min(57px,  calc(44px + 13 * (100vw - 1672px) / 888), 4.7vh);
    --fs-stat-label: min(16px,  calc(13px +  3 * (100vw - 1672px) / 888), 1.42vh);
    --fs-nav:        min(19px,  calc(16px +  3 * (100vw - 1672px) / 888));
    --fs-phone:      min(27px,  calc(22px +  5 * (100vw - 1672px) / 888));
    --pad-x:         min(86px,  calc(56px + 30 * (100vw - 1672px) / 888));
    --gap-lead:      min(34px, 2.8vh);
    --gap-actions:   min(44px, 3.6vh);
    --gap-features:  min(56px, 4.5vh);
    --gap-bottom:    min(72px, 3.4vh);
    --pad-bottom:    min(40px, 3.2vh);
    --hero-inset:    min(86px,  calc(56px + 30 * (100vw - 1672px) / 888));
    --header-h:      min(132px, calc(104px + 28 * (100vw - 1672px) / 888), 11vh);
    --icon-size:     min(44px,  calc(34px + 10 * (100vw - 1672px) / 888), 3.6vh);
    --radius:12px;
  }
  .logo__mark{height:min(44px,calc(34px + 10 * (100vw - 1672px) / 888))}
  .logo__word{font-size:min(41px,calc(32px + 9 * (100vw - 1672px) / 888))}
  .logo__tagline{font-size:min(12px,calc(9.5px + 2.5 * (100vw - 1672px) / 888))}
  .contact__icon{
    width:min(46px,calc(36px + 10 * (100vw - 1672px) / 888));
    height:min(46px,calc(36px + 10 * (100vw - 1672px) / 888));
  }
  .contact__hours{font-size:min(16px,calc(12.5px + 3.5 * (100vw - 1672px) / 888))}
  .btn{--btn-h:min(80px,calc(63px + 17 * (100vw - 1672px) / 888),6.7vh)}
  .btn__icon{width:min(25px,calc(20px + 5 * (100vw - 1672px) / 888));height:auto;aspect-ratio:1}
  .hero__content{max-width:min(980px,62%)}
  .stats{width:min(100%,min(1220px,calc(954px + 266 * (100vw - 1672px) / 888)))}
  .hero__inner{padding-top:min(92px,calc(72px + 20 * (100vw - 1672px) / 888),7.6vh)}
}

/* Ультраширокие мониторы — держим композицию по центру */
@media (min-width:2561px){
  .hero__inner,
  .header__inner{
    max-width:2560px;
    margin-inline:auto;
  }
}

/* Ноутбуки 1280–1439 */
@media (max-width:1439px){
  .nav__list{gap:clamp(12px,1.9vw,28px)}
  .hero__content{max-width:min(700px,66%)}
}

/* Малые ноутбуки / крупные планшеты 1024–1279 */
@media (max-width:1279px){
  .contact__hours{display:none}
  .hero__content{max-width:min(660px,72%)}
  .features__item{padding:0 clamp(12px,1.6vw,22px)}
}

/* Планшеты: прячем горизонтальное меню, включаем бургер */
@media (max-width:1120px){
  .burger{display:block}
  .contact__body{display:none}

  /* Тач-зоны не меньше 44px */
  .logo{padding-block:7px}
  .contact{
    margin-left:auto;
    justify-content:center;
    min-width:44px;
    min-height:44px;
  }
  .contact__icon{width:38px;height:38px}

  .nav{
    position:fixed;
    top:0;right:0;bottom:0;
    z-index:58;
    width:min(360px,84vw);
    display:block;
    padding:calc(var(--header-h) + 26px) 30px 40px;
    padding-right:max(30px,env(safe-area-inset-right));
    background:rgba(10,8,6,.97);
    border-left:1px solid rgba(206,170,110,.14);
    -webkit-backdrop-filter:blur(18px);
    backdrop-filter:blur(18px);
    box-shadow:-20px 0 60px rgba(0,0,0,.55);
    transform:translateX(100%);
    /* visibility убирает ссылки закрытого меню из tab-порядка */
    visibility:hidden;
    transition:transform .38s var(--ease),visibility 0s linear .38s;
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  .nav.is-open{
    transform:translateX(0);
    visibility:visible;
    transition:transform .38s var(--ease),visibility 0s;
  }

  .nav__list{
    flex-direction:column;
    align-items:stretch;
    gap:0;
  }
  .nav__list li+li{border-top:1px solid rgba(206,170,110,.10)}
  .nav__link{
    display:block;
    padding:16px 2px;
    font-size:17px;
  }
  .nav__link::after{display:none}
  .nav__link.is-active{color:var(--c-gold)}

  .nav__phone{
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:28px;
    padding:15px 18px;
    border:1px solid var(--c-gold-dim);
    border-radius:var(--radius);
    font-size:17px;
    font-weight:600;
    color:var(--c-white);
  }
  .nav__phone .contact__icon{width:32px;height:32px}

  .hero__content{max-width:none;padding-bottom:clamp(24px,4vw,44px)}
  .hero__lead{max-width:30em}
  .stats{width:100%}
}

/* Планшеты вертикально / крупные телефоны */
@media (max-width:860px){
  .hero__overlay{
    background:
      linear-gradient(180deg,
        rgba(6,4,3,.92)  0%,
        rgba(6,4,3,.74) 24%,
        rgba(6,4,3,.66) 52%,
        rgba(6,4,3,.80) 78%,
        rgba(6,4,3,.94) 100%),
      linear-gradient(90deg,
        rgba(6,4,3,.68) 0%,
        rgba(6,4,3,.34) 60%,
        rgba(6,4,3,.48) 100%);
  }
  .hero__media{background-image:url('../assets/hero-poster-mobile.jpg')}

  .hero__title-sub{width:min(100%,340px)}

  .hero__lead{max-width:none}
  .hero__lead br{display:none}

  .features{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:clamp(18px,3.4vw,28px) 0;
  }
  .features__item{padding:0 18px}
  .features__item:nth-child(odd){padding-left:0}
  .features__item:nth-child(odd)::before{display:none}

  .stats{
    grid-template-columns:1fr 1fr;
    gap:clamp(16px,3vw,24px) 0;
    padding:clamp(18px,3.4vw,26px) clamp(14px,3vw,22px);
  }
  .stats__item{padding:0 14px}
  .stats__item:nth-child(odd){padding-left:clamp(4px,1.6vw,12px)}
  .stats__item:nth-child(odd)::before{display:none}
  .stats__item:nth-child(n+3)::after{
    content:'';
    position:absolute;
    top:calc(-1 * clamp(8px,1.5vw,12px));
    left:clamp(4px,1.6vw,12px);right:14px;
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(201,160,99,.22),transparent);
  }
}

/* Телефоны */
@media (max-width:599px){
  .hero{padding-bottom:8px}
  .hero__inner{padding-top:clamp(24px,7vw,40px)}
  .hero__content{padding-bottom:26px}

  .hero__title-top{letter-spacing:.11em}
  .hero__title-sub{
    width:100%;
    max-width:300px;
    letter-spacing:.18em;
  }

  .hero__actions{
    flex-direction:column;
    align-items:stretch;
    gap:11px;
    margin-top:26px;
  }
  .btn{width:100%;padding:0 18px}

  .features{gap:22px 0;margin-top:32px}
  .features__item{padding:0 12px}
  .features__label{letter-spacing:.06em}

  .stats{border-radius:12px}
  .stats__label{line-height:1.45}
  .stats__label br{display:none}

  .logo__tagline{letter-spacing:.15em}
}

/* Узкие телефоны 320–380 */
@media (max-width:379px){
  .logo__tagline{display:none}
  .features{grid-template-columns:1fr;gap:18px}
  .features__item{padding:0}
  .features__item::before{display:none}
  .features__label br{display:none}
  .stats__item:nth-child(n+3)::after{right:0}
}

/* Телефоны в альбомной ориентации — компактный режим */
@media (max-height:560px) and (orientation:landscape){
  .hero{min-height:auto}
  .hero__inner{padding-top:22px;padding-bottom:22px}
  .hero__content{padding-bottom:20px}
  .hero__title-top{font-size:18px}
  .hero__title-main{font-size:32px}
  .hero__title-sub{font-size:14px}
  .hero__lead{margin-top:12px;font-size:14px;line-height:1.6}
  .hero__actions{margin-top:18px}
  .features{margin-top:22px}
  .stats{margin-top:4px}
}

/* Экран короткий, но широкий (например 1280×600) */
@media (min-width:1121px) and (max-height:720px){
  .hero__content{padding-bottom:clamp(12px,2vw,24px)}
  .features{margin-top:clamp(20px,2.4vw,34px)}
  .hero__lead{line-height:1.62}
}


/* =========================================================
   ПРОЧЕЕ
   ========================================================= */

/* Экономия трафика / отключённая анимация — только постер */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.01ms !important;
    transition-duration:.01ms !important;
  }
  .hero__video{display:none}
}

/* Печать */
@media print{
  .header,.hero__media,.burger,.nav-backdrop{display:none !important}
  .hero{min-height:auto;padding-top:0}
  body{background:#fff;color:#000}
  .hero__title-main,.stats__value{-webkit-text-fill-color:#8a6a2f;color:#8a6a2f}
}
