.bg-container{z-index:0;pointer-events:none;background-color:#120d0a;width:100vw;height:100vh;position:fixed;inset:0}.bg-noise{opacity:.06;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");position:absolute;inset:0}.bg-grid{pointer-events:none;background-image:linear-gradient(135deg,#a88c730a 1px,#0000 1px),linear-gradient(45deg,#a88c730a 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 40%,#0000 100%);mask-image:linear-gradient(#000 40%,#0000 100%)}.bg-content{z-index:1;position:relative}
.hw-root{pointer-events:none;z-index:var(--season-z,50);position:fixed;inset:0;overflow:hidden}.hw-tint{background:linear-gradient(0deg,#6e46aa17,#0000 16vh),radial-gradient(at 0 100%,#ff7a1a0d,#0000 38%);position:absolute;inset:0}.hw-fog{filter:blur(8px);background:radial-gradient(14% 60% at 15% 100%,#beaae61f,#0000),radial-gradient(18% 70% at 45% 100%,#beaae61a,#0000),radial-gradient(14% 55% at 75% 100%,#beaae61f,#0000);width:160%;height:14vh;animation:60s ease-in-out infinite alternate hw-drift;position:absolute;bottom:0;left:-30%}@keyframes hw-drift{0%{transform:translate(0)}to{transform:translate(18%)}}.hw-web{width:clamp(80px,11vw,130px);position:absolute;top:0;left:0}.hw-spider{--y:46px;width:34px;height:36px;transform:translateY(calc(var(--y) - 36px));transition:transform .9s cubic-bezier(.3,0,.2,1.2);position:absolute;top:0;left:clamp(70px,11vw,170px)}.hw-spider.is-down{--y:150px}.hw-spider:before{content:"";background:#786e91b3;width:1px;height:260px;position:absolute;bottom:28px;left:50%}.hw-spider-body{filter:drop-shadow(0 0 1px #ffffffb3);transform-origin:50% 0;animation:4s ease-in-out infinite hw-dangle}@keyframes hw-dangle{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}.hw-ghost{opacity:.9;width:54px;height:54px;transition:transform 1s cubic-bezier(.4,0,.2,1),opacity .9s;position:absolute;bottom:0;right:clamp(10px,3vw,42px);transform:translateY(48%)}.hw-ghost.is-away{opacity:0;transform:translateY(110%)}.hw-ghost-bob{filter:drop-shadow(0 0 8px #beaaf08c);animation:5s ease-in-out infinite hw-bob}@keyframes hw-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.hw-bat{color:#3b2d52;filter:drop-shadow(0 0 1px #fff9);opacity:.85;position:absolute}.hw-bat-ltr{animation:linear both hw-bat-ltr;left:0}.hw-bat-rtl{animation:linear both hw-bat-rtl;right:0}.hw-bat-flap{width:100%;height:100%;animation:.26s ease-in-out infinite alternate hw-flap;display:block}.hw-bat-rtl .hw-bat-flap svg{transform:scaleX(-1)}@keyframes hw-flap{0%{transform:scaleY(1)}to{transform:scaleY(.5)}}@keyframes hw-bat-ltr{0%{transform:translate(-10vw)}25%{transform:translate(24vw,-4vh)}50%{transform:translate(52vw,3vh)}75%{transform:translate(80vw,-3vh)}to{transform:translate(112vw,2vh)}}@keyframes hw-bat-rtl{0%{transform:translate(10vw)}25%{transform:translate(-24vw,-4vh)}50%{transform:translate(-52vw,3vh)}75%{transform:translate(-80vw,-3vh)}to{transform:translate(-112vw,2vh)}}@media (max-width:600px){.hw-ghost{transform:translateY(58%)}}@media (prefers-reduced-motion:reduce){.hw-fog,.hw-spider-body,.hw-ghost-bob{animation:none}.hw-spider,.hw-ghost{transition:none}}
.season-canvas{pointer-events:none;width:100%;height:100%;z-index:var(--season-z,50);position:fixed;inset:0}.season-burst-layer{pointer-events:none;z-index:calc(var(--season-z,50) + 1);position:fixed;inset:0;overflow:hidden}.season-burst{width:0;height:0;position:absolute}.season-bit{font-size:1rem;line-height:1;animation:.8s ease-out forwards season-bit;position:absolute}.season-bit--chip{border-radius:2px;width:7px;height:11px}@keyframes season-bit{0%{opacity:1;transform:translate(-50%,-50%)scale(.4)rotate(0)}to{transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy) + 22px)) scale(1) rotate(var(--rot));opacity:0}}@media (prefers-reduced-motion:reduce){.season-bit{animation-duration:10ms}}
.xmas-tint{pointer-events:none;z-index:calc(var(--season-z,50) - 1);background:linear-gradient(#7db9ff12,#0000 16vh),radial-gradient(at 100% 100%,#dc26260a,#0000 40%);position:fixed;inset:0}.xmas-lights{pointer-events:none;height:30px;z-index:var(--season-z,50);margin:0;padding:0;list-style:none;display:flex;position:fixed;top:0;left:0;right:0;overflow:hidden}.xmas-light{flex:1 0 44px;height:24px;position:relative}.xmas-light:before{content:"";border-bottom:1.5px solid #2d3e348c;border-radius:50%;height:22px;position:absolute;inset:-16px 0 auto}.xmas-bulb{--c:#ef4444;background:radial-gradient(circle at 35% 30%, #fff 0, var(--c) 45%, var(--c) 100%);width:8px;height:12px;box-shadow:0 0 7px 1px var(--c);pointer-events:auto;cursor:pointer;animation:3.2s ease-in-out infinite xmas-twinkle;animation-delay:calc(var(--i) * -.37s);border-radius:50%/62% 62% 38% 38%;margin-left:-4px;position:absolute;top:5px;left:50%}.xmas-bulb:before{content:"";background:#3f4a43;border-radius:1px;height:4px;position:absolute;top:-3px;left:1px;right:1px}.xmas-bulb:after{content:"";position:absolute;inset:-6px}.xmas-c0 .xmas-bulb{--c:#ef4444}.xmas-c1 .xmas-bulb{--c:#fbbf24}.xmas-c2 .xmas-bulb{--c:#22c55e}.xmas-c3 .xmas-bulb{--c:#38bdf8}@keyframes xmas-twinkle{0%,to{opacity:1}50%{opacity:.55}}.xmas-lights.is-chasing .xmas-bulb{animation:.7s ease-out both xmas-chase;animation-delay:calc(var(--i) * 35ms)}@keyframes xmas-chase{0%{opacity:1;box-shadow:0 0 7px 1px var(--c);transform:scale(1)}40%{opacity:1;box-shadow:0 0 16px 5px var(--c);transform:scale(1.7)}to{opacity:1;box-shadow:0 0 7px 1px var(--c);transform:scale(1)}}.xmas-lights.is-still .xmas-bulb{animation:none}@media (max-width:600px){.xmas-light{flex-basis:36px}}@media (prefers-reduced-motion:reduce){.xmas-bulb{animation:none}}
.tg-tint{pointer-events:none;z-index:calc(var(--season-z,50) - 1);background:linear-gradient(115deg,#fbbf2412 0%,#0000 34%),radial-gradient(at 100% 100%,#c2410c0d,#0000 40%);position:fixed;inset:0}
.sp-tint{pointer-events:none;z-index:calc(var(--season-z,50) - 1);background:linear-gradient(0deg,#22c55e14,#0000 14vh);position:fixed;inset:0}.sp-rainbow{pointer-events:none;width:104px;height:104px;z-index:var(--season-z,50);opacity:.5;border-radius:50%;animation:6s ease-in-out infinite sp-shimmer;position:fixed;top:-52px;right:-52px;box-shadow:0 0 0 9px #a855f7,0 0 0 18px #6366f1,0 0 0 27px #3b82f6,0 0 0 36px #22c55e,0 0 0 45px #facc15,0 0 0 54px #f97316,0 0 0 63px #ef4444}@keyframes sp-shimmer{0%,to{opacity:.42}50%{opacity:.58}}@media (max-width:600px){.sp-rainbow{transform-origin:100% 0;transform:scale(.7)}}@media (prefers-reduced-motion:reduce){.sp-rainbow{animation:none}}
.vd-tint{pointer-events:none;z-index:calc(var(--season-z,50) - 1);background:radial-gradient(at 0 100%,#f43f5e14,#0000 42%),radial-gradient(at 100% 0,#f472b60f,#0000 38%);position:fixed;inset:0}
.ea-tint{pointer-events:none;z-index:calc(var(--season-z,50) - 1);background:linear-gradient(0deg,#a7f3d01a,#0000 12vh),radial-gradient(at 0 0,#c4b5fd0f,#0000 38%);position:fixed;inset:0}.ea-eggs{pointer-events:none;height:44px;z-index:var(--season-z,50);position:fixed;bottom:0;left:0;right:0}.ea-egg{cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;background:0 0;border:0;width:26px;height:32px;margin:0 0 0 -13px;padding:0;transition:transform .25s cubic-bezier(.3,1.5,.5,1);position:absolute;bottom:2px;transform:translateY(9px)}.ea-egg svg{display:block}.ea-egg:hover,.ea-egg:focus-visible{transform:translateY(-1px)rotate(-7deg)}.ea-grass{pointer-events:none;height:16px;z-index:var(--season-z,50);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='16' viewBox='0 0 24 16'%3E%3Cg fill='%2352b788' fill-opacity='.85'%3E%3Cpath d='M2 16Q3 6 5 2Q6 8 7 16Z M9 16Q10 4 13 1Q13 8 14 16Z M17 16Q18 7 21 3Q21 9 22 16Z'/%3E%3C/g%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31' height='12' viewBox='0 0 31 12'%3E%3Cg fill='%2395d5b2' fill-opacity='.9'%3E%3Cpath d='M3 12Q4 5 6 2Q7 6 8 12Z M14 12Q15 4 18 1Q18 6 19 12Z M24 12Q25 6 28 3Q28 7 29 12Z'/%3E%3C/g%3E%3C/svg%3E");background-position:0 100%,11px 100%;background-repeat:repeat-x;position:fixed;bottom:0;left:0;right:0}.ea-bunny-run{pointer-events:none;z-index:var(--season-z,50);animation:14s linear forwards ea-run;position:fixed;bottom:8px;left:0}.ea-bunny{filter:drop-shadow(0 1px 1px #5a466e40);animation:.7s ease-in-out infinite ea-hop}@keyframes ea-run{0%{transform:translate(-70px)}to{transform:translate(calc(100vw + 70px))}}@keyframes ea-hop{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-18px)rotate(-6deg)}}.ea-petals{pointer-events:none;z-index:var(--season-z,50);position:fixed;inset:0;overflow:hidden}.ea-petal{opacity:.85;border-radius:50% 0 50% 50%;animation:linear both ea-petal;position:absolute;top:-24px}@keyframes ea-petal{0%{opacity:0;transform:translate(0)rotate(0)}8%{opacity:.85}to{transform:translate(var(--sway,0px), 108vh) rotate(420deg);opacity:.7}}.ea-chip{color:#4c3b66;pointer-events:none;z-index:calc(var(--season-z,50) + 2);background:#faf5fff5;border:1px solid #a78bfa8c;border-radius:999px;padding:5px 14px;font:600 .85rem/1.4 system-ui,-apple-system,Segoe UI,sans-serif;animation:3s both ea-chip;position:fixed;bottom:26px;left:14px}@keyframes ea-chip{0%{opacity:0;transform:translateY(6px)}10%,80%{opacity:1;transform:translateY(0)}to{opacity:0}}@media (prefers-reduced-motion:reduce){.ea-bunny,.ea-chip{animation:none}.ea-egg{transition:none}}
.ny-tint{pointer-events:none;z-index:calc(var(--season-z,50) - 1);background:linear-gradient(#facc150f,#0000 12vh),radial-gradient(at 50% 100%,#6366f10d,#0000 50%);position:fixed;inset:0}
.anv-tint{pointer-events:none;z-index:calc(var(--season-z,50) - 1);background:radial-gradient(at 50% 0,#fbbf2414,#0000 40%),radial-gradient(at 100% 100%,#8b5cf60a,#0000 38%);position:fixed;inset:0}.anv-bunting{pointer-events:none;width:100%;height:24px;z-index:var(--season-z,50);filter:drop-shadow(0 1px 1px #0000001f);position:fixed;top:0;left:0}.anv-balloons{pointer-events:none;z-index:var(--season-z,50);position:fixed;inset:0;overflow:hidden}.anv-balloon{pointer-events:none;will-change:transform;background:0 0;border:0;width:34px;height:80px;margin:0;padding:0;animation:linear infinite anv-rise;position:absolute;bottom:-110px}.anv-balloon-body{background:radial-gradient(circle at 34% 28%, #ffffffbf 0, #fff0 32%), var(--c);opacity:.9;pointer-events:auto;cursor:pointer;border-radius:50%/58% 58% 42% 42%;width:30px;height:38px;position:absolute;top:0;left:2px;box-shadow:inset -4px -5px 8px #00000024}.anv-balloon-body:after{content:"";border:3px solid #0000;border-bottom-color:var(--c);border-width:0 3px 5px;border-top-style:none;border-top-color:currentColor;margin-left:-3px;position:absolute;bottom:-4px;left:50%}.anv-balloon-string{pointer-events:none;background:#5a504666;width:1px;height:40px;position:absolute;top:38px;left:50%}@keyframes anv-rise{0%{transform:translate(0)}25%{transform:translate(var(--sway), calc(-28vh - 40px))}50%{transform:translateY(calc(-55vh - 80px))}75%{transform:translate(calc(var(--sway) * -1), calc(-80vh - 120px))}to{transform:translateY(calc(-105vh - 160px))}}@media (max-width:1000px){.anv-balloons{display:none}}.anv-chip{color:#78350f;pointer-events:none;z-index:calc(var(--season-z,50) + 2);background:#fffbebf2;border:1px solid #f59e0b8c;border-radius:999px;padding:5px 14px;font:600 .85rem/1.4 system-ui,-apple-system,Segoe UI,sans-serif;animation:2.6s both anv-chip;position:fixed;bottom:14px;left:50%;transform:translate(-50%)}@keyframes anv-chip{0%{opacity:0;transform:translate(-50%,8px)}10%,80%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.anv-chip{animation:none}}
.rm-tint{pointer-events:none;z-index:calc(var(--season-z,2147480000) - 1);background:linear-gradient(0deg,#991b1b17,#0000 16vh),linear-gradient(#78716c0d,#0000 10vh);position:fixed;inset:0}.rm-chip{color:#f5e9e6;letter-spacing:.04em;pointer-events:none;z-index:calc(var(--season-z,2147480000) + 2);background:#140e0ce0;border:1px solid #d628288c;border-radius:999px;padding:6px 18px;font:italic .95rem/1.4 Georgia,Times New Roman,serif;animation:4.5s both rm-chip;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}@keyframes rm-chip{0%{opacity:0;transform:translate(-50%,8px)}12%,80%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.rm-chip{animation:none}}
