/* ❄️ Schneefall-Effekt für Bense Service */

.snowfall {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 9999;
  overflow: hidden;
}

.snow {
  position: absolute;
  top: -10px;
  color: rgba(255, 255, 255, 0.8);
  text-shadow: 0 0 3px rgba(255, 255, 255, 0.3);
  animation: fall linear infinite;
}

.snow:nth-child(1) { left: 3%; font-size: 12px; animation-duration: 12s; animation-delay: 0s; }
.snow:nth-child(2) { left: 8%; font-size: 18px; animation-duration: 14s; animation-delay: 1s; }
.snow:nth-child(3) { left: 13%; font-size: 10px; animation-duration: 10s; animation-delay: 2s; }
.snow:nth-child(4) { left: 18%; font-size: 16px; animation-duration: 16s; animation-delay: 0.5s; }
.snow:nth-child(5) { left: 23%; font-size: 14px; animation-duration: 11s; animation-delay: 3s; }
.snow:nth-child(6) { left: 28%; font-size: 20px; animation-duration: 13s; animation-delay: 1.5s; }
.snow:nth-child(7) { left: 33%; font-size: 11px; animation-duration: 15s; animation-delay: 2.5s; }
.snow:nth-child(8) { left: 38%; font-size: 17px; animation-duration: 9s; animation-delay: 0.8s; }
.snow:nth-child(9) { left: 43%; font-size: 13px; animation-duration: 17s; animation-delay: 4s; }
.snow:nth-child(10) { left: 48%; font-size: 19px; animation-duration: 12s; animation-delay: 1.2s; }
.snow:nth-child(11) { left: 53%; font-size: 10px; animation-duration: 14s; animation-delay: 2.8s; }
.snow:nth-child(12) { left: 58%; font-size: 15px; animation-duration: 10s; animation-delay: 0.3s; }
.snow:nth-child(13) { left: 63%; font-size: 12px; animation-duration: 16s; animation-delay: 3.5s; }
.snow:nth-child(14) { left: 68%; font-size: 18px; animation-duration: 11s; animation-delay: 1.8s; }
.snow:nth-child(15) { left: 73%; font-size: 14px; animation-duration: 13s; animation-delay: 2.2s; }
.snow:nth-child(16) { left: 78%; font-size: 20px; animation-duration: 15s; animation-delay: 0.7s; }
.snow:nth-child(17) { left: 83%; font-size: 11px; animation-duration: 9s; animation-delay: 4.2s; }
.snow:nth-child(18) { left: 88%; font-size: 16px; animation-duration: 17s; animation-delay: 1.4s; }
.snow:nth-child(19) { left: 93%; font-size: 13px; animation-duration: 12s; animation-delay: 3.2s; }
.snow:nth-child(20) { left: 97%; font-size: 17px; animation-duration: 14s; animation-delay: 2.6s; }

@keyframes fall {
  0% {
    transform: translateY(-10px) rotate(0deg);
    opacity: 1;
  }
  100% {
    transform: translateY(100vh) rotate(360deg);
    opacity: 0.6;
  }
}

@media (prefers-reduced-motion: reduce) {
  .snow {
    display: none;
  }
}

@media (max-width: 768px) {
  .snow:nth-child(n+11) {
    display: none;
  }
}