/* Course layout inherits the homepage palette, fonts and surfaces. */
.course-page{--cream:var(--ink);--muted:var(--ink-3);--wine:var(--acc);--wine2:var(--acc-bright);--display:var(--f-display);--ui:var(--f-body);--mono:var(--f-mono);--max:var(--maxw);--course-nav-surface:color-mix(in oklab,var(--bg) 88%,transparent);--course-overlay:color-mix(in oklab,var(--bg) 78%,transparent);--course-featured:color-mix(in oklab,var(--acc) 10%,var(--panel));font-size:15px}
button,input,select{font:inherit}button{cursor:pointer}.course-wrap{max-width:var(--max);margin:0 auto;padding-left:40px;padding-right:40px}.grain{display:none}
.course-nav{position:fixed;z-index:80;inset:0 0 auto;height:76px;padding:0 36px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line-soft);background:var(--course-nav-surface);backdrop-filter:blur(18px)}
.course-brand{display:flex;align-items:center;font-family:var(--display);font-size:17px;font-weight:400;white-space:nowrap}.course-links{display:flex;align-items:center;gap:24px;font-size:11px;text-transform:uppercase;color:var(--ink-2)}.course-links a{padding:8px 0;border-bottom:1px solid transparent}.course-links a:hover{color:var(--ink);border-color:var(--acc)}
.course-btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;border:1px solid transparent;border-radius:var(--r-sm);background:var(--acc);color:var(--ink);padding:14px 24px;font-size:14px;font-weight:700;line-height:1.5;transition:background .25s,transform .25s;white-space:normal;text-align:center}.course-btn:hover{background:var(--acc-deep);transform:translateY(-2px)}.course-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.course-btn--small{padding:10px 17px;font-size:12px}.course-btn--ghost{background:transparent;border-color:var(--line)}.course-btn--ghost:hover{background:transparent;border-color:var(--acc)}.course-btn--large{padding:17px 28px}.full{width:100%}
.course-hero{min-height:570px;height:88svh;max-height:860px;display:flex;align-items:center;padding:116px 0 60px;position:relative}.hero-grid{width:100%;display:block}.hero-copy{max-width:980px}.course-kicker{font-family:var(--mono);font-size:11px;color:var(--acc-bright);display:inline-flex;align-items:center;gap:12px}.course-kicker::before{content:"";width:32px;height:1px;background:currentColor}.hero-copy h1{font-family:var(--display);font-size:88px;line-height:.98;letter-spacing:0;margin:26px 0;font-weight:400}.hero-copy h1 em,.section-intro h2 em,.course-cta h2 em{color:var(--ink-2);font-weight:400}.hero-lead{font-family:var(--ui);font-size:20px;color:var(--ink-2);max-width:550px;line-height:1.6}.chips{display:flex;gap:24px;flex-wrap:wrap;margin:24px 0}.chips span{font-family:var(--mono);font-size:11px;color:var(--ink-2)}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.text-link{font-size:12px;color:var(--ink-2);padding:12px 0}.text-link:hover{color:var(--ink)}.cohort{margin-top:24px;color:var(--ink-3);font-size:12px;display:flex;gap:10px;align-items:center}.cohort i{width:6px;height:6px;background:var(--acc);border-radius:50%}
.outcome-card{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1.2fr 1.4fr;gap:28px;align-items:center;padding-top:42px;padding-bottom:42px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.outcome-card>span{font-family:var(--mono);font-size:10px;color:var(--acc-bright)}.outcome-card h2{font-size:32px;font-weight:400;margin:0}.outcome-card p{font-size:14px;color:var(--ink-2);line-height:1.6}.mini-pipeline{grid-column:2/4;display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-family:var(--mono);font-size:10px;color:var(--ink-3)}.mini-pipeline i{color:var(--acc-bright)}.marquee{display:none}
.course-section{padding:110px 0;background:transparent;border:0;scroll-margin-top:76px}.section-intro{display:grid;grid-template-columns:1fr 3fr;gap:24px;align-items:start;margin-bottom:56px}.section-intro h2{font-size:56px;line-height:1.08;font-weight:400;margin:0;overflow-wrap:anywhere}.section-intro .course-kicker{padding-top:10px}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px}.large-copy{font-family:var(--display);font-size:30px;line-height:1.3;margin:0;color:var(--ink)}.lines{border-top:1px solid var(--line)}.lines div{display:flex;justify-content:space-between;gap:25px;padding:19px 0;border-bottom:1px solid var(--line)}.lines strong{font-family:var(--display);font-size:20px;font-weight:400}.lines span{font-size:12px;color:var(--ink-3);text-align:right;max-width:260px}
.lesson-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.lesson-grid article{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:28px 0;border-top:1px solid var(--line)}.lesson-grid article>span{font-family:var(--mono);font-size:11px;color:var(--acc-bright)}.lesson-grid h3{font-size:25px;font-weight:400;margin:0}.lesson-grid p{color:var(--ink-3);margin:12px 0 0;line-height:1.6;font-size:13px}.result-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.result{min-height:140px;padding:24px 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:24px}.result b{font-family:var(--mono);font-size:10px;color:var(--acc-bright)}.result span{font-family:var(--display);font-size:22px;overflow-wrap:anywhere}
.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.plan{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r);padding:36px 26px 26px;background:var(--panel)}.plan--featured{border-color:var(--acc);background:var(--course-featured)}.plan--lab{background:var(--panel)}.flag{position:absolute;right:18px;top:12px;font-family:var(--mono);font-size:9px;color:var(--acc-bright)}.plan-head{padding-bottom:22px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:14px}.plan-head span{font-family:var(--mono);font-size:11px;color:var(--ink-2)}.plan-head strong{font-family:var(--display);font-size:30px;line-height:1.2;font-weight:400;overflow-wrap:anywhere}.plan p{color:var(--ink-3);line-height:1.6;font-size:13px;margin:20px 0}.plan ul{padding-left:18px;color:var(--ink-2);line-height:1.8;margin:0 0 26px;font-size:13px}.plan .course-btn{margin-top:auto;width:100%}.fineprint{color:var(--ink-3);font-size:11px;line-height:1.6;margin-top:22px;max-width:900px}.club-plans{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:38px}.club-plans strong small{display:block;font-family:var(--ui);font-size:12px;font-weight:400;color:var(--ink-3);margin-top:10px}
.faq-wrap details{border-top:1px solid var(--line);padding:24px 0}.faq-wrap details:last-child{border-bottom:1px solid var(--line)}.faq-wrap summary{font-family:var(--display);font-size:24px;cursor:pointer}.faq-wrap details p{color:var(--ink-2);max-width:760px;line-height:1.6;margin-top:16px}.course-cta{text-align:center;padding:110px 0;background:transparent}.course-cta h2{font-family:var(--display);font-size:56px;font-weight:400;line-height:1.1;margin:24px auto 36px;overflow-wrap:anywhere}.course-cta p{font-size:12px;color:var(--ink-3);margin:18px auto 0;max-width:600px}.course-footer{padding-top:30px;padding-bottom:30px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line-soft);font-size:11px;color:var(--ink-3)}.course-footer .course-brand{color:var(--ink)}
.reg-modal{position:fixed;inset:0;z-index:120;display:none}.reg-modal.open{display:block}.reg-backdrop{position:absolute;inset:0;border:0;background:var(--course-overlay);backdrop-filter:blur(9px)}.reg-panel{position:absolute;right:0;top:0;height:100%;width:min(620px,100%);overflow-y:auto;background:var(--bg-2);border-left:1px solid var(--line);padding:40px}.reg-close{position:absolute;right:18px;top:12px;border:0;background:transparent;color:var(--ink-2);font-size:30px;width:40px;height:40px}.steps{display:flex;align-items:center;margin:12px 0 46px}.steps span{width:27px;height:27px;border:1px solid var(--line);display:grid;place-items:center;font-family:var(--mono);font-size:10px}.steps span.on{background:var(--acc);border-color:var(--acc)}.steps i{height:1px;flex:1;background:var(--line)}.reg-step{display:none}.reg-step.on{display:block}.reg-step h2{font-family:var(--display);font-size:42px;font-weight:400;line-height:1.1;margin:16px 0 26px}.reg-step label{display:block;font-size:12px;color:var(--ink-2);margin:17px 0}.reg-step input,.reg-step select{width:100%;margin-top:7px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink);padding:14px;outline:none}.reg-step input:focus,.reg-step select:focus{border-color:var(--acc)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.hidden{display:none!important}.summary{border-top:1px solid var(--line)}.summary div{display:flex;justify-content:space-between;gap:30px;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.summary span{color:var(--ink-3)}.summary b{text-align:right;overflow-wrap:anywhere}.legal-links{display:flex;gap:18px;flex-wrap:wrap;margin:18px 0;color:var(--ink-2);font-size:11px}.legal-links a{border-bottom:1px solid var(--acc)}.check{display:flex!important;align-items:flex-start;gap:11px;padding:16px 0;border-top:1px solid var(--line);margin:0!important;color:var(--ink-2)!important;line-height:1.6}.check input{width:18px!important;height:18px;margin:3px 0 0!important;accent-color:var(--acc);flex-shrink:0}.check.muted{color:var(--ink-3)!important}.modal-actions{display:flex;justify-content:space-between;gap:10px;margin-top:25px}.legal-note{font-size:11px;color:var(--ink-3);line-height:1.6;margin-top:20px}.reg-done{color:var(--ink-2);line-height:1.6;margin-bottom:25px}.reg-error{padding:14px;border:1px solid var(--acc);border-radius:var(--r-sm);color:var(--ink);font-size:13px;line-height:1.5}:focus-visible{outline:2px solid var(--acc-bright);outline-offset:4px}
@media(max-width:1100px){.hero-copy h1{font-size:76px}.section-intro h2,.course-cta h2{font-size:48px}.course-links{gap:16px}.plan-head strong{font-size:26px}}
@media(max-width:980px){.course-links a{display:none}.course-links a.course-home-link{display:inline-block}.course-nav{gap:16px}.course-links{margin-left:auto}.split{gap:40px}.section-intro{grid-template-columns:1fr}.outcome-card{grid-template-columns:1fr 2fr}.outcome-card p{grid-column:2}.mini-pipeline{grid-column:2}.plans-grid{grid-template-columns:1fr 1fr}.plans-grid:not(.club-plans) .plan:last-child{grid-column:1/-1}.lesson-grid{gap:0 24px}}
@media(max-width:680px){.course-nav{height:66px;padding:0 20px;gap:12px}.course-brand{font-size:14px}.course-links{font-size:10px}.course-btn--small{padding:9px 12px;font-size:11px}.course-wrap{padding-left:22px;padding-right:22px}.course-hero{height:auto;min-height:560px;padding:110px 0 48px}.hero-copy h1{font-size:48px;line-height:1.08}.hero-lead{font-size:17px}.course-kicker{font-size:10px}.chips{gap:18px}.hero-actions{gap:16px}.hero-actions .course-btn{padding:13px 18px}.outcome-card{display:block;padding-top:32px;padding-bottom:32px}.outcome-card h2{font-size:30px;margin:18px 0}.outcome-card p{margin-bottom:20px}.mini-pipeline{gap:10px;font-size:9px}.course-section{padding:76px 0}.section-intro{margin-bottom:36px;gap:18px}.section-intro h2,.course-cta h2{font-size:36px}.large-copy{font-size:26px}.split,.plans-grid,.club-plans,.lesson-grid{grid-template-columns:1fr}.split{gap:30px}.plans-grid:not(.club-plans) .plan:last-child{grid-column:auto}.result-grid{grid-template-columns:1fr 1fr;gap:16px}.result span{font-size:20px}.lines div{align-items:flex-start;flex-direction:column;gap:6px}.lines span{text-align:left}.course-cta{padding:76px 0}.course-footer{align-items:flex-start;flex-direction:column}.reg-panel{padding:34px 22px}.form-grid{grid-template-columns:1fr}.reg-step h2{font-size:34px}.modal-actions{flex-direction:column-reverse}.modal-actions .course-btn{width:100%}.faq-wrap summary{font-size:22px}}
@media(max-width:380px){.course-nav{padding:0 12px;gap:8px}.course-brand{font-size:12px}.hero-copy h1{font-size:39px}.course-links{font-size:9px}.course-btn--small{padding:9px}.summary div{gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

.turnstile-wrap{margin:14px 0 4px;display:flex;justify-content:center}
.turnstile-wrap.hidden{display:none}
