:root{--ink:#0a0b0d;--charcoal:#14161a;--cream:#f4f4f0;--red:#ff1e27;--red-hover:#e00009;--line:#2a2d34;--muted:#8b9098;--serif:'Syne',sans-serif;--sans:'Manrope',sans-serif;--mono:'DM Mono',monospace;--pad:clamp(20px,5vw,80px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;overflow-x:hidden}button,a{font:inherit;color:inherit}button{cursor:pointer;border:0}a{text-decoration:none}.skip-link{position:absolute;left:12px;top:-60px;background:var(--lime);padding:12px;z-index:100}.skip-link:focus{top:12px}:focus-visible{outline:3px solid var(--lime);outline-offset:4px}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:10px;font:700 12px/1 var(--mono);letter-spacing:.04em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;background:var(--ink);color:var(--lime);font:700 11px var(--mono);transform:rotate(-8deg)}.brand b{font-weight:500}.desktop-nav{display:flex;gap:34px;margin-left:auto;margin-right:40px;font-size:12px;font-weight:700}.desktop-nav a,.text-link,.arrow-link{transition:opacity .2s}.desktop-nav a:hover,.text-link:hover,.arrow-link:hover{opacity:.55}.button{min-height:48px;padding:0 21px;display:inline-flex;align-items:center;justify-content:center;gap:18px;font-weight:800;font-size:12px;letter-spacing:.01em;transition:transform .25s,background .25s,box-shadow .25s}.button span{font-size:18px;line-height:1}.button:hover{transform:translate(3px,-3px);box-shadow:5px 5px 0 var(--ink)}.button-lime{background:var(--lime)}.button-dark{background:var(--ink);color:var(--cream)}.menu-toggle{display:none;background:none;width:48px;height:48px}.menu-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.mobile-nav{display:none}.hero{min-height:calc(100vh - 86px);padding:clamp(50px,8vw,110px) var(--pad) clamp(70px,8vw,100px);display:grid;grid-template-columns:1fr 1.12fr;gap:7vw;align-items:center;position:relative}.hero-copy{padding-bottom:20px}.eyebrow,.section-label,.kicker{font:500 10px var(--mono);text-transform:uppercase;letter-spacing:.12em}.eyebrow{display:flex;align-items:center;gap:9px}.pulse-dot{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px #e9edda;display:inline-block}.hero h1{font:800 clamp(64px,8.6vw,142px)/.84 var(--serif);letter-spacing:-.06em;margin:38px 0 36px}.hero h1 em,.section-heading h2 i,.manifesto h2 span,.method h2 i,.team h2 i,.locations h2 i,.final-cta h2 i{font-style:normal;color:transparent;-webkit-text-stroke:1.5px var(--ink)}.hero-text{max-width:370px;color:var(--muted);font-size:15px}.hero-actions{display:flex;align-items:center;gap:26px;margin:32px 0 46px}.text-link{font:600 12px var(--mono);border-bottom:1px solid var(--ink);padding-bottom:4px}.hero-proof{display:flex;align-items:center;gap:14px}.hero-proof p{font-size:11px;margin:0;color:var(--muted)}.hero-proof strong{color:var(--ink);font-size:13px}.avatar-stack{display:flex}.avatar-stack span{width:26px;height:26px;display:grid;place-items:center;border:2px solid var(--cream);margin-right:-7px;background:#b4c8b4;border-radius:50%;font:700 7px var(--mono)}.avatar-stack span:nth-child(2){background:#d5c9bb}.avatar-stack span:nth-child(3){background:#a7b2c3}.hero-visual{position:relative;max-width:670px;margin-left:auto}.image-frame{aspect-ratio:1.09 / 1;overflow:hidden;background:#bbc0b8}.image-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) contrast(1.06)}.visual-tag{position:absolute;left:-22px;top:12%;background:var(--lime);width:112px;height:112px;padding:16px;display:flex;flex-direction:column;justify-content:space-between;font:10px/1.2 var(--mono);transform:rotate(-7deg)}.visual-tag .tag-number{font-size:18px}.visual-tag b{font-weight:500}.route-card{position:absolute;right:-24px;bottom:10%;background:var(--ink);color:var(--cream);padding:18px 20px 15px;width:170px}.route-label,.route-card small{display:block;color:#9fa49e;font:9px var(--mono);text-transform:uppercase;letter-spacing:.08em}.route-card strong{font:700 18px var(--serif);display:block;margin:7px 0 14px}.route-line{display:flex;gap:4px;margin-bottom:13px}.route-line i{display:block;height:3px;flex:1;background:var(--lime)}.route-line i:nth-child(2){opacity:.45}.route-line i:nth-child(3){opacity:.18}.hero-side-note{position:absolute;right:var(--pad);bottom:27px;font:10px var(--mono);writing-mode:vertical-rl;display:flex;gap:22px}.hero-side-note span{color:var(--muted);font-size:8px}.ticker{overflow:hidden;background:var(--lime);border-block:1px solid var(--ink);white-space:nowrap;font:500 12px var(--mono);letter-spacing:.1em}.ticker div{padding:15px 0;animation:marquee 22s linear infinite}.ticker b{margin:0 28px;font-size:15px}.section{padding:clamp(85px,11vw,170px) var(--pad);max-width:1600px;margin:auto}.section-label{display:flex;gap:20px;align-items:center;color:var(--muted);border-top:1px solid var(--line);padding-top:13px}.section-label span:first-child{color:var(--ink)}.manifesto{display:grid;grid-template-columns:25% 1fr auto;gap:5vw;position:relative}.manifesto-content{max-width:770px}.kicker{color:var(--muted);margin:0 0 30px}.manifesto h2,.section-heading h2,.method h2,.team h2,.locations h2,.final-cta h2{font:700 clamp(42px,6vw,88px)/.93 var(--serif);letter-spacing:-.05em;margin:0}.body-copy{max-width:420px;color:var(--muted);margin:35px 0 27px}.arrow-link{font:600 12px var(--mono);border-bottom:1px solid var(--ink);padding-bottom:7px}.arrow-link span{font-size:16px;margin-left:20px}.manifesto-stamp{width:100px;height:100px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;text-align:center;font:700 17px/.8 var(--serif);transform:rotate(12deg);margin-top:80px}.manifesto-stamp small{font:8px/1.1 var(--mono)}.classes{background:var(--ink);color:var(--cream);max-width:none;padding-inline:var(--pad)}.classes .section-label{border-color:#343737;color:#929793}.classes .section-label span:first-child{color:var(--lime)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:60px}.section-heading h2{text-align:right}.section-heading h2 i{color:var(--lime);-webkit-text-stroke:0}.class-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:14px;max-width:1400px;margin:auto}.class-card{min-height:490px;position:relative;overflow:hidden;padding:27px;display:flex;flex-direction:column;transition:transform .35s}.class-card:hover{transform:translateY(-8px)}.class-pkw{background:var(--lime);color:var(--ink)}.class-bike,.class-pro{background:#252a29}.class-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.3);opacity:.65}.card-overlay{position:absolute;inset:0;padding:27px;display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(13,15,18,.1),rgba(13,15,18,.85))}.card-top{display:flex;justify-content:space-between;font:10px var(--mono);letter-spacing:.08em}.class-card h3{font:700 clamp(44px,5vw,72px)/.9 var(--serif);letter-spacing:-.06em;margin:auto 0 18px}.class-card p{max-width:240px;font-size:13px;color:inherit;opacity:.75;margin:0 0 20px}.class-pkw ul{list-style:none;padding:0;margin:0;font:11px var(--mono);line-height:2}.class-pkw li:before{content:'+';margin-right:8px}.card-arrow{width:43px;height:43px;border:1px solid currentColor;background:transparent;color:inherit;font-size:20px;align-self:flex-end;transition:background .2s}.card-arrow:hover{background:var(--ink);color:var(--lime)}.method{display:grid;grid-template-columns:1.1fr 1fr;min-height:720px;max-width:none;padding-left:0}.method-visual{background:var(--lime);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.big-number{font:800 clamp(260px,40vw,650px)/.7 var(--serif);letter-spacing:-.14em;color:var(--ink);transform:translateX(-8%)}.method-note{position:absolute;left:var(--pad);bottom:40px;font:10px/1.3 var(--mono)}.method-note span{display:inline-block;width:45px;border-top:1px solid var(--ink);margin-left:12px;vertical-align:middle}.method-copy{padding:0 var(--pad);align-self:center}.method-copy .section-label{margin-bottom:42px}.method h2{margin-bottom:60px}.method h2 i,.team h2 i,.locations h2 i{color:var(--lime);-webkit-text-stroke:0}.steps{border-top:1px solid var(--line);margin-bottom:38px}.steps>div{display:grid;grid-template-columns:50px 1fr;border-bottom:1px solid var(--line);padding:19px 0}.steps span{font:10px var(--mono);color:var(--muted)}.steps p{margin:0;font-size:13px;color:var(--muted)}.steps b{color:var(--ink)}.team{background:#e8e9e4;max-width:none}.team-layout{display:grid;grid-template-columns:1fr 1fr;gap:10vw;margin-top:70px}.team-intro h2{margin-bottom:28px}.team-intro>p{max-width:260px;color:var(--muted);font-size:14px;margin-bottom:50px}.coach-portrait{width:min(100%,290px);position:relative}.coach-portrait img{width:100%;aspect-ratio:.86;object-fit:cover;filter:grayscale(1)}.coach-portrait span{position:absolute;background:var(--lime);padding:11px 14px;bottom:-13px;right:-25px;font:11px/1.3 var(--mono)}.coach-portrait b{font-weight:400;color:#454b46;font-size:9px}.team-list{align-self:end;border-top:1px solid #b9bcb6}.team-row{display:grid;grid-template-columns:45px 1.3fr 1fr 20px;align-items:center;min-height:75px;border-bottom:1px solid #b9bcb6;font-size:13px}.team-row>span:first-child,.team-row em{font:10px var(--mono);color:var(--muted)}.team-row em{font-style:normal}.locations{max-width:none}.location-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:8vw;margin-top:75px}.location-list{border-top:1px solid var(--line)}.location{width:100%;display:grid;grid-template-columns:50px 1fr 20px;text-align:left;align-items:center;padding:23px 0;background:transparent;border-bottom:1px solid var(--line);transition:padding .25s}.location.active{padding-left:16px;border-left:3px solid var(--lime);background:#eef0e9}.location b,.location small{display:block}.location b{font-size:14px}.location small{color:var(--muted);font-size:11px;margin-top:4px}.location-index{font:10px var(--mono);color:var(--muted)}.hours{margin-top:42px;display:grid;gap:10px;font:11px var(--mono)}.hours b{font-size:10px;text-transform:uppercase;margin-bottom:8px}.hours span{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:8px;color:var(--muted)}.hours strong{color:var(--ink);font-weight:500}.map-wrap{position:relative;min-height:380px;background:#d9dbd4;overflow:hidden}.map-wrap iframe{filter:grayscale(1) invert(.92) contrast(1.2);display:block}.map-pin{position:absolute;top:48%;left:52%;width:38px;height:38px;display:grid;place-items:center;background:var(--lime);font:700 10px var(--mono);transform:rotate(-8deg);box-shadow:5px 5px 0 var(--ink)}.final-cta{background:var(--ink);color:var(--cream);text-align:center;padding:110px 20px 90px;position:relative}.final-mark{position:absolute;left:var(--pad);top:55px;color:var(--lime);font:800 26px var(--serif);transform:rotate(-8deg)}.final-cta .eyebrow{justify-content:center;color:#949994}.final-cta h2{font-size:clamp(65px,11vw,160px);margin:34px 0 45px}.final-cta h2 i{color:var(--lime);-webkit-text-stroke:0}.contact-line{font:11px var(--mono);color:#858a85;margin:35px 0 0}.site-footer{background:var(--ink);border-top:1px solid #343737;color:#858a85;display:flex;align-items:center;gap:40px;padding:30px var(--pad);font:10px var(--mono)}.site-footer .brand{color:var(--cream);margin-right:auto}.site-footer a:last-child{color:var(--lime)}.contact-dialog{border:0;background:var(--cream);color:var(--ink);padding:45px;max-width:480px;width:calc(100% - 40px);box-shadow:12px 12px 0 var(--lime)}.contact-dialog::backdrop{background:rgba(13,15,18,.72);backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:17px;top:11px;background:none;font-size:28px}.contact-dialog h2{font:700 56px/.9 var(--serif);letter-spacing:-.06em;margin:15px 0}.contact-dialog>p:not(.eyebrow){color:var(--muted);font-size:13px;margin-bottom:28px}.contact-dialog form{display:grid;gap:8px}.contact-dialog label{font:10px var(--mono);text-transform:uppercase;margin-top:7px}.contact-dialog input,.contact-dialog select{border:1px solid var(--line);background:white;padding:13px;font:13px var(--sans);border-radius:0}.contact-dialog form .button{margin-top:18px}.form-status{font:11px var(--mono);color:#26754b;min-height:16px}
.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.reveal-delay{transition-delay:.15s}.reveal-delay-2{transition-delay:.3s}@keyframes marquee{to{transform:translateX(-50%)}}@media(max-width:800px){.site-header{height:72px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:block}.mobile-nav{position:absolute;z-index:9;top:72px;left:0;right:0;background:var(--ink);color:var(--cream);padding:20px var(--pad);display:grid;gap:4px;transform:translateY(-130%);transition:transform .3s}.mobile-nav.open{transform:none}.mobile-nav a{padding:12px 0;border-bottom:1px solid #343737;font:12px var(--mono)}.mobile-nav .button{margin-top:16px}.hero{grid-template-columns:1fr;min-height:auto;padding-top:70px;gap:50px}.hero h1{font-size:clamp(65px,19vw,120px)}.hero-visual{width:calc(100% - 20px);margin-left:20px}.hero-side-note{display:none}.visual-tag{left:-20px}.route-card{right:-12px}.section-heading{display:block;margin-bottom:40px}.section-heading h2{text-align:left;margin-top:30px}.manifesto{grid-template-columns:1fr;gap:40px}.manifesto-stamp{margin:0}.class-grid{grid-template-columns:1fr}.class-card{min-height:390px}.method{grid-template-columns:1fr;padding-left:0}.method-visual{min-height:330px}.method-copy{padding:80px var(--pad)}.team-layout,.location-layout{grid-template-columns:1fr;gap:70px;margin-top:50px}.team-list{order:-1}.coach-portrait{margin-left:20px}.location-layout{margin-top:40px}.map-wrap{min-height:280px}.site-footer{flex-wrap:wrap;gap:18px}.site-footer .brand{width:100%}.final-cta{padding-top:90px}.contact-dialog{padding:35px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.ticker div{animation:none}.button,.class-card{transition:none}}
.icon{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4;flex:none}.button .icon{width:16px;height:16px}.extras{padding-top:100px;padding-bottom:100px}.extras-row{display:grid;grid-template-columns:1fr 1fr;gap:10vw;margin-top:60px;align-items:end}.extras h2,.moments h2,.contact-intro h2{font:700 clamp(42px,6vw,82px)/.92 var(--serif);letter-spacing:-.05em;margin:0}.extras h2 i,.moments h2 i,.contact-intro h2 i{font-style:normal;color:var(--lime);-webkit-text-stroke:0}.extra-tags{display:flex;flex-wrap:wrap;gap:9px;max-width:570px}.extra-tags span{border:1px solid var(--ink);padding:12px 14px;font:10px var(--mono);transition:background .2s,color .2s}.extra-tags span:hover{background:var(--ink);color:var(--lime)}.moments{background:#e8e9e4;max-width:none}.moment-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:13px}.moment{min-height:320px;padding:25px;display:flex;flex-direction:column;justify-content:space-between;color:var(--cream);background:var(--ink);transition:transform .3s}.moment:hover{transform:translateY(-7px)}.moment-large{background:linear-gradient(140deg,#25302a,#0d0f12)}.moment-mid{background:linear-gradient(140deg,#636f68,#252a29)}.moment-small{background:var(--lime);color:var(--ink)}.moment-label{font:10px var(--mono);text-transform:uppercase}.moment b{font:700 25px/1.05 var(--serif)}.moment-arrow{align-self:flex-end;width:42px;height:42px;display:grid;place-items:center;border:1px solid currentColor}.instagram-link,.phone-link{display:inline-flex;align-items:center;gap:17px;margin-top:26px;border-bottom:1px solid currentColor;padding-bottom:7px;font:600 11px var(--mono)}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:12vw}.contact-intro .section-label{margin-bottom:45px}.contact-intro h2{margin-bottom:30px}.contact-intro>p{max-width:370px;color:var(--muted);font-size:14px;margin-bottom:35px}.phone-link{font-size:13px}.inline-form{border-top:1px solid var(--line);padding-top:17px;display:grid;gap:7px;align-content:start}.inline-form label{font:10px var(--mono);text-transform:uppercase;margin-top:9px}.inline-form input,.inline-form select{border:0;border-bottom:1px solid var(--line);background:transparent;border-radius:0;padding:11px 0;font:14px var(--sans);outline:none}.inline-form input:focus,.inline-form select:focus{border-color:var(--ink)}.inline-form .button{margin-top:27px;justify-self:start}.inline-status{font:11px var(--mono);color:#26754b;min-height:16px}.team-row{position:relative}.team-row small{display:none;grid-column:2 / 5;color:var(--muted);font:11px/1.4 var(--sans);padding:0 0 20px}.team-row.expanded small{display:block}.team-row.expanded .row-icon{transform:rotate(45deg)}
@media(max-width:800px){.extras-row,.contact-section{grid-template-columns:1fr;gap:50px}.moment-grid{grid-template-columns:1fr}.moment{min-height:240px}.team-row{grid-template-columns:35px 1fr 20px}.team-row em{display:none}.team-row small{grid-column:2 / 4}.contact-section{padding-top:80px;padding-bottom:80px}}
@media(max-width:800px){.hero-copy{max-width:100%;min-width:0}.hero .eyebrow{flex-wrap:wrap}.hero-visual{max-width:100%}.route-card{right:0}}
@media(max-width:800px){.hero h1{font-size:clamp(55px,17vw,120px);max-width:100%;overflow-wrap:anywhere}}
.card-arrow{width:48px;height:48px}
@media(max-width:800px){.method-visual{max-width:100%;overflow:clip}.big-number{max-width:100%;overflow:hidden}.site-header,.hero,.section{max-width:100vw}}
@media(max-width:800px){.method{grid-template-columns:minmax(0,1fr);min-width:0;width:100%;overflow:hidden}.method-copy,.method-visual{min-width:0}.steps,.steps p{min-width:0;overflow-wrap:anywhere}}
@media(max-width:360px){.coach-portrait span{right:0;max-width:calc(100% - 8px)}}
.contact-dialog{scrollbar-width:none}.contact-dialog::-webkit-scrollbar{display:none}
.brand-mark svg{width:25px;height:25px;fill:var(--red);display:block}.brand-mark{background:var(--charcoal);border:1px solid var(--red)}
.team-layout{grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);align-items:start;gap:clamp(60px,9vw,150px)}.team-intro h2{font-size:clamp(52px,6.8vw,104px)}.team-intro>p{max-width:320px}.coach-portrait{width:min(100%,360px)}.team-list{margin-top:clamp(50px,8vw,120px)}.team-row{min-height:88px}.team-row b{font-size:15px}.team-row em{font-size:11px}
@media(max-width:800px){.team-layout{grid-template-columns:1fr;gap:70px}.team-list{margin-top:0}.coach-portrait{width:min(100%,320px)}}
@media(min-width:801px){.team.section{padding-top:100px;padding-bottom:100px}.team-layout{margin-top:48px;align-items:stretch}.team-list{margin-top:0;display:flex;flex-direction:column;justify-content:space-between;min-height:360px}.team-row{min-height:92px;padding:18px 0}.team-row b{font-size:17px}.team-row em{font-size:12px}.team-intro>p{margin-bottom:32px}}
@media(min-width:801px){.coach-portrait img{height:440px;aspect-ratio:auto;object-fit:cover}.coach-portrait{height:466px}.team-intro{height:auto}.team-layout{align-items:start}}
@media(min-width:801px){.team-list{align-self:start}}
@media(min-width:801px){.team.section{padding-top:72px;padding-bottom:72px}.team-layout{margin-top:32px}.team-intro h2{font-size:clamp(48px,5.6vw,78px)}.team-intro>p{margin:20px 0 24px}.coach-portrait{width:min(100%,320px);height:386px}.coach-portrait img{height:360px}.team-list{min-height:400px}.team-row{min-height:100px;padding:20px 0}}
.class-addons{display:flex;align-items:baseline;gap:28px;max-width:1400px;margin:28px auto 0;padding-top:18px;border-top:1px solid #363a40;color:#aeb1b5}.class-addons span{color:var(--red);font:10px var(--mono);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}.class-addons p{margin:0;font:11px var(--mono);line-height:1.8}.method-visual .big-number{color:var(--cream)}
@media(max-width:800px){.class-addons{display:block;margin-top:24px}.class-addons p{margin-top:10px}.method-visual .big-number{font-size:clamp(190px,60vw,300px)}}
.button-red{background:var(--red);color:var(--cream)}.button-red:hover{background:var(--red-hover)}
.team-row,.location,.menu-toggle,.dialog-close{background:transparent;color:var(--cream)}.team-row:hover,.location:hover{background:var(--charcoal)}.team-row.expanded{background:var(--charcoal)}.team-row .row-icon{color:var(--red)}.team-row small strong{color:var(--red)}
.inline-form{background:var(--charcoal);border:1px solid var(--line);border-top:3px solid var(--red);padding:clamp(24px,4vw,42px);color:var(--cream)}.inline-form label{color:#c8cbc7}.inline-form input,.inline-form select{background:var(--ink);color:var(--cream);border:1px solid var(--line);padding:14px 13px}.inline-form input::placeholder{color:#777d85}.inline-form input:focus,.inline-form select:focus{border-color:var(--red);outline:2px solid var(--red);outline-offset:0}.inline-form .button-red,.inline-form .button-lime{background:var(--red);color:var(--cream)}.inline-form .button-red:hover,.inline-form .button-lime:hover{background:var(--red-hover)}
:root{--lime:var(--red)}body{background:var(--ink);color:var(--cream)}.site-header{background:var(--ink);border-color:var(--line)}.mobile-nav{background:var(--ink)}.button-lime{background:var(--red);color:var(--cream)}.button-outline{border-color:var(--cream);color:var(--cream)}.button:hover,.button-dark:hover,.card-arrow:hover{background:var(--red-hover);box-shadow:4px 4px 0 #000}.button-lime:hover{background:var(--red-hover)}:focus-visible{outline-color:var(--red)}.hero-text,.hero-proof p,.body-copy{color:#aeb1b5}.manifesto,.locations,.extras{background:var(--ink);color:var(--cream)}.manifesto .section-label,.locations .section-label,.extras .section-label{border-color:var(--line);color:var(--muted)}.manifesto-stamp{border-color:var(--red)}.classes{background:var(--charcoal)}.class-pkw,.moment-small{background:var(--red);color:var(--cream)}.team,.moments{background:var(--charcoal);color:var(--cream)}.team .section-label,.moments .section-label{border-color:var(--line);color:var(--muted)}.team-row{border-color:var(--line);color:var(--cream)}.team-row>span:first-child,.team-row em{color:var(--muted)}.team-row small{color:#aeb1b5}.team-row small a{color:var(--red)}.extra-tags span{border-color:var(--line)}.extra-tags span:hover{background:var(--red);color:var(--cream)}.method-visual{background:var(--red)}.method-copy{background:var(--ink);color:var(--cream)}.steps{border-color:var(--line)}.steps>div{border-color:var(--line)}.steps p{color:#aeb1b5}.steps b{color:var(--cream)}.location.active{background:var(--charcoal);border-color:var(--red)}.location{color:var(--cream);border-color:var(--line)}.location small,.location-index,.hours span{color:var(--muted)}.hours strong{color:var(--cream)}.map-pin{background:var(--red);box-shadow:5px 5px 0 #000}.final-cta{background:var(--ink)}.final-cta h2 i,.section-heading h2 i,.method h2 i,.team h2 i,.locations h2 i,.extras h2 i,.moments h2 i{color:var(--red)}.site-footer{background:var(--ink);border-color:var(--line);color:var(--muted)}.site-footer a:last-child{color:var(--red)}.pulse-dot{background:var(--red);box-shadow:0 0 0 4px #321619}.route-line i{background:var(--red)}.route-card{background:var(--charcoal)}.visual-tag{background:var(--red);color:var(--cream)}.mobile-action-bar{background:rgba(10,11,13,.94);border-color:var(--line)}.mobile-action-bar .button-dark{background:var(--charcoal)}.contact-dialog{background:var(--charcoal);border-color:var(--line)}.contact-dialog .choice.active,.contact-dialog .choice:hover{background:var(--red);border-color:var(--red)}.contact-dialog input:focus{border-color:var(--red);outline-color:var(--red)}
.button:hover{transform:translate(-4px,-4px);box-shadow:4px 4px 0 var(--lime)}.button-dark:hover{box-shadow:4px 4px 0 var(--lime)}.card-arrow:hover{transform:translate(-4px,-4px);box-shadow:4px 4px 0 var(--lime)}
.quick-choice{border:0;padding:0;margin:13px 0 0}.quick-choice legend{font:10px var(--mono);text-transform:uppercase;padding:0 0 8px}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.choice{min-height:58px;background:#fff;border:1px solid var(--line);padding:8px;text-align:left;font:600 11px var(--sans);transition:background .2s,color .2s,transform .2s}.choice small{display:block;color:var(--muted);font:9px var(--mono);margin-top:4px}.choice.active,.choice:hover{background:var(--lime);border-color:var(--ink);color:var(--ink)}.choice.active small,.choice:hover small{color:var(--ink)}.team-row small a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:420px){.choice-grid{grid-template-columns:1fr}.choice{min-height:48px}}
.contact-dialog{background:var(--ink);color:var(--cream);border:1px solid #39403b}.contact-dialog>p:not(.eyebrow){color:#aab0aa}.contact-dialog input{background:#171b1a;color:var(--cream);border-color:#39403b}.contact-dialog input::placeholder{color:#7e857e}.contact-dialog input:focus{border-color:var(--lime);outline:2px solid var(--lime);outline-offset:0}.contact-dialog .quick-choice legend{color:var(--cream)}.contact-dialog .choice{background:#171b1a;color:var(--cream);border-color:#39403b}.contact-dialog .choice small{color:#99a099}.contact-dialog .choice.active,.contact-dialog .choice:hover{background:var(--lime);color:var(--ink);border-color:var(--lime)}.contact-dialog .choice.active small,.contact-dialog .choice:hover small{color:var(--ink)}
.button-outline{border:1px solid var(--ink);background:transparent}.hero-proof strong{font-size:14px}.mobile-action-bar{display:none}
@media(max-width:800px){body{padding-bottom:76px}.hero-actions{align-items:stretch;flex-direction:column;gap:12px}.hero-actions .button{width:100%}.mobile-action-bar{position:fixed;display:grid;grid-template-columns:1fr 1fr;gap:8px;left:0;right:0;bottom:0;padding:10px;background:rgba(248,247,244,.94);border-top:1px solid var(--ink);z-index:50;backdrop-filter:blur(12px);opacity:0;transform:translateY(110%);pointer-events:none;transition:opacity .25s,transform .25s}.mobile-action-bar.is-visible{opacity:1;transform:none;pointer-events:auto}.mobile-action-bar .button{min-height:52px;padding:0 10px;gap:8px}.mobile-action-bar .button:hover{box-shadow:none;transform:none}}