body {
	margin: 0;
}

.snow {
	position: fixed;
	top: -10px;
	left: 0;
	width: 23px;
	height: 23px;
	background: #ffffff;
	border-radius: 50%;
	opacity: var(--o, 1);
	transform: translate(var(--x, 0vw), -10px) scale(var(--s, 1));
	animation: fall var(--d, 20s) var(--delay, 0s) linear infinite;
	will-change: transform;
	z-index: 20;
}

@keyframes fall {
	0%   { transform: translate(var(--x), -10px) scale(var(--s)); }
	60%  { transform: translate(calc(var(--x) + var(--xo, 0vw)), 60vh) scale(var(--s)); }
	100% { transform: translate(calc(var(--x) + calc(var(--xo, 0vw) / 2)), 100vh) scale(var(--s)); }
}
