.vlk-hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:100px 5vw 70px;overflow:hidden}
.vlk-hero-inner{position:relative;z-index:10;max-width:640px;width:100%;animation:vlkFU .9s ease both}
@keyframes vlkFU{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
.vlk-hero-statrow{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:30px}
@media(max-width:480px){.vlk-hero-statrow{grid-template-columns:1fr 1fr}}
.vlk-steps-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;margin-top:48px}
.vlk-steps-row::before{content:'';position:absolute;top:33px;left:5%;right:5%;height:1px;background:linear-gradient(90deg,transparent,rgba(201,168,76,.22),transparent)}
.vlk-feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:44px}
.vlk-price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:44px}
.vlk-sched-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:44px}
.vlk-pay-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.vlk-contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start;margin-top:44px}
.vlk-map-box{border-radius:18px;overflow:hidden;height:340px}
.vlk-map-box iframe{width:100%;height:100%;border:none}
.vlk-cntr{max-width:1120px;margin:0 auto;padding:0 5vw}
.vlk-sec{padding:70px 0}
@media(max-width:900px){.vlk-contacts-grid,.vlk-sched-grid{grid-template-columns:1fr}.vlk-steps-row{grid-template-columns:1fr 1fr}.vlk-steps-row::before{display:none}}
@media(max-width:600px){.vlk-hero{padding:90px 5vw 60px}.vlk-price-grid,.vlk-feat-grid{grid-template-columns:1fr}.vlk-steps-row{grid-template-columns:1fr}.vlk-cntr{padding:0 5vw}.vlk-sec{padding:50px 0}}



/* VLK v11 — MOBILE FIXES */

/* Убираем горизонтальный скролл */
html, body { overflow-x: hidden !important; max-width: 100% !important; }

/* box-sizing для всех блоков — паддинг внутри ширины */
*, *::before, *::after { box-sizing: border-box; }

/* Контейнер не выходит за экран */
.vlk-cntr { width: 100% !important; max-width: 1120px !important; }

/* Карточки не выходят за экран */
.vlk-feat-card,
.vlk-price-card,
.vlk-sched-card,
.vlk-stat-card,
.vlk-review-card,
.vlk-pay-badge,
.vlk-price-info,
.vlk-step { min-width: 0 !important; max-width: 100% !important; }

/* Слайдер отзывов: ограничиваем */
.vlk-reviews-slider { overflow: hidden !important; }

