.bf-snowfall{position:fixed;inset:0;display:block;z-index:0;overflow:hidden;pointer-events:none;user-select:none;contain:paint}
.bf-snowfall[hidden]{display:none}
.bf-snowfall .bf-snowflake{--snow-alpha:.84;position:absolute;left:var(--snow-x);top:0;width:var(--snow-size);height:var(--snow-size);color:#fff;opacity:var(--snow-alpha);transform:translate3d(0,var(--snow-rest-y),0);animation:bf-winter-fall var(--snow-time) linear var(--snow-delay) infinite}
.bf-snowflake svg{width:100%;height:100%;display:block;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 1px rgb(99 159 192 / .32))}
.bf-snowfall .bf-snowflake:nth-child(even){color:#8dbbd3;--snow-alpha:.66}
.bf-snowfall .bf-snowflake:nth-child(3n){--snow-alpha:.52}
.bf-snowfall .bf-snowflake{width:clamp(3px,calc(var(--snow-size) * .32),9px);height:clamp(3px,calc(var(--snow-size) * .32),9px);border-radius:50%;background:radial-gradient(circle,#fff 0 28%,rgb(255 255 255 / .85) 46%,transparent 74%);filter:drop-shadow(0 1px 1px rgb(91 142 170 / .25))}
.bf-snowfall .bf-snowflake svg{display:none}
.bf-snowfall .bf-snowflake:nth-child(6n){width:clamp(8px,calc(var(--snow-size) * .55),14px);height:clamp(8px,calc(var(--snow-size) * .55),14px);background:none;filter:none}
.bf-snowfall .bf-snowflake:nth-child(6n) svg{display:block;opacity:.55}
.bf-snowfall--light .bf-snowflake:nth-child(n+25){display:none}
@keyframes bf-winter-fall{0%{transform:translate3d(0,-45px,0) rotate(0deg);opacity:0}7%{opacity:var(--snow-alpha)}90%{opacity:var(--snow-alpha)}100%{transform:translate3d(var(--snow-drift),calc(100vh + 50px),0) rotate(180deg);opacity:0}}
@media(max-width:749px){.bf-snowfall .bf-snowflake:nth-child(n+33){display:none}}
@media(prefers-reduced-motion:reduce){.bf-snowfall .bf-snowflake{animation:none;transform:translate3d(0,var(--snow-rest-y),0);opacity:var(--snow-alpha)}}
@media(forced-colors:active){.bf-snowfall{display:none}}

.bf-snowfall .bf-snowflake,.bf-snowfall .bf-snowflake:nth-child(even),.bf-snowfall .bf-snowflake:nth-child(6n){--snow-alpha:.78;color:#fff;width:clamp(3px,calc(var(--snow-size) * .3),8px);height:clamp(3px,calc(var(--snow-size) * .3),8px);background:radial-gradient(circle,#fff 0 40%,rgb(255 255 255 / .85) 50%,transparent 76%);border-radius:50%;filter:drop-shadow(0 0 2px rgb(255 255 255 / .28))}
.bf-snowfall .bf-snowflake:nth-child(3n){--snow-alpha:.42;width:3px;height:3px;filter:none}
.bf-snowfall .bf-snowflake:nth-child(5n){--snow-alpha:.9;width:8px;height:8px;filter:blur(.4px)}
.bf-snowfall .bf-snowflake svg,.bf-snowfall .bf-snowflake:nth-child(6n) svg{display:none}
