/* Twelve-second atmosphere loop. All layers share a clean, seamless endpoint. */
.hero-art{animation:opening-loop 12s cubic-bezier(.45,0,.55,1) infinite;will-change:transform}.hero-atmosphere{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}.hero-vignette{z-index:-1}.mist{position:absolute;width:85%;height:35%;left:30%;top:42%;border-radius:50%;background:radial-gradient(ellipse,#abc4c51a,transparent 65%);filter:blur(22px);animation:mist-drift 12s ease-in-out infinite}.mist-two{top:68%;left:5%;height:25%;opacity:.6;animation-direction:reverse;animation-delay:-4s}.light-bloom{position:absolute;inset:0;background:radial-gradient(ellipse at 84% 28%,#e4c38a23,transparent 34%);animation:light-breathe 12s ease-in-out infinite}.hero-copy{animation:opening-title 1.25s cubic-bezier(.2,.8,.2,1) both}.motion-paused .hero-art,.motion-paused .hero-atmosphere *,.hero-offscreen .hero-art,.hero-offscreen .hero-atmosphere *{animation-play-state:paused}.gallery-panel.motion-reveal{transform:translateY(var(--reveal-y,0px)) scale(var(--reveal-scale,1));filter:blur(var(--reveal-blur,0px));opacity:var(--reveal-opacity,1);transform-origin:center top;will-change:transform,opacity}.gallery-panel{perspective:1400px}.gallery-tabs button{transition:color .25s,border-color .25s!important}.button,.nav-cta,.edit-play{transition:transform .25s,background .25s,border-color .25s,box-shadow .25s}.button span,.nav-cta span,.text-link span{display:inline-block;transition:transform .25s}.button:hover span,.nav-cta:hover span{transform:translate(3px,-2px)}.text-link:hover span{transform:translateY(3px)}.button:hover{box-shadow:0 8px 30px #52d5e016}.button:active,.edit-play:active{transform:scale(.98)}.edit-player{position:relative;display:flex;align-items:center;gap:22px;padding:0 0 22px;margin-bottom:22px}.edit-play{background:transparent;color:var(--cyan);border:1px solid #52d5e060;padding:10px 18px;border-radius:25px;font-size:11px;min-width:145px}.edit-play:hover{background:#52d5e012;border-color:var(--cyan)}#edit-progress-label{font-size:10px;color:#969ca6}.edit-progress{position:absolute;bottom:0;left:0;right:0;height:1px;background:#ffffff14;overflow:hidden}.edit-progress i{display:block;width:100%;height:100%;background:var(--cyan);transform:scaleX(0);transform-origin:left}.screen-caption blockquote{min-height:2.7em}.screen{--ambient-scale:1}.screen>img{transform:scale(var(--ambient-scale));transition:transform 6s linear}.screen.edit-running>img{--ambient-scale:1.06}.retained-image{position:absolute;right:24px;bottom:59px;font:7px monospace;letter-spacing:1px;color:#b1d5cc;opacity:0;transform:translateY(6px);transition:opacity .6s,transform .6s}.retained-image span{color:var(--cyan);margin:0 7px}.screen.is-revision .retained-image{opacity:1;transform:none}.screen.is-revision .timeline i{background:#7ed7b5}.screen.is-revision .timeline b{background:#7ed7b5}.motion-paused .gallery-panel.motion-reveal{filter:none;transform:none;opacity:1}.motion-paused .hero-copy{animation:none}.gallery-image-button{isolation:isolate}.gallery-transition-old{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:1;pointer-events:none}.gallery-image-button .capture-zoom{z-index:2}
@keyframes opening-loop{0%,100%{transform:scale(1.015) translateX(0)}50%{transform:scale(1.075) translateX(-.6%)}}@keyframes mist-drift{0%,100%{transform:translate(-5%,3%) scale(.95);opacity:.3}50%{transform:translate(9%,-8%) scale(1.15);opacity:.8}}@keyframes light-breathe{0%,100%{opacity:.25}50%{opacity:.8}}@keyframes opening-title{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(max-width:650px){.hero-art{animation-duration:16s}.mist{filter:blur(12px)}.edit-player{align-items:flex-start;gap:12px;flex-direction:column}.edit-play{font-size:10px}#edit-progress-label{font-size:9px}.retained-image{font-size:6px;right:20px}.screen-caption blockquote{min-height:3em}}
.tab-hidden .hero-art,.tab-hidden .hero-atmosphere *{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.hero-art,.hero-atmosphere *,.hero-copy{animation:none!important}.gallery-panel.motion-reveal{filter:none!important;transform:none!important;opacity:1!important}.screen>img{transform:none!important}.button,.button span,.nav-cta,.nav-cta span,.text-link span,.gallery-tabs button,.retained-image{transition:none!important}.gallery-transition-old{display:none}}
