.snow, .snow:before, .snow:after {
  position: absolute;
  top: -600px;
  left: 0;
  bottom: 0;
  right: 0;
  background-image: radial-gradient(3px 3px at 48px 560px, #faecba 50%, rgba(0, 0, 0, 0)), radial-gradient(4px 4px at 241px 117px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(3px 3px at 248px 115px, #faecba 50%, rgba(0, 0, 0, 0)), radial-gradient(4px 4px at 594px 371px, rgba(255, 255, 255, 0.6) 50%, rgba(0, 0, 0, 0)), radial-gradient(6px 6px at 567px 72px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(5px 5px at 592px 432px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(6px 6px at 470px 311px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(6px 6px at 526px 195px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(4px 4px at 278px 192px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(3px 3px at 513px 39px, #faecba 50%, rgba(0, 0, 0, 0)), radial-gradient(5px 5px at 146px 40px, #faecba 50%, rgba(0, 0, 0, 0)), radial-gradient(5px 5px at 385px 121px, rgba(255, 255, 255, 0.6) 50%, rgba(0, 0, 0, 0)), radial-gradient(4px 4px at 141px 55px, #faecba 50%, rgba(0, 0, 0, 0)), radial-gradient(4px 4px at 166px 582px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(4px 4px at 227px 403px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(6px 6px at 422px 258px, #FFE582 50%, rgba(0, 0, 0, 0)), radial-gradient(4px 4px at 331px 596px, #faecba 50%, rgba(0, 0, 0, 0)), radial-gradient(4px 4px at 38px 553px, rgba(255, 255, 255, 0.6) 50%, rgba(0, 0, 0, 0)), radial-gradient(4px 4px at 377px 23px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(4px 4px at 158px 479px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(5px 5px at 325px 66px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(3px 3px at 180px 241px, rgba(255, 255, 255, 0.6) 50%, rgba(0, 0, 0, 0)), radial-gradient(5px 5px at 99px 68px, #faecba 50%, rgba(0, 0, 0, 0)), radial-gradient(5px 5px at 542px 433px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(3px 3px at 568px 395px, #faecba 50%, rgba(0, 0, 0, 0)), radial-gradient(6px 6px at 109px 145px, #F5EAC1 50%, rgba(0, 0, 0, 0)), radial-gradient(6px 6px at 272px 456px, #FFE582 50%, rgba(0, 0, 0, 0));
  background-size: 600px 600px;
  animation: snow 30s linear infinite;
  content: "";
  z-index: 0;
}

.snow:after {
  margin-left: -200px;
  opacity: 0.4;
  animation-duration: 6s;
  animation-direction: reverse;
  filter: blur(3px);
}

.snow:before {
  animation-duration: 9s;
  animation-direction: reverse;
  margin-left: -300px;
  opacity: 0.65;
  filter: blur(1.5px);
}

@keyframes snow {
  to {
    transform: translateY(-600px);
  }
}