/* Phone-only presentation; the desktop composition keeps its existing styles. */
.mobile-switcher,.mobile-features,.extension-mobile-description{display:none}
.extensions-scroll:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
@media(max-width:700px){
 .header{min-height:72px;padding:15px 20px}
 .mobile-switcher{display:flex;gap:3px;padding:4px;background:#ededeb;border:1px solid #e5e5e2;border-radius:16px;margin:0 0 14px}
 .mobile-switcher button{flex:1;min-width:0;min-height:44px;padding:8px 4px;border:0;border-radius:12px;background:transparent;font:inherit;font-size:12px;font-weight:550;line-height:1.2;color:#777772;cursor:pointer}
 .mobile-switcher button[aria-pressed=true]{background:white;color:#242424;box-shadow:0 2px 6px #2424240c}
 .mobile-switcher button:focus-visible{outline:2px solid #555;outline-offset:1px}
 .welcome-page .welcome-intro{padding:25px 0 18px}
 .welcome-page .welcome-intro .eyebrow{font-size:10px;letter-spacing:1.6px;margin-bottom:14px}
 .welcome-page .welcome-intro h1{font-size:30px;letter-spacing:-1px;line-height:1.15;overflow-wrap:anywhere}
 .welcome-page .welcome-logo{width:72px;height:72px;border-radius:19px;margin-top:18px}
 .welcome-page .welcome-city{margin-top:10px;font-size:12px}
 .welcome-page .experience{padding-top:8px}
 .welcome-page .experience-heading{margin-bottom:18px}
 .welcome-page .experience-heading h2{font-size:21px;margin-bottom:0}
 .welcome-page .experience-heading p{font-size:12px;margin-top:7px}
 .welcome-page .experience-switcher{margin-bottom:4px}
 .experience-switcher button{font-size:11px}
 .experience-switcher [data-preview-index="2"]{flex:1.4}
 .welcome-page .experience-grid{display:flex;align-items:stretch;gap:14px;max-width:none;margin:0 -16px;padding:8px 16px 24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:16px;scrollbar-width:none;overscroll-behavior-x:contain}
 .welcome-page .experience-grid:after{content:'';flex:0 0 14px;order:4}
 .welcome-page .scene{flex:0 0 calc(100% - 28px);min-width:0;padding:0;scroll-snap-align:start}
 .welcome-page .scene-label{display:none}
 .welcome-page .preview-card{max-width:none;min-height:306px;transform:none!important;box-shadow:0 13px 26px -18px #27272740;transition:none}
 .welcome-page .preview-heart{width:44px;height:44px;top:12px;right:12px;font-size:24px!important}
 .welcome-page .preview-button{min-height:46px}
 .welcome-page .club-preview{padding-top:22px}
 .welcome-page .club-large-logo{width:82px;height:82px;margin-bottom:15px}
 .welcome-page .club-preview h3{font-size:19px}
 .welcome-page .preview-card-header{gap:9px}
 .welcome-page .preview-identity h3{font-size:13px}
 .welcome-page .booking-slots button{min-height:44px}
 .welcome-page .booking-days{overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;padding:2px}
 .welcome-page .booking-days button{min-width:44px;min-height:58px}
 .welcome-page .map-controls button{width:44px;height:44px;font-size:21px!important}
 .welcome-page .map-link{width:44px;height:44px}
 .welcome-page .preview-note{font-size:10px;max-width:310px;margin:0 auto;line-height:1.5}
 .welcome-page .welcome-offers-heading{margin:32px 0 18px}
 .welcome-page .welcome-offers-heading .eyebrow{margin-bottom:10px;font-size:9px}
 .welcome-page .welcome-offers-heading h2{font-size:25px;line-height:1.2}
 .plans-scroll{scroll-snap-type:x mandatory;scroll-padding-inline:2px;scrollbar-width:none;overscroll-behavior-x:contain}
 .plans{grid-template-columns:repeat(3,calc(100vw - 56px));min-width:0;width:max-content;gap:14px}
 .plan{scroll-snap-align:start;padding:24px 22px}
 .plan-heading{margin-bottom:16px}
 .plan-description{min-height:47px}
 .plan .price{margin-top:20px}
 .plan .price-note{margin-bottom:18px}
 .plan .cta{min-height:48px}
 .plan .features,.plan .plan-benefit{display:none}
 .mobile-features{display:block;border-top:1px solid var(--border);margin-top:20px;padding-top:18px}
 .mobile-features h3{margin-bottom:12px}
 .mobile-features ul{gap:10px}
 .mobile-features li{font-size:13px}
 body.welcome-page .plans-scroll{scroll-margin-top:82px}
 .extensions{padding-left:0;padding-right:0}
 .extensions-heading{margin-bottom:18px}
 .extensions-scroll{overflow-x:auto;padding:5px 2px 14px;scroll-snap-type:x mandatory;scroll-padding-inline:2px;scrollbar-width:none;overscroll-behavior-x:contain}
 .extensions-grid{grid-template-columns:repeat(3,calc(100vw - 56px));width:max-content;gap:14px;align-items:stretch}
 .extension{padding:24px 22px;scroll-snap-align:start}
 .extension-label{font-size:11px;margin-bottom:16px}
 .extension h3{min-height:62px}
 .extension .extension-description,.extension-full-features{display:none}
 .extension-mobile-description{display:block;font-size:14px;line-height:1.65;min-height:93px;color:var(--muted);margin:0}
 .extension-bottom{padding-top:20px}
 .extension-price{min-height:39px}
 .extension-terms{font-size:12px;min-height:77px;margin-bottom:18px}
 .extension .cta{min-height:48px}
 .extension .mobile-features ul{gap:10px}
 .commitment-price{gap:5px}
 .commitment-price .commitment{font-size:11px;letter-spacing:-.1px}
}
