/* Opening geometry and timing follow the supplied reference; selectors are scoped. */
.mcc-cinema{position:sticky;top:0;width:100%;height:100svh;min-height:480px;background:#11151a;color:#fff;z-index:0;overflow:hidden}
.mcc-cinema-canvas{height:100%;position:relative;overflow:hidden;isolation:isolate}
.mcc-cinema-visual,.mcc-cinema-stack{position:absolute;inset:0}
.mcc-cinema-stage{position:absolute;top:-20vw;bottom:0;width:30%;transform-origin:50% 50%;will-change:transform,opacity}
.mcc-cinema-stage-0{left:3%}.mcc-cinema-stage-1{left:35%;top:-8vw}.mcc-cinema-stage-2{left:67%}
.mcc-cinema-track{position:absolute;width:100%;will-change:transform}
.mcc-cinema-group{display:flow-root}
.mcc-cinema-group figure{margin:0 0 1.5vw;background:#FFFFFF;aspect-ratio:auto;overflow:hidden}
.mcc-cinema-group img{width:100%;height:auto;display:block}
.mcc-cinema-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,14,20,.68),rgba(10,14,20,.15) 50%,rgba(10,14,20,.25));pointer-events:none}
.mcc-cinema-stack{z-index:2;pointer-events:none;transform-origin:50% 50%;display:none}
.mcc-cinema-stack figure{position:absolute;left:50%;top:50%;width:24%;margin:0;background:#fff;opacity:0;transform:translate(-50%,-50%);will-change:transform,opacity}
.mcc-cinema-stack img{display:block;width:100%;height:auto}
.mcc-cinema-title{position:absolute;z-index:3;left:50%;bottom:8%;width:87%;transform:translateX(-50%);color:#fff;text-align:center;transition:opacity .85s,translate .85s;pointer-events:none;text-shadow:0 3px 28px rgba(0,0,0,.18)}
.mcc-cinema-title>span{font:400 clamp(13px,1.5vw,24px)/1.5 'Cinzel',serif;letter-spacing:.23em}
.mcc-cinema-title>p{font:400 clamp(72px,15.4vw,270px)/1 'Cinzel',serif;letter-spacing:.025em;margin:8px 0 0}
.mcc-cinema.is-scrolled .mcc-cinema-title{opacity:0;translate:0 -36%}
.mcc-cinema-edge{position:absolute;z-index:4;top:0;bottom:0;width:2.2%;overflow:hidden;background:#11151a;color:#fff;pointer-events:none}
.mcc-cinema-edge-left{left:0}.mcc-cinema-edge-right{right:0}
.mcc-cinema-edge>div{animation:mcc-edge-flow 65s linear infinite;display:flex;flex-direction:column;width:100%;will-change:transform}
.mcc-cinema-edge-right>div{animation-direction:reverse}
.mcc-cinema-edge span{writing-mode:vertical-rl;text-orientation:sideways;white-space:nowrap;font:400 clamp(10px,.8vw,14px)/1.8 'Noto Serif JP',serif;letter-spacing:.08em;padding:2vw 0;align-self:center}
.mcc-motion-prepare .mcc-cinema-stage,.mcc-motion-prepare .mcc-cinema-title,.mcc-motion-prepare .mcc-cinema-edge{opacity:0}
.mcc-cinema.is-opening .mcc-cinema-stack{display:block}
.mcc-cinema.is-opening .mcc-cinema-stage,.mcc-cinema.is-opening .mcc-cinema-edge,.mcc-cinema.is-opening .mcc-cinema-title{opacity:0}
.mcc-cinema.is-paused .mcc-cinema-edge>div{animation-play-state:paused}
html.mcc-motion-lock,html.mcc-motion-lock body{overflow:hidden!important}
@keyframes mcc-edge-flow{to{transform:translateY(-50%)}}
@media(max-width:760px){
 .mcc-cinema{height:100svh;min-height:460px}
 .mcc-cinema-stage{width:65.3333vw;top:-60vw}
 .mcc-cinema-stage-0{left:-52.5333vw}.mcc-cinema-stage-1{left:17.0667vw;top:-40vw}.mcc-cinema-stage-2{left:86.6667vw}
 .mcc-cinema-group figure{margin-bottom:2.66667vw}
 .mcc-cinema-stack figure{width:52.2667vw}
 .mcc-cinema-title{width:92%;bottom:16%}.mcc-cinema-title>p{font-size:16vw}.mcc-cinema-title>span{font-size:11px;letter-spacing:.15em}
 .mcc-cinema-edge{width:100%;height:21px;top:0;bottom:auto;left:0}.mcc-cinema-edge-right{top:auto;bottom:0}
 .mcc-cinema-edge>div{flex-direction:row;width:max-content;animation-name:mcc-edge-flow-mobile;animation-duration:45s}
 .mcc-cinema-edge span{writing-mode:horizontal-tb;padding:0 24px;font-size:10px;line-height:21px}
}
@keyframes mcc-edge-flow-mobile{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){
 .mcc-cinema *{animation:none!important;transition:none!important}
 .mcc-cinema-stack{display:none!important}
 .mcc-cinema-stage,.mcc-cinema-title,.mcc-cinema-edge{opacity:1!important}
 html.mcc-motion-lock,html.mcc-motion-lock body{overflow:auto!important}
}
