:root{--bg: #0a0a0c;--bg-2: #131316;--ink: #f5f3ee;--ink-dim: #b3b0a8;--muted: #6b6862;--accent: #ff2e88;--accent-soft: #ff7eb6;--accent-deep: #b81f63;--accent-rgb: 255, 46, 136;--accent-ink: #ffffff;--line: rgba(245, 243, 238, .1);--site-max: 1600px;--bp-sm: 640px;--bp-md: 767px;--bp-lg: 1101px;--bp-section-lg: 901px;--space-1: 8px;--space-2: 14px;--space-3: 18px}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.ml-1{margin-left:var(--space-1)}.ml-2{margin-left:var(--space-2)}.ml-3{margin-left:var(--space-3)}.mr-1{margin-right:var(--space-1)}.mr-2{margin-right:var(--space-2)}.mr-3{margin-right:var(--space-3)}.mx-1{margin-left:var(--space-1);margin-right:var(--space-1)}.mx-2{margin-left:var(--space-2);margin-right:var(--space-2)}.mx-3{margin-left:var(--space-3);margin-right:var(--space-3)}.my-1{margin-top:var(--space-1);margin-bottom:var(--space-1)}.my-2{margin-top:var(--space-2);margin-bottom:var(--space-2)}.my-3{margin-top:var(--space-3);margin-bottom:var(--space-3)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}html,body,#root{width:100%;overflow-x:clip}body{min-height:100vh;overflow-x:clip}.nav-shell{width:100%;border-bottom:1px solid var(--line)}.nav{position:relative;z-index:30;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;width:100%;padding:10px 16px;gap:10px;row-gap:12px;max-width:none;overflow:hidden}.nav-toggle{display:inline-flex;background:transparent;border:1px solid var(--line);color:var(--ink);font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:8px 12px;border-radius:2px;align-items:center;justify-content:center}.burger{display:inline-flex;flex-direction:column;gap:3px}.burger span{width:14px;height:1.5px;background:currentColor;display:block}.nav-mobile{flex:1 1 100%;display:grid;width:100%;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--bg-2)}.nav-mobile a{color:var(--ink);text-decoration:none;padding:12px 14px;border-bottom:1px solid var(--line);font-size:13px}.nav-mobile a:last-child{border-bottom:0}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}.brand:hover,.brand:focus,.brand:active{text-decoration:none}.brand .logo{height:48px;width:auto;display:block;mix-blend-mode:screen;filter:contrast(1.05)}.brand .tag{display:none;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dim);border-left:1px solid var(--line);padding-left:14px}.nav-links{display:none;gap:clamp(14px,2.8vw,28px);font-size:13px;font-weight:500;letter-spacing:.02em;align-items:center}.nav-links a{color:var(--ink-dim);text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--ink)}.nav-cta{display:none;background:var(--accent);color:var(--accent-ink);text-decoration:none;border:0;padding:11px 20px;font-family:inherit;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:2px;transition:transform .2s,box-shadow .2s,background .4s ease,color .4s ease}.nav-cta:hover{text-decoration:none;transform:translateY(-1px);box-shadow:0 10px 30px -8px rgba(var(--accent-rgb),.55)}.nav-cta:focus,.nav-cta:active{text-decoration:none}.hero{position:relative;padding:20px;max-width:100%;margin:0 auto;overflow:hidden}.glow{position:absolute;pointer-events:none;border-radius:50%;filter:blur(120px);z-index:0}.glow.a{width:520px;height:520px;background:var(--accent);top:-120px;right:-80px;opacity:.16;animation:glowA 14s ease-in-out infinite alternate}.glow.b{width:380px;height:380px;background:#f48a1a;bottom:-120px;left:-100px;opacity:.1;animation:glowB 18s ease-in-out infinite alternate}@keyframes glowA{0%{transform:translate(0)}to{transform:translate(-60px,40px)}}@keyframes glowB{0%{transform:translate(0)}to{transform:translate(80px,-30px)}}.bento{position:relative;z-index:2;display:grid;grid-template-columns:1fr;grid-template-rows:none;grid-auto-rows:auto;gap:14px;perspective:1400px;width:100%;max-width:100%;overflow:hidden}.tile{position:relative;overflow:hidden;border-radius:6px;background:var(--bg-2);border:1px solid var(--line);opacity:0;transform:translateY(24px) scale(.97);animation:tileIn .9s cubic-bezier(.2,.8,.2,1) forwards;will-change:transform,opacity;transition:background .4s ease,box-shadow .3s ease;max-width:100%}@keyframes tileIn{to{opacity:1;transform:translateY(0) scale(1)}}.t-head1,.t-imgA,.t-stat,.t-head2,.t-imgB,.t-imgC,.t-ticker,.t-imgD{grid-column:1;grid-row:auto;min-width:0}.t-head1{animation-delay:.05s}.t-imgA{animation-delay:.18s}.t-stat{animation-delay:.3s}.t-head2{animation-delay:.42s}.t-imgB{animation-delay:.55s}.t-imgC{animation-delay:.65s}.t-ticker{animation-delay:.75s}.t-imgD{animation-delay:.85s}.t-imgA,.t-imgB,.t-imgC,.t-imgD{min-height:220px}.t-ticker{min-height:76px}.tile.img{cursor:default}.tile.img .photo{position:absolute;top:-6%;right:-6%;bottom:-6%;left:-6%;background-size:cover;background-position:center;transition:transform 1.2s cubic-bezier(.2,.8,.2,1),filter .6s;filter:saturate(1.05) contrast(1.05)}.tile.img:hover .photo{transform:scale(1.06);filter:saturate(1.2) contrast(1.1)}.tile.img:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000 40%,#0000008c);pointer-events:none}@keyframes drift1{0%{transform:scale(1.06) translate(0)}to{transform:scale(1.12) translate(-2%,-2%)}}@keyframes drift2{0%{transform:scale(1.06) translate(0)}to{transform:scale(1.1) translate(2%,-1%)}}@keyframes drift3{0%{transform:scale(1.06) translate(0)}to{transform:scale(1.14) translate(-1%,2%)}}@keyframes drift4{0%{transform:scale(1.06) translate(0)}to{transform:scale(1.1) translate(1%,2%)}}.t-imgA .photo{background-image:url(/images/squat.jpg);animation:drift1 12s ease-in-out infinite alternate}.t-imgB .photo{background-image:url(/images/group.jpg);animation:drift2 14s ease-in-out infinite alternate}.t-imgC .photo{background-image:url(/images/box-jump.jpg);animation:drift3 11s ease-in-out infinite alternate}.t-imgD .photo{background-image:url(/images/kettlebell-walk.jpg);animation:drift4 13s ease-in-out infinite alternate}.tile.img:hover .photo{animation-play-state:paused}.caption{position:absolute;left:14px;bottom:12px;right:14px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}.caption .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 rgba(var(--accent-rgb),.75);animation:pulseDot 2.4s ease-out infinite}@keyframes pulseDot{0%{box-shadow:0 0 rgba(var(--accent-rgb),.75)}70%{box-shadow:0 0 0 8px rgba(var(--accent-rgb),0)}to{box-shadow:0 0 rgba(var(--accent-rgb),0)}}.t-head1{background:var(--bg-2);padding:20px 24px 22px;display:flex;flex-direction:column;justify-content:flex-start;gap:10px;height:auto;min-height:unset}.eyebrow{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);display:flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:28px;height:1px;background:var(--accent);display:inline-block}.headline{font-family:Bebas Neue,sans-serif;font-size:60px;line-height:.9;letter-spacing:.005em;margin:10px 0 0;text-wrap:pretty;flex:initial;min-height:0;height:auto;display:block;align-content:initial;gap:0}.headline .accent{color:var(--accent);font-style:italic}.headline .line{display:block}.headline.is-compact .line:nth-child(1){margin-bottom:12px}.headline.is-compact .line:nth-child(2){display:inline-flex;align-items:baseline}.headline.is-compact .compact-gap{margin-left:10px}.headline .word{display:inline-block;overflow:hidden;vertical-align:bottom}.headline .word>span{display:inline-block;transform:translateY(110%);animation:wordUp 1s cubic-bezier(.2,.8,.2,1) forwards}@keyframes wordUp{to{transform:translateY(0)}}.headline .line:nth-child(1) .word>span{animation-delay:.2s}.headline .line:nth-child(2) .word>span{animation-delay:.34s}.headline .line:nth-child(3) .word>span{animation-delay:.48s}.headline-desktop{display:none}.headline-compact{display:block}.headline.is-compact .line:nth-child(2) .word>span{animation-delay:.34s}.t-head2{background:radial-gradient(120% 140% at 0% 100%,rgba(var(--accent-rgb),.14) 0%,transparent 55%),var(--bg-2);padding:28px 36px;display:flex;flex-direction:column;justify-content:space-between}.t-head2 .copy{font-size:15px;line-height:1.55;color:var(--ink-dim);max-width:36ch}.cta-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:10px;padding:16px 26px;font-family:Inter,sans-serif;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border-radius:2px;cursor:pointer;border:0;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s,background .4s ease,color .4s ease}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 40px -10px rgba(var(--accent-rgb),.5)}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn-ghost:hover{border-color:var(--ink)}.btn:hover,.btn:focus,.btn:active{text-decoration:none}.btn .arrow{transition:transform .2s}.btn:hover .arrow{transform:translate(4px)}.meta-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim)}.meta-row .sep{width:14px;height:1px;background:var(--line)}.t-stat{background:rgba(var(--accent-rgb),.07);border-color:color-mix(in srgb,var(--line) 85%,rgba(var(--accent-rgb),.35));color:var(--ink);transition:background .4s ease,border-color .4s ease;padding:28px 26px;display:flex;flex-direction:column;justify-content:space-between}.t-stat:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--ink) 4%,transparent) 0 1px,transparent 1px 18px);pointer-events:none;z-index:0}.t-stat>*{position:relative;z-index:1}.stat-label{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim)}.stat-num{font-family:Bebas Neue,sans-serif;font-size:clamp(64px,6vw,96px);line-height:.9;margin-top:8px;display:flex;align-items:baseline;justify-content:flex-end;flex-wrap:wrap;gap:.12em .25em;color:var(--accent)}.stat-num .small{font-size:.4em;vertical-align:baseline;color:var(--ink-dim);margin-left:0}.stat-num .stat-suffix-wrap{overflow:hidden;display:inline-block;vertical-align:baseline}.stat-num .stat-suffix-inner{display:inline-block;transform:translateY(115%);animation:wordUp .95s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:.75s}.stat-foot{font-size:15px;line-height:1.55;color:var(--ink-dim);max-width:22ch}.t-ticker{background:var(--bg-2);color:var(--ink);display:flex;align-items:center;overflow:hidden;padding:0;border:1px solid var(--line)}.ticker-track{display:flex;gap:32px;white-space:nowrap;animation:ticker 22s linear infinite;font-family:Bebas Neue,sans-serif;font-size:22px;letter-spacing:.04em;padding-left:32px}.ticker-track span{display:inline-flex;align-items:center;gap:32px}.ticker-track i{width:6px;height:6px;border-radius:50%;background:var(--accent);display:inline-block;flex-shrink:0}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}.infobar{position:relative;z-index:2;display:grid;grid-template-columns:1fr;gap:16px;align-items:start;padding:18px 4px 0;margin-top:18px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-dim);width:100%;max-width:100%;overflow:hidden;opacity:0;animation:tileIn .9s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:1.1s}.infobar>*{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.infobar .label{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:0}.infobar .val{overflow-wrap:anywhere;color:var(--ink);font-weight:500;font-size:13px}.reviews .stars{color:var(--accent-soft);letter-spacing:.15em;font-size:14px;line-height:1}a.infobar-reviews-link,a.infobar-reviews-link:visited{text-decoration:none;color:inherit;cursor:pointer}a.infobar-reviews-link:hover,a.infobar-reviews-link:active{text-decoration:none;color:inherit}a.infobar-reviews-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.infobar-directions-link{display:inline-flex;align-items:baseline;gap:4px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-soft);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:1px;transition:color .2s ease,border-color .2s ease}.infobar-directions-link:hover{color:var(--accent);border-bottom-color:rgba(var(--accent-rgb),.55)}.infobar-directions-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.infobar-directions-link .dir-ext{letter-spacing:0;font-size:11px;opacity:.9}@media (min-width: 640px){.nav{padding:4px 40px;overflow:visible}.brand .logo{height:72px}.nav-toggle{display:none}.nav-links{display:flex}.nav-mobile{display:none}.hero{padding:32px 40px 40px;max-width:var(--site-max)}.caption{font-size:10px;letter-spacing:.16em}.meta-row{gap:24px;flex-wrap:nowrap}.infobar{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 24px;padding:28px 4px 0;width:auto;max-width:none;overflow:visible}.infobar .val{overflow-wrap:normal}}@media (min-width: 767px){.bento{grid-template-columns:repeat(12,1fr);grid-template-rows:auto repeat(7,130px);overflow:visible;width:auto;max-width:none}.t-head1{grid-column:1 / span 12;grid-row:1 / 2;align-self:start}.t-imgA{grid-column:1 / span 8;grid-row:2 / span 2;min-height:unset}.t-stat{grid-column:9 / span 4;grid-row:2 / span 2}.t-head2{grid-column:1 / span 12;grid-row:4 / span 2}.t-imgB{grid-column:1 / span 5;grid-row:6 / span 2;min-height:unset}.t-imgC{grid-column:6 / span 4;grid-row:6 / span 1;min-height:unset}.t-ticker{grid-column:6 / span 4;grid-row:7 / span 1;min-height:unset}.t-imgD{grid-column:10 / span 3;grid-row:6 / span 2;min-height:unset}}@media (min-width: 767px) and (max-width: 1100px){.t-head1 .headline.is-compact{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:baseline;white-space:nowrap;text-wrap:unset;column-gap:.2em}.t-head1 .headline.is-compact .line{display:contents}.t-head1 .headline.is-compact .line:nth-child(1){margin-bottom:0}.t-head1 .headline.is-compact .compact-gap{margin-left:0}.t-head1 .headline.is-compact .line:nth-child(1) .word>span{animation-delay:.2s}.t-head1 .headline.is-compact .line:nth-child(2) .word:nth-child(1)>span{animation-delay:.34s}.t-head1 .headline.is-compact .line:nth-child(2) .word:nth-child(2)>span{animation-delay:.48s}}@media (min-width: 1101px){.nav{max-width:var(--site-max);margin-left:auto;margin-right:auto}.brand .tag{display:inline}.nav-cta{display:inline-flex;align-items:center}.nav-links{gap:36px}.bento{grid-template-rows:180px 180px 180px 180px}.t-head1{grid-column:1 / span 5;grid-row:1 / span 2;align-self:stretch;height:100%;min-height:0;container-type:size;container-name:head1;padding:32px 36px 42px;gap:14px}.t-imgA{grid-column:6 / span 4;grid-row:1 / span 2}.t-stat{grid-column:10 / span 3;grid-row:1 / span 2}.t-head2{grid-column:1 / span 5;grid-row:3 / span 2}.t-imgB{grid-column:6 / span 3;grid-row:3 / span 2}.t-imgC{grid-column:9 / span 2;grid-row:3 / span 1}.t-ticker{grid-column:9 / span 2;grid-row:4 / span 1}.t-imgD{grid-column:11 / span 2;grid-row:3 / span 2}.headline-desktop{display:block}.headline-compact{display:none}.headline.headline-desktop{font-size:clamp(72px,8.6vw,120px);font-size:clamp(72px,min(8.6vw,33cqh),120px);line-height:.82;margin:8px 0 0;flex:1;min-height:0;display:grid;align-content:space-between;gap:clamp(6px,1vh,14px)}.infobar{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 40px;padding:28px 4px 0}}.section{position:relative;max-width:1600px;margin:0 auto;padding:60px 24px}.section+.section{padding-top:0}.section-head{display:grid;grid-template-columns:1fr;gap:18px;align-items:end;margin-bottom:36px}.section-eyebrow{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);display:flex;align-items:center;gap:12px;margin-bottom:18px}.section-eyebrow:before{content:"";width:28px;height:1px;background:var(--accent)}.section-title{font-family:Bebas Neue,sans-serif;font-size:clamp(40px,5vw,84px);line-height:.92;letter-spacing:.005em;margin:0;text-wrap:balance}.section-title .accent{color:var(--accent);font-style:italic}.section-lead{font-size:17px;line-height:1.55;color:var(--ink-dim);max-width:56ch}.about{display:grid;grid-template-columns:1fr;gap:60px;align-items:center}.about .copy p{font-size:17px;line-height:1.65;color:var(--ink-dim);margin:0 0 18px}.about .copy p strong{color:var(--ink);font-weight:600}.about .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px;padding-top:28px;border-top:1px solid var(--line)}.about .stats .num{font-family:Bebas Neue,sans-serif;font-size:36px;line-height:.9;color:var(--accent)}.about .stats .lbl{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:6px}.about .visual{position:relative;aspect-ratio:4/5;border-radius:6px;overflow:hidden;border:1px solid var(--line);background:url(/images/group.jpg) center/cover}.about .visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.55))}.about .visual .badge{position:absolute;left:18px;bottom:18px;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);z-index:2}.classes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.class-card{position:relative;padding:32px 28px 28px;background:var(--bg-2);border:1px solid var(--line);border-radius:6px;overflow:hidden;transition:border-color .3s,transform .3s;cursor:pointer}.class-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.class-card:hover{border-color:#ffffff2e;transform:translateY(-3px)}.class-card:hover:before{transform:scaleX(1)}.class-card .num{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.2em;color:var(--muted)}.class-card h3{font-family:Bebas Neue,sans-serif;font-size:36px;letter-spacing:.005em;margin:18px 0 12px}.class-card p{font-size:14px;line-height:1.55;color:var(--ink-dim);margin:0 0 22px}.class-card .meta{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb,var(--muted) 42%,var(--ink-dim))}.class-card .meta.meta-variant-chips{display:flex;flex-direction:column;align-items:flex-start;flex-wrap:nowrap;gap:8px}.class-card .meta.meta-variant-chips span{padding:6px 11px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 85%,rgba(var(--accent-rgb),.35));background:rgba(var(--accent-rgb),.07)}.class-showcase{display:grid;gap:14px}.class-spotlight{display:grid;grid-template-columns:1fr;min-height:430px;background:var(--bg-2);border:1px solid var(--line);border-radius:6px;overflow:hidden}.class-spotlight:nth-child(2n){grid-template-columns:1fr}.class-spotlight:nth-child(2n) .class-spotlight-media{order:0}.class-spotlight-media{background-size:cover;background-position:center;min-height:360px}.class-spotlight-copy{padding:28px 24px 30px;display:flex;flex-direction:column;justify-content:center}.class-spotlight-copy h3{font-family:Bebas Neue,sans-serif;font-size:clamp(34px,4vw,56px);line-height:.95;letter-spacing:.01em;margin:12px 0 16px}.class-spotlight-copy p{margin:0;font-size:16px;line-height:1.65;color:var(--ink-dim);max-width:45ch}.timetable{border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--bg-2)}.timetable .days{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--line)}.timetable .day-btn{background:transparent;border:0;padding:12px 4px;color:var(--ink-dim);font-family:Inter,sans-serif;font-size:11px;font-weight:500;letter-spacing:.04em;cursor:pointer;border-right:1px solid var(--line);transition:background .2s,color .2s;position:relative}.timetable .day-btn:last-child{border-right:0}.timetable .day-btn .dnum{display:block;font-family:Bebas Neue,sans-serif;font-size:18px;color:var(--ink);margin-bottom:4px}.timetable .day-btn[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.timetable .day-btn[aria-pressed=true] .dnum{color:var(--accent-ink)}.timetable .day-btn:not([aria-pressed=true]):hover{background:#ffffff08;color:var(--ink)}.timetable .slots{display:grid;grid-template-columns:80px 1fr;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line);transition:background .2s}.timetable .slot-coach,.timetable .slot-cta{grid-column:1 / -1}.timetable .slots:last-child{border-bottom:0}.timetable .slots:hover{background:#ffffff05}.timetable .slot-time{font-family:Bebas Neue,sans-serif;font-size:26px;color:var(--ink);letter-spacing:.02em}.timetable .slot-name{font-size:15px;font-weight:600}.timetable .slot-name .dur{font-weight:400;color:var(--muted);font-size:12px;margin-left:8px;font-family:JetBrains Mono,monospace;letter-spacing:.1em}.timetable .slot-coach{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--ink-dim);letter-spacing:.1em;text-transform:uppercase}.timetable .slot-cta{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;transition:gap .2s;display:inline-flex;align-items:center;gap:6px}.timetable .slot-cta:hover{gap:12px}.timetable .empty{padding:60px 28px;text-align:center;color:var(--muted);font-family:JetBrains Mono,monospace;font-size:12px;letter-spacing:.18em;text-transform:uppercase}.pricing{display:grid;grid-template-columns:1fr;gap:14px}.price-card{position:relative;padding:36px 32px 32px;background:var(--bg-2);border:1px solid var(--line);border-radius:6px;display:flex;flex-direction:column;gap:24px}.price-card.featured{background:linear-gradient(160deg,var(--bg-2) 0%,rgba(var(--accent-rgb),.1) 100%);border-color:rgba(var(--accent-rgb),.4)}.price-card .pill{position:absolute;top:16px;right:16px;background:var(--accent);color:var(--accent-ink);font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding:5px 10px;border-radius:999px}.price-card .ptitle{font-family:Bebas Neue,sans-serif;font-size:32px;letter-spacing:.02em}.price-card .ptag{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:-16px}.price-card .pamount{font-family:Bebas Neue,sans-serif;font-size:72px;line-height:.9;color:var(--ink)}.price-card .pamount .currency{font-size:.4em;vertical-align:top;opacity:.7;margin-right:2px}.price-card .pamount .per{font-family:Inter,sans-serif;font-size:14px;font-weight:400;color:var(--muted);margin-left:6px;text-transform:lowercase;letter-spacing:0}.price-card ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;flex:1}.price-card li{font-size:14px;color:var(--ink-dim);display:flex;align-items:flex-start;gap:10px;line-height:1.5}.price-card li:before{content:"";width:14px;height:1px;background:var(--accent);margin-top:11px;flex-shrink:0}.testimonials{display:grid;grid-template-columns:1fr;gap:14px}.testimonial{padding:32px 28px;background:var(--bg-2);border:1px solid var(--line);border-radius:6px;display:flex;flex-direction:column;gap:22px}.testimonial .quote-mark{font-family:Bebas Neue,sans-serif;font-size:64px;line-height:.5;color:var(--accent);height:24px}.testimonial p{font-size:16px;line-height:1.55;color:var(--ink);margin:0;flex:1}.testimonial .who{display:flex;align-items:center;gap:12px;padding-top:18px;border-top:1px solid var(--line)}.testimonial .avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-deep));color:var(--accent-ink);display:grid;place-items:center;font-family:Bebas Neue,sans-serif;font-size:18px;letter-spacing:.04em;flex-shrink:0}.testimonial .who .name{font-weight:600;font-size:14px}.testimonial .who .role{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:2px}.faq{max-width:900px;margin:0 auto}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-q{width:100%;background:transparent;border:0;color:var(--ink);text-align:left;padding:24px 0;cursor:pointer;font-family:Bebas Neue,sans-serif;font-size:26px;letter-spacing:.01em;display:flex;justify-content:space-between;align-items:center;gap:24px}.faq-q .icn{width:24px;height:24px;flex-shrink:0;position:relative;transition:transform .3s}.faq-q .icn:before,.faq-q .icn:after{content:"";position:absolute;background:var(--accent);top:50%;left:50%;transform:translate(-50%,-50%)}.faq-q .icn:before{width:14px;height:1.5px}.faq-q .icn:after{width:1.5px;height:14px;transition:transform .3s}.faq-item.open .faq-q .icn:after{transform:translate(-50%,-50%) rotate(90deg)}.faq-a{overflow:hidden;max-height:0;transition:max-height .4s ease}.faq-item.open .faq-a{max-height:320px}.faq-a p{font-size:15px;line-height:1.65;color:var(--ink-dim);margin:0 0 24px;max-width:70ch}.contact{display:grid;grid-template-columns:1fr;gap:14px}.contact.contact--single{grid-template-columns:1fr}.contact-info{padding:40px 36px;background:var(--bg-2);border:1px solid var(--line);border-radius:6px;display:flex;flex-direction:column;gap:28px}.contact-info .row{display:grid;grid-template-columns:80px 1fr;gap:24px;align-items:baseline}.contact-info .lbl{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.contact-info .val{font-size:16px;color:var(--ink);line-height:1.5}.contact-info .val a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);transition:border-color .2s,color .2s}.contact-info .val a:hover{color:var(--accent);border-color:var(--accent)}.contact-info .socials{display:flex;gap:8px;flex-wrap:wrap}.contact-info .socials a{padding:8px 14px;border:1px solid var(--line);border-radius:999px;color:var(--ink-dim);font-size:12px;text-decoration:none;transition:all .2s}.contact-info .socials a:hover{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.contact-page{padding-top:130px}.contact-page-grid{display:grid;grid-template-columns:1fr;gap:14px}.contact-card{padding:34px;background:var(--bg-2);border:1px solid var(--line);border-radius:6px}.contact-card h2{font-family:Bebas Neue,sans-serif;font-size:34px;letter-spacing:.01em;margin:0 0 20px}.contact-form{display:grid;gap:14px}.contact-form label{display:grid;gap:7px}.contact-form label span{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:4px;background:#ffffff05;color:var(--ink);font:inherit;padding:12px 14px}.contact-form textarea{resize:vertical;min-height:140px}.contact-form input:focus,.contact-form textarea:focus{outline:1px solid var(--accent);border-color:var(--accent)}.contact-details p{margin:0 0 14px;font-size:15px;line-height:1.55;color:var(--ink-dim)}.contact-details strong{color:var(--ink)}.contact-details a{color:var(--accent-soft);text-decoration:none;border-bottom:1px solid rgba(var(--accent-rgb),.4);transition:color .2s,border-color .2s}.contact-details a:hover{color:var(--accent);border-color:var(--accent)}.contact-map-full{margin-top:14px;border:1px solid var(--line);border-radius:6px;overflow:hidden;width:100%;min-height:420px}.contact-map-full iframe{width:100%;min-height:420px;border:0;display:block}footer.site-foot{border-top:1px solid var(--line);margin-top:80px;padding:40px 24px 28px;max-width:1600px;margin-left:auto;margin-right:auto}.foot-top{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:60px}.foot-top .blurb{font-size:14px;line-height:1.6;color:var(--ink-dim);max-width:36ch;margin:18px 0 0}.foot-col h4{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin:0 0 20px;font-weight:500}.foot-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.foot-col a{color:var(--ink-dim);text-decoration:none;font-size:14px;transition:color .2s}.foot-col a:hover{color:var(--ink)}.foot-bottom{display:flex;flex-direction:column;gap:18px;align-items:flex-start;justify-content:space-between;padding-top:28px;border-top:1px solid var(--line);font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.foot-bottom .foot-right{margin-left:auto;text-align:right}.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.8,.2,1)}.reveal.in{opacity:1;transform:none}@media (min-width: 901px){.section{padding:100px 40px}.section-head{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:60px;margin-bottom:56px}.about{grid-template-columns:1.1fr 1fr}.about .stats{gap:24px}.about .stats .num{font-size:56px}.contact{grid-template-columns:1fr 1.2fr}.contact-page-grid{grid-template-columns:1fr 1fr}.contact-map-full,.contact-map-full iframe{min-height:560px}.pricing,.testimonials{grid-template-columns:repeat(3,1fr)}.class-spotlight{grid-template-columns:1.05fr 1fr}.class-spotlight:nth-child(2n){grid-template-columns:1fr 1.05fr}.class-spotlight:nth-child(2n) .class-spotlight-media{order:2}.class-spotlight-copy{padding:40px 36px}.timetable .slots{grid-template-columns:120px 1fr 200px auto;gap:24px;padding:22px 28px}.timetable .slot-coach,.timetable .slot-cta{grid-column:auto}.timetable .day-btn{padding:18px 12px;font-size:13px}.timetable .day-btn .dnum{font-size:24px}.foot-top{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:60px}footer.site-foot{padding:60px 40px 40px}.foot-bottom{flex-direction:row;align-items:center;gap:0}}
