/* Confetti */

/*a#confetti {
	color: red!important;
}*/

@keyframes confettiRain {
  0% {
    opacity: 1;
    margin-top: -100vh;
    margin-left: -200px;
  } 
  
  100% {
    opacity: 1;
    margin-top: 100vh;
    margin-left: 200px;
  }
}

div.confetti:not(.elementor-widget-button) {
  opacity: 0;
  position: absolute;
  width: 1rem;
  height: 1.5rem;
  transition: 500ms ease;
  animation: confettiRain 1;
  animation-duration: 3s;
  animation-delay: 0s;
  pointer-events: none;
}

#confetti-wrapper {
   overflow: hidden !important;
}

/* Snow */

@keyframes snowRain {
  0% {
    opacity: 1;
    margin-top: -100vh;
    margin-left: -100vw;
  } 
  
  50% {
    opacity: 0.75;
    /*margin-top: 0vh;*/
    margin-left: 100vw;
  }
  
  100% {
    opacity: 0.25;
    margin-top: 100vh;
    margin-left: -50vw;
  }
}

div.snow:not(.elementor-widget-button) {
  opacity: 0;
  position: absolute;
  width: 0.75rem;
  height: 0.75rem;
  filter: blur(3px);
  border-radius: 100%;
  border: 1px dotted #104680;
  transition: 500ms ease;
  animation: snowRain 2;
  animation-duration: 10s;
  animation-delay: 0s;
  pointer-events: none;
}

#snow-wrapper {
   overflow: hidden !important;
}

/* Rain */

@keyframes rainRain {
  0% {
    opacity: 1;
    margin-top: -100vh;
    margin-left: -100vw;
  } 
  
  70% {
    opacity: 0.75;
    margin-top: 50vh;
    margin-left: 100vw;
  }
  
  100% {
    opacity: 0.25;
    margin-top: 100vh;
    margin-left: -50vw;
  }
}

div.rain:not(.elementor-widget-button) {
  opacity: 0;
  position: absolute;
  width: 0.25rem;
  height: 2rem;
  filter: blur(7px);
  transition: 500ms ease;
  animation: rainRain 2;
  animation-duration: 7s;
  animation-delay: 0s;
  pointer-events: none;
}

#rain-wrapper {
   overflow: hidden !important;
}