/* One small WebGL canvas is reused for the arrival and the header. */
.logo-arrival{position:fixed;inset:0;z-index:55;pointer-events:none;isolation:isolate;overflow:hidden}
.logo-arrival:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 44%,#15121eea,#0c0d13eb 65%);opacity:1;transition:opacity .55s}
.logo-arrival-stage{position:absolute;transform-origin:0 0;will-change:transform}
.logo-arrival-stage canvas{display:block;width:100%;height:100%}
.logo-arrival-wordmark{position:absolute;top:calc(44% + min(19vw,175px));left:0;right:0;text-align:center;color:#f5f2eb;font-size:clamp(18px,4.5vw,30px);font-weight:500;letter-spacing:.2em;opacity:0;animation:logo-wordmark 2.5s ease both}
.logo-arrival.settling:before,.logo-arrival.settling .logo-arrival-wordmark{opacity:0;animation:none}
@keyframes logo-wordmark{0%,28%{opacity:0;transform:translateY(8px)}65%,100%{opacity:1;transform:none}}
.logo-stage canvas{display:block}
.logo-replay{display:flex;align-items:center;gap:10px;min-height:44px;padding:12px 18px;width:100%;color:#f5f2eb;background:transparent;text-align:left;border:0;font:inherit;font-size:12px;cursor:pointer}
.logo-replay:hover{background:#ffffff0c}
/* Echo the approved glass backdrop quietly, without a heavy image download. */
.cinema-enabled .architectural-lines{background:radial-gradient(ellipse at 73% 43%,#28223170,transparent 57%),radial-gradient(ellipse at 0 100%,#171b2b88,transparent 60%),#0c0d13}
.cinema-enabled .architectural-lines:before{content:"";position:absolute;inset:-22% -28% 10% 68%;border:1px solid #d4c4ab13;border-radius:50%;background:linear-gradient(118deg,#ffffff04,transparent 40%);box-shadow:inset 18px 0 35px #d4c4ab04,0 0 0 28px #d4c4ab02;transform:rotate(-18deg);pointer-events:none}
@media(prefers-reduced-motion:reduce){.logo-arrival{display:none}.logo-arrival-wordmark{animation:none}}
