/* Each world remains native HTML; these decorative layers never block entry. */
.world .world-painting{animation:hh-world-drift 36s ease-in-out infinite alternate;transform-origin:55% 52%;will-change:transform}
.world[data-road=veles] .world-painting{animation-duration:43s;transform-origin:68% 40%}
.world[data-road=samhain] .world-painting{animation-duration:32s;transform-origin:58% 56%}
.world[data-road=halloween] .world-painting{animation-duration:38s;transform-origin:58% 42%}
.world[data-road=muerte] .world-painting{animation-duration:39s;transform-origin:58% 48%}
.world .world-fog{animation-duration:24s;opacity:.48}
.world .fog-far{animation-duration:34s;opacity:.3}
.world[data-road=veles] .world-fog{background:radial-gradient(ellipse at 27% 70%,#8da7c334,transparent 37%),radial-gradient(ellipse at 72% 65%,#92b4bf26,transparent 41%)}
.world[data-road=samhain] .world-firelight i{animation-duration:1.9s;opacity:.7}
.world[data-road=halloween] .world-lanternlight i{animation-duration:2.8s;opacity:.7}
.world[data-road=muerte] .world-lanternlight i{animation-duration:3.4s;opacity:.65}
.guardian .guardian-body{transform-origin:50% 92%;animation:hh-figure-alive 8s ease-in-out infinite}
.realm[data-road=veles] .guardian-body{animation-duration:10s}
.realm[data-road=samhain] .guardian-body{animation-duration:7.6s}
.realm[data-road=halloween] .guardian-body{animation-duration:7s}
.realm[data-road=muerte] .guardian-body{animation-duration:9s}
.guardian.hh-figure-resting *{animation-play-state:paused!important}
.guardian .hh-figure-spark{position:absolute;inset:8% 9% 17%;pointer-events:none;background:radial-gradient(circle at 24% 65%,#eeb665b5 0 1px,transparent 2px),radial-gradient(circle at 82% 44%,#ffe0a1b5 0 1px,transparent 2px),radial-gradient(circle at 31% 24%,#ffe0a188 0 1px,transparent 2px);animation:hh-figure-sparks 7s ease-in-out infinite;opacity:.4}
.scene-atmosphere{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:5;contain:layout style}
.scene-atmosphere .hh-flight{position:absolute;left:0;top:0;width:var(--sprite-size,110px);height:var(--sprite-size,110px);opacity:0;animation:hh-raven-flight 26s linear infinite;will-change:transform}
.scene-atmosphere .hh-sprite{display:block;width:100%;height:100%;background-repeat:no-repeat;background-size:200% 200%;background-position:0 0;animation:hh-wingbeat .68s steps(1,end) infinite}
.scene-atmosphere .hh-flight-raven{--sprite-size:clamp(85px,8vw,145px)}
.scene-atmosphere .hh-flight-raven .hh-sprite{animation-duration:.82s;--frame-three-y:30%;--frame-four-y:30%}
.scene-atmosphere .hh-flight-bat{--sprite-size:clamp(65px,6vw,100px);animation:hh-bat-flight 23s linear -3s infinite}
.scene-atmosphere .hh-flight-bat-small{--sprite-size:clamp(43px,4vw,65px);animation-duration:29s;animation-delay:-14s}
.scene-atmosphere .hh-flight-bat-small .hh-sprite{animation-duration:.54s}
.scene-atmosphere .hh-flight-bat .hh-sprite{--frame-three-y:22%;--frame-four-y:22%}
.scene-atmosphere .hh-flight-bone-raven{--sprite-size:clamp(120px,12vw,195px);animation:hh-bone-flight 28s ease-in-out infinite}
.scene-atmosphere .hh-flight-bone-raven .hh-sprite{animation-duration:.92s;--frame-three-y:16%;--frame-four-y:16%}
.world.hh-animated-raven #bone-raven{visibility:hidden}
.scene-atmosphere .hh-fire{position:absolute;left:55%;top:59%;width:clamp(165px,17vw,270px);aspect-ratio:1;transform:translate(-50%,-96%);opacity:.68}
.scene-atmosphere .hh-fire .hh-sprite{animation-duration:.62s;--frame-three-y:4%;--frame-four-y:2%;mask-image:linear-gradient(#000 0%,#000 83%,transparent 98%)}
.scene-atmosphere .hh-cat-path{position:absolute;left:0;bottom:8%;width:var(--cat-size);height:var(--cat-size);--cat-size:clamp(120px,11vw,170px);animation:hh-cat-crossing 35s linear infinite}
.scene-atmosphere .hh-cat-sprite{display:block;width:100%;height:100%;background-repeat:no-repeat;background-size:300% 200%;mask-image:linear-gradient(transparent 0,#000 5%,#000 100%);animation:hh-cat-steps .95s steps(1,end) infinite}
.scene-atmosphere .hh-pumpkin{position:absolute;width:clamp(62px,6vw,100px);height:auto;right:5%;bottom:12%;animation:hh-lantern-sway 5.5s ease-in-out infinite;transform-origin:50% 15%;opacity:.78}
.scene-atmosphere .hh-soul-lights{position:absolute;inset:0;background:radial-gradient(ellipse at 12% 62%,#a8c1e744,transparent 8%),radial-gradient(ellipse at 79% 58%,#b5d0f13b,transparent 9%),radial-gradient(ellipse at 65% 71%,#8aafda33,transparent 7%);animation:hh-soul-lights 15s ease-in-out infinite alternate;opacity:.5}
.scene-atmosphere .hh-embers{position:absolute;width:3px;height:3px;left:60%;top:50%;background:#ffd48c;box-shadow:13px 20px #ffb357,-18px 50px #f0b271,36px 9px #ffc681,-31px 24px #ffb357;animation:hh-embers-rise 5s linear infinite}
.scene-atmosphere .hh-petals{position:absolute;left:76%;top:14%;width:7px;height:12px;background:#ab2545;border-radius:80% 15% 70% 20%;box-shadow:43px -90px #c14749,-36px -130px #a82b42,72px -180px #dc8237,-73px -230px #b03543;animation:hh-petal-fall 17s linear infinite}
.hh-motion-paused .world *,.hh-motion-paused .guardian *{animation-play-state:paused!important}
@keyframes hh-world-drift{from{transform:translate3d(-.8%,.4%,0) scale(1.025)}to{transform:translate3d(.8%,-.7%,0) scale(1.065)}}
@keyframes hh-figure-alive{0%,100%{translate:0 0;scale:1;rotate:-.12deg}50%{translate:0 -5px;scale:1.006;rotate:.12deg}}
@keyframes hh-figure-sparks{0%,100%{transform:translateY(5px);opacity:.18}50%{transform:translateY(-13px);opacity:.65}}
@keyframes hh-wingbeat{0%,100%{background-position:0 0;translate:0 0}25%{background-position:100% 0;translate:0 0}50%{background-position:0 100%;translate:0 var(--frame-three-y,0%)}75%{background-position:100% 100%;translate:0 var(--frame-four-y,0%)}}
@keyframes hh-raven-flight{0%{transform:translate3d(-160px,22vh,0) rotate(-4deg);opacity:0}5%{opacity:.72}43%{transform:translate3d(43vw,12vh,0) rotate(3deg)}88%{opacity:.72}100%{transform:translate3d(106vw,29vh,0) rotate(-3deg);opacity:0}}
@keyframes hh-bat-flight{0%{transform:translate3d(-120px,34vh,0) rotate(-8deg);opacity:0}6%{opacity:.7}38%{transform:translate3d(35vw,13vh,0) rotate(8deg)}68%{transform:translate3d(73vw,24vh,0) rotate(-7deg)}94%{opacity:.7}100%{transform:translate3d(108vw,12vh,0) rotate(5deg);opacity:0}}
@keyframes hh-bone-flight{0%,100%{transform:translate3d(73vw,10vh,0) rotate(-5deg);opacity:.65}50%{transform:translate3d(64vw,17vh,0) rotate(4deg);opacity:.82}}
@keyframes hh-cat-steps{0%,100%{background-position:0 calc(var(--cat-size)*-.03)}16.666%{background-position:50% calc(var(--cat-size)*-.03)}33.333%{background-position:100% calc(var(--cat-size)*-.03)}50%{background-position:0 calc(var(--cat-size)*-.915)}66.666%{background-position:50% calc(var(--cat-size)*-.915)}83.333%{background-position:100% calc(var(--cat-size)*-.915)}}
@keyframes hh-cat-crossing{0%{transform:translate3d(-180px,0,0);opacity:0}6%{opacity:.65}47%{transform:translate3d(38vw,-9px,0)}90%{opacity:.65}100%{transform:translate3d(108vw,0,0);opacity:0}}
@keyframes hh-lantern-sway{0%,100%{transform:rotate(-2deg) translateY(0);opacity:.63}50%{transform:rotate(2deg) translateY(-5px);opacity:.88}}
@keyframes hh-soul-lights{from{transform:translate3d(-3%,1%,0);opacity:.25}to{transform:translate3d(4%,-2%,0);opacity:.65}}
@keyframes hh-embers-rise{from{transform:translate3d(0,30px,0);opacity:0}20%{opacity:.85}to{transform:translate3d(24px,-170px,0);opacity:0}}
@keyframes hh-petal-fall{from{transform:translate3d(0,-20vh,0) rotate(0deg);opacity:0}12%{opacity:.8}88%{opacity:.7}to{transform:translate3d(-13vw,103vh,0) rotate(340deg);opacity:0}}
@media(max-width:1000px){
 .world .world-painting{animation:hh-world-drift 45s ease-in-out infinite alternate}
 .world .world-fog{opacity:.35;animation-duration:36s}.world .fog-far{display:none}
 .guardian .guardian-body{animation-duration:9s}
 .scene-atmosphere .hh-flight-raven{--sprite-size:85px;animation-duration:29s}
 .scene-atmosphere .hh-flight-bat{--sprite-size:66px;animation-duration:25s}
 .scene-atmosphere .hh-flight-bat-small{display:none}
 .scene-atmosphere .hh-flight-bone-raven{--sprite-size:112px}
 .scene-atmosphere .hh-fire{left:64%;top:52%;width:180px;opacity:.65}
 .scene-atmosphere .hh-cat-path{--cat-size:125px;bottom:23%;animation-duration:32s}
 .scene-atmosphere .hh-pumpkin{width:66px;right:4%;bottom:23%}
 .scene-atmosphere .hh-embers{left:64%}
}
@media(prefers-reduced-motion:reduce){.world .world-painting,.world *,.guardian *{animation:none!important}.scene-atmosphere{display:none}.world.hh-animated-raven #bone-raven{visibility:visible}}
