.speedy { 
  -webkit-animation-duration: 0.5s; 
  animation-duration: 0.5s; 
  -webkit-animation-fill-mode: both; 
  animation-fill-mode: both; 
} 

.animated { 
  -webkit-animation-duration: 1s; 
  animation-duration: 1s; 
  -webkit-animation-fill-mode: both; 
  animation-fill-mode: both; 
} 

.slow {
  -webkit-animation-duration: 1.5s; 
  animation-duration: 1.5s; 
  -webkit-animation-fill-mode: both; 
  animation-fill-mode: both; 
}

.slower {
  -webkit-animation-duration: 2s; 
  animation-duration: 2s; 
  -webkit-animation-fill-mode: both; 
  animation-fill-mode: both; 
}

.slowest {
  -webkit-animation-duration: 3s; 
  animation-duration: 3s; 
  -webkit-animation-fill-mode: both; 
  animation-fill-mode: both; 
}

.delay-100 { 
  -webkit-animation-delay: 0.1s; 
  -moz-animation-delay: 0.1s; 
  -o-animation-delay: 0.1s; 
  animation-delay: 0.1s; 
}

.delay-150 { 
  -webkit-animation-delay: 0.15s; 
  -moz-animation-delay: 0.15s; 
  -o-animation-delay: 0.15s; 
  animation-delay: 0.15s; 
}

.delay-200 { 
  -webkit-animation-delay: 0.20s; 
  -moz-animation-delay: 0.20s; 
  -o-animation-delay: 0.20s; 
  animation-delay: 0.20s; 
}

.delay-250 { 
  -webkit-animation-delay: 0.25s; 
  -moz-animation-delay: 0.25s; 
  -o-animation-delay: 0.25s; 
  animation-delay: 0.25s; 
}

.delay-500 { 
  -webkit-animation-delay: 0.5s; 
  -moz-animation-delay: 0.5s; 
  -o-animation-delay: 0.5s; 
  animation-delay: 0.5s; 
}

.delay-750 { 
  -webkit-animation-delay: 0.75s; 
  -moz-animation-delay: 0.75s; 
  -o-animation-delay: 0.75s; 
  animation-delay: 0.75s; 
}

.delay-1000 { 
  -webkit-animation-delay: 1.0s; 
  -moz-animation-delay: 1.0s; 
  -o-animation-delay: 1.0s; 
  animation-delay: 1.0s; 
}

.delay-1250 { 
  -webkit-animation-delay: 1.25s; 
  -moz-animation-delay: 1.25s; 
  -o-animation-delay: 1.25s; 
  animation-delay: 1.25s; 
}

.delay-1500 { 
  -webkit-animation-delay: 1.5s; 
  -moz-animation-delay: 1.5s; 
  -o-animation-delay: 1.5s; 
  animation-delay: 1.5s; 
}

.delay-1750 { 
  -webkit-animation-delay: 1.75s; 
  -moz-animation-delay: 1.75s; 
  -o-animation-delay: 1.75s; 
  animation-delay: 1.75s; 
}

.delay-2000 { 
  -webkit-animation-delay: 2.0s; 
  -moz-animation-delay: 2.0s; 
  -o-animation-delay: 2.0s; 
  animation-delay: 2.0s; 
}

.delay-2250 { 
  -webkit-animation-delay: 2.25s; 
  -moz-animation-delay: 2.25s; 
  -o-animation-delay: 2.25s; 
  animation-delay: 2.25s; 
}

.delay-2500 { 
  -webkit-animation-delay: 2.5s; 
  -moz-animation-delay: 2.5s; 
  -o-animation-delay: 2.5s; 
  animation-delay: 2.5s; 
}

.delay-2750 { 
  -webkit-animation-delay: 2.75s; 
  -moz-animation-delay: 2.75s; 
  -o-animation-delay: 2.75s; 
  animation-delay: 2.75s; 
}

.delay-3000 { 
  -webkit-animation-delay: 3.0s; 
  -moz-animation-delay: 3.0s; 
  -o-animation-delay: 3.0s; 
  animation-delay: 3.0s; 
}

.delay-3500 { 
  -webkit-animation-delay: 3.5s; 
  -moz-animation-delay: 3.5s; 
  -o-animation-delay: 3.5s; 
  animation-delay: 3.5s; 
}

.bounceInRight, .bounceInLeft, .bounceInUp, .bounceInDown {
  opacity: 0;
  -webkit-transform: translateX(400px); 
  transform: translateX(400px); 
}

.fadeInRight, .fadeInLeft, .fadeInUp, .fadeInDown {
  opacity: 0;
  -webkit-transform: translateX(400px); 
  transform: translateX(400px); 
}

.flipInX, .flipInY, .rotateIn, .rotateInUpLeft, .rotateInUpRight, .rotateInDownLeft, .rotateDownUpRight, .rollIn { 
  opacity: 0; 
}

.lightSpeedInRight, .lightSpeedInLeft {
  opacity: 0;
  -webkit-transform: translateX(400px); 
  transform: translateX(400px); 
}

.rotation {
  position: relative;
  -webkit-animation: rotation 3s linear infinite;
  animation: rotation 3s linear infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

@-webkit-keyframes bounceIn { 
  0% {
    opacity: 0; 
    -webkit-transform: scale(.3);
  } 
  50% {
    opacity: 1; 
    -webkit-transform: scale(1.05);
  } 
  70% {
    -webkit-transform: scale(.9);
  } 
  100% {
    -webkit-transform: scale(1); 
  } 
} 

@keyframes bounceIn { 
  0% {
    opacity: 0; 
    transform: scale(.3);
  } 
  50% {
    opacity: 1; 
    transform: scale(1.05);
  } 
  70% {
    transform: scale(.9);
  } 
  100% {
    transform: scale(1);
  } 
} 

.bounceIn.go { 
  -webkit-animation-name: bounceIn; 
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInRight { 
  0% {
    opacity: 0;
    -webkit-transform: translateX(400px);
  } 
  60% {
    -webkit-transform: translateX(-30px);
  } 
  80% {
    -webkit-transform: translateX(10px);
  } 
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  } 
} 

@keyframes bounceInRight { 
  0% {
    opacity: 0;
    transform: translateX(400px);
  } 
  60% {
    transform: translateX(-30px);
  } 
  80% {
    transform: translateX(10px);
  } 
  100% {
    opacity: 1;
    transform: translateX(0);
  } 
} 

.bounceInRight.go { 
  -webkit-animation-name: bounceInRight; 
  animation-name: bounceInRight; 
}

@-webkit-keyframes bounceInLeft { 
  0% {
    opacity: 0; 
    -webkit-transform: translateX(-400px);
  } 
  60% {
    -webkit-transform: translateX(30px);
  } 
  80% {
    -webkit-transform: translateX(-10px);
  } 
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  } 
} 

