/* Cinematic render presentation. Original works retain their own colors. */
.cinematic-world{overflow:hidden;background:#121313!important}
.cinematic-plate{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:68% center;transform-origin:72% 55%;transition:opacity 1.2s,filter 1.2s;will-change:transform;opacity:1}
.cinematic-world[data-chapter="2"] .cinematic-plate{filter:blur(7px) brightness(.35);opacity:.65}
.cinematic-world[data-chapter="3"] .cinematic-plate{filter:brightness(.65)}
.cinematic-world[data-chapter="4"] .cinematic-plate{filter:brightness(.5)}
.cinematic-gallery{position:absolute;left:56%;right:6%;top:36%;height:34%;display:flex;align-items:center;opacity:0;transform:translateY(24px);transition:opacity .65s,transform .8s;perspective:1200px}
.cinematic-gallery.visible{opacity:1;transform:translateY(0)}
.cinematic-panel{flex:0 0 40%;background:#171916;padding:5px;border:1px solid #d4cbb13b;box-shadow:0 25px 65px #0008;transform:rotateY(-12deg);z-index:3}
.cinematic-panel+.cinematic-panel{margin-left:-12%;transform:translateY(16px) rotateY(-15deg) scale(.9);z-index:2}
.cinematic-panel:last-child{transform:translateY(28px) rotateY(-18deg) scale(.8);z-index:1}
.cinematic-panel img{display:block;width:100%;height:auto}
body.immersive .vignette{background:linear-gradient(90deg,#090b0a55,transparent 55%),linear-gradient(0deg,#090b0a99,transparent 22%,transparent 85%,#090b0a22)}
@media(max-aspect-ratio:1/1){.cinematic-plate{height:80%;top:20%;object-position:100% center;mask-image:linear-gradient(transparent,#000 12%)}.cinematic-world:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080a09b0,transparent 80%);pointer-events:none}.cinematic-gallery{left:56%;right:3%;top:58%;height:24%}}
@media(max-width:700px){.cinematic-plate{object-position:64% center}.cinematic-gallery{left:30%;right:6%;top:65%;height:20%}.cinematic-panel{padding:3px}}
@media(prefers-reduced-motion:reduce){.cinematic-plate,.cinematic-gallery{transition:none;will-change:auto}}
.motion-off .cinematic-plate,.motion-off .cinematic-gallery{transition:none}
/* v6 motion: readable hold, staggered entry, restrained exhibition depth. */
.chapter .scene-copy{transition:opacity .45s,visibility .45s;transform:none}
.scene-copy>.eyebrow,.scene-copy>h1,.scene-copy>h2,.scene-copy>.chinese,.scene-copy>.scene-description,.scene-copy>.featured,.scene-copy>.scene-button,.scene-copy>.all-work,.scene-copy>.pending{opacity:0;transform:translate3d(0,20px,0);transition:opacity .55s,transform .9s cubic-bezier(.16,1,.3,1)}
.chapter.active .scene-copy>*{opacity:1;transform:translate3d(0,0,0)}
.chapter.active .scene-copy>:nth-child(2){transition-delay:.08s}
.chapter.active .scene-copy>:nth-child(3){transition-delay:.17s}
.chapter.active .scene-copy>:nth-child(4){transition-delay:.24s}
.chapter.active .scene-copy>:nth-child(5){transition-delay:.3s}
.cinematic-gallery.visible{transform:translate3d(var(--drift-x,0px),var(--drift-y,0px),0)}
.cinematic-panel{opacity:0;translate:0 35px;transition:opacity .7s,translate 1.2s cubic-bezier(.16,1,.3,1)}
.cinematic-gallery.visible .cinematic-panel{opacity:1;translate:0 0}
.cinematic-gallery.visible .cinematic-panel:nth-child(2){transition-delay:.12s}
.cinematic-gallery.visible .cinematic-panel:nth-child(3){transition-delay:.24s}
.hud button,.scene-button,.all-work,.scene-footer button{transition:background .25s,border-color .25s,transform .25s}
.hud button:hover,.scene-button:hover,.all-work:hover{transform:translateY(-2px)}
.hud button:active,.scene-button:active,.all-work:active{transform:translateY(0)}
.archive:not([hidden]){animation:archive-in .45s cubic-bezier(.16,1,.3,1)}
@keyframes archive-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.scene-copy>*,.cinematic-panel,.chapter .scene-copy{transition:none!important}.archive:not([hidden]){animation:none}.cinematic-gallery{transform:none!important}}
.motion-off .scene-copy>*,.motion-off .cinematic-panel,.motion-off .chapter .scene-copy{transition:none!important}
.motion-off .archive:not([hidden]){animation:none}
.motion-off .cinematic-gallery{transform:none!important}
/* User film: inherited cover crop; no stretching or baked-in UI. */
.cinematic-video{opacity:0;pointer-events:none;will-change:auto;transition:opacity .35s,filter 1.2s}
.cinematic-video.ready{opacity:1}
.cinematic-world[data-chapter="2"] .cinematic-video:not(.ready){opacity:0}
.motion-off .cinematic-video{opacity:0!important}
.contact-details{max-width:100%;box-sizing:border-box}
.contact-details a{display:flex;align-items:center;min-height:44px;pointer-events:auto;color:inherit;overflow-wrap:anywhere;letter-spacing:.5px}
.contact-details a:hover{text-decoration:underline;text-underline-offset:5px}
/* Closing collaboration orbit: echoes the supplied film, without covering its landscape. */
.contact-orbit{position:fixed;left:58%;top:50%;width:29%;max-width:440px;color:var(--ui-white);opacity:0;visibility:hidden;transform:translateY(calc(-50% + 16px));transition:opacity .65s,transform .85s var(--ui-ease),visibility .65s;pointer-events:none}
#contact.active .contact-orbit{opacity:1;visibility:visible;transform:translateY(-50%)}
.orbit-kicker{margin:0;text-align:center;font:10px/1.6 Plex,monospace;letter-spacing:2.1px;color:var(--ui-muted)}
.orbit-stage{position:relative;aspect-ratio:1;margin:12px 0 8px}
.orbit-lines{display:block;width:100%;height:100%;stroke:var(--ui-white);stroke-width:.7;stroke-opacity:.35;transition:transform 1.1s var(--ui-ease)}
.orbit-lines>circle:first-child{stroke-opacity:.16}
.orbit-lines .orbit-point{fill:var(--ui-accent);stroke:none}
.orbit-invite{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:112px;aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;border:1px solid var(--ui-line);border-radius:50%;background:#12131385;backdrop-filter:blur(6px);color:var(--ui-white);font-size:11px;letter-spacing:2px;pointer-events:auto;transition:background .3s,border-color .3s}
.orbit-invite .orbit-arrow{font:38px/1 Barlow,sans-serif;letter-spacing:0;transition:transform .3s}
.orbit-invite:hover{background:#121313b8;border-color:var(--ui-accent)}
.orbit-invite:hover .orbit-arrow{transform:translate(3px,-3px)}
.orbit-stage:has(.orbit-invite:hover) .orbit-lines{transform:rotate(6deg)}
.orbit-caption{border-top:1px solid var(--ui-line);padding-top:18px;display:flex;flex-direction:column;align-items:center;gap:12px;font-size:11px;letter-spacing:1.3px;color:var(--ui-muted)}
.orbit-signature{font:9px/1.6 Plex,monospace;letter-spacing:2px}
@media(max-width:1000px){.contact-orbit{left:61%;width:30%;top:50%}.orbit-kicker{font-size:8px;letter-spacing:1px}.orbit-invite{width:86px;font-size:10px}.orbit-caption{font-size:9px;letter-spacing:0}}
@media(max-width:700px),(max-height:500px){.contact-orbit{display:none}}
@media(prefers-reduced-motion:reduce){.contact-orbit,.orbit-lines,.orbit-invite,.orbit-arrow{transition:none!important}.orbit-stage:has(.orbit-invite:hover) .orbit-lines{transform:none}}
.motion-off .contact-orbit,.motion-off .orbit-lines,.motion-off .orbit-invite,.motion-off .orbit-arrow{transition:none!important}
.motion-off .orbit-stage:has(.orbit-invite:hover) .orbit-lines{transform:none}
