@media(max-width:1100px){.nav{gap:15px}.nav a{font-size:13px}.grid-4,.game-grid{grid-template-columns:repeat(3,1fr)}.why-grid{grid-template-columns:repeat(4,1fr)}.hero{min-height:700px}.hero-content{width:65%}.offer-card{grid-template-columns:150px 1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.shell{width:min(100% - 30px,1440px)}.booking-layout{grid-template-columns:1fr}.booking-summary{position:static;top:auto;width:100%;max-width:none}.menu-toggle{display:block;margin-left:auto}.nav{position:absolute;top:78px;left:15px;right:15px;display:none;flex-direction:column;background:#0b1112;border:1px solid #24312e;border-radius:18px;padding:15px;box-shadow:0 25px 55px rgba(0,0,0,.5)}.nav.open{display:flex}.nav-actions{margin-left:0}.icon-btn{display:none}.hero{min-height:auto;padding:60px 0 0;display:block}.hero:before{background:linear-gradient(180deg,#060909 0%,rgba(6,9,9,.94) 45%,rgba(6,9,9,.2) 75%,#070a0b 100%)}.hero-content{width:100%;padding:50px 0 35px}.hero-media{position:relative;margin:0;height:440px}.grid-3,.pricing-grid{grid-template-columns:1fr 1fr}.why-grid{grid-template-columns:repeat(2,1fr)}.offers-grid{grid-template-columns:1fr}.game-grid{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.reviews-grid{grid-template-columns:1fr 1fr}.location-grid{grid-template-columns:1fr}.gallery-grid{columns:2 260px}.section{padding:75px 0}.nav-book{min-height:42px;padding:0 14px;font-size:12px}}
@media(max-width:640px){body{padding-bottom:68px}.faq-list{grid-template-columns:1fr;gap:10px}.announce-track{overflow:hidden}.hide-sm{display:none}.announce{font-size:10px}.nav-wrap{height:68px}.brand span:last-child{font-size:14px}.brand-mark{width:38px;height:38px}.nav{top:68px}.nav-book{display:none}.hero h1{font-size:58px}.hero-sub,.hero-desc{font-size:15px}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-media{height:330px}.section{padding:58px 0}.section-head{margin-bottom:28px}.section h2{font-size:34px}.grid-3,.pricing-grid,.reviews-grid{grid-template-columns:1fr}.why-grid{grid-template-columns:repeat(2,1fr);gap:10px}.icon-card{padding:17px;min-height:150px}.experience-card{min-height:0}.experience-card .media{height:230px}.price-card.popular{transform:none}.offer-card{grid-template-columns:110px 1fr}.offer-card .offer-media{min-height:210px}.game-grid{grid-template-columns:repeat(2,1fr);gap:12px}.game-card .card-body{padding:12px}.gallery-grid{columns:1}.steps{grid-template-columns:1fr}.location-grid{gap:14px}.map-wrap,.map-wrap iframe{min-height:330px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-bottom{flex-direction:column}.footer-bottom div{flex-wrap:wrap}.mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:70;height:64px;padding:7px;background:rgba(5,8,8,.97);border-top:1px solid #26342f;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.mobile-bar a{display:grid;place-items:center;border:1px solid #2a3a35;border-radius:11px;font-size:11px;font-weight:900}.mobile-bar a.primary{background:var(--green);color:#071007}.form-card{padding:18px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.booking-layout{grid-template-columns:1fr;gap:20px}.booking-summary{position:static;top:auto;width:100%;max-width:none;padding:18px;overflow:visible}.summary-line{gap:12px}.summary-line span,.summary-line strong{min-width:0}.summary-total{font-size:28px}.form-grid>.field{min-width:0}.field input[type="date"],.field input[type="time"]{display:block;width:100%;max-width:100%;min-width:0;inline-size:100%;height:50px;min-height:50px;padding:12px 14px;box-sizing:border-box;font-size:16px;line-height:normal;-webkit-min-logical-width:0;-webkit-appearance:none;appearance:none}.page-hero{padding:70px 0 45px}.page-hero h1{font-size:48px}.cta{min-height:390px}.footer{padding-bottom:20px}}
@media(max-width:360px){.shell{width:calc(100% - 22px)}.hero h1{font-size:50px}.why-grid,.game-grid{grid-template-columns:1fr}.offer-card{grid-template-columns:1fr}.offer-card .offer-media{height:190px;min-height:0}.mobile-bar{grid-template-columns:1fr 1fr 1.15fr}}

/* v91 — mobile custom booking pickers */
@media(max-width:640px){.n9-picker-panel{position:fixed!important;left:12px!important;right:12px!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;width:auto!important;max-width:none!important;max-height:min(82vh,640px)!important;overflow:auto;border-radius:22px;padding:17px;z-index:220}.n9-calendar-day{border-radius:10px;font-size:13px}.n9-time-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:46vh}.n9-time-option{font-size:11px;padding:7px 5px}.n9-picker-head strong{font-size:18px}}

/* V117 — device-specific hero images must stay visible on tablet/mobile.
   V116 moved the hero media into normal flow below 900px but left the desktop
   .hero:before overlay above it, which made uploaded mobile/tablet artwork look
   almost black. On stacked layouts the text is below the media, so the desktop
   text-protection overlay is not needed. */
@media(max-width:900px){
  .hero{padding:0;display:block;min-height:auto}
  .hero:before{display:none}
  .hero-media{position:relative;inset:auto;margin:0;width:100%;height:auto;aspect-ratio:5/4;overflow:hidden;background:#0b1110;z-index:0}
  .hero-media picture{display:block!important;width:100%!important;height:100%!important}
  .hero-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;opacity:1}
  .hero-media:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(7,10,11,0) 78%,rgba(7,10,11,.30) 100%)}
  .hero-content{width:100%;padding:42px 0 42px}
}
@media(max-width:640px){
  .hero-media{height:auto;aspect-ratio:4/5}
  .hero-media img{object-position:center center;opacity:1}
  .hero-media:after{background:linear-gradient(180deg,rgba(7,10,11,0) 84%,rgba(7,10,11,.22) 100%)}
  .hero-content{padding:36px 0 34px}
}