@keyframes bounceInLeft { 
  0% {
    opacity: 0;
    transform: translateX(-400px);
  } 
  60% {
    transform: translateX(30px);
  } 
  80% {
    transform: translateX(-10px);
  } 
  100% {
    opacity: 1;
    transform: translateX(0);
  } 
} 

.bounceInLeft.go { 
  -webkit-animation-name: bounceInLeft; 
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInUp { 
  0% {
    opacity: 0;
    -webkit-transform: translateY(400px);
  } 
  60% {
    -webkit-transform: translateY(-30px);
  } 
  80% {
    -webkit-transform: translateY(10px);
  } 
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  } 
}

@keyframes bounceInUp { 
  0% {
    opacity: 0;
    transform: translateY(400px);
  } 
  60% {
    transform: translateY(-30px);
  } 
  80% {
    transform: translateY(10px);
  } 
  100% {
    opacity: 1;
    transform: translateY(0);
  } 
} 

.bounceInUp.go { 
  -webkit-animation-name: bounceInUp; 
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceInDown { 
  0% { 
    opacity: 0; 
    -webkit-transform: translateY(-400px); 
  } 
  60% { 
    -webkit-transform: translateY(30px); 
  } 
  80% { 
    -webkit-transform: translateY(-10px); 
  } 
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); 
  } 
} 

@keyframes bounceInDown { 
  0% { 
    opacity: 0; 
    transform: translateY(-400px); 
  } 
  60% { 
    transform: translateY(30px); 
  } 
  80% { 
    transform: translateY(-10px); 
  } 
  100% {
    opacity: 1;
    transform: translateY(0); 
  } 
} 

.bounceInDown.go { 
  -webkit-animation-name: bounceInDown; 
  animation-name: bounceInDown; 
}

/**********
* Fade In *
**********/ 
@-webkit-keyframes fadeIn { 
  0% {
    opacity: 0;
  } 
  100% {
    opacity: 1;
    display: block;
  } 
} 

@keyframes fadeIn { 
  0% {
    opacity: 0;
  } 
  100% {
    opacity: 1;
    display: block;
  } 
}

.fadeIn {
  opacity: 0;
}

.fadeIn.go { 
  -webkit-animation-name: fadeIn; 
  animation-name: fadeIn; 
}

/**********
* Grow in *
***********/
@-webkit-keyframes growIn { 
  0% { 
    -webkit-transform: scale(0.2); 
    opacity: 0;
  } 
  50% { 
    -webkit-transform: scale(1.2); 
  } 
  100% { 
    -webkit-transform: scale(1); 
    opacity: 1;
  } 
} 

@keyframes growIn { 
  0% { 
    transform: scale(0.2); 
    opacity: 0;
  } 
  50% { 
    transform: scale(1.2); 
  } 
  100% { 
    transform: scale(1); 
    opacity: 1;
  } 
} 

.growIn { 
  -webkit-transform: scale(0.2);
  transform: scale(0.2);
  opacity: 0;
}

.growIn.go {
  -webkit-animation-name: growIn; 
  animation-name: growIn; 
}

/********
* Shake *
********/
@-webkit-keyframes shake { 
  0%, 100% {
    -webkit-transform: translateX(0);
  } 
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
  } 
  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
  } 
} 

@keyframes shake { 
  0%, 100% {
    transform: translateX(0);
  } 
  10%, 30%, 50%, 70%, 90% {
    transform: translateX(-10px);
  } 
  20%, 40%, 60%, 80% {
    transform: translateX(10px);
  } 
} 

.shake.go { 
  -webkit-animation-name: shake; 
  animation-name: shake; 
}

/********
* ShakeUp *
********/
@-webkit-keyframes shakeUp { 
  0%, 100% {
    -webkit-transform: translateX(0);
  } 
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateY(-10px);
  } 
  20%, 40%, 60%, 80% {
    -webkit-transform: translateY(10px);
  } 
} 

@keyframes shakeUp { 
  0%, 100% {
    transform: translateY(0);
  } 
  10%, 30%, 50%, 70%, 90% {
    transform: translateY(-10px);
  } 
  20%, 40%, 60%, 80% {
    transform: translateY(10px);
  } 
} 

.shakeUp.go { 
  -webkit-animation-name: shakeUp; 
  animation-name: shakeUp; 
}

/*************
* FadeInLeft *
*************/
@-webkit-keyframes fadeInLeft { 
  0% { 
    opacity: 0; 
    -webkit-transform: translateX(-400px); 
  } 
  50% {
    opacity: 0.3; 
  }
  100% { 
    opacity: 1; 
    -webkit-transform: translateX(0); 
  } 
} 

@keyframes fadeInLeft { 
  0% { 
    opacity: 0; 
    transform: translateX(-400px); 
  } 
  50% {
    opacity: 0.3; 
  }
  100% { 
    opacity: 1; 
    transform: translateX(0); 
  } 
} 

.fadeInLeft { 
  opacity: 0; 
  -webkit-transform: translateX(-400px); 
  transform: translateX(-400px);
}

.fadeInLeft.go { 
  -webkit-animation-name: fadeInLeft; 
  animation-name: fadeInLeft; 
}

/*************
* FadeInRight *
*************/
@-webkit-keyframes fadeInRight { 
  0% { 
    opacity: 0; 
    -webkit-transform: translateX(400px); 
  } 
  50% {
    opacity: 0.3; 
  }
  100% { 
    opacity: 1; 
    -webkit-transform: translateX(0); 
  } 
} 

