.vr-seasonal-halloween{--vr-hh-glow:#ff9b2f}
.vr-halloween-vignette{position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 50% 10%,rgba(232,226,211,.035),transparent 18%),radial-gradient(circle at 78% 75%,rgba(255,145,39,.08),transparent 26%),linear-gradient(to bottom,rgba(9,8,17,.045),rgba(9,8,17,.16));opacity:.9}
.vr-halloween-haze{position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 50% 9%,rgba(220,220,225,.05),transparent 18%),radial-gradient(circle at 22% 12%,rgba(124,110,167,.07),transparent 20%),linear-gradient(to bottom,rgba(26,22,35,.01),rgba(26,22,35,.08));pointer-events:none;opacity:.52}
.vr-halloween-moon{position:absolute;z-index:1;top:8px;left:50%;right:auto;width:clamp(120px,13vw,190px);aspect-ratio:1;pointer-events:none;transform:translateX(-50%);filter:grayscale(.08) drop-shadow(0 0 22px rgba(235,235,225,.08));opacity:.22}
.vr-halloween-moon img{display:block;width:100%;height:auto;opacity:.9}
.vr-halloween-bat{position:absolute;z-index:5;top:0;left:0;height:auto;opacity:.98;will-change:transform,opacity;filter:drop-shadow(0 6px 10px rgba(0,0,0,.4))}
.vr-halloween-bat.vr-bat-far{z-index:4;filter:blur(.45px) drop-shadow(0 3px 4px rgba(0,0,0,.22));opacity:.58}
.vr-halloween-fog{position:absolute;z-index:3;left:-18vw;width:136vw;border-radius:50%;will-change:transform;pointer-events:none;mix-blend-mode:normal}
.vr-halloween-fog-1{height:190px;background:radial-gradient(ellipse at 50% 58%,rgba(190,196,207,.46) 0%,rgba(204,208,218,.34) 28%,rgba(213,216,224,.18) 52%,transparent 76%);filter:blur(18px)}
.vr-halloween-fog-2{height:160px;background:radial-gradient(ellipse at 46% 56%,rgba(178,184,197,.36) 0%,rgba(200,204,214,.27) 34%,rgba(216,219,226,.13) 58%,transparent 78%);filter:blur(16px)}
.vr-halloween-fog-3{height:132px;background:radial-gradient(ellipse at 58% 60%,rgba(169,176,189,.28) 0%,rgba(199,203,214,.2) 36%,rgba(217,220,226,.1) 60%,transparent 80%);filter:blur(14px)}
.vr-halloween-fog-4{height:104px;background:radial-gradient(ellipse at 42% 56%,rgba(154,162,177,.2) 0%,rgba(193,198,209,.14) 40%,transparent 80%);filter:blur(12px)}
.vr-halloween-badge{position:absolute;z-index:7;right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));width:clamp(180px,18vmin,250px);display:flex;align-items:center;flex-direction:column;opacity:0;transform:translateY(12px) scale(.94);filter:drop-shadow(0 16px 28px rgba(0,0,0,.34))}
.vr-halloween-badge.is-visible{opacity:1;transform:translateY(0) scale(1);transition:opacity .8s ease,transform .9s cubic-bezier(.16,1,.3,1)}
.vr-halloween-badge-glow{position:absolute;inset:auto 12% 26% 12%;height:40%;background:radial-gradient(circle at center,rgba(255,140,44,.48),rgba(255,140,44,.06) 58%,transparent 72%);filter:blur(16px);z-index:0}
.vr-halloween-pumpkin{position:relative;z-index:1;width:100%;height:auto}
.vr-halloween-title{position:relative;z-index:1;margin-top:-8px;text-align:center;line-height:1;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.72),0 0 12px rgba(255,138,34,.25);font-family:Georgia,"Times New Roman",serif;text-transform:uppercase}
.vr-halloween-title small{display:block;margin-bottom:5px;font-size:clamp(10px,1.2vmin,13px);font-weight:700;letter-spacing:.26em;color:#f6d9a4;font-family:ui-sans-serif,system-ui,sans-serif}
.vr-halloween-title strong{display:block;font-size:clamp(20px,2.35vmin,30px);letter-spacing:.1em;font-weight:800;color:#ffb24d}
.vr-halloween-title span{display:block;margin-top:5px;font-size:clamp(10px,1.05vmin,12px);letter-spacing:.22em;color:#f3eee7;opacity:.84;font-family:ui-sans-serif,system-ui,sans-serif}
.vr-static-halloween{right:18px;bottom:18px;width:150px;height:150px;background:url('../images/halloween/pumpkin-realistic.png') center/contain no-repeat;opacity:.92;filter:drop-shadow(0 8px 18px rgba(0,0,0,.2))}
@media(max-width:640px){.vr-halloween-moon{top:10px;width:96px;opacity:.18}.vr-halloween-badge{width:158px}.vr-halloween-title strong{font-size:21px}.vr-halloween-fog-1{height:145px}.vr-halloween-fog-2{height:120px}.vr-halloween-fog-3{height:100px}.vr-halloween-fog-4{height:82px}}
