@charset "UTF-8";

/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license - http://opensource.org/licenses/MIT

Copyright (c) 2015 Daniel Eden
*/

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

.animated.infinite{
  -webkit-animation-iteration-count:infinite;
  animation-iteration-count:infinite;
}

.animated.hinge{
  -webkit-animation-duration:2s;
  animation-duration:2s;
}


@-webkit-keyframes bounce{
  0%, 20%, 53%, 80%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    -webkit-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
  }

  40%, 43%{
    -webkit-transition-timing-function:cubic-bezier(0.755, 0.050, 0.855, 0.060);
    transition-timing-function:cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform:translate3d(0, -30px, 0);
    transform:translate3d(0, -30px, 0);
  }

  70%{
    -webkit-transition-timing-function:cubic-bezier(0.755, 0.050, 0.855, 0.060);
    transition-timing-function:cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform:translate3d(0, -15px, 0);
    transform:translate3d(0, -15px, 0);
  }

  90%{
    -webkit-transform:translate3d(0,-4px,0);
    transform:translate3d(0,-4px,0);
  }
}

@keyframes bounce{
  0%, 20%, 53%, 80%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    -webkit-transform:translate3d(0,0,0);
    -ms-transform:translate3d(0,0,0);
    transform:translate3d(0,0,0);
  }

  40%, 43%{
    -webkit-transition-timing-function:cubic-bezier(0.755, 0.050, 0.855, 0.060);
    transition-timing-function:cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform:translate3d(0, -30px, 0);
    -ms-transform:translate3d(0, -30px, 0);
    transform:translate3d(0, -30px, 0);
  }

  70%{
    -webkit-transition-timing-function:cubic-bezier(0.755, 0.050, 0.855, 0.060);
    transition-timing-function:cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform:translate3d(0, -15px, 0);
    -ms-transform:translate3d(0, -15px, 0);
    transform:translate3d(0, -15px, 0);
  }

  90%{
    -webkit-transform:translate3d(0,-4px,0);
    -ms-transform:translate3d(0,-4px,0);
    transform:translate3d(0,-4px,0);
  }
}

.bounce{
  -webkit-animation-name:bounce;
  animation-name:bounce;
  -webkit-transform-origin:center bottom;
  -ms-transform-origin:center bottom;
  transform-origin:center bottom;
}

@-webkit-keyframes flash{
  0%, 50%, 100%{
    opacity:1;
  }

  25%, 75%{
    opacity:0;
  }
}

@keyframes flash{
  0%, 50%, 100%{
    opacity:1;
  }

  25%, 75%{
    opacity:0;
  }
}

.flash{
  -webkit-animation-name:flash;
  animation-name:flash;
}