@keyframes fadeInRight { 
  0% { 
    opacity: 0; 
    transform: translateX(400px); 
  } 
  50% {
    opacity: 0.3; 
  }
  100% { 
    opacity: 1; 
    transform: translateX(0); 
  } 
} 

.fadeInRight { 
  opacity: 0; 
  -webkit-transform: translateX(400px); 
  transform: translateX(400px);
}

.fadeInRight.go { 
  -webkit-animation-name: fadeInRight; 
  animation-name: fadeInRight; 
}

/*************
* FadeInUp *
*************/
@-webkit-keyframes fadeInUp { 
  0% { 
    opacity: 0; 
    -webkit-transform: translateY(400px); 
  } 
  50% {
    opacity: 0.3; 
  }
  100% { 
    opacity: 1; 
    -webkit-transform: translateY(0); 
  } 
} 

@keyframes fadeInUp { 
  0% { 
    opacity: 0; 
    transform: translateY(400px); 
  } 
  50% {
    opacity: 0.3; 
  }
  100% { 
    opacity: 1; 
    transform: translateY(0); 
  } 
} 

.fadeInUp { 
  opacity: 0; 
  -webkit-transform: translateY(400px); 
  transform: translateY(400px);
}

.fadeInUp.go { 
  -webkit-animation-name: fadeInUp; 
  animation-name: fadeInUp; 
}

/*************
* FadeInDown *
*************/
@-webkit-keyframes fadeInDown { 
  0% { 
    opacity: 0; 
    -webkit-transform: translateY(-400px); 
  } 
  50% {
    opacity: 0.3; 
  }
  100% { 
    opacity: 1; 
    -webkit-transform: translateY(0); 
  } 
} 

@keyframes fadeInDown { 
  0% { 
    opacity: 0; 
    transform: translateY(-400px); 
  } 
  50% {
    opacity: 0.3; 
  }
  100% { 
    opacity: 1; 
    transform: translateY(0); 
  } 
} 

.fadeInDown { 
  opacity: 0; 
  -webkit-transform: translateY(-400px); 
  transform: translateY(-400px);
}

.fadeInDown.go { 
  -webkit-animation-name: fadeInDown; 
  animation-name: fadeInDown; 
}

/*****************
* rotateIn *
*****************/
@-webkit-keyframes rotateIn { 
  0% { 
    -webkit-transform-origin: center center; 
    -webkit-transform: rotate(-200deg); 
    opacity: 0; 
  } 
  100% { 
    -webkit-transform-origin: center center; 
    -webkit-transform: rotate(0); 
    opacity: 1; 
  } 
} 

@keyframes rotateIn { 
  0% { 
    transform-origin: center center; 
    transform: rotate(-200deg); 
    opacity: 0; 
  } 
  100% { 
    transform-origin: center center; 
    transform: rotate(0); 
    opacity: 1; 
  } 
} 

.rotateIn.go { 
  -webkit-animation-name: rotateIn; 
  animation-name: rotateIn; 
}

/*****************
* rotateInUpLeft *
*****************/
@-webkit-keyframes rotateInUpLeft { 
  0% { 
    -webkit-transform-origin: left bottom; 
    -webkit-transform: rotate(90deg); 
    opacity: 0; 
  } 
  100% { 
    -webkit-transform-origin: left bottom; 
    -webkit-transform: rotate(0); 
    opacity: 1; 
  } 
} 

@keyframes rotateInUpLeft { 
  0% { 
    transform-origin: left bottom; 
    transform: rotate(90deg); 
    opacity: 0; 
  } 
  100% { 
    transform-origin: left bottom; 
    transform: rotate(0); 
    opacity: 1; 
  } 
} 

.rotateInUpLeft.go { 
  -webkit-animation-name: rotateInUpLeft; 
  animation-name: rotateInUpLeft; 
}

/*******************
* rotateInDownLeft *
*******************/
@-webkit-keyframes rotateInDownLeft { 
  0% { 
    -webkit-transform-origin: left bottom; 
    -webkit-transform: rotate(-90deg); 
    opacity: 0; 
  } 
  100% { 
    -webkit-transform-origin: left bottom; 
    -webkit-transform: rotate(0); 
    opacity: 1; 
  } 
} 

@keyframes rotateInDownLeft { 
  0% { 
    transform-origin: left bottom; 
    transform: rotate(-90deg); 
    opacity: 0; 
  } 
  100% { 
    transform-origin: left bottom; 
    transform: rotate(0); 
    opacity: 1; 
  } 
} 

.rotateInDownLeft.go { 
  -webkit-animation-name: rotateInDownLeft; 
  animation-name: rotateInDownLeft; 
}

/******************
* rotateInUpRight *
*******************/
@-webkit-keyframes rotateInUpRight { 
  0% { 
    -webkit-transform-origin: right bottom; 
    -webkit-transform: rotate(-90deg); 
    opacity: 0; 
  } 
  100% { 
    -webkit-transform-origin: right bottom; 
    -webkit-transform: rotate(0); 
    opacity: 1; 
  } 
} 

@keyframes rotateInUpRight { 
  0% { 
    transform-origin: right bottom; 
    transform: rotate(-90deg); 
    opacity: 0; 
  } 
  100% { 
    transform-origin: right bottom; 
    transform: rotate(0); 
    opacity: 1; 
  } 
} 

.rotateInUpRight.go { 
  -webkit-animation-name: rotateInUpRight; 
  animation-name: rotateInUpRight; 
}

/********************
* rotateInDownRight *
********************/
@-webkit-keyframes rotateInDownRight { 
  0% { 
    -webkit-transform-origin: right bottom; 
    -webkit-transform: rotate(90deg); 
    opacity: 0; 
  } 
  100% { 
    -webkit-transform-origin: right bottom; 
    -webkit-transform: rotate(0); 
    opacity: 1; 
  } 
} 

