.navbar{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:transparent;transition:background .4s,box-shadow .4s}.navbar.scrolled{background:var(--charcoal);box-shadow:0 2px 20px #0009}.nav-logo{font-family:Bebas Neue,sans-serif;font-size:1.8rem;color:var(--red);letter-spacing:.08em;flex-shrink:0}.nav-links{display:flex;align-items:center;gap:2rem;list-style:none}.nav-link{font-family:Outfit,sans-serif;font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--white);opacity:.85;transition:opacity .2s,color .2s}.nav-link:hover{opacity:1;color:var(--gold)}.btn-member-login{font-family:Outfit,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.5rem 1.2rem;border:1.5px solid var(--red);color:var(--red);background:transparent;transition:background .25s,color .25s;flex-shrink:0}.btn-member-login:hover{background:var(--red);color:var(--white)}.hamburger{display:none;flex-direction:column;justify-content:space-between;width:24px;height:18px;background:none;border:none;cursor:pointer;padding:0;flex-shrink:0}.hamburger span{display:block;width:100%;height:2px;background:var(--white);transition:transform .3s,opacity .3s}.hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.mobile-menu{display:none;position:fixed;top:var(--nav-h);left:0;right:0;background:var(--charcoal);padding:2rem 5%;flex-direction:column;gap:0;box-shadow:0 8px 30px #00000080;transform:translateY(-10px);opacity:0;pointer-events:none;transition:transform .3s,opacity .3s}.mobile-menu.open{transform:translateY(0);opacity:1;pointer-events:auto}.mobile-menu ul{list-style:none}.mobile-link{display:block;padding:.9rem 0;font-family:Outfit,sans-serif;font-size:1rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--white);border-bottom:1px solid rgba(255,255,255,.06);transition:color .2s}.mobile-link:hover{color:var(--gold)}.mobile-member-login{color:var(--red)}.mobile-member-login:hover{color:var(--gold)}@media (max-width: 900px){.nav-links,.btn-member-login{display:none}.hamburger,.mobile-menu{display:flex}}.footer{background:var(--charcoal);padding:5rem 5% 2rem}.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1.5fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.08)}.footer-brand-name{display:block;font-family:Bebas Neue,sans-serif;font-size:2rem;letter-spacing:.08em;color:var(--white);margin-bottom:.5rem}.footer-tagline{font-size:.85rem;color:var(--gray);margin-bottom:1.5rem}.footer-social{display:flex;gap:1rem}.footer-social a{color:var(--gray);transition:color .2s}.footer-social a:hover{color:var(--white)}.footer-col-title{font-family:Outfit,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gray);margin-bottom:1.2rem}.footer-nav{list-style:none;display:flex;flex-direction:column;gap:.6rem}.footer-nav a{font-size:.9rem;color:#f0f0f0a6;transition:color .2s}.footer-nav a:hover{color:var(--white)}.footer-member-login{color:var(--red)!important}.footer-member-login:hover{color:var(--gold)!important}.footer-info p{font-size:.9rem;color:var(--gray);line-height:1.9}.footer-info a{color:var(--gray);transition:color .2s}.footer-info a:hover{color:var(--white)}.footer-bottom{padding-top:2rem;font-size:.8rem;color:#8889;text-align:center}@media (max-width: 900px){.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1 / -1}}@media (max-width: 600px){.footer-top{grid-template-columns:1fr}}.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:0 5%;overflow:hidden}.hero-video-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.hero-video-wrap video{width:100%;height:100%;object-fit:cover;display:block}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#0a0a0ad1,#0a0a0a8c)}.hero-content{position:relative;z-index:1;max-width:700px;padding-top:var(--nav-h)}.hero-eyebrow{display:block;font-family:Outfit,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1.5rem}.hero-heading{font-family:Bebas Neue,sans-serif;font-size:clamp(4.5rem,10vw,8rem);line-height:.9;letter-spacing:-.01em;text-transform:uppercase;color:var(--white);white-space:pre-line;margin-bottom:1.5rem}.hero-sub{font-size:1.1rem;color:#f0f0f0bf;max-width:480px;margin-bottom:2.5rem;line-height:1.7}.hero-ctas{display:flex;gap:1rem;flex-wrap:wrap}.section-classes{background:var(--charcoal);padding:7rem 5%}.classes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:1rem}.class-card{background:var(--black);display:flex;flex-direction:column;overflow:hidden}.class-card-img-wrap{aspect-ratio:4/3;overflow:hidden}.class-card-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.class-card:hover .class-card-img-wrap img{transform:scale(1.04)}.class-card-body{padding:1.6rem;display:flex;flex-direction:column;flex:1}.class-card-schedule{font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:.6rem}.class-card-title{font-family:Bebas Neue,sans-serif;font-size:1.8rem;letter-spacing:.02em;color:var(--white);margin-bottom:.8rem}.class-card-desc{font-size:.9rem;color:#f0f0f0a6;line-height:1.7;flex:1;margin-bottom:1.5rem}.class-card-btn{display:inline-block;font-family:Outfit,sans-serif;font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.75rem 1.5rem;border:1.5px solid var(--red);color:var(--red);background:transparent;transition:background .25s,color .25s;align-self:flex-start}.class-card-btn:hover{background:var(--red);color:var(--white)}.section-about{background:var(--black);padding:7rem 5%;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.about-text p{font-size:1rem;color:#f0f0f0b3;line-height:1.8;margin-bottom:1.2rem}.about-image{display:flex;justify-content:center}.about-image img{width:75%;aspect-ratio:3/4;object-fit:cover}.section-marquee{background:var(--black);overflow:hidden;padding:1.5rem 0;border-top:1px solid rgba(212,160,23,.15);border-bottom:1px solid rgba(212,160,23,.15)}.marquee-inner{display:flex;white-space:nowrap;width:max-content}.marquee-inner span{font-family:Bebas Neue,sans-serif;font-size:clamp(1.4rem,3vw,2rem);letter-spacing:.08em;color:var(--gold);padding-right:3rem;opacity:.6}.section-shop{background:var(--charcoal);padding:7rem 5%}.shop-preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:1rem}.product-card{background:var(--black);display:flex;flex-direction:column}.product-card-name{font-size:.85rem;font-weight:600;color:var(--white);margin-bottom:.5rem;line-height:1.4}.product-card-price{font-family:Bebas Neue,sans-serif;font-size:1.3rem;color:var(--gold);margin-bottom:.8rem}.product-card-price.tbd{font-family:Outfit,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.08em;color:var(--gray)}.product-card-btn{display:inline-block;font-family:Outfit,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.6rem 1.2rem;background:var(--red);color:var(--white);transition:background .25s;margin-top:auto;align-self:flex-start}.shop-preview-cta{margin-top:3rem;text-align:center}.section-coaches{background:var(--black);padding:7rem 5%}.coaches-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:1rem}.coach-card{display:flex;flex-direction:column}.coach-card-img-wrap{aspect-ratio:3/4;overflow:hidden;background:var(--charcoal)}.coach-card-img-wrap img{width:100%;height:100%;object-fit:cover;filter:grayscale(20%);transition:filter .4s}.coach-card:hover .coach-card-img-wrap img{filter:grayscale(0%)}.coach-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--charcoal);border:2px dashed var(--gold);color:var(--gold);font-family:Bebas Neue,sans-serif;font-size:1.8rem;letter-spacing:.05em;text-align:center}.coach-card-body{padding:1.4rem 0}.coach-name{font-family:Bebas Neue,sans-serif;font-size:1.6rem;color:var(--white);letter-spacing:.03em;margin-bottom:.3rem}.coach-title{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin-bottom:.8rem}.coach-bio{font-size:.88rem;color:#f0f0f099;line-height:1.75}.section-stats{background:var(--charcoal);padding:5rem 5%}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;text-align:center}.stat-number{display:block;font-family:Bebas Neue,sans-serif;font-size:clamp(3.5rem,7vw,5.5rem);color:var(--gold);line-height:1;margin-bottom:.5rem}.stat-label{font-size:.75rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gray)}.section-contact{background:var(--black);padding:7rem 5%}.contact-teaser-inner{max-width:600px}.contact-teaser-inner p{font-size:1.05rem;color:#f0f0f0a6;line-height:1.8}@media (max-width: 1100px){.shop-preview-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.classes-grid,.coaches-grid{grid-template-columns:1fr 1fr}.section-about{grid-template-columns:1fr;gap:3rem}}@media (max-width: 600px){.classes-grid,.coaches-grid,.shop-preview-grid,.stats-grid{grid-template-columns:1fr}.hero-ctas{flex-direction:column}}.page-header-label{display:block;font-family:Outfit,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gray);margin-bottom:1rem}.section-contact-page{background:var(--black);padding:6rem 5%}.contact-inner{display:grid;grid-template-columns:1fr 2fr;gap:5rem;align-items:start}.contact-detail{margin-bottom:2rem}.contact-detail-label{display:block;font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gray);margin-bottom:.5rem}.contact-detail p,.contact-detail a{font-size:.95rem;color:#f0f0f0bf;line-height:1.7}.contact-detail a:hover{color:var(--white)}.contact-form{display:flex;flex-direction:column;gap:1.2rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.form-field{display:flex;flex-direction:column;gap:.4rem}.form-field label{font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gray)}.form-field input,.form-field select,.form-field textarea{background:var(--charcoal);border:1px solid rgba(255,255,255,.1);color:var(--white);font-family:Outfit,sans-serif;font-size:.95rem;padding:.8rem 1rem;width:100%;transition:border-color .2s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--red)}.form-field select{cursor:pointer}.form-field select option{background:#111}.form-field textarea{resize:vertical;min-height:140px}.radio-group{display:flex;gap:2rem;padding-top:.2rem}.radio-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#f0f0f0bf;cursor:pointer}.radio-label input[type=radio]{accent-color:var(--red);width:16px;height:16px}@media (max-width: 900px){.contact-inner{grid-template-columns:1fr;gap:3rem}.form-row{grid-template-columns:1fr}}.page-header-heading{font-family:Bebas Neue,sans-serif;font-size:clamp(3rem,6vw,5rem);line-height:.95;text-transform:uppercase;color:var(--white);margin-bottom:1rem}.page-header-sub{font-size:1rem;color:var(--gray);max-width:500px;line-height:1.7}.section-shop-full{background:var(--black);padding:5rem 5%}.shop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.product-card{background:var(--charcoal);display:flex;flex-direction:column}.product-card-image{aspect-ratio:1/1;overflow:hidden;background:#111}.product-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.product-card:hover .product-card-image img{transform:scale(1.04)}.product-card-body{padding:1.2rem;display:flex;flex-direction:column;flex:1}.product-card-name{font-size:.88rem;font-weight:600;color:var(--white);margin-bottom:.4rem;line-height:1.4}.product-card-price{font-family:Bebas Neue,sans-serif;font-size:1.4rem;color:var(--gold);margin-bottom:1rem}.product-card-price.tbd{font-family:Outfit,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.08em;color:var(--gray);text-transform:uppercase}.product-card-btn{display:inline-block;font-family:Outfit,sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.65rem 1.2rem;background:var(--red);color:var(--white);transition:background .25s;margin-top:auto;align-self:flex-start}.product-card-btn:hover{background:var(--red-dark)}@media (max-width: 1100px){.shop-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 750px){.shop-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.shop-grid{grid-template-columns:1fr}}.page-header{background:var(--charcoal);padding:calc(var(--nav-h) + 4rem) 5% 4rem}.page-header-label{display:block;font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gray);margin-bottom:1rem}.page-header-heading{font-family:Bebas Neue,sans-serif;font-size:clamp(3rem,6vw,5rem);line-height:.95;text-transform:uppercase;color:var(--white)}.member-login-bar{background:var(--black);padding:1.2rem 5%;display:flex;align-items:center;gap:1.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.member-login-bar span{font-size:.9rem;color:var(--gray)}.section-memberships{background:var(--black);padding:4rem 5% 6rem}.tabs{display:flex;gap:0;border-bottom:2px solid rgba(255,255,255,.08);margin-bottom:3rem;overflow-x:auto}.tab-btn{font-family:Outfit,sans-serif;font-size:.85rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gray);background:none;border:none;padding:.9rem 2rem;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;white-space:nowrap;transition:color .2s,border-color .2s}.tab-btn:hover{color:var(--white)}.tab-btn.active{color:var(--white);border-bottom-color:var(--red)}.plans-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;max-width:900px}.plan-card{background:var(--charcoal);padding:2.5rem;display:flex;flex-direction:column;position:relative}.plan-card.featured{border-top:3px solid var(--red)}.plan-badge{position:absolute;top:-1px;right:2rem;background:var(--red);color:var(--white);font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .8rem}.plan-name{font-family:Bebas Neue,sans-serif;font-size:1.8rem;letter-spacing:.02em;color:var(--white);margin-bottom:1rem}.plan-price-wrap{display:flex;align-items:baseline;gap:.3rem;margin-bottom:.5rem}.plan-price{font-family:Bebas Neue,sans-serif;font-size:3.5rem;color:var(--gold);line-height:1}.plan-period{font-size:.9rem;color:var(--gray)}.plan-note{font-size:.78rem;color:var(--gray);margin-bottom:1.5rem}.plan-features{list-style:none;display:flex;flex-direction:column;gap:.6rem;margin:1.5rem 0 2rem;flex:1}.plan-features li{font-size:.9rem;color:#f0f0f0bf;padding-left:1.2rem;position:relative}.plan-features li:before{content:"—";position:absolute;left:0;color:var(--red);font-size:.75rem}.plan-cta{align-self:flex-start;margin-top:auto}.private-sessions-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:900px}.private-table-heading{font-family:Bebas Neue,sans-serif;font-size:1.6rem;color:var(--white);letter-spacing:.03em;margin-bottom:1.2rem;padding-bottom:.8rem;border-bottom:1px solid rgba(255,255,255,.1)}.private-row{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.private-label{flex:1;font-size:.9rem;color:#f0f0f0bf}.private-price{font-family:Bebas Neue,sans-serif;font-size:1.3rem;color:var(--gold);min-width:4rem;text-align:right}.private-book-btn{font-family:Outfit,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.4rem .9rem;background:var(--red);color:var(--white);transition:background .2s}.private-book-btn:hover{background:var(--red-dark)}.stripe-note{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--gray);margin-top:3rem;letter-spacing:.06em}@media (max-width: 700px){.plans-grid,.private-sessions-grid{grid-template-columns:1fr}.tab-btn{padding:.8rem 1.2rem;font-size:.78rem}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--black: #0a0a0a;--charcoal: #1a1a1a;--red: #c0392b;--red-dark: #9b2e22;--gold: #d4a017;--white: #f0f0f0;--gray: #888888;--nav-h: 72px}html{scroll-behavior:auto}body{background:var(--black);color:var(--white);font-family:Outfit,sans-serif;font-size:1rem;line-height:1.7;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.section-label{display:block;font-family:Outfit,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gray);margin-bottom:1rem}.section-label--light{color:#f0f0f073}.section-heading{font-family:Bebas Neue,sans-serif;font-size:clamp(3rem,5vw,4.5rem);line-height:.95;letter-spacing:-.01em;text-transform:uppercase;color:var(--white);margin-bottom:2rem}.section-heading--dark{color:var(--black)}.btn{display:inline-block;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.9rem 2.2rem;border:2px solid transparent;cursor:pointer;transition:background .25s,color .25s,border-color .25s}.btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.btn-red{background:var(--red);color:var(--white);border-color:var(--red)}.btn-red:hover{background:var(--red-dark);border-color:var(--red-dark)}.btn-red:active{background:#7d2419;border-color:#7d2419}.btn-outline{background:transparent;color:var(--white);border-color:var(--white)}.btn-outline:hover{background:var(--white);color:var(--black)}.btn-outline:active{background:#ccc;border-color:#ccc;color:var(--black)}.will-animate{opacity:0}
