.cinematic-welcome{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#0d2740;color:#fff;overflow:hidden}
.cinematic-welcome::backdrop{background:#0d2740}
.cinematic-welcome video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cinematic-welcome::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#07152225,#07152255 50%,#071522b0);pointer-events:none}
.cinematic-welcome__copy{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:70px 24px;text-align:center;animation:cinematic-copy 1.5s ease both}
.cinematic-welcome__copy p{font:600 .78rem/1.5 Arial,sans-serif;letter-spacing:.23em;text-transform:uppercase;color:#f4e2c2;margin:0 0 18px}
.cinematic-welcome__copy h1{font:400 clamp(2.6rem,7vw,6rem)/1.08 Georgia,serif;max-width:1000px;margin:0 0 36px;color:white;text-shadow:0 3px 25px #0005}
.cinematic-welcome__enter,.cinematic-welcome__skip{border:1px solid #ffffff80;border-radius:999px;padding:14px 22px;color:white;background:#102b3f55;font:600 .9rem Arial,sans-serif;cursor:pointer;backdrop-filter:blur(8px)}
.cinematic-welcome__skip{position:absolute;right:24px;top:max(24px,env(safe-area-inset-top));z-index:2;font-size:.75rem;padding:11px 16px}
.cinematic-welcome button:focus-visible{outline:3px solid #d8b77a;outline-offset:5px}
@keyframes cinematic-copy{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.cinematic-welcome__copy{animation:none}}

.cinematic-welcome{opacity:1;transition:opacity .28s ease}.cinematic-welcome.is-leaving{opacity:0}.cinematic-welcome.is-leaving::backdrop{background:transparent}