@keyframes rotateInDownRight { 
  0% { 
    transform-origin: right bottom; 
    transform: rotate(90deg); 
    opacity: 0; 
  } 
  100% { 
    transform-origin: right bottom; 
    transform: rotate(0); 
    opacity: 1; 
  } 
} 

.rotateInDownRight.go { 
  -webkit-animation-name: rotateInDownRight; 
  animation-name: rotateInDownRight; 
}

/*********
* rollIn *
**********/
@-webkit-keyframes rollIn { 
  0% { 
    opacity: 0; 
    -webkit-transform: translateX(-100%) rotate(-120deg); 
  } 
  100% { 
    opacity: 1; 
    -webkit-transform: translateX(0px) rotate(0deg); 
  } 
} 

@keyframes rollIn { 
  0% { 
    opacity: 0; 
    transform: translateX(-100%) rotate(-120deg); 
  } 
  100% { 
    opacity: 1; 
    transform: translateX(0px) rotate(0deg); 
  } 
} 

.rollIn.go { 
  -webkit-animation-name: rollIn; 
  animation-name: rollIn; 
}

/*********
* wiggle *
**********/
@-webkit-keyframes wiggle { 
  0% {
    -webkit-transform: skewX(9deg);
  } 
  10% {
    -webkit-transform: skewX(-8deg);
  } 
  20% {
    -webkit-transform: skewX(7deg);
  } 
  30% {
    -webkit-transform: skewX(-6deg);
  } 
  40% {
    -webkit-transform: skewX(5deg);
  } 
  50% {
    -webkit-transform: skewX(-4deg);
  } 
  60% {
    -webkit-transform: skewX(3deg);
  } 
  70% {
    -webkit-transform: skewX(-2deg);
  } 
  80% {
    -webkit-transform: skewX(1deg);
  } 
  90% {
    -webkit-transform: skewX(0deg);
  } 
  100% {
    -webkit-transform: skewX(0deg);
  } 
} 

@keyframes wiggle { 
  0% {
    transform: skewX(9deg);
  } 
  10% {
    transform: skewX(-8deg);
  } 
  20% {
    transform: skewX(7deg);
  } 
  30% {
    transform: skewX(-6deg);
  } 
  40% {
    transform: skewX(5deg);
  } 
  50% {
    transform: skewX(-4deg);
  } 
  60% {
    transform: skewX(3deg);
  } 
  70% {
    transform: skewX(-2deg);
  } 
  80% {
    transform: skewX(1deg);
  } 
  90% {
    transform: skewX(0deg);
  } 
  100% {
    transform: skewX(0deg);
  } 
} 

.wiggle.go { 
  -webkit-animation-name: wiggle; 
  animation-name: wiggle; 
  -webkit-animation-timing-function: ease-in; 
  animation-timing-function: ease-in; 
} 

/********
* swing *
*********/
@-webkit-keyframes swing { 
  20%, 40%, 60%, 80%, 100% {
    -webkit-transform-origin: top center;
  } 
  20% {
    -webkit-transform: rotate(15deg);
  } 
  40% {
    -webkit-transform: rotate(-10deg);
  } 
  60% {
    -webkit-transform: rotate(5deg);
  } 
  80% {
    -webkit-transform: rotate(-5deg);
  } 
  100% {
    -webkit-transform: rotate(0deg);
  } 
} 

@keyframes swing { 
  20% {
    transform: rotate(15deg);
  } 
  40% {
    transform: rotate(-10deg);
  } 
  60% {
    transform: rotate(5deg);
  } 
  80% {
    transform: rotate(-5deg);
  } 
  100% {
    transform: rotate(0deg);
  } 
} 

.swing.go { 
  -webkit-transform-origin: top center; 
  transform-origin: top center; 
  -webkit-animation-name: swing; 
  animation-name: swing; 
}

/*******
* tada *
********/
@-webkit-keyframes tada { 
  0% {
    -webkit-transform: scale(1);
  } 
  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
  } 
  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
  } 
  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
  } 
  100% {
    -webkit-transform: scale(1) rotate(0);
  } 
} 

@keyframes tada { 
  0% {
    transform: scale(1);
  } 
  10%, 20% {
    transform: scale(0.9) rotate(-3deg);
  } 
  30%, 50%, 70%, 90% {
    transform: scale(1.1) rotate(3deg);
  } 
  40%, 60%, 80% {
    transform: scale(1.1) rotate(-3deg);
  } 
  100% {
    transform: scale(1) rotate(0);
  } 
} 

.tada.go { 
  -webkit-animation-name: tada; 
  animation-name: tada; 
}

/*********
* wobble *
**********/
@-webkit-keyframes wobble { 
  0% { 
    -webkit-transform: translateX(0%); 
  } 
  15% { 
    -webkit-transform: translateX(-25%) rotate(-5deg); 
  } 
  30% { 
    -webkit-transform: translateX(20%) rotate(3deg); 
  } 
  45% { 
    -webkit-transform: translateX(-15%) rotate(-3deg); 
  } 
  60% { 
    -webkit-transform: translateX(10%) rotate(2deg); 
  } 
  75% { 
    -webkit-transform: translateX(-5%) rotate(-1deg); 
  } 
  100% { 
    -webkit-transform: translateX(0%); 
  } 
} 

@keyframes wobble { 
  0% { 
    transform: translateX(0%); 
  } 
  15% { 
    transform: translateX(-25%) rotate(-5deg); 
  } 
  30% { 
    transform: translateX(20%) rotate(3deg); 
  } 
  45% { 
    transform: translateX(-15%) rotate(-3deg); 
  } 
  60% { 
    transform: translateX(10%) rotate(2deg); 
  } 
  75% { 
    transform: translateX(-5%) rotate(-1deg); 
  } 
  100% { 
    transform: translateX(0%); 
  } 
} 

.wobble.go { 
  -webkit-animation-name: wobble; 
  animation-name: wobble; 
}

/********
* pulse *
*********/
@-webkit-keyframes pulse { 
  0% { 
    -webkit-transform: scale(1); 
  } 
  50% { 
    -webkit-transform: scale(1.1); 
  } 
  100% { 
    -webkit-transform: scale(1); 
  } 
} 

