@font-face{font-family:Anton;src:url(../assets/anton.ttf);font-display:swap}@font-face{font-family:Manrope;src:url(../assets/manrope-regular.ttf);font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url(../assets/manrope.ttf);font-weight:700;font-display:swap}:root{--paper:#f8f7f2;--ink:#17201e;--blue:#173de8;--yellow:#dcff43;--panel:var(--paper);--panel-ink:var(--ink)}*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;font:17px/1.55 Manrope,Arial,sans-serif;background:var(--paper);color:var(--ink)}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ff7600;outline-offset:6px}.skip{position:fixed;top:-100px;z-index:100;background:var(--yellow);color:var(--ink);padding:14px}.skip:focus{top:5px}.mast{position:fixed;inset:0 0 auto;z-index:20;display:flex;justify-content:space-between;align-items:flex-start;padding:24px 32px;pointer-events:none}.mast a{pointer-events:auto}.brand{font-weight:700;text-decoration:none;line-height:1.1;color:var(--panel-ink);font-size:23px}.brand span{display:block;font-size:14px;margin-top:8px}.contact-link{background:var(--paper);color:var(--ink);padding:9px 20px;text-decoration:none;font-weight:700}.scroll-room{height:420vh}.stage{position:sticky;top:0;height:100svh;min-height:700px;display:grid;grid-template-columns:40% 60%;overflow:hidden}.type-panel{padding:115px 32px 32px;background:var(--panel);color:var(--panel-ink);position:relative;display:flex;flex-direction:column}.act-count{font-size:15px;font-weight:700;margin-bottom:24px}h1{font:clamp(90px,11.8vw,185px)/.94 Anton,Impact,sans-serif;letter-spacing:-.025em;margin:0 0 24px}#act-copy{max-width:340px;margin:0 0 28px}.stage-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 24px;margin-top:auto;padding-top:18px}.course-cta{background:var(--panel-ink);color:var(--panel);padding:12px 17px;font-weight:700;text-decoration:none}.stage-actions button{border:0;background:transparent;color:inherit;padding:10px 0;text-decoration:underline;text-underline-offset:5px}.scroll-indicator{margin-top:36px;font-size:13px}.progress{height:3px;background:color-mix(in srgb,var(--panel-ink) 20%,transparent);margin-top:14px}.progress:before{content:'';display:block;width:100%;height:100%;background:var(--panel-ink);transform:scaleX(var(--progress,0));transform-origin:left}.film-panel{position:relative;overflow:hidden;background:#071512}.poster,canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:53% center}canvas{opacity:0}canvas.ready{opacity:1}.film-credit{position:absolute;bottom:8px;right:22px;color:white;font-size:11px;text-shadow:0 1px 4px black;pointer-events:none}.courses{padding:90px 6vw 0}.course-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:10vw;align-items:end}.course-intro h2,.invitation h2{font:clamp(60px,7.4vw,120px)/1 Anton,Impact,sans-serif;letter-spacing:-.02em;margin:0}.course-intro p{max-width:410px;margin:0 0 4px;font-size:20px}.course-list{margin-top:85px}details{border-top:2px solid #17201e33;padding:26px 0}summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;gap:20px}summary::-webkit-details-marker{display:none}summary h3{font:clamp(32px,4.5vw,68px)/1.1 Anton,Impact,sans-serif;margin:0;letter-spacing:-.015em}summary span:before{content:'+';font-size:40px;line-height:1}details[open] summary span:before{content:'−'}.course-body{margin:26px 0 6px 40%;max-width:600px}.course-body p{margin:0 0 24px}.actions{display:flex;flex-wrap:wrap;gap:20px;font-weight:700}.invitation{margin-top:80px;padding:65px 0 100px;background:var(--blue);color:white;position:relative}.invitation:before{content:'';position:absolute;inset:0 -6vw;background:var(--blue);z-index:-1}.invitation p{margin:0 0 30px}.invitation a{display:inline-block;margin:35px 35px 0 0;font-weight:700}footer{background:#faf9f4;padding:28px 6vw}.source-credit{max-width:760px;font-size:13px;margin:0 0 26px}dialog{border:0;background:#071512;color:white;padding:22px;max-width:min(1000px,94vw);max-height:96svh}dialog::backdrop{background:#000d}dialog video{display:block;width:100%;max-height:74svh;margin-top:18px}dialog button{border:1px solid #fff9;background:transparent;color:white;padding:9px 14px}dialog p{font-size:13px}.reduced .scroll-room,.static .scroll-room{height:100svh;min-height:700px}.reduced .stage,.static .stage{position:relative}.reduced .scroll-indicator,.static .scroll-indicator{display:none}.static canvas{display:none}@media(max-width:700px){html{scroll-padding-top:80px}.mast{padding:18px 20px;background:var(--panel);height:82px}.brand{font-size:19px}.brand span{font-size:12px;margin-top:6px}.contact-link{font-size:14px;padding:6px 12px;border:1px solid #17201e33}.stage{min-height:720px;grid-template-columns:1fr;grid-template-rows:52% 48%;padding-top:82px}.film-panel{grid-row:1}.type-panel{grid-row:2;padding:18px 20px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr auto;gap:10px 16px}.act-count{grid-column:2;grid-row:1;text-align:right;margin:0;font-size:12px}h1{grid-column:1;grid-row:1 / span 2;font-size:clamp(58px,18vw,85px);margin:0;align-self:center}#act-copy{grid-column:2;grid-row:2;font-size:14px;margin:0;align-self:center}.stage-actions{grid-column:1 / -1;grid-row:3;margin:0;padding:0;justify-content:space-between;gap:8px}.course-cta{font-size:14px;padding:10px 13px}.stage-actions button{font-size:13px}.scroll-indicator{display:none}.film-credit{font-size:11px;right:12px;bottom:3px}.courses{padding:55px 20px 0}.course-intro{display:block}.course-intro h2,.invitation h2{font-size:64px}.course-intro p{font-size:16px;margin-top:24px}.course-list{margin-top:45px}details{padding:22px 0}summary h3{font-size:35px}.course-body{margin:24px 0 0}.actions{font-size:14px;gap:16px}.invitation{padding:45px 0 65px;margin-top:50px}.invitation:before{inset:0 -20px}.invitation a{margin:25px 24px 0 0;font-size:15px}footer{padding:24px 20px}dialog{padding:16px}.reduced .scroll-room,.static .scroll-room{min-height:720px}}@media(max-width:350px){h1{font-size:61px}#act-copy{font-size:12px}.type-panel{column-gap:10px}.course-intro h2{font-size:54px}}@media(prefers-reduced-motion:reduce){.scroll-room{height:100svh;min-height:720px}.stage{position:relative}.scroll-indicator{display:none}}
@media(max-width:700px){.type-panel{grid-template-rows:1fr auto;padding-bottom:50px}.act-count{position:absolute;top:13px;right:20px}h1{grid-row:1;align-self:start;margin-top:34px}h1[data-act="1"]{font-size:clamp(44px,14.6vw,64px)}#act-copy{grid-row:1;align-self:start;margin-top:36px}.stage-actions{grid-row:2}}
