@font-face{font-family:Bodoni;src:url(../assets/bodoni.ttf);font-weight:500;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{--panel:#f7efe2;--panel-ink:#352c29;--paper:#f7efe2;--gold:#74532d;--ink:#352c29}*{box-sizing:border-box}html{scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Manrope,Arial,sans-serif}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #74532d;outline-offset:6px}.skip{position:fixed;top:-100px;z-index:100;background:var(--paper);color:var(--ink);padding:14px}.skip:focus{top:4px}.mast{position:fixed;inset:0 0 auto;z-index:20;display:flex;justify-content:space-between;align-items:flex-start;padding:28px 5vw;background:var(--panel);pointer-events:none}.mast a{pointer-events:auto}.brand{font-size:22px;font-weight:700;text-decoration:none;line-height:1.2}.brand span{display:block;font-size:13px;font-weight:400;margin-top:7px}.contact-link{color:var(--gold);font-size:15px;text-decoration:none;border-bottom:1px solid #74532d88;padding:6px 0}.scroll-room{height:360vh}.stage{position:sticky;top:0;height:100svh;min-height:740px;background:var(--panel);display:grid;grid-template-columns:.85fr 1.15fr;gap:5vw;padding:165px 6vw 65px;align-items:start}.type-panel{position:relative;isolation:isolate;padding:28px 0}.type-panel>*{position:relative;z-index:1}.type-panel .paint-wipe{position:absolute;inset:0 -18px;z-index:0;opacity:0;pointer-events:none}.occasion{font-size:15px;color:var(--gold);display:flex;align-items:center;gap:14px;margin:0 0 22px}.occasion svg{width:42px;height:34px;flex-shrink:0}.occasion path{fill:none;stroke:var(--gold);stroke-width:3;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}h1{font:500 clamp(68px,7.2vw,112px)/1.04 Bodoni,Georgia,serif;letter-spacing:-.035em;margin:0 0 27px}#act-copy{max-width:370px;margin:0 0 30px}.stage-actions{display:flex;align-items:center;gap:16px 24px;flex-wrap:wrap}.course-cta{background:var(--ink);color:#fffaf3;padding:12px 21px;text-decoration:none;font-size:15px}.stage-actions button{font-size:14px;border:0;background:transparent;color:var(--gold);padding:10px 0;text-decoration:underline;text-underline-offset:5px}.scroll-indicator{margin-top:42px;color:var(--gold);font-size:12px}.progress{height:1px;background:#74532d33;margin-top:13px;max-width:310px}.progress:before{content:'';display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(var(--progress,0));transform-origin:left}.film-panel{position:relative;overflow:hidden;width:100%;aspect-ratio:16/9;background:#352c29;border-radius:58px 58px 3px 3px;outline:1px solid #ae9471;outline-offset:11px;box-shadow:0 10px 30px #352c2909}.poster,canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}canvas{opacity:0}canvas.ready{opacity:1}.film-credit{position:absolute;bottom:5px;right:8px;color:#fffaf3;background:#352c29bb;font-size:11px;padding:3px 7px;margin:0}.courses{padding:85px 9vw 0;background:#fffcf6}.course-intro{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.course-intro h2,.invitation h2{font:500 clamp(45px,5.4vw,82px)/1.1 Bodoni,Georgia,serif;letter-spacing:-.025em;margin:0}.course-intro p{max-width:480px;margin:0;font-size:16px}.course-list{margin-top:65px}details{border-top:1px solid #ae947166;padding:25px 0}summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;gap:24px}summary::-webkit-details-marker{display:none}summary h3{font:500 clamp(30px,3vw,45px)/1.2 Bodoni,Georgia,serif;margin:0}summary span:before{content:'+';color:var(--gold);font:400 27px/1 Manrope}details[open] summary span:before{content:'−'}.course-body{margin:22px 0 3px 37%;max-width:600px}.course-body p{margin:0 0 22px}.actions{display:flex;gap:18px 25px;flex-wrap:wrap;font-size:14px}.actions a{color:var(--gold)}.other-offers{color:var(--gold);font-size:14px;margin:55px 0 22px}.invitation{padding:75px 0 90px;margin-top:45px}.invitation>p{color:var(--gold);font-size:15px;margin:0 0 22px}.invitation a{display:inline-block;margin:28px 30px 0 0;font-size:15px;color:var(--gold)}footer{background:#faf9f4;color:#202823;padding:28px 6vw}.source-credit{font-size:13px;max-width:760px;margin:0 0 26px}dialog{border:1px solid #ae9471;background:#f7efe2;color:var(--ink);padding:22px;max-width:min(1000px,94vw);max-height:96svh}dialog::backdrop{background:#241e22dd}dialog video{display:block;width:100%;max-height:74svh;margin-top:18px}dialog button{background:transparent;color:var(--ink);padding:8px 13px;border:1px solid #ae9471}dialog p{font-size:13px}.reduced .scroll-room,.static .scroll-room{height:100svh;min-height:740px}.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:90px}.mast{height:86px;padding:20px 24px}.brand{font-size:18px}.brand span{font-size:12px}.contact-link{font-size:14px}.stage{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:120px 25px 30px;gap:25px;min-height:780px}.film-panel{order:1;flex-shrink:0;border-radius:30px 30px 2px 2px;outline-offset:7px}.type-panel{order:2;padding:0}.occasion{font-size:12px;gap:8px;margin-bottom:12px}.occasion svg{width:32px;height:27px}h1{font-size:clamp(52px,15.4vw,70px);margin-bottom:16px;line-height:1.03}#act-copy{font-size:14px;line-height:1.55;max-width:350px;margin-bottom:18px}.stage-actions{gap:9px 20px}.course-cta{font-size:14px;padding:10px 15px}.stage-actions button{font-size:13px}.scroll-indicator{display:none}.film-credit{font-size:9px;bottom:3px;right:5px}.courses{padding:50px 24px 0}.course-intro{display:block}.course-intro h2,.invitation h2{font-size:47px}.course-intro p{margin-top:22px;font-size:15px}.course-list{margin-top:35px}details{padding:22px 0}summary h3{font-size:29px}.course-body{margin:22px 0 0;font-size:15px}.actions{font-size:13px}.other-offers{margin:40px 0 18px}.invitation{padding:45px 0 65px;margin-top:20px}.invitation a{font-size:14px}footer{padding:24px}.reduced .scroll-room,.static .scroll-room{min-height:780px}dialog{padding:14px}}@media(max-width:350px){.stage{padding-top:102px;gap:20px}.occasion{font-size:11px}.stage-actions{gap:5px 14px}.stage-actions button{font-size:12px}.course-intro h2{font-size:41px}}@media(prefers-reduced-motion:reduce){.scroll-room{height:100svh;min-height:780px}.stage{position:relative}.paint-wipe,.scroll-indicator{display:none}.occasion path{stroke-dashoffset:0!important}}
.occasion .heart-base{opacity:.35;stroke-dasharray:none;stroke-dashoffset:0}