@keyframes pulse { 
  0% { 
    transform: scale(1); 
  } 
  50% { 
    transform: scale(1.1); 
  } 
  100% { 
    transform: scale(1); 
  } 
} 

.pulse.go { 
  -webkit-animation-name: pulse; 
  animation-name: pulse; 
}

/***************
* lightSpeedInRight *
****************/
@-webkit-keyframes lightSpeedInRight { 
  0% { 
    -webkit-transform: translateX(100%) skewX(-30deg); 
    opacity: 0; 
  } 
  60% { 
    -webkit-transform: translateX(-20%) skewX(30deg); 
    opacity: 1; 
  } 
  80% { 
    -webkit-transform: translateX(0%) skewX(-15deg); 
    opacity: 1; 
  } 
  100% { 
    -webkit-transform: translateX(0%) skewX(0deg); 
    opacity: 1; 
  } 
} 

@keyframes lightSpeedInRight { 
  0% { 
    transform: translateX(100%) skewX(-30deg); 
    opacity: 0; 
  } 
  60% { 
    transform: translateX(-20%) skewX(30deg); 
    opacity: 1; 
  } 
  80% { 
    transform: translateX(0%) skewX(-15deg); 
    opacity: 1; 
  } 
  100% { 
    transform: translateX(0%) skewX(0deg); 
    opacity: 1; 
  } 
} 

.lightSpeedInRight.go { 
  -webkit-animation-name: lightSpeedInRight; 
  animation-name: lightSpeedInRight; 
  -webkit-animation-timing-function: ease-out; 
  animation-timing-function: ease-out; 
} 

/***************
* lightSpeedInLeft *
****************/
@-webkit-keyframes lightSpeedInLeft { 
  0% { 
    -webkit-transform: translateX(-100%) skewX(30deg); 
    opacity: 0; 
  } 
  60% { 
    -webkit-transform: translateX(20%) skewX(-30deg); 
    opacity: 1; 
  } 
  80% { 
    -webkit-transform: translateX(0%) skewX(15deg); 
    opacity: 1; 
  } 
  100% { 
    -webkit-transform: translateX(0%) skewX(0deg); 
    opacity: 1; 
  } 
} 

@keyframes lightSpeedInLeft { 
  0% { 
    transform: translateX(-100%) skewX(30deg); 
    opacity: 0; 
  } 
  60% { 
    transform: translateX(20%) skewX(-30deg); 
    opacity: 1; 
  } 
  80% { 
    transform: translateX(0%) skewX(15deg); 
    opacity: 1; 
  } 
  100% { 
    transform: translateX(0%) skewX(0deg); 
    opacity: 1; 
  } 
} 

.lightSpeedInLeft.go { 
  -webkit-animation-name: lightSpeedInLeft; 
  animation-name: lightSpeedInLeft; 
  -webkit-animation-timing-function: ease-out; 
  animation-timing-function: ease-out; 
} 

/*******
* Flip *
*******/
@-webkit-keyframes flip { 
  0% { 
    -webkit-transform: perspective(400px) rotateY(0); 
    -webkit-animation-timing-function: ease-out; 
  } 
  40% { 
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg); 
    -webkit-animation-timing-function: ease-out; 
  } 
  50% { 
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1); 
    -webkit-animation-timing-function: ease-in; 
  } 
  80% { 
    -webkit-transform: perspective(400px) rotateY(360deg) scale(.95); 
    -webkit-animation-timing-function: ease-in; 
  } 
  100% { 
    -webkit-transform: perspective(400px) scale(1); 
    -webkit-animation-timing-function: ease-in; 
  } 
}

@keyframes flip { 
  0% { 
    transform: perspective(400px) rotateY(0); 
    animation-timing-function: ease-out; 
  } 
  40% { 
    transform: perspective(400px) translateZ(150px) rotateY(170deg); 
    animation-timing-function: ease-out; 
  } 
  50% { 
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1); 
    animation-timing-function: ease-in; 
  } 
  80% { 
    transform: perspective(400px) rotateY(360deg) scale(.95); 
    animation-timing-function: ease-in; 
  } 
  100% { 
    transform: perspective(400px) scale(1); 
    animation-timing-function: ease-in; 
  } 
} 

.flip.go { 
  -webkit-backface-visibility: visible !important; 
  -webkit-animation-name: flip; 
  backface-visibility: visible !important; 
  animation-name: flip; 
}

/**********
* flipInX *
**********/
@-webkit-keyframes flipInX { 
  0% { 
    -webkit-transform: perspective(400px) rotateX(90deg); 
    opacity: 0; 
  } 
  40% { 
    -webkit-transform: perspective(400px) rotateX(-10deg); 
  } 
  70% { 
    -webkit-transform: perspective(400px) rotateX(10deg); 
  } 
  100% { 
    -webkit-transform: perspective(400px) rotateX(0deg); 
    opacity: 1; 
  } 
} 

@keyframes flipInX { 
  0% { 
    transform: perspective(400px) rotateX(90deg); 
    opacity: 0; 
  } 
  40% { 
    transform: perspective(400px) rotateX(-10deg); 
  } 
  70% { 
    transform: perspective(400px) rotateX(10deg); 
  } 
  100% { 
    transform: perspective(400px) rotateX(0deg); 
    opacity: 1; 
  } 
} 

.flipInX.go { 
  -webkit-backface-visibility: visible !important; 
  -webkit-animation-name: flipInX; 
  backface-visibility: visible !important; 
  animation-name: flipInX; 
}

/**********
* flipInY *
**********/
@-webkit-keyframes flipInY { 
  0% { 
    -webkit-transform: perspective(400px) rotateY(90deg); 
    opacity: 0; 
  } 
  40% { 
    -webkit-transform: perspective(400px) rotateY(-10deg); 
  } 
  70% { 
    -webkit-transform: perspective(400px) rotateY(10deg); 
  } 
  100% { 
    -webkit-transform: perspective(400px) rotateY(0deg); 
    opacity: 1; 
  } 
} 