@-webkit-keyframes imgFlsh{
	0%{opacity:.4;}
	100%{opacity:1;}
}
@keyframes imgFlsh{
	0%{opacity:.4;}
	100%{opacity:1;}
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes pulse{
  0%{
    -webkit-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }

  50%{
    -webkit-transform:scale3d(1.05, 1.05, 1.05);
    transform:scale3d(1.05, 1.05, 1.05);
  }

  100%{
    -webkit-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }
}

@keyframes pulse{
  0%{
    -webkit-transform:scale3d(1, 1, 1);
    -ms-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }

  50%{
    -webkit-transform:scale3d(1.05, 1.05, 1.05);
    -ms-transform:scale3d(1.05, 1.05, 1.05);
    transform:scale3d(1.05, 1.05, 1.05);
  }

  100%{
    -webkit-transform:scale3d(1, 1, 1);
    -ms-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }
}

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

@-webkit-keyframes rubberBand{
  0%{
    -webkit-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }

  30%{
    -webkit-transform:scale3d(1.25, 0.75, 1);
    transform:scale3d(1.25, 0.75, 1);
  }

  40%{
    -webkit-transform:scale3d(0.75, 1.25, 1);
    transform:scale3d(0.75, 1.25, 1);
  }

  50%{
    -webkit-transform:scale3d(1.15, 0.85, 1);
    transform:scale3d(1.15, 0.85, 1);
  }

  65%{
    -webkit-transform:scale3d(.95, 1.05, 1);
    transform:scale3d(.95, 1.05, 1);
  }

  75%{
    -webkit-transform:scale3d(1.05, .95, 1);
    transform:scale3d(1.05, .95, 1);
  }

  100%{
    -webkit-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }
}

@keyframes rubberBand{
  0%{
    -webkit-transform:scale3d(1, 1, 1);
    -ms-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }

  30%{
    -webkit-transform:scale3d(1.25, 0.75, 1);
    -ms-transform:scale3d(1.25, 0.75, 1);
    transform:scale3d(1.25, 0.75, 1);
  }

  40%{
    -webkit-transform:scale3d(0.75, 1.25, 1);
    -ms-transform:scale3d(0.75, 1.25, 1);
    transform:scale3d(0.75, 1.25, 1);
  }

  50%{
    -webkit-transform:scale3d(1.15, 0.85, 1);
    -ms-transform:scale3d(1.15, 0.85, 1);
    transform:scale3d(1.15, 0.85, 1);
  }

  65%{
    -webkit-transform:scale3d(.95, 1.05, 1);
    -ms-transform:scale3d(.95, 1.05, 1);
    transform:scale3d(.95, 1.05, 1);
  }

  75%{
    -webkit-transform:scale3d(1.05, .95, 1);
    -ms-transform:scale3d(1.05, .95, 1);
    transform:scale3d(1.05, .95, 1);
  }

  100%{
    -webkit-transform:scale3d(1, 1, 1);
    -ms-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }
}

.rubberBand{
  -webkit-animation-name:rubberBand;
  animation-name:rubberBand;
}

@-webkit-keyframes shake{
  0%, 100%{
    -webkit-transform:translate3d(0, 0, 0);
    transform:translate3d(0, 0, 0);
  }

  10%, 30%, 50%, 70%, 90%{
    -webkit-transform:translate3d(-10px, 0, 0);
    transform:translate3d(-10px, 0, 0);
  }

  20%, 40%, 60%, 80%{
    -webkit-transform:translate3d(10px, 0, 0);
    transform:translate3d(10px, 0, 0);
  }
}

@keyframes shake{
  0%, 100%{
    -webkit-transform:translate3d(0, 0, 0);
    -ms-transform:translate3d(0, 0, 0);
    transform:translate3d(0, 0, 0);
  }

  10%, 30%, 50%, 70%, 90%{
    -webkit-transform:translate3d(-10px, 0, 0);
    -ms-transform:translate3d(-10px, 0, 0);
    transform:translate3d(-10px, 0, 0);
  }

  20%, 40%, 60%, 80%{
    -webkit-transform:translate3d(10px, 0, 0);
    -ms-transform:translate3d(10px, 0, 0);
    transform:translate3d(10px, 0, 0);
  }
}

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

@-webkit-keyframes swing{
  20%{
    -webkit-transform:rotate3d(0, 0, 1, 15deg);
    transform:rotate3d(0, 0, 1, 15deg);
  }

  40%{
    -webkit-transform:rotate3d(0, 0, 1, -10deg);
    transform:rotate3d(0, 0, 1, -10deg);
  }

  60%{
    -webkit-transform:rotate3d(0, 0, 1, 5deg);
    transform:rotate3d(0, 0, 1, 5deg);
  }

  80%{
    -webkit-transform:rotate3d(0, 0, 1, -5deg);
    transform:rotate3d(0, 0, 1, -5deg);
  }

  100%{
    -webkit-transform:rotate3d(0, 0, 1, 0deg);
    transform:rotate3d(0, 0, 1, 0deg);
  }
}

@keyframes swing{
  20%{
    -webkit-transform:rotate3d(0, 0, 1, 15deg);
    -ms-transform:rotate3d(0, 0, 1, 15deg);
    transform:rotate3d(0, 0, 1, 15deg);
  }

  40%{
    -webkit-transform:rotate3d(0, 0, 1, -10deg);
    -ms-transform:rotate3d(0, 0, 1, -10deg);
    transform:rotate3d(0, 0, 1, -10deg);
  }

  60%{
    -webkit-transform:rotate3d(0, 0, 1, 5deg);
    -ms-transform:rotate3d(0, 0, 1, 5deg);
    transform:rotate3d(0, 0, 1, 5deg);
  }

  80%{
    -webkit-transform:rotate3d(0, 0, 1, -5deg);
    -ms-transform:rotate3d(0, 0, 1, -5deg);
    transform:rotate3d(0, 0, 1, -5deg);
  }

  100%{
    -webkit-transform:rotate3d(0, 0, 1, 0deg);
    -ms-transform:rotate3d(0, 0, 1, 0deg);
    transform:rotate3d(0, 0, 1, 0deg);
  }
}

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

@-webkit-keyframes tada{
  0%{
    -webkit-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }

  10%, 20%{
    -webkit-transform:scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    transform:scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
  }

  30%, 50%, 70%, 90%{
    -webkit-transform:scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform:scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%, 60%, 80%{
    -webkit-transform:scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform:scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  100%{
    -webkit-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }
}

@keyframes tada{
  0%{
    -webkit-transform:scale3d(1, 1, 1);
    -ms-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }

  10%, 20%{
    -webkit-transform:scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    -ms-transform:scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    transform:scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
  }

  30%, 50%, 70%, 90%{
    -webkit-transform:scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    -ms-transform:scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform:scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%, 60%, 80%{
    -webkit-transform:scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    -ms-transform:scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform:scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  100%{
    -webkit-transform:scale3d(1, 1, 1);
    -ms-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }
}

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

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble{
  0%{
    -webkit-transform:none;
    transform:none;
  }

  15%{
    -webkit-transform:translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform:translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30%{
    -webkit-transform:translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform:translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45%{
    -webkit-transform:translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform:translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60%{
    -webkit-transform:translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform:translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75%{
    -webkit-transform:translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform:translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  100%{
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes wobble{
  0%{
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }

  15%{
    -webkit-transform:translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    -ms-transform:translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform:translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30%{
    -webkit-transform:translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    -ms-transform:translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform:translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45%{
    -webkit-transform:translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    -ms-transform:translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform:translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60%{
    -webkit-transform:translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    -ms-transform:translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform:translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75%{
    -webkit-transform:translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    -ms-transform:translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform:translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  100%{
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

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

@-webkit-keyframes bounceIn{
  0%, 20%, 40%, 60%, 80%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0%{
    opacity:0;
    -webkit-transform:scale3d(.3, .3, .3);
    transform:scale3d(.3, .3, .3);
  }

  20%{
    -webkit-transform:scale3d(1.1, 1.1, 1.1);
    transform:scale3d(1.1, 1.1, 1.1);
  }

  40%{
    -webkit-transform:scale3d(.9, .9, .9);
    transform:scale3d(.9, .9, .9);
  }

  60%{
    opacity:1;
    -webkit-transform:scale3d(1.03, 1.03, 1.03);
    transform:scale3d(1.03, 1.03, 1.03);
  }

  80%{
    -webkit-transform:scale3d(.97, .97, .97);
    transform:scale3d(.97, .97, .97);
  }

  100%{
    opacity:1;
    -webkit-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }
}

@keyframes bounceIn{
  0%, 20%, 40%, 60%, 80%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0%{
    opacity:0;
    -webkit-transform:scale3d(.3, .3, .3);
    -ms-transform:scale3d(.3, .3, .3);
    transform:scale3d(.3, .3, .3);
  }

  20%{
    -webkit-transform:scale3d(1.1, 1.1, 1.1);
    -ms-transform:scale3d(1.1, 1.1, 1.1);
    transform:scale3d(1.1, 1.1, 1.1);
  }

  40%{
    -webkit-transform:scale3d(.9, .9, .9);
    -ms-transform:scale3d(.9, .9, .9);
    transform:scale3d(.9, .9, .9);
  }

  60%{
    opacity:1;
    -webkit-transform:scale3d(1.03, 1.03, 1.03);
    -ms-transform:scale3d(1.03, 1.03, 1.03);
    transform:scale3d(1.03, 1.03, 1.03);
  }

  80%{
    -webkit-transform:scale3d(.97, .97, .97);
    -ms-transform:scale3d(.97, .97, .97);
    transform:scale3d(.97, .97, .97);
  }

  100%{
    opacity:1;
    -webkit-transform:scale3d(1, 1, 1);
    -ms-transform:scale3d(1, 1, 1);
    transform:scale3d(1, 1, 1);
  }
}

.bounceIn{
  -webkit-animation-name:bounceIn;
  animation-name:bounceIn;
  -webkit-animation-duration:.75s;
  animation-duration:.75s;
}

@-webkit-keyframes bounceInDown{
  0%, 60%, 75%, 90%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0%{
    opacity:0;
    -webkit-transform:translate3d(0, -3000px, 0);
    transform:translate3d(0, -3000px, 0);
  }

  60%{
    opacity:1;
    -webkit-transform:translate3d(0, 25px, 0);
    transform:translate3d(0, 25px, 0);
  }

  75%{
    -webkit-transform:translate3d(0, -10px, 0);
    transform:translate3d(0, -10px, 0);
  }

  90%{
    -webkit-transform:translate3d(0, 5px, 0);
    transform:translate3d(0, 5px, 0);
  }

  100%{
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes bounceInDown{
  0%, 60%, 75%, 90%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0%{
    opacity:0;
    -webkit-transform:translate3d(0, -3000px, 0);
    -ms-transform:translate3d(0, -3000px, 0);
    transform:translate3d(0, -3000px, 0);
  }

  60%{
    opacity:1;
    -webkit-transform:translate3d(0, 25px, 0);
    -ms-transform:translate3d(0, 25px, 0);
    transform:translate3d(0, 25px, 0);
  }

  75%{
    -webkit-transform:translate3d(0, -10px, 0);
    -ms-transform:translate3d(0, -10px, 0);
    transform:translate3d(0, -10px, 0);
  }

  90%{
    -webkit-transform:translate3d(0, 5px, 0);
    -ms-transform:translate3d(0, 5px, 0);
    transform:translate3d(0, 5px, 0);
  }

  100%{
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

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

@-webkit-keyframes bounceInLft{
  0%, 60%, 75%, 90%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0%{
    opacity:0;
    -webkit-transform:translate3d(-3000px, 0, 0);
    transform:translate3d(-3000px, 0, 0);
  }

  60%{
    opacity:1;
    -webkit-transform:translate3d(25px, 0, 0);
    transform:translate3d(25px, 0, 0);
  }

  75%{
    -webkit-transform:translate3d(-10px, 0, 0);
    transform:translate3d(-10px, 0, 0);
  }

  90%{
    -webkit-transform:translate3d(5px, 0, 0);
    transform:translate3d(5px, 0, 0);
  }

  100%{
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes bounceInLft{
  0%, 60%, 75%, 90%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0%{
    opacity:0;
    -webkit-transform:translate3d(-3000px, 0, 0);
    -ms-transform:translate3d(-3000px, 0, 0);
    transform:translate3d(-3000px, 0, 0);
  }

  60%{
    opacity:1;
    -webkit-transform:translate3d(25px, 0, 0);
    -ms-transform:translate3d(25px, 0, 0);
    transform:translate3d(25px, 0, 0);
  }

  75%{
    -webkit-transform:translate3d(-10px, 0, 0);
    -ms-transform:translate3d(-10px, 0, 0);
    transform:translate3d(-10px, 0, 0);
  }

  90%{
    -webkit-transform:translate3d(5px, 0, 0);
    -ms-transform:translate3d(5px, 0, 0);
    transform:translate3d(5px, 0, 0);
  }

  100%{
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

.bounceInLft{
  -webkit-animation-name:bounceInLft;
  animation-name:bounceInLft;
}

@-webkit-keyframes bounceInRight{
  0%, 60%, 75%, 90%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0%{
    opacity:0;
    -webkit-transform:translate3d(3000px, 0, 0);
    transform:translate3d(3000px, 0, 0);
  }

  60%{
    opacity:1;
    -webkit-transform:translate3d(-25px, 0, 0);
    transform:translate3d(-25px, 0, 0);
  }

  75%{
    -webkit-transform:translate3d(10px, 0, 0);
    transform:translate3d(10px, 0, 0);
  }

  90%{
    -webkit-transform:translate3d(-5px, 0, 0);
    transform:translate3d(-5px, 0, 0);
  }

  100%{
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes bounceInRight{
  0%, 60%, 75%, 90%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0%{
    opacity:0;
    -webkit-transform:translate3d(3000px, 0, 0);
    -ms-transform:translate3d(3000px, 0, 0);
    transform:translate3d(3000px, 0, 0);
  }

  60%{
    opacity:1;
    -webkit-transform:translate3d(-25px, 0, 0);
    -ms-transform:translate3d(-25px, 0, 0);
    transform:translate3d(-25px, 0, 0);
  }

  75%{
    -webkit-transform:translate3d(10px, 0, 0);
    -ms-transform:translate3d(10px, 0, 0);
    transform:translate3d(10px, 0, 0);
  }

  90%{
    -webkit-transform:translate3d(-5px, 0, 0);
    -ms-transform:translate3d(-5px, 0, 0);
    transform:translate3d(-5px, 0, 0);
  }

  100%{
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

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

@-webkit-keyframes bounceInUp{
  0%, 60%, 75%, 90%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0%{
    opacity:0;
    -webkit-transform:translate3d(0, 3000px, 0);
    transform:translate3d(0, 3000px, 0);
  }

  60%{
    opacity:1;
    -webkit-transform:translate3d(0, -20px, 0);
    transform:translate3d(0, -20px, 0);
  }

  75%{
    -webkit-transform:translate3d(0, 10px, 0);
    transform:translate3d(0, 10px, 0);
  }

  90%{
    -webkit-transform:translate3d(0, -5px, 0);
    transform:translate3d(0, -5px, 0);
  }

  100%{
    -webkit-transform:translate3d(0, 0, 0);
    transform:translate3d(0, 0, 0);
  }
}

@keyframes bounceInUp{
  0%, 60%, 75%, 90%, 100%{
    -webkit-transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
    transition-timing-function:cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0%{
    opacity:0;
    -webkit-transform:translate3d(0, 3000px, 0);
    -ms-transform:translate3d(0, 3000px, 0);
    transform:translate3d(0, 3000px, 0);
  }

  60%{
    opacity:1;
    -webkit-transform:translate3d(0, -20px, 0);
    -ms-transform:translate3d(0, -20px, 0);
    transform:translate3d(0, -20px, 0);
  }

  75%{
    -webkit-transform:translate3d(0, 10px, 0);
    -ms-transform:translate3d(0, 10px, 0);
    transform:translate3d(0, 10px, 0);
  }

  90%{
    -webkit-transform:translate3d(0, -5px, 0);
    -ms-transform:translate3d(0, -5px, 0);
    transform:translate3d(0, -5px, 0);
  }

  100%{
    -webkit-transform:translate3d(0, 0, 0);
    -ms-transform:translate3d(0, 0, 0);
    transform:translate3d(0, 0, 0);
  }
}

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

@-webkit-keyframes bounceOut{
  20%{
    -webkit-transform:scale3d(.9, .9, .9);
    transform:scale3d(.9, .9, .9);
  }

  50%, 55%{
    opacity:1;
    -webkit-transform:scale3d(1.1, 1.1, 1.1);
    transform:scale3d(1.1, 1.1, 1.1);
  }

  100%{
    opacity:0;
    -webkit-transform:scale3d(.3, .3, .3);
    transform:scale3d(.3, .3, .3);
  }
}

@keyframes bounceOut{
  20%{
    -webkit-transform:scale3d(.9, .9, .9);
    -ms-transform:scale3d(.9, .9, .9);
    transform:scale3d(.9, .9, .9);
  }

  50%, 55%{
    opacity:1;
    -webkit-transform:scale3d(1.1, 1.1, 1.1);
    -ms-transform:scale3d(1.1, 1.1, 1.1);
    transform:scale3d(1.1, 1.1, 1.1);
  }

  100%{
    opacity:0;
    -webkit-transform:scale3d(.3, .3, .3);
    -ms-transform:scale3d(.3, .3, .3);
    transform:scale3d(.3, .3, .3);
  }
}

.bounceOut{
  -webkit-animation-name:bounceOut;
  animation-name:bounceOut;
  -webkit-animation-duration:.75s;
  animation-duration:.75s;
}

@-webkit-keyframes bounceOutDown{
  20%{
    -webkit-transform:translate3d(0, 10px, 0);
    transform:translate3d(0, 10px, 0);
  }

  40%, 45%{
    opacity:1;
    -webkit-transform:translate3d(0, -20px, 0);
    transform:translate3d(0, -20px, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, 2000px, 0);
    transform:translate3d(0, 2000px, 0);
  }
}

@keyframes bounceOutDown{
  20%{
    -webkit-transform:translate3d(0, 10px, 0);
    -ms-transform:translate3d(0, 10px, 0);
    transform:translate3d(0, 10px, 0);
  }

  40%, 45%{
    opacity:1;
    -webkit-transform:translate3d(0, -20px, 0);
    -ms-transform:translate3d(0, -20px, 0);
    transform:translate3d(0, -20px, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, 2000px, 0);
    -ms-transform:translate3d(0, 2000px, 0);
    transform:translate3d(0, 2000px, 0);
  }
}

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

@-webkit-keyframes bounceOutLft{
  20%{
    opacity:1;
    -webkit-transform:translate3d(20px, 0, 0);
    transform:translate3d(20px, 0, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(-2000px, 0, 0);
    transform:translate3d(-2000px, 0, 0);
  }
}

@keyframes bounceOutLft{
  20%{
    opacity:1;
    -webkit-transform:translate3d(20px, 0, 0);
    -ms-transform:translate3d(20px, 0, 0);
    transform:translate3d(20px, 0, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(-2000px, 0, 0);
    -ms-transform:translate3d(-2000px, 0, 0);
    transform:translate3d(-2000px, 0, 0);
  }
}

.bounceOutLft{
  -webkit-animation-name:bounceOutLft;
  animation-name:bounceOutLft;
}

@-webkit-keyframes bounceOutRight{
  20%{
    opacity:1;
    -webkit-transform:translate3d(-20px, 0, 0);
    transform:translate3d(-20px, 0, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(2000px, 0, 0);
    transform:translate3d(2000px, 0, 0);
  }
}

@keyframes bounceOutRight{
  20%{
    opacity:1;
    -webkit-transform:translate3d(-20px, 0, 0);
    -ms-transform:translate3d(-20px, 0, 0);
    transform:translate3d(-20px, 0, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(2000px, 0, 0);
    -ms-transform:translate3d(2000px, 0, 0);
    transform:translate3d(2000px, 0, 0);
  }
}

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

@-webkit-keyframes bounceOutUp{
  20%{
    -webkit-transform:translate3d(0, -10px, 0);
    transform:translate3d(0, -10px, 0);
  }

  40%, 45%{
    opacity:1;
    -webkit-transform:translate3d(0, 20px, 0);
    transform:translate3d(0, 20px, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, -2000px, 0);
    transform:translate3d(0, -2000px, 0);
  }
}

@keyframes bounceOutUp{
  20%{
    -webkit-transform:translate3d(0, -10px, 0);
    -ms-transform:translate3d(0, -10px, 0);
    transform:translate3d(0, -10px, 0);
  }

  40%, 45%{
    opacity:1;
    -webkit-transform:translate3d(0, 20px, 0);
    -ms-transform:translate3d(0, 20px, 0);
    transform:translate3d(0, 20px, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, -2000px, 0);
    -ms-transform:translate3d(0, -2000px, 0);
    transform:translate3d(0, -2000px, 0);
  }
}

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

@-webkit-keyframes fadeIn{
  0%{
    opacity:0;
  }

  100%{
    opacity:1;
  }
}

@keyframes fadeIn{
  0%{
    opacity:0;
  }

  100%{
    opacity:1;
  }
}

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

@-webkit-keyframes fadeInDown{
  0%{
    opacity:0;
    -webkit-transform:translate3d(0, -100%, 0);
    transform:translate3d(0, -100%, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes fadeInDown{
  0%{
    opacity:0;
    -webkit-transform:translate3d(0, -100%, 0);
    -ms-transform:translate3d(0, -100%, 0);
    transform:translate3d(0, -100%, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

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

@-webkit-keyframes fadeInDownBig{
  0%{
    opacity:0;
    -webkit-transform:translate3d(0, -2000px, 0);
    transform:translate3d(0, -2000px, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes fadeInDownBig{
  0%{
    opacity:0;
    -webkit-transform:translate3d(0, -2000px, 0);
    -ms-transform:translate3d(0, -2000px, 0);
    transform:translate3d(0, -2000px, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

.fadeInDownBig{
  -webkit-animation-name:fadeInDownBig;
  animation-name:fadeInDownBig;
}

@-webkit-keyframes fadeInLft{
  0%{
    opacity:0;
    -webkit-transform:translate3d(-100%, 0, 0);
    transform:translate3d(-100%, 0, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes fadeInLft{
  0%{
    opacity:0;
    -webkit-transform:translate3d(-100%, 0, 0);
    -ms-transform:translate3d(-100%, 0, 0);
    transform:translate3d(-100%, 0, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

.fadeInLft{
  -webkit-animation-name:fadeInLft;
  animation-name:fadeInLft;
}

@-webkit-keyframes fadeInLftBig{
  0%{
    opacity:0;
    -webkit-transform:translate3d(-2000px, 0, 0);
    transform:translate3d(-2000px, 0, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes fadeInLftBig{
  0%{
    opacity:0;
    -webkit-transform:translate3d(-2000px, 0, 0);
    -ms-transform:translate3d(-2000px, 0, 0);
    transform:translate3d(-2000px, 0, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

.fadeInLftBig{
  -webkit-animation-name:fadeInLftBig;
  animation-name:fadeInLftBig;
}

@-webkit-keyframes fadeInRight{
  0%{
    opacity:0;
    -webkit-transform:translate3d(100%, 0, 0);
    transform:translate3d(100%, 0, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes fadeInRight{
  0%{
    opacity:0;
    -webkit-transform:translate3d(100%, 0, 0);
    -ms-transform:translate3d(100%, 0, 0);
    transform:translate3d(100%, 0, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

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

@-webkit-keyframes fadeInRightBig{
  0%{
    opacity:0;
    -webkit-transform:translate3d(2000px, 0, 0);
    transform:translate3d(2000px, 0, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes fadeInRightBig{
  0%{
    opacity:0;
    -webkit-transform:translate3d(2000px, 0, 0);
    -ms-transform:translate3d(2000px, 0, 0);
    transform:translate3d(2000px, 0, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

.fadeInRightBig{
  -webkit-animation-name:fadeInRightBig;
  animation-name:fadeInRightBig;
}

@-webkit-keyframes fadeInUp{
  0%{
    opacity:0;
    -webkit-transform:translate3d(0, 100%, 0);
    transform:translate3d(0, 100%, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes fadeInUp{
  0%{
    opacity:0;
    -webkit-transform:translate3d(0, 100%, 0);
    -ms-transform:translate3d(0, 100%, 0);
    transform:translate3d(0, 100%, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

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

@-webkit-keyframes fadeInUpBig{
  0%{
    opacity:0;
    -webkit-transform:translate3d(0, 2000px, 0);
    transform:translate3d(0, 2000px, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes fadeInUpBig{
  0%{
    opacity:0;
    -webkit-transform:translate3d(0, 2000px, 0);
    -ms-transform:translate3d(0, 2000px, 0);
    transform:translate3d(0, 2000px, 0);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

.fadeInUpBig{
  -webkit-animation-name:fadeInUpBig;
  animation-name:fadeInUpBig;
}

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

  100%{
    opacity:0;
  }
}

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

  100%{
    opacity:0;
  }
}

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

@-webkit-keyframes fadeOutDown{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, 100%, 0);
    transform:translate3d(0, 100%, 0);
  }
}

@keyframes fadeOutDown{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, 100%, 0);
    -ms-transform:translate3d(0, 100%, 0);
    transform:translate3d(0, 100%, 0);
  }
}

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

@-webkit-keyframes fadeOutDownBig{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, 2000px, 0);
    transform:translate3d(0, 2000px, 0);
  }
}

@keyframes fadeOutDownBig{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, 2000px, 0);
    -ms-transform:translate3d(0, 2000px, 0);
    transform:translate3d(0, 2000px, 0);
  }
}

.fadeOutDownBig{
  -webkit-animation-name:fadeOutDownBig;
  animation-name:fadeOutDownBig;
}

@-webkit-keyframes fadeOutLft{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(-100%, 0, 0);
    transform:translate3d(-100%, 0, 0);
  }
}

@keyframes fadeOutLft{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(-100%, 0, 0);
    -ms-transform:translate3d(-100%, 0, 0);
    transform:translate3d(-100%, 0, 0);
  }
}

.fadeOutLft{
  -webkit-animation-name:fadeOutLft;
  animation-name:fadeOutLft;
}

@-webkit-keyframes fadeOutLftBig{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(-2000px, 0, 0);
    transform:translate3d(-2000px, 0, 0);
  }
}

@keyframes fadeOutLftBig{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(-2000px, 0, 0);
    -ms-transform:translate3d(-2000px, 0, 0);
    transform:translate3d(-2000px, 0, 0);
  }
}

.fadeOutLftBig{
  -webkit-animation-name:fadeOutLftBig;
  animation-name:fadeOutLftBig;
}

@-webkit-keyframes fadeOutRight{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(100%, 0, 0);
    transform:translate3d(100%, 0, 0);
  }
}

@keyframes fadeOutRight{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(100%, 0, 0);
    -ms-transform:translate3d(100%, 0, 0);
    transform:translate3d(100%, 0, 0);
  }
}

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

@-webkit-keyframes fadeOutRightBig{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(2000px, 0, 0);
    transform:translate3d(2000px, 0, 0);
  }
}

@keyframes fadeOutRightBig{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(2000px, 0, 0);
    -ms-transform:translate3d(2000px, 0, 0);
    transform:translate3d(2000px, 0, 0);
  }
}

.fadeOutRightBig{
  -webkit-animation-name:fadeOutRightBig;
  animation-name:fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, -100%, 0);
    transform:translate3d(0, -100%, 0);
  }
}

@keyframes fadeOutUp{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, -100%, 0);
    -ms-transform:translate3d(0, -100%, 0);
    transform:translate3d(0, -100%, 0);
  }
}

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

@-webkit-keyframes fadeOutUpBig{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, -2000px, 0);
    transform:translate3d(0, -2000px, 0);
  }
}

@keyframes fadeOutUpBig{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(0, -2000px, 0);
    -ms-transform:translate3d(0, -2000px, 0);
    transform:translate3d(0, -2000px, 0);
  }
}

.fadeOutUpBig{
  -webkit-animation-name:fadeOutUpBig;
  animation-name:fadeOutUpBig;
}

@-webkit-keyframes flip{
  0%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform:perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function:ease-out;
    animation-timing-function:ease-out;
  }

  40%{
    -webkit-transform:perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform:perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function:ease-out;
    animation-timing-function:ease-out;
  }

  50%{
    -webkit-transform:perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform:perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function:ease-in;
    animation-timing-function:ease-in;
  }

  80%{
    -webkit-transform:perspective(400px) scale3d(.95, .95, .95);
    transform:perspective(400px) scale3d(.95, .95, .95);
    -webkit-animation-timing-function:ease-in;
    animation-timing-function:ease-in;
  }

  100%{
    -webkit-transform:perspective(400px);
    transform:perspective(400px);
    -webkit-animation-timing-function:ease-in;
    animation-timing-function:ease-in;
  }
}

@keyframes flip{
  0%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, -360deg);
    -ms-transform:perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform:perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function:ease-out;
    animation-timing-function:ease-out;
  }

  40%{
    -webkit-transform:perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -ms-transform:perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform:perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function:ease-out;
    animation-timing-function:ease-out;
  }

  50%{
    -webkit-transform:perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -ms-transform:perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform:perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function:ease-in;
    animation-timing-function:ease-in;
  }

  80%{
    -webkit-transform:perspective(400px) scale3d(.95, .95, .95);
    -ms-transform:perspective(400px) scale3d(.95, .95, .95);
    transform:perspective(400px) scale3d(.95, .95, .95);
    -webkit-animation-timing-function:ease-in;
    animation-timing-function:ease-in;
  }

  100%{
    -webkit-transform:perspective(400px);
    -ms-transform:perspective(400px);
    transform:perspective(400px);
    -webkit-animation-timing-function:ease-in;
    animation-timing-function:ease-in;
  }
}

.animated.flip{
  -webkit-backface-visibility:visible;
  -ms-backface-visibility:visible;
  backface-visibility:visible;
  -webkit-animation-name:flip;
  animation-name:flip;
}

@-webkit-keyframes flipInX{
  0%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform:perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-transition-timing-function:ease-in;
    transition-timing-function:ease-in;
    opacity:0;
  }

  40%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform:perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-transition-timing-function:ease-in;
    transition-timing-function:ease-in;
  }

  60%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform:perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity:1;
  }

  80%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform:perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  100%{
    -webkit-transform:perspective(400px);
    transform:perspective(400px);
  }
}

@keyframes flipInX{
  0%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, 90deg);
    -ms-transform:perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform:perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-transition-timing-function:ease-in;
    transition-timing-function:ease-in;
    opacity:0;
  }

  40%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, -20deg);
    -ms-transform:perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform:perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-transition-timing-function:ease-in;
    transition-timing-function:ease-in;
  }

  60%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, 10deg);
    -ms-transform:perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform:perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity:1;
  }

  80%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, -5deg);
    -ms-transform:perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform:perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  100%{
    -webkit-transform:perspective(400px);
    -ms-transform:perspective(400px);
    transform:perspective(400px);
  }
}

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

@-webkit-keyframes flipInY{
  0%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform:perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-transition-timing-function:ease-in;
    transition-timing-function:ease-in;
    opacity:0;
  }

  40%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform:perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-transition-timing-function:ease-in;
    transition-timing-function:ease-in;
  }

  60%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform:perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity:1;
  }

  80%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform:perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  100%{
    -webkit-transform:perspective(400px);
    transform:perspective(400px);
  }
}

@keyframes flipInY{
  0%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, 90deg);
    -ms-transform:perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform:perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-transition-timing-function:ease-in;
    transition-timing-function:ease-in;
    opacity:0;
  }

  40%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, -20deg);
    -ms-transform:perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform:perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-transition-timing-function:ease-in;
    transition-timing-function:ease-in;
  }

  60%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, 10deg);
    -ms-transform:perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform:perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity:1;
  }

  80%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, -5deg);
    -ms-transform:perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform:perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  100%{
    -webkit-transform:perspective(400px);
    -ms-transform:perspective(400px);
    transform:perspective(400px);
  }
}

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

@-webkit-keyframes flipOutX{
  0%{
    -webkit-transform:perspective(400px);
    transform:perspective(400px);
  }

  30%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform:perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity:1;
  }

  100%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform:perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity:0;
  }
}

@keyframes flipOutX{
  0%{
    -webkit-transform:perspective(400px);
    -ms-transform:perspective(400px);
    transform:perspective(400px);
  }

  30%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, -20deg);
    -ms-transform:perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform:perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity:1;
  }

  100%{
    -webkit-transform:perspective(400px) rotate3d(1, 0, 0, 90deg);
    -ms-transform:perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform:perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity:0;
  }
}

.flipOutX{
  -webkit-animation-name:flipOutX;
  animation-name:flipOutX;
  -webkit-animation-duration:.75s;
  animation-duration:.75s;
  -webkit-backface-visibility:visible !important;
  -ms-backface-visibility:visible !important;
  backface-visibility:visible !important;
}

@-webkit-keyframes flipOutY{
  0%{
    -webkit-transform:perspective(400px);
    transform:perspective(400px);
  }

  30%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform:perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity:1;
  }

  100%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform:perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity:0;
  }
}

@keyframes flipOutY{
  0%{
    -webkit-transform:perspective(400px);
    -ms-transform:perspective(400px);
    transform:perspective(400px);
  }

  30%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, -15deg);
    -ms-transform:perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform:perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity:1;
  }

  100%{
    -webkit-transform:perspective(400px) rotate3d(0, 1, 0, 90deg);
    -ms-transform:perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform:perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity:0;
  }
}

.flipOutY{
  -webkit-backface-visibility:visible !important;
  -ms-backface-visibility:visible !important;
  backface-visibility:visible !important;
  -webkit-animation-name:flipOutY;
  animation-name:flipOutY;
  -webkit-animation-duration:.75s;
  animation-duration:.75s;
}

@-webkit-keyframes lightSpeedIn{
  0%{
    -webkit-transform:translate3d(100%, 0, 0) skewX(-30deg);
    transform:translate3d(100%, 0, 0) skewX(-30deg);
    opacity:0;
  }

  60%{
    -webkit-transform:skewX(20deg);
    transform:skewX(20deg);
    opacity:1;
  }

  80%{
    -webkit-transform:skewX(-5deg);
    transform:skewX(-5deg);
    opacity:1;
  }

  100%{
    -webkit-transform:none;
    transform:none;
    opacity:1;
  }
}

@keyframes lightSpeedIn{
  0%{
    -webkit-transform:translate3d(100%, 0, 0) skewX(-30deg);
    -ms-transform:translate3d(100%, 0, 0) skewX(-30deg);
    transform:translate3d(100%, 0, 0) skewX(-30deg);
    opacity:0;
  }

  60%{
    -webkit-transform:skewX(20deg);
    -ms-transform:skewX(20deg);
    transform:skewX(20deg);
    opacity:1;
  }

  80%{
    -webkit-transform:skewX(-5deg);
    -ms-transform:skewX(-5deg);
    transform:skewX(-5deg);
    opacity:1;
  }

  100%{
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
    opacity:1;
  }
}

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

@-webkit-keyframes lightSpeedOut{
  0%{
    opacity:1;
  }

  100%{
    -webkit-transform:translate3d(100%, 0, 0) skewX(30deg);
    transform:translate3d(100%, 0, 0) skewX(30deg);
    opacity:0;
  }
}

@keyframes lightSpeedOut{
  0%{
    opacity:1;
  }

  100%{
    -webkit-transform:translate3d(100%, 0, 0) skewX(30deg);
    -ms-transform:translate3d(100%, 0, 0) skewX(30deg);
    transform:translate3d(100%, 0, 0) skewX(30deg);
    opacity:0;
  }
}

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

@-webkit-keyframes rotateIn{
  0%{
    -webkit-transform-origin:center;
    transform-origin:center;
    -webkit-transform:rotate3d(0, 0, 1, -200deg);
    transform:rotate3d(0, 0, 1, -200deg);
    opacity:0;
  }

  100%{
    -webkit-transform-origin:center;
    transform-origin:center;
    -webkit-transform:none;
    transform:none;
    opacity:1;
  }
}

@keyframes rotateIn{
  0%{
    -webkit-transform-origin:center;
    -ms-transform-origin:center;
    transform-origin:center;
    -webkit-transform:rotate3d(0, 0, 1, -200deg);
    -ms-transform:rotate3d(0, 0, 1, -200deg);
    transform:rotate3d(0, 0, 1, -200deg);
    opacity:0;
  }

  100%{
    -webkit-transform-origin:center;
    -ms-transform-origin:center;
    transform-origin:center;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
    opacity:1;
  }
}

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

@-webkit-keyframes rotateInDownLft{
  0%{
    -webkit-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:rotate3d(0, 0, 1, -45deg);
    transform:rotate3d(0, 0, 1, -45deg);
    opacity:0;
  }

  100%{
    -webkit-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:none;
    transform:none;
    opacity:1;
  }
}

@keyframes rotateInDownLft{
  0%{
    -webkit-transform-origin:left bottom;
    -ms-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:rotate3d(0, 0, 1, -45deg);
    -ms-transform:rotate3d(0, 0, 1, -45deg);
    transform:rotate3d(0, 0, 1, -45deg);
    opacity:0;
  }

  100%{
    -webkit-transform-origin:left bottom;
    -ms-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
    opacity:1;
  }
}

.rotateInDownLft{
  -webkit-animation-name:rotateInDownLft;
  animation-name:rotateInDownLft;
}

@-webkit-keyframes rotateInDownRight{
  0%{
    -webkit-transform-origin:right bottom;
    transform-origin:right bottom;
    -webkit-transform:rotate3d(0, 0, 1, 45deg);
    transform:rotate3d(0, 0, 1, 45deg);
    opacity:0;
  }

  100%{
    -webkit-transform-origin:right bottom;
    transform-origin:right bottom;
    -webkit-transform:none;
    transform:none;
    opacity:1;
  }
}

@keyframes rotateInDownRight{
  0%{
    -webkit-transform-origin:right bottom;
    -ms-transform-origin:right bottom;
    transform-origin:right bottom;
    -webkit-transform:rotate3d(0, 0, 1, 45deg);
    -ms-transform:rotate3d(0, 0, 1, 45deg);
    transform:rotate3d(0, 0, 1, 45deg);
    opacity:0;
  }

  100%{
    -webkit-transform-origin:right bottom;
    -ms-transform-origin:right bottom;
    transform-origin:right bottom;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
    opacity:1;
  }
}

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

@-webkit-keyframes rotateInUpLft{
  0%{
    -webkit-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:rotate3d(0, 0, 1, 45deg);
    transform:rotate3d(0, 0, 1, 45deg);
    opacity:0;
  }

  100%{
    -webkit-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:none;
    transform:none;
    opacity:1;
  }
}

@keyframes rotateInUpLft{
  0%{
    -webkit-transform-origin:left bottom;
    -ms-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:rotate3d(0, 0, 1, 45deg);
    -ms-transform:rotate3d(0, 0, 1, 45deg);
    transform:rotate3d(0, 0, 1, 45deg);
    opacity:0;
  }

  100%{
    -webkit-transform-origin:left bottom;
    -ms-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
    opacity:1;
  }
}

.rotateInUpLft{
  -webkit-animation-name:rotateInUpLft;
  animation-name:rotateInUpLft;
}

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

  100%{
    -webkit-transform-origin:right bottom;
    transform-origin:right bottom;
    -webkit-transform:none;
    transform:none;
    opacity:1;
  }
}

@keyframes rotateInUpRight{
  0%{
    -webkit-transform-origin:right bottom;
    -ms-transform-origin:right bottom;
    transform-origin:right bottom;
    -webkit-transform:rotate3d(0, 0, 1, -90deg);
    -ms-transform:rotate3d(0, 0, 1, -90deg);
    transform:rotate3d(0, 0, 1, -90deg);
    opacity:0;
  }

  100%{
    -webkit-transform-origin:right bottom;
    -ms-transform-origin:right bottom;
    transform-origin:right bottom;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
    opacity:1;
  }
}

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

@-webkit-keyframes rotateOut{
  0%{
    -webkit-transform-origin:center;
    transform-origin:center;
    opacity:1;
  }

  100%{
    -webkit-transform-origin:center;
    transform-origin:center;
    -webkit-transform:rotate3d(0, 0, 1, 200deg);
    transform:rotate3d(0, 0, 1, 200deg);
    opacity:0;
  }
}

@keyframes rotateOut{
  0%{
    -webkit-transform-origin:center;
    -ms-transform-origin:center;
    transform-origin:center;
    opacity:1;
  }

  100%{
    -webkit-transform-origin:center;
    -ms-transform-origin:center;
    transform-origin:center;
    -webkit-transform:rotate3d(0, 0, 1, 200deg);
    -ms-transform:rotate3d(0, 0, 1, 200deg);
    transform:rotate3d(0, 0, 1, 200deg);
    opacity:0;
  }
}

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

@-webkit-keyframes rotateOutDownLft{
  0%{
    -webkit-transform-origin:left bottom;
    transform-origin:left bottom;
    opacity:1;
  }

  100%{
    -webkit-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:rotate3d(0, 0, 1, 45deg);
    transform:rotate3d(0, 0, 1, 45deg);
    opacity:0;
  }
}

@keyframes rotateOutDownLft{
  0%{
    -webkit-transform-origin:left bottom;
    -ms-transform-origin:left bottom;
    transform-origin:left bottom;
    opacity:1;
  }

  100%{
    -webkit-transform-origin:left bottom;
    -ms-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:rotate3d(0, 0, 1, 45deg);
    -ms-transform:rotate3d(0, 0, 1, 45deg);
    transform:rotate3d(0, 0, 1, 45deg);
    opacity:0;
  }
}

.rotateOutDownLft{
  -webkit-animation-name:rotateOutDownLft;
  animation-name:rotateOutDownLft;
}

@-webkit-keyframes rotateOutDownRight{
  0%{
    -webkit-transform-origin:right bottom;
    transform-origin:right bottom;
    opacity:1;
  }

  100%{
    -webkit-transform-origin:right bottom;
    transform-origin:right bottom;
    -webkit-transform:rotate3d(0, 0, 1, -45deg);
    transform:rotate3d(0, 0, 1, -45deg);
    opacity:0;
  }
}

@keyframes rotateOutDownRight{
  0%{
    -webkit-transform-origin:right bottom;
    -ms-transform-origin:right bottom;
    transform-origin:right bottom;
    opacity:1;
  }

  100%{
    -webkit-transform-origin:right bottom;
    -ms-transform-origin:right bottom;
    transform-origin:right bottom;
    -webkit-transform:rotate3d(0, 0, 1, -45deg);
    -ms-transform:rotate3d(0, 0, 1, -45deg);
    transform:rotate3d(0, 0, 1, -45deg);
    opacity:0;
  }
}

.rotateOutDownRight{
  -webkit-animation-name:rotateOutDownRight;
  animation-name:rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLft{
  0%{
    -webkit-transform-origin:left bottom;
    transform-origin:left bottom;
    opacity:1;
  }

  100%{
    -webkit-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:rotate3d(0, 0, 1, -45deg);
    transform:rotate3d(0, 0, 1, -45deg);
    opacity:0;
  }
}

@keyframes rotateOutUpLft{
  0%{
    -webkit-transform-origin:left bottom;
    -ms-transform-origin:left bottom;
    transform-origin:left bottom;
    opacity:1;
  }

  100%{
    -webkit-transform-origin:left bottom;
    -ms-transform-origin:left bottom;
    transform-origin:left bottom;
    -webkit-transform:rotate3d(0, 0, 1, -45deg);
    -ms-transform:rotate3d(0, 0, 1, -45deg);
    transform:rotate3d(0, 0, 1, -45deg);
    opacity:0;
  }
}

.rotateOutUpLft{
  -webkit-animation-name:rotateOutUpLft;
  animation-name:rotateOutUpLft;
}

@-webkit-keyframes rotateOutUpRight{
  0%{
    -webkit-transform-origin:right bottom;
    transform-origin:right bottom;
    opacity:1;
  }

  100%{
    -webkit-transform-origin:right bottom;
    transform-origin:right bottom;
    -webkit-transform:rotate3d(0, 0, 1, 90deg);
    transform:rotate3d(0, 0, 1, 90deg);
    opacity:0;
  }
}

@keyframes rotateOutUpRight{
  0%{
    -webkit-transform-origin:right bottom;
    -ms-transform-origin:right bottom;
    transform-origin:right bottom;
    opacity:1;
  }

  100%{
    -webkit-transform-origin:right bottom;
    -ms-transform-origin:right bottom;
    transform-origin:right bottom;
    -webkit-transform:rotate3d(0, 0, 1, 90deg);
    -ms-transform:rotate3d(0, 0, 1, 90deg);
    transform:rotate3d(0, 0, 1, 90deg);
    opacity:0;
  }
}

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

@-webkit-keyframes hinge{
  0%{
    -webkit-transform-origin:top left;
    transform-origin:top left;
    -webkit-animation-timing-function:ease-in-out;
    animation-timing-function:ease-in-out;
  }

  20%, 60%{
    -webkit-transform:rotate3d(0, 0, 1, 80deg);
    transform:rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin:top left;
    transform-origin:top left;
    -webkit-animation-timing-function:ease-in-out;
    animation-timing-function:ease-in-out;
  }

  40%, 80%{
    -webkit-transform:rotate3d(0, 0, 1, 60deg);
    transform:rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin:top left;
    transform-origin:top left;
    -webkit-animation-timing-function:ease-in-out;
    animation-timing-function:ease-in-out;
    opacity:1;
  }

  100%{
    -webkit-transform:translate3d(0, 700px, 0);
    transform:translate3d(0, 700px, 0);
    opacity:0;
  }
}

@keyframes hinge{
  0%{
    -webkit-transform-origin:top left;
    -ms-transform-origin:top left;
    transform-origin:top left;
    -webkit-animation-timing-function:ease-in-out;
    animation-timing-function:ease-in-out;
  }

  20%, 60%{
    -webkit-transform:rotate3d(0, 0, 1, 80deg);
    -ms-transform:rotate3d(0, 0, 1, 80deg);
    transform:rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin:top left;
    -ms-transform-origin:top left;
    transform-origin:top left;
    -webkit-animation-timing-function:ease-in-out;
    animation-timing-function:ease-in-out;
  }

  40%, 80%{
    -webkit-transform:rotate3d(0, 0, 1, 60deg);
    -ms-transform:rotate3d(0, 0, 1, 60deg);
    transform:rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin:top left;
    -ms-transform-origin:top left;
    transform-origin:top left;
    -webkit-animation-timing-function:ease-in-out;
    animation-timing-function:ease-in-out;
    opacity:1;
  }

  100%{
    -webkit-transform:translate3d(0, 700px, 0);
    -ms-transform:translate3d(0, 700px, 0);
    transform:translate3d(0, 700px, 0);
    opacity:0;
  }
}

.hinge{
  -webkit-animation-name:hinge;
  animation-name:hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn{
  0%{
    opacity:0;
    -webkit-transform:translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform:translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    transform:none;
  }
}

@keyframes rollIn{
  0%{
    opacity:0;
    -webkit-transform:translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    -ms-transform:translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform:translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  100%{
    opacity:1;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

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

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform:translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

@keyframes rollOut{
  0%{
    opacity:1;
  }

  100%{
    opacity:0;
    -webkit-transform:translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    -ms-transform:translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform:translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

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

@-webkit-keyframes zoomIn{
  0%{
    opacity:0;
    -webkit-transform:scale3d(.3, .3, .3);
    transform:scale3d(.3, .3, .3);
  }

  50%{
    opacity:1;
  }
}

@keyframes zoomIn{
  0%{
    opacity:0;
    -webkit-transform:scale3d(.3, .3, .3);
    -ms-transform:scale3d(.3, .3, .3);
    transform:scale3d(.3, .3, .3);
  }

  50%{
    opacity:1;
  }
}

.zoomIn{
  -webkit-animation-name:zoomIn;
  animation-name:zoomIn;
}

@-webkit-keyframes zoomInDown{
  0%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    transform:scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform:scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInDown{
  0%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    -ms-transform:scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    transform:scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -ms-transform:scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform:scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInDown{
  -webkit-animation-name:zoomInDown;
  animation-name:zoomInDown;
}

@-webkit-keyframes zoomInLft{
  0%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    transform:scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    transform:scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInLft{
  0%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    -ms-transform:scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    transform:scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    -ms-transform:scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    transform:scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInLft{
  -webkit-animation-name:zoomInLft;
  animation-name:zoomInLft;
}

@-webkit-keyframes zoomInRight{
  0%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    transform:scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    transform:scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInRight{
  0%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    -ms-transform:scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    transform:scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    -ms-transform:scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    transform:scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInRight{
  -webkit-animation-name:zoomInRight;
  animation-name:zoomInRight;
}

@-webkit-keyframes zoomInUp{
  0%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    transform:scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform:scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInUp{
  0%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    -ms-transform:scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    transform:scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -ms-transform:scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform:scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomInUp{
  -webkit-animation-name:zoomInUp;
  animation-name:zoomInUp;
}

@-webkit-keyframes zoomOut{
  0%{
    opacity:1;
  }

  50%{
    opacity:0;
    -webkit-transform:scale3d(.3, .3, .3);
    transform:scale3d(.3, .3, .3);
  }

  100%{
    opacity:0;
  }
}

@keyframes zoomOut{
  0%{
    opacity:1;
  }

  50%{
    opacity:0;
    -webkit-transform:scale3d(.3, .3, .3);
    -ms-transform:scale3d(.3, .3, .3);
    transform:scale3d(.3, .3, .3);
  }

  100%{
    opacity:0;
  }
}

.zoomOut{
  -webkit-animation-name:zoomOut;
  animation-name:zoomOut;
}

@-webkit-keyframes zoomOutDown{
  40%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform:scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  100%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    transform:scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    -webkit-transform-origin:center bottom;
    transform-origin:center bottom;
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomOutDown{
  40%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -ms-transform:scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform:scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  100%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    -ms-transform:scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    transform:scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    -webkit-transform-origin:center bottom;
    -ms-transform-origin:center bottom;
    transform-origin:center bottom;
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomOutDown{
  -webkit-animation-name:zoomOutDown;
  animation-name:zoomOutDown;
}

@-webkit-keyframes zoomOutLft{
  40%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    transform:scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:scale(.1) translate3d(-2000px, 0, 0);
    transform:scale(.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin:left center;
    transform-origin:left center;
  }
}

@keyframes zoomOutLft{
  40%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    -ms-transform:scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    transform:scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:scale(.1) translate3d(-2000px, 0, 0);
    -ms-transform:scale(.1) translate3d(-2000px, 0, 0);
    transform:scale(.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin:left center;
    -ms-transform-origin:left center;
    transform-origin:left center;
  }
}

.zoomOutLft{
  -webkit-animation-name:zoomOutLft;
  animation-name:zoomOutLft;
}

@-webkit-keyframes zoomOutRight{
  40%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
    transform:scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:scale(.1) translate3d(2000px, 0, 0);
    transform:scale(.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin:right center;
    transform-origin:right center;
  }
}

@keyframes zoomOutRight{
  40%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
    -ms-transform:scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
    transform:scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  100%{
    opacity:0;
    -webkit-transform:scale(.1) translate3d(2000px, 0, 0);
    -ms-transform:scale(.1) translate3d(2000px, 0, 0);
    transform:scale(.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin:right center;
    -ms-transform-origin:right center;
    transform-origin:right center;
  }
}

.zoomOutRight{
  -webkit-animation-name:zoomOutRight;
  animation-name:zoomOutRight;
}

@-webkit-keyframes zoomOutUp{
  40%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform:scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  100%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    transform:scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    -webkit-transform-origin:center bottom;
    transform-origin:center bottom;
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomOutUp{
  40%{
    opacity:1;
    -webkit-transform:scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -ms-transform:scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform:scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function:cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  100%{
    opacity:0;
    -webkit-transform:scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    -ms-transform:scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    transform:scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    -webkit-transform-origin:center bottom;
    -ms-transform-origin:center bottom;
    transform-origin:center bottom;
    -webkit-animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function:cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

.zoomOutUp{
  -webkit-animation-name:zoomOutUp;
  animation-name:zoomOutUp;
}

@-webkit-keyframes slideInDown{
  0%{
    -webkit-transform:translateY(-100%);
    transform:translateY(-100%);
    visibility:visible;
  }

  100%{
    -webkit-transform:translateY(0);
    transform:translateY(0);
  }
}

@keyframes slideInDown{
  0%{
    -webkit-transform:translateY(-100%);
    -ms-transform:translateY(-100%);
    transform:translateY(-100%);
    visibility:visible;
  }

  100%{
    -webkit-transform:translateY(0);
    -ms-transform:translateY(0);
    transform:translateY(0);
  }
}

.slideInDown{
  -webkit-animation-name:slideInDown;
  animation-name:slideInDown;
}

@-webkit-keyframes slideInLft{
  0%{
    -webkit-transform:translateX(-100%);
    transform:translateX(-100%);
    visibility:visible;
  }

  100%{
    -webkit-transform:translateX(0);
    transform:translateX(0);
  }
}

@keyframes slideInLft{
  0%{
    -webkit-transform:translateX(-100%);
    -ms-transform:translateX(-100%);
    transform:translateX(-100%);
    visibility:visible;
  }

  100%{
    -webkit-transform:translateX(0);
    -ms-transform:translateX(0);
    transform:translateX(0);
  }
}

.slideInLft{
  -webkit-animation-name:slideInLft;
  animation-name:slideInLft;
}

@-webkit-keyframes slideInRight{
  0%{
    -webkit-transform:translateX(100%);
    transform:translateX(100%);
    visibility:visible;
  }

  100%{
    -webkit-transform:translateX(0);
    transform:translateX(0);
  }
}

@keyframes slideInRight{
  0%{
    -webkit-transform:translateX(100%);
    -ms-transform:translateX(100%);
    transform:translateX(100%);
    visibility:visible;
  }

  100%{
    -webkit-transform:translateX(0);
    -ms-transform:translateX(0);
    transform:translateX(0);
  }
}

.slideInRight{
  -webkit-animation-name:slideInRight;
  animation-name:slideInRight;
}

@-webkit-keyframes slideInUp{
  0%{
    -webkit-transform:translateY(100%);
    transform:translateY(100%);
    visibility:visible;
  }

  100%{
    -webkit-transform:translateY(0);
    transform:translateY(0);
  }
}

@keyframes slideInUp{
  0%{
    -webkit-transform:translateY(100%);
    -ms-transform:translateY(100%);
    transform:translateY(100%);
    visibility:visible;
  }

  100%{
    -webkit-transform:translateY(0);
    -ms-transform:translateY(0);
    transform:translateY(0);
  }
}

.slideInUp{
  -webkit-animation-name:slideInUp;
  animation-name:slideInUp;
}

@-webkit-keyframes slideOutDown{
  0%{
    -webkit-transform:translateY(0);
    transform:translateY(0);
  }

  100%{
    visibility:hidden;
    -webkit-transform:translateY(100%);
    transform:translateY(100%);
  }
}

@keyframes slideOutDown{
  0%{
    -webkit-transform:translateY(0);
    -ms-transform:translateY(0);
    transform:translateY(0);
  }

  100%{
    visibility:hidden;
    -webkit-transform:translateY(100%);
    -ms-transform:translateY(100%);
    transform:translateY(100%);
  }
}

.slideOutDown{
  -webkit-animation-name:slideOutDown;
  animation-name:slideOutDown;
}

@-webkit-keyframes slideOutLft{
  0%{
    -webkit-transform:translateX(0);
    transform:translateX(0);
  }

  100%{
    visibility:hidden;
    -webkit-transform:translateX(-100%);
    transform:translateX(-100%);
  }
}

@keyframes slideOutLft{
  0%{
    -webkit-transform:translateX(0);
    -ms-transform:translateX(0);
    transform:translateX(0);
  }

  100%{
    visibility:hidden;
    -webkit-transform:translateX(-100%);
    -ms-transform:translateX(-100%);
    transform:translateX(-100%);
  }
}

.slideOutLft{
  -webkit-animation-name:slideOutLft;
  animation-name:slideOutLft;
}

@-webkit-keyframes slideOutRight{
  0%{
    -webkit-transform:translateX(0);
    transform:translateX(0);
  }

  100%{
    visibility:hidden;
    -webkit-transform:translateX(100%);
    transform:translateX(100%);
  }
}

@keyframes slideOutRight{
  0%{
    -webkit-transform:translateX(0);
    -ms-transform:translateX(0);
    transform:translateX(0);
  }

  100%{
    visibility:hidden;
    -webkit-transform:translateX(100%);
    -ms-transform:translateX(100%);
    transform:translateX(100%);
  }
}

.slideOutRight{
  -webkit-animation-name:slideOutRight;
  animation-name:slideOutRight;
}

@-webkit-keyframes slideOutUp{
  0%{
    -webkit-transform:translateY(0);
    transform:translateY(0);
  }

  100%{
    visibility:hidden;
    -webkit-transform:translateY(-100%);
    transform:translateY(-100%);
  }
}

@keyframes slideOutUp{
  0%{
    -webkit-transform:translateY(0);
    -ms-transform:translateY(0);
    transform:translateY(0);
  }

  100%{
    visibility:hidden;
    -webkit-transform:translateY(-100%);
    -ms-transform:translateY(-100%);
    transform:translateY(-100%);
  }
}

.slideOutUp{
  -webkit-animation-name:slideOutUp;
  animation-name:slideOutUp;
}


/* Other effects */

@keyframes fa-spin{
	0%{transform:rotate(0deg)}to{transform:rotate(1turn)}
}
.fa-spin{
	animation:fa-spin 2s linear infinite;
}
.rotateInfinite1s{
    -webkit-animation:fa-spin 1s linear infinite;
    animation:fa-spin 1s linear infinite;
}
.rotateInfinite5s{
    -webkit-animation:fa-spin 5s linear infinite;
    animation:fa-spin 5s linear infinite;
}
.rotateInfinite10s{
    -webkit-animation:fa-spin 10s linear infinite;
    animation:fa-spin 10s linear infinite;
}
.rotateInfinite15s{
    -webkit-animation:fa-spin 15s linear infinite;
    animation:fa-spin 15s linear infinite;
}

@keyframes stuckMoveDown{
	0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}
	100%{-webkit-transform:translateY(0);transform:translateY(0)}
}
.stuckMoveDown{
	-webkit-animation:stuckMoveDown .5s;
	animation:stuckMoveDown .5s;
}

@keyframes stuckFadeIn{
	0%{opacity:0}
	100%{opacity:1}
}

@keyframes stuckMoveDownOpacity{
	0%{-webkit-transform:translateY(-15px);transform:translateY(-15px);opacity:0}
	100%{-webkit-transform:translateY(0);transform:translateY(0);opacity:1}
}
.stuckMoveDownOpacity{
	-webkit-animation:stuckMoveDownOpacity .6s;
	animation:stuckMoveDownOpacity .6s;
}

@keyframes stuckMoveUpOpacity{
	0%{-webkit-transform:translateY(15px);transform:translateY(15px);opacity:0}
	100%{-webkit-transform:translateY(0);transform:translateY(0);opacity:1}
}
.stuckMoveUpOpacity{
	animation-name:stuckMoveUpOpacity;
	animation-timing-function:ease;-out;
}

@keyframes fastShake{
	0%{ transform:skewX(-15deg);}
	5%{ transform:skewX(15deg);}
	10%{ transform:skewX(-15deg);}
	15%{ transform:skewX(15deg);}
	20%{ transform:skewX(0deg);}
	100%{ transform:skewX(0deg);}
}
.fastShakeAlternateInfinite{
	animation:1.5s fastShake infinite alternate;
}

@keyframes colorSearchChange{
	100%, 0%{background-color:#fff;}
	50%{background-color:#f0f0f0;}
}

@keyframes leftToRight{
	0%{-ms-transform:translateX(0px);-webkit-transform:translateX(0px);transform:translateX(0px);}
	50%{-ms-transform:translateX(100px);-webkit-transform:translateX(100px);transform:translateX(100px);}
	100%{-ms-transform:translateX(0px);-webkit-transform:translateX(0px);transform:translateX(0px);}
}
.leftRightInfinite{
	animation:leftToRight 10s linear 0s infinite, stuckFadeIn 2s linear;
	-webkit-animation:leftToRight 10s linear 0s infinite, stuckFadeIn 2s linear;
}

@keyframes upAndDown{
	0%{-ms-transform:translateY(0px);-webkit-transform:translateY(0px);transform:translateY(0px);}
	50%{-ms-transform:translateY(100px);-webkit-transform:translateY(100px);transform:translateY(100px);}
	100%{-ms-transform:translateY(0px);-webkit-transform:translateY(0px);transform:translateY(0px);}
}
.upAndDwnInf10s{
	animation:upAndDown 10s linear 0s infinite, stuckFadeIn 2s linear;
	-webkit-animation:upAndDown 10s linear 0s infinite,stuckFadeIn 2s linear;
}
.upAndDwnInf15s{
	animation:upAndDown 15s linear 0s infinite, stuckFadeIn 2s linear;
	-webkit-animation:upAndDown 15s linear 0s infinite,stuckFadeIn 2s linear;
}
.upAndDwnInf20s{
	animation:upAndDown 20s linear 0s infinite, stuckFadeIn 2s linear;
	-webkit-animation:upAndDown 20s linear 0s infinite,stuckFadeIn 2s linear;
}
.upAndDwnInf25s{
	animation:upAndDown 25s linear 0s infinite, stuckFadeIn 2s linear;
	-webkit-animation:upAndDown 25s linear 0s infinite,stuckFadeIn 2s linear;
}
.upAndDwnInf30s{
	animation:upAndDown 30s linear 0s infinite, stuckFadeIn 2s linear;
	-webkit-animation:upAndDown 30s linear 0s infinite,stuckFadeIn 2s linear;
}

@keyframes slideInBlurredTop{
	0%{-webkit-transform:translateY(-100px) scaleY(1.5) scaleX(0.5);transform:translateY(-100px) scaleY(1.5) scaleX(0.5);-webkit-filter:blur(25px);filter:blur(25px);opacity:0;}
	100%{-webkit-transform:translateY(0) scaleY(1) scaleX(1);transform:translateY(0) scaleY(1) scaleX(1);-webkit-filter:blur(0);filter:blur(0);opacity:1;}
}
.slideInBlurredTop{
	animation-name:slideInBlurredTop;
	animation-timing-function:cubic-bezier(0.230, 1.000, 0.320, 1.000);
}

@keyframes rotateIn2Fwd{
	0%{-webkit-transform:perspective(500px) translateZ(-200px) rotate(-45deg);transform:perspective(500px) translateZ(-200px) rotate(-45deg);opacity:0}
	100%{-webkit-transform:perspective(500px) translateZ(0) rotate(0);transform:perspective(500px) translateZ(0) rotate(0);opacity:1}
}
.rotateIn2Fwd{
	animation-name:rotateIn2Fwd;
	animation-timing-function:cubic-bezier(0.250, 0.460, 0.450, 0.940);
}

@keyframes rotateIn2Bck{
	0%{-webkit-transform:perspective(500px) translateZ(200px) rotate(45deg);transform:perspective(500px) translateZ(200px) rotate(45deg);opacity:0}
	100%{-webkit-transform:perspective(500px) translateZ(0) rotate(0);transform:perspective(500px) translateZ(0) rotate(0);opacity:1}
}
.rotateIn2Bck{
	animation-name:rotateIn2Bck;
	animation-timing-function:cubic-bezier(0.250, 0.460, 0.450, 0.940);
}

@keyframes flipInHorTop{
	0%{-webkit-transform:perspective(500px) rotateX(-80deg);transform:perspective(500px) rotateX(-80deg);opacity:0}
	100%{-webkit-transform:perspective(500px) rotateX(0);transform:perspective(500px) rotateX(0);opacity:1}
}
.flipInHorTop{
	animation-name:flipInHorTop;
	animation-timing-function:cubic-bezier(0.250, 0.460, 0.450, 0.940);
}

@keyframes flipInVerRight{
	0%{-webkit-transform:perspective(500px) rotateY(-80deg);transform:perspective(500px) rotateY(-80deg);opacity:0}
	100%{-webkit-transform:perspective(500px) rotateY(0);transform:perspective(500px) rotateY(0);opacity:1}
}
.flipInVerRight{
	animation-name:flipInVerRight;
	animation-timing-function:cubic-bezier(0.250, 0.460, 0.450, 0.940);
}

@keyframes swingInTopFwd{
	0%{-webkit-transform:perspective(500px) rotateX(-100deg);transform:perspective(500px) rotateX(-100deg);-webkit-transform-origin:top;transform-origin:top;opacity:0}
	100%{-webkit-transform:perspective(500px) rotateX(0deg);transform:perspective(500px) rotateX(0deg);-webkit-transform-origin:top;transform-origin:top;opacity:1}
}
.swingInTopFwd{
	animation-name:swingInTopFwd;
	animation-timing-function:cubic-bezier(.175,.885,.32,1.275);
}

@keyframes swingInLftFwd{
	0%{-webkit-transform:perspective(500px) rotateY(100deg);transform:perspective(500px) rotateY(100deg);-webkit-transform-origin:left;transform-origin:left;opacity:0}
	100%{-webkit-transform:perspective(500px) rotateY(0);transform:perspective(500px) rotateY(0);-webkit-transform-origin:left;transform-origin:left;opacity:1}
}
.swingInLftFwd{
	animation-name:swingInLftFwd;
	animation-timing-function:cubic-bezier(.175,.885,.32,1.275);
}

@keyframes fadeInFwd{
	0%{-webkit-transform:perspective(500px) translateZ(-80px);transform:perspective(500px) translateZ(-80px);opacity:0}
	100%{-webkit-transform:perspective(500px) translateZ(0);transform:perspective(500px) translateZ(0);opacity:1}
}
.fadeInFwd{
	animation-name:fadeInFwd;
	animation-timing-function:cubic-bezier(.39,.575,.565,1.000);
}

@keyframes fadeInBck{
	0%{-webkit-transform:perspective(500px) translateZ(80px);transform:perspective(500px) translateZ(80px);opacity:0}
	100%{-webkit-transform:perspective(500px) translateZ(0);transform:perspective(500px) translateZ(0);opacity:1}
}
.fadeInBck{
	animation-name:fadeInBck;
	animation-timing-function:cubic-bezier(.39,.575,.565,1.000);
}

@keyframes stuckFlipUpOpacity{
	0%{-webkit-transform:perspective(500px) translateY(60px) scaleY(0.75) rotateX(-40deg);transform:perspective(500px) translateY(60px) scaleY(0.75) rotateX(-40deg);opacity:0}
	100%{-webkit-transform:perspective(500px) translateY(0px) scale(1) rotateX(0deg);transform:perspective(500px) translateY(0px) scale(1) rotateX(0deg);opacity:1}
}
.stuckFlipUpOpacity{
	animation-name:stuckFlipUpOpacity;
	animation-timing-function:cubic-bezier(0.23, 1.0, 0.32, 1.0);
}

@keyframes flip-l-r-s{
	0%{-webkit-transform:perspective(500px) translateX(40px) scaleX(0.75) scaleY(0.75) rotateY(-25deg);transform:perspective(500px) translateX(40px) scaleX(0.75) scaleY(0.75) rotateY(-25deg);opacity:0}
	100%{-webkit-transform:perspective(500px) translateX(0px) scaleX(1) scaleY(1) rotateY(0deg);transform:perspective(500px) translateX(0px) scaleX(1) scaleY(1) rotateY(0deg);opacity:1}
}
.flip-l-r-s{
	animation-name:flip-l-r-s;
	animation-timing-function:cubic-bezier(0.23, 1.0, 0.32, 1.0);
}

@keyframes flip-r-r-s{
	0%{-webkit-transform:perspective(500px) translateX(-40px) scaleX(0.75) scaleY(0.75) rotateY(25deg);transform:perspective(500px) translateX(-40px) scaleX(0.75) scaleY(0.75) rotateY(25deg);opacity:0}
	100%{-webkit-transform:perspective(500px) translateX(0px) scaleX(1) scaleY(1) rotateY(0deg);transform:perspective(500px) translateX(0px) scaleX(1) scaleY(1) rotateY(0deg);opacity:1}
}
.flip-r-r-s{
	animation-name:flip-r-r-s;
	animation-timing-function:cubic-bezier(0.23, 1.0, 0.32, 1.0);
}

@keyframes trackingInExpand{
	0%{letter-spacing:-.5em;opacity:0}
	40%{opacity:.6}
	100%{opacity:1}
}
.trackingInExpand{
	animation-name:trackingInExpand;
	animation-timing-function:cubic-bezier(.215,.61,.355,1.000);
}

.rotateIn2BrCw{
	animation-name:rotateIn2BrCw;
	animation-timing-function:cubic-bezier(0.250, 0.460, 0.450, 0.940);
}
.rotateIn2BlCcw{
	animation-name:rotateIn2BlCcw;
	animation-timing-function:cubic-bezier(0.250, 0.460, 0.450, 0.940);
}

@keyframes srcIcnAnimOn{
	0%{transform:scale(1,1)}
	50%{transform:scale(2.5,2.5);opacity:0;}
	51%{transform:scale(0,0);opacity:0;}
	100%{transform:scale(1,1);opacity:1;}
}
@keyframes srcIcnAnimOff{
	0%{transform:scale(1,1);opacity:1;}
	50%{transform:scale(0,0);opacity:0;}
	51%{transform:scale(2.5,2.5);opacity:0;}
	100%{transform:scale(1,1)}
}
.srcIcn a:hover .icon{
	animation-name:srcIcnAnimOn;
	animation-duration:350ms;
}
.srcIcn a .icon{
	animation-name:srcIcnAnimOff;
	animation-duration:350ms;
}

/* Waved */
.waved{
	z-index:0;
	position:absolute;
	top:50%;
	left:50%;
	margin-top:-10px;
	margin-left:-10px;
	width:20px;
	height:20px;
	background-repeat:no-repeat;
	background-position:50%;
	margin-bottom:1rem;
}
.waved > div:nth-of-type(2){
	-webkit-animation-delay:0.2s;
	animation-delay:0.2s;
}
.waved > div:nth-of-type(3){
	-webkit-animation-delay:0.5s;
	animation-delay:0.5s;
}
.wave{
	position:absolute;
	top:50%;
	left:50%;
	border-radius:50%;
	border:10px solid #eee;
	width:50px;
	height:50px;
	-webkit-transform:translate(-50%,-50%);
	-ms-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);
	-webkit-animation:animation-waved 2s infinite;
	animation:animation-waved 2s infinite;
}
@-webkit-keyframes animation-waved
{
	0%{
		width:20px;
		height:20px;
		border:40px solid #957CF5;
		opacity:0;
	}
	50%{
		opacity:.1;
	}
	90%{
		width:450px;
		height:450px;
		border:2px solid #957CF5;
		opacity:0;
	}
	100%{
		width:1500px;
		height:1500px;
		border:2px solid #957CF5;
		opacity:0;
	}
}
@keyframes animation-waved
{
	0%{
		width:20px;
		height:20px;
		border:40px solid #957CF5;
		opacity:0;
	}
	50%{
		opacity:.1;
	}
	90%{
		width:450px;
		height:450px;
		border:2px solid #957CF5;
		opacity:0;
	}
	100%{
		width:1500px;
		height:1500px;
		border:2px solid #957CF5;
		opacity:0;
	}
}