.hero-rotator{position:absolute;inset:0;overflow:hidden}
.hero-slide{opacity:0;transform:translateX(12%) scale(1.12);transition:opacity .8s ease,transform 1.2s cubic-bezier(.16,.85,.3,1);will-change:opacity,transform}
.hero-slide.is-active{opacity:1;transform:translateX(0) scale(1.035)}
.hero-slide.slide-original{background-image:url('./assets/hero-v1.png')}
.hero-slide.slide-siege{background-image:url('./assets/hero-siege-v2.png')}
.hero-slide.slide-pets{background-image:url('./assets/hero-pets-v2.png')}
.hero-slide.slide-myth{background-image:url('./assets/hero-myth-v2.png')}
.hero-copy{padding-bottom:155px}
.account-actions{display:flex;justify-content:center;gap:12px;margin:18px auto 8px;max-width:480px}.account-actions button{flex:1;padding:11px 7px;border:4px outset #a0f4ff;font-size:20px;font-weight:1000;color:#fff800;text-shadow:2px 2px #1b005b;background:linear-gradient(#26a4ff,#1300ac);box-shadow:3px 3px #150022;animation:card-lights 2.6s ease-in-out infinite}.account-actions .account-register{border-color:#b6ff44;background:linear-gradient(#38bb00,#00552e);animation-delay:-1.3s}
.hero h1{animation:title-flare 2.4s ease-in-out infinite}
.hero h2 em{animation:word-colors 3.2s steps(1,end) infinite}
.little-banner,.parade-shout{animation:sign-colors 2.8s steps(1,end) infinite}
.carnival-frame{animation:frame-chase 2.8s linear infinite}
.event-card:nth-child(2n){animation:card-lights 2.6s ease-in-out infinite}
.event-card:nth-child(2n+1){animation:card-lights 2.6s ease-in-out -1.3s infinite}
.download-mega{overflow:hidden}
.download-mega::after{content:"";position:absolute;inset:-20% auto -20% -70%;width:38%;background:linear-gradient(90deg,transparent,#fff9,transparent);transform:skewX(-25deg);animation:gold-sweep 3s ease-in-out infinite;pointer-events:none}
.floating-ad strong{animation:word-colors 3.2s steps(1,end) infinite}
.chasing-lights{position:absolute;top:3px;left:7px;right:7px;height:20px;display:flex;justify-content:space-between;z-index:8;pointer-events:none}
.chasing-lights i{width:12px;height:12px;flex:none;border:1px solid #fff7bd;border-radius:50%;background:#ffda00;box-shadow:0 0 8px #ff1e00;animation:bulb-chase 1.6s ease-in-out infinite}
.chasing-lights i:nth-child(3n){animation-delay:-.53s;background:#52ff00}.chasing-lights i:nth-child(3n+1){animation-delay:-1.06s;background:#ff47e9}
.carousel-switches{position:absolute;left:25px;right:25px;bottom:85px;z-index:10;display:flex;justify-content:center;gap:9px}
.carousel-switches button{padding:7px 15px;background:linear-gradient(#f83,#8e001d);border:3px outset #ffcb45;font-weight:900;color:#ffff00;box-shadow:2px 2px #10001e;font-size:14px}
.carousel-switches button[aria-pressed=true]{background:#bcff00;color:#7f0000;box-shadow:0 0 17px #fbff00;transform:rotate(-3deg)}
.promo-parade{padding:0 14px 9px;background:repeating-linear-gradient(45deg,#3d003f 0 8px,#6c001c 8px 16px);overflow:hidden}
.parade-shout{text-align:center;font-weight:1000;font-size:25px;margin:0 -14px 13px;padding:9px;color:#ffff00;background:red;border-bottom:4px ridge #ffd529;text-shadow:2px 2px #950000}
.poster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.promo-poster{position:relative;height:235px;padding:0;overflow:hidden;border:5px ridge #ffdb00;box-shadow:4px 4px #07001b;background:#190023;animation:poster-wobble 4.8s ease-in-out infinite}
.promo-poster:nth-child(2){animation-delay:-1.6s;border-color:#34ff00}.promo-poster:nth-child(3){animation-delay:-3.2s;border-color:#ff00e1}
.poster-art{width:100%;height:100%;object-fit:cover;object-position:78% center;transform:scale(1.15);animation:poster-pan 6s ease-in-out infinite alternate}
.promo-poster::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#190015e6);pointer-events:none}
.promo-poster span{position:absolute;left:7px;right:7px;bottom:14px;z-index:2;text-align:center;font-weight:1000;font-size:20px;color:#ffff00;text-shadow:2px 2px red}
.promo-poster b{display:block;font:1000 37px KaiTi,serif;color:#8cff00;margin:4px 0;animation:word-colors 3.2s steps(1,end) infinite}
.promo-poster small{font-size:13px;color:#fff}
.promo-parade>p{text-align:center;font-size:11px;color:#e7bbfc;margin:11px 0 0}
@keyframes title-flare{0%,100%{filter:brightness(1);text-shadow:3px 3px #ac3100,6px 6px #5a0500,9px 9px #110016,-2px -2px #fff6b3,0 0 12px #f30}50%{filter:brightness(1.3);text-shadow:3px 3px #ac3100,6px 6px #5a0500,9px 9px #110016,-2px -2px #fff6b3,0 0 35px #ffff00,0 0 65px #ff2100}}
@keyframes word-colors{0%,100%{color:#9dff00}33%{color:#ffff00}66%{color:#ff83f4}}
@keyframes sign-colors{0%,100%{background-color:#db0000;color:#ffff00}50%{background-color:#6a00c7;color:#8dff00}}
@keyframes frame-chase{0%,100%{border-color:#ffdf23;box-shadow:0 0 0 3px red,0 0 0 7px purple,0 0 24px #f02}33%{border-color:#8dff00;box-shadow:0 0 0 3px #fe0,0 0 0 7px #d000ff,0 0 28px #f0f}66%{border-color:#ff65e9;box-shadow:0 0 0 3px #f00,0 0 0 7px #70ff00,0 0 25px #fa0}}
@keyframes card-lights{0%,100%{border-color:#ffe86a;box-shadow:4px 5px #080008}50%{border-color:#e1ff42;box-shadow:0 0 19px #fffa00,4px 5px #080008}}
@keyframes gold-sweep{0%,35%{left:-70%}75%,100%{left:150%}}
@keyframes bulb-chase{0%,100%{opacity:.38;scale:.8;box-shadow:0 0 4px #f00}50%{opacity:1;scale:1.15;box-shadow:0 0 12px #ffff00}}
@keyframes poster-wobble{0%,100%{transform:rotate(-1deg)}50%{transform:rotate(1deg)}}
@keyframes poster-pan{from{transform:scale(1.08) translateX(-2%)}to{transform:scale(1.2) translateX(2%)}}
@media(max-width:700px){.hero-copy{padding-bottom:150px}.hero-slide.is-active{opacity:.95}.carousel-switches{left:7px;right:7px;bottom:82px;gap:4px}.carousel-switches button{font-size:10px;padding:7px 5px;border-width:2px}.chasing-lights i{width:8px;height:8px}.parade-shout{font-size:15px;padding:8px 2px}.promo-parade{padding:0 8px 8px}.poster-grid{gap:9px;grid-template-columns:1fr}.promo-poster{height:175px}.promo-poster span{left:14px;right:auto;bottom:25px;text-align:left;font-size:16px}.promo-poster b{font-size:34px}.poster-art{object-position:70% 35%}.promo-poster::after{inset:0;background:linear-gradient(90deg,#25001dd9,transparent 80%)}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none;transform:none}.hero-slide:not(.is-active){opacity:0}.hero h1,.hero h2 em,.little-banner,.parade-shout,.carnival-frame,.event-card,.download-mega::after,.floating-ad strong,.chasing-lights i,.promo-poster,.poster-art,.promo-poster b{animation:none!important}}
@media(max-width:700px){.account-actions{gap:8px;margin:13px 7px 5px}.account-actions button{font-size:15px;padding:9px 3px;border-width:3px}}