/* Явные цвета шагов — failsafe против iOS CSS-конфликта */
.vlk-step           { color: #f7f2ea !important; }
.vlk-step-num       { color: #e8c97a !important; border-color: rgba(201,168,76,.35) !important; }
.vlk-step-title     { color: #f7f2ea !important; }
.vlk-step-text      { color: rgba(247,242,234,.6) !important; }

/* vlk-reveal: .visible — гарантированно видно */
.vlk-reveal.visible { opacity: 1 !important; transform: none !important; }

/* Мобиль 480px — принудительно 1 колонка */
@media (max-width: 480px) {
  .vlk-feat-grid,
  .vlk-price-grid,
  .vlk-steps-row,
  .vlk-sched-grid     { grid-template-columns: 1fr !important; }
  .vlk-cntr           { padding: 0 16px !important; }
  .vlk-sec            { padding: 40px 0 !important; }
  .vlk-feat-card,
  .vlk-price-card     { padding: 22px 18px !important; }
  .vlk-step           { padding: 0 8px !important; }
}



.vlk-site-discount-hero{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  margin:0 0 22px 0;padding:14px 18px;border-radius:18px;
  background:linear-gradient(135deg,rgba(201,168,76,.16),rgba(201,168,76,.07));
  border:1px solid rgba(201,168,76,.28);
  box-shadow:0 10px 30px rgba(0,0,0,.18);
  backdrop-filter: blur(8px);
}
.vlk-site-discount-hero strong{color:#f7f2ea;font-size:1.02rem}
.vlk-site-discount-hero span{color:rgba(247,242,234,.78)}
.vlk-site-discount-pill{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:68px;height:38px;padding:0 12px;border-radius:999px;
  background:#c9a84c;color:#1a160d;font-weight:900;font-size:1rem;
  box-shadow:0 8px 20px rgba(201,168,76,.28);
}
.vlk-site-discount-note{
  margin-top:18px;padding:16px 18px;border-radius:18px;
  background:rgba(201,168,76,.08);
  border:1px solid rgba(201,168,76,.22);
  color:#f7f2ea;
}
.vlk-site-discount-note strong{color:#e8c97a}

.vlk-offpeak-box{
  position:relative;overflow:hidden;
  margin:20px 0 24px 0;padding:18px 18px 16px;border-radius:28px;
  background:
    radial-gradient(120% 140% at 100% 0%,rgba(232,201,122,.16) 0%,rgba(232,201,122,0) 44%),
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02)),
    linear-gradient(180deg,rgba(84,48,18,.58),rgba(44,24,10,.72));
  border:1px solid rgba(232,201,122,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 18px 42px rgba(0,0,0,.22);
}
.vlk-offpeak-box::before{
  content:"";position:absolute;inset:0 auto 0 0;width:4px;
  background:linear-gradient(180deg,#e8c97a,#9c6b1f);opacity:.95;
}
.vlk-offpeak-head{
  position:relative;display:flex;gap:12px;flex-wrap:wrap;align-items:center;
  margin-bottom:12px;padding-left:12px
}
.vlk-offpeak-badge{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:46px;padding:10px 18px;border-radius:999px;
  background:linear-gradient(180deg,#e3c45f,#caa546);color:#20170a;
  font-weight:900;letter-spacing:.01em;
  box-shadow:0 10px 24px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.35)
}
.vlk-offpeak-meta{color:#f5e7bf;font-weight:800}
.vlk-offpeak-text{
  margin:0 0 14px 12px;color:rgba(247,242,234,.82);
  line-height:1.58;max-width:58ch
}
.vlk-offpeak-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:12px;margin-left:12px
}
.vlk-offpeak-item{
  position:relative;padding:16px 16px 14px;min-height:112px;border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.025));
  border:1px solid rgba(232,201,122,.14);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)
}
.vlk-offpeak-item::after{
  content:"";position:absolute;left:14px;right:14px;bottom:0;height:1px;
  background:linear-gradient(90deg,rgba(232,201,122,0),rgba(232,201,122,.26),rgba(232,201,122,0))
}
.vlk-offpeak-item strong{display:block;color:#f7f2ea;font-size:1.02rem;font-weight:800}
.vlk-offpeak-item span{display:block;color:#e8c97a;font-weight:900;font-size:1.12rem;margin-top:10px}
.vlk-offpeak-foot{
  margin:14px 0 0 12px;color:rgba(247,242,234,.72);
  font-size:.95rem;line-height:1.55;max-width:62ch
}
@media(max-width:640px){
  .vlk-site-discount-hero{padding:14px 14px}
  .vlk-site-discount-pill{min-width:62px;height:34px;font-size:.95rem}
  .vlk-offpeak-box{padding:16px 14px 14px;border-radius:24px}
  .vlk-offpeak-head,.vlk-offpeak-text,.vlk-offpeak-grid,.vlk-offpeak-foot{margin-left:8px;padding-left:0}
  .vlk-offpeak-badge{min-height:42px;padding:9px 14px;font-size:1rem}
  .vlk-offpeak-meta{font-size:1rem}
  .vlk-offpeak-grid{grid-template-columns:1fr 1fr;gap:10px}
  .vlk-offpeak-item{min-height:104px;padding:14px 14px 12px;border-radius:18px}
  .vlk-offpeak-item span{font-size:1.02rem}
}




@media (max-width: 700px) {
  html, body {
    overflow-x: hidden !important;
    max-width: 100% !important;
    background:
      radial-gradient(900px 520px at 15% 0%, rgba(201,168,76,.10), transparent 62%),
      radial-gradient(820px 460px at 85% 6%, rgba(212,96,58,.10), transparent 64%),
      linear-gradient(180deg,#1a0d05 0%,#2a1a0e 42%,#1e0f07 100%) !important;
    background-color:#1a0d05 !important;
    color:#f7f2ea !important;
  }

  body, section, div, p, h1, h2, h3, a, span {
    visibility: visible !important;
  }

  .vlk-glass-overlay,
  .vlk-glass-overlay::before,
  .vlk-glass-overlay::after,
  .vlk-steam,
  .vlk-ember-wrap {
    display:none !important;
    pointer-events:none !important;
  }

  .vlk-hero {
    display:none !important;
  }

  .vlk-mobile-hero {
    display:block !important;
    padding:92px 16px 26px !important;
    position:relative !important;
    z-index:5 !important;
  }

  .vlk-mobile-hero__box {
    display:block !important;
    padding:22px 18px !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.05) !important;
    border:1px solid rgba(201,168,76,.18) !important;
    box-shadow:0 16px 34px rgba(0,0,0,.22) !important;
  }

  .vlk-mobile-hero .vlk-hero-tag {
    display:inline-flex !important;
    margin-bottom:14px !important;
    font-size:.70rem !important;
    line-height:1.4 !important;
  }

  .vlk-mobile-hero .vlk-hero-title {
    display:block !important;
    font-size:2.05rem !important;
    line-height:1.04 !important;
    margin:0 0 10px 0 !important;
    color:#f7f2ea !important;
  }

  .vlk-mobile-hero .vlk-hero-subtitle {
    display:block !important;
    font-size:1rem !important;
    line-height:1.35 !important;
    margin:0 0 12px 0 !important;
    color:rgba(247,242,234,.84) !important;
  }

  .vlk-mobile-hero .vlk-hero-desc {
    display:block !important;
    font-size:.95rem !important;
    line-height:1.6 !important;
    margin:0 0 16px 0 !important;
    color:rgba(247,242,234,.80) !important;
    max-width:100% !important;
  }

  .vlk-mobile-hero .vlk-site-discount-hero {
    margin-bottom:14px !important;
  }

  .vlk-mobile-hero .vlk-hero-statrow {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    margin-bottom:14px !important;
  }

  .vlk-mobile-hero .vlk-site-discount-note {
    margin:0 0 16px 0 !important;
  }

  .vlk-mobile-hero .vlk-mobile-cta {
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
  }

  .vlk-mobile-hero .vlk-mobile-cta .button {
    width:100% !important;
    justify-content:center !important;
    text-align:center !important;
  }

  .vlk-cntr,
  .vlk-hero-inner {
    width:100% !important;
    margin:0 auto !important;
    padding-left:16px !important;
    padding-right:16px !important;
  }

  .vlk-sec {
    padding:34px 0 !important;
  }

  .vlk-feat-grid,
  .vlk-price-grid,
  .vlk-steps-row,
  .vlk-sched-grid,
  .vlk-contacts-grid {
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  .vlk-reveal {
    opacity:1 !important;
    transform:none !important;
  }

  iframe {
    max-width:100% !important;
  }
}

@media (min-width: 701px) {
  .vlk-mobile-hero { display:none !important; }
}

.vlk-booking-close-notice{
  margin:0 0 18px 0;
  padding:14px 16px;
  border-radius:18px;
  background:
    radial-gradient(120% 140% at 100% 0%, rgba(232,201,122,.10) 0%, rgba(232,201,122,0) 42%),
    linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.015)),
    linear-gradient(180deg, rgba(44,21,8,.90), rgba(22,10,3,.95));
  border:1px solid rgba(201,168,76,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
  color:#f7f2ea;
  line-height:1.5;
}
.vlk-booking-close-notice strong{color:#f1d181}
