/* F88.W1 — Лендинг Booking: база, навигация, hero, кнопки, footer.
 * F617 — premium-редизайн (продукт-грейд). Self-host Onest (НЕ Inter — impeccable
 * reflex-reject; Onest = сильная кириллица + продукт-грейд). Без CDN (B24-CSP). */

/* — Onest self-host (cyrillic + latin, 400/500/600/700/800) — */
@font-face{font-family:'Onest';font-style:normal;font-weight:400;font-display:swap;src:url('/landing/fonts/onest-cyrillic-400.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Onest';font-style:normal;font-weight:400;font-display:swap;src:url('/landing/fonts/onest-cyrillic-ext-400.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Onest';font-style:normal;font-weight:400;font-display:swap;src:url('/landing/fonts/onest-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:'Onest';font-style:normal;font-weight:400;font-display:swap;src:url('/landing/fonts/onest-latin-ext-400.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Onest';font-style:normal;font-weight:500;font-display:swap;src:url('/landing/fonts/onest-cyrillic-500.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Onest';font-style:normal;font-weight:500;font-display:swap;src:url('/landing/fonts/onest-cyrillic-ext-500.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Onest';font-style:normal;font-weight:500;font-display:swap;src:url('/landing/fonts/onest-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:'Onest';font-style:normal;font-weight:500;font-display:swap;src:url('/landing/fonts/onest-latin-ext-500.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Onest';font-style:normal;font-weight:600;font-display:swap;src:url('/landing/fonts/onest-cyrillic-600.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Onest';font-style:normal;font-weight:600;font-display:swap;src:url('/landing/fonts/onest-cyrillic-ext-600.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Onest';font-style:normal;font-weight:600;font-display:swap;src:url('/landing/fonts/onest-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}
@font-face{font-family:'Onest';font-style:normal;font-weight:600;font-display:swap;src:url('/landing/fonts/onest-latin-ext-600.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Onest';font-style:normal;font-weight:700;font-display:swap;src:url('/landing/fonts/onest-cyrillic-700.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Onest';font-style:normal;font-weight:700;font-display:swap;src:url('/landing/fonts/onest-cyrillic-ext-700.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Onest';font-style:normal;font-weight:700;font-display:swap;src:url('/landing/fonts/onest-latin-700.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:'Onest';font-style:normal;font-weight:700;font-display:swap;src:url('/landing/fonts/onest-latin-ext-700.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Onest';font-style:normal;font-weight:800;font-display:swap;src:url('/landing/fonts/onest-cyrillic-800.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Onest';font-style:normal;font-weight:800;font-display:swap;src:url('/landing/fonts/onest-cyrillic-ext-800.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
@font-face{font-family:'Onest';font-style:normal;font-weight:800;font-display:swap;src:url('/landing/fonts/onest-latin-800.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:'Onest';font-style:normal;font-weight:800;font-display:swap;src:url('/landing/fonts/onest-latin-ext-800.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}

:root{
  /* F617 продукт-грейд: тёплый near-black ink, off-white без крема (низкая chroma),
     ОДИН committed акцент indigo-700 (НЕ дефолтный bright-blue, НЕ AI-violet). */
  --lp-ink:#17161c; --lp-ink-soft:#3d3b47; --lp-ink-mute:#6a6776;
  --lp-line:#e8e6ee; --lp-bg:#ffffff; --lp-bg-muted:#f7f6fa;
  --lp-primary:#4338ca; --lp-primary-hover:#3730a3; --lp-primary-soft:#eef0fb;
  --lp-emerald:#0d9488; --lp-amber:#b45309; --lp-accent:#0f766e;
  --lp-radius:16px;
  --lp-shadow:0 1px 2px rgba(23,22,28,.05),0 12px 32px -16px rgba(23,22,28,.22);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:'Onest',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--lp-ink);background:var(--lp-bg);line-height:1.55;
  -webkit-font-smoothing:antialiased;letter-spacing:-0.011em;
}
a{color:inherit;text-decoration:none}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.wrap--narrow{max-width:760px}

/* — A11y (W6): screen-reader-only метки (для label формы без визуального изменения) — */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* — A11y (W4): видимый фокус для клавиатуры, без колец на клике — */
a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible{
  outline:2px solid var(--lp-primary);outline-offset:2px;border-radius:8px}
.ctafinal a:focus-visible{outline-color:#fff}

/* F636.W4 — деликатное появление при скролле (только transform/opacity) */
.reveal{opacity:0;transform:translateY(16px);
  transition:opacity .55s var(--ease-decelerate,ease-out),transform .55s var(--ease-decelerate,ease-out)}
.reveal-in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;
    transition-duration:.01ms !important}
  .reveal{opacity:1 !important;transform:none !important}
}

/* — Buttons — */
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;
  border-radius:10px;padding:10px 18px;border:1px solid transparent;cursor:pointer;
  transition:transform .15s var(--ease-decelerate),background .15s,box-shadow .15s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn--primary{background:var(--lp-primary);color:#fff;box-shadow:0 6px 16px -6px rgba(67,56,202,.42)}
.btn--primary:hover{background:var(--lp-primary-hover)}
.btn--soft{background:var(--lp-primary-soft);color:var(--lp-primary)}
.btn--soft:hover{background:#e3e6f7}
.btn--ghost{background:transparent;color:var(--lp-ink-soft);border-color:transparent}
.btn--ghost:hover{color:var(--lp-ink);transform:none}
.btn--lg{padding:13px 24px;font-size:16px}
.btn__icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.badge{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;
  color:var(--lp-primary);background:var(--lp-primary-soft);border:1px solid #dbe5ff;
  padding:6px 14px;border-radius:999px}
.badge--accent{color:var(--lp-accent);background:#f3eeff;border-color:#e6dbff}

/* — Nav — */
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.86);
  backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--lp-line)}
.nav__inner{display:flex;align-items:center;gap:24px;height:64px}
.nav__brand{display:flex;align-items:center;gap:9px;font-weight:600;font-size:18px}
.nav__logo{width:24px;height:24px;fill:none;stroke:var(--lp-primary);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.nav__links{display:flex;gap:26px;margin-left:8px}
.nav__links a{color:var(--lp-ink-soft);font-size:15px;font-weight:500}
.nav__links a:hover{color:var(--lp-ink)}
.nav__actions{display:flex;align-items:center;gap:12px;margin-left:auto}
.lang{display:inline-flex;background:var(--lp-bg-muted);border:1px solid var(--lp-line);border-radius:9px;padding:2px}
.lang__btn{border:0;background:transparent;font:inherit;font-size:13px;font-weight:600;
  color:var(--lp-ink-mute);padding:5px 9px;border-radius:7px;cursor:pointer}
.lang__btn.is-active{background:#fff;color:var(--lp-ink);box-shadow:var(--shadow-sm)}
.nav__cta-short{display:none}

/* — Hero (F617 W2: асимметричная сетка, честная agenda-композиция, без браузер-хрома) — */
.hero{position:relative;isolation:isolate;overflow:hidden;padding:84px 0 64px;background:
  radial-gradient(760px 420px at 82% -12%,#eef0fb 0%,transparent 60%),var(--lp-bg)}
/* F636.W6 — анимированный mesh-gradient слой (заполняется WebGL; деградирует на CSS-фон .hero выше) */
.hero__canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;display:block;border:0}
.hero__inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(32px,5vw,64px);align-items:center}
.hero__content{display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.hero__title{font-size:clamp(34px,4.6vw,56px);line-height:1.04;font-weight:700;
  letter-spacing:-0.035em;margin:22px 0 0;max-width:15ch}
.hero__subtitle{font-size:clamp(16px,1.5vw,19px);color:var(--lp-ink-soft);max-width:46ch;margin:20px 0 0}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap;margin:32px 0 0}
.hero__trust{font-size:13.5px;color:var(--lp-ink-mute);margin:18px 0 0}

/* реальный экран продукта — кадр живого интерфейса (НЕ синтетика, НЕ фейк-браузер) */
.hero__visual{position:relative;width:100%}
.hero__shot{margin:0;border-radius:16px;overflow:hidden;background:#fff;
  border:1px solid var(--lp-line);line-height:0;
  box-shadow:0 1px 2px rgba(23,22,28,.05),0 44px 84px -42px rgba(23,22,28,.36)}
.hero__shot img{display:block;width:100%;height:auto}
.hero__shot-cap{display:block;margin:12px 2px 0;font-size:12.5px;color:var(--lp-ink-mute)}

/* — Footer — */
.footer{border-top:1px solid var(--lp-line);background:var(--lp-bg-muted);padding:40px 0}
.footer__inner{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.footer__brand{display:flex;align-items:center;gap:9px;font-weight:600;font-size:17px}
.footer__tagline{color:var(--lp-ink-soft);margin:0;max-width:48ch}
.footer__meta{display:flex;gap:18px;flex-wrap:wrap;color:var(--lp-ink-mute);font-size:14px;margin-top:6px}
.footer__link{color:var(--lp-ink-soft);text-decoration:underline;text-underline-offset:3px}
.footer__link:hover{color:var(--lp-ink)}

@media (max-width:880px){
  /* W4: nav-ссылки прячутся вместе со стаком hero (721–768 раньше переполняли страницу) */
  .nav__links{display:none}
  .hero__inner{grid-template-columns:1fr;gap:40px}
  .hero__content{align-items:center;text-align:center}
  .hero__title{max-width:18ch}
  .hero__subtitle{max-width:54ch}
  .hero__cta{justify-content:center}
  .hero__visual{max-width:560px;margin:0 auto}
  .hero__shot-cap{text-align:center}
}
@media (max-width:720px){
  .hero{padding:52px 0 36px}
  /* W4 mobile nav: компактный CTA с коротким лейблом, «Войти» уходит в футер */
  .nav__inner{gap:12px}
  .nav__actions{gap:8px}
  .nav__login{display:none}
  .nav__cta{padding:8px 14px;font-size:14px}
  .nav__cta-full{display:none}
  .nav__cta-short{display:inline}
  .lang__btn{padding:4px 7px;font-size:12px}
}
@media (max-width:480px){
  .nav__brand-name{display:none} /* aria-label="Booking" на ссылке сохраняет имя */
}
@media (max-width:400px){
  .nav .wrap{padding:0 16px}
}
