:root{color-scheme:dark;--bg:#0c0b0e;--surface:#141218;--text:#f8f5f8;--muted:#b2aab9;--purple:#c76aff;--red:#ff4e52;--border:#302a35;--max:1320px}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:1.0rem;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid var(--purple);outline-offset:5px}::selection{background:#863cc9;color:white}.skip{position:fixed;top:-100px;left:12px;background:white;color:black;padding:10px;z-index:100}.skip:focus{top:10px}.header{max-width:var(--max);padding:28px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:auto}.wordmark{font-weight:900;font-size:1.625rem;letter-spacing:-1px;line-height:1.1;display:inline-block}.wordmark span{display:block;font-size:0.75rem;letter-spacing:2px;margin-top:9px;font-weight:400;color:var(--muted)}nav{display:flex;gap:26px;font-size:0.875rem}nav a{color:#d4ccd9}nav a:hover,.text-link:hover{color:var(--purple)}.header-cta{font-size:0.875rem;border-bottom:1px solid var(--purple);padding:8px 0;white-space:nowrap}.header-cta span{color:var(--purple);margin-left:14px}.menu-toggle{display:none}.hero{max-width:var(--max);margin:20px auto 0;display:grid;grid-template-columns:1fr 1fr;padding:0 40px;min-height:650px;gap:20px}.hero-copy{padding:58px 0 44px;z-index:1}.eyebrow{font-size:0.75rem;letter-spacing:2px;color:var(--muted);display:flex;gap:13px;align-items:center}.line{display:inline-block;width:26px;height:1px;background:var(--purple)}h1{font-size:clamp(58px,6.6vw,94px);font-weight:900;line-height:1.02;letter-spacing:-4px;margin:36px 0 26px}h1 em{font-family:Georgia,serif;font-weight:400;background:linear-gradient(110deg,#da83ff 25%,#ff5a62 90%);background-clip:text;-webkit-background-clip:text;color:transparent;letter-spacing:-4px}.hero-lead{font-size:1.25rem;line-height:1.5;margin:0 0 18px}.hero-small{color:var(--muted);font-size:1.0rem;line-height:1.7;margin:0}.hero-actions{display:flex;align-items:center;gap:28px;margin:30px 0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;padding:17px 25px;min-height:56px;font-size:0.9375rem;font-weight:700;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:#dba7ff;color:#1d0928}.primary:hover{background:#ebcfff}.text-link{font-size:0.875rem;border-bottom:1px solid #706176;padding:8px 0}.text-link span{margin-left:16px}.hero-address{display:flex;align-items:center;gap:10px;font-size:0.8125rem;color:var(--muted);margin-top:35px}.hero-address span{color:var(--purple);font-size:1.25rem}.hero-art{height:660px;position:relative;overflow:hidden;background:#09080b}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:50% 0;display:block}.hero-art:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--bg),transparent 15%),linear-gradient(0deg,var(--bg),transparent 25%)}.art-caption{position:absolute;bottom:28px;left:40px;right:10px;display:flex;gap:24px;z-index:1;font-size:0.75rem;letter-spacing:2px}.art-caption span:nth-child(2){color:var(--purple)}.art-caption span:nth-child(3){color:var(--red)}.art-index{position:absolute;right:8px;top:25px;writing-mode:vertical-rl;color:#a897b2;font-size:0.75rem;letter-spacing:2px}.manifesto-strip{max-width:var(--max);padding:26px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:25px auto 0;border-block:1px solid var(--border);font-size:0.8125rem;letter-spacing:2px;color:#c3b8c8}.manifesto-strip span:nth-child(even){color:var(--purple)}.footer{max-width:var(--max);margin:auto;padding:40px;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--border);color:var(--muted);font-size:0.875rem}.footer .wordmark{color:var(--text)}
@media(min-width:1450px){.hero-art{height:700px}.hero{min-height:700px}}
@media(max-width:1100px){.header{padding-inline:25px;gap:16px}nav{gap:16px;font-size:0.8125rem}.hero{padding-inline:25px;grid-template-columns:1.05fr 1fr}.hero-art{height:630px}h1{letter-spacing:-3px}.hero-actions{gap:20px}.button{padding:16px 20px}.art-caption{left:25px;gap:12px;font-size:0.75rem}.hero-small br{display:none}.hero-small{max-width:330px}}
@media(max-width:850px){.header{flex-wrap:wrap;padding:24px}.header-cta{margin-left:auto}.menu-toggle{display:block;border:0;background:transparent;font-size:0.875rem;padding:10px}.menu-toggle span{margin-left:6px}nav{width:100%;flex-wrap:wrap;justify-content:center;padding:18px 0 0;order:4}html.js nav{display:none}html.js nav.open{display:flex}.hero{padding:0 24px;margin:0;gap:0}.hero-copy{padding-top:42px}.hero-art{height:580px}h1{font-size:3.75rem;letter-spacing:-3px}.hero-lead{font-size:1.125rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.hero-address{font-size:0.75rem;max-width:280px}.art-caption{flex-direction:column;gap:5px}.manifesto-strip{padding:22px 24px;flex-wrap:wrap;justify-content:center;font-size:0.75rem;gap:14px}.footer{padding:32px 24px;flex-wrap:wrap}.footer .wordmark{width:100%}}
@media(max-width:580px){.header{gap:10px}.wordmark{font-size:1.4375rem}.wordmark span{font-size:0.75rem;letter-spacing:1.3px}.header-cta{font-size:0.75rem}.header-cta span{margin-left:4px}.menu-toggle{font-size:0.75rem;padding:8px 2px}.hero{display:flex;flex-direction:column;position:relative}.hero-copy{padding-top:28px;padding-bottom:20px}.eyebrow{font-size:0.75rem;letter-spacing:1.5px}h1{font-size:clamp(48px,12vw,70px);letter-spacing:-2px;margin-top:25px}h1 em{letter-spacing:-2px}.hero-small{max-width:340px}.hero-actions{flex-direction:row;align-items:center;gap:18px;flex-wrap:wrap}.hero-address{margin-top:22px;max-width:none;font-size:0.75rem}.hero-art{height:420px;margin:0 -24px}.hero-art img{object-fit:cover;object-position:50% 0;max-width:470px;margin:auto}.hero-art:after{background:linear-gradient(0deg,var(--bg),transparent 25%),linear-gradient(180deg,var(--bg),transparent 15%)}.art-caption{left:24px;bottom:14px;flex-direction:row;gap:15px;flex-wrap:wrap;font-size:0.75rem}.art-index{right:18px}.manifesto-strip{margin-top:0}.manifesto-strip span{font-size:0.75rem}.manifesto-strip span:nth-child(6){display:none}.footer{font-size:0.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.section{max-width:var(--max);padding:100px 40px;margin:auto}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:45px}.section-top>p,.section-aside p{max-width:350px;color:var(--muted);font-size:1.0rem;margin-bottom:10px}h2{font-size:clamp(36px,4.2vw,60px);line-height:1.13;font-weight:800;letter-spacing:-2px;margin:24px 0 0}h2 em{font-family:Georgia,serif;font-weight:400;color:var(--purple)}.direction-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.direction-card{padding:25px 24px 22px;border:1px solid var(--border);background:linear-gradient(150deg,#1b1520,#121014 65%);display:flex;flex-direction:column;min-height:395px;position:relative}.direction-card.strength{background:linear-gradient(150deg,#241517,#121014 65%)}.direction-card.soft{background:linear-gradient(150deg,#171321,#121014 65%)}.direction-card.kids{background:linear-gradient(150deg,#211322,#121014 65%)}.card-top{display:flex;justify-content:space-between;align-items:center}.card-number{font-family:Georgia,serif;font-style:italic;font-size:2.0rem;color:var(--purple);line-height:1}.strength .card-number{color:var(--red)}.card-label{font-size:0.75rem;letter-spacing:1px;color:#a399ab}.direction-card h3{font-size:1.4375rem;line-height:1.2;letter-spacing:-.5px;margin:35px 0 12px}.direction-card p{color:var(--muted);font-size:0.875rem;line-height:1.6;margin:0 0 20px}.direction-card ul{padding:0;list-style:none;margin:0 0 20px;font-size:0.875rem}.direction-card li{padding:7px 0;border-bottom:1px solid var(--border)}.card-link{font-size:0.875rem;display:flex;justify-content:space-between;margin-top:auto;padding-top:20px}.card-link span{color:var(--purple)}.card-link:hover{color:var(--purple)}.direction-note{display:flex;justify-content:space-between;gap:30px;margin-top:32px;padding:22px 0;border-bottom:1px solid var(--border)}.direction-note>span{font-size:1.125rem}.direction-note p{color:var(--muted);max-width:480px;font-size:0.875rem;margin:0}.schedule{padding-top:65px}.timezone{color:#bdaec5;font-size:0.75rem;letter-spacing:1.5px}.days{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid var(--border);gap:5px;margin-bottom:28px}.days button{background:none;border:0;border-bottom:2px solid transparent;padding:19px 8px;color:var(--muted);font-size:0.875rem}.days button[aria-pressed=true]{color:var(--purple);border-color:var(--purple);background:#211429}.days button:hover{color:var(--text)}.day-short{display:none}.schedule-panel h3{font-size:1.125rem;font-weight:400;color:var(--muted);margin:36px 0 14px}.js .schedule-panel h3{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.schedule-head,.schedule-row{display:grid;grid-template-columns:120px 1.3fr 1fr 110px;gap:20px;align-items:center}.schedule-head{color:#978b9f;font-size:0.75rem;letter-spacing:1px;padding:0 20px 15px}.schedule-row{min-height:70px;padding:15px 20px;border-top:1px solid var(--border)}.schedule-row:hover{background:#151119}.schedule-row time{font-size:1.625rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.6px}.class-title{font-size:1.125rem}.class-tag{font-size:0.875rem;color:var(--muted)}.schedule-book{font-size:0.875rem;display:flex;align-items:center;justify-content:space-between;color:#dec4ed}.schedule-book:hover{color:var(--purple)}.schedule-book span{font-size:1.0rem}.source-note{font-size:0.8125rem;max-width:830px;line-height:1.6;color:#a497ac;margin:25px 0 0}.prices{padding-top:65px}.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.price-card{border:1px solid var(--border);padding:25px;background:var(--surface);display:flex;flex-direction:column;min-height:225px}.price-note{font-size:0.75rem;color:var(--muted)}.price-card h3{font-size:1.25rem;font-weight:400;margin:15px 0 5px}.price{font-size:2.4375rem;font-weight:700;letter-spacing:-1px;margin:0 0 22px;line-height:1.3}.price span{font-size:1.25rem;font-weight:400;margin-left:6px;color:var(--muted)}.price-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:14px;font-size:0.875rem;margin-top:auto}.price-link:hover{color:var(--purple)}.featured{grid-column:span 2;position:relative;background:linear-gradient(115deg,#291333,#2c131d);border-color:#61395f}.featured .price-note{color:#e3b9f9}.featured h3{font-size:1.625rem}.featured .price{font-size:2.75rem}.featured .price-link{border-color:#61395f}.marathons{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding-top:70px;padding-bottom:70px}.marathon-art{height:470px;overflow:hidden;position:relative}.marathon-art img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.marathon-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--bg),transparent 22%),linear-gradient(90deg,transparent 80%,var(--bg))}.marathon-copy h2{margin-bottom:24px}.marathon-copy p{color:var(--muted);max-width:430px;line-height:1.7}.marathon-copy .marathon-lead{font-size:1.25rem;color:var(--text);margin-bottom:12px}.marathon-details{display:flex;gap:18px;flex-wrap:wrap;font-size:0.75rem;letter-spacing:1px;color:#d6b7e7;margin:25px 0}.marathon-copy .marathon-footnote{font-size:0.75rem;max-width:350px}.contacts{padding-top:70px}.contacts .section-top{gap:20px}.contacts h2{font-size:clamp(32px,3.8vw,54px)}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr 1fr;border-block:1px solid var(--border);padding:35px 0;gap:35px}.contact-label{font-size:0.75rem;letter-spacing:1.2px;color:var(--muted)}.contact-item h3{font-size:1.4375rem;font-weight:500;letter-spacing:-.5px;line-height:1.5;margin:15px 0 10px}.contact-item p{font-size:0.875rem;color:var(--muted);margin-bottom:24px}.contact-item .text-link{display:inline-block}.contact-item h3 a:hover{color:var(--purple)}[hidden]{display:none!important}
@media(max-width:1100px){.section{padding-inline:25px}.direction-grid{grid-template-columns:repeat(2,1fr)}.direction-card{min-height:340px}.direction-card h3{margin-top:25px}.price-card{padding:20px}.price-grid{grid-template-columns:repeat(3,1fr)}.featured{grid-column:span 3}.marathons{gap:30px}.marathon-art{height:420px}.contact-grid{gap:24px}.contact-item h3{font-size:1.3125rem}}
@media(max-width:850px){.section{padding:65px 24px}.section-top{gap:30px}.section-top>p,.section-aside p{font-size:0.875rem;max-width:260px}.section-top h2{font-size:2.6875rem}.direction-note{flex-direction:column;gap:12px}.days button{font-size:0.75rem;padding:16px 4px}.schedule-head,.schedule-row{grid-template-columns:95px 1.2fr 1fr 95px;gap:12px}.schedule-row time{font-size:1.4375rem}.class-title{font-size:1.0rem}.class-tag,.schedule-book{font-size:0.75rem}.price-grid{grid-template-columns:repeat(2,1fr)}.featured{grid-column:span 2}.marathons{gap:24px}.marathon-art{height:390px}.marathon-copy h2{font-size:2.375rem}.marathon-copy .button{font-size:0.8125rem;padding:16px}.contact-grid{grid-template-columns:1fr 1fr}.contact-item:last-child{grid-column:span 2}.contacts .section-top{flex-direction:column;align-items:flex-start}.contact-item h3{font-size:1.375rem}}
@media(max-width:580px){.section{padding:58px 24px}.section-top{display:block;margin-bottom:30px}.section-top h2{font-size:2.4375rem;letter-spacing:-1.5px;margin-top:20px}.section-top>p,.section-aside p{max-width:340px;margin:22px 0 0;font-size:0.9375rem}.timezone{display:block;margin-top:15px}.direction-grid{grid-template-columns:1fr;gap:14px}.direction-card{min-height:0;padding:24px}.direction-card h3{font-size:1.5rem;margin-top:22px}.direction-card p br{display:none}.direction-card p{font-size:0.9375rem}.direction-card ul{font-size:0.9375rem;margin-bottom:8px}.card-label{font-size:0.75rem}.card-link{font-size:0.9375rem}.direction-note>span{font-size:1.125rem}.direction-note p{font-size:0.875rem}.day-full{display:none}.day-short{display:inline}.days button{font-size:0.9375rem;min-height:52px}.schedule-head{display:none}.schedule-row{grid-template-columns:72px 1fr;gap:4px 12px;padding:17px 0}.schedule-row time{grid-row:span 2;align-self:start;font-size:1.4375rem}.class-title{font-size:1.0625rem}.class-tag{font-size:0.8125rem;grid-column:2}.schedule-book{grid-column:2;font-size:0.875rem;justify-content:flex-start;gap:14px;padding:9px 0 1px}.schedule-panel h3{font-size:1.125rem}.price-grid{gap:12px}.price-card{padding:18px 15px;min-height:210px}.price-note{font-size:0.75rem;line-height:1.5}.price-card h3{font-size:1.125rem;line-height:1.4}.price{font-size:1.875rem}.price span{font-size:1.0625rem}.featured{grid-column:span 2}.featured .price{font-size:2.5rem}.source-note{font-size:0.75rem}.marathons{display:flex;flex-direction:column;gap:24px;padding-top:20px}.marathon-art{width:100%;height:300px;order:2}.marathon-copy{width:100%}.marathon-copy h2{font-size:2.5rem}.marathon-copy .button{font-size:0.9375rem;padding:17px 22px}.marathon-details{font-size:0.75rem;gap:14px}.marathon-art img{object-position:50% 25%}.contacts{padding-top:30px}.contacts .section-top h2{font-size:2.0rem}.contacts .section-top>.button{margin-top:24px}.contact-grid{grid-template-columns:1fr;padding:0;gap:0}.contact-item{padding:28px 0}.contact-item+.contact-item{border-top:1px solid var(--border)}.contact-item:last-child{grid-column:auto}.contact-item h3{font-size:1.4375rem}.contact-item p{font-size:0.9375rem}.contact-label{font-size:0.75rem}}

nav,.header-cta,.menu-toggle,.schedule-book,.class-tag,.text-link{font-size:.875rem}.card-label,.eyebrow,.art-caption,.art-index,.wordmark span,.timezone,.contact-label,.marathon-details,.manifesto-strip span{font-size:.75rem}
@media(max-width:850px){.header{gap:12px}}
@media(max-width:580px){.header{gap:10px}.wordmark span{font-size:.75rem;letter-spacing:.6px}.header-cta{display:none}.menu-toggle{margin-left:auto}.art-caption{font-size:.75rem}.hero-art{height:440px}}
.section-top[tabindex="-1"]:focus,.marathon-copy[tabindex="-1"]:focus,.header[tabindex="-1"]:focus{outline:none}

/* Marathon: supplied full portrait poster and readable companion content. */
.marathons{position:relative;isolation:isolate;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);padding-top:80px;padding-bottom:80px;border-top:1px solid #69316e;background:radial-gradient(ellipse at 12% 30%,#67259755,transparent 58%),radial-gradient(ellipse at 95% 65%,#b8273b44,transparent 58%),#100c16}
.marathons:before{content:"";position:absolute;top:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,#b843ff,#ff4870,#ff443e);z-index:-1}
.marathon-art{width:100%;max-width:480px;height:auto;aspect-ratio:4/5;justify-self:center;overflow:visible;position:relative;border:1px solid #a95edf77;box-shadow:-15px 8px 55px #a024ee33,15px 8px 55px #ff334433}
.marathon-art img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;object-position:center}
.marathon-art:after{display:none}
.marathon-copy{min-width:0}
.marathon-copy .eyebrow{color:#e2b4fa;margin-bottom:24px}
.marathon-copy h2{font-size:clamp(2.5rem,4.5vw,4.25rem);line-height:1.07;margin-bottom:12px}
.marathon-copy h2 em{background:linear-gradient(105deg,#d77cff 10%,#ff5574 90%);background-clip:text;-webkit-background-clip:text;color:transparent}
.marathon-copy .marathon-founder{color:#e9d9ef;font-size:1rem;margin:0 0 26px;line-height:1.5}
.marathon-copy .marathon-lead{font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.45;margin:0 0 26px;color:var(--text)}
.marathon-features{display:grid;gap:0;margin:0 0 30px;border-top:1px solid #b274ca44}
.marathon-feature{display:flex;gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid #b274ca44}
.marathon-number{font:italic 1.75rem Georgia,serif;color:#d77cff;flex:0 0 34px}
.marathon-feature:nth-child(2) .marathon-number{color:#f878bb}.marathon-feature:nth-child(3) .marathon-number{color:#ff697b}
.marathon-feature h3{font-size:1.0625rem;font-weight:600;line-height:1.4;margin:0 0 3px}
.marathon-copy .marathon-feature p{font-size:.875rem;line-height:1.5;margin:0;color:#c7b9d0}
.marathon-copy .marathon-button{background:linear-gradient(105deg,#d786ff,#ff6c88);color:#180e20;width:100%;max-width:360px;justify-content:space-between;box-shadow:0 7px 30px #c940b72b}
.marathon-copy .marathon-button:hover{background:linear-gradient(105deg,#e4adff,#ff97a9)}
.marathon-copy .marathon-footnote{max-width:360px;font-size:.8125rem;line-height:1.6;margin:15px 0 0;color:#c7b9d0}
@media(max-width:850px){.marathons{gap:28px;padding-top:60px;padding-bottom:60px}.marathon-copy h2{font-size:2.65rem}.marathon-art{height:auto}.marathon-feature{gap:12px}.marathon-copy .marathon-founder{margin-bottom:20px}.marathon-copy .marathon-lead{font-size:1.2rem}}
@media(max-width:580px){.marathons{display:flex;flex-direction:column;gap:32px;padding-top:44px;padding-bottom:44px}.marathon-copy{width:100%;order:0}.marathon-art{order:1;width:100%;height:auto;max-width:420px}.marathon-copy h2{font-size:clamp(2.5rem,10.5vw,3.5rem)}.marathon-copy .marathon-button{max-width:none}.marathon-copy .marathon-footnote{max-width:none}.marathon-copy .eyebrow{font-size:.8125rem;letter-spacing:1.4px}.marathon-art img{object-position:center}}
