: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)}.meta-text{color:#bcb7ae}*{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%)}}.tile.t-imgA .photo{background-image:url(/images/squat.jpg);animation:drift1 12s ease-in-out infinite alternate}.tile.t-imgB .photo{background-image:url(/images/group.jpg);animation:drift2 14s ease-in-out infinite alternate}.tile.t-imgC .photo{background-image:url(/images/box-jump.jpg);animation:drift3 11s ease-in-out infinite alternate}.tile.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:17px;line-height:1.55;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}.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}.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-start;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:17px;line-height:1.55;color:var(--ink-dim);max-width:22ch}@media (max-width: 639px){.t-stat{padding-inline:36px}}.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;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}@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,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;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 .num .stat-word{color:rgba(var(--accent-rgb),.68)}.about .stats .lbl{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;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;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 .class-meta{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.2em}.class-card h3{font-family:Bebas Neue,sans-serif;font-size:36px;letter-spacing:.005em;margin:18px 0 12px}.classes-grid .class-card p{font-size:14px;line-height:1.55;margin:0 0 22px}.class-card .meta{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase}.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-showcase .class-spotlight .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-showcase .class-spotlight-copy p{margin:0;font-size:16px;line-height:1.65;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:start;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line);transition:background .2s}.timetable .slot-coach{grid-column:2}.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;justify-self:end;text-align:right}.timetable .empty{padding:60px 28px;text-align:center;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;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;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}.testimonials .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;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 .faq-a p{font-size:15px;line-height:1.65;color:var(--ink-dim);margin:0 0 24px;max-width:70ch}.text-link{color:var(--accent-soft);text-decoration:none;transition:color .2s}.text-link:visited{color:var(--accent-soft)}.text-link:hover,.text-link:active{color:#fff;text-decoration:underline;text-underline-offset:2px}.text-link:focus-visible{outline:2px solid white;outline-offset:3px;border-radius:2px}.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 .contact-info .lbl{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase}.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;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 .btn{justify-self:start}.contact-form .contact-submit-btn{width:260px;position:relative;justify-content:center;gap:0}.contact-form .contact-submit-btn .btn-label{width:100%;text-align:center}.contact-form .btn-loader{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:13px;height:13px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;opacity:0}.contact-form .btn-loader.is-active{opacity:1;animation:btnSpin .8s linear infinite}@keyframes btnSpin{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.contact-form>label{display:grid;gap:7px}.contact-page .contact-card .contact-form>label>span{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim)}.contact-form>*+*{margin-top:14px}.contact-radio-group{display:grid;gap:8px;border:0;margin:0;padding:0}.contact-form>.contact-radio-group{margin-top:14px}.contact-radio-row{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.contact-radio-group>.meta-text{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim)}.contact-form .contact-radio-option{position:relative;display:flex;align-items:center;gap:12px;padding:2px 0;cursor:pointer;transition:color .2s ease}.contact-radio-text{font-size:14px;letter-spacing:.02em;text-transform:none;color:var(--ink)}.contact-form .contact-radio-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.contact-radio-indicator{width:16px;height:16px;border-radius:50%;border:1.5px solid rgba(245,243,238,.45);background:transparent;display:inline-flex;align-items:center;justify-content:center;flex:0 0 16px}.contact-radio-indicator:after{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent-soft);opacity:0;transform:scale(.75);transition:opacity .2s ease,transform .2s ease}.contact-radio-option:has(input[type=radio]:checked){color:var(--ink)}.contact-radio-option:has(input[type=radio]:checked) .contact-radio-indicator{border-color:var(--accent-soft)}.contact-radio-option:has(input[type=radio]:checked) .contact-radio-indicator:after{opacity:1;transform:scale(1)}.contact-radio-option:has(input[type=radio]:focus-visible){outline:none}.contact-radio-option:has(input[type=radio]:focus-visible) .contact-radio-indicator{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-soft) 35%,transparent)}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid rgba(245,243,238,.16);border-radius:4px;background:#ffffff0d;color:var(--ink);font:inherit;padding:12px 14px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--muted)}.contact-form textarea{resize:vertical;min-height:140px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:1px solid var(--accent);border-color:var(--accent)}.contact-form input:invalid,.contact-form select:invalid,.contact-form textarea:invalid{box-shadow:none}.contact-form input:invalid:not([aria-invalid=true]),.contact-form select:invalid:not([aria-invalid=true]),.contact-form textarea:invalid:not([aria-invalid=true]){border-color:#f5f3ee29;outline:none}.contact-form-error{color:#c45a5a;font-size:12px}.contact-form-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-form-status{margin:4px 0 0;font-size:14px}.contact-form-status.ok{color:#8ad46f}.contact-form-status.err{color:#c45a5a}.contact-page .contact-details p{margin:0 0 14px;font-size:15px;line-height:1.55}.contact-page .contact-details p strong{color:var(--ink)}.contact-page .contact-details a:not(.text-link){color:inherit}.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;filter:brightness(.68) saturate(.72)}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}footer.site-foot .foot-col a{color:var(--ink-dim);text-decoration:none;font-size:14px;transition:color .2s}footer.site-foot .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}.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-radio-row{flex-direction:row;flex-wrap:wrap;gap:18px;align-items:center}.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;gap:24px;padding:22px 28px}.timetable .slot-coach{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}}
