:root{--color-bg:#0a0a0a;--color-bg-alt:#0e0e0e;--color-bg-card:#141414;--color-bg-elevated:#181818;--color-surface:#1c1c1c;--color-border:#252525;--color-border-light:#333;--color-text:#f0f0f0;--color-text-muted:#999;--color-text-dim:#555;--color-accent:#c41e2a;--color-accent-hover:#e02535;--color-accent-light:#d93243;--color-accent-dark:#8b1520;--color-accent-glow:#c41e2a40;--color-image-glow:#c41e2a59;--color-white:#fff;--color-black:#000;--font-display:"Oswald", sans-serif;--font-body:"Barlow", sans-serif;--font-condensed:"Barlow Condensed", sans-serif;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--space-5xl:8rem;--container-max:1200px;--container-wide:1400px;--header-height:80px;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-out-back:cubic-bezier(.34, 1.56, .64, 1);--t-fast:.2s ease;--t-base:.35s var(--ease-out-expo);--t-slow:.6s var(--ease-out-expo);--t-reveal:.8s var(--ease-out-expo);--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);font-size:16px;font-weight:400;line-height:1.6;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}ul,ol{list-style:none}strong{font-weight:700}.skip-link{top:-100%;left:var(--space-md);z-index:10000;padding:var(--space-sm) var(--space-md);background:var(--color-accent);color:var(--color-white);border-radius:var(--radius-sm);font-weight:600;position:absolute}.skip-link:focus{top:var(--space-md)}.container{width:100%;max-width:var(--container-max);padding:0 var(--space-xl);margin:0 auto}.section-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2xl);text-align:center;color:var(--color-white);font-size:clamp(2rem,4vw,3rem);font-weight:700}.btn{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.12em;border-radius:var(--radius-sm);transition:all .3s var(--ease-out-expo);text-align:center;cursor:pointer;border:2px solid #0000;padding:.85em 2em;font-size:.9rem;font-weight:600;display:inline-block;position:relative;overflow:hidden}.btn:after{content:"";background:linear-gradient(90deg,#0000,#ffffff26,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn:hover:after{left:100%}.btn--primary{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent);box-shadow:0 4px 15px #0006}.btn--primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);color:var(--color-white);box-shadow:0 8px 25px var(--color-accent-glow);transform:translateY(-2px)}.btn--outline{color:var(--color-white);border-color:var(--color-white);background:0 0;box-shadow:0 4px 15px #0006}.btn--outline:hover{background:var(--color-white);color:var(--color-black);transform:translateY(-2px);box-shadow:0 8px 25px #ffffff1a}.btn--lg{padding:1em 2.5em;font-size:1rem}.btn--full{width:100%}.header{z-index:1000;height:var(--header-height);-webkit-backdrop-filter:blur(24px);transition:all .4s var(--ease-out-expo);background:#0a0a0ab3;border-bottom:1px solid #ffffff0a;position:fixed;top:0;left:0;right:0;overflow:visible}.header--scrolled{background:#0a0a0af2;border-bottom-color:#ffffff0f;box-shadow:0 4px 30px #0006}.header__container{height:100%;max-width:var(--container-wide);padding:0 var(--space-xl);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.header__logo-img{border-radius:var(--radius-sm);width:auto;height:90px;transition:transform .3s var(--ease-out-back);filter:drop-shadow(0 0 6px #ffffff40)}.header__logo:hover .header__logo-img{transform:scale(1.05)}.header__nav-list{gap:var(--space-xl);display:flex}.header__nav-link{font-family:var(--font-condensed);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);transition:color var(--t-fast);padding:4px 0;font-size:.95rem;font-weight:500;position:relative}.header__nav-link:after{content:"";background:var(--color-accent-light);width:0;height:2px;transition:width .35s var(--ease-out-expo);position:absolute;bottom:-2px;left:0}.header__nav-link:hover{color:var(--color-white)}.header__nav-link:hover:after{width:100%}.header__actions{align-items:center;gap:var(--space-lg);display:flex}.header__cta{padding:.7em 1.8em;font-size:.8rem}.header__menu-toggle{z-index:1001;flex-direction:column;gap:5px;width:28px;padding:4px 0;display:none}.header__menu-bar{background:var(--color-white);width:100%;height:2px;transition:all .35s var(--ease-out-expo);transform-origin:50%;border-radius:2px;display:block}.header__menu-toggle--active .header__menu-bar:first-child{transform:translateY(7px)rotate(45deg)}.header__menu-toggle--active .header__menu-bar:nth-child(2){opacity:0;transform:scaleX(0)}.header__menu-toggle--active .header__menu-bar:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-nav{z-index:9999;opacity:0;visibility:hidden;width:100%;height:100dvh;min-height:100vh;transition:all .5s var(--ease-out-expo);padding:var(--space-2xl) 0;background:linear-gradient(165deg,#1a1a1a 0%,#0a0a0a 50%,#1a0a0c 100%);justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.mobile-nav--open{opacity:1;visibility:visible}.mobile-nav__inner{text-align:center;align-items:center;gap:var(--space-2xl);flex-direction:column;display:flex}.mobile-nav__logo img{border-radius:var(--radius-sm);filter:drop-shadow(0 0 6px #ffffff40);height:60px}.mobile-nav__list{gap:var(--space-lg);flex-direction:column;display:flex}.mobile-nav__link{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);transition:all .3s var(--ease-out-expo);opacity:0;font-size:1.4rem;font-weight:500;transform:translateY(20px)}.mobile-nav--open .mobile-nav__link{opacity:1;transform:translateY(0)}.mobile-nav--open .mobile-nav__list li:first-child .mobile-nav__link{transition-delay:.1s}.mobile-nav--open .mobile-nav__list li:nth-child(2) .mobile-nav__link{transition-delay:.15s}.mobile-nav--open .mobile-nav__list li:nth-child(3) .mobile-nav__link{transition-delay:.2s}.mobile-nav--open .mobile-nav__list li:nth-child(4) .mobile-nav__link{transition-delay:.25s}.mobile-nav--open .mobile-nav__list li:nth-child(5) .mobile-nav__link{transition-delay:.3s}.mobile-nav__link:hover{color:var(--color-accent-light)}.mobile-nav__cta{opacity:0;transition:all .3s var(--ease-out-expo) .35s;font-size:1rem;transform:translateY(20px)}.mobile-nav--open .mobile-nav__cta{opacity:1;transform:translateY(0)}.hero{justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero__video-wrap{z-index:0;position:absolute;inset:0}.hero__video{object-fit:cover;width:100%;height:100%}.hero__poster{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.hero__overlay{z-index:1;background:linear-gradient(#0000008c 0%,#00000040 35%,#0006 65%,#0a0a0a 100%);position:absolute;inset:0}.hero__content{z-index:2;text-align:center;padding:var(--space-xl);position:relative}.hero__title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-white);margin-bottom:var(--space-md);text-shadow:0 2px 8px #000000e6,0 4px 40px #000000e6;opacity:0;animation:heroReveal 1s var(--ease-out-expo) .3s forwards;font-size:clamp(3rem,8vw,6.5rem);font-weight:700;line-height:1.02;transform:translateY(40px)}.hero__subtitle{font-family:var(--font-condensed);text-transform:uppercase;letter-spacing:.22em;color:var(--color-white);text-shadow:0 2px 8px #000000e6,0 2px 8px #000000e6;margin-bottom:var(--space-2xl);opacity:0;animation:heroReveal 1s var(--ease-out-expo) .5s forwards;font-size:clamp(1rem,2.2vw,1.4rem);font-weight:600;transform:translateY(30px)}.hero__actions{gap:var(--space-lg);opacity:0;animation:heroReveal 1s var(--ease-out-expo) .7s forwards;flex-wrap:wrap;justify-content:center;display:flex;transform:translateY(25px)}@keyframes heroReveal{to{opacity:1;transform:translateY(0)}}.hero__scroll{z-index:2;opacity:0;animation:heroReveal 1s var(--ease-out-expo) 1.2s forwards;position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%)}.hero__scroll-line{background:#ffffff1a;width:1px;height:55px;position:relative;overflow:hidden}.hero__scroll-line:after{content:"";background:linear-gradient(to bottom, transparent, var(--color-accent-light));width:100%;height:100%;animation:2s ease-in-out infinite scrollDrop;position:absolute;top:-100%;left:0}@keyframes scrollDrop{0%{top:-100%}50%{top:100%}to{top:100%}}.services{padding:var(--space-5xl) 0;background:var(--color-bg)}.services__grid{gap:var(--space-lg);grid-template-columns:repeat(4,1fr);display:grid}.service-card{border-radius:var(--radius-md);aspect-ratio:1;box-shadow:0 0 15px 3px var(--color-accent-glow);transition:box-shadow .5s var(--ease-out-expo);display:block;position:relative;overflow:hidden}.service-card:hover{box-shadow:0 0 30px 12px #c41e2a66}.service-card__img-wrap{position:absolute;inset:0}.service-card__img{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease-out-expo);will-change:transform}.service-card__overlay{transition:all .5s var(--ease-out-expo);background:linear-gradient(#00000014 0%,#00000040 55%,#000000e0 100%);position:absolute;inset:0}.service-card__title{padding:var(--space-lg);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-white);z-index:2;text-shadow:0 2px 8px #000000e6,0 4px 40px #000000e6;transition:all .4s var(--ease-out-expo);font-size:clamp(.9rem,1.5vw,1.15rem);font-weight:600;position:absolute;bottom:0;left:0;right:0}.service-card:hover .service-card__img{transform:scale(1.1)}.service-card:hover .service-card__overlay{background:linear-gradient(#00000026 0%,#00000073 50%,#c41e2a73 100%)}.service-card:hover .service-card__title{color:var(--color-accent-light);transform:translateY(-6px)}.service-card{opacity:0;transition:opacity .6s var(--ease-out-expo), transform .6s var(--ease-out-expo);transform:translateY(50px)}.services.reveal--visible .service-card{opacity:1;transform:translateY(0)}.services.reveal--visible .service-card:first-child{transition-delay:50ms}.services.reveal--visible .service-card:nth-child(2){transition-delay:.1s}.services.reveal--visible .service-card:nth-child(3){transition-delay:.15s}.services.reveal--visible .service-card:nth-child(4){transition-delay:.2s}.services.reveal--visible .service-card:nth-child(5){transition-delay:.25s}.services.reveal--visible .service-card:nth-child(6){transition-delay:.3s}.services.reveal--visible .service-card:nth-child(7){transition-delay:.35s}.services.reveal--visible .service-card:nth-child(8){transition-delay:.4s}.equipment{justify-content:center;align-items:center;min-height:125vh;display:flex;position:relative;overflow:hidden}.equipment__video-wrap{position:absolute;inset:0}.equipment__video,.equipment__poster{object-fit:cover;width:100%;height:100%}.equipment__poster{position:absolute;inset:0}.equipment__overlay{background:linear-gradient(#0a0a0ad9 0%,#00000073 50%,#0a0a0ad9 100%);position:absolute;inset:0}.equipment__content{z-index:2;text-align:center;padding:var(--space-3xl) var(--space-xl);text-shadow:0 2px 8px #000000e6,0 4px 40px #000000e6;position:relative}.equipment__text{color:var(--color-white);max-width:600px;margin:0 auto var(--space-2xl);font-size:clamp(1rem,2vw,1.5rem);line-height:1.5}.community{padding:var(--space-5xl) 0;background:linear-gradient(#0a0a0a,#2a1015)}.community__top{gap:var(--space-3xl);grid-template-columns:1fr 1fr;align-items:center;display:grid}.community__text-block{flex-direction:column;align-items:flex-start;display:flex}.community__text-block .section-title{text-align:left;margin-bottom:var(--space-lg)}.community__desc{color:var(--color-white);margin-bottom:var(--space-2xl);font-size:1.05rem;line-height:1.75}.community__gallery-grid{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.community__gallery-grid img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-md);width:100%;transition:all .5s var(--ease-out-expo);filter:brightness(.85);box-shadow:0 0 15px 1px var(--color-image-glow)}.community__gallery-grid img:hover{filter:brightness();box-shadow:0 0 40px 14px var(--color-image-glow);transform:scale(1.04)}.story{padding:var(--space-5xl) 0;background:var(--color-bg-alt)}.story__layout{gap:var(--space-3xl);grid-template-columns:1fr 1fr;align-items:center;display:grid}.story__text-block .section-title{text-align:left;margin-bottom:var(--space-lg)}.story__text{color:var(--color-white);margin-bottom:var(--space-lg);font-size:1rem;line-height:1.8}.story__text:last-child{margin-bottom:0}.story__media{border-radius:var(--radius-lg);position:relative;overflow:hidden}.story__video{border-radius:var(--radius-lg);aspect-ratio:9/16;object-fit:cover;width:100%;max-height:550px}.story__media:after{content:"";border-radius:var(--radius-lg);border:2px solid var(--color-accent);opacity:.3;pointer-events:none;transition:opacity .4s;position:absolute;inset:-2px}.story__media:hover:after{opacity:.6}.visit{justify-content:center;align-items:center;min-height:60vh;display:flex;position:relative;overflow:hidden}.visit__layout{z-index:2;gap:var(--space-3xl);width:100%;max-width:var(--container-max);padding:var(--space-4xl) var(--space-xl);grid-template-columns:1fr 1fr;align-items:center;display:grid;position:relative}.visit__bg{position:absolute;inset:0}.visit__bg img{object-fit:cover;width:100%;height:100%}.visit__bg-overlay{background:#000000c7;position:absolute;inset:0}.visit__content{text-align:center;text-shadow:0 2px 8px #000000e6,0 4px 40px #000000e6}.visit__address{font-family:var(--font-condensed);letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:var(--space-sm);font-size:1.15rem}.visit__phone{font-family:var(--font-condensed);color:var(--color-accent-light);margin-bottom:var(--space-2xl);transition:color var(--t-fast);font-size:1.1rem}.visit__phone:hover{color:var(--color-accent-hover)}.visit__hours-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-md);color:var(--color-white);font-size:1.3rem}.visit__hours p{color:var(--color-text-muted);margin-bottom:var(--space-xs);font-size:1rem}.visit__hours{margin-bottom:var(--space-2xl)}.visit__map{border-radius:var(--radius-md);border:1px solid var(--color-border);width:100%;height:300px;overflow:hidden}.visit__map iframe{width:100%;height:100%;display:block}.memberships{padding:var(--space-5xl) 0;background:linear-gradient(90deg,#000,#3d0a10)}.memberships__grid{gap:var(--space-xl);grid-template-columns:repeat(3,1fr);align-items:stretch;display:grid}.membership-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2xl);transition:all .4s var(--ease-out-expo);flex-direction:column;display:flex;position:relative;overflow:hidden}.membership-card:before{content:"";background:linear-gradient(90deg, transparent, var(--color-accent), transparent);opacity:0;width:60%;height:1px;transition:opacity .4s;position:absolute;top:0;left:50%;transform:translate(-50%)}.membership-card:hover{border-color:var(--color-border-light);transform:translateY(-6px);box-shadow:0 16px 50px #00000080}.membership-card:hover:before{opacity:1}.membership-card--featured{border-color:var(--color-accent);background:var(--color-bg-elevated)}.membership-card--featured:before{opacity:.5}.membership-card--featured:hover{border-color:var(--color-accent-hover);box-shadow:0 16px 50px var(--color-accent-glow)}.membership-card__badge{font-family:var(--font-condensed);text-transform:uppercase;letter-spacing:.12em;color:var(--color-accent-light);margin-bottom:var(--space-sm);font-size:.75rem;font-weight:600}.membership-card__name{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-lg);color:var(--color-white);font-size:1.6rem;font-weight:600}.membership-card__price{margin-bottom:var(--space-xl)}.membership-card__amount{font-family:var(--font-display);color:var(--color-white);font-size:3rem;font-weight:700}.membership-card__period{color:var(--color-text-muted);font-size:1rem}.membership-card__features{margin-bottom:var(--space-xl);flex:1}.membership-card__features li{align-items:flex-start;gap:var(--space-sm);color:var(--color-text-muted);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border);font-size:.95rem;display:flex}.membership-card__features li:last-child{border-bottom:none}.membership-card__features li i{color:var(--color-accent-light);flex-shrink:0;margin-top:5px;font-size:.75rem}.reviews{padding:var(--space-5xl) 0;background:var(--color-bg-alt)}.reviews__carousel{max-width:700px;margin:0 auto;position:relative;overflow:hidden}.reviews__track{transition:transform .6s var(--ease-out-expo);display:flex}.review-card{text-align:center;min-width:100%;padding:var(--space-xl)}.review-card__stars{color:var(--color-accent-light);letter-spacing:4px;margin-bottom:var(--space-lg);font-size:1.5rem}.review-card__text{color:var(--color-text-muted);margin:0 auto var(--space-xl);max-width:550px;font-size:1.1rem;font-style:italic;line-height:1.8}.review-card__author{font-family:var(--font-condensed);text-transform:uppercase;letter-spacing:.15em;color:var(--color-white);font-size:.9rem;font-weight:600}.reviews__controls{justify-content:center;align-items:center;gap:var(--space-lg);margin-top:var(--space-xl);display:flex}.reviews__arrow{border:1px solid var(--color-border);width:42px;height:42px;color:var(--color-text-muted);transition:all .3s var(--ease-out-expo);border-radius:50%;justify-content:center;align-items:center;font-size:.8rem;display:flex}.reviews__arrow:hover{border-color:var(--color-accent-light);color:var(--color-accent-light);box-shadow:0 0 15px var(--color-accent-glow);transform:scale(1.1)}.reviews__dots{gap:var(--space-sm);display:flex}.reviews__dot{border-radius:var(--radius-full);background:var(--color-border);width:8px;height:8px;transition:all .35s var(--ease-out-expo)}.reviews__dot--active{background:var(--color-accent-light);width:28px;box-shadow:0 0 10px var(--color-accent-glow);border-radius:4px}.social{padding:var(--space-4xl) 0;background:var(--color-bg);text-align:center}.social__links{justify-content:center;gap:var(--space-xl);display:flex}.social__link{border:1px solid var(--color-border);width:56px;height:56px;color:var(--color-text-muted);transition:all .35s var(--ease-out-expo);border-radius:50%;justify-content:center;align-items:center;font-size:1.3rem;display:flex;position:relative}.social__link:after{content:"";border:1px solid var(--color-accent);opacity:0;transition:all .35s var(--ease-out-expo);border-radius:50%;position:absolute;inset:-4px;transform:scale(.8)}.social__link:hover{border-color:var(--color-accent-light);color:var(--color-accent-light);box-shadow:0 8px 25px var(--color-accent-glow);transform:translateY(-4px)}.social__link:hover:after{opacity:.5;transform:scale(1)}.faq{padding:var(--space-5xl) 0;background:var(--color-bg-alt)}.faq__category{margin-bottom:var(--space-3xl)}.faq__category-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent-light);margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border);font-size:1.3rem;font-weight:600}.faq__item{border-bottom:1px solid var(--color-border)}.faq__question{width:100%;padding:var(--space-lg) 0;color:var(--color-text);text-align:left;transition:color var(--t-fast);justify-content:space-between;align-items:center;font-size:1rem;font-weight:500;display:flex}.faq__question:hover{color:var(--color-accent-light)}.faq__icon{color:var(--color-text-muted);transition:transform .4s var(--ease-out-expo), color .3s ease;margin-left:var(--space-md);flex-shrink:0;font-size:1.4rem;font-weight:300}.faq__item--open .faq__icon{color:var(--color-accent-light);transform:rotate(45deg)}.faq__answer{max-height:0;transition:max-height .5s var(--ease-out-expo), padding .5s var(--ease-out-expo);overflow:hidden}.faq__item--open .faq__answer{max-height:400px;padding-bottom:var(--space-lg)}.faq__answer p{color:var(--color-text-muted);font-size:.95rem;line-height:1.7}.faq__contact{text-align:center;padding-top:var(--space-3xl)}.faq__contact h3{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-lg);color:var(--color-white);font-size:1.5rem}.footer{padding:var(--space-4xl) 0 var(--space-2xl);background:var(--color-bg);border-top:1px solid var(--color-border)}.footer__grid{gap:var(--space-3xl);margin-bottom:var(--space-3xl);grid-template-columns:1fr 1fr 1fr;display:grid}.footer__heading{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.12em;color:var(--color-white);margin-bottom:var(--space-lg);font-size:.85rem;font-weight:600}.footer__list li{margin-bottom:var(--space-sm)}.footer__list a{color:var(--color-text-muted);transition:color var(--t-fast);font-size:.9rem}.footer__list a:hover{color:var(--color-accent-light)}.footer__col--logo{justify-content:flex-end;align-items:flex-start;display:flex}.footer__logo-img{opacity:.5;border-radius:var(--radius-sm);filter:drop-shadow(0 0 6px #ffffff40);height:100px;transition:opacity .3s}.footer__logo-img:hover{opacity:.8}.footer__bottom{border-top:1px solid var(--color-border);padding-top:var(--space-xl);text-align:center;color:var(--color-text-dim);font-size:.85rem}.reveal{opacity:0;transition:opacity var(--t-reveal), transform var(--t-reveal);transform:translateY(50px)}.reveal--visible{opacity:1;transform:translateY(0)}.reveal--left{opacity:0;transform:translate(-60px)}.reveal--left.reveal--visible{opacity:1;transform:translate(0)}.reveal--right{opacity:0;transform:translate(60px)}.reveal--right.reveal--visible{opacity:1;transform:translate(0)}.reveal--scale{opacity:0;transform:scale(.92)}.reveal--scale.reveal--visible{opacity:1;transform:scale(1)}.parallax-bg{will-change:transform;transition:transform .1s linear}@media (max-width:992px){.header__nav,.header__cta{display:none}.header__menu-toggle{display:flex}.services__grid{grid-template-columns:repeat(2,1fr)}.community__top{gap:var(--space-2xl);grid-template-columns:1fr}.community__text-block{text-align:center;align-items:center}.community__text-block .section-title{text-align:center}.visit__layout,.story__layout{gap:var(--space-2xl);grid-template-columns:1fr}.story__text-block .section-title{text-align:center}.story__video{max-height:400px;margin:0 auto}.memberships__grid{grid-template-columns:1fr;max-width:440px;margin:0 auto}.footer__grid{grid-template-columns:1fr 1fr}.footer__col--logo{grid-column:span 2;justify-content:center}}@media (max-width:576px){:root{--space-xl:1.25rem}.hero__title{font-size:clamp(2.5rem,12vw,3.5rem)}.hero__actions{flex-direction:column;align-items:center}.hero__actions .btn{width:100%;max-width:280px}.services__grid{gap:var(--space-md);grid-template-columns:1fr 1fr}.community__gallery-grid{grid-template-columns:1fr 1fr}.equipment{min-height:50vh}.footer__grid{gap:var(--space-2xl);grid-template-columns:1fr}.footer__col--logo{grid-column:auto;justify-content:center}}.page-section{padding:var(--space-4xl) 0}.page-section--alt{background:var(--color-bg-alt)}.page-hero{padding-top:calc(var(--header-height) + var(--space-3xl));padding-bottom:var(--space-3xl);text-align:center}.page-hero__title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--color-white);margin-bottom:var(--space-md);font-size:clamp(2.2rem,5vw,3.5rem);font-weight:700}.page-hero__desc{color:var(--color-text-muted);max-width:700px;margin:0 auto;font-size:.95rem;line-height:1.7}.form{max-width:640px;margin:0 auto}.form__row{gap:var(--space-md);margin-bottom:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.form__group{flex-direction:column;display:flex}.form__group--full{grid-column:1/-1}.form__label{font-family:var(--font-condensed);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:var(--space-xs);font-size:.8rem;font-weight:600}.form__input,.form__select,.form__textarea{border:1px solid var(--color-border-light);border-radius:var(--radius-sm);width:100%;color:var(--color-text);font-family:var(--font-body);background:0 0;outline:none;padding:.85em 1em;font-size:.95rem;transition:border-color .3s}.form__input:focus,.form__select:focus,.form__textarea:focus{border-color:var(--color-accent-light)}.form__input::placeholder,.form__textarea::placeholder{color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.06em;font-size:.85rem}.form__select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23999' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-position:right 1em center;background-repeat:no-repeat;padding-right:2.5em}.form__select option{background:var(--color-bg-card);color:var(--color-text)}.form__textarea{resize:vertical;min-height:140px}.form__submit{margin-top:var(--space-lg);text-align:center}@media (max-width:576px){.form__row{grid-template-columns:1fr}}.faq-grid{padding:var(--space-4xl) 0;background:var(--color-bg)}.faq-grid__category{margin-bottom:var(--space-3xl)}.faq-grid__category-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent-light);margin-bottom:var(--space-lg);padding-left:var(--space-sm);border-left:3px solid var(--color-accent);font-size:1.1rem;font-weight:600}.faq-grid__items{gap:var(--space-sm) var(--space-xl);grid-template-columns:1fr 1fr;display:grid}.faq-grid__item{align-items:center;gap:var(--space-sm);padding:var(--space-md);background:var(--color-bg-card);border-radius:var(--radius-sm);border:1px solid var(--color-border);cursor:pointer;transition:border-color .3s;display:flex}.faq-grid__item:hover{border-color:var(--color-accent)}.faq-grid__icon{background:var(--color-accent);width:20px;height:20px;color:var(--color-white);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.65rem;font-weight:700;display:flex}.faq-grid__text{color:var(--color-text-muted);flex:1;font-size:.9rem}.faq-grid__expand{color:var(--color-accent);flex-shrink:0;font-size:.85rem;transition:transform .3s}.faq-grid__item--open .faq-grid__expand{transform:rotate(45deg)}.faq-grid__answer{padding:var(--space-md);background:var(--color-bg-card);border-radius:var(--radius-sm);border:1px solid var(--color-border);grid-column:1/-1;display:none;overflow:hidden}.faq-grid__answer--open{display:block}.faq-grid__answer p{color:var(--color-text-muted);font-size:.9rem;line-height:1.7}@media (max-width:768px){.faq-grid__items{grid-template-columns:1fr}}.membership-cards-row{gap:var(--space-xl);padding:calc(var(--header-height) + var(--space-2xl)) 0 var(--space-4xl);grid-template-columns:repeat(3,1fr);align-items:stretch;display:grid}.mem-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2xl) var(--space-xl);text-align:center;flex-direction:column;align-items:center;display:flex;position:relative}.mem-card--featured{border-color:var(--color-accent);background:var(--color-bg-elevated);z-index:1;transform:scale(1.04)}.mem-card__badge{font-family:var(--font-condensed);text-transform:uppercase;letter-spacing:.14em;color:var(--color-accent-light);margin-bottom:var(--space-sm);font-size:.7rem;font-weight:600}.mem-card__name{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--color-white);margin-bottom:var(--space-xs);font-size:clamp(1.3rem,2.5vw,1.8rem);font-weight:700}.mem-card__price{font-family:var(--font-display);color:var(--color-text-muted);margin-bottom:var(--space-xl);font-size:1rem}.mem-card__benefits-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.1em;color:var(--color-white);margin-bottom:var(--space-md);font-size:.85rem;font-weight:600}.mem-card__benefits{width:100%;margin-bottom:var(--space-xl);text-align:left}.mem-card__benefits li{align-items:center;gap:var(--space-sm);color:var(--color-text-muted);padding:var(--space-xs) 0;font-size:.85rem;display:flex}.mem-card__benefits li i{color:var(--color-accent-light);flex-shrink:0;font-size:.7rem}.mem-card__actions{gap:var(--space-sm);flex-direction:column;width:100%;margin-top:auto;display:flex}.mem-card__actions .btn{width:100%;padding:.7em 1.5em;font-size:.8rem}.btn--ghost{color:var(--color-text-muted);border:1px solid var(--color-border);background:0 0}.btn--ghost:hover{border-color:var(--color-text-muted);color:var(--color-white)}@media (max-width:768px){.membership-cards-row{max-width:400px;padding-left:var(--space-xl);padding-right:var(--space-xl);grid-template-columns:1fr;margin:0 auto}.mem-card--featured{transform:none}}.compare{padding:var(--space-4xl) 0;text-align:center}.compare__btn{margin-bottom:var(--space-2xl)}.compare__table-wrap{overflow-x:auto}.compare__table{border-collapse:collapse;width:100%;font-size:.9rem}.compare__table th,.compare__table td{padding:var(--space-md) var(--space-lg);text-align:center;border-bottom:1px solid var(--color-border)}.compare__table th{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-white);background:var(--color-bg-card);font-size:.85rem;font-weight:600}.compare__table th:first-child,.compare__table td:first-child{text-align:left;color:var(--color-text);font-weight:500}.compare__table td{color:var(--color-text-muted)}.compare__table .check{color:var(--color-accent-light)}.compare__table .cross{color:var(--color-text-dim)}.compare__table .text-accent{color:var(--color-accent-light)}.day-passes{padding:var(--space-4xl) 0}.day-passes__grid{gap:var(--space-xl);margin-top:var(--space-2xl);grid-template-columns:repeat(3,1fr);display:grid}.day-pass{border:1px solid var(--color-accent);border-radius:var(--radius-lg);padding:var(--space-2xl);text-align:center;flex-direction:column;align-items:center;display:flex}.day-pass__name{font-family:var(--font-display);text-transform:uppercase;color:var(--color-white);margin-bottom:var(--space-md);font-size:clamp(1.4rem,3vw,2rem);font-weight:700;line-height:1.1}.day-pass__desc{color:var(--color-text-muted);margin-bottom:var(--space-lg);font-size:.85rem;line-height:1.6}.day-pass__price{font-family:var(--font-display);color:var(--color-white);margin-bottom:var(--space-lg);font-size:2rem;font-weight:700}.day-pass__features{text-align:left;width:100%;margin-bottom:var(--space-xl)}.day-pass__features li{align-items:flex-start;gap:var(--space-sm);color:var(--color-text-muted);padding:var(--space-xs) 0;font-size:.85rem;display:flex}.day-pass__features li i{color:var(--color-accent-light);margin-top:4px;font-size:.7rem}.day-passes__note{text-align:center;color:var(--color-text-dim);margin-top:var(--space-2xl);font-size:.85rem;font-style:italic}@media (max-width:768px){.day-passes__grid{grid-template-columns:1fr;max-width:380px;margin-left:auto;margin-right:auto}}.tour-form-section{padding-top:calc(var(--header-height) + var(--space-3xl));padding-bottom:var(--space-3xl)}.tour-banner{justify-content:center;align-items:center;min-height:45vh;display:flex;position:relative;overflow:hidden}.tour-banner__bg{position:absolute;inset:0}.tour-banner__bg img,.tour-banner__bg video{object-fit:cover;width:100%;height:100%}.tour-banner__overlay{background:#000000a6;position:absolute;inset:0}.tour-banner__content{z-index:2;text-align:center;position:relative}.tour-banner__title{font-family:var(--font-display);text-transform:uppercase;color:var(--color-white);margin-bottom:var(--space-lg);font-size:clamp(2rem,5vw,3.5rem);font-weight:700}.gm-section{padding:var(--space-3xl) 0}.gm-card{grid-template-columns:1fr 1.2fr;gap:0;max-width:900px;min-height:420px;margin:0 auto;display:grid;position:relative}.gm-card__info{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg) 0 0 var(--radius-lg);padding:var(--space-2xl);z-index:2;flex-direction:column;justify-content:center;display:flex}.gm-card__name{font-family:var(--font-display);text-transform:uppercase;color:var(--color-white);font-size:1.6rem;font-weight:700;line-height:1.2}.gm-card__role{font-family:var(--font-display);text-transform:uppercase;color:var(--color-accent-light);margin-bottom:var(--space-lg);font-size:1rem;font-weight:600}.gm-card__bio{color:var(--color-text-muted);font-size:.9rem;line-height:1.7}.gm-card__photo{border-radius:0 var(--radius-lg) var(--radius-lg) 0;overflow:hidden}.gm-card__photo img{object-fit:cover;width:100%;height:100%}@media (max-width:768px){.gm-card{grid-template-columns:1fr}.gm-card__info{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.gm-card__photo{border-radius:0 0 var(--radius-lg) var(--radius-lg);min-height:300px}}.staff-category{padding:var(--space-3xl) 0;text-align:center}.staff-category__title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--color-white);margin-bottom:var(--space-2xl);font-size:clamp(1.5rem,3vw,2.2rem);font-weight:700}.staff-grid{justify-content:center;gap:var(--space-2xl);flex-wrap:wrap;display:flex}.staff-member{flex-direction:column;align-items:center;width:160px;display:flex}.staff-member__avatar{width:140px;height:140px;margin-bottom:var(--space-md);border:2px solid var(--color-border);border-radius:50%;overflow:hidden}.staff-member__avatar img{object-fit:cover;width:100%;height:100%}.staff-member__name{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--color-white);text-align:center;font-size:.85rem;font-weight:600}.promise{padding:var(--space-4xl) 0;text-align:center}.promise__text{max-width:750px;color:var(--color-text-muted);margin:0 auto;font-size:.95rem;line-height:1.8}.career-cta{grid-template-columns:1fr 1fr;min-height:400px;display:grid;overflow:hidden}.career-cta__text{background:var(--color-bg-card);padding:var(--space-3xl);flex-direction:column;justify-content:center;display:flex}.career-cta__title{font-family:var(--font-display);text-transform:uppercase;color:var(--color-white);margin-bottom:var(--space-lg);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:700;line-height:1.1}.career-cta__desc{color:var(--color-text-muted);margin-bottom:var(--space-xl);font-size:.9rem;line-height:1.7}.career-cta__image{position:relative}.career-cta__image img{object-fit:cover;width:100%;height:100%}@media (max-width:768px){.career-cta{grid-template-columns:1fr}.career-cta__image{min-height:250px}}.trainers-grid{gap:var(--space-md);max-width:800px;margin:0 auto var(--space-4xl);grid-template-columns:1fr 1fr;display:grid}.trainer-card{aspect-ratio:4/3;border-radius:var(--radius-md);position:relative;overflow:hidden}.trainer-card img{object-fit:cover;width:100%;height:100%}.trainer-card__overlay{background:linear-gradient(#0000 50%,#000c 100%);position:absolute;inset:0}.trainer-card__name{bottom:var(--space-lg);left:var(--space-lg);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--color-white);z-index:2;font-size:clamp(1rem,2vw,1.4rem);font-weight:700;position:absolute}@media (max-width:576px){.trainers-grid{grid-template-columns:1fr}}.connect-form{padding:var(--space-4xl) 0}.workout-plans{padding:var(--space-4xl) 0;text-align:center}.workout-plans__subtitle{color:var(--color-text-muted);margin-bottom:var(--space-2xl);font-size:.95rem}.workout-plans__grid{gap:var(--space-xl);grid-template-columns:repeat(3,1fr);max-width:800px;margin:0 auto;display:grid}.plan-card{border:1px solid var(--color-accent);border-radius:var(--radius-lg);padding:var(--space-2xl) var(--space-xl);text-align:center;align-items:center;gap:var(--space-lg);flex-direction:column;display:flex}.plan-card__name{font-family:var(--font-display);text-transform:uppercase;color:var(--color-white);font-size:clamp(1.3rem,2.5vw,1.8rem);font-weight:700;line-height:1.15}.plan-card .btn{padding:.65em 1.6em;font-size:.8rem}@media (max-width:576px){.workout-plans__grid{grid-template-columns:1fr;max-width:280px}}.toast{bottom:var(--space-xl);right:var(--space-xl);background:var(--color-bg-card);border:1px solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-lg) var(--space-xl);align-items:center;gap:var(--space-md);z-index:9999;opacity:0;pointer-events:none;transition:opacity .4s,transform .4s;display:flex;position:fixed;transform:translateY(20px)}.toast--visible{opacity:1;pointer-events:auto;transform:translateY(0)}.toast__icon{color:var(--color-accent-light);flex-shrink:0;font-size:1.4rem}.toast__title{font-family:var(--font-display);text-transform:uppercase;color:var(--color-white);font-size:.95rem;font-weight:600}.toast__msg{color:var(--color-text-muted);font-size:.85rem}.toast__close{color:var(--color-text-muted);cursor:pointer;padding:0 0 0 var(--space-sm);background:0 0;border:none;font-size:1.2rem;transition:color .3s}.toast__close:hover{color:var(--color-white)}