@keyframes flipInY { 
  0% { 
    transform: perspective(400px) rotateY(90deg); 
    opacity: 0; 
  } 
  40% { 
    transform: perspective(400px) rotateY(-10deg); 
  } 
  70% { 
    transform: perspective(400px) rotateY(10deg); 
  } 
  100% { 
    transform: perspective(400px) rotateY(0deg); 
    opacity: 1; 
  } 
} 

.flipInY.go { 
  -webkit-backface-visibility: visible !important; 
  -webkit-animation-name: flipInY; 
  backface-visibility: visible !important; 
  animation-name: flipInY; 
}

/*****************
* Out animations *
*****************/
/************
* bounceOut *
*************/
@-webkit-keyframes bounceOut { 
  0% { 
    -webkit-transform: scale(1); 
  } 
  25% { 
    -webkit-transform: scale(.95); 
  } 
  50% { 
    opacity: 1; 
    -webkit-transform: scale(1.1); 
  } 
  100% { 
    opacity: 0; 
    -webkit-transform: scale(.3); 
  } 
} 

@keyframes bounceOut { 
  0% { 
    transform: scale(1); 
  } 
  25% { 
    transform: scale(.95); 
  } 
  50% { 
    opacity: 1; 
    transform: scale(1.1); 
  } 
  100% { 
    opacity: 0; 
    transform: scale(.3); 
  } 
} 

.bounceOut.goAway { 
  -webkit-animation-name: bounceOut; 
  animation-name: bounceOut; 
}

/************
* bounceOutUp *
*************/
@-webkit-keyframes bounceOutUp { 
  0% { 
    -webkit-transform: translateY(0); 
  } 
  20% { 
    opacity: 1; 
    -webkit-transform: translateY(20px); 
  } 
  100% { 
    opacity: 0; 
    -webkit-transform: translateY(-2000px); 
  } 
} 

@keyframes bounceOutUp { 
  0% { 
    transform: translateY(0); 
  } 
  20% { 
    opacity: 1; 
    transform: translateY(20px); 
  } 
  100% { 
    opacity: 0; 
    transform: translateY(-2000px); 
  } 
} 

.bounceOutUp.goAway { 
  -webkit-animation-name: bounceOutUp; 
  animation-name: bounceOutUp; 
}

/************
* bounceOutDown *
*************/
@-webkit-keyframes bounceOutDown { 
  0% { 
    -webkit-transform: translateY(0); 
  } 
  20% { 
    opacity: 1; 
    -webkit-transform: translateY(-20px); 
  } 
  100% { 
    opacity: 0; 
    -webkit-transform: translateY(2000px); 
  } 
} 

@keyframes bounceOutDown { 
  0% { 
    transform: translateY(0); 
  } 
  20% { 
    opacity: 1; 
    transform: translateY(-20px); 
  } 
  100% { 
    opacity: 0; 
    transform: translateY(2000px); 
  } 
} 

.bounceOutDown.goAway { 
  -webkit-animation-name: bounceOutDown; 
  animation-name: bounceOutDown; 
}

/************
* bounceOutLeft *
*************/
@-webkit-keyframes bounceOutLeft { 
  0% { 
    -webkit-transform: translateX(0); 
  } 
  20% { 
    opacity: 1; 
    -webkit-transform: translateX(20px); 
  } 
  100% { 
    opacity: 0; 
    -webkit-transform: translateX(-2000px); 
  } 
} 

@keyframes bounceOutLeft { 
  0% { 
    transform: translateX(0); 
  } 
  20% { 
    opacity: 1; 
    transform: translateX(20px); 
  } 
  100% { 
    opacity: 0; 
    transform: translateX(-2000px); 
  } 
} 

.bounceOutLeft.goAway { 
  -webkit-animation-name: bounceOutLeft; 
  animation-name: bounceOutLeft; 
}

/************
* bounceOutRight *
*************/
@-webkit-keyframes bounceOutRight { 
  0% { 
    -webkit-transform: translateX(0); 
  } 
  20% { 
    opacity: 1; 
    -webkit-transform: translateX(-20px); 
  } 
  100% { 
    opacity: 0; 
    -webkit-transform: translateX(2000px); 
  } 
} 

@keyframes bounceOutRight { 
  0% { 
    transform: translateX(0); 
  } 
  20% { 
    opacity: 1; 
    transform: translateX(-20px); 
  } 
  100% { 
    opacity: 0; 
    transform: translateX(2000px); 
  } 
} 

.bounceOutRight.goAway { 
  -webkit-animation-name: bounceOutRight; 
  animation-name: bounceOutRight; 
}

/************
* fadeOut *
*************/
@-webkit-keyframes fadeOut { 
  0% {
    opacity: 1;
  } 
  100% {
    opacity: 0;
  } 
} 

@keyframes fadeOut { 
  0% {
    opacity: 1;
  } 
  100% {
    opacity: 0;
  } 
} 

.fadeOut.goAway { 
  -webkit-animation-name: fadeOut; 
  animation-name: fadeOut; 
}

/************
* fadeOutUp *
*************/
@-webkit-keyframes fadeOutUp { 
  0% { 
    opacity: 1; 
    -webkit-transform: translateY(0); 
  } 
  100% { 
    opacity: 0; 
    -webkit-transform: translateY(-2000px); 
  } 
} 

@keyframes fadeOutUp { 
  0% { 
    opacity: 1; 
    transform: translateY(0); 
  } 
  100% { 
    opacity: 0; 
    transform: translateY(-2000px); 
  } 
} 

.fadeOutUp.goAway { 
  -webkit-animation-name: fadeOutUp; 
  animation-name: fadeOutUp; 
}

/************
* fadeOutDown *
*************/
@-webkit-keyframes fadeOutDown { 
  0% { 
    opacity: 1; 
    -webkit-transform: translateY(0); 
  } 
  100% { 
    opacity: 0; 
    -webkit-transform: translateY(2000px); 
  } 
} 

@keyframes fadeOutDown { 
  0% { 
    opacity: 1; 
    transform: translateY(0); 
  } 
  100% { 
    opacity: 0; 
    transform: translateY(2000px); 
  } 
} 

.fadeOutDown.goAway { 
  -webkit-animation-name: fadeOutDown; 
  animation-name: fadeOutDown; 
}

