html,body{
  padding: 0;
  margin: 0;
}
body{
  position: relative;
  height: 100vh;
  width: 100vw;
  overflow: hidden;
  background: #755;
  background: linear-gradient(to top, #755, #533);
}
body:before, body:after{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 50%;
}
body:before{
  bottom: 50%;
  z-index: 1;
  background: #79f;
  background: linear-gradient(to bottom, #9af, #79f);
}
body:after{
  bottom: 0;
  z-index: 5;
  background: #7555;
  background: linear-gradient(to top, #7555, #5339);
}
.circleIsHere{
  width: 4px;
  height: 4px;
  border-radius: 50%;
  position: absolute;
  z-index: 3;
  background: lightblue;
  transform: translateX(-50%);
  animation: 15s waterHere linear;
}
@keyframes waterHere{
  0%{
    top: 0;
    transform: translateX(-50%);
  }
  2%{
    transform: translateX(calc(-50% + 5px));
  }
  5%{
    transform: translateX(calc(-50% - 5px));
  }
  12%{
    transform: translateX(calc(-50% + 5px));
  }
  22%{
    transform: translateX(calc(-50% - 5px));
  }
  32%{
    transform: translateX(calc(-50% + 5px));
  }
  45%{
    transform: translateX(calc(-50% - 5px));
  }
  55%{
    transform: translateX(calc(-50% + 5px));
  }
  65%{
    transform: translateX(calc(-50% - 5px));
  }
  75%{
    transform: translateX(calc(-50% + 5px));
  }
  85%{
    transform: translateX(calc(-50% - 5px));
  }
  95%{
    transform: translateX(calc(-50% + 5px));
  }
}
numberHere = 550;
numberOfTidy = 0;
function makeCircles(){
  if(numberHere > 0.5){
    numberHere /= 1.1;
  }
  numberOfTidy += 1;
  hereCircle = document.createElement("div");
  hereCircle.classList.add("circleIsHere");
  hereCircle.style.left = (Math.random()*100).toString()+"%";
  hereCircle.style.top = (50+Math.random()*50).toString()+"%";
  document.body.append(hereCircle);
  if(numberOfTidy != 2095){
    setTimeout(makeCircles, numberHere);
  }
}
makeCircles()

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.