#winter-snow{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:40;contain:strict}
#winter-snow span{position:absolute;top:-40px;left:var(--left);color:#fff;font-family:Arial,sans-serif;font-size:var(--size);font-weight:700;line-height:1;opacity:.95;-webkit-text-stroke:0 transparent;text-shadow:0 1px 2px #58616b55,0 0 1px #58616b30;animation:winter-fall var(--duration) var(--delay) linear infinite;will-change:transform}
#winter-snow span:nth-child(3n){color:#fff;opacity:.8}
@keyframes winter-fall{from{transform:translate3d(0,-40px,0) rotate(0deg)}to{transform:translate3d(var(--drift),calc(100vh + 80px),0) rotate(280deg)}}
.snow-mode [data-product-card]{position:relative}
.snow-mode [data-product-card]::before{content:"";position:absolute;top:-1px;left:0;right:0;height:29px;z-index:3;pointer-events:none;background:url('/assets/snow-cap.svg') top center/100% 100% no-repeat;filter:drop-shadow(0 2px 2px #7198b333)}
.snow-mode [data-product-card]>div:first-child>div{z-index:4}
.snow-mode #shop .animate-fade-in-up:nth-child(even) [data-product-card]::before{transform:scaleX(-1)}
@media(max-width:760px){#winter-snow span:nth-child(n+21){display:none}.snow-mode [data-product-card]::before{height:25px}}
@media(prefers-reduced-motion:reduce){#winter-snow{display:none}}
/* A brief shake and a small shower of snow when a card is hovered. */
.snow-mode [data-product-card]::before{--cap-flip:1;transform:scaleX(var(--cap-flip))}
.snow-mode #shop .animate-fade-in-up:nth-child(even) [data-product-card]::before{--cap-flip:-1;transform:scaleX(var(--cap-flip))}
@media(hover:hover) and (pointer:fine){
 .snow-mode [data-product-card]::after{content:"";position:absolute;top:7px;left:0;width:100%;height:48px;z-index:6;pointer-events:none;opacity:0;background:radial-gradient(circle at 7% 8%,#fff 0 2px,#8bafc755 2.5px,transparent 3px),radial-gradient(circle at 22% 30%,#fff 0 3px,#8bafc755 3.5px,transparent 4px),radial-gradient(circle at 36% 10%,#fff 0 2px,#8bafc755 2.5px,transparent 3px),radial-gradient(circle at 49% 45%,#fff 0 2px,#8bafc755 2.5px,transparent 3px),radial-gradient(circle at 63% 18%,#fff 0 3px,#8bafc755 3.5px,transparent 4px),radial-gradient(circle at 78% 36%,#fff 0 2px,#8bafc755 2.5px,transparent 3px),radial-gradient(circle at 92% 10%,#fff 0 2.5px,#8bafc755 3px,transparent 3.5px)}
 .snow-mode [data-product-card]:hover::before{animation:winter-cap-shake .55s ease-out}
 .snow-mode [data-product-card]:hover::after{animation:winter-snow-dust .9s ease-out}
}
@keyframes winter-cap-shake{0%,100%{transform:translateY(0) rotate(0) scaleX(var(--cap-flip))}25%{transform:translateY(-2px) rotate(-.7deg) scaleX(var(--cap-flip))}55%{transform:translateY(1px) rotate(.6deg) scaleX(var(--cap-flip))}75%{transform:translateY(-1px) rotate(-.3deg) scaleX(var(--cap-flip))}}
@keyframes winter-snow-dust{0%{opacity:0;transform:translateY(-8px) scaleX(.9)}15%{opacity:1}70%{opacity:.65}100%{opacity:0;transform:translateY(42px) scaleX(1.08)}}
@media(prefers-reduced-motion:reduce){.snow-mode [data-product-card]:hover::before,.snow-mode [data-product-card]:hover::after{animation:none}.snow-mode [data-product-card]::after{display:none}}
/* Pixel-art holiday trim across the entire header. */
.snow-mode header{overflow:visible}
.snow-mode header:not([class*="md:sticky"]){position:relative}
.snow-mode header::before,.snow-mode header::after{content:"";position:absolute;left:0;right:0;top:calc(100% + 1px);bottom:auto;height:42px;pointer-events:none;background-position:left top;background-size:480px 42px;background-repeat:repeat-x;image-rendering:pixelated}
.snow-mode header::before{z-index:2;background-image:url('/assets/winter-garland.svg?v=5')}
.snow-mode header::after{z-index:3;background-image:url('/assets/winter-lights.svg?v=2');filter:brightness(1.05) saturate(1.15);animation:winter-garland-lights 8s ease-in-out infinite}
@keyframes winter-garland-lights{0%{filter:hue-rotate(0deg) brightness(0.95) saturate(1.2);opacity:0.7}12.5%{filter:hue-rotate(45deg) brightness(1.3) saturate(1.2);opacity:1}25%{filter:hue-rotate(90deg) brightness(0.95) saturate(1.2);opacity:0.7}37.5%{filter:hue-rotate(135deg) brightness(1.3) saturate(1.2);opacity:1}50%{filter:hue-rotate(180deg) brightness(0.95) saturate(1.2);opacity:0.7}62.5%{filter:hue-rotate(225deg) brightness(1.3) saturate(1.2);opacity:1}75%{filter:hue-rotate(270deg) brightness(0.95) saturate(1.2);opacity:0.7}87.5%{filter:hue-rotate(315deg) brightness(1.3) saturate(1.2);opacity:1}100%{filter:hue-rotate(360deg) brightness(0.95) saturate(1.2);opacity:0.7}}
@media(max-width:767px){.snow-mode header{position:relative}}
@media(max-width:899px){.snow-mode header:has(button[aria-label="Закрыть меню"])::before,.snow-mode header:has(button[aria-label="Закрыть меню"])::after{visibility:hidden}}
@media(prefers-reduced-motion:reduce){.snow-mode header::after{animation:none}}