/************
* fadeOutLeft *
*************/
@-webkit-keyframes fadeOutLeft { 
  0% { 
    opacity: 1; 
    -webkit-transform: translateX(0); 
  } 
  100% { 
    opacity: 0; 
    -webkit-transform: translateX(-2000px); 
  } 
} 

@keyframes fadeOutLeft { 
  0% { 
    opacity: 1; 
    transform: translateX(0); 
  } 
  100% { 
    opacity: 0; 
    transform: translateX(-2000px); 
  } 
} 

.fadeOutLeft.goAway { 
  -webkit-animation-name: fadeOutLeft; 
  animation-name: fadeOutLeft; 
}

/************
* fadeOutRight *
*************/
@-webkit-keyframes fadeOutRight { 
  0% { 
    opacity: 1; 
    -webkit-transform: translateX(0); 
  } 
  100% { 
    opacity: 0; 
    -webkit-transform: translateX(2000px); 
  } 
} 

@keyframes fadeOutRight { 
  0% { 
    opacity: 1; 
    transform: translateX(0); 
  } 
  100% { 
    opacity: 0; 
    transform: translateX(2000px); 
  } 
} 

.fadeOutRight.goAway { 
  -webkit-animation-name: fadeOutRight; 
  animation-name: fadeOutRight; 
}

/************
* flipOutX *
*************/
@-webkit-keyframes flipOutX { 
  0% { 
    -webkit-transform: perspective(400px) rotateX(0deg); 
    opacity: 1; 
  } 
  100% { 
    -webkit-transform: perspective(400px) rotateX(90deg); 
    opacity: 0; 
  } 
} 

@keyframes flipOutX { 
  0% { 
    transform: perspective(400px) rotateX(0deg); 
    opacity: 1; 
  } 
  100% { 
    transform: perspective(400px) rotateX(90deg); 
    opacity: 0; 
  } 
} 

.flipOutX.goAway { 
  -webkit-animation-name: flipOutX; 
  -webkit-backface-visibility: visible !important; 
  animation-name: flipOutX; 
  backface-visibility: visible !important; 
}

/************
* flipOutY *
*************/
@-webkit-keyframes flipOutY { 
  0% { 
    -webkit-transform: perspective(400px) rotateY(0deg); 
    opacity: 1; 
  } 
  100% { 
    -webkit-transform: perspective(400px) rotateY(90deg); 
    opacity: 0; 
  } 
} 

@keyframes flipOutY { 
  0% { 
    transform: perspective(400px) rotateY(0deg); 
    opacity: 1; 
  } 
  100% { 
    transform: perspective(400px) rotateY(90deg); 
    opacity: 0; 
  } 
} 

.flipOutY { 
  -webkit-backface-visibility: visible !important; 
  -webkit-animation-name: flipOutY; 
  backface-visibility: visible !important; 
  animation-name: flipOutY; 
}

/************
* lightSpeedOutRight *
*************/
@-webkit-keyframes lightSpeedOutRight { 
  0% { 
    -webkit-transform: translateX(0%) skewX(0deg); 
    opacity: 1; 
  } 
  100% { 
    -webkit-transform: translateX(100%) skewX(-30deg); 
    opacity: 0; 
  } 
} 

@keyframes lightSpeedOutRight { 
  0% { 
    transform: translateX(0%) skewX(0deg); 
    opacity: 1; 
  } 
  100% { 
    transform: translateX(100%) skewX(-30deg); 
    opacity: 0; 
  } 
} 

.lightSpeedOutRight.goAway { 
  -webkit-animation-name: lightSpeedOutRight; 
  animation-name: lightSpeedOutRight; 
  -webkit-animation-timing-function: ease-in; 
  animation-timing-function: ease-in; 
} 

/************
* lightSpeedOutLeft *
*************/
@-webkit-keyframes lightSpeedOutLeft { 
  0% { 
    -webkit-transform: translateX(0%) skewX(0deg); 
    opacity: 1; 
  } 
  100% { 
    -webkit-transform: translateX(-100%) skewX(30deg); 
    opacity: 0; 
  } 
} 

@keyframes lightSpeedOutLeft { 
  0% { 
    transform: translateX(0%) skewX(0deg); 
    opacity: 1; 
  } 
  100% { 
    transform: translateX(-100%) skewX(30deg); 
    opacity: 0; 
  } 
} 

.lightSpeedOutLeft.goAway { 
  -webkit-animation-name: lightSpeedOutLeft; 
  animation-name: lightSpeedOutLeft; 
  -webkit-animation-timing-function: ease-in; 
  animation-timing-function: ease-in; 
} 

/************
* rotateOut *
*************/
@-webkit-keyframes rotateOut { 
  0% { 
    -webkit-transform-origin: center center; 
    -webkit-transform: rotate(0); 
    opacity: 1; 
  } 
  100% { 
    -webkit-transform-origin: center center; 
    -webkit-transform: rotate(200deg); 
    opacity: 0; 
  } 
} 

@keyframes rotateOut { 
  0% { 
    transform-origin: center center; 
    transform: rotate(0); 
    opacity: 1; 
  } 
  100% { 
    transform-origin: center center; 
    transform: rotate(200deg); 
    opacity: 0; 
  } 
} 

.rotateOut.goAway { 
  -webkit-animation-name: rotateOut; 
  animation-name: rotateOut; 
}

/************
* rotateOutUpLeft *
*************/
@-webkit-keyframes rotateOutUpLeft { 
  0% { 
    -webkit-transform-origin: left bottom; 
    -webkit-transform: rotate(0); 
    opacity: 1; 
  } 
  100% { 
    -webkit-transform-origin: left bottom; 
    -webkit-transform: rotate(-90deg); 
    opacity: 0; 
  } 
} 

@keyframes rotateOutUpLeft { 
  0% { 
    transform-origin: left bottom; 
    transform: rotate(0); 
    opacity: 1; 
  } 
  100% { 
    -transform-origin: left bottom; 
    -transform: rotate(-90deg); 
    opacity: 0; 
  } 
} 

