/* =========================================================================
   Гостиница «Ирбис» — демонстрационный проект NARTOS
   Мир: снаружи ночь и фасад в огнях, внутри включён свет.
   ========================================================================= */

/* ---------- Шрифты (self-host, без Google Fonts) ---------- */
@font-face{font-family:'Unbounded';src:url('../fonts/unbounded-700.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'Unbounded';src:url('../fonts/unbounded-600.woff2') format('woff2');font-weight:600;font-display:swap}

@font-face{font-family:'Golos Text';src:url('../fonts/golos-400-cyrillic.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+0400-04FF,U+0500-052F}
@font-face{font-family:'Golos Text';src:url('../fonts/golos-400-latin.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20B0-20BF}
@font-face{font-family:'Golos Text';src:url('../fonts/golos-500-cyrillic.woff2') format('woff2');font-weight:500;font-display:swap;unicode-range:U+0400-04FF,U+0500-052F}
@font-face{font-family:'Golos Text';src:url('../fonts/golos-500-latin.woff2') format('woff2');font-weight:500;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20B0-20BF}
@font-face{font-family:'Golos Text';src:url('../fonts/golos-600-cyrillic.woff2') format('woff2');font-weight:600;font-display:swap;unicode-range:U+0400-04FF,U+0500-052F}
@font-face{font-family:'Golos Text';src:url('../fonts/golos-600-latin.woff2') format('woff2');font-weight:600;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20B0-20BF}

@font-face{font-family:'Geologica';src:url('../fonts/geologica-500-cyrillic.woff2') format('woff2');font-weight:500;font-display:swap;unicode-range:U+0400-04FF,U+0500-052F}
@font-face{font-family:'Geologica';src:url('../fonts/geologica-500-latin.woff2') format('woff2');font-weight:500;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F}

/* ---------- Токены ---------- */
:root{
  /* Ночь снаружи — владеет поверхностью */
  --night:      #0B1626;
  --night-2:    #101F35;
  --night-3:    #172B47;
  --night-4:    #23405F;
  --pane-off:   #091120;

  /* Оконный свет — единственный акцент, не более 10% экрана */
  --lamp:       #FFC46B;
  --lamp-hi:    #FFE0B0;
  --lamp-dim:   #A9762F;

  /* Свет включён — светлые страницы */
  --day:        #E9EDF2;
  --day-2:      #DEE4EC;
  --day-3:      #CBD4E0;

  --snow:       #E7ECF2;
  --snow-2:     #A9B8CB;
  --snow-3:     #7C8EA6;
  --ink:        #0B1626;
  --ink-2:      #38506D;

  --font-display: 'Unbounded', system-ui, sans-serif;
  --font-text:    'Golos Text', system-ui, sans-serif;
  --font-tech:    'Geologica', system-ui, sans-serif;

  --step:  clamp(4.5rem, 3rem + 6vw, 8rem);   /* вертикальный ритм секций */
  --gutter: clamp(1.25rem, 0.6rem + 2.6vw, 3rem);
  --wide:  1180px;
  --read:  68ch;

  --ease: cubic-bezier(.16,1,.3,1);
  --t-fast: .18s;
  --t: .34s;
}

/* ---------- База ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--night);
  color:var(--snow);
  font-family:var(--font-text);
  font-size:17px;
  line-height:1.62;
  font-weight:400;
  overflow-x:hidden;
}
img,svg{max-width:100%;height:auto;display:block}

h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.018em;margin:0;text-wrap:balance}
h1{font-size:clamp(2rem,1.15rem + 3.4vw,3.7rem);line-height:1.06}
h2{font-size:clamp(1.55rem,1rem + 2.1vw,2.7rem);line-height:1.1}
h3{font-size:clamp(1.15rem,.95rem + .8vw,1.5rem);line-height:1.22;letter-spacing:-.01em}
p{margin:0 0 1.1em}
p:last-child{margin-bottom:0}

a{color:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,summary:focus-visible{
  outline:2px solid var(--lamp);
  outline-offset:3px;
  border-radius:2px;
}

.skip{position:absolute;left:-9999px;top:0;z-index:200}
.skip:focus{left:1rem;top:1rem;background:var(--lamp);color:#2A1B06;padding:.7em 1.1em;
            border-radius:3px;font-weight:600;text-decoration:none}

.wrap{max-width:var(--wide);margin:0 auto;padding-inline:var(--gutter)}
.narrow{max-width:var(--read)}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Технический лейбл — «подпись на чертеже». Один именованный кикер, не eyebrow над каждой секцией. */
.tech{font-family:var(--font-tech);font-weight:500;font-size:12.5px;letter-spacing:.06em;
      text-transform:uppercase;color:var(--snow-3)}

.lead{font-size:clamp(1.02rem,.97rem + .3vw,1.2rem);color:var(--snow-2);max-width:var(--read)}

/* ---------- Кнопки ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55em;
  min-height:48px;padding:.72em 1.5em;
  font-family:var(--font-text);font-weight:600;font-size:16px;line-height:1.2;
  border-radius:3px;border:1px solid transparent;
  text-decoration:none;cursor:pointer;
  transition:background var(--t-fast) ease,color var(--t-fast) ease,
             border-color var(--t-fast) ease,transform var(--t-fast) var(--ease);
}
.btn--lamp{background:var(--lamp);color:#2A1B06;border-color:var(--lamp)}
.btn--lamp:hover{background:var(--lamp-hi);border-color:var(--lamp-hi)}
.btn--lamp:active{transform:translateY(1px)}
.btn--ghost{background:transparent;color:var(--snow);border-color:var(--night-4)}
.btn--ghost:hover{border-color:var(--lamp);color:var(--lamp)}
.btn[disabled]{opacity:.4;cursor:not-allowed;pointer-events:none}

.link{color:var(--lamp);text-decoration:none;border-bottom:1px solid rgba(255,196,107,.35);
      transition:border-color var(--t-fast) ease}
.link:hover{border-bottom-color:var(--lamp)}

/* ---------- Шапка ---------- */
.head{position:sticky;top:0;z-index:60;background:rgba(11,22,38,.9);
      border-bottom:1px solid var(--night-3)}
@supports (backdrop-filter:blur(8px)){
  .head{backdrop-filter:blur(10px)}
}
.head__in{display:flex;align-items:center;gap:1.5rem;min-height:64px}
.head__logo{display:flex;align-items:baseline;gap:.6rem;text-decoration:none;flex:0 0 auto}
.head__mark{font-family:var(--font-display);font-weight:700;font-size:19px;letter-spacing:.04em;
            color:var(--snow)}
.head__kind{font-family:var(--font-tech);font-weight:500;font-size:11px;letter-spacing:.12em;
            text-transform:uppercase;color:var(--snow-3)}
.head__nav{display:flex;gap:1.35rem;margin-left:auto;flex-wrap:wrap}
.head__nav a{font-size:15px;text-decoration:none;color:var(--snow-2);padding:.35em 0;
             border-bottom:1px solid transparent;transition:color var(--t-fast) ease}
.head__nav a:hover{color:var(--snow)}
.head__nav a[aria-current="page"]{color:var(--lamp);border-bottom-color:var(--lamp)}
.head__tel{font-weight:600;text-decoration:none;color:var(--snow);white-space:nowrap}
.head__tel:hover{color:var(--lamp)}
.burger{display:none;margin-left:auto;width:48px;height:48px;background:none;border:1px solid var(--night-3);
        border-radius:3px;color:var(--snow);cursor:pointer;align-items:center;justify-content:center}
.burger span{display:block;width:20px;height:1.5px;background:currentColor;position:relative}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:20px;height:1.5px;
        background:currentColor}
.burger span::before{top:-6px}.burger span::after{top:6px}

@media (max-width:1060px){
  .burger{display:flex}
  .head__tel{display:none}
  /* backdrop-filter у предка ломает position:fixed у выдвижного меню — на мобильном отключаем */
  .head{backdrop-filter:none;background:var(--night)}
  .head__nav{
    position:fixed;inset:64px 0 0;margin:0;flex-direction:column;gap:0;
    background:var(--night);padding:1rem var(--gutter) 3rem;overflow-y:auto;
    transform:translateY(-8px);opacity:0;visibility:hidden;
    transition:opacity var(--t) ease,transform var(--t) var(--ease),visibility var(--t);
  }
  .head__nav[data-open="true"]{opacity:1;visibility:visible;transform:none}
  .head__nav a{font-size:19px;padding:.85em 0;border-bottom:1px solid var(--night-3)}
}

/* ---------- Подвал ---------- */
.foot{background:var(--night-2);border-top:1px solid var(--night-3);
      padding-block:clamp(2.5rem,2rem + 3vw,4rem);margin-top:var(--step);font-size:15px}
.foot__grid{display:grid;gap:2.2rem;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.foot h4{font-family:var(--font-tech);font-weight:500;font-size:12px;letter-spacing:.08em;
         text-transform:uppercase;color:var(--snow-3);margin:0 0 .9rem}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.foot a{color:var(--snow-2);text-decoration:none}
.foot a:hover{color:var(--lamp)}
.foot__req{color:var(--snow-2);line-height:1.65}
.foot__req b{color:var(--snow);font-weight:600}
.foot__bottom{margin-top:2.4rem;padding-top:1.6rem;border-top:1px solid var(--night-3);
              color:var(--snow-3);font-size:13.5px;display:grid;gap:.7rem}

/* Плейсхолдер — то, что заполняет гостиница */
.tbd{display:inline;color:var(--lamp);border-bottom:1px dashed var(--lamp-dim);font-style:normal}

/* Маркер демонстрационных данных */
.demo-note{background:var(--night-3);border-left:2px solid var(--lamp);
           padding:1rem 1.15rem;border-radius:0 3px 3px 0;color:var(--snow-2);font-size:14.5px}
.demo-note b{color:var(--snow);font-weight:600}

/* ---------- Правки после прогона check_mobile ---------- */
.head__logo{padding-block:7px}
