html { scrollbar-gutter:stable; }
html.to-intro-running { overflow:hidden; }
html.to-intro-running::before { content:''; position:fixed; inset:0; z-index:99998; background:#fdfbf5; }
.to-intro-loader { position:fixed; inset:0; z-index:99999; display:grid; place-items:center; isolation:isolate; background:#fdfbf5; opacity:1; transition:opacity .25s ease; }
.to-intro-loader.is-leaving { opacity:0; pointer-events:none; }
.to-intro-loader__film { display:block; width:min(360px,70vw,58svh); height:auto; aspect-ratio:1/1; mask-image:radial-gradient(ellipse at center,#000 60%,transparent 73%); object-fit:contain; mix-blend-mode:darken; opacity:0; transition:opacity .24s ease; }
.to-intro-loader.is-playing .to-intro-loader__film { opacity:1; }
.to-intro-loader__skip { position:absolute; right:max(24px,env(safe-area-inset-right)); bottom:max(28px,env(safe-area-inset-bottom)); min-height:44px; padding:10px 20px; border:1px solid #d6bd95; border-radius:999px; background:#faf5e9; color:#51412c; font:500 14px/1.4 var(--to-sans,sans-serif); cursor:pointer; }
.to-intro-loader__skip:hover { background:#eeddbc; }
.to-intro-loader__skip:focus-visible { outline:2px solid #84623d; outline-offset:4px; }
@media (prefers-reduced-motion:reduce) { .to-intro-loader,.to-intro-loader__film { transition:none; } }

/* Suppress only the automatic focus restored by the intro, never keyboard navigation. */
.to-logo[data-intro-focus]:focus { outline:none; }
