/* Fixed to the viewport, not an overflow ancestor; reserve the measured height. */
html{height:100%;overflow:hidden;background:#121e2b}
body{height:100vh;height:100dvh;min-height:0;margin:0;padding:0!important;overflow:hidden;display:flex;flex-direction:column}
.header{position:relative!important;top:auto!important;inset-inline:auto;flex-shrink:0;width:100%;margin:0!important;transform:none!important;z-index:40;background:#121e2b}
.page-scroll{flex:1 1 0;min-height:0;width:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scroll-padding-top:20px;scroll-behavior:smooth}
.page-scroll:focus-visible{outline:2px solid #8be1ff;outline-offset:-2px}
@media(max-width:760px){.page-scroll>.quick-dock{top:0!important}.page-scroll{scroll-padding-top:86px}}
@media(prefers-reduced-motion:reduce){.page-scroll{scroll-behavior:auto}}
html.no-motion .page-scroll{scroll-behavior:auto}
/* 16 October 2026: retain the original brand and integrate the real club logo. */
.classes-hero .club-brand-panel{
  isolation:isolate;position:relative;align-self:center;min-height:0;
  padding:clamp(20px,3vw,38px);border:2px solid #71b7df;border-radius:36px;
  background:linear-gradient(145deg,#f8fbff,#e3eef9);
  box-shadow:0 20px 50px #06122340,inset 0 0 0 7px #ffffffa6;
  overflow:hidden;
}
.classes-hero .club-brand-panel::before{
  content:"";position:absolute;inset:14px;border:1px solid #4684b944;
  border-radius:24px;pointer-events:none;z-index:-1;
}
.classes-hero .club-brand-logo{
  display:block;width:min(100%,460px);height:auto;max-height:none;
  aspect-ratio:965 / 1000;object-fit:contain;margin:auto;
  filter:drop-shadow(0 5px 10px #142c491c);
}
.group-offer-tiers{display:grid;gap:10px;margin:24px 0}
.group-offer-tiers>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:15px 18px;border:1px solid #51348333;border-radius:18px;background:#fff9f0}
.group-offer-tiers>div:last-child{background:#fff0b3;border-color:#97660066}
.group-offer-tiers dt{font-size:1rem;line-height:1.5;font-weight:750;color:#25163f}
.group-offer-tiers dd{margin:0;display:grid;gap:2px;text-align:center;color:#25163f}
.group-offer-tiers bdi{font-size:clamp(1.8rem,5vw,2.4rem);font-weight:900;line-height:1.15;white-space:nowrap}
.group-offer-tiers dd span{font-size:.8rem;line-height:1.4;color:#513483}
.offer-community .offer-intro,.offer-community .offer-eligibility{font-size:1rem;line-height:1.7;color:#25163f}
.offer-community-link{display:inline-flex;align-items:center;min-height:44px;margin-top:10px;font-size:.95rem;font-weight:750;text-decoration:underline;color:#513483;text-underline-offset:4px}
.training-grid article p.open-gym-benefit,.membership-list article p.open-gym-benefit{display:block;width:fit-content;max-width:100%;padding:10px 14px;margin:14px 0;border:1px solid #7de1bb;border-radius:14px;background:#e4fff3;color:#153f31;font-size:1rem;font-weight:750;line-height:1.6}
/* Reviews stay on the right in RTL; the original portrait testimonial is on the left. */
.review-section.review-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,400px);gap:clamp(28px,5vw,80px);align-items:center;text-align:right}
.review-copy,.review-video,.venue-film-copy{min-width:0}
.review-copy h2{font-size:clamp(2rem,4vw,3.6rem)}
.review-video{padding:clamp(18px,3vw,28px);background:linear-gradient(145deg,#273451,#282040);border:1px solid #88c8ee66;border-radius:30px;box-shadow:0 18px 40px #07132626}
.review-video h3{margin:10px 0 22px;font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.2;color:#fff}
.review-video .eyebrow{color:#91e3ff}
.portrait-player{width:min(100%,340px);margin:0 auto;border-radius:22px;overflow:hidden;background:#12162a;isolation:isolate}
.local-media-button{position:relative;display:block;width:100%;padding:0;border:0;border-radius:22px;overflow:hidden;background:#12162a;color:#fff;aspect-ratio:9/16}
.local-media-button>img{display:block;width:100%;height:100%;object-fit:contain}
.local-media-button::after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0c132bbd);pointer-events:none}
.local-play-icon{position:absolute;inset:0;display:grid;place-content:center;width:72px;height:72px;margin:auto;border-radius:50%;background:#fff9f0;color:#25163f;font-size:1.8rem;box-shadow:0 8px 30px #0005;z-index:1}
.local-play-label{position:absolute;bottom:24px;inset-inline:12px;font-size:1rem;font-weight:750;text-align:center;z-index:1}
.local-video-player,.portrait-player>.video-frame{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;border:0;background:#12162a}
.venue-film{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:clamp(24px,6vw,80px);align-items:center;max-width:1050px;margin:32px auto 40px;padding:clamp(22px,5vw,52px);border:1px solid #83c9ee55;border-radius:32px;background:radial-gradient(ellipse at 0% 30%,#3b497b88,transparent 65%),#1d263c}
.venue-film h3{font-size:clamp(2rem,3.7vw,3.3rem);line-height:1.16;color:#fff}
.venue-film p{font-size:1.1rem;color:#e3eaf9;line-height:1.8}
.venue-film .eyebrow{color:#91e3ff}
.venue-note{display:block;margin-top:22px;font-size:.85rem;color:#cdd9ec}
.video-error{padding:12px;color:#fff;background:#50302a;font-size:.95rem}
@media(max-width:760px){
  body{padding-bottom:0}
  .header{padding-top:max(8px,env(safe-area-inset-top));row-gap:6px}
  footer{padding-bottom:max(40px,env(safe-area-inset-bottom))}
  .classes-hero .club-brand-panel{padding:24px;max-width:460px;justify-self:center;border-radius:28px}
  .classes-hero .club-brand-logo{max-width:340px;height:auto}
  .group-offer-tiers>div{padding:13px;gap:10px}
  .offer-community{min-width:0}
  .review-section.review-split,.venue-film{grid-template-columns:minmax(0,1fr);gap:28px}
  .review-video{width:100%;max-width:420px;justify-self:center}
  .venue-film{padding:22px 18px;border-radius:24px}
  .portrait-player{max-width:320px}
}

/* Keep the original header layout; no secondary action strip. */
.header .mobile-bar{display:none!important}

