#knightWelcomeIntro{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#061c12;overflow:hidden;color:#fff}#knightWelcomeIntro::backdrop{background:#061c12}#knightWelcomeIntro video{display:block;width:100%;height:100%;object-fit:cover;background:#061c12}#knightWelcomeIntro button{position:absolute;right:clamp(1rem,3vw,3rem);top:clamp(1rem,3vw,3rem);padding:.75rem 1.1rem;border:1px solid #ead8a2;border-radius:2rem;background:#102519e6;color:#fff;font-weight:750;z-index:1}#knightWelcomeIntro button:focus-visible{outline:3px solid #ead8a2;outline-offset:3px}.welcome-intro-caption{position:absolute;left:1.5rem;bottom:1rem;font-size:.65rem;letter-spacing:.13em;color:#ead8a2}.profile-welcome-preference{padding:1rem;background:#edf3ed;border:1px solid #cbd8cb;border-radius:.6rem}.profile-welcome-preference>label{display:flex!important;align-items:center;justify-content:space-between;gap:1rem}.welcome-preference-toggle{display:flex;align-items:center;gap:.6rem}.welcome-preference-toggle input{appearance:none;width:44px!important;min-width:44px;height:25px!important;padding:0!important;border:1px solid #78916a;border-radius:20px!important;background:#b5bfb3;cursor:pointer;position:relative}.welcome-preference-toggle input::after{content:'';position:absolute;left:3px;top:3px;width:17px;height:17px;border-radius:50%;background:white;transition:transform .15s}.welcome-preference-toggle input:checked{background:#25402b}.welcome-preference-toggle input:checked::after{transform:translateX(18px)}.welcome-preference-toggle input:focus-visible{outline:3px solid #78916a;outline-offset:3px}.profile-welcome-preference small{display:block;margin-top:.5rem}.profile-welcome-preference p{font-size:.8rem;margin:.4rem 0 0}.profile-welcome-preference p:empty{display:none}@media(prefers-reduced-motion:reduce){.welcome-preference-toggle input::after{transition:none}}

#knightWelcomeIntro .welcome-intro-sound{right:calc(clamp(1rem,3vw,3rem) + 160px)}#knightWelcomeIntro .welcome-intro-sound[hidden]{display:none}

#knightWelcomeIntro .welcome-film-titles{position:absolute;left:clamp(1.25rem,6vw,8rem);right:clamp(1.25rem,6vw,8rem);bottom:clamp(4rem,10vh,8rem);display:grid;gap:.7rem;pointer-events:none;text-shadow:0 2px 12px #000,0 1px 3px #000;z-index:1}#knightWelcomeIntro .welcome-film-titles strong{color:#fff;font-size:clamp(1.5rem,3.8vw,4.6rem);line-height:1.15;letter-spacing:.025em;font-weight:750;text-wrap:balance}#knightWelcomeIntro .welcome-film-titles span{color:#f5dfa0;font-size:clamp(.85rem,1.5vw,1.85rem);letter-spacing:.1em}#knightWelcomeIntro::after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#04140a99);pointer-events:none}.welcome-intro-caption{z-index:1}#knightWelcomeIntro .welcome-film-titles span:empty{display:none}

#knightWelcomeIntro .welcome-music-credit{position:absolute;right:1.5rem;bottom:1rem;color:#ead8a2;font-size:.65rem;z-index:1}


#knightWelcomeIntro::after{background:none}

/* Caption-free web film fills the viewport behind translucent responsive captions. */
#knightWelcomeIntro.welcome-responsive-captions{--caption-height:190px}
#knightWelcomeIntro.welcome-responsive-captions video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center top}
#knightWelcomeIntro.welcome-responsive-captions .welcome-film-titles{left:0;right:0;bottom:0;box-sizing:border-box;padding:20px clamp(20px,5vw,96px) max(52px,calc(env(safe-area-inset-bottom) + 36px));gap:10px;background:rgba(6,28,18,.72);text-shadow:0 1px 3px #000}
#knightWelcomeIntro.welcome-responsive-captions .welcome-film-titles strong{font-size:clamp(1.25rem,2.6vw,2.75rem);line-height:1.15;overflow-wrap:anywhere}
#knightWelcomeIntro.welcome-responsive-captions .welcome-film-titles span{font-size:clamp(.85rem,1.4vw,1.7rem);line-height:1.35;letter-spacing:.02em;overflow-wrap:anywhere}
#knightWelcomeIntro .welcome-intro-caption,#knightWelcomeIntro .welcome-music-credit{bottom:max(14px,env(safe-area-inset-bottom));font-size:clamp(.5rem,.8vw,.65rem)}
@media(max-width:480px){#knightWelcomeIntro .welcome-intro-caption{left:16px;max-width:60%;letter-spacing:.04em}#knightWelcomeIntro .welcome-music-credit{right:16px}}

/* Entry-screen controls remain reachable over the film at every screen width. */
#knightWelcomeIntro .welcome-intro-controls{position:absolute;top:max(16px,env(safe-area-inset-top));right:clamp(16px,3vw,48px);left:16px;z-index:3;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px}
#knightWelcomeIntro .welcome-intro-controls button{position:static;margin:0;font:650 13px/1.4 system-ui,sans-serif;padding:11px 16px;min-height:44px}
#knightWelcomeIntro .welcome-intro-controls button[hidden]{display:none}
@media(max-width:480px){#knightWelcomeIntro .welcome-intro-controls{gap:8px}#knightWelcomeIntro .welcome-intro-controls button:first-child{flex-basis:100%;margin-left:auto}#knightWelcomeIntro .welcome-intro-controls button{font-size:12px}}
