.pyro > .before, .pyro > .after {
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  box-shadow: 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff;
  -moz-animation: 1s bang ease-out infinite backwards, 1s gravity ease-in infinite backwards, 5s position linear infinite backwards;
  -webkit-animation: 1s bang ease-out infinite backwards, 1s gravity ease-in infinite backwards, 5s position linear infinite backwards;
  -o-animation: 1s bang ease-out infinite backwards, 1s gravity ease-in infinite backwards, 5s position linear infinite backwards;
  -ms-animation: 1s bang ease-out infinite backwards, 1s gravity ease-in infinite backwards, 5s position linear infinite backwards;
  animation: 1s bang ease-out infinite backwards, 1s gravity ease-in infinite backwards, 5s position linear infinite backwards;
}

.pyro > .after {
  -moz-animation-delay: 1.25s, 1.25s, 1.25s;
  -webkit-animation-delay: 1.25s, 1.25s, 1.25s;
  -o-animation-delay: 1.25s, 1.25s, 1.25s;
  -ms-animation-delay: 1.25s, 1.25s, 1.25s;
  animation-delay: 1.25s, 1.25s, 1.25s;
  -moz-animation-duration: 1.25s, 1.25s, 6.25s;
  -webkit-animation-duration: 1.25s, 1.25s, 6.25s;
  -o-animation-duration: 1.25s, 1.25s, 6.25s;
  -ms-animation-duration: 1.25s, 1.25s, 6.25s;
  animation-duration: 1.25s, 1.25s, 6.25s;
}

