/* One screen for the complete film, then a single compositor-driven reveal. */
:root{--header-height:80px;--gutter:clamp(20px,2.4vw,52px)}
html{scrollbar-gutter:stable;overflow-anchor:none;scroll-padding-top:0}
html.intro-locked{overflow:clip;overscroll-behavior:none}
.intro-locked body{position:fixed;inset:0;width:100%;overflow:clip;overscroll-behavior:none}
.header{height:var(--header-height);padding-inline:var(--gutter)}
.hero{height:calc(100svh - var(--header-height));min-height:0;overflow:hidden}
.statement{height:100%;min-height:0;padding:clamp(22px,4svh,46px) 8%;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
h1{font-size:clamp(90px,23svh,246px);margin:20px 0;align-self:center}
:lang(de) h1{font-size:clamp(80px,21svh,220px)}
:lang(sk) h1{font-size:clamp(86px,22svh,234px)}
.intro{margin-top:0;max-width:390px}
.intro h2{font-size:clamp(14px,2svh,20px)}
.intro p{font-size:clamp(10px,1.55svh,13px)}
.launch-link{margin-top:clamp(10px,2svh,24px);min-height:40px;padding-bottom:6px}
.visual.video-hero{height:100%;min-height:0;max-height:none}
.film-screen{height:100%;width:auto;max-width:100%;max-height:none;transition:opacity .45s ease}
.video-hero .film-actions{left:18px;right:18px;bottom:14px}
.film-actions button{background:#ffffffdc;box-shadow:none}
.editorial{padding:clamp(30px,5svh,64px) var(--gutter) 24px;min-height:0;display:flex;flex-direction:column;justify-content:flex-start}
.editorial>.eyebrow{margin-bottom:clamp(18px,3svh,32px);font-size:10px;letter-spacing:.16em}
.contact-sheet{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.05vw,24px);width:100%;margin:0;padding:0;overflow:visible}
.gallery-item{min-width:0}
.collection-controls{margin-top:26px;min-height:54px;padding-top:10px}
.gallery-nav{display:none}
.is-unfolding body>.page{visibility:hidden}
.motion-viewport{position:fixed;inset:0;z-index:90;overflow:hidden;contain:strict;pointer-events:none;background:var(--paper,#f4f3ef)}
.motion-camera{position:absolute;left:0;top:0;width:100%;overflow:hidden;contain:strict;will-change:transform;backface-visibility:hidden}
.motion-camera .page{visibility:visible}
.motion-camera video{visibility:hidden}
.is-unfolding .film-screen{visibility:hidden}
.is-unfolding .film-actions,.is-unfolding .film-actions button{pointer-events:none}
.is-unfolding .hero-still{opacity:0}
.is-revealing .contact-sheet{visibility:hidden}
.motion-card{position:fixed;top:0;left:0;margin:0;pointer-events:none;transform-origin:0 0;will-change:transform,opacity;backface-visibility:hidden;contain:layout paint style;background:#fff}

@media(max-width:760px){
 :root{--header-height:60px;--gutter:16px}
 .header{gap:10px}.brand img{width:132px}.brand>span{font-size:8px}
 .hero{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);height:calc(100svh - var(--header-height))}
 .statement{padding:14px 20px 16px;display:block;height:auto}
 .edition{font-size:8px}
 h1{display:flex;align-items:baseline;gap:.12em;font-size:clamp(56px,17vw,112px);line-height:.84;margin:14px 0 10px}
 h1>span+span{margin-top:0}:lang(de) h1{font-size:clamp(48px,14vw,96px)}:lang(sk) h1{font-size:clamp(54px,16vw,104px)}
 .intro h2{font-size:12px;margin:0}.intro p,.launch-link{display:none}
 .visual.video-hero{height:100%;max-height:none;min-height:0}
 .film-screen{height:min(100%,177.7778vw);max-height:none;width:auto}
 .video-hero .film-actions{left:12px;right:12px;bottom:10px}
 .film-actions button{padding:8px 10px;font-size:9px;min-height:38px}
 .editorial{padding:28px var(--gutter) 22px;min-height:0}
 .contact-sheet{display:flex;gap:12px;width:100%;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 8px}
 .gallery-item{flex:0 0 78%;scroll-snap-align:start}
 .collection-controls{margin-top:16px}.gallery-nav{display:flex}
 .motion-card{max-width:none}
}
@media(max-height:560px) and (min-width:761px){
 :root{--header-height:60px}.statement{padding:18px 8%}h1{font-size:22svh;margin:10px 0}.edition{font-size:8px}.intro h2{font-size:12px;margin-bottom:6px}.intro p{font-size:10px}.launch-link{margin-top:6px;min-height:32px;font-size:11px}
}
.intro-locked h1>span{animation:none}

/* Preserve the exact last movie card while its blank margins close. */
.motion-origin{position:fixed;top:0;left:0;z-index:110;pointer-events:none;transform-origin:0 0;will-change:transform,clip-path;backface-visibility:hidden;contain:layout paint style;background:#fff}
.motion-origin>.end-card{width:100%;height:100%}
