/* Decorative scenery moves independently of reading and navigation. */
.scroll-scene{--film-hidden:0;--cloud-shift:0px;--cloud-drift:0px;--cloud-opacity:.76}
.cinema-ribbon{mask:url(#hero-film-mask)}
.film-draw-mask{stroke-dasharray:1;stroke-dashoffset:var(--film-hidden)}
.cloud-seam{position:absolute;inset:auto 0 -50px;height:245px;overflow:hidden;pointer-events:none;z-index:0}
.cloud-bank{position:absolute;width:570px;height:250px;opacity:var(--cloud-opacity);transform:translate3d(var(--cloud-drift),var(--cloud-shift),0);transform-origin:center;pointer-events:none;filter:blur(3px)}
.cloud-bank--left{left:-170px;bottom:0}
.cloud-bank--right{right:-125px;bottom:-25px;scale:-1 1}
.hero{overflow-x:clip;overflow-y:visible}
.hero-atmosphere{overflow:clip}
.hero .hero-content,.hero .hero-visual{z-index:1}
.courses{position:relative;z-index:1}
.showcase{position:relative;isolation:isolate;padding-top:136px}
.showcase>.section-heading,.showcase>.gallery,.showcase>.gallery-bottom{position:relative;z-index:1}
.showcase-atmosphere{position:absolute;inset:0 calc((min(100vw, 1352px) - 100vw)/2 - 56px);pointer-events:none;z-index:0;overflow:clip}
.showcase-film{position:absolute;width:100%;height:100px;top:10px;left:0;opacity:.38}
.showcase-film .showcase-film-art{mask:url(#showcase-film-mask)}
.showcase-clouds{position:absolute;inset:auto 0 0;height:250px;overflow:hidden}
.showcase-clouds .cloud-bank--left{left:-180px;bottom:-80px;opacity:calc(var(--cloud-opacity)*.85)}
.showcase-clouds .cloud-bank--right{right:-175px;bottom:-75px;opacity:calc(var(--cloud-opacity)*.9)}
.director-slate{position:absolute;top:4px;right:max(20px,calc((100% - 1160px)/2));width:124px;aspect-ratio:200/170;transform:rotate(-9deg);filter:drop-shadow(0 12px 14px #bb73981b)}
.slate-lid{transform-origin:28px 68px}
.slate-reveal.is-revealed .slate-lid{animation:slate-close 1.25s cubic-bezier(.2,.75,.2,1) .15s both}
@keyframes slate-close{0%,35%{transform:rotate(-23deg)}70%{transform:rotate(1deg)}83%{transform:rotate(-4deg)}100%{transform:rotate(0)}}
.scroll-motion-ready [data-scroll-reveal]{transition:opacity .9s cubic-bezier(.2,.75,.2,1),translate .9s cubic-bezier(.2,.75,.2,1);transition-delay:var(--reveal-delay,0ms)}
.scroll-motion-ready [data-scroll-reveal]:not(.is-revealed):not(:focus-within){opacity:0;translate:0 26px}
.scroll-motion-ready .slate-reveal{transition:opacity 1.1s ease,translate 1.1s cubic-bezier(.16,1,.3,1),rotate 1.1s cubic-bezier(.16,1,.3,1)}
.scroll-motion-ready .slate-reveal:not(.is-revealed){translate:20px 42px;rotate:16deg;opacity:0}
.scroll-motion-ready .slate-reveal.is-revealed{translate:0 0;rotate:0deg;opacity:1}
/* Shadows and existing hover transforms remain independent of the entrance. */
[data-scroll-reveal]:focus-within{opacity:1;translate:0 0;transition-delay:0ms}
@media(min-width:1500px){.cloud-seam{bottom:-45px}.cloud-bank{width:650px;height:280px}.cloud-bank--left{left:-190px}.cloud-bank--right{right:-120px}}
@media(max-width:1100px) and (min-width:761px){
 .showcase-atmosphere{inset-inline:-36px}
 .director-slate{width:110px;right:24px;top:7px}
 .cloud-bank--left{left:-270px}.cloud-bank--right{right:-230px}
}
@media(max-width:760px){
 .cloud-seam{height:175px;bottom:-20px}
 .cloud-bank{width:340px;height:170px}
 .cloud-bank--left{left:-130px;bottom:0}
 .cloud-bank--right{right:-160px;bottom:2px}
 .showcase{padding-top:116px}
 .showcase-atmosphere{inset-inline:-20px}
 .showcase-film{height:76px;top:10px;opacity:.3}
 .director-slate{width:91px;right:12px;top:0}
 .showcase-clouds{height:180px}
 .showcase-clouds .cloud-bank--left{left:-180px;bottom:-45px}
 .showcase-clouds .cloud-bank--right{right:-190px;bottom:-55px}
 .scroll-motion-ready [data-scroll-reveal]{transition-duration:.75s}
 .scroll-motion-ready [data-scroll-reveal]:not(.is-revealed):not(:focus-within){translate:0 19px}
}
@media(max-width:360px){.showcase-atmosphere{inset-inline:-16px}.director-slate{right:12px;width:81px}}
@media(prefers-reduced-motion:reduce){
 .film-draw-mask{stroke-dashoffset:0!important}
 .cloud-bank{transform:none!important;opacity:.65!important}
 .slate-lid{animation:none!important;transform:none!important}
 .scroll-motion-ready [data-scroll-reveal],.scroll-motion-ready .slate-reveal{opacity:1!important;translate:0 0!important;rotate:0deg!important;transition:none!important}
}