@-webkit-keyframes bang {
  to {
    box-shadow: -47px -337.6666666667px #ffea00, -175px -39.6666666667px #ff1a00, 93px -262.6666666667px #3300ff, 104px 53.3333333333px #3700ff, -105px -50.6666666667px #ff5500, -109px -234.6666666667px #0066ff, -216px -83.6666666667px #5eff00, 210px -130.6666666667px #1aff00, 149px -180.6666666667px #ff3300, 54px -146.6666666667px #00ff11, 145px -90.6666666667px #ff00ea, 52px -133.6666666667px #3cff00, 36px -37.6666666667px #7bff00, -161px -308.6666666667px #00ff55, -49px -91.6666666667px #ffaa00, 213px -119.6666666667px #91ff00, 196px -136.6666666667px #0099ff, -105px -70.6666666667px #ff0062, 209px 21.3333333333px #ffdd00, 171px -69.6666666667px #00ff33, 31px 44.3333333333px #00ff11, 128px -31.6666666667px #00fffb, -136px -169.6666666667px #00ffae, -81px 41.3333333333px #1a00ff, -229px -71.6666666667px #00fff7, -81px 34.3333333333px #0015ff, 110px -243.6666666667px #ffa600, -185px -162.6666666667px #00d5ff, 79px -369.6666666667px #ff1a00, 58px -356.6666666667px #ff0059, -57px -33.6666666667px #ff5900, 170px -117.6666666667px #ddff00, -53px -284.6666666667px #00aeff, -181px -371.6666666667px #00d9ff, 147px -6.6666666667px #ff00e1, -102px -16.6666666667px #ff00f7, 165px -195.6666666667px #4000ff, 26px -189.6666666667px #1a00ff, 32px -41.6666666667px #bfff00, -3px -51.6666666667px #00ff40, -119px -80.6666666667px #6aff00, 24px -118.6666666667px #00ff33, 127px -391.6666666667px #00c8ff, 146px -333.6666666667px #bbff00, -230px -120.6666666667px #8cff00, 161px -113.6666666667px #ff00dd, 184px -372.6666666667px #ff6a00, -5px -325.6666666667px #ff00cc, 200px -305.6666666667px #bbff00, 126px -20.6666666667px #00eaff, 181px -157.6666666667px #ff0022;
  }
}
@-moz-keyframes bang {
  to {
    box-shadow: -47px -337.6666666667px #ffea00, -175px -39.6666666667px #ff1a00, 93px -262.6666666667px #3300ff, 104px 53.3333333333px #3700ff, -105px -50.6666666667px #ff5500, -109px -234.6666666667px #0066ff, -216px -83.6666666667px #5eff00, 210px -130.6666666667px #1aff00, 149px -180.6666666667px #ff3300, 54px -146.6666666667px #00ff11, 145px -90.6666666667px #ff00ea, 52px -133.6666666667px #3cff00, 36px -37.6666666667px #7bff00, -161px -308.6666666667px #00ff55, -49px -91.6666666667px #ffaa00, 213px -119.6666666667px #91ff00, 196px -136.6666666667px #0099ff, -105px -70.6666666667px #ff0062, 209px 21.3333333333px #ffdd00, 171px -69.6666666667px #00ff33, 31px 44.3333333333px #00ff11, 128px -31.6666666667px #00fffb, -136px -169.6666666667px #00ffae, -81px 41.3333333333px #1a00ff, -229px -71.6666666667px #00fff7, -81px 34.3333333333px #0015ff, 110px -243.6666666667px #ffa600, -185px -162.6666666667px #00d5ff, 79px -369.6666666667px #ff1a00, 58px -356.6666666667px #ff0059, -57px -33.6666666667px #ff5900, 170px -117.6666666667px #ddff00, -53px -284.6666666667px #00aeff, -181px -371.6666666667px #00d9ff, 147px -6.6666666667px #ff00e1, -102px -16.6666666667px #ff00f7, 165px -195.6666666667px #4000ff, 26px -189.6666666667px #1a00ff, 32px -41.6666666667px #bfff00, -3px -51.6666666667px #00ff40, -119px -80.6666666667px #6aff00, 24px -118.6666666667px #00ff33, 127px -391.6666666667px #00c8ff, 146px -333.6666666667px #bbff00, -230px -120.6666666667px #8cff00, 161px -113.6666666667px #ff00dd, 184px -372.6666666667px #ff6a00, -5px -325.6666666667px #ff00cc, 200px -305.6666666667px #bbff00, 126px -20.6666666667px #00eaff, 181px -157.6666666667px #ff0022;
  }
}
@-o-keyframes bang {
  to {
    box-shadow: -47px -337.6666666667px #ffea00, -175px -39.6666666667px #ff1a00, 93px -262.6666666667px #3300ff, 104px 53.3333333333px #3700ff, -105px -50.6666666667px #ff5500, -109px -234.6666666667px #0066ff, -216px -83.6666666667px #5eff00, 210px -130.6666666667px #1aff00, 149px -180.6666666667px #ff3300, 54px -146.6666666667px #00ff11, 145px -90.6666666667px #ff00ea, 52px -133.6666666667px #3cff00, 36px -37.6666666667px #7bff00, -161px -308.6666666667px #00ff55, -49px -91.6666666667px #ffaa00, 213px -119.6666666667px #91ff00, 196px -136.6666666667px #0099ff, -105px -70.6666666667px #ff0062, 209px 21.3333333333px #ffdd00, 171px -69.6666666667px #00ff33, 31px 44.3333333333px #00ff11, 128px -31.6666666667px #00fffb, -136px -169.6666666667px #00ffae, -81px 41.3333333333px #1a00ff, -229px -71.6666666667px #00fff7, -81px 34.3333333333px #0015ff, 110px -243.6666666667px #ffa600, -185px -162.6666666667px #00d5ff, 79px -369.6666666667px #ff1a00, 58px -356.6666666667px #ff0059, -57px -33.6666666667px #ff5900, 170px -117.6666666667px #ddff00, -53px -284.6666666667px #00aeff, -181px -371.6666666667px #00d9ff, 147px -6.6666666667px #ff00e1, -102px -16.6666666667px #ff00f7, 165px -195.6666666667px #4000ff, 26px -189.6666666667px #1a00ff, 32px -41.6666666667px #bfff00, -3px -51.6666666667px #00ff40, -119px -80.6666666667px #6aff00, 24px -118.6666666667px #00ff33, 127px -391.6666666667px #00c8ff, 146px -333.6666666667px #bbff00, -230px -120.6666666667px #8cff00, 161px -113.6666666667px #ff00dd, 184px -372.6666666667px #ff6a00, -5px -325.6666666667px #ff00cc, 200px -305.6666666667px #bbff00, 126px -20.6666666667px #00eaff, 181px -157.6666666667px #ff0022;
  }
}
@-ms-keyframes bang {
  to {
    box-shadow: -47px -337.6666666667px #ffea00, -175px -39.6666666667px #ff1a00, 93px -262.6666666667px #3300ff, 104px 53.3333333333px #3700ff, -105px -50.6666666667px #ff5500, -109px -234.6666666667px #0066ff, -216px -83.6666666667px #5eff00, 210px -130.6666666667px #1aff00, 149px -180.6666666667px #ff3300, 54px -146.6666666667px #00ff11, 145px -90.6666666667px #ff00ea, 52px -133.6666666667px #3cff00, 36px -37.6666666667px #7bff00, -161px -308.6666666667px #00ff55, -49px -91.6666666667px #ffaa00, 213px -119.6666666667px #91ff00, 196px -136.6666666667px #0099ff, -105px -70.6666666667px #ff0062, 209px 21.3333333333px #ffdd00, 171px -69.6666666667px #00ff33, 31px 44.3333333333px #00ff11, 128px -31.6666666667px #00fffb, -136px -169.6666666667px #00ffae, -81px 41.3333333333px #1a00ff, -229px -71.6666666667px #00fff7, -81px 34.3333333333px #0015ff, 110px -243.6666666667px #ffa600, -185px -162.6666666667px #00d5ff, 79px -369.6666666667px #ff1a00, 58px -356.6666666667px #ff0059, -57px -33.6666666667px #ff5900, 170px -117.6666666667px #ddff00, -53px -284.6666666667px #00aeff, -181px -371.6666666667px #00d9ff, 147px -6.6666666667px #ff00e1, -102px -16.6666666667px #ff00f7, 165px -195.6666666667px #4000ff, 26px -189.6666666667px #1a00ff, 32px -41.6666666667px #bfff00, -3px -51.6666666667px #00ff40, -119px -80.6666666667px #6aff00, 24px -118.6666666667px #00ff33, 127px -391.6666666667px #00c8ff, 146px -333.6666666667px #bbff00, -230px -120.6666666667px #8cff00, 161px -113.6666666667px #ff00dd, 184px -372.6666666667px #ff6a00, -5px -325.6666666667px #ff00cc, 200px -305.6666666667px #bbff00, 126px -20.6666666667px #00eaff, 181px -157.6666666667px #ff0022;
  }
}
@keyframes bang {
  to {
    box-shadow: -47px -337.6666666667px #ffea00, -175px -39.6666666667px #ff1a00, 93px -262.6666666667px #3300ff, 104px 53.3333333333px #3700ff, -105px -50.6666666667px #ff5500, -109px -234.6666666667px #0066ff, -216px -83.6666666667px #5eff00, 210px -130.6666666667px #1aff00, 149px -180.6666666667px #ff3300, 54px -146.6666666667px #00ff11, 145px -90.6666666667px #ff00ea, 52px -133.6666666667px #3cff00, 36px -37.6666666667px #7bff00, -161px -308.6666666667px #00ff55, -49px -91.6666666667px #ffaa00, 213px -119.6666666667px #91ff00, 196px -136.6666666667px #0099ff, -105px -70.6666666667px #ff0062, 209px 21.3333333333px #ffdd00, 171px -69.6666666667px #00ff33, 31px 44.3333333333px #00ff11, 128px -31.6666666667px #00fffb, -136px -169.6666666667px #00ffae, -81px 41.3333333333px #1a00ff, -229px -71.6666666667px #00fff7, -81px 34.3333333333px #0015ff, 110px -243.6666666667px #ffa600, -185px -162.6666666667px #00d5ff, 79px -369.6666666667px #ff1a00, 58px -356.6666666667px #ff0059, -57px -33.6666666667px #ff5900, 170px -117.6666666667px #ddff00, -53px -284.6666666667px #00aeff, -181px -371.6666666667px #00d9ff, 147px -6.6666666667px #ff00e1, -102px -16.6666666667px #ff00f7, 165px -195.6666666667px #4000ff, 26px -189.6666666667px #1a00ff, 32px -41.6666666667px #bfff00, -3px -51.6666666667px #00ff40, -119px -80.6666666667px #6aff00, 24px -118.6666666667px #00ff33, 127px -391.6666666667px #00c8ff, 146px -333.6666666667px #bbff00, -230px -120.6666666667px #8cff00, 161px -113.6666666667px #ff00dd, 184px -372.6666666667px #ff6a00, -5px -325.6666666667px #ff00cc, 200px -305.6666666667px #bbff00, 126px -20.6666666667px #00eaff, 181px -157.6666666667px #ff0022;
  }
}
@-webkit-keyframes gravity {
  to {
    transform: translateY(200px);
    -moz-transform: translateY(200px);
    -webkit-transform: translateY(200px);
    -o-transform: translateY(200px);
    -ms-transform: translateY(200px);
    opacity: 0;
  }
}
@-moz-keyframes gravity {
  to {
    transform: translateY(200px);
    -moz-transform: translateY(200px);
    -webkit-transform: translateY(200px);
    -o-transform: translateY(200px);
    -ms-transform: translateY(200px);
    opacity: 0;
  }
}
@-o-keyframes gravity {
  to {
    transform: translateY(200px);
    -moz-transform: translateY(200px);
    -webkit-transform: translateY(200px);
    -o-transform: translateY(200px);
    -ms-transform: translateY(200px);
    opacity: 0;
  }
}
@-ms-keyframes gravity {
  to {
    transform: translateY(200px);
    -moz-transform: translateY(200px);
    -webkit-transform: translateY(200px);
    -o-transform: translateY(200px);
    -ms-transform: translateY(200px);
    opacity: 0;
  }
}
@keyframes gravity {
  to {
    transform: translateY(200px);
    -moz-transform: translateY(200px);
    -webkit-transform: translateY(200px);
    -o-transform: translateY(200px);
    -ms-transform: translateY(200px);
    opacity: 0;
  }
}
@-webkit-keyframes position {
  0%, 19.9% {
    margin-top: 10%;
    margin-left: 40%;
  }
  20%, 39.9% {
    margin-top: 40%;
    margin-left: 30%;
  }
  40%, 59.9% {
    margin-top: 20%;
    margin-left: 70%;
  }
  60%, 79.9% {
    margin-top: 30%;
    margin-left: 20%;
  }
  80%, 99.9% {
    margin-top: 30%;
    margin-left: 80%;
  }
}
@-moz-keyframes position {
  0%, 19.9% {
    margin-top: 10%;
    margin-left: 40%;
  }
  20%, 39.9% {
    margin-top: 40%;
    margin-left: 30%;
  }
  40%, 59.9% {
    margin-top: 20%;
    margin-left: 70%;
  }
  60%, 79.9% {
    margin-top: 30%;
    margin-left: 20%;
  }
  80%, 99.9% {
    margin-top: 30%;
    margin-left: 80%;
  }
}
@-o-keyframes position {
  0%, 19.9% {
    margin-top: 10%;
    margin-left: 40%;
  }
  20%, 39.9% {
    margin-top: 40%;
    margin-left: 30%;
  }
  40%, 59.9% {
    margin-top: 20%;
    margin-left: 70%;
  }
  60%, 79.9% {
    margin-top: 30%;
    margin-left: 20%;
  }
  80%, 99.9% {
    margin-top: 30%;
    margin-left: 80%;
  }
}
@-ms-keyframes position {
  0%, 19.9% {
    margin-top: 10%;
    margin-left: 40%;
  }
  20%, 39.9% {
    margin-top: 40%;
    margin-left: 30%;
  }
  40%, 59.9% {
    margin-top: 20%;
    margin-left: 70%;
  }
  60%, 79.9% {
    margin-top: 30%;
    margin-left: 20%;
  }
  80%, 99.9% {
    margin-top: 30%;
    margin-left: 80%;
  }
}
@keyframes position {
  0%, 19.9% {
    margin-top: 10%;
    margin-left: 40%;
  }
  20%, 39.9% {
    margin-top: 40%;
    margin-left: 30%;
  }
  40%, 59.9% {
    margin-top: 20%;
    margin-left: 70%;
  }
  60%, 79.9% {
    margin-top: 30%;
    margin-left: 20%;
  }
  80%, 99.9% {
    margin-top: 30%;
    margin-left: 80%;
  }
}