.rotateOutUpLeft.goAway { 
  -webkit-animation-name: rotateOutUpLeft; 
  animation-name: rotateOutUpLeft; 
}

/************
* rotateOutDownLeft *
*************/
@-webkit-keyframes rotateOutDownLeft { 
  0% { 
    -webkit-transform-origin: left bottom; 
    -webkit-transform: rotate(0); 
    opacity: 1; 
  } 
  100% { 
    -webkit-transform-origin: left bottom; 
    -webkit-transform: rotate(90deg); 
    opacity: 0; 
  } 
} 

@keyframes rotateOutDownLeft { 
  0% { 
    transform-origin: left bottom; 
    transform: rotate(0); 
    opacity: 1; 
  } 
  100% { 
    transform-origin: left bottom; 
    transform: rotate(90deg); 
    opacity: 0; 
  } 
} 

.rotateOutDownLeft.goAway { 
  -webkit-animation-name: rotateOutDownLeft; 
  animation-name: rotateOutDownLeft; 
}

/************
* rotateOutUpRight *
*************/
@-webkit-keyframes rotateOutUpRight { 
  0% { 
    -webkit-transform-origin: right bottom; 
    -webkit-transform: rotate(0); 
    opacity: 1; 
  } 
  100% { 
    -webkit-transform-origin: right bottom; 
    -webkit-transform: rotate(90deg); 
    opacity: 0; 
  } 
} 

@keyframes rotateOutUpRight { 
  0% { 
    transform-origin: right bottom; 
    transform: rotate(0); 
    opacity: 1; 
  } 
  100% { 
    transform-origin: right bottom; 
    transform: rotate(90deg); 
    opacity: 0; 
  } 
} 

.rotateOutUpRight.goAway { 
  -webkit-animation-name: rotateOutUpRight; 
  animation-name: rotateOutUpRight; 
}

/************
* rollOut *
*************/
@-webkit-keyframes rollOut { 
  0% { 
    opacity: 1; 
    -webkit-transform: translateX(0px) rotate(0deg); 
  } 
  100% { 
    opacity: 0; 
    -webkit-transform: translateX(100%) rotate(120deg); 
  } 
} 

@keyframes rollOut { 
  0% { 
    opacity: 1; 
    transform: translateX(0px) rotate(0deg); 
  } 
  100% { 
    opacity: 0; 
    transform: translateX(100%) rotate(120deg); 
  } 
} 

.rollOut.goAway { 
  -webkit-animation-name: rollOut; 
  animation-name: rollOut; 
}

/*****************
* Short Animations
*******************/
/*********************
* fadeInUpShort
*********************/
@-webkit-keyframes fadeInUpShort { 
  0% { 
    opacity: 0; 
    -webkit-transform: translateY(20px); 
  } 
  100% { 
    opacity: 1; 
    -webkit-transform: translateY(0); 
  } 
} 

@keyframes fadeInUpShort { 
  0% { 
    opacity: 0; 
    transform: translateY(20px); 
  } 
  100% { 
    opacity: 1; 
    transform: translateY(0); 
  } 
} 

.fadeInUpShort {
  opacity: 0; 
  -webkit-transform: translateY(20px); 
  transform: translateY(20px); 
}

.fadeInUpShort.go { 
  -webkit-animation-name: fadeInUpShort; 
  animation-name: fadeInUpShort; 
}

/*********************
* fadeInDownShort
*********************/
@-webkit-keyframes fadeInDownShort { 
  0% { 
    opacity: 0; 
    -webkit-transform: translateY(-20px); 
  } 
  100% { 
    opacity: 1; 
    -webkit-transform: translateY(0); 
  } 
} 

@keyframes fadeInDownShort { 
  0% { 
    opacity: 0; 
    transform: translateY(-20px); 
  } 
  100% { 
    opacity: 1; 
    transform: translateY(0); 
  } 
} 

.fadeInDownShort {
  opacity: 0; 
  -webkit-transform: translateY(-20px); 
  transform: translateY(-20px); 
}

.fadeInDownShort.go { 
  -webkit-animation-name: fadeInDownShort; 
  animation-name: fadeInDownShort; 
}

/*********************
* fadeInRightShort 
*********************/
@-webkit-keyframes fadeInRightShort { 
  0% { 
    opacity: 0; 
    -webkit-transform: translateX(20px); 
  } 
  100% { 
    opacity: 1; 
    -webkit-transform: translateX(0); 
  } 
} 

@keyframes fadeInRightShort { 
  0% { 
    opacity: 0; 
    transform: translateX(20px); 
  } 
  100% { 
    opacity: 1; 
    transform: translateX(0); 
  } 
} 

.fadeInRightShort { 
  opacity: 0; 
  -webkit-transform: translateX(20px);  
  transform: translateX(20px); 
}

.fadeInRightShort.go { 
  -webkit-animation-name: fadeInRightShort; 
  animation-name: fadeInRightShort; 
}

/*********************
* fadeInLeftShort 
*********************/
@-webkit-keyframes fadeInLeftShort { 
  0% { 
    opacity: 0; 
    -webkit-transform: translateX(-20px); 
  } 
  100% { 
    opacity: 1; 
    -webkit-transform: translateX(0); 
  } 
} 

@keyframes fadeInLeftShort { 
  0% { 
    opacity: 0; 
    transform: translateX(-20px); 
  } 
  100% { 
    opacity: 1; 
    transform: translateX(0); 
  } 
} 

.fadeInLeftShort { 
  opacity: 0; 
  -webkit-transform: translateX(-20px);  
  transform: translateX(-20px); 
}

.fadeInLeftShort.go { 
  -webkit-animation-name: fadeInLeftShort; 
  animation-name: fadeInLeftShort; 
}

.purupuru2 {
  animation: bound-anim 0.8s infinite;
  width: 85%;
  margin: 0px auto;
}

@keyframes bound-anim {
  0%, 100% {
    top: 0;
    transform: scale(1);
  }
  30% {
    top: -25%;
  }
  50% {
    transform: scale(1);
  }
  90% {
    top: 0;
    transform: scale(1.1, 0.8);
  }
}
