*{margin:0;padding:0;list-style-type:none;}
a,img{border:0;}
body {
  min-height: 450px;
  height: 100vh;
  position: relative;
  background-color: #191970;
  text-align: center;
}
div {
  width: 100%;
  height: 100vh;
  position: absolute;
  left: 0;
  bottom: 0;
}
div:before,
div:after {
  width: 100%;
  height: 100%;
  display: block;
  content: '';
  left: 0;
  bottom: 0;
  position: absolute;
}
#reflection {
  min-height: 450px;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#191970), color-stop(45%, #87ceeb), color-stop(55%, #87ceeb), to(#191970));
  background-image: linear-gradient(to bottom, #191970, #87ceeb 45%, #87ceeb 55%, #191970 100%);
  overflow: hidden;
}
#reflection:before {
  background-repeat: no-repeat;
  background-image: radial-gradient(ellipse at 0 0, #0b0b31 50%, rgba(25,25,112,0) 50.5%), radial-gradient(ellipse at 100% 0, #0b0b31 50%, rgba(25,25,112,0) 50.5%), radial-gradient(circle at 50% 0, rgba(173,216,230,0.8) 30%, rgba(175,238,238,0.8) 30.5%, rgba(175,238,238,0.8) 40%, rgba(72,209,204,0.8) 40.5%, rgba(72,209,204,0.8) 50%, rgba(70,130,180,0.8) 50.5%, rgba(70,130,180,0.8) 60%, rgba(70,130,180,0) 60.5%);
  background-size: 85% 5.4em, 85% 5.4em, 26em 13em;
  background-position: 0 calc(50% + 3.4em), 100% calc(50% + 3.4em), 50% calc(50% + 6.5em);
  -webkit-filter: blur(0.8em);
          filter: blur(0.8em);
  -webkit-transform: scale(1.05, 1.2);
          transform: scale(1.05, 1.2);
}
#reflection:after {
  background-repeat: no-repeat;
  background-image: radial-gradient(ellipse at 0 100%, #06061d 50%, rgba(25,25,112,0) 50.5%), radial-gradient(ellipse at 100% 100%, #06061d 50%, rgba(25,25,112,0) 50.5%), radial-gradient(circle at 50% 100%, rgba(173,216,230,0.8) 30%, rgba(175,238,238,0.8) 30.5%, rgba(175,238,238,0.8) 40%, rgba(72,209,204,0.8) 40.5%, rgba(72,209,204,0.8) 50%, rgba(70,130,180,0.8) 50.5%, rgba(70,130,180,0.8) 60%, rgba(70,130,180,0) 60.5%);
  background-size: 75% 5.4em, 75% 5.4em, 26em 13em;
  background-position: 0 50%, 100% 50%, 50% calc(50% - 5em);
}