/* Responsive refinements and lightweight launch promotion. */
html{scroll-padding-top:100px}body{overflow-wrap:break-word}main,section,article,form,header,footer{min-width:0}img{max-width:100%}input,select,textarea{max-width:100%;min-width:0}a,button{-webkit-tap-highlight-color:transparent}.poster-downloads{flex-wrap:wrap}.footer-pages{position:static;background:transparent;display:flex;flex-wrap:wrap;padding:0;border:0}.footer-pages a{white-space:normal}.instagram-nav{color:#d3f69b!important}.membership-launch-banner{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:28px;align-items:center;max-width:1180px;margin:28px auto 0;padding:28px 36px;border-radius:24px;border:1px solid #a7e6ff;background:linear-gradient(110deg,#10395b,#123448 55%,#204623);color:white;box-shadow:0 10px 28px #0002}.membership-launch-banner .eyebrow{color:#c5f566;margin:0 0 8px;font-size:12px}.membership-launch-banner h2{font-size:clamp(26px,3vw,38px);line-height:1.15;letter-spacing:-.02em;margin:0 0 12px}.membership-launch-banner h2 span{color:#c5f566}.membership-launch-banner p{margin:0 0 16px;color:#e0eefa;font-size:17px}.membership-launch-banner .promo-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.membership-launch-banner .promo-actions .button{background:#bcf34b;color:#071c3c}.membership-poster-link{display:block;border-radius:12px;overflow:hidden;border:1px solid #ffffff40}.membership-poster-link img{display:block;width:100%;height:auto}.launch-success{padding:16px 18px;margin:0 0 24px;border-left:4px solid #bcf34b;border-radius:12px;background:#163d38;color:#eaffef}.launch-success strong{display:block;color:#d3ff78;font-size:18px;line-height:1.35}.launch-success p{font-size:14px;line-height:1.55;color:#e2f5eb;margin:8px 0}.launch-success a{font-size:14px;font-weight:700;color:#d3ff78;text-underline-offset:4px}.social-follow{display:flex;justify-content:space-between;gap:24px;align-items:center}.social-follow p{margin:10px 0;color:#d6e4f0}.social-follow h2{font-size:clamp(28px,4vw,40px);line-height:1.15;margin:0}.social-follow .button{white-space:normal}.week-mobile{display:none}.site-backdrop picture{display:block;width:100%;height:100%}.site-backdrop picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:74% center}.button,button,select,input{min-height:44px}button{cursor:pointer}.fixed-court-template header .menu{border-radius:8px}.week-table-wrap{max-width:100%}.training-poster img{border-radius:12px}.contact-links a{overflow-wrap:anywhere}
@media(max-width:1250px){.membership-launch-banner{max-width:calc(100% - 48px)}}
@media(max-width:1180px){header .menu{display:block;padding:8px 14px;background:transparent;color:inherit;border:1px solid #ffffff50;min-height:44px}header #navigation{display:none;position:absolute;top:100%;left:0;right:0;padding:20px 5%;background:#081d38!important;border-bottom:1px solid #ffffff30;gap:6px;max-height:calc(100dvh - 90px);overflow-y:auto}header #navigation.open{display:flex;flex-direction:column;align-items:stretch}header #navigation a{display:block;padding:12px 10px;font-size:16px;min-height:44px}header #navigation .nav-cta{color:#071c3c}.footer-pages{position:static;display:flex;flex-direction:row;gap:16px}}
@media(max-width:700px){.fixed-court-template header{padding:10px 16px;backdrop-filter:none;background:#081d38}.fixed-court-template header .brand{gap:8px;min-width:0}.fixed-court-template header .brand-logo{width:50px;height:50px;padding:2px;border-radius:9px}.fixed-court-template header .brand-wordmark{width:132px;height:26.4px}.fixed-court-template header .brand-wordmark img{width:132px;height:132px;top:-93.72px}.fixed-court-template header .menu{font-size:14px;padding:8px 12px;flex-shrink:0}.membership-launch-banner{max-width:calc(100% - 32px);margin:16px auto 0;padding:20px;grid-template-columns:minmax(0,1fr) 90px;gap:16px;border-radius:18px}.membership-launch-banner h2{font-size:25px}.membership-launch-banner p{font-size:15px}.membership-launch-banner .eyebrow{font-size:10px;letter-spacing:.08em}.membership-launch-banner .promo-actions{gap:10px}.membership-launch-banner .button{font-size:14px;padding:11px 14px}.membership-launch-banner .text-link{font-size:13px}.fixed-court-template .hero{padding:24px 16px 36px;min-height:0;align-items:stretch}.fixed-court-template .hero-copy{width:100%;max-width:none;padding:24px 20px;border-radius:18px;backdrop-filter:none;background:#081c35e8}.fixed-court-template .hero h1{font-size:clamp(2.5rem,10vw,3.7rem)}.fixed-court-template .hero .intro{font-size:16px;margin:20px 0}.fixed-court-template .section{padding:26px 20px;backdrop-filter:none;background:#081c35f2;border-radius:18px}.fixed-court-template .section h2{font-size:clamp(27px,8vw,38px);line-height:1.15}.fixed-court-template .section-heading{display:block}.fixed-court-template .section-heading>p{margin:18px 0 0;font-size:16px}.fixed-court-template .cards,.fixed-court-template .enroll-grid,.fixed-court-template .level-grid,.fixed-court-template .form-row,.fixed-court-template .contact,.fixed-court-template .booking,.fixed-court-template .approach,.fixed-court-template .faq{grid-template-columns:minmax(0,1fr)}.fixed-court-template .card,.fixed-court-template .program-panel{padding:24px 20px}.contact input,.contact select,.contact textarea,.training-finder select,.membership-finder select{font-size:16px}.contact form{padding:24px 18px}.contact-links{gap:12px}.fixed-court-template .membership-finder{grid-template-columns:1fr;gap:18px}.actions{gap:14px}.actions .button{width:100%;text-align:center}.actions .text-link{padding:8px 0;min-height:44px}.registration-promo{padding:16px!important}.registration-promo p{font-size:16px!important}.promo-code-row{flex-wrap:wrap}.social-follow{align-items:stretch;flex-direction:column}.social-follow .button{text-align:center}.site-backdrop picture img{object-position:80% center}.week-scroll-note,.week-table-wrap{display:none}.week-mobile{display:grid;gap:14px;margin:20px 0}.week-day{background:#102944;border:1px solid #ffffff25;border-radius:14px;padding:18px}.week-day h3{font-size:21px;margin:0 0 14px;color:white}.week-day .week-session{min-height:0;padding:12px;margin-top:8px}.week-day .week-session strong,.week-day .week-session span{font-size:14px}.week-day .week-session small{font-size:12px}.week-time{display:block;font-size:13px;font-weight:800;margin:16px 0 6px;color:#c5f566}.week-mobile-forge{padding:18px;border-radius:14px;background:#382837;color:#ffded3}.week-mobile-forge strong{display:block;margin-bottom:8px}.week-mobile-forge p{font-size:14px;margin:0}.week-mobile-weekend{font-size:13px;color:#c4d4e6}.fixed-court-template footer{padding:24px 20px}.footer-pages{gap:8px 18px}.footer-pages a{padding:6px 0;font-size:14px}.academy-location .location-map,.academy-location .location-map iframe{min-height:300px}.price-table-wrap{max-width:100%;overflow:auto}.poster-downloads .button{width:100%;text-align:center}.poster-downloads a{font-size:14px}.launch-success{padding:14px;margin-bottom:20px}.launch-success strong{font-size:17px}.training-gift-banner{max-width:calc(100% - 32px)}.site-backdrop{height:100vh;height:100lvh}}
@media(max-width:390px){.membership-launch-banner{grid-template-columns:minmax(0,1fr) 70px;gap:12px;padding:18px}.membership-poster-link{width:auto;grid-row:auto}.membership-launch-banner h2{font-size:22px}.membership-launch-banner .promo-actions .button{width:100%}.membership-launch-banner .promo-actions{align-items:stretch}.fixed-court-template header .brand-wordmark{width:120px;height:24px}.fixed-court-template header .brand-wordmark img{width:120px;height:120px;top:-85.2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Court rotation stays isolated from site styling. */
header #navigation{gap:14px}.rotation-board{max-width:1450px;margin:28px auto;padding:0 24px}.rotation-intro .rotation-device-note{font-size:14px;color:#d0e0ef;border-left:3px solid #bcf34b;padding-left:14px}.rotation-intro>p{max-width:850px}@media(max-width:700px){.rotation-board{padding:0 16px;margin:20px auto}.rotation-intro .rotation-device-note{font-size:13px}}
