@font-face{font-family:Geist;src:url('assets/geist-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
#classes.programs-section{padding:128px 32px;max-width:1600px;margin-inline:auto;overflow:visible}
.program-intro{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(260px,.85fr);align-items:end;gap:60px;margin-bottom:64px}
.program-eyebrow{font:500 12px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--lime);margin-bottom:22px}
.program-heading{font:800 clamp(56px,7.5vw,112px)/.95 Unbounded,Arial,sans-serif;letter-spacing:-.04em;text-transform:uppercase;color:#f5f5f0;max-width:820px}
.program-heading-word{display:inline-block;color:inherit}.program-heading-word.accent{color:var(--lime)}
.program-intro-copy>p{font:400 17px/1.6 Geist,var(--body);color:#a6a6a0;margin-bottom:24px;max-width:360px}
.program-intro-copy .button{font:400 15px/1.3 Geist,var(--body);text-transform:none;letter-spacing:-.02em;min-height:52px;padding:10px 12px 10px 20px}
.program-stack{display:flex;flex-direction:column;gap:24px;position:relative;isolation:isolate}
.program-card{position:sticky;top:calc(100px + var(--program-index)*28px);z-index:calc(1 + var(--program-index));display:grid;grid-template-columns:1.045fr 1fr;align-items:center;gap:40px;padding:28px;background:var(--program-bg);color:var(--program-fg);border-radius:32px;min-width:0}
.program-copy{padding:12px;min-width:0}.program-number{font:500 12px/1.4 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--program-fg);margin:0 0 24px}
.program-card h3{font:800 clamp(44px,5.94vw,96px)/1.05 Unbounded,Arial,sans-serif;letter-spacing:-.045em;text-transform:uppercase;color:var(--program-fg);margin:0 0 24px;overflow-wrap:normal}
.program-description{font:400 19px/1.55 Geist,var(--body);color:var(--program-muted);max-width:480px;margin-bottom:24px}
.program-card .program-button{font:400 15px/1.2 Geist,var(--body);letter-spacing:-.02em;text-transform:none;min-height:54px;gap:12px;padding:10px 12px 10px 20px;background:var(--program-cta);color:var(--program-cta-fg);border:1px solid var(--program-border)}
.program-button .arrow{background:var(--program-icon-bg);color:var(--program-icon-fg);width:27px;height:27px;font-size:18px;transform:none}
.program-button:hover{background:var(--program-fg);color:var(--program-bg)}.program-button:hover .arrow{background:var(--program-bg);color:var(--program-fg)}
.program-image{aspect-ratio:1.35;overflow:hidden;border-radius:24px;position:relative;margin:0;min-width:0}
.program-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.program-card:hover .program-image img{transform:scale(1.035)}
.program-strength{--program-bg:#151515;--program-fg:#f5f5f0;--program-muted:#a6a6a0;--program-cta:transparent;--program-cta-fg:#f5f5f0;--program-border:#ffffff1f;--program-icon-bg:#f5f5f0;--program-icon-fg:#0a0a0a}
.program-boxing{--program-bg:#c6ff00;--program-fg:#0a0a0a;--program-muted:#465900;--program-cta:#ff4f1a;--program-cta-fg:#0a0a0a;--program-border:transparent;--program-icon-bg:#0a0a0a;--program-icon-fg:#ff4f1a}
.program-hiit{--program-bg:#ff4f1a;--program-fg:#0a0a0a;--program-muted:#54200f;--program-cta:#0a0a0a;--program-cta-fg:#f5f5f0;--program-border:transparent;--program-icon-bg:#f5f5f0;--program-icon-fg:#0a0a0a}
.program-open-gym{--program-bg:#f5f5f0;--program-fg:#0a0a0a;--program-muted:#60605b;--program-cta:#0a0a0a;--program-cta-fg:#f5f5f0;--program-border:transparent;--program-icon-bg:#c6ff00;--program-icon-fg:#0a0a0a}
.program-card a:focus-visible{outline-color:var(--program-fg);outline-offset:5px}
.program-cursor{display:none;position:fixed;left:0;top:0;z-index:25;pointer-events:none;width:96px;height:96px;border-radius:50%;place-items:center;background:var(--lime);color:#0a0a0a;font:800 12px/1 Unbounded,Arial,sans-serif;letter-spacing:-.05em;opacity:0;scale:.65;transition:opacity .2s,scale .3s cubic-bezier(.16,1,.3,1);will-change:transform}
@media(hover:hover) and (pointer:fine){.program-cursor.is-on{display:grid;opacity:1;scale:1}}
@media(max-width:1100px){#classes.programs-section{padding-inline:28px}.program-intro{gap:35px;grid-template-columns:1.7fr 1fr}.program-card{gap:28px;padding:24px}.program-copy{padding:8px}.program-card h3{font-size:5.9vw}.program-description{font-size:17px}.program-image{aspect-ratio:1.25}}
@media(max-width:800px){#classes.programs-section{padding:90px 24px}.program-intro{grid-template-columns:1fr;gap:28px;margin-bottom:44px}.program-heading{font-size:clamp(48px,9vw,72px);max-width:650px}.program-intro-copy{display:flex;justify-content:space-between;align-items:end;gap:24px}.program-intro-copy>p{margin:0;max-width:370px}.program-intro-copy .button{flex-shrink:0}.program-card{gap:24px;padding:22px;grid-template-columns:1fr 1fr}.program-card h3{font-size:4.9vw}.program-number,.program-card h3{margin-bottom:18px}.program-description{font-size:16px;margin-bottom:20px}.program-image{aspect-ratio:.9}.program-copy{padding:0}}
@media(max-width:540px){#classes.programs-section{padding:76px 19px}.program-heading{font-size:clamp(38px,11.28vw,60px);line-height:.95}.program-eyebrow{font-size:11px;margin-bottom:18px}.program-intro-copy{display:block}.program-intro-copy>p{font-size:16px;max-width:340px;margin-bottom:22px}.program-card{display:flex;flex-direction:column;align-items:stretch;padding:20px 20px 24px;gap:20px;border-radius:24px;top:calc(100px + var(--program-index)*28px)}.program-copy{padding:0}.program-number{margin:0 0 18px;font-size:11px}.program-card h3{font-size:clamp(28px,9.2vw,36px);letter-spacing:-.045em;margin-bottom:18px}.program-description{font-size:17px;line-height:1.55;margin-bottom:22px}.program-card .program-button{min-height:52px;font-size:14px}.program-image{aspect-ratio:1.35;border-radius:18px;width:100%}.program-stack{gap:24px}.program-cursor{display:none!important}}
@media(max-height:650px) and (max-width:800px){.program-card{position:relative;top:auto}}
@media(prefers-reduced-motion:reduce){.program-card{position:relative;top:auto}.program-image img{transition:none;transform:none!important}.program-cursor{display:none!important}.program-heading-word{opacity:1!important;filter:none!important;transform:none!important}}
