/* Opening-screen choreography. Existing art, no video or animation runtime. */
#home .hero{isolation:isolate}
#home .hero::before{content:'';position:absolute;inset:-20px -12px 45px;border-radius:42%;background:radial-gradient(ellipse at 72% 35%,#f4b64030,transparent 54%),radial-gradient(ellipse at 15% 75%,#be548e20,transparent 62%);z-index:-1;pointer-events:none;opacity:.7;mask-image:radial-gradient(ellipse,#000 20%,transparent 74%)}
#home .home-tools{display:flex;gap:10px;align-items:center;margin:8px 0 6px}
#home .home-tools button{font:600 13px/1.2 var(--font,system-ui);min-height:44px;padding:10px 14px;border:1px solid #cfa85b70;border-radius:999px;color:#ffe6ab;background:#261c2c;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer}
#home .home-tools button:first-child{flex:1;background:#eac66f;color:#241b2b;border-color:#ffe3a4;box-shadow:inset 0 1px #fff6ce80}
#home .home-tools svg{width:17px;height:17px;flex-shrink:0}
#home .home-tools button:active{transform:scale(.97)}
#home .welcome-cast{position:relative;margin-top:12px;margin-bottom:8px}
#home .welcome-cast::after{content:'';position:absolute;left:4%;right:4%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,#f4cf8199,transparent);pointer-events:none}
#home[data-home-motion='on'] .hero::before{animation:home-light 12s ease-in-out infinite alternate;will-change:transform,opacity}
#home[data-home-motion='on'] .hero .brand{animation:home-title-in .65s cubic-bezier(.2,.8,.2,1) both}
#home[data-home-motion='on'] .cast-welcome{animation:home-cousin-in .65s cubic-bezier(.18,.8,.22,1.15) both}
#home[data-home-motion='on'] .cast-welcome:nth-child(1){animation-delay:.12s}
#home[data-home-motion='on'] .cast-welcome:nth-child(2){animation-delay:.22s}
#home[data-home-motion='on'] .cast-welcome:nth-child(3){animation-delay:.32s}
#home[data-home-motion='on'] .cast-welcome:nth-child(4){animation-delay:.42s}
#home[data-home-motion='on'] .cast-welcome:nth-child(5){animation-delay:.52s}
#home[data-home-motion='on'] .gcard{transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,outline-color .22s}
#home[data-home-motion='on'] .gcard.on .culture-sigil{animation:home-emblem .45s ease-out}
#home[data-home-motion='on'] .home-picked{animation:home-selection .45s ease-out}
#home[data-home-motion='off'] *,#home[data-home-motion='off'] *::before,#home[data-home-motion='off'] *::after{animation:none!important;transition:none!important}
#home[data-home-paused='true'] .hero *,#home[data-home-paused='true'] .hero::before,#home[data-home-paused='true'] .hero *::after{animation-play-state:paused!important}
@media(hover:hover) and (pointer:fine){#home[data-home-motion='on'] .gcard:hover{transform:translateY(-4px)}#home .home-tools button:hover{border-color:#ffe6ab}}
@media(prefers-reduced-motion:reduce){#home *,#home *::before,#home *::after{animation:none!important;transition:none!important}}
@keyframes home-light{from{transform:translate3d(-7px,0,0) scale(.97);opacity:.55}to{transform:translate3d(7px,-8px,0) scale(1.03);opacity:1}}
@keyframes home-title-in{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@keyframes home-cousin-in{from{opacity:0;translate:0 18px;scale:.93}to{opacity:1;translate:0 0;scale:1}}
@keyframes home-emblem{from{translate:0 5px;scale:.86}to{translate:0 0;scale:1}}
@keyframes home-selection{from{opacity:.6;translate:0 5px}to{opacity:1;translate:0 0}}

.home-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
