html,body{background:#171918}
@font-face{font-family:BarlowCondensed;src:url('/assets/fonts/barlow-condensed-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
:root{--ink:#171918;--light:#f3f4ed;--coral:#ff754f;--muted:#bfc4bb;--line:#4a5048;--dark-line:#a8482b;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--ink);color:var(--light);font:400 16px/1.65 Manrope,sans-serif}::selection{background:var(--coral);color:var(--ink)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:BarlowCondensed,Manrope,sans-serif;font-weight:700;line-height:.98;letter-spacing:-.02em;text-wrap:balance}p{max-width:65ch}h2{font-size:clamp(3rem,5.5vw,5rem)}a{color:inherit;text-underline-offset:.22em}a,summary{-webkit-tap-highlight-color:#ff754f70}a:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:5px}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;flex:none}img{display:block;width:100%;height:auto}section{scroll-margin-top:24px}.wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}.skip{position:absolute;z-index:20;left:16px;top:16px;padding:12px 18px;background:var(--coral);color:var(--ink);transform:translateY(-160%)}.skip:focus{transform:none}.club-header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:26px;border-bottom:1px solid var(--line)}.club-brand{display:flex;align-items:center;gap:16px;font-family:BarlowCondensed,Manrope,sans-serif;font-weight:700;font-size:1.9rem;line-height:.87;letter-spacing:-.02em;text-decoration:none;min-height:44px}.club-brand>span{display:grid;place-items:center;min-width:44px;min-height:44px;font-size:1.45rem;border:1px solid var(--coral);color:var(--coral);line-height:1}.club-header nav{display:flex;gap:28px}.club-header nav a{display:flex;align-items:center;min-height:44px;font-size:.85rem;font-weight:700;text-decoration:none}.club-header nav a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:54px;padding:16px 22px;background:var(--coral);color:var(--ink);font-weight:700;line-height:1.35;text-decoration:none}.button:hover{background:#ff987b}.button.small{min-height:48px;padding:12px 18px;font-size:.85rem;gap:24px}.button.light{background:var(--light)}.button.light:hover{background:var(--coral)}.club-hero{display:grid;grid-template-columns:.94fr 1.06fr;gap:56px;align-items:center;padding-block:58px 72px}.hero-copy h1{font-size:clamp(4rem,7.6vw,6rem);line-height:.95;max-width:9ch}.hero-copy h1 span{color:var(--coral)}.hero-copy>p{margin-block:28px;max-width:34ch;font-size:1rem;color:var(--muted)}.club-photo{align-self:stretch;display:flex;flex-direction:column}.club-photo img{flex:1;min-height:420px;object-fit:cover;object-position:center;aspect-ratio:1.08}.club-photo figcaption{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;padding-top:14px;font-size:.75rem;line-height:1.5;color:var(--muted)}.club-photo figcaption>span{color:var(--coral)}.club-classes{background:var(--coral);color:var(--ink);padding-block:76px}.classes-heading{display:grid;grid-template-columns:1fr .65fr;align-items:end;gap:100px;margin-bottom:50px}.classes-heading>p{max-width:33ch;line-height:1.6}.class-list article{display:grid;grid-template-columns:1fr 1fr .7fr;align-items:center;gap:42px;border-top:1px solid var(--dark-line);padding:30px 0}.class-list article:last-child{border-bottom:1px solid var(--dark-line)}.class-name h3{font-size:2.7rem;line-height:1}.class-name>p{font-size:.78rem;margin-top:10px}.class-list article>p{font-size:.93rem;max-width:36ch}.class-list article>a{justify-self:end;display:inline-flex;align-items:center;gap:18px;min-height:44px;font-size:.85rem;font-weight:700}.club-week{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding-block:88px}.week-heading p{max-width:30ch;color:var(--muted);font-size:.9rem;margin-top:26px}.schedule-day{padding:25px 0;border-top:1px solid var(--line)}.schedule-day:first-child{padding-top:0;border-top:0}.schedule-day:last-child{padding-bottom:0}.schedule-day h3{font-size:2rem;letter-spacing:0;color:var(--coral)}.schedule-day ul{list-style:none;margin:18px 0 0;padding:0}.schedule-day li{display:grid;grid-template-columns:1fr 1.2fr .6fr;gap:22px;padding:12px 0;align-items:baseline;font-size:.95rem}.schedule-day li>time{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.schedule-day li>span:last-child{color:var(--muted);text-align:right;font-size:.8rem;font-variant-numeric:tabular-nums;white-space:nowrap}.first-visit{padding-block:76px;background:var(--light);color:var(--ink)}.visit-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.visit-intro{max-width:46ch;margin-bottom:30px;color:#41473e}.visit-layout details{border-top:1px solid #b7beb1}.visit-layout details:last-child{border-bottom:1px solid #b7beb1}.visit-layout summary{position:relative;cursor:pointer;list-style:none;font-weight:700;line-height:1.5;padding:22px 36px 22px 0}.visit-layout summary::-webkit-details-marker{display:none}.visit-layout summary:after{content:'';position:absolute;right:5px;top:27px;width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}.visit-layout details[open] summary:after{transform:rotate(225deg);top:31px}.visit-layout details p{padding:12px 36px 24px 0;font-size:.92rem;color:#41473e}.club-contact{padding-block:88px;display:grid;grid-template-columns:1.05fr 1fr;gap:90px;align-items:center}.club-contact h2{font-size:clamp(3.5rem,6.7vw,6rem)}.club-contact h2 span{color:var(--coral)}.contact-copy>p{color:var(--muted);margin-bottom:22px;max-width:40ch}.contact-copy>p+p{color:var(--light);margin-bottom:24px}.scope-link{display:flex;width:fit-content;align-items:center;min-height:44px;font-size:.83rem;margin-top:16px}.club-footer{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:30px;border-top:1px solid var(--line)}.club-footer>.club-brand{font-size:1.9rem;color:var(--coral)}.club-footer p{font-size:.73rem;color:var(--muted)}.club-footer p a{display:inline-flex;align-items:center;min-height:44px}.club-footer>a:last-child{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-size:.8rem}
@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.club-header{gap:24px}.club-header nav{gap:20px}.club-hero{gap:36px}.hero-copy h1{font-size:clamp(3.75rem,8vw,6rem)}.club-photo img{min-height:400px}.classes-heading{gap:50px}.class-list article{grid-template-columns:1fr 1fr;gap:18px 40px}.class-list article>a{grid-column:2;justify-self:start;margin-top:-8px}.class-name{grid-row:1/3}.club-week,.visit-layout,.club-contact{gap:50px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.club-header{flex-wrap:wrap;gap:18px;padding-block:20px}.club-brand{font-size:1.65rem}.club-brand>span{font-size:1.2rem;min-width:40px;min-height:40px}.club-header nav{order:3;justify-content:space-between;width:100%;gap:18px}.club-header nav a{font-size:.82rem}.button.small{padding:12px 14px;gap:16px;font-size:.8rem}.club-hero{grid-template-columns:1fr;gap:34px;padding-block:38px 48px}.hero-copy h1{font-size:clamp(4rem,15vw,6rem);max-width:9ch}.hero-copy>p{max-width:35ch;margin-block:24px;font-size:.95rem}.club-photo img{min-height:0;aspect-ratio:1.3;object-position:center}.club-photo figcaption{font-size:.7rem;padding-top:12px}.club-classes{padding-block:54px}.classes-heading{grid-template-columns:1fr;gap:24px;margin-bottom:32px}.classes-heading h2{font-size:3.2rem}.classes-heading>p{font-size:.95rem}.class-list article{grid-template-columns:1fr;gap:18px;padding:26px 0}.class-name{grid-row:auto}.class-name h3{font-size:2.6rem}.class-list article>p{max-width:40ch}.class-list article>a{grid-column:auto;margin-top:0}.club-week{grid-template-columns:1fr;gap:36px;padding-block:58px}.week-heading h2{font-size:3.3rem}.week-heading p{max-width:39ch;margin-top:20px}.schedule-day li{grid-template-columns:1fr 1.15fr .6fr;gap:10px;font-size:.88rem}.schedule-day li>span:last-child{font-size:.75rem}.schedule-day h3{font-size:1.9rem}.first-visit{padding-block:54px}.visit-layout{grid-template-columns:1fr;gap:30px}.visit-layout h2{font-size:3.25rem}.visit-intro{font-size:.95rem;margin-bottom:24px}.visit-layout summary{font-size:.95rem}.club-contact{grid-template-columns:1fr;gap:32px;padding-block:60px}.club-contact h2{font-size:clamp(3rem,13vw,4rem)}.contact-copy>p{font-size:.95rem}.club-footer{flex-wrap:wrap;gap:16px;padding-block:26px}.club-footer p{flex:1 1 200px}.club-footer>a:last-child{width:100%;justify-content:space-between}}
.schedule-day{padding:0;border-top:1px solid var(--line)}.schedule-day:first-child{border-top:1px solid var(--line)}.schedule-day:last-child{border-bottom:1px solid var(--line)}.schedule-day summary{display:grid;grid-template-columns:1fr auto 24px;align-items:center;gap:22px;cursor:pointer;list-style:none;min-height:96px;padding:24px 0}.schedule-day summary::-webkit-details-marker{display:none}.schedule-day summary h3{font-size:clamp(2rem,3.3vw,3rem)}.schedule-day summary>span{font-size:.75rem;color:var(--muted)}.schedule-day summary>svg{color:var(--coral)}.schedule-day[open] summary>svg{transform:rotate(180deg)}.schedule-day[open] summary h3{color:var(--light)}.schedule-day ul{margin:0;padding-bottom:24px}.schedule-day li{padding-block:14px}.schedule-day li+li{border-top:1px solid var(--line)}
@media(max-width:700px){.schedule-day summary{min-height:88px;gap:12px;padding-block:20px}.schedule-day summary h3{font-size:2rem}.schedule-day summary>span{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Form's display voice is a sports poster, not a scaled-down marketing hero. */
.hero-copy h1 .form-title-top{display:block;font-size:.67em;line-height:1.05;color:var(--light);letter-spacing:.015em}
.hero-copy h1 .form-title-bottom{display:block;line-height:.94;white-space:nowrap;color:var(--light)}
.hero-copy h1 em{font-style:normal;color:var(--coral)}
.club-header .club-brand>span{transform:rotate(-7deg)}
@media(max-width:700px){
  .club-header{padding-block:16px;gap:12px}
  .club-header nav{border-top:1px solid var(--line);padding-top:6px;gap:15px}
  .club-header nav a{font-size:.75rem;min-height:38px}
  .club-header .button.small{font-size:.75rem;padding:12px;gap:12px}
  .class-name h3{font-size:3.3rem}
  .class-list article{padding-block:30px;gap:16px}
  .class-name>p{margin-top:7px}
}
