:root{--black:#070707;--soft:#111;--panel:#171717;--red:#ed1c24;--white:#fff;--gray:#b8b8b8;--line:rgba(255,255,255,.14);--max:1440px;--header:82px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--black);color:var(--white);font-family:"Montserrat",Arial,sans-serif;line-height:1.6;overflow-x:hidden}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.skip-link{position:fixed;left:16px;top:-80px;background:var(--white);color:#000;padding:12px 18px;z-index:9999}.skip-link:focus{top:16px}.site-header{position:fixed;inset:0 0 auto 0;height:var(--header);padding:0 4vw;display:flex;align-items:center;justify-content:space-between;z-index:1000;transition:.3s;background:linear-gradient(rgba(0,0,0,.7),transparent)}.site-header.scrolled{background:rgba(5,5,5,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand img{width:225px;display:block;max-height:74px;object-fit:contain}.site-nav{display:flex;align-items:center;gap:clamp(18px,2.2vw,38px)}.site-nav a{font-size:.72rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;position:relative}.site-nav a:not(.nav-join):after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--red);transition:.25s}.site-nav a:hover:after{width:100%}.site-nav .nav-join{background:var(--red);padding:13px 19px}.menu-toggle{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer}.menu-toggle span{display:block;width:27px;height:2px;background:#fff;margin:6px auto;transition:.25s}.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;padding:calc(var(--header) + 50px) 6vw 10vh;overflow:hidden}.hero-image{position:absolute;inset:0;background:url("../assets/images/hero.webp") center 48%/cover no-repeat;animation:heroZoom 18s ease-in-out infinite alternate;transform:scale(1.04)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.6) 48%,rgba(0,0,0,.22) 100%),linear-gradient(0deg,rgba(0,0,0,.75),transparent 50%)}.hero-content{position:relative;z-index:2;max-width:1030px}.kicker{color:var(--red);font-size:.73rem;font-weight:800;letter-spacing:.2em;margin-bottom:20px}.hero h1,.section h2,.video-feature h2,.membership h2,.modal h2{font-family:"Oswald",Impact,sans-serif;font-weight:700;line-height:.91;letter-spacing:-.02em;text-transform:uppercase}.hero h1{font-size:clamp(4.4rem,9.5vw,10.2rem);margin-bottom:28px}.hero h1 span{color:var(--red)}.hero-copy{max-width:730px;color:#ddd;font-size:clamp(1rem,1.35vw,1.18rem);margin-bottom:34px}.actions{display:flex;gap:13px;flex-wrap:wrap}.button{border:1px solid transparent;min-width:190px;padding:15px 25px;display:inline-flex;align-items:center;justify-content:center;text-transform:uppercase;font-size:.73rem;font-weight:800;letter-spacing:.12em;cursor:pointer;transition:.25s}.button:hover{transform:translateY(-3px)}.button-red{background:var(--red);color:#fff}.button-red:hover{background:#ff3037}.button-outline{border-color:rgba(255,255,255,.65);background:rgba(0,0,0,.18);color:#fff}.button-outline:hover{background:#fff;color:#000}.button-dark{background:#080808;color:#fff}.button-dark:hover{background:#fff;color:#000}.scroll-prompt{position:absolute;right:4vw;bottom:5vh;z-index:2;display:flex;align-items:center;gap:13px;transform:rotate(90deg);transform-origin:right center;text-transform:uppercase;font-size:.62rem;letter-spacing:.2em}.scroll-prompt span{display:block;width:50px;height:1px;background:#fff}.section{padding:clamp(90px,10vw,155px) 6vw}.intro{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:center}.intro h2,.section-heading h2,.contact-heading h2{font-size:clamp(3.6rem,7.3vw,7.8rem)}.intro-copy p{color:var(--gray);font-size:clamp(1rem,1.35vw,1.16rem);margin-bottom:18px}.arrow-link{display:inline-flex;margin-top:20px;text-transform:uppercase;font-size:.72rem;font-weight:800;letter-spacing:.12em}.arrow-link span{color:var(--red);margin-left:12px;transition:.25s}.arrow-link:hover span{transform:translateX(6px)}.video-feature{min-height:84vh;position:relative;display:flex;align-items:flex-end;padding:8vw 6vw}.feature-image{position:absolute;inset:0;background:url("../assets/images/tour-feature.webp") center/cover no-repeat}.feature-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.22)),linear-gradient(0deg,rgba(0,0,0,.72),transparent 45%)}.feature-content{position:relative;z-index:2;max-width:900px}.video-feature h2{font-size:clamp(3.7rem,7.5vw,8rem);margin-bottom:24px}.feature-content>p:not(.kicker){max-width:670px;color:#ddd;margin-bottom:30px}.play-button{display:flex;align-items:center;gap:16px;background:none;border:0;color:#fff;text-transform:uppercase;font-size:.74rem;font-weight:800;letter-spacing:.13em;cursor:pointer}.play-icon{width:58px;height:58px;border:1px solid rgba(255,255,255,.7);border-radius:50%;display:grid;place-items:center;padding-left:3px;transition:.25s}.play-button:hover .play-icon{background:var(--red);border-color:var(--red);transform:scale(1.08)}.quick-facts{background:var(--red);display:grid;grid-template-columns:repeat(4,1fr);padding:58px 5vw}.fact{text-align:center;padding:15px;border-right:1px solid rgba(255,255,255,.3)}.fact:last-child{border:0}.fact strong{font-family:"Oswald",Impact,sans-serif;font-size:clamp(2.3rem,4vw,4.3rem);line-height:1;display:block}.fact span{font-size:.62rem;font-weight:800;letter-spacing:.14em}.amenities{background:var(--soft)}.section-heading{max-width:var(--max);margin:0 auto 62px}.feature-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:var(--line)}.feature-card{position:relative;min-height:610px;overflow:hidden;background:#111}.feature-card-large{grid-column:1/-1;min-height:720px}.feature-card img{position:absolute;width:100%;height:100%;object-fit:cover;transition:transform .7s}.feature-card:hover img{transform:scale(1.045)}.card-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.94),transparent 62%)}.card-copy{position:absolute;left:38px;right:38px;bottom:36px}.card-copy span{color:var(--red);font-size:.72rem;font-weight:800}.card-copy h3{font-family:"Oswald",Impact,sans-serif;font-size:clamp(2.6rem,4.7vw,5rem);line-height:1;text-transform:uppercase;margin:7px 0 12px}.card-copy p{color:#d0d0d0;max-width:530px}.amenity-list{max-width:var(--max);margin:55px auto 0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.amenity-list p{padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-transform:uppercase;font-size:.73rem;font-weight:700;letter-spacing:.09em}.amenity-list p:before{content:"+";color:var(--red);margin-right:10px}.team{background:#070707}.team-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.team-card{background:var(--panel);overflow:hidden}.team-photo{aspect-ratio:4/5;overflow:hidden}.team-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:.65s}.team-card:hover img{transform:scale(1.035)}.team-details{padding:27px 28px 31px;border-top:4px solid var(--red)}.team-details p{color:var(--gray);font-size:.65rem;font-weight:700;letter-spacing:.1em}.team-details h3{font-family:"Oswald",Impact,sans-serif;font-size:clamp(2.2rem,4vw,4.2rem);line-height:1;margin-top:8px}.membership{background:var(--red);min-height:75vh;display:grid;place-items:center;text-align:center;padding:9vw 6vw}.membership-inner{max-width:1050px}.membership img{width:105px;height:105px;object-fit:contain;margin-bottom:24px}.membership .kicker{color:#111}.membership h2{font-size:clamp(3.8rem,8vw,8.4rem);margin-bottom:23px}.membership p:not(.kicker){max-width:690px;margin:0 auto 31px}.contact{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:center}.contact-heading .button{margin-top:32px}.contact-info{display:grid;grid-template-columns:repeat(2,1fr);gap:35px}.contact-info>div{border-top:1px solid var(--line);padding-top:18px}.contact-info span{display:block;color:var(--red);font-size:.65rem;font-weight:800;letter-spacing:.15em;margin-bottom:9px}.contact-info a,.contact-info p{color:#d4d4d4}.contact-info a:hover{color:#fff}.exterior-banner{height:68vh;overflow:hidden}.exterior-banner img{width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:grayscale(1)}.site-footer{background:#030303;padding:55px 6vw 30px;display:grid;grid-template-columns:1.2fr 1fr .7fr;gap:35px;border-top:1px solid var(--line)}.footer-brand img{width:220px}.footer-brand p{color:#777;font-size:.76rem;margin-top:10px}.footer-links,.footer-social{display:flex;gap:18px 25px;flex-wrap:wrap;align-content:start}.footer-links a,.footer-social a{color:#aaa;text-transform:uppercase;font-size:.68rem;font-weight:700;letter-spacing:.09em}.footer-links a:hover,.footer-social a:hover{color:var(--red)}.copyright{grid-column:1/-1;color:#666;font-size:.7rem;margin-top:25px}.modal{position:fixed;inset:0;z-index:2000;display:none;place-items:center;padding:24px}.modal.open{display:grid}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.88);backdrop-filter:blur(8px)}.modal-panel{position:relative;z-index:2;width:min(960px,100%);background:#101010;padding:30px;border:1px solid var(--line);box-shadow:0 30px 100px #000}.modal-panel h2{font-size:clamp(2.7rem,6vw,5.5rem);margin-bottom:22px}.modal video{width:100%;max-height:68vh;background:#000;display:block}.modal-close{position:absolute;right:16px;top:12px;background:none;border:0;color:#fff;font-size:2.3rem;line-height:1;cursor:pointer}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}@media(max-width:980px){.menu-toggle{display:block;z-index:1002}.site-nav{position:fixed;inset:0;background:rgba(5,5,5,.98);flex-direction:column;justify-content:center;gap:28px;transform:translateX(100%);transition:.35s}.site-nav.open{transform:none}.site-nav a{font-size:1rem}.menu-toggle.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.intro,.contact{grid-template-columns:1fr}.quick-facts{grid-template-columns:repeat(2,1fr)}.fact:nth-child(2){border-right:0}.fact:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.3)}.feature-card-large{min-height:620px}.amenity-list{grid-template-columns:repeat(2,1fr)}.site-footer{grid-template-columns:1fr 1fr}.footer-social{grid-column:1/-1}}@media(max-width:650px){:root{--header:70px}.site-header{padding:0 20px}.brand img{width:170px}.hero{padding:calc(var(--header) + 45px) 22px 10vh}.hero-image{background-position:62% center}.hero h1{font-size:clamp(4rem,19vw,6.2rem)}.button{width:100%}.scroll-prompt{display:none}.section{padding:80px 22px}.intro h2,.section-heading h2,.contact-heading h2{font-size:clamp(3.1rem,15vw,5rem)}.video-feature{min-height:74vh;padding:75px 22px 45px}.video-feature h2{font-size:clamp(3.2rem,15vw,5.3rem)}.quick-facts{padding:30px 0}.fact{padding:23px 8px}.fact strong{font-size:2.6rem}.fact span{font-size:.52rem}.feature-grid{grid-template-columns:1fr}.feature-card,.feature-card-large{grid-column:auto;min-height:520px}.card-copy{left:24px;right:24px;bottom:25px}.amenity-list{grid-template-columns:1fr}.team-grid{grid-template-columns:1fr}.membership{padding:90px 22px}.membership h2{font-size:clamp(3.2rem,16vw,5.4rem)}.contact-info{grid-template-columns:1fr}.exterior-banner{height:50vh}.site-footer{grid-template-columns:1fr;padding:45px 22px 26px}.footer-social{grid-column:auto}.modal{padding:10px}.modal-panel{padding:22px 14px 14px}.modal-panel .kicker,.modal-panel h2{margin-left:8px}.modal-close{right:10px;top:6px}}

.site-nav a.active:not(.nav-join):after{width:100%}.page-hero{min-height:78svh;position:relative;display:flex;align-items:flex-end;padding:calc(var(--header) + 60px) 6vw 9vh;background-position:center;background-size:cover}.page-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.28)),linear-gradient(0deg,rgba(0,0,0,.75),transparent 55%)}.page-hero-content{position:relative;z-index:2;max-width:1050px}.page-hero h1{font-family:"Oswald",Impact,sans-serif;font-size:clamp(4rem,8.5vw,9rem);line-height:.91;text-transform:uppercase;margin-bottom:24px}.page-hero-content>p:not(.kicker){max-width:700px;color:#ddd;font-size:clamp(1rem,1.4vw,1.18rem);margin-bottom:30px}.about-hero{background-image:url("../assets/images/dumbbells.webp")}.membership-hero{background-image:url("../assets/images/bench.webp")}.team-page-hero{background-image:url("../assets/images/arms.webp")}.gallery-hero{background-image:url("../assets/images/cable.webp")}.faq-hero{background-image:url("../assets/images/cardio.webp")}.contact-hero{background-image:url("../assets/images/exterior.webp")}.editorial-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.editorial-grid h2,.values h2,.fine-print h2{font-family:"Oswald",Impact,sans-serif;font-size:clamp(3.5rem,7vw,7.2rem);line-height:.92;text-transform:uppercase}.prose p{color:var(--gray);font-size:clamp(1rem,1.35vw,1.16rem);margin-bottom:20px}.split-feature{display:grid;grid-template-columns:1.1fr .9fr;min-height:70vh;background:var(--soft)}.split-feature img{width:100%;height:100%;object-fit:cover;filter:grayscale(.35)}.split-feature-copy{padding:8vw 6vw;align-self:center}.split-feature-copy h2,.profile-copy h2{font-family:"Oswald",Impact,sans-serif;font-size:clamp(3.5rem,6.5vw,7rem);line-height:.92;text-transform:uppercase;margin-bottom:24px}.split-feature-copy p,.profile-copy p{color:var(--gray);margin-bottom:30px}.values{background:var(--soft)}.value-grid,.benefit-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--line)}.value-grid article,.benefit-grid article{background:var(--panel);padding:42px 34px;min-height:270px}.value-grid span{color:var(--red);font-weight:800}.value-grid h3,.benefit-grid h3{font-family:"Oswald",Impact,sans-serif;font-size:2.5rem;line-height:1;text-transform:uppercase;margin:18px 0}.value-grid p,.benefit-grid p{color:var(--gray)}.cta-strip{background:var(--red);padding:55px 6vw;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-strip .kicker{color:#111}.cta-strip h2{font-family:"Oswald",Impact,sans-serif;font-size:clamp(2.7rem,5vw,5.5rem);line-height:1;text-transform:uppercase}.membership-benefits{background:var(--soft)}.benefit-grid{grid-template-columns:repeat(4,1fr)}.benefit-grid strong{font-family:"Oswald",Impact,sans-serif;color:var(--red);font-size:3.1rem}.red-page-cta{min-height:68vh}.fine-print{text-align:center}.fine-print p{color:var(--gray);font-size:1.1rem;margin-top:22px}.fine-print a{color:var(--red)}.team-profile{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.team-profile.reverse .profile-image{order:2}.profile-image{aspect-ratio:4/5;overflow:hidden;background:#111}.profile-image img{width:100%;height:100%;object-fit:cover;object-position:center top}.gallery-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.gallery-item{position:relative;min-height:580px;overflow:hidden;background:#111}.gallery-item:nth-child(1),.gallery-item:nth-child(6){grid-column:1/-1;min-height:720px}.gallery-item img{width:100%;height:100%;object-fit:cover;position:absolute;transition:transform .7s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent 48%)}.gallery-item figcaption{position:absolute;z-index:2;left:28px;bottom:24px;font-family:"Oswald",Impact,sans-serif;font-size:2.2rem;text-transform:uppercase}.faq-section{max-width:1100px;margin:auto}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line);padding:0}.faq-item summary{list-style:none;cursor:pointer;padding:28px 0;display:flex;justify-content:space-between;gap:20px;font-family:"Oswald",Impact,sans-serif;font-size:clamp(1.5rem,3vw,2.3rem);text-transform:uppercase}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary span{color:var(--red);transition:.25s}.faq-item[open] summary span{transform:rotate(45deg)}.faq-item p{color:var(--gray);max-width:850px;padding:0 0 28px}.contact-page-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:var(--line)}.contact-card{background:var(--panel);padding:45px 38px;min-height:290px}.contact-card>span{display:block;color:var(--red);font-size:.68rem;font-weight:800;letter-spacing:.15em;margin-bottom:16px}.contact-card h3{font-family:"Oswald",Impact,sans-serif;font-size:clamp(2rem,4vw,4rem);line-height:1.05;text-transform:uppercase}.contact-card h3 a:hover{color:var(--red)}.email-line{font-size:clamp(1.3rem,2.6vw,2.5rem)!important;margin-top:8px}.text-button{background:none;border:0;color:#fff;cursor:pointer}.map-banner{height:70vh;position:relative;overflow:hidden}.map-banner a,.map-banner img{display:block;width:100%;height:100%}.map-banner img{object-fit:cover;filter:grayscale(1)}.map-banner a:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.3)}.map-banner span{position:absolute;z-index:2;right:5vw;bottom:5vw;background:var(--red);padding:16px 22px;font-size:.72rem;font-weight:800;letter-spacing:.1em}
@media(max-width:980px){.editorial-grid,.split-feature,.team-profile{grid-template-columns:1fr}.split-feature img{max-height:65vh}.value-grid{grid-template-columns:1fr}.benefit-grid{grid-template-columns:repeat(2,1fr)}.team-profile.reverse .profile-image{order:0}.gallery-item,.gallery-item:nth-child(1),.gallery-item:nth-child(6){min-height:560px}.cta-strip{align-items:flex-start;flex-direction:column}.contact-page-grid{grid-template-columns:1fr}}
@media(max-width:650px){.page-hero{min-height:70svh;padding:calc(var(--header) + 45px) 22px 8vh}.page-hero h1{font-size:clamp(3.6rem,17vw,5.8rem)}.split-feature-copy{padding:80px 22px}.benefit-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.gallery-item,.gallery-item:nth-child(1),.gallery-item:nth-child(6){grid-column:auto;min-height:500px}.contact-card{padding:34px 24px}.map-banner{height:52vh}.cta-strip{padding:45px 22px}}

@keyframes heroZoom{from{transform:scale(1.04)}to{transform:scale(1.09)}}

/* 2026 premium refresh */
.section-heading{position:relative}.section-heading:after,.intro-heading:after,.contact-heading:after{content:"";display:block;width:0;height:3px;background:var(--red);margin-top:28px;transition:width .9s cubic-bezier(.2,.75,.2,1)}.section-heading.visible:after,.intro-heading.visible:after,.contact-heading.visible:after{width:82px}
.hero-content.visible .kicker{animation:fadeSlide .8s both}.hero-content.visible h1{animation:fadeSlide .9s .12s both}.hero-content.visible .hero-copy{animation:fadeSlide .9s .24s both}.hero-content.visible .actions{animation:fadeSlide .9s .34s both}
.button{position:relative;overflow:hidden}.button:after{content:"";position:absolute;inset:-60% auto -60% -35%;width:24%;transform:rotate(18deg);background:rgba(255,255,255,.2);transition:left .55s}.button:hover:after{left:120%}
.feature-card:after,.product-card:after{content:"";position:absolute;inset:0;border:1px solid transparent;pointer-events:none;transition:.3s}.feature-card:hover:after,.product-card:hover:after{border-color:rgba(237,28,36,.7);box-shadow:inset 0 0 45px rgba(237,28,36,.08)}
.team-grid{grid-template-columns:repeat(3,1fr)}.team-placeholder{background:radial-gradient(circle at 50% 35%,#232323 0,#111 48%,#080808 100%);display:grid;place-items:center;position:relative}.team-placeholder:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.08)}.placeholder-badge{display:grid;place-items:center;gap:18px;text-align:center;position:relative;z-index:2;padding:30px}.placeholder-badge img{width:82px!important;height:82px!important;object-fit:contain!important;opacity:.8;filter:none!important}.placeholder-badge span{font-size:.68rem;font-weight:800;letter-spacing:.2em;color:#aaa}
.products{background:#0c0c0c}.section-lede{max-width:690px;color:var(--gray);margin-top:24px}.product-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.product-card{position:relative;background:var(--panel);overflow:hidden;transition:transform .35s}.product-card:hover{transform:translateY(-8px)}.product-placeholder{aspect-ratio:4/5;display:grid;place-items:center;background:linear-gradient(145deg,#202020,#0d0d0d);position:relative}.product-placeholder:before{content:"";position:absolute;width:58%;aspect-ratio:1;border:2px solid rgba(237,28,36,.5);transform:rotate(45deg)}.product-placeholder span{position:relative;z-index:2;font-family:"Oswald",Impact,sans-serif;font-size:clamp(1.4rem,2.4vw,2.4rem);letter-spacing:.06em;text-align:center}.product-copy{padding:25px;border-top:3px solid var(--red)}.product-copy p{color:var(--gray);font-size:.62rem;font-weight:700;letter-spacing:.12em}.product-copy h3{font-family:"Oswald",Impact,sans-serif;font-size:2.25rem;line-height:1;margin:8px 0 15px}.product-copy strong{color:var(--red);font-size:1.15rem}
.copyright a{color:#999}.copyright a:hover{color:var(--red)}
.gallery-item:nth-child(1),.gallery-item:nth-child(6){grid-column:auto;min-height:580px}.gallery-item:nth-child(1),.gallery-item:nth-child(9){grid-column:1/-1;min-height:720px}
@keyframes fadeSlide{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.team-grid{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.team-grid,.product-grid{grid-template-columns:1fr}.gallery-item:nth-child(1),.gallery-item:nth-child(9){grid-column:auto;min-height:500px}.product-placeholder{aspect-ratio:5/4}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.hero-image{animation:none!important}}

/* Craft V2 */
.hero-image{background-image:url("../assets/images/hero-led.webp");background-position:center 42%;animation:heroBreath 14s ease-in-out infinite alternate}
.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.58) 45%,rgba(0,0,0,.22) 100%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 45%)}
.site-header:not(.scrolled){background:linear-gradient(180deg,rgba(0,0,0,.74),transparent);backdrop-filter:none}
.site-header.scrolled{background:rgba(8,8,8,.82);backdrop-filter:blur(16px);box-shadow:0 10px 35px rgba(0,0,0,.28)}
.built-different{display:grid;grid-template-columns:1.06fr .94fr;padding:0;background:#0a0a0a;min-height:760px}
.built-image{overflow:hidden;min-height:760px}.built-image img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 1.2s cubic-bezier(.2,.75,.2,1)}.built-image.visible img{transform:scale(1.045)}
.built-copy{padding:9vw 7vw;align-self:center}.built-copy h2{font-family:"Oswald",Impact,sans-serif;font-size:clamp(4.2rem,8vw,9rem);line-height:.88;margin:10px 0 30px}.built-copy h2:after{content:"";display:block;width:84px;height:4px;background:var(--red);margin-top:28px;transform:scaleX(0);transform-origin:left;transition:transform .9s .25s}.built-copy.visible h2:after{transform:scaleX(1)}.built-copy>p:not(.kicker){color:var(--gray);font-size:clamp(1rem,1.35vw,1.16rem);max-width:620px;margin-bottom:32px}
.team-card{background:#111;overflow:hidden;transition:transform .4s,box-shadow .4s}.team-card:hover{transform:translateY(-9px);box-shadow:0 18px 45px rgba(237,28,36,.13)}.team-photo{aspect-ratio:3/2;overflow:hidden;background:#111}.team-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .55s}.team-card:hover .team-photo img{transform:scale(1.035)}.team-details{border-top:3px solid var(--red)}.team-details .arrow-link{margin-top:16px;font-size:.7rem}
.product-grid-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.product-image{aspect-ratio:3/2;overflow:hidden;background:#050505}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.product-card:hover .product-image img{transform:scale(1.035)}.product-grid-two .product-copy{padding:30px}.product-grid-two .product-copy strong{font-size:.78rem;letter-spacing:.12em}
@keyframes heroBreath{from{transform:scale(1.02)}to{transform:scale(1.075)}}
@media(max-width:900px){.built-different{grid-template-columns:1fr;min-height:0}.built-image{min-height:58vh}.built-copy{padding:90px 6vw}.product-grid-two{grid-template-columns:1fr}}
@media(max-width:650px){.hero-image{background-position:center}.built-image{min-height:50vh}.built-copy{padding:72px 22px}.team-photo{aspect-ratio:4/3}.product-grid-two{grid-template-columns:1fr}.product-image{aspect-ratio:4/3}}

/* Logo correction: use the emblem in navigation and a clean stacked lockup in the footer. */
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img{width:58px;height:64px;max-height:none;object-fit:contain;object-position:center;display:block}
.footer-brand img{width:170px;height:auto;max-height:none;object-fit:contain;display:block}
@media(max-width:650px){.brand img{width:50px;height:56px}.footer-brand img{width:145px}}

/* Final navigation logo lockup */
.brand img{width:150px;height:64px;max-height:64px;object-fit:contain;object-position:left center;display:block}
@media(max-width:650px){.brand img{width:122px;height:52px;max-height:52px}}

/* Final compact navigation lockup */
.brand{display:inline-flex;align-items:center;gap:10px;min-width:max-content}
.brand img{width:46px;height:50px;max-height:50px;object-fit:contain;object-position:center;flex:0 0 auto}
.brand-type{display:flex;flex-direction:column;line-height:.82;color:#fff;transform:translateY(1px)}
.brand-type strong{font-family:"Oswald",Impact,sans-serif;font-size:1.55rem;letter-spacing:.035em;font-weight:700}
.brand-type small{font-family:"Montserrat",Arial,sans-serif;font-size:.58rem;letter-spacing:.34em;font-weight:600;margin-left:2px;margin-top:6px}
@media(max-width:650px){.brand{gap:8px}.brand img{width:38px;height:42px;max-height:42px}.brand-type strong{font-size:1.28rem}.brand-type small{font-size:.49rem;letter-spacing:.3em;margin-top:5px}}


/* Final Craft emblem and visible product pricing */
.brand{display:inline-flex;align-items:center;min-width:auto;gap:0}
.brand img{width:58px;height:64px;max-height:64px;object-fit:contain;object-position:center;display:block;filter:none}
.brand-type{display:none!important}
.footer-brand img{width:112px;height:126px;max-height:none;object-fit:contain;object-position:center;display:block;margin-bottom:18px;filter:none}
.membership-inner>img{width:104px;height:116px;object-fit:contain;display:block;margin:0 auto 24px;filter:none}
.product-price{font-family:"Oswald",Impact,sans-serif;color:#fff;font-size:clamp(2rem,3.2vw,3rem);font-weight:700;line-height:1;margin-top:18px}
.product-availability{color:var(--red);font-size:.72rem;font-weight:800;letter-spacing:.16em;margin-top:8px}
@media(max-width:650px){.brand img{width:48px;height:53px;max-height:53px}.footer-brand img{width:96px;height:108px}.membership-inner>img{width:88px;height:98px}.product-price{font-size:2.35rem}}

/* Final team profile content */
.team-profile{align-items:start}.profile-copy{align-self:center}.profile-copy .kicker{line-height:1.65}.profile-tagline{font-family:"Oswald",Impact,sans-serif!important;color:#fff!important;font-size:clamp(1.5rem,2.6vw,2.4rem)!important;line-height:1.05;text-transform:uppercase;margin:-6px 0 24px!important}.profile-emphasis{color:#fff!important;font-weight:800;font-size:1.06rem}.profile-services{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.profile-services article{background:#111;border:1px solid var(--line);border-top:3px solid var(--red);padding:24px}.profile-services h3{font-family:"Oswald",Impact,sans-serif;font-size:1.45rem;line-height:1.05;text-transform:uppercase;margin-bottom:12px}.profile-services h3 span{display:block;color:var(--red);font-family:"Montserrat",Arial,sans-serif;font-size:.68rem;letter-spacing:.08em;margin-top:8px}.profile-services p{font-size:.92rem;margin:0;color:var(--gray)}.pricing-panel{margin:28px 0;background:#0d0d0d;border:1px solid var(--line);padding:28px}.pricing-panel .kicker{margin-bottom:14px}.pricing-list{display:grid}.pricing-list>div{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:14px 0;border-bottom:1px solid var(--line)}.pricing-list>div:last-child{border-bottom:0}.pricing-list span{color:#ddd;font-size:.9rem}.pricing-list strong{color:#fff;font-size:.95rem;white-space:nowrap}.pricing-list .pricing-note{display:block}.pricing-list .pricing-note strong{display:block;color:var(--gray);white-space:normal;margin-top:5px;font-weight:600;line-height:1.5}.focus-line{margin:26px 0 30px;padding-left:16px;border-left:3px solid var(--red)}.focus-line span{display:block;color:var(--red);font-size:.66rem;font-weight:800;letter-spacing:.2em;margin-bottom:6px}.focus-line p{margin:0;color:#ddd;font-size:.9rem}.transformation-line{display:grid;gap:4px;margin:28px 0;font-family:"Oswald",Impact,sans-serif;font-size:clamp(1.9rem,3.5vw,3.3rem);line-height:.95}.transformation-line strong:nth-child(2){color:var(--red)}
@media(max-width:1100px){.profile-services{grid-template-columns:1fr}}
@media(max-width:980px){.team-profile{gap:42px}.profile-image{max-width:680px;width:100%;margin:auto}.profile-copy{width:100%}}
@media(max-width:650px){.profile-services article,.pricing-panel{padding:20px}.pricing-list>div{display:grid;gap:5px}.pricing-list strong{white-space:normal}.profile-copy .kicker{font-size:.64rem}}

/* Final powerlifting image pair + coach contact details */
.feature-card-powerlifting .powerlifting-media{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#080808}
.feature-card-powerlifting .powerlifting-media img{position:relative;width:100%;height:100%;object-fit:cover;transition:transform .7s}
.feature-card-powerlifting:hover .powerlifting-media img{transform:scale(1.035)}
.coach-contact{margin:0 0 20px;padding:17px 20px;background:#101010;border:1px solid var(--line);border-left:3px solid var(--red);display:flex;align-items:center;justify-content:space-between;gap:18px}
.coach-contact span{color:var(--red);font-size:.65rem;font-weight:800;letter-spacing:.16em}
.coach-contact a{font-family:"Oswald",Impact,sans-serif;font-size:1.45rem;letter-spacing:.02em;transition:.2s}
.coach-contact a:hover{color:var(--red)}
@media(max-width:650px){.feature-card-powerlifting .powerlifting-media{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.coach-contact{align-items:flex-start;flex-direction:column;gap:6px}.coach-contact a{font-size:1.3rem}}

/* Expanded powerlifting gallery — show the full frame of both photos */
.feature-card-powerlifting{grid-column:1/-1;min-height:760px;background:#050505}
.feature-card-powerlifting .powerlifting-media{inset:0;grid-template-columns:1fr 1fr;gap:8px;padding:8px;background:#050505}
.feature-card-powerlifting .powerlifting-media img{width:100%;height:100%;object-fit:contain;object-position:center;background:#050505}
.feature-card-powerlifting:hover .powerlifting-media img{transform:none}
@media(max-width:900px){.feature-card-powerlifting{min-height:1050px}.feature-card-powerlifting .powerlifting-media{grid-template-columns:1fr;grid-template-rows:1fr 1fr}}
@media(max-width:650px){.feature-card-powerlifting{min-height:900px}.feature-card-powerlifting .powerlifting-media{gap:5px;padding:5px}}


/* Two-image cardio feature to balance the amenities grid */
.feature-card-cardio .cardio-media{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#080808}
.feature-card-cardio .cardio-media img{position:relative;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .7s}
.feature-card-cardio:hover .cardio-media img{transform:scale(1.025)}
@media(max-width:650px){.feature-card-cardio{min-height:700px}.feature-card-cardio .cardio-media{grid-template-columns:1fr;grid-template-rows:1fr 1fr}}

/* Final cardio framing — show the complete frame of both photos */
.feature-card-cardio{grid-column:1/-1;min-height:760px;background:#050505}
.feature-card-cardio .cardio-media{inset:0;grid-template-columns:1fr 1fr;gap:8px;padding:8px;background:#050505}
.feature-card-cardio .cardio-media img{width:100%;height:100%;object-fit:contain;object-position:center;background:#050505}
.feature-card-cardio:hover .cardio-media img{transform:none}
@media(max-width:900px){.feature-card-cardio{min-height:1050px}.feature-card-cardio .cardio-media{grid-template-columns:1fr;grid-template-rows:1fr 1fr}}
@media(max-width:650px){.feature-card-cardio{min-height:900px}.feature-card-cardio .cardio-media{gap:5px;padding:5px}}

/* Removed secondary cardio + powerlifting photos per final request */
.feature-card-cardio .cardio-media,.feature-card-powerlifting .powerlifting-media{display:block!important;padding:0!important;}
.feature-card-cardio .cardio-media img,.feature-card-powerlifting .powerlifting-media img{width:100%!important;height:100%!important;object-fit:cover!important;}
.feature-card-cardio,.feature-card-powerlifting{min-height:580px!important;}


/* Final mobile navigation fix: keep the full-screen menu viewport-fixed after scrolling.
   The scrolled header uses backdrop-filter, which can otherwise make a fixed child
   position itself relative to the header instead of the viewport on mobile Safari. */
@media(max-width:980px){
  .site-header.menu-open{
    background:#050505!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    border-bottom:0!important;
  }
  .site-header.menu-open .site-nav{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:100vh!important;
    z-index:1001!important;
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  .site-header.menu-open .menu-toggle{position:relative;z-index:1002}
}
