@charset "UTF-8";

/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2016 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;
}

.animated.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: .75s;
  animation-duration: .75s;
}

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-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-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-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-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-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 {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-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-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-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-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-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);
  }
}

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

@-webkit-keyframes flash {
  from, 50%, to {
    opacity: 1;
  }

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

@keyframes flash {
  from, 50%, to {
    opacity: 1;
  }

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

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

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

@-webkit-keyframes pulse {
  from {
    -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);
  }

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

@keyframes pulse {
  from {
    -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);
  }

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

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

@-webkit-keyframes rubberBand {
  from {
    -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);
  }

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

@keyframes rubberBand {
  from {
    -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);
  }

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

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

@-webkit-keyframes shake {
  from, to {
    -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 {
  from, to {
    -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);
  }
}

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

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

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

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

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

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

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

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

@-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);
  }

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

@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);
  }

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

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

@-webkit-keyframes tada {
  from {
    -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);
  }

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

@keyframes tada {
  from {
    -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);
  }

  to {
    -webkit-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 {
  from {
    -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);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes wobble {
  from {
    -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);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

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

@-webkit-keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none;
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

@keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none;
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center;
}

@-webkit-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-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);
  }

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

@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-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);
  }

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

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

@-webkit-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-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);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-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);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

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

@-webkit-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-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);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-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);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

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

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

  from {
    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);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

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

  from {
    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);
  }

  to {
    -webkit-transform: none;
    transform: none;
  }
}

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

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

  from {
    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);
  }

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

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

  from {
    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);
  }

  to {
    -webkit-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);
  }

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

@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);
  }

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

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

@-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);
  }

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

@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);
  }

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

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

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

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

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

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

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

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

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

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

  to {
    opacity: 0;
    -webkit-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);
  }

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

@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);
  }

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

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

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

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

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

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }

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

@keyframes fadeOutDown {
  from {
    opacity: 1;
  }

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

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

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

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

@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

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

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

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

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

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

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

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

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

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

@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

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

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

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }

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

@keyframes fadeOutRight {
  from {
    opacity: 1;
  }

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

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

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

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

@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

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

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

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }

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

@keyframes fadeOutUp {
  from {
    opacity: 1;
  }

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

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

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

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

@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

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

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

@-webkit-keyframes flip {
  from {
    -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;
  }

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

@keyframes flip {
  from {
    -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;
  }

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

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

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-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-animation-timing-function: ease-in;
    animation-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);
  }

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

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-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-animation-timing-function: ease-in;
    animation-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);
  }

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

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

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-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-animation-timing-function: ease-in;
    animation-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);
  }

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

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-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-animation-timing-function: ease-in;
    animation-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);
  }

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

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

@-webkit-keyframes flipOutX {
  from {
    -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;
  }

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

@keyframes flipOutX {
  from {
    -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;
  }

  to {
    -webkit-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-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  from {
    -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;
  }

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

@keyframes flipOutY {
  from {
    -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;
  }

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

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

@-webkit-keyframes lightSpeedIn {
  from {
    -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;
  }

  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes lightSpeedIn {
  from {
    -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;
  }

  to {
    -webkit-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 {
  from {
    opacity: 1;
  }

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

@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-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 {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -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 rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

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

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

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

  to {
    -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 {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

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

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

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -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 rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

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

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

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

  to {
    -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 {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-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;
  }

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

@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;
  }

  to {
    -webkit-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 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

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

  to {
    opacity: 1;
    -webkit-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 {
  from {
    opacity: 1;
  }

  to {
    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 {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-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 {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

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

  50% {
    opacity: 1;
  }
}

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

@-webkit-keyframes zoomInDown {
  from {
    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 {
  from {
    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);
  }
}

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

@-webkit-keyframes zoomInLeft {
  from {
    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 zoomInLeft {
  from {
    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);
  }
}

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

@-webkit-keyframes zoomInRight {
  from {
    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 {
  from {
    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);
  }
}

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

@-webkit-keyframes zoomInUp {
  from {
    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 {
  from {
    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);
  }
}

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

@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }

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

  to {
    opacity: 0;
  }
}

@keyframes zoomOut {
  from {
    opacity: 1;
  }

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

  to {
    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);
  }

  to {
    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);
    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);
  }

  to {
    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);
  }
}

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

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

  to {
    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 zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  to {
    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;
  }
}

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

@-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);
  }

  to {
    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);
    transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  to {
    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;
  }
}

.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);
  }

  to {
    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);
    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);
  }

  to {
    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);
  }
}

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

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

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

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

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

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

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

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

@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

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

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

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

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

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

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

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

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

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

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

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

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

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

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

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

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

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

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

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

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

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

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

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

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

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

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

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

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

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

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

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

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


/**/

/*!
 * Hover.css (http://ianlunn.github.io/Hover/)
 * Version: 2.0.2
 * Author: Ian Lunn @IanLunn
 * Author URL: http://ianlunn.co.uk/
 * Github: https://github.com/IanLunn/Hover

 * Made available under a MIT License:
 * http://www.opensource.org/licenses/mit-license.php

 * Hover.css Copyright Ian Lunn 2014. Generated with Sass.
 */
/* 2D TRANSITIONS */
/* Grow */
.hvr-grow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-grow:hover, .hvr-grow:focus, .hvr-grow:active {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

/* Shrink */
.hvr-shrink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-shrink:hover, .hvr-shrink:focus, .hvr-shrink:active {
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
}

/* Pulse */
@-webkit-keyframes hvr-pulse {
  25% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

  75% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}

@keyframes hvr-pulse {
  25% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

  75% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}

.hvr-pulse {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-pulse:hover, .hvr-pulse:focus, .hvr-pulse:active {
  -webkit-animation-name: hvr-pulse;
  animation-name: hvr-pulse;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/* Pulse Grow */
@-webkit-keyframes hvr-pulse-grow {
  to {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}

@keyframes hvr-pulse-grow {
  to {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}

.hvr-pulse-grow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-pulse-grow:hover, .hvr-pulse-grow:focus, .hvr-pulse-grow:active {
  -webkit-animation-name: hvr-pulse-grow;
  animation-name: hvr-pulse-grow;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

/* Pulse Shrink */
@-webkit-keyframes hvr-pulse-shrink {
  to {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}

@keyframes hvr-pulse-shrink {
  to {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
}

.hvr-pulse-shrink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-pulse-shrink:hover, .hvr-pulse-shrink:focus, .hvr-pulse-shrink:active {
  -webkit-animation-name: hvr-pulse-shrink;
  animation-name: hvr-pulse-shrink;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

/* Push */
@-webkit-keyframes hvr-push {
  50% {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }

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

@keyframes hvr-push {
  50% {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }

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

.hvr-push {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-push:hover, .hvr-push:focus, .hvr-push:active {
  -webkit-animation-name: hvr-push;
  animation-name: hvr-push;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Pop */
@-webkit-keyframes hvr-pop {
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}

@keyframes hvr-pop {
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}

.hvr-pop {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-pop:hover, .hvr-pop:focus, .hvr-pop:active {
  -webkit-animation-name: hvr-pop;
  animation-name: hvr-pop;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Bounce In */
.hvr-bounce-in {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-in:hover, .hvr-bounce-in:focus, .hvr-bounce-in:active {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

/* Bounce Out */
.hvr-bounce-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-out:hover, .hvr-bounce-out:focus, .hvr-bounce-out:active {
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
  -webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

/* Rotate */
.hvr-rotate {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-rotate:hover, .hvr-rotate:focus, .hvr-rotate:active {
  -webkit-transform: rotate(4deg);
  transform: rotate(4deg);
}

/* Grow Rotate */
.hvr-grow-rotate {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-grow-rotate:hover, .hvr-grow-rotate:focus, .hvr-grow-rotate:active {
  -webkit-transform: scale(1.1) rotate(4deg);
  transform: scale(1.1) rotate(4deg);
}

/* Float */
.hvr-float {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-float:hover, .hvr-float:focus, .hvr-float:active {
  -webkit-transform: translateY(-8px);
  transform: translateY(-8px);
}

/* Sink */
.hvr-sink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-sink:hover, .hvr-sink:focus, .hvr-sink:active {
  -webkit-transform: translateY(8px);
  transform: translateY(8px);
}

/* Bob */
@-webkit-keyframes hvr-bob {
  0% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }

  50% {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px);
  }

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

@keyframes hvr-bob {
  0% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }

  50% {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px);
  }

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

@-webkit-keyframes hvr-bob-float {
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}

@keyframes hvr-bob-float {
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}

.hvr-bob {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-bob:hover, .hvr-bob:focus, .hvr-bob:active {
  -webkit-animation-name: hvr-bob-float, hvr-bob;
  animation-name: hvr-bob-float, hvr-bob;
  -webkit-animation-duration: .3s, 1.5s;
  animation-duration: .3s, 1.5s;
  -webkit-animation-delay: 0s, .3s;
  animation-delay: 0s, .3s;
  -webkit-animation-timing-function: ease-out, ease-in-out;
  animation-timing-function: ease-out, ease-in-out;
  -webkit-animation-iteration-count: 1, infinite;
  animation-iteration-count: 1, infinite;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-direction: normal, alternate;
  animation-direction: normal, alternate;
}

/* Hang */
@-webkit-keyframes hvr-hang {
  0% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }

  50% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }

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

@keyframes hvr-hang {
  0% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }

  50% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }

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

@-webkit-keyframes hvr-hang-sink {
  100% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
}

@keyframes hvr-hang-sink {
  100% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
}

.hvr-hang {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-hang:hover, .hvr-hang:focus, .hvr-hang:active {
  -webkit-animation-name: hvr-hang-sink, hvr-hang;
  animation-name: hvr-hang-sink, hvr-hang;
  -webkit-animation-duration: .3s, 1.5s;
  animation-duration: .3s, 1.5s;
  -webkit-animation-delay: 0s, .3s;
  animation-delay: 0s, .3s;
  -webkit-animation-timing-function: ease-out, ease-in-out;
  animation-timing-function: ease-out, ease-in-out;
  -webkit-animation-iteration-count: 1, infinite;
  animation-iteration-count: 1, infinite;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-direction: normal, alternate;
  animation-direction: normal, alternate;
}

/* Skew */
.hvr-skew {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-skew:hover, .hvr-skew:focus, .hvr-skew:active {
  -webkit-transform: skew(-10deg);
  transform: skew(-10deg);
}

/* Skew Forward */
.hvr-skew-forward {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}
.hvr-skew-forward:hover, .hvr-skew-forward:focus, .hvr-skew-forward:active {
  -webkit-transform: skew(-10deg);
  transform: skew(-10deg);
}

/* Skew Backward */
.hvr-skew-backward {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}
.hvr-skew-backward:hover, .hvr-skew-backward:focus, .hvr-skew-backward:active {
  -webkit-transform: skew(10deg);
  transform: skew(10deg);
}

/* Wobble Vertical */
@-webkit-keyframes hvr-wobble-vertical {
  16.65% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }

  33.3% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }

  49.95% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }

  66.6% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }

  83.25% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }

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

@keyframes hvr-wobble-vertical {
  16.65% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }

  33.3% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }

  49.95% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }

  66.6% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }

  83.25% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }

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

.hvr-wobble-vertical {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-wobble-vertical:hover, .hvr-wobble-vertical:focus, .hvr-wobble-vertical:active {
  -webkit-animation-name: hvr-wobble-vertical;
  animation-name: hvr-wobble-vertical;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble Horizontal */
@-webkit-keyframes hvr-wobble-horizontal {
  16.65% {
    -webkit-transform: translateX(8px);
    transform: translateX(8px);
  }

  33.3% {
    -webkit-transform: translateX(-6px);
    transform: translateX(-6px);
  }

  49.95% {
    -webkit-transform: translateX(4px);
    transform: translateX(4px);
  }

  66.6% {
    -webkit-transform: translateX(-2px);
    transform: translateX(-2px);
  }

  83.25% {
    -webkit-transform: translateX(1px);
    transform: translateX(1px);
  }

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

@keyframes hvr-wobble-horizontal {
  16.65% {
    -webkit-transform: translateX(8px);
    transform: translateX(8px);
  }

  33.3% {
    -webkit-transform: translateX(-6px);
    transform: translateX(-6px);
  }

  49.95% {
    -webkit-transform: translateX(4px);
    transform: translateX(4px);
  }

  66.6% {
    -webkit-transform: translateX(-2px);
    transform: translateX(-2px);
  }

  83.25% {
    -webkit-transform: translateX(1px);
    transform: translateX(1px);
  }

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

.hvr-wobble-horizontal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-wobble-horizontal:hover, .hvr-wobble-horizontal:focus, .hvr-wobble-horizontal:active {
  -webkit-animation-name: hvr-wobble-horizontal;
  animation-name: hvr-wobble-horizontal;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble To Bottom Right */
@-webkit-keyframes hvr-wobble-to-bottom-right {
  16.65% {
    -webkit-transform: translate(8px, 8px);
    transform: translate(8px, 8px);
  }

  33.3% {
    -webkit-transform: translate(-6px, -6px);
    transform: translate(-6px, -6px);
  }

  49.95% {
    -webkit-transform: translate(4px, 4px);
    transform: translate(4px, 4px);
  }

  66.6% {
    -webkit-transform: translate(-2px, -2px);
    transform: translate(-2px, -2px);
  }

  83.25% {
    -webkit-transform: translate(1px, 1px);
    transform: translate(1px, 1px);
  }

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

@keyframes hvr-wobble-to-bottom-right {
  16.65% {
    -webkit-transform: translate(8px, 8px);
    transform: translate(8px, 8px);
  }

  33.3% {
    -webkit-transform: translate(-6px, -6px);
    transform: translate(-6px, -6px);
  }

  49.95% {
    -webkit-transform: translate(4px, 4px);
    transform: translate(4px, 4px);
  }

  66.6% {
    -webkit-transform: translate(-2px, -2px);
    transform: translate(-2px, -2px);
  }

  83.25% {
    -webkit-transform: translate(1px, 1px);
    transform: translate(1px, 1px);
  }

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

.hvr-wobble-to-bottom-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-wobble-to-bottom-right:hover, .hvr-wobble-to-bottom-right:focus, .hvr-wobble-to-bottom-right:active {
  -webkit-animation-name: hvr-wobble-to-bottom-right;
  animation-name: hvr-wobble-to-bottom-right;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble To Top Right */
@-webkit-keyframes hvr-wobble-to-top-right {
  16.65% {
    -webkit-transform: translate(8px, -8px);
    transform: translate(8px, -8px);
  }

  33.3% {
    -webkit-transform: translate(-6px, 6px);
    transform: translate(-6px, 6px);
  }

  49.95% {
    -webkit-transform: translate(4px, -4px);
    transform: translate(4px, -4px);
  }

  66.6% {
    -webkit-transform: translate(-2px, 2px);
    transform: translate(-2px, 2px);
  }

  83.25% {
    -webkit-transform: translate(1px, -1px);
    transform: translate(1px, -1px);
  }

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

@keyframes hvr-wobble-to-top-right {
  16.65% {
    -webkit-transform: translate(8px, -8px);
    transform: translate(8px, -8px);
  }

  33.3% {
    -webkit-transform: translate(-6px, 6px);
    transform: translate(-6px, 6px);
  }

  49.95% {
    -webkit-transform: translate(4px, -4px);
    transform: translate(4px, -4px);
  }

  66.6% {
    -webkit-transform: translate(-2px, 2px);
    transform: translate(-2px, 2px);
  }

  83.25% {
    -webkit-transform: translate(1px, -1px);
    transform: translate(1px, -1px);
  }

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

.hvr-wobble-to-top-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-wobble-to-top-right:hover, .hvr-wobble-to-top-right:focus, .hvr-wobble-to-top-right:active {
  -webkit-animation-name: hvr-wobble-to-top-right;
  animation-name: hvr-wobble-to-top-right;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble Top */
@-webkit-keyframes hvr-wobble-top {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }

  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }

  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }

  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }

  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }

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

@keyframes hvr-wobble-top {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }

  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }

  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }

  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }

  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }

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

.hvr-wobble-top {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
}
.hvr-wobble-top:hover, .hvr-wobble-top:focus, .hvr-wobble-top:active {
  -webkit-animation-name: hvr-wobble-top;
  animation-name: hvr-wobble-top;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble Bottom */
@-webkit-keyframes hvr-wobble-bottom {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }

  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }

  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }

  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }

  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }

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

@keyframes hvr-wobble-bottom {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }

  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }

  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }

  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }

  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }

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

.hvr-wobble-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
}
.hvr-wobble-bottom:hover, .hvr-wobble-bottom:focus, .hvr-wobble-bottom:active {
  -webkit-animation-name: hvr-wobble-bottom;
  animation-name: hvr-wobble-bottom;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Wobble Skew */
@-webkit-keyframes hvr-wobble-skew {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }

  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }

  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }

  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }

  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }

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

@keyframes hvr-wobble-skew {
  16.65% {
    -webkit-transform: skew(-12deg);
    transform: skew(-12deg);
  }

  33.3% {
    -webkit-transform: skew(10deg);
    transform: skew(10deg);
  }

  49.95% {
    -webkit-transform: skew(-6deg);
    transform: skew(-6deg);
  }

  66.6% {
    -webkit-transform: skew(4deg);
    transform: skew(4deg);
  }

  83.25% {
    -webkit-transform: skew(-2deg);
    transform: skew(-2deg);
  }

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

.hvr-wobble-skew {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-wobble-skew:hover, .hvr-wobble-skew:focus, .hvr-wobble-skew:active {
  -webkit-animation-name: hvr-wobble-skew;
  animation-name: hvr-wobble-skew;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Buzz */
@-webkit-keyframes hvr-buzz {
  50% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  100% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
}

@keyframes hvr-buzz {
  50% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  100% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
}

.hvr-buzz {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-buzz:hover, .hvr-buzz:focus, .hvr-buzz:active {
  -webkit-animation-name: hvr-buzz;
  animation-name: hvr-buzz;
  -webkit-animation-duration: 0.15s;
  animation-duration: 0.15s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/* Buzz Out */
@-webkit-keyframes hvr-buzz-out {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }

  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }

  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }

  60% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }

  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }

  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }

  90% {
    -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0);
  }

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

@keyframes hvr-buzz-out {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }

  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }

  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }

  60% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }

  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }

  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }

  90% {
    -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0);
  }

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

.hvr-buzz-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
}
.hvr-buzz-out:hover, .hvr-buzz-out:focus, .hvr-buzz-out:active {
  -webkit-animation-name: hvr-buzz-out;
  animation-name: hvr-buzz-out;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* BACKGROUND TRANSITIONS */
/* Fade */
.hvr-fade {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  overflow: hidden;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
}
.hvr-fade:hover, .hvr-fade:focus, .hvr-fade:active {
  background-color: #2098d1;
  color: white;
}

/* Back Pulse */
@-webkit-keyframes hvr-back-pulse {
  50% {
    background-color: rgba(32, 152, 209, 0.75);
  }
}

@keyframes hvr-back-pulse {
  50% {
    background-color: rgba(32, 152, 209, 0.75);
  }
}

.hvr-back-pulse {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  overflow: hidden;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-property: color, background-color;
  transition-property: color, background-color;
}
.hvr-back-pulse:hover, .hvr-back-pulse:focus, .hvr-back-pulse:active {
  -webkit-animation-name: hvr-back-pulse;
  animation-name: hvr-back-pulse;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  background-color: #2098d1;
  background-color: #2098d1;
  color: white;
}

/* Sweep To Right */
.hvr-sweep-to-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-sweep-to-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098d1;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-sweep-to-right:hover, .hvr-sweep-to-right:focus, .hvr-sweep-to-right:active {
  color: white;
}
.hvr-sweep-to-right:hover:before, .hvr-sweep-to-right:focus:before, .hvr-sweep-to-right:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

/* Sweep To Left */
.hvr-sweep-to-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-sweep-to-left:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098d1;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-sweep-to-left:hover, .hvr-sweep-to-left:focus, .hvr-sweep-to-left:active {
  color: white;
}
.hvr-sweep-to-left:hover:before, .hvr-sweep-to-left:focus:before, .hvr-sweep-to-left:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

/* Sweep To Bottom */
.hvr-sweep-to-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-sweep-to-bottom:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098d1;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 0;
  transform-origin: 50% 0;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-sweep-to-bottom:hover, .hvr-sweep-to-bottom:focus, .hvr-sweep-to-bottom:active {
  color: white;
}
.hvr-sweep-to-bottom:hover:before, .hvr-sweep-to-bottom:focus:before, .hvr-sweep-to-bottom:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}

/* Sweep To Top */
.hvr-sweep-to-top {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-sweep-to-top:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098d1;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-sweep-to-top:hover, .hvr-sweep-to-top:focus, .hvr-sweep-to-top:active {
  color: white;
}
.hvr-sweep-to-top:hover:before, .hvr-sweep-to-top:focus:before, .hvr-sweep-to-top:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}

/* Bounce To Right */
.hvr-bounce-to-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-to-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098d1;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-bounce-to-right:hover, .hvr-bounce-to-right:focus, .hvr-bounce-to-right:active {
  color: white;
}
.hvr-bounce-to-right:hover:before, .hvr-bounce-to-right:focus:before, .hvr-bounce-to-right:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

/* Bounce To Left */
.hvr-bounce-to-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-to-left:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098d1;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-bounce-to-left:hover, .hvr-bounce-to-left:focus, .hvr-bounce-to-left:active {
  color: white;
}
.hvr-bounce-to-left:hover:before, .hvr-bounce-to-left:focus:before, .hvr-bounce-to-left:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

/* Bounce To Bottom */
.hvr-bounce-to-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-to-bottom:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098d1;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 0;
  transform-origin: 50% 0;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-bounce-to-bottom:hover, .hvr-bounce-to-bottom:focus, .hvr-bounce-to-bottom:active {
  color: white;
}
.hvr-bounce-to-bottom:hover:before, .hvr-bounce-to-bottom:focus:before, .hvr-bounce-to-bottom:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

/* Bounce To Top */
.hvr-bounce-to-top {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-to-top:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098d1;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-bounce-to-top:hover, .hvr-bounce-to-top:focus, .hvr-bounce-to-top:active {
  color: white;
}
.hvr-bounce-to-top:hover:before, .hvr-bounce-to-top:focus:before, .hvr-bounce-to-top:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

/* Radial Out */
.hvr-radial-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
  background: #e1e1e1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-radial-out:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098d1;
  border-radius: 100%;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-radial-out:hover, .hvr-radial-out:focus, .hvr-radial-out:active {
  color: white;
}
.hvr-radial-out:hover:before, .hvr-radial-out:focus:before, .hvr-radial-out:active:before {
  -webkit-transform: scale(2);
  transform: scale(2);
}

/* Radial In */
.hvr-radial-in {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
  background: #2098d1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-radial-in:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #e1e1e1;
  border-radius: 100%;
  -webkit-transform: scale(2);
  transform: scale(2);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-radial-in:hover, .hvr-radial-in:focus, .hvr-radial-in:active {
  color: white;
}
.hvr-radial-in:hover:before, .hvr-radial-in:focus:before, .hvr-radial-in:active:before {
  -webkit-transform: scale(0);
  transform: scale(0);
}

/* Rectangle In */
.hvr-rectangle-in {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  background: #2098d1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-rectangle-in:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #e1e1e1;
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-rectangle-in:hover, .hvr-rectangle-in:focus, .hvr-rectangle-in:active {
  color: white;
}
.hvr-rectangle-in:hover:before, .hvr-rectangle-in:focus:before, .hvr-rectangle-in:active:before {
  -webkit-transform: scale(0);
  transform: scale(0);
}

/* Rectangle Out */
.hvr-rectangle-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  background: #e1e1e1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-rectangle-out:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098d1;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-rectangle-out:hover, .hvr-rectangle-out:focus, .hvr-rectangle-out:active {
  color: white;
}
.hvr-rectangle-out:hover:before, .hvr-rectangle-out:focus:before, .hvr-rectangle-out:active:before {
  -webkit-transform: scale(1);
  transform: scale(1);
}

/* Shutter In Horizontal */
.hvr-shutter-in-horizontal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  background: #2098d1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-shutter-in-horizontal:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #e1e1e1;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-shutter-in-horizontal:hover, .hvr-shutter-in-horizontal:focus, .hvr-shutter-in-horizontal:active {
  color: white;
}
.hvr-shutter-in-horizontal:hover:before, .hvr-shutter-in-horizontal:focus:before, .hvr-shutter-in-horizontal:active:before {
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
}

/* Shutter Out Horizontal */
.hvr-shutter-out-horizontal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  background: #e1e1e1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-shutter-out-horizontal:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #2098d1;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-shutter-out-horizontal:hover, .hvr-shutter-out-horizontal:focus, .hvr-shutter-out-horizontal:active {
  color: white;
}
.hvr-shutter-out-horizontal:hover:before, .hvr-shutter-out-horizontal:focus:before, .hvr-shutter-out-horizontal:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

/* Shutter In Vertical */
.hvr-shutter-in-vertical {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  background: #2098d1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-shutter-in-vertical:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #e1e1e1;
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-shutter-in-vertical:hover, .hvr-shutter-in-vertical:focus, .hvr-shutter-in-vertical:active {
  color: white;
}
.hvr-shutter-in-vertical:hover:before, .hvr-shutter-in-vertical:focus:before, .hvr-shutter-in-vertical:active:before {
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
}

/* Shutter Out Vertical */
.hvr-shutter-out-vertical {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  background: #e1e1e1;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-shutter-out-vertical:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #2098d1;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-shutter-out-vertical:hover, .hvr-shutter-out-vertical:focus, .hvr-shutter-out-vertical:active {
  color: white;
}
.hvr-shutter-out-vertical:hover:before, .hvr-shutter-out-vertical:focus:before, .hvr-shutter-out-vertical:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}

/* BORDER TRANSITIONS */
/* Border Fade */
.hvr-border-fade {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
  box-shadow: inset 0 0 0 4px #e1e1e1, 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}
.hvr-border-fade:hover, .hvr-border-fade:focus, .hvr-border-fade:active {
  box-shadow: inset 0 0 0 4px #2098d1, 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}

/* Hollow */
.hvr-hollow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: background;
  transition-property: background;
  box-shadow: inset 0 0 0 4px #e1e1e1, 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}
.hvr-hollow:hover, .hvr-hollow:focus, .hvr-hollow:active {
  background: none;
}

/* Trim */
.hvr-trim {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-trim:before {
  content: '';
  position: absolute;
  border: white solid 4px;
  top: 4px;
  left: 4px;
  right: 4px;
  bottom: 4px;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}
.hvr-trim:hover:before, .hvr-trim:focus:before, .hvr-trim:active:before {
  opacity: 1;
}

/* Ripple Out */
@-webkit-keyframes hvr-ripple-out {
  100% {
    top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0;
  }
}

@keyframes hvr-ripple-out {
  100% {
    top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0;
  }
}

.hvr-ripple-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-ripple-out:before {
  content: '';
  position: absolute;
  border: #e1e1e1 solid 6px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
}
.hvr-ripple-out:hover:before, .hvr-ripple-out:focus:before, .hvr-ripple-out:active:before {
  -webkit-animation-name: hvr-ripple-out;
  animation-name: hvr-ripple-out;
}

/* Ripple In */
@-webkit-keyframes hvr-ripple-in {
  100% {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
  }
}

@keyframes hvr-ripple-in {
  100% {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
  }
}

.hvr-ripple-in {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-ripple-in:before {
  content: '';
  position: absolute;
  border: #e1e1e1 solid 4px;
  top: -12px;
  right: -12px;
  bottom: -12px;
  left: -12px;
  opacity: 0;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
}
.hvr-ripple-in:hover:before, .hvr-ripple-in:focus:before, .hvr-ripple-in:active:before {
  -webkit-animation-name: hvr-ripple-in;
  animation-name: hvr-ripple-in;
}

/* Outline Out */
.hvr-outline-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-outline-out:before {
  content: '';
  position: absolute;
  border: #e1e1e1 solid 4px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: top, right, bottom, left;
  transition-property: top, right, bottom, left;
}
.hvr-outline-out:hover:before, .hvr-outline-out:focus:before, .hvr-outline-out:active:before {
  top: -8px;
  right: -8px;
  bottom: -8px;
  left: -8px;
}

/* Outline In */
.hvr-outline-in {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-outline-in:before {
  pointer-events: none;
  content: '';
  position: absolute;
  border: #e1e1e1 solid 4px;
  top: -16px;
  right: -16px;
  bottom: -16px;
  left: -16px;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: top, right, bottom, left;
  transition-property: top, right, bottom, left;
}
.hvr-outline-in:hover:before, .hvr-outline-in:focus:before, .hvr-outline-in:active:before {
  top: -8px;
  right: -8px;
  bottom: -8px;
  left: -8px;
  opacity: 1;
}

/* Round Corners */
.hvr-round-corners {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: border-radius;
  transition-property: border-radius;
}
.hvr-round-corners:hover, .hvr-round-corners:focus, .hvr-round-corners:active {
  border-radius: 1em;
}

/* Underline From Left */
.hvr-underline-from-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
}
.hvr-underline-from-left:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 100%;
  bottom: 0;
  background: #2098d1;
  height: 4px;
  -webkit-transition-property: right;
  transition-property: right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-from-left:hover:before, .hvr-underline-from-left:focus:before, .hvr-underline-from-left:active:before {
  right: 0;
}

/* Underline From Center */
.hvr-underline-from-center {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
}
.hvr-underline-from-center:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #2098d1;
  height: 4px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-from-center:hover:before, .hvr-underline-from-center:focus:before, .hvr-underline-from-center:active:before {
  left: 0;
  right: 0;
}

/* Underline From Right */
.hvr-underline-from-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
}
.hvr-underline-from-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 100%;
  right: 0;
  bottom: 0;
  background: #2098d1;
  height: 4px;
  -webkit-transition-property: left;
  transition-property: left;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-from-right:hover:before, .hvr-underline-from-right:focus:before, .hvr-underline-from-right:active:before {
  left: 0;
}

/* Overline From Left */
.hvr-overline-from-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
}
.hvr-overline-from-left:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 100%;
  top: 0;
  background: #2098d1;
  height: 4px;
  -webkit-transition-property: right;
  transition-property: right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-overline-from-left:hover:before, .hvr-overline-from-left:focus:before, .hvr-overline-from-left:active:before {
  right: 0;
}

/* Overline From Center */
.hvr-overline-from-center {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
}
.hvr-overline-from-center:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  right: 50%;
  top: 0;
  background: #2098d1;
  height: 4px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-overline-from-center:hover:before, .hvr-overline-from-center:focus:before, .hvr-overline-from-center:active:before {
  left: 0;
  right: 0;
}

/* Overline From Right */
.hvr-overline-from-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
}
.hvr-overline-from-right:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 100%;
  right: 0;
  top: 0;
  background: #2098d1;
  height: 4px;
  -webkit-transition-property: left;
  transition-property: left;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-overline-from-right:hover:before, .hvr-overline-from-right:focus:before, .hvr-overline-from-right:active:before {
  left: 0;
}

/* Reveal */
.hvr-reveal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
}
.hvr-reveal:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  border-color: #2098d1;
  border-style: solid;
  border-width: 0;
  -webkit-transition-property: border-width;
  transition-property: border-width;
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-reveal:hover:before, .hvr-reveal:focus:before, .hvr-reveal:active:before {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  border-width: 4px;
}

/* Underline Reveal */
.hvr-underline-reveal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
}
.hvr-underline-reveal:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2098d1;
  height: 4px;
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-reveal:hover:before, .hvr-underline-reveal:focus:before, .hvr-underline-reveal:active:before {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* Overline Reveal */
.hvr-overline-reveal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
}
.hvr-overline-reveal:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  top: 0;
  background: #2098d1;
  height: 4px;
  -webkit-transform: translateY(-4px);
  transform: translateY(-4px);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-overline-reveal:hover:before, .hvr-overline-reveal:focus:before, .hvr-overline-reveal:active:before {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* SHADOW/GLOW TRANSITIONS */
/* Glow */
.hvr-glow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
}
.hvr-glow:hover, .hvr-glow:focus, .hvr-glow:active {
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}

/* Shadow */
.hvr-shadow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
}
.hvr-shadow:hover, .hvr-shadow:focus, .hvr-shadow:active {
  box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
}

/* Grow Shadow */
.hvr-grow-shadow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow, transform;
  transition-property: box-shadow, transform;
}
.hvr-grow-shadow:hover, .hvr-grow-shadow:focus, .hvr-grow-shadow:active {
  box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

/* Box Shadow Outset */
.hvr-box-shadow-outset {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
}
.hvr-box-shadow-outset:hover, .hvr-box-shadow-outset:focus, .hvr-box-shadow-outset:active {
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.6);
}

/* Box Shadow Inset */
.hvr-box-shadow-inset {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow;
  transition-property: box-shadow;
  box-shadow: inset 0 0 0 rgba(0, 0, 0, 0.6), 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}
.hvr-box-shadow-inset:hover, .hvr-box-shadow-inset:focus, .hvr-box-shadow-inset:active {
  box-shadow: inset 2px 2px 2px rgba(0, 0, 0, 0.6), 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}

/* Float Shadow */
.hvr-float-shadow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-float-shadow:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  top: 100%;
  left: 5%;
  height: 10px;
  width: 90%;
  opacity: 0;
  background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  /* W3C */
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform, opacity;
  transition-property: transform, opacity;
}
.hvr-float-shadow:hover, .hvr-float-shadow:focus, .hvr-float-shadow:active {
  -webkit-transform: translateY(-5px);
  transform: translateY(-5px);
  /* move the element up by 5px */
}
.hvr-float-shadow:hover:before, .hvr-float-shadow:focus:before, .hvr-float-shadow:active:before {
  opacity: 1;
  -webkit-transform: translateY(5px);
  transform: translateY(5px);
  /* move the element down by 5px (it will stay in place because it's attached to the element that also moves up 5px) */
}

/* Shadow Radial */
.hvr-shadow-radial {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-shadow-radial:before, .hvr-shadow-radial:after {
  pointer-events: none;
  position: absolute;
  content: '';
  left: 0;
  width: 100%;
  box-sizing: border-box;
  background-repeat: no-repeat;
  height: 5px;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}
.hvr-shadow-radial:before {
  bottom: 100%;
  background: -webkit-radial-gradient(50% 150%, ellipse, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%);
  background: radial-gradient(ellipse at 50% 150%, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%);
}
.hvr-shadow-radial:after {
  top: 100%;
  background: -webkit-radial-gradient(50% -50%, ellipse, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%);
  background: radial-gradient(ellipse at 50% -50%, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 80%);
}
.hvr-shadow-radial:hover:before, .hvr-shadow-radial:focus:before, .hvr-shadow-radial:active:before, .hvr-shadow-radial:hover:after, .hvr-shadow-radial:focus:after, .hvr-shadow-radial:active:after {
  opacity: 1;
}

/* SPEECH BUBBLES */
/* Bubble Top */
.hvr-bubble-top {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-bubble-top:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  border-style: solid;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  left: calc(50% - 10px);
  top: 0;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent #e1e1e1 transparent;
}
.hvr-bubble-top:hover:before, .hvr-bubble-top:focus:before, .hvr-bubble-top:active:before {
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
}

/* Bubble Right */
.hvr-bubble-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-bubble-right:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  border-style: solid;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  top: calc(50% - 10px);
  right: 0;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #e1e1e1;
}
.hvr-bubble-right:hover:before, .hvr-bubble-right:focus:before, .hvr-bubble-right:active:before {
  -webkit-transform: translateX(10px);
  transform: translateX(10px);
}

/* Bubble Bottom */
.hvr-bubble-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-bubble-bottom:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  border-style: solid;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  left: calc(50% - 10px);
  bottom: 0;
  border-width: 10px 10px 0 10px;
  border-color: #e1e1e1 transparent transparent transparent;
}
.hvr-bubble-bottom:hover:before, .hvr-bubble-bottom:focus:before, .hvr-bubble-bottom:active:before {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}

/* Bubble Left */
.hvr-bubble-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-bubble-left:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  border-style: solid;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  top: calc(50% - 10px);
  left: 0;
  border-width: 10px 10px 10px 0;
  border-color: transparent #e1e1e1 transparent transparent;
}
.hvr-bubble-left:hover:before, .hvr-bubble-left:focus:before, .hvr-bubble-left:active:before {
  -webkit-transform: translateX(-10px);
  transform: translateX(-10px);
}

/* Bubble Float Top */
.hvr-bubble-float-top {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-top:before {
  position: absolute;
  z-index: -1;
  content: '';
  left: calc(50% - 10px);
  top: 0;
  border-style: solid;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent #e1e1e1 transparent;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-top:hover, .hvr-bubble-float-top:focus, .hvr-bubble-float-top:active {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}
.hvr-bubble-float-top:hover:before, .hvr-bubble-float-top:focus:before, .hvr-bubble-float-top:active:before {
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
}

/* Bubble Float Right */
.hvr-bubble-float-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-right:before {
  position: absolute;
  z-index: -1;
  top: calc(50% - 10px);
  right: 0;
  content: '';
  border-style: solid;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #e1e1e1;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-right:hover, .hvr-bubble-float-right:focus, .hvr-bubble-float-right:active {
  -webkit-transform: translateX(-10px);
  transform: translateX(-10px);
}
.hvr-bubble-float-right:hover:before, .hvr-bubble-float-right:focus:before, .hvr-bubble-float-right:active:before {
  -webkit-transform: translateX(10px);
  transform: translateX(10px);
}

/* Bubble Float Bottom */
.hvr-bubble-float-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-bottom:before {
  position: absolute;
  z-index: -1;
  content: '';
  left: calc(50% - 10px);
  bottom: 0;
  border-style: solid;
  border-width: 10px 10px 0 10px;
  border-color: #e1e1e1 transparent transparent transparent;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-bottom:hover, .hvr-bubble-float-bottom:focus, .hvr-bubble-float-bottom:active {
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
}
.hvr-bubble-float-bottom:hover:before, .hvr-bubble-float-bottom:focus:before, .hvr-bubble-float-bottom:active:before {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}

/* Bubble Float Left */
.hvr-bubble-float-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-left:before {
  position: absolute;
  z-index: -1;
  content: '';
  top: calc(50% - 10px);
  left: 0;
  border-style: solid;
  border-width: 10px 10px 10px 0;
  border-color: transparent #e1e1e1 transparent transparent;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-bubble-float-left:hover, .hvr-bubble-float-left:focus, .hvr-bubble-float-left:active {
  -webkit-transform: translateX(10px);
  transform: translateX(10px);
}
.hvr-bubble-float-left:hover:before, .hvr-bubble-float-left:focus:before, .hvr-bubble-float-left:active:before {
  -webkit-transform: translateX(-10px);
  transform: translateX(-10px);
}

/* ICONS */
/* Icon Back */
.hvr-icon-back {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-left: 2.2em;
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
}
.hvr-icon-back:before {
  content: "\f137";
  position: absolute;
  left: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-back:hover:before, .hvr-icon-back:focus:before, .hvr-icon-back:active:before {
  -webkit-transform: translateX(-4px);
  transform: translateX(-4px);
}

/* Icon Forward */
.hvr-icon-forward {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
}
.hvr-icon-forward:before {
  content: "\f138";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-forward:hover:before, .hvr-icon-forward:focus:before, .hvr-icon-forward:active:before {
  -webkit-transform: translateX(4px);
  transform: translateX(4px);
}

/* Icon Down */
@-webkit-keyframes hvr-icon-down {
  0%,
  50%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  25%,
  75% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}

@keyframes hvr-icon-down {
  0%,
  50%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  25%,
  75% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}

/* Icon Down */
.hvr-icon-down {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
}
.hvr-icon-down:before {
  content: "\f01a";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-down:hover:before, .hvr-icon-down:focus:before, .hvr-icon-down:active:before {
  -webkit-animation-name: hvr-icon-down;
  animation-name: hvr-icon-down;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/* Icon Up */
@-webkit-keyframes hvr-icon-up {
  0%,
  50%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  25%,
  75% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

@keyframes hvr-icon-up {
  0%,
  50%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  25%,
  75% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

/* Icon Up */
.hvr-icon-up {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
}
.hvr-icon-up:before {
  content: "\f01b";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-up:hover:before, .hvr-icon-up:focus:before, .hvr-icon-up:active:before {
  -webkit-animation-name: hvr-icon-up;
  animation-name: hvr-icon-up;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/* Icon Spin */
.hvr-icon-spin {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
}
.hvr-icon-spin:before {
  content: "\f021";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-in-out;
  transition-timing-function: ease-in-out;
}
.hvr-icon-spin:hover:before, .hvr-icon-spin:focus:before, .hvr-icon-spin:active:before {
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}

/* Icon Drop */
@-webkit-keyframes hvr-icon-drop {
  0% {
    opacity: 0;
  }

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

  51%,
  100% {
    opacity: 1;
  }
}

@keyframes hvr-icon-drop {
  0% {
    opacity: 0;
  }

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

  51%,
  100% {
    opacity: 1;
  }
}

/* Icon Drop */
.hvr-icon-drop {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
}
.hvr-icon-drop:before {
  content: "\f041";
  position: absolute;
  right: 1em;
  opacity: 1;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-drop:hover:before, .hvr-icon-drop:focus:before, .hvr-icon-drop:active:before {
  opacity: 0;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-animation-name: hvr-icon-drop;
  animation-name: hvr-icon-drop;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  animation-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

/* Icon Fade */
.hvr-icon-fade {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
}
.hvr-icon-fade:before {
  content: "\f00c";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-property: color;
  transition-property: color;
}
.hvr-icon-fade:hover:before, .hvr-icon-fade:focus:before, .hvr-icon-fade:active:before {
  color: #0F9E5E;
}

/* Icon Float Away */
@-webkit-keyframes hvr-icon-float-away {
  0% {
    opacity: 1;
  }

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

@keyframes hvr-icon-float-away {
  0% {
    opacity: 1;
  }

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

/* Icon Float Away */
.hvr-icon-float-away {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
}
.hvr-icon-float-away:before, .hvr-icon-float-away:after {
  content: "\f055";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
}
.hvr-icon-float-away:after {
  opacity: 0;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
.hvr-icon-float-away:hover:after, .hvr-icon-float-away:focus:after, .hvr-icon-float-away:active:after {
  -webkit-animation-name: hvr-icon-float-away;
  animation-name: hvr-icon-float-away;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/* Icon Sink Away */
@-webkit-keyframes hvr-icon-sink-away {
  0% {
    opacity: 1;
  }

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

@keyframes hvr-icon-sink-away {
  0% {
    opacity: 1;
  }

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

/* Icon Sink Away */
.hvr-icon-sink-away {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
}
.hvr-icon-sink-away:before, .hvr-icon-sink-away:after {
  content: "\f056";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-sink-away:after {
  opacity: 0;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
.hvr-icon-sink-away:hover:after, .hvr-icon-sink-away:focus:after, .hvr-icon-sink-away:active:after {
  -webkit-animation-name: hvr-icon-sink-away;
  animation-name: hvr-icon-sink-away;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/* Icon Grow */
.hvr-icon-grow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-grow:before {
  content: "\f118";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-grow:hover:before, .hvr-icon-grow:focus:before, .hvr-icon-grow:active:before {
  -webkit-transform: scale(1.3) translateZ(0);
  transform: scale(1.3) translateZ(0);
}

/* Icon Shrink */
.hvr-icon-shrink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-shrink:before {
  content: "\f119";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-shrink:hover:before, .hvr-icon-shrink:focus:before, .hvr-icon-shrink:active:before {
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
}

/* Icon Pulse */
@-webkit-keyframes hvr-icon-pulse {
  25% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  75% {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
}

@keyframes hvr-icon-pulse {
  25% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  75% {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
}

.hvr-icon-pulse {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
}
.hvr-icon-pulse:before {
  content: "\f015";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-pulse:hover:before, .hvr-icon-pulse:focus:before, .hvr-icon-pulse:active:before {
  -webkit-animation-name: hvr-icon-pulse;
  animation-name: hvr-icon-pulse;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/* Icon Pulse Grow */
@-webkit-keyframes hvr-icon-pulse-grow {
  to {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
}

@keyframes hvr-icon-pulse-grow {
  to {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
}

.hvr-icon-pulse-grow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
}
.hvr-icon-pulse-grow:before {
  content: "\f015";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-pulse-grow:hover:before, .hvr-icon-pulse-grow:focus:before, .hvr-icon-pulse-grow:active:before {
  -webkit-animation-name: hvr-icon-pulse-grow;
  animation-name: hvr-icon-pulse-grow;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

/* Icon Pulse Shrink */
@-webkit-keyframes hvr-icon-pulse-shrink {
  to {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
}

@keyframes hvr-icon-pulse-shrink {
  to {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
}

.hvr-icon-pulse-shrink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
}
.hvr-icon-pulse-shrink:before {
  content: "\f015";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-pulse-shrink:hover:before, .hvr-icon-pulse-shrink:focus:before, .hvr-icon-pulse-shrink:active:before {
  -webkit-animation-name: hvr-icon-pulse-shrink;
  animation-name: hvr-icon-pulse-shrink;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

/* Icon Push */
@-webkit-keyframes hvr-icon-push {
  50% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
  }
}

@keyframes hvr-icon-push {
  50% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
  }
}

.hvr-icon-push {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-push:before {
  content: "\f006";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-push:hover:before, .hvr-icon-push:focus:before, .hvr-icon-push:active:before {
  -webkit-animation-name: hvr-icon-push;
  animation-name: hvr-icon-push;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Icon Pop */
@-webkit-keyframes hvr-icon-pop {
  50% {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
}

@keyframes hvr-icon-pop {
  50% {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
}

.hvr-icon-pop {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-pop:before {
  content: "\f005";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-pop:hover:before, .hvr-icon-pop:focus:before, .hvr-icon-pop:active:before {
  -webkit-animation-name: hvr-icon-pop;
  animation-name: hvr-icon-pop;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Icon Bounce */
.hvr-icon-bounce {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-bounce:before {
  content: "\f087";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-bounce:hover:before, .hvr-icon-bounce:focus:before, .hvr-icon-bounce:active:before {
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
  -webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

/* Icon Rotate */
.hvr-icon-rotate {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-rotate:before {
  content: "\f0c6";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-rotate:hover:before, .hvr-icon-rotate:focus:before, .hvr-icon-rotate:active:before {
  -webkit-transform: rotate(20deg);
  transform: rotate(20deg);
}

/* Icon Grow Rotate */
.hvr-icon-grow-rotate {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-grow-rotate:before {
  content: "\f095";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-grow-rotate:hover:before, .hvr-icon-grow-rotate:focus:before, .hvr-icon-grow-rotate:active:before {
  -webkit-transform: scale(1.5) rotate(12deg);
  transform: scale(1.5) rotate(12deg);
}

/* Icon Float */
.hvr-icon-float {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-float:before {
  content: "\f01b";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-float:hover:before, .hvr-icon-float:focus:before, .hvr-icon-float:active:before {
  -webkit-transform: translateY(-4px);
  transform: translateY(-4px);
}

/* Icon Sink */
.hvr-icon-sink {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-sink:before {
  content: "\f01a";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-sink:hover:before, .hvr-icon-sink:focus:before, .hvr-icon-sink:active:before {
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
}

/* Icon Bob */
@-webkit-keyframes hvr-icon-bob {
  0% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }

  50% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }

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

@keyframes hvr-icon-bob {
  0% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }

  50% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }

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

@-webkit-keyframes hvr-icon-bob-float {
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

@keyframes hvr-icon-bob-float {
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

.hvr-icon-bob {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-bob:before {
  content: "\f077";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-bob:hover:before, .hvr-icon-bob:focus:before, .hvr-icon-bob:active:before {
  -webkit-animation-name: hvr-icon-bob-float, hvr-icon-bob;
  animation-name: hvr-icon-bob-float, hvr-icon-bob;
  -webkit-animation-duration: .3s, 1.5s;
  animation-duration: .3s, 1.5s;
  -webkit-animation-delay: 0s, .3s;
  animation-delay: 0s, .3s;
  -webkit-animation-timing-function: ease-out, ease-in-out;
  animation-timing-function: ease-out, ease-in-out;
  -webkit-animation-iteration-count: 1, infinite;
  animation-iteration-count: 1, infinite;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-direction: normal, alternate;
  animation-direction: normal, alternate;
}

/* Icon Hang */
@-webkit-keyframes hvr-icon-hang {
  0% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }

  50% {
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }

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

@keyframes hvr-icon-hang {
  0% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }

  50% {
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }

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

@-webkit-keyframes hvr-icon-hang-sink {
  100% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}

@keyframes hvr-icon-hang-sink {
  100% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}

.hvr-icon-hang {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-hang:before {
  content: "\f078";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-hang:hover:before, .hvr-icon-hang:focus:before, .hvr-icon-hang:active:before {
  -webkit-animation-name: hvr-icon-hang-sink, hvr-icon-hang;
  animation-name: hvr-icon-hang-sink, hvr-icon-hang;
  -webkit-animation-duration: .3s, 1.5s;
  animation-duration: .3s, 1.5s;
  -webkit-animation-delay: 0s, .3s;
  animation-delay: 0s, .3s;
  -webkit-animation-timing-function: ease-out, ease-in-out;
  animation-timing-function: ease-out, ease-in-out;
  -webkit-animation-iteration-count: 1, infinite;
  animation-iteration-count: 1, infinite;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-direction: normal, alternate;
  animation-direction: normal, alternate;
}

/* Icon Wobble Horizontal */
@-webkit-keyframes hvr-icon-wobble-horizontal {
  16.65% {
    -webkit-transform: translateX(6px);
    transform: translateX(6px);
  }

  33.3% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }

  49.95% {
    -webkit-transform: translateX(4px);
    transform: translateX(4px);
  }

  66.6% {
    -webkit-transform: translateX(-2px);
    transform: translateX(-2px);
  }

  83.25% {
    -webkit-transform: translateX(1px);
    transform: translateX(1px);
  }

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

@keyframes hvr-icon-wobble-horizontal {
  16.65% {
    -webkit-transform: translateX(6px);
    transform: translateX(6px);
  }

  33.3% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }

  49.95% {
    -webkit-transform: translateX(4px);
    transform: translateX(4px);
  }

  66.6% {
    -webkit-transform: translateX(-2px);
    transform: translateX(-2px);
  }

  83.25% {
    -webkit-transform: translateX(1px);
    transform: translateX(1px);
  }

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

.hvr-icon-wobble-horizontal {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-wobble-horizontal:before {
  content: "\f061";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-wobble-horizontal:hover:before, .hvr-icon-wobble-horizontal:focus:before, .hvr-icon-wobble-horizontal:active:before {
  -webkit-animation-name: hvr-icon-wobble-horizontal;
  animation-name: hvr-icon-wobble-horizontal;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Icon Wobble Vertical */
@-webkit-keyframes hvr-icon-wobble-vertical {
  16.65% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }

  33.3% {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }

  49.95% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }

  66.6% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }

  83.25% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }

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

@keyframes hvr-icon-wobble-vertical {
  16.65% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }

  33.3% {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }

  49.95% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }

  66.6% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }

  83.25% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }

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

.hvr-icon-wobble-vertical {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-wobble-vertical:before {
  content: "\f062";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-wobble-vertical:hover:before, .hvr-icon-wobble-vertical:focus:before, .hvr-icon-wobble-vertical:active:before {
  -webkit-animation-name: hvr-icon-wobble-vertical;
  animation-name: hvr-icon-wobble-vertical;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Icon Buzz */
@-webkit-keyframes hvr-icon-buzz {
  50% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  100% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
}

@keyframes hvr-icon-buzz {
  50% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  100% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
}

.hvr-icon-buzz {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-buzz:before {
  content: "\f017";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-buzz:hover:before, .hvr-icon-buzz:focus:before, .hvr-icon-buzz:active:before {
  -webkit-animation-name: hvr-icon-buzz;
  animation-name: hvr-icon-buzz;
  -webkit-animation-duration: 0.15s;
  animation-duration: 0.15s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/* Icon Buzz Out */
@-webkit-keyframes hvr-icon-buzz-out {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }

  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }

  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }

  60% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }

  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }

  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }

  90% {
    -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0);
  }

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

@keyframes hvr-icon-buzz-out {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }

  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }

  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }

  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }

  60% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }

  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }

  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }

  90% {
    -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0);
  }

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

.hvr-icon-buzz-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-icon-buzz-out:before {
  content: "\f023";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-icon-buzz-out:hover:before, .hvr-icon-buzz-out:focus:before, .hvr-icon-buzz-out:active:before {
  -webkit-animation-name: hvr-icon-buzz-out;
  animation-name: hvr-icon-buzz-out;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* CURLS */
/* Curl Top Left */
.hvr-curl-top-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-curl-top-left:before {
  pointer-events: none;
  position: absolute;
  content: '';
  height: 0;
  width: 0;
  top: 0;
  left: 0;
  background: white;
  /* IE9 */
  background: linear-gradient(135deg, white 45%, #aaaaaa 50%, #cccccc 56%, white 80%);
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#ffffff', endColorstr='#000000');
  /*For IE7-8-9*/
  z-index: 1000;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: width, height;
  transition-property: width, height;
}
.hvr-curl-top-left:hover:before, .hvr-curl-top-left:focus:before, .hvr-curl-top-left:active:before {
  width: 25px;
  height: 25px;
}

/* Curl Top Right */
.hvr-curl-top-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-curl-top-right:before {
  pointer-events: none;
  position: absolute;
  content: '';
  height: 0;
  width: 0;
  top: 0;
  right: 0;
  background: white;
  /* IE9 */
  background: linear-gradient(225deg, white 45%, #aaaaaa 50%, #cccccc 56%, white 80%);
  box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.4);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: width, height;
  transition-property: width, height;
}
.hvr-curl-top-right:hover:before, .hvr-curl-top-right:focus:before, .hvr-curl-top-right:active:before {
  width: 25px;
  height: 25px;
}

/* Curl Bottom Right */
.hvr-curl-bottom-right {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-curl-bottom-right:before {
  pointer-events: none;
  position: absolute;
  content: '';
  height: 0;
  width: 0;
  bottom: 0;
  right: 0;
  background: white;
  /* IE9 */
  background: linear-gradient(315deg, white 45%, #aaaaaa 50%, #cccccc 56%, white 80%);
  box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.4);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: width, height;
  transition-property: width, height;
}
.hvr-curl-bottom-right:hover:before, .hvr-curl-bottom-right:focus:before, .hvr-curl-bottom-right:active:before {
  width: 25px;
  height: 25px;
}

/* Curl Bottom Left */
.hvr-curl-bottom-left {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
}
.hvr-curl-bottom-left:before {
  pointer-events: none;
  position: absolute;
  content: '';
  height: 0;
  width: 0;
  bottom: 0;
  left: 0;
  background: white;
  /* IE9 */
  background: linear-gradient(45deg, white 45%, #aaaaaa 50%, #cccccc 56%, white 80%);
  box-shadow: 1px -1px 1px rgba(0, 0, 0, 0.4);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: width, height;
  transition-property: width, height;
}
.hvr-curl-bottom-left:hover:before, .hvr-curl-bottom-left:focus:before, .hvr-curl-bottom-left:active:before {
  width: 25px;
  height: 25px;
}




/**/
/*	Animations v2.1, Copyright 2014, Joe Mottershaw, https://github.com/joemottershaw/
//	================================================================================== */

/*	Table of Contents
//	==================================================
//		#Global

//		#Fade In
//		#Fade In Up
//		#Fade In Down
//		#Fade In Left
//		#Fade In Right

//		#Fade In Up Left
//		#Fade In Up Right
//		#Fade In Down Left
//		#Fade In Down Right

//		#Fade Out
//		#Fade Out Up
//		#Fade Out Down
//		#Fade Out Left
//		#Fade Out Right

//		#Fade Out Up Left
//		#Fade Out Up Right
//		#Fade Out Down Left
//		#Fade Out Down Right

//		#Bounce In 
//		#Bounce In Up
//		#Bounce In Down
//		#Bounce In Left
//		#Bounce In Right

//		#Bounce In Up Left
//		#Bounce In Up Right
//		#Bounce In Down Left
//		#Bounce In Down Right

//		#Bounce Out 
//		#Bounce Out Up
//		#Bounce Out Down
//		#Bounce Out Left
//		#Bounce Out Right

//		#Bounce Out Up Left
//		#Bounce Out Up Right
//		#Bounce Out Down Left
//		#Bounce Out Down Right

//		#Zoom In
//		#Zoom In Up
//		#Zoom In Down
//		#Zoom In Left
//		#Zoom In Right

//		#Zoom In Up Left
//		#Zoom In Up Right
//		#Zoom In Down Left
//		#Zoom In Down Right

//		#Zoom Out
//		#Zoom Out Up
//		#Zoom Out Down
//		#Zoom Out Left
//		#Zoom Out Right

//		#Zoom Out Up Left
//		#Zoom Out Up Right
//		#Zoom Out Down Left
//		#Zoom Out Down Right

//		#Flip In X
//		#Flip In Y
//		#Flip In Top Front
//		#Flip In Top Back
//		#Flip In Bottom Front
//		#Flip In Bottom Back
//		#Flip In Left Front
//		#Flip In Left Back
//		#Flip In Right Front
//		#Flip In Right Back

//		#Flip Out X
//		#Flip Out Y
//		#Flip Out Top Front
//		#Flip Out Top Front
//		#Flip Out Bottom Front
//		#Flip Out Bottom Back
//		#Flip Out Left Front
//		#Flip Out Left Back
//		#Flip Out Right Front
//		#Flip Out Right Back

//		#Flash
//		#Strobe
//		#Shake X
//		#Shake Y
//		#Bounce
//		#Tada
//		#Rubber Band
//		#Swing
//		#Spin
//		#Spin Reverse
//		#Slingshot
//		#Slingshot Reverse
//		#Wobble
//		#Pulse
//		#Pulsate
//		#Heartbeat
//		#Panic


/*	#Global
//	================================================== */

	.animate-in,
	.animating,
	.hover-flash,
	.hover-strobe,
	.hover-shake-x,
	.hover-shake-y,
	.hover-bounce,
	.hover-tada,
	.hover-rubber-band,
	.hover-swing,
	.hover-spin,
	.hover-spin-reverse,
	.hover-slingshot,
	.hover-slingshot-reverse,
	.hover-wobble,
	.hover-pulse,
	.hover-pulsate,
	.hover-heartbeat,
	.hover-panic {
		-webkit-transition: none !important;
		-moz-transition: none !important;
		-o-transition: none !important;
		-ms-transition: none !important;
		transition: none !important;
	}

	.animate-in,
	.animate-out {
		visibility: hidden !important;
		opacity: 0;
	}

	.animating,
	.hover-flash,
	.hover-strobe,
	.hover-shake-x,
	.hover-shake-y,
	.hover-bounce,
	.hover-tada,
	.hover-rubber-band,
	.hover-swing,
	.hover-spin,
	.hover-spin-reverse,
	.hover-slingshot,
	.hover-slingshot-reverse,
	.hover-wobble,
	.hover-pulse,
	.hover-pulsate,
	.hover-heartbeat,
	.hover-panic {
		-webkit-animation-duration: 1s;
		animation-duration: 1s;
		-webkit-animation-timing-function: ease-in-out;	
		animation-timing-function: ease-in-out;	
		-webkit-animation-fill-mode: both;
		animation-fill-mode: both;
	}

	.animating.slow-mo,
	.hover-flash.slow-mo,
	.hover-strobe.slow-mo,
	.hover-shake-x.slow-mo,
	.hover-shake-y.slow-mo,
	.hover-bounce.slow-mo,
	.hover-tada.slow-mo,
	.hover-rubber-band.slow-mo,
	.hover-swing.slow-mo,
	.hover-spin.slow-mo,
	.hover-spin-reverse.slow-mo,
	.hover-slingshot.slow-mo,
	.hover-slingshot-reverse.slow-mo,
	.hover-wobble.slow-mo,
	.hover-pulse.slow-mo,
	.hover-pulsate.slow-mo,
	.hover-heartbeat.slow-mo,
	.hover-panic.slow-mo {
		-webkit-animation-duration: 2s;
		animation-duration: 2s;
	}

	.animating.super-slow-mo,
	.hover-flash.super-slow-mo,
	.hover-strobe.super-slow-mo,
	.hover-shake-x.super-slow-mo,
	.hover-shake-y.super-slow-mo,
	.hover-bounce.super-slow-mo,
	.hover-tada.super-slow-mo,
	.hover-rubber-band.super-slow-mo,
	.hover-swing.super-slow-mo,
	.hover-spin.super-slow-mo,
	.hover-spin-reverse.super-slow-mo,
	.hover-slingshot.super-slow-mo,
	.hover-slingshot-reverse.super-slow-mo,
	.hover-wobble.super-slow-mo,
	.hover-pulse.super-slow-mo,
	.hover-pulsate.super-slow-mo,
	.hover-heartbeat.super-slow-mo,
	.hover-panic.super-slow-mo   {
		-webkit-animation-duration: 3s;
		animation-duration: 3s;
	}

	.animating.ultra-slow-mo,
	.hover-flash.ultra-slow-mo,
	.hover-strobe.ultra-slow-mo,
	.hover-shake-x.ultra-slow-mo,
	.hover-shake-y.ultra-slow-mo,
	.hover-bounce.ultra-slow-mo,
	.hover-tada.ultra-slow-mo,
	.hover-rubber-band.ultra-slow-mo,
	.hover-swing.ultra-slow-mo,
	.hover-spin.ultra-slow-mo,
	.hover-spin-reverse.ultra-slow-mo,
	.hover-slingshot.ultra-slow-mo,
	.hover-slingshot-reverse.ultra-slow-mo,
	.hover-wobble.ultra-slow-mo,
	.hover-pulse.ultra-slow-mo,
	.hover-pulsate.ultra-slow-mo,
	.hover-heartbeat.ultra-slow-mo,
	.hover-panic.ultra-slow-mo {
		-webkit-animation-duration: 4s;
		animation-duration: 4s;
	}

	.animating.hyper-slow-mo,
	.hover-flash.hyper-slow-mo,
	.hover-strobe.hyper-slow-mo,
	.hover-shake-x.hyper-slow-mo,
	.hover-shake-y.hyper-slow-mo,
	.hover-bounce.hyper-slow-mo,
	.hover-tada.hyper-slow-mo,
	.hover-rubber-band.hyper-slow-mo,
	.hover-swing.hyper-slow-mo,
	.hover-spin.hyper-slow-mo,
	.hover-spin-reverse.hyper-slow-mo,
	.hover-slingshot.hyper-slow-mo,
	.hover-slingshot-reverse.hyper-slow-mo,
	.hover-wobble.hyper-slow-mo,
	.hover-pulse.hyper-slow-mo,
	.hover-pulsate.hyper-slow-mo,
	.hover-heartbeat.hyper-slow-mo,
	.hover-panic.hyper-slow-mo {
		-webkit-animation-duration: 5s;
		animation-duration: 5s;
	}

	.animating.infinite,
	.hover-flash.infinite,
	.hover-strobe.infinite,
	.hover-shake-x.infinite,
	.hover-shake-y.infinite,
	.hover-bounce.infinite,
	.hover-tada.infinite,
	.hover-rubber-band.infinite,
	.hover-swing.infinite,
	.hover-spin.infinite,
	.hover-spin-reverse.infinite,
	.hover-slingshot.infinite,
	.hover-slingshot-reverse.infinite,
	.hover-wobble.infinite,
	.hover-pulse.infinite,
	.hover-pulsate.infinite,
	.hover-heartbeat.infinite,
	.hover-panic.infinite {
		-webkit-animation-iteration-count: infinite;
		animation-iteration-count: infinite;
	}

	.no-js .animate-in,
	.ie .animate-in {
		visibility: visible !important;
		opacity: 1;
	}


/*	#Fade In
//	================================================== */

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

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

	.animating.fade-in {
		-webkit-animation-name: fadeIn;
		animation-name: fadeIn;
	}


/*	#Fade In Up
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeInUp {
			0% {
				opacity: 0;
				-webkit-transform: translateY(60px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInUp {
			0% {
				opacity: 0;
				transform: translateY(60px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-up {
			-webkit-animation-name: fadeInUp;
			animation-name: fadeInUp;
		}

	/* Big */

		@-webkit-keyframes fadeInUpBig {
			0% {
				opacity: 0;
				-webkit-transform: translateY(200px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInUpBig {
			0% {
				opacity: 0;
				transform: translateY(200px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-up-big {
			-webkit-animation-name: fadeInUpBig;
			animation-name: fadeInUpBig;
		}

	/* Large */

		@-webkit-keyframes fadeInUpLarge {
			0% {
				opacity: 0;
				-webkit-transform: translateY(600px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInUpLarge {
			0% {
				opacity: 0;
				transform: translateY(600px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-up-large {
			-webkit-animation-name: fadeInUpLarge;
			animation-name: fadeInUpLarge;
		}


/*	#Fade In Down
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeInDown {
			0% {
				opacity: 0;
				-webkit-transform: translateY(-60px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInDown {
			0% {
				opacity: 0;
				transform: translateY(-60px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-down {
			-webkit-animation-name: fadeInDown;
			animation-name: fadeInDown;
		}

	/* Big */

		@-webkit-keyframes fadeInDownBig {
			0% {
				opacity: 0;
				-webkit-transform: translateY(-200px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInDownBig {
			0% {
				opacity: 0;
				transform: translateY(-200px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-down-big {
			-webkit-animation-name: fadeInDownBig;
			animation-name: fadeInDownBig;
		}

	/* Large */

		@-webkit-keyframes fadeInDownLarge {
			0% {
				opacity: 0;
				-webkit-transform: translateY(-600px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInDownLarge {
			0% {
				opacity: 0;
				transform: translateY(-600px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-down-large {
			-webkit-animation-name: fadeInDownLarge;
			animation-name: fadeInDownLarge;
		}


/*	#Fade In Left
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeInLeft {
			0% {
				opacity: 0;
				-webkit-transform: translateX(60px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInLeft {
			0% {
				opacity: 0;
				transform: translateX(60px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-left {
			-webkit-animation-name: fadeInLeft;
			animation-name: fadeInLeft;
		}

	/* Big */

		@-webkit-keyframes fadeInLeftBig {
			0% {
				opacity: 0;
				-webkit-transform: translateX(200px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInLeftBig {
			0% {
				opacity: 0;
				transform: translateX(200px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-left-big {
			-webkit-animation-name: fadeInLeftBig;
			animation-name: fadeInLeftBig;
		}

	/* Large */

		@-webkit-keyframes fadeInLeftLarge {
			0% {
				opacity: 0;
				-webkit-transform: translateX(600px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInLeftLarge {
			0% {
				opacity: 0;
				transform: translateX(600px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-left-large {
			-webkit-animation-name: fadeInLeftLarge;
			animation-name: fadeInLeftLarge;
		}


/*	#Fade In Right
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeInRight {
			0% {
				opacity: 0;
				-webkit-transform: translateX(-60px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInRight {
			0% {
				opacity: 0;
				transform: translateX(-60px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-right {
			-webkit-animation-name: fadeInRight;
			animation-name: fadeInRight;
		}

	/* Big */

		@-webkit-keyframes fadeInRightBig {
			0% {
				opacity: 0;
				-webkit-transform: translateX(-200px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInRightBig {
			0% {
				opacity: 0;
				transform: translateX(-200px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-right-big {
			-webkit-animation-name: fadeInRightBig;
			animation-name: fadeInRightBig;
		}

	/* Large */

		@-webkit-keyframes fadeInRightLarge {
			0% {
				opacity: 0;
				-webkit-transform: translateX(-600px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInRightLarge {
			0% {
				opacity: 0;
				transform: translateX(-600px);
			}

			80% { opacity: 1; }

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

		.animating.fade-in-right-large {
			-webkit-animation-name: fadeInRightLarge;
			animation-name: fadeInRightLarge;
		}


/*	#Fade In Up Left
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeInUpLeft {
			0% {
				opacity: 0;
				-webkit-transform: translate(60px, 60px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInUpLeft {
			0% {
				opacity: 0;
				transform: translate(60px, 60px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-up-left {
			-webkit-animation-name: fadeInUpLeft;
			animation-name: fadeInUpLeft;
		}

	/* Big */

		@-webkit-keyframes fadeInUpLeftBig {
			0% {
				opacity: 0;
				-webkit-transform: translate(200px, 200px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInUpLeftBig {
			0% {
				opacity: 0;
				transform: translate(200px, 200px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-up-left-big {
			-webkit-animation-name: fadeInUpLeftBig;
			animation-name: fadeInUpLeftBig;
		}

	/* Large */

		@-webkit-keyframes fadeInUpLeftLarge {
			0% {
				opacity: 0;
				-webkit-transform: translate(600px, 600px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInUpLeftLarge {
			0% {
				opacity: 0;
				transform: translate(600px, 600px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-up-left-large {
			-webkit-animation-name: fadeInUpLeftLarge;
			animation-name: fadeInUpLeftLarge;
		}


/*	#Fade In Up Right
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeInUpRight {
			0% {
				opacity: 0;
				-webkit-transform: translate(-60px, 60px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInUpRight {
			0% {
				opacity: 0;
				transform: translate(-60px, 60px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-up-right {
			-webkit-animation-name: fadeInUpRight;
			animation-name: fadeInUpRight;
		}

	/* Big */

		@-webkit-keyframes fadeInUpRightBig {
			0% {
				opacity: 0;
				-webkit-transform: translate(-200px, 200px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInUpRightBig {
			0% {
				opacity: 0;
				transform: translate(-200px, 200px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-up-right-big {
			-webkit-animation-name: fadeInUpRightBig;
			animation-name: fadeInUpRightBig;
		}

	/* Large */

		@-webkit-keyframes fadeInUpRightLarge {
			0% {
				opacity: 0;
				-webkit-transform: translate(-600px, 600px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInUpRightLarge {
			0% {
				opacity: 0;
				transform: translate(-600px, 600px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-up-right-large {
			-webkit-animation-name: fadeInUpRightLarge;
			animation-name: fadeInUpRightLarge;
		}


/*	#Fade In Down Left
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeInDownLeft {
			0% {
				opacity: 0;
				-webkit-transform: translate(60px, -60px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInDownLeft {
			0% {
				opacity: 0;
				transform: translate(60px, -60px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-down-left {
			-webkit-animation-name: fadeInDownLeft;
			animation-name: fadeInDownLeft;
		}

	/* Big */

		@-webkit-keyframes fadeInDownLeftBig {
			0% {
				opacity: 0;
				-webkit-transform: translate(200px, -200px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInDownLeftBig {
			0% {
				opacity: 0;
				transform: translate(200px, -200px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-down-left-big {
			-webkit-animation-name: fadeInDownLeftBig;
			animation-name: fadeInDownLeftBig;
		}

	/* Large */

		@-webkit-keyframes fadeInDownLeftLarge {
			0% {
				opacity: 0;
				-webkit-transform: translate(600px, -600px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInDownLeftLarge {
			0% {
				opacity: 0;
				transform: translate(600px, -600px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-down-left-large {
			-webkit-animation-name: fadeInDownLeftLarge;
			animation-name: fadeInDownLeftLarge;
		}


/*	#Fade In Down Right
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeInDownRight {
			0% {
				opacity: 0;
				-webkit-transform: translate(-60px, -60px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInDownRight {
			0% {
				opacity: 0;
				transform: translate(-60px, -60px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-down-right {
			-webkit-animation-name: fadeInDownRight;
			animation-name: fadeInDownRight;
		}

	/* Big */

		@-webkit-keyframes fadeInDownRightBig {
			0% {
				opacity: 0;
				-webkit-transform: translate(-200px, -200px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInDownRightBig {
			0% {
				opacity: 0;
				transform: translate(-200px, -200px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-down-right-big {
			-webkit-animation-name: fadeInDownRightBig;
			animation-name: fadeInDownRightBig;
		}

	/* Large */

		@-webkit-keyframes fadeInDownRightLarge {
			0% {
				opacity: 0;
				-webkit-transform: translate(-600px, -600px);
			}

			80% { opacity: 1; }

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

		@keyframes fadeInDownRightLarge {
			0% {
				opacity: 0;
				transform: translate(-600px, -600px);
			}

			80% { opacity: 1; }

			100% { transform: translate(0, 0); }
		}

		.animating.fade-in-down-right-large {
			-webkit-animation-name: fadeInDownRightLarge;
			animation-name: fadeInDownRightLarge;
		}


/*	#Fade Out
//	================================================== */

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

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

	.animating.fade-out {
		-webkit-animation-name: fadeOut;
		animation-name: fadeOut;
	}


/*	#Fade Out Up
//	================================================== */

	/* Default */

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

			80% { opacity: 0; }

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

		@keyframes fadeOutUp {
			0% {
				opacity: 1;
				transform: translateY(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateY(-60px);
			}
		}

		.animating.fade-out-up {
			-webkit-animation-name: fadeOutUp;
			animation-name: fadeOutUp;
		}

	/* Big */

		@-webkit-keyframes fadeOutUpBig {
			0% {
				opacity: 1;
				-webkit-transform: translateY(0);
			}

			80% { opacity: 0; }

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

		@keyframes fadeOutUpBig {
			0% {
				opacity: 1;
				transform: translateY(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateY(-200px);
			}
		}

		.animating.fade-out-up-big {
			-webkit-animation-name: fadeOutUpBig;
			animation-name: fadeOutUpBig;
		}

	/* Large */

		@-webkit-keyframes fadeOutUpLarge {
			0% {
				opacity: 1;
				-webkit-transform: translateY(0);
			}

			80% { opacity: 0; }

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

		@keyframes fadeOutUpLarge {
			0% {
				opacity: 1;
				transform: translateY(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateY(-600px);
			}
		}

		.animating.fade-out-up-large {
			-webkit-animation-name: fadeOutUpLarge;
			animation-name: fadeOutUpLarge;
		}


/*	#Fade Out Down
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeOutDown {
			0% {
				opacity: 1;
				-webkit-transform: translateY(0);
			}

			80% { opacity: 0; }

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

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

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateY(60px);
			}
		}

		.animating.fade-out-down {
			-webkit-animation-name: fadeOutDown;
			animation-name: fadeOutDown;
		}

	/* Big */

		@-webkit-keyframes fadeOutDownBig {
			0% {
				opacity: 1;
				-webkit-transform: translateY(0);
			}

			80% { opacity: 0; }

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

		@keyframes fadeOutDownBig {
			0% {
				opacity: 1;
				transform: translateY(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateY(200px);
			}
		}

		.animating.fade-out-down-big {
			-webkit-animation-name: fadeOutDownBig;
			animation-name: fadeOutDownBig;
		}

	/* Large */

		@-webkit-keyframes fadeOutDownLarge {
			0% {
				opacity: 1;
				-webkit-transform: translateY(0);
			}

			80% { opacity: 0; }

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

		@keyframes fadeOutDownLarge {
			0% {
				opacity: 1;
				transform: translateY(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateY(600px);
			}
		}

		.animating.fade-out-down-large {
			-webkit-animation-name: fadeOutDownLarge;
			animation-name: fadeOutDownLarge;
		}


/*	#Fade Out Left
//	================================================== */

	/* Default */

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

			80% { opacity: 0; }

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

		@keyframes fadeOutLeft {
			0% {
				opacity: 1;
				transform: translateX(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateX(-60px);
			}
		}

		.animating.fade-out-left {
			-webkit-animation-name: fadeOutLeft;
			animation-name: fadeOutLeft;
		}

	/* Big */

		@-webkit-keyframes fadeOutLeftBig {
			0% {
				opacity: 1;
				-webkit-transform: translateX(0);
			}

			80% { opacity: 0; }

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

		@keyframes fadeOutLeftBig {
			0% {
				opacity: 1;
				transform: translateX(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateX(-200px);
			}
		}

		.animating.fade-out-left-big {
			-webkit-animation-name: fadeOutLeftBig;
			animation-name: fadeOutLeftBig;
		}

	/* Large */

		@-webkit-keyframes fadeOutLeftLarge {
			0% {
				opacity: 1;
				-webkit-transform: translateX(0);
			}

			80% { opacity: 0; }

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

		@keyframes fadeOutLeftLarge {
			0% {
				opacity: 1;
				transform: translateX(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateX(-600px);
			}
		}

		.animating.fade-out-left-large {
			-webkit-animation-name: fadeOutLeftLarge;
			animation-name: fadeOutLeftLarge;
		}


/*	#Fade Out Right
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeOutRight {
			0% {
				opacity: 1;
				-webkit-transform: translateX(0);
			}

			80% { opacity: 0; }

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

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

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateX(60px);
			}
		}

		.animating.fade-out-right {
			-webkit-animation-name: fadeOutRight;
			animation-name: fadeOutRight;
		}

	/* Big */

		@-webkit-keyframes fadeOutRightBig {
			0% {
				opacity: 1;
				-webkit-transform: translateX(0);
			}

			80% { opacity: 0; }

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

		@keyframes fadeOutRightBig {
			0% {
				opacity: 1;
				transform: translateX(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateX(200px);
			}
		}

		.animating.fade-out-right-big {
			-webkit-animation-name: fadeOutRightBig;
			animation-name: fadeOutRightBig;
		}

	/* Large */

		@-webkit-keyframes fadeOutRightLarge {
			0% {
				opacity: 1;
				-webkit-transform: translateX(0);
			}

			80% { opacity: 0; }

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

		@keyframes fadeOutRightLarge {
			0% {
				opacity: 1;
				transform: translateX(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translateX(600px);
			}
		}

		.animating.fade-out-right-large {
			-webkit-animation-name: fadeOutRightLarge;
			animation-name: fadeOutRightLarge;
		}


/*	#Fade Out Up Left
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeOutUpLeft {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(-60px, -60px);
			}
		}

		@keyframes fadeOutUpLeft {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(-60px, -60px);
			}
		}

		.animating.fade-out-up-left {
			-webkit-animation-name: fadeOutUpLeft;
			animation-name: fadeOutUpLeft;
		}

	/* Big */

		@-webkit-keyframes fadeOutUpLeftBig {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(-200px, -200px);
			}
		}

		@keyframes fadeOutUpLeftBig {
			0% {
				opacity: 1;
				transform: translate(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(-200px, -200px);
			}
		}

		.animating.fade-out-up-left-big {
			-webkit-animation-name: fadeOutUpLeftBig;
			animation-name: fadeOutUpLeftBig;
		}

	/* Large */

		@-webkit-keyframes fadeOutUpLeftLarge {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(-600px, -600px);
			}
		}

		@keyframes fadeOutUpLeftLarge {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(-600px, -600px);
			}
		}

		.animating.fade-out-up-left-large {
			-webkit-animation-name: fadeOutUpLeftLarge;
			animation-name: fadeOutUpLeftLarge;
		}


/*	#Fade Out Up Right
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeOutUpRight {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(60px, -60px);
			}
		}

		@keyframes fadeOutUpRight {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(60px, -60px);
			}
		}

		.animating.fade-out-up-right {
			-webkit-animation-name: fadeOutUpRight;
			animation-name: fadeOutUpRight;
		}

	/* Big */

		@-webkit-keyframes fadeOutUpRightBig {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(200px, -200px);
			}
		}

		@keyframes fadeOutUpRightBig {
			0% {
				opacity: 1;
				transform: translate(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(200px, -200px);
			}
		}

		.animating.fade-out-up-right-big {
			-webkit-animation-name: fadeOutUpRightBig;
			animation-name: fadeOutUpRightBig;
		}

	/* Large */

		@-webkit-keyframes fadeOutUpRightLarge {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(600px, -600px);
			}
		}

		@keyframes fadeOutUpRightLarge {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(600px, -600px);
			}
		}

		.animating.fade-out-up-right-large {
			-webkit-animation-name: fadeOutUpRightLarge;
			animation-name: fadeOutUpRightLarge;
		}


/*	#Fade Out Down Left
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeOutDownLeft {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(-60px, 60px);
			}
		}

		@keyframes fadeOutDownLeft {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(-60px, 60px);
			}
		}

		.animating.fade-out-down-left {
			-webkit-animation-name: fadeOutDownLeft;
			animation-name: fadeOutDownLeft;
		}

	/* Big */

		@-webkit-keyframes fadeOutDownLeftBig {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(-200px, 200px);
			}
		}

		@keyframes fadeOutDownLeftBig {
			0% {
				opacity: 1;
				transform: translate(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(-200px, 200px);
			}
		}

		.animating.fade-out-down-left-big {
			-webkit-animation-name: fadeOutDownLeftBig;
			animation-name: fadeOutDownLeftBig;
		}

	/* Large */

		@-webkit-keyframes fadeOutDownLeftLarge {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(-600px, 600px);
			}
		}

		@keyframes fadeOutDownLeftLarge {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(-600px, 600px);
			}
		}

		.animating.fade-out-down-left-large {
			-webkit-animation-name: fadeOutDownLeftLarge;
			animation-name: fadeOutDownLeftLarge;
		}


/*	#Fade Out Down Right
//	================================================== */

	/* Default */

		@-webkit-keyframes fadeOutDownRight {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(60px, 60px);
			}
		}

		@keyframes fadeOutDownRight {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(60px, 60px);
			}
		}

		.animating.fade-out-down-right {
			-webkit-animation-name: fadeOutDownRight;
			animation-name: fadeOutDownRight;
		}

	/* Big */

		@-webkit-keyframes fadeOutDownRightBig {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(200px, 200px);
			}
		}

		@keyframes fadeOutDownRightBig {
			0% {
				opacity: 1;
				transform: translate(0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(200px, 200px);
			}
		}

		.animating.fade-out-down-right-big {
			-webkit-animation-name: fadeOutDownRightBig;
			animation-name: fadeOutDownRightBig;
		}

	/* Large */

		@-webkit-keyframes fadeOutDownRightLarge {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				-webkit-transform: translate(600px, 600px);
			}
		}

		@keyframes fadeOutDownRightLarge {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			80% { opacity: 0; }

			100% {
				opacity: 0;
				transform: translate(600px, 600px);
			}
		}

		.animating.fade-out-down-right-large {
			-webkit-animation-name: fadeOutDownRightLarge;
			animation-name: fadeOutDownRightLarge;
		}


/*	#Bounce In
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceIn {
			0% {
				opacity: 0;
				-webkit-transform: scale(0);
			}

			50% {
				opacity: 1;
				-webkit-transform: scale(1.05);
			}

			70% { -webkit-transform: scale(.85); }

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

		@keyframes bounceIn {
			0% {
				opacity: 0;
				transform: scale(0);
			}

			50% {
				opacity: 1;
				transform: scale(1.05);
			}

			70% { transform: scale(.85); }

			100% { transform: scale(1); }
		}

		.animating.bounce-in {
			-webkit-animation-name: bounceIn;
			animation-name: bounceIn;
		}

	/* Big */

		@-webkit-keyframes bounceInBig {
			0% {
				opacity: 0;
				-webkit-transform: scale(0);
			}

			50% {
				opacity: 1;
				-webkit-transform: scale(1.25);
			}

			70% { -webkit-transform: scale(.85); }

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

		@keyframes bounceInBig {
			0% {
				opacity: 0;
				transform: scale(0);
			}

			50% {
				opacity: 1;
				transform: scale(1.25);
			}

			70% { transform: scale(.85); }

			100% { transform: scale(1); }
		}

		.animating.bounce-in-big {
			-webkit-animation-name: bounceInBig;
			animation-name: bounceInBig;
		}

	/* Large */

		@-webkit-keyframes bounceInLarge {
			0% {
				opacity: 0;
				-webkit-transform: scale(0);
			}

			50% {
				opacity: 1;
				-webkit-transform: scale(1.50);
			}

			70% { -webkit-transform: scale(.8); }

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

		@keyframes bounceInLarge {
			0% {
				opacity: 0;
				transform: scale(0);
			}

			50% {
				opacity: 1;
				transform: scale(1.50);
			}

			70% { transform: scale(.8); }

			100% { transform: scale(1); }
		}

		.animating.bounce-in-large {
			-webkit-animation-name: bounceInLarge;
			animation-name: bounceInLarge;
		}


/*	#Bounce In Up
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceInUp {
			0% {
				opacity: 0;
				-webkit-transform: translateY(60px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateY(-10px);
			}

			70% { -webkit-transform: translateY(15px); }

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

		@keyframes bounceInUp {
			0% {
				opacity: 0;
				transform: translateY(60px);
			}

			50% {
				opacity: 1;
				transform: translateY(-10px);
			}

			70% { transform: translateY(15px); }

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

		.animating.bounce-in-up {
			-webkit-animation-name: bounceInUp;
			animation-name: bounceInUp;
		}

	/* Big */

		@-webkit-keyframes bounceInUpBig {
			0% {
				opacity: 0;
				-webkit-transform: translateY(200px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateY(-20px);
			}

			70% { -webkit-transform: translateY(15px); }

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

		@keyframes bounceInUpBig {
			0% {
				opacity: 0;
				transform: translateY(200px);
			}

			50% {
				opacity: 1;
				transform: translateY(-20px);
			}

			70% { transform: translateY(15px); }

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

		.animating.bounce-in-up-big {
			-webkit-animation-name: bounceInUpBig;
			animation-name: bounceInUpBig;
		}

	/* Large */

		@-webkit-keyframes bounceInUpLarge {
			0% {
				opacity: 0;
				-webkit-transform: translateY(600px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateY(-25px);
			}

			70% { -webkit-transform: translateY(20px); }

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

		@keyframes bounceInUpLarge {
			0% {
				opacity: 0;
				transform: translateY(600px);
			}

			50% {
				opacity: 1;
				transform: translateY(-25px);
			}

			70% { transform: translateY(20px); }

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

		.animating.bounce-in-up-large {
			-webkit-animation-name: bounceInUpLarge;
			animation-name: bounceInUpLarge;
		}


/*	#Bounce In Down
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceInDown {
			0% {
				opacity: 0;
				-webkit-transform: translateY(-60px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateY(10px);
			}

			70% { -webkit-transform: translateY(-10px); }

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

		@keyframes bounceInDown {
			0% {
				opacity: 0;
				transform: translateY(-60px);
			}

			50% {
				opacity: 1;
				transform: translateY(10px);
			}

			70% { transform: translateY(-10px); }

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

		.animating.bounce-in-down {
			-webkit-animation-name: bounceInDown;
			animation-name: bounceInDown;
		}

	/* Big */

		@-webkit-keyframes bounceInDownBig {
			0% {
				opacity: 0;
				-webkit-transform: translateY(-200px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateY(20px);
			}

			70% { -webkit-transform: translateY(-15px); }

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

		@keyframes bounceInDownBig {
			0% {
				opacity: 0;
				transform: translateY(-200px);
			}

			50% {
				opacity: 1;
				transform: translateY(20px);
			}

			70% { transform: translateY(-15px); }

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

		.animating.bounce-in-down-big {
			-webkit-animation-name: bounceInDownBig;
			animation-name: bounceInDownBig;
		}

	/* Large */

		@-webkit-keyframes bounceInDownLarge {
			0% {
				opacity: 0;
				-webkit-transform: translateY(-600px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateY(25px);
			}

			70% { -webkit-transform: translateY(-20px); }

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

		@keyframes bounceInDownLarge {
			0% {
				opacity: 0;
				transform: translateY(-600px);
			}

			50% {
				opacity: 1;
				transform: translateY(25px);
			}

			70% { transform: translateY(-20px); }

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

		.animating.bounce-in-down-large {
			-webkit-animation-name: bounceInDownLarge;
			animation-name: bounceInDownLarge;
		}


/*	#Bounce In Left
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceInLeft {
			0% {
				opacity: 0;
				-webkit-transform: translateX(60px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateX(-10px);
			}

			70% { -webkit-transform: translateX(5px); }

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

		@keyframes bounceInLeft {
			0% {
				opacity: 0;
				transform: translateX(60px);
			}

			50% {
				opacity: 1;
				transform: translateX(-10px);
			}

			70% { transform: translateX(5px); }

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

		.animating.bounce-in-left {
			-webkit-animation-name: bounceInLeft;
			animation-name: bounceInLeft;
		}

	/* Big */

		@-webkit-keyframes bounceInLeftBig {
			0% {
				opacity: 0;
				-webkit-transform: translateX(140px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateX(-15px);
			}

			70% { -webkit-transform: translateX(5px); }

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

		@keyframes bounceInLeftBig {
			0% {
				opacity: 0;
				transform: translateX(140px);
			}

			50% {
				opacity: 1;
				transform: translateX(-15px);
			}

			70% { transform: translateX(5px); }

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

		.animating.bounce-in-left-big {
			-webkit-animation-name: bounceInLeftBig;
			animation-name: bounceInLeftBig;
		}

	/* Large */

		@-webkit-keyframes bounceInLeftLarge {
			0% {
				opacity: 0;
				-webkit-transform: translateX(280px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateX(-20px);
			}

			70% { -webkit-transform: translateX(10px); }

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

		@keyframes bounceInLeftLarge {
			0% {
				opacity: 0;
				transform: translateX(280px);
			}

			50% {
				opacity: 1;
				transform: translateX(-20px);
			}

			70% { transform: translateX(10px); }

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

		.animating.bounce-in-left-large {
			-webkit-animation-name: bounceInLeftLarge;
			animation-name: bounceInLeftLarge;
		}


/*	#Bounce In Right
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceInRight {
			0% {
				opacity: 0;
				-webkit-transform: translateX(-60px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateX(10px);
			}

			70% { -webkit-transform: translateX(-5px); }

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

		@keyframes bounceInRight {
			0% {
				opacity: 0;
				transform: translateX(-60px);
			}

			50% {
				opacity: 1;
				transform: translateX(10px);
			}

			70% { transform: translateX(-5px); }

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

		.animating.bounce-in-right {
			-webkit-animation-name: bounceInRight;
			animation-name: bounceInRight;
		}

	/* Big */

		@-webkit-keyframes bounceInRightBig {
			0% {
				opacity: 0;
				-webkit-transform: translateX(-140px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateX(15px);
			}

			70% { -webkit-transform: translateX(-5px); }

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

		@keyframes bounceInRightBig {
			0% {
				opacity: 0;
				transform: translateX(-140px);
			}

			50% {
				opacity: 1;
				transform: translateX(15px);
			}

			70% { transform: translateX(-5px); }

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

		.animating.bounce-in-right-big {
			-webkit-animation-name: bounceInRightBig;
			animation-name: bounceInRightBig;
		}

	/* Large */

		@-webkit-keyframes bounceInRightLarge {
			0% {
				opacity: 0;
				-webkit-transform: translateX(-280px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translateX(20px);
			}

			70% { -webkit-transform: translateX(-10px); }

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

		@keyframes bounceInRightLarge {
			0% {
				opacity: 0;
				transform: translateX(-280px);
			}

			50% {
				opacity: 1;
				transform: translateX(20px);
			}

			70% { transform: translateX(-10px); }

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

		.animating.bounce-in-right-large {
			-webkit-animation-name: bounceInRightLarge;
			animation-name: bounceInRightLarge;
		}


/*	#Bounce In Up Left
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceInUpLeft {
			0% {
				opacity: 0;
				-webkit-transform: translate(60px, 60px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(-10px, -10px);
			}

			70% { -webkit-transform: translate(15px, 15px); }

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

		@keyframes bounceInUpLeft {
			0% {
				opacity: 0;
				transform: translate(60px, 60px);
			}

			50% {
				opacity: 1;
				transform: translate(-10px, -10px);
			}

			70% { transform: translate(15px, 15px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-up-left {
			-webkit-animation-name: bounceInUpLeft;
			animation-name: bounceInUpLeft;
		}

	/* Big */

		@-webkit-keyframes bounceInUpLeftBig {
			0% {
				opacity: 0;
				-webkit-transform: translate(200px, 200px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(-20px, -20px);
			}

			70% { -webkit-transform: translate(15px, 15px); }

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

		@keyframes bounceInUpLeftBig {
			0% {
				opacity: 0;
				transform: translate(200px, 200px);
			}

			50% {
				opacity: 1;
				transform: translate(-20px, -20px);
			}

			70% { transform: translate(15px, 15px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-up-left-big {
			-webkit-animation-name: bounceInUpLeftBig;
			animation-name: bounceInUpLeftBig;
		}

	/* Large */

		@-webkit-keyframes bounceInUpLeftLarge {
			0% {
				opacity: 0;
				-webkit-transform: translate(600px, 600px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(-25px, -25px);
			}

			70% { -webkit-transform: translate(20px, 20px); }

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

		@keyframes bounceInUpLeftLarge {
			0% {
				opacity: 0;
				transform: translate(600px, 600px);
			}

			50% {
				opacity: 1;
				transform: translate(-25px, -25px);
			}

			70% { transform: translate(20px, 20px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-up-left-large {
			-webkit-animation-name: bounceInUpLeftLarge;
			animation-name: bounceInUpLeftLarge;
		}


/*	#Bounce In Up Right
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceInUpRight {
			0% {
				opacity: 0;
				-webkit-transform: translate(-60px, 60px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(10px, -10px);
			}

			70% { -webkit-transform: translate(-15px, 15px); }

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

		@keyframes bounceInUpRight {
			0% {
				opacity: 0;
				transform: translate(-60px, 60px);
			}

			50% {
				opacity: 1;
				transform: translate(10px, -10px);
			}

			70% { transform: translate(-15px, 15px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-up-right {
			-webkit-animation-name: bounceInUpRight;
			animation-name: bounceInUpRight;
		}

	/* Big */

		@-webkit-keyframes bounceInUpRightBig {
			0% {
				opacity: 0;
				-webkit-transform: translate(-200px, 200px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(20px, -20px);
			}

			70% { -webkit-transform: translate(-15px, 15px); }

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

		@keyframes bounceInUpRightBig {
			0% {
				opacity: 0;
				transform: translate(-200px, 200px);
			}

			50% {
				opacity: 1;
				transform: translate(20px, -20px);
			}

			70% { transform: translate(-15px, 15px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-up-right-big {
			-webkit-animation-name: bounceInUpRightBig;
			animation-name: bounceInUpRightBig;
		}

	/* Large */

		@-webkit-keyframes bounceInUpRightLarge {
			0% {
				opacity: 0;
				-webkit-transform: translate(-600px, 600px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(25px, -25px);
			}

			70% { -webkit-transform: translate(-20px, 20px); }

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

		@keyframes bounceInUpRightLarge {
			0% {
				opacity: 0;
				transform: translate(-600px, 600px);
			}

			50% {
				opacity: 1;
				transform: translate(25px, -25px);
			}

			70% { transform: translate(-20px, 20px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-up-right-large {
			-webkit-animation-name: bounceInUpRightLarge;
			animation-name: bounceInUpRightLarge;
		}


/*	#Bounce In Down Left
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceInDownLeft {
			0% {
				opacity: 0;
				-webkit-transform: translate(60px, -60px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(-10px, 10px);
			}

			70% { -webkit-transform: translate(15px, -15px); }

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

		@keyframes bounceInDownLeft {
			0% {
				opacity: 0;
				transform: translate(60px, -60px);
			}

			50% {
				opacity: 1;
				transform: translate(-10px, 10px);
			}

			70% { transform: translate(15px, -15px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-down-left {
			-webkit-animation-name: bounceInDownLeft;
			animation-name: bounceInDownLeft;
		}

	/* Big */

		@-webkit-keyframes bounceInDownLeftBig {
			0% {
				opacity: 0;
				-webkit-transform: translate(200px, -200px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(-20px, 20px);
			}

			70% { -webkit-transform: translate(15px, -15px); }

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

		@keyframes bounceInDownLeftBig {
			0% {
				opacity: 0;
				transform: translate(200px, -200px);
			}

			50% {
				opacity: 1;
				transform: translate(-20px, 20px);
			}

			70% { transform: translate(15px, -15px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-down-left-big {
			-webkit-animation-name: bounceInDownLeftBig;
			animation-name: bounceInDownLeftBig;
		}

	/* Large */

		@-webkit-keyframes bounceInDownLeftLarge {
			0% {
				opacity: 0;
				-webkit-transform: translate(600px, -600px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(-25px, 25px);
			}

			70% { -webkit-transform: translate(20px, -20px); }

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

		@keyframes bounceInDownLeftLarge {
			0% {
				opacity: 0;
				transform: translate(600px, -600px);
			}

			50% {
				opacity: 1;
				transform: translate(-25px, 25px);
			}

			70% { transform: translate(20px, -20px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-down-left-large {
			-webkit-animation-name: bounceInDownLeftLarge;
			animation-name: bounceInDownLeftLarge;
		}


/*	#Bounce In Down Right
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceInDownRight {
			0% {
				opacity: 0;
				-webkit-transform: translate(-60px, -60px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(10px, 10px);
			}

			70% { -webkit-transform: translate(-15px, -15px); }

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

		@keyframes bounceInDownRight {
			0% {
				opacity: 0;
				transform: translate(-60px, -60px);
			}

			50% {
				opacity: 1;
				transform: translate(10px, 10px);
			}

			70% { transform: translate(-15px, -15px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-down-right {
			-webkit-animation-name: bounceInDownRight;
			animation-name: bounceInDownRight;
		}

	/* Big */

		@-webkit-keyframes bounceInDownRightBig {
			0% {
				opacity: 0;
				-webkit-transform: translate(-200px, -200px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(20px, 20px);
			}

			70% { -webkit-transform: translate(-15px, -15px); }

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

		@keyframes bounceInDownRightBig {
			0% {
				opacity: 0;
				transform: translate(-200px, -200px);
			}

			50% {
				opacity: 1;
				transform: translate(20px, 20px);
			}

			70% { transform: translate(-15px, -15px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-down-right-big {
			-webkit-animation-name: bounceInDownRightBig;
			animation-name: bounceInDownRightBig;
		}

	/* Large */

		@-webkit-keyframes bounceInDownRightLarge {
			0% {
				opacity: 0;
				-webkit-transform: translate(-600px, -600px);
			}

			50% {
				opacity: 1;
				-webkit-transform: translate(25px, 25px);
			}

			70% { -webkit-transform: translate(-20px, -20px); }

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

		@keyframes bounceInDownRightLarge {
			0% {
				opacity: 0;
				transform: translate(-600px, -600px);
			}

			50% {
				opacity: 1;
				transform: translate(25px, 25px);
			}

			70% { transform: translate(-20px, -20px); }

			100% { transform: translate(0, 0); }
		}

		.animating.bounce-in-down-right-large {
			-webkit-animation-name: bounceInDownRightLarge;
			animation-name: bounceInDownRightLarge;
		}


/*	#Bounce Out
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceOut {
			0% {
				opacity: 1;
				-webkit-transform: scale(1);
			}

			30% { -webkit-transform: scale(.85); }

			50%, 100% {
				opacity: 0;
				-webkit-transform: scale(1.05);
			}
		}

		@keyframes bounceOut {
			0% {
				opacity: 1;
				transform: scale(1);
			}

			30% { transform: scale(.85); }

			50%, 100% {
				opacity: 0;
				transform: scale(1.05);
			}
		}

		.animating.bounce-out {
			-webkit-animation-name: bounceOut;
			animation-name: bounceOut;
		}

	/* Big */

		@-webkit-keyframes bounceOutBig {
			0% {
				opacity: 1;
				-webkit-transform: scale(1);
			}

			30% { -webkit-transform: scale(.85); }

			50%, 100% {
				opacity: 0;
				-webkit-transform: scale(1.25);
			}
		}

		@keyframes bounceOutBig {
			0% {
				opacity: 1;
				transform: scale(1);
			}

			30% { transform: scale(.85); }

			50%, 100% {
				opacity: 0;
				transform: scale(1.25);
			}
		}

		.animating.bounce-out-big {
			-webkit-animation-name: bounceOutBig;
			animation-name: bounceOutBig;
		}

	/* Large */

		@-webkit-keyframes bounceOutLarge {
			0% {
				opacity: 1;
				-webkit-transform: scale(1);
			}

			30% {
				-webkit-transform: scale(.8);
			}

			50%, 100% {
				opacity: 0;
				-webkit-transform: scale(1.50);
			}
		}

		@keyframes bounceOutLarge {
			0% {
				opacity: 1;
				transform: scale(1);
			}

			30% {
				transform: scale(.8);
			}

			50%, 100% {
				opacity: 0;
				transform: scale(1.50);
			}
		}

		.animating.bounce-out-large {
			-webkit-animation-name: bounceOutLarge;
			animation-name: bounceOutLarge;
		}


/*	#Bounce Out Up
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceOutUp {
			0% {
				opacity: 1;
				-webkit-transform: translateY(0);
			}

			15% { -webkit-transform: translateY(-10px); }

			40% { -webkit-transform: translateY(15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateY(-60px);
			}
		}

		@keyframes bounceOutUp {
			0% {
				opacity: 1;
				transform: translateY(0);
			}

			15% { transform: translateY(-10px); }

			40% { transform: translateY(15px); }

			90%, 100% {
				opacity: 0;
				transform: translateY(-60px);
			}
		}

		.animating.bounce-out-up {
			-webkit-animation-name: bounceOutUp;
			animation-name: bounceOutUp;
		}

	/* Big */

		@-webkit-keyframes bounceOutUpBig {
			0% {
				opacity: 1;
				-webkit-transform: translateY(0);
			}

			15% { -webkit-transform: translateY(-20px); }

			40% { -webkit-transform: translateY(15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateY(-200px);
			}
		}

		@keyframes bounceOutUpBig {
			0% {
				opacity: 1;
				transform: translateY(0);
			}

			15% { transform: translateY(-20px); }

			40% { transform: translateY(15px); }

			90%, 100% {
				opacity: 0;
				transform: translateY(-200px);
			}
		}

		.animating.bounce-out-up-big {
			-webkit-animation-name: bounceOutUpBig;
			animation-name: bounceOutUpBig;
		}

	/* Large */

		@-webkit-keyframes bounceOutUpLarge {
			0% {
				opacity: 1;
				-webkit-transform: translateY(0);
			}

			15% { -webkit-transform: translateY(-25px); }

			40% { -webkit-transform: translateY(20px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateY(-600px);
			}
		}

		@keyframes bounceOutUpLarge {
			0% {
				opacity: 1;
				transform: translateY(0);
			}

			15% { transform: translateY(-25px); }

			40% { transform: translateY(20px); }

			90%, 100% {
				opacity: 0;
				transform: translateY(-600px);
			}
		}

		.animating.bounce-out-up-large {
			-webkit-animation-name: bounceOutUpLarge;
			animation-name: bounceOutUpLarge;
		}


/*	#Bounce Out Down
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceOutDown {
			0% {
				opacity: 1;
				-webkit-transform: translateY(0);
			}

			15% { -webkit-transform: translateY(10px); }

			40% { -webkit-transform: translateY(-10px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateY(60px);
			}
		}

		@keyframes bounceOutDown {
			0% {
				opacity: 1;
				transform: translateY(0);
			}

			15% { transform: translateY(10px); }

			40% { transform: translateY(-10px); }

			90%, 100% {
				opacity: 0;
				transform: translateY(60px);
			}
		}

		.animating.bounce-out-down {
			-webkit-animation-name: bounceOutDown;
			animation-name: bounceOutDown;
		}

	/* Big */

		@-webkit-keyframes bounceOutDownBig {
			0% {
				opacity: 1;
				-webkit-transform: translateY(0);
			}

			15% { -webkit-transform: translateY(15px); }

			40% { -webkit-transform: translateY(-20px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateY(200px);
			}
		}

		@keyframes bounceOutDownBig {
			0% {
				opacity: 1;
				transform: translateY(0);
			}

			15% { transform: translateY(15px); }

			40% { transform: translateY(-20px); }

			90%, 100% {
				opacity: 0;
				transform: translateY(200px);
			}
		}

		.animating.bounce-out-down-big {
			-webkit-animation-name: bounceOutDownBig;
			animation-name: bounceOutDownBig;
		}

	/* Large */

		@-webkit-keyframes bounceOutDownLarge {
			0% {
				opacity: 1;
				-webkit-transform: translateY(0);
			}

			15% { -webkit-transform: translateY(20px); }

			40% { -webkit-transform: translateY(-25px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateY(600px);
			}
		}

		@keyframes bounceOutDownLarge {
			0% {
				opacity: 1;
				transform: translateY(0);
			}

			15% { transform: translateY(20px); }

			40% { transform: translateY(-25px); }

			90%, 100% {
				opacity: 0;
				transform: translateY(600px);
			}
		}

		.animating.bounce-out-down-large {
			-webkit-animation-name: bounceOutDownLarge;
			animation-name: bounceOutDownLarge;
		}


/*	#Bounce Out Left
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceOutLeft {
			0% {
				opacity: 1;
				-webkit-transform: translateX(0);
			}

			15% { -webkit-transform: translateX(-10px); }

			40% { -webkit-transform: translateX(15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateX(-60px);
			}
		}

		@keyframes bounceOutLeft {
			0% {
				opacity: 1;
				transform: translateX(0);
			}

			15% { transform: translateX(-10px); }

			40% { transform: translateX(15px); }

			90%, 100% {
				opacity: 0;
				transform: translateX(-60px);
			}
		}

		.animating.bounce-out-left {
			-webkit-animation-name: bounceOutLeft;
			animation-name: bounceOutLeft;
		}

	/* Big */

		@-webkit-keyframes bounceOutLeftBig {
			0% {
				opacity: 1;
				-webkit-transform: translateX(0);
			}

			15% { -webkit-transform: translateX(-20px); }

			40% { -webkit-transform: translateX(15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateX(-200px);
			}
		}

		@keyframes bounceOutLeftBig {
			0% {
				opacity: 1;
				transform: translateX(0);
			}

			15% { transform: translateX(-20px); }

			40% { transform: translateX(15px); }

			90%, 100% {
				opacity: 0;
				transform: translateX(-200px);
			}
		}

		.animating.bounce-out-left-big {
			-webkit-animation-name: bounceOutLeftBig;
			animation-name: bounceOutLeftBig;
		}

	/* Large */

		@-webkit-keyframes bounceOutLeftLarge {
			0% {
				opacity: 1;
				-webkit-transform: translateX(0);
			}

			15% { -webkit-transform: translateX(-25px); }

			40% { -webkit-transform: translateX(20px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateX(-600px);
			}
		}

		@keyframes bounceOutLeftLarge {
			0% {
				opacity: 1;
				transform: translateX(0);
			}

			15% { transform: translateX(-25px); }

			40% { transform: translateX(20px); }

			90%, 100% {
				opacity: 0;
				transform: translateX(-600px);
			}
		}

		.animating.bounce-out-left-large {
			-webkit-animation-name: bounceOutLeftLarge;
			animation-name: bounceOutLeftLarge;
		}


/*	#Bounce Out Right
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceOutRight {
			0% {
				opacity: 1;
				-webkit-transform: translateX(0);
			}

			15% { -webkit-transform: translateX(10px); }

			40% { -webkit-transform: translateX(-10px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateX(60px);
			}
		}

		@keyframes bounceOutRight {
			0% {
				opacity: 1;
				transform: translateX(0);
			}

			15% { transform: translateX(10px); }

			40% { transform: translateX(-10px); }

			90%, 100% {
				opacity: 0;
				transform: translateX(60px);
			}
		}

		.animating.bounce-out-right {
			-webkit-animation-name: bounceOutRight;
			animation-name: bounceOutRight;
		}

	/* Big */

		@-webkit-keyframes bounceOutRightBig {
			0% {
				opacity: 1;
				-webkit-transform: translateX(0);
			}

			15% { -webkit-transform: translateX(15px); }

			40% { -webkit-transform: translateX(-20px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateX(200px);
			}
		}

		@keyframes bounceOutRightBig {
			0% {
				opacity: 1;
				transform: translateX(0);
			}

			15% { transform: translateX(15px); }

			40% { transform: translateX(-20px); }

			90%, 100% {
				opacity: 0;
				transform: translateX(200px);
			}
		}

		.animating.bounce-out-right-big {
			-webkit-animation-name: bounceOutRightBig;
			animation-name: bounceOutRightBig;
		}

	/* Large */

		@-webkit-keyframes bounceOutRightLarge {
			0% {
				opacity: 1;
				-webkit-transform: translateX(0);
			}

			15% { -webkit-transform: translateX(20px); }

			40% { -webkit-transform: translateX(-25px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translateX(600px);
			}
		}

		@keyframes bounceOutRightLarge {
			0% {
				opacity: 1;
				transform: translateX(0);
			}

			15% { transform: translateX(20px); }

			40% { transform: translateX(-25px); }

			90%, 100% {
				opacity: 0;
				transform: translateX(600px);
			}
		}

		.animating.bounce-out-right-large {
			-webkit-animation-name: bounceOutRightLarge;
			animation-name: bounceOutRightLarge;
		}


/*	#Bounce Out Up Left
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceOutUpLeft {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(-10px, -10px); }

			40% { -webkit-transform: translate(15px, 15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(-60px, -60px);
			}
		}

		@keyframes bounceOutUpLeft {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(-10px, -10px); }

			40% { transform: translate(15px, 15px); }

			90%, 100% {
				opacity: 0;
				transform: translate(-60px, -60px);
			}
		}

		.animating.bounce-out-up-left {
			-webkit-animation-name: bounceOutUpLeft;
			animation-name: bounceOutUpLeft;
		}

	/* Big */

		@-webkit-keyframes bounceOutUpLeftBig {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(-20px, -20px); }

			40% { -webkit-transform: translate(15px, 15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(-200px, -200px);
			}
		}

		@keyframes bounceOutUpLeftBig {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(-20px, -20px); }

			40% { transform: translate(15px, 15px); }

			90%, 100% {
				opacity: 0;
				transform: translate(-200px, -200px);
			}
		}

		.animating.bounce-out-up-left-big {
			-webkit-animation-name: bounceOutUpLeftBig;
			animation-name: bounceOutUpLeftBig;
		}

	/* Large */

		@-webkit-keyframes bounceOutUpLeftLarge {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(-25px, -25px); }

			40% { -webkit-transform: translate(20px, 20px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(-600px, -600px);
			}
		}

		@keyframes bounceOutUpLeftLarge {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(-25px, -25px); }

			40% { transform: translate(20px, 20px); }

			90%, 100% {
				opacity: 0;
				transform: translate(-600px, -600px);
			}
		}

		.animating.bounce-out-up-left-large {
			-webkit-animation-name: bounceOutUpLeftLarge;
			animation-name: bounceOutUpLeftLarge;
		}


/*	#Bounce Out Up Right
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceOutUpRight {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(10px, -10px); }

			40% { -webkit-transform: translate(-15px, 15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(60px, -60px);
			}
		}

		@keyframes bounceOutUpRight {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(10px, -10px); }

			40% { transform: translate(-15px, 15px); }

			90%, 100% {
				opacity: 0;
				transform: translate(60px, -60px);
			}
		}

		.animating.bounce-out-up-right {
			-webkit-animation-name: bounceOutUpRight;
			animation-name: bounceOutUpRight;
		}

	/* Big */

		@-webkit-keyframes bounceOutUpRightBig {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(20px, -20px); }

			40% { -webkit-transform: translate(-15px, 15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(200px, -200px);
			}
		}

		@keyframes bounceOutUpRightBig {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(20px, -20px); }

			40% { transform: translate(-15px, 15px); }

			90%, 100% {
				opacity: 0;
				transform: translate(200px, -200px);
			}
		}

		.animating.bounce-out-up-right-big {
			-webkit-animation-name: bounceOutUpRightBig;
			animation-name: bounceOutUpRightBig;
		}

	/* Large */

		@-webkit-keyframes bounceOutUpRightLarge {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(25px, -25px); }

			40% { -webkit-transform: translate(-20px, 20px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(600px, -600px);
			}
		}

		@keyframes bounceOutUpRightLarge {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(25px, -25px); }

			40% { transform: translate(-20px, 20px); }

			90%, 100% {
				opacity: 0;
				transform: translate(600px, -600px);
			}
		}

		.animating.bounce-out-up-right-large {
			-webkit-animation-name: bounceOutUpRightLarge;
			animation-name: bounceOutUpRightLarge;
		}


/*	#Bounce Out Down Left
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceOutDownLeft {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(-10px, 10px); }

			40% { -webkit-transform: translate(15px, -15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(-60px, 60px);
			}
		}

		@keyframes bounceOutDownLeft {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(-10px, 10px); }

			40% { transform: translate(15px, -15px); }

			90%, 100% {
				opacity: 0;
				transform: translate(-60px, 60px);
			}
		}

		.animating.bounce-out-down-left {
			-webkit-animation-name: bounceOutDownLeft;
			animation-name: bounceOutDownLeft;
		}

	/* Big */

		@-webkit-keyframes bounceOutDownLeftBig {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(-20px, 20px); }

			40% { -webkit-transform: translate(15px, -15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(-200px, 200px);
			}
		}

		@keyframes bounceOutDownLeftBig {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(-20px, 20px); }

			40% { transform: translate(15px, -15px); }

			90%, 100% {
				opacity: 0;
				transform: translate(-200px, 200px);
			}
		}

		.animating.bounce-out-down-left-big {
			-webkit-animation-name: bounceOutDownLeftBig;
			animation-name: bounceOutDownLeftBig;
		}

	/* Large */

		@-webkit-keyframes bounceOutDownLeftLarge {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(-25px, 25px); }

			40% { -webkit-transform: translate(20px, -20px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(-600px, 600px);
			}
		}

		@keyframes bounceOutDownLeftLarge {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(-25px, 25px); }

			40% { transform: translate(20px, -20px); }

			90%, 100% {
				opacity: 0;
				transform: translate(-600px, 600px);
			}
		}

		.animating.bounce-out-down-left-large {
			-webkit-animation-name: bounceOutDownLeftLarge;
			animation-name: bounceOutDownLeftLarge;
		}


/*	#Bounce Out Down Right
//	================================================== */

	/* Default */

		@-webkit-keyframes bounceOutDownRight {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(10px, 10px); }

			40% { -webkit-transform: translate(-15px, -15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(60px, 60px);
			}
		}

		@keyframes bounceOutDownRight {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(10px, 10px); }

			40% { transform: translate(-15px, -15px); }

			90%, 100% {
				opacity: 0;
				transform: translate(60px, 60px);
			}
		}

		.animating.bounce-out-down-right {
			-webkit-animation-name: bounceOutDownRight;
			animation-name: bounceOutDownRight;
		}

	/* Big */

		@-webkit-keyframes bounceOutDownRightBig {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(20px, 20px); }

			40% { -webkit-transform: translate(-15px, -15px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(200px, 200px);
			}
		}

		@keyframes bounceOutDownRightBig {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(20px, 20px); }

			40% { transform: translate(-15px, -15px); }

			90%, 100% {
				opacity: 0;
				transform: translate(200px, 200px);
			}
		}

		.animating.bounce-out-down-right-big {
			-webkit-animation-name: bounceOutDownRightBig;
			animation-name: bounceOutDownRightBig;
		}

	/* Large */

		@-webkit-keyframes bounceOutDownRightLarge {
			0% {
				opacity: 1;
				-webkit-transform: translate(0, 0);
			}

			15% { -webkit-transform: translate(25px, 25px); }

			40% { -webkit-transform: translate(-20px, -20px); }

			90%, 100% {
				opacity: 0;
				-webkit-transform: translate(600px, 600px);
			}
		}

		@keyframes bounceOutDownRightLarge {
			0% {
				opacity: 1;
				transform: translate(0, 0);
			}

			15% { transform: translate(25px, 25px); }

			40% { transform: translate(-20px, -20px); }

			90%, 100% {
				opacity: 0;
				transform: translate(600px, 600px);
			}
		}

		.animating.bounce-out-down-right-large {
			-webkit-animation-name: bounceOutDownRightLarge;
			animation-name: bounceOutDownRightLarge;
		}


/*	#Zoom In
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomIn {
			0% {
				opacity: 0;
				-webkit-transform: scale(0);
			}

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

		@keyframes zoomIn {
			0% {
				opacity: 0;
				transform: scale(0);
			}

			100% {
				opacity: 1;
				transform: scale(1);
			}
		}

		.animating.zoom-in {
			-webkit-animation-name: zoomIn;
			animation-name: zoomIn;
		}


/*	#Zoom In Up
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomInUp {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(200px);
			}

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

		@keyframes zoomInUp {
			0% {
				opacity: 0;
				transform: scale(0) translateY(200px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}
		}

		.animating.zoom-in-up {
			-webkit-animation-name: zoomInUp;
			animation-name: zoomInUp;
		}

	/* Big */

		@-webkit-keyframes zoomInUpBig {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(600px);
			}

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

		@keyframes zoomInUpBig {
			0% {
				opacity: 0;
				transform: scale(0) translateY(600px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}
		}

		.animating.zoom-in-up-big {
			-webkit-animation-name: zoomInUpBig;
			animation-name: zoomInUpBig;
		}

	/* Large */

		@-webkit-keyframes zoomInUpLarge {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(1000px);
			}

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

		@keyframes zoomInUpLarge {
			0% {
				opacity: 0;
				transform: scale(0) translateY(1000px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}
		}

		.animating.zoom-in-up-large {
			-webkit-animation-name: zoomInUpLarge;
			animation-name: zoomInUpLarge;
		}


/*	#Zoom In Down
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomInDown {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(-200px);
			}

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

		@keyframes zoomInDown {
			0% {
				opacity: 0;
				transform: scale(0) translateY(-200px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}
		}

		.animating.zoom-in-down {
			-webkit-animation-name: zoomInDown;
			animation-name: zoomInDown;
		}

	/* Big */

		@-webkit-keyframes zoomInDownBig {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(-600px);
			}

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

		@keyframes zoomInDownBig {
			0% {
				opacity: 0;
				transform: scale(0) translateY(-600px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}
		}

		.animating.zoom-in-down-big {
			-webkit-animation-name: zoomInDownBig;
			animation-name: zoomInDownBig;
		}

	/* Large */

		@-webkit-keyframes zoomInDownLarge {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(-1000px);
			}

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

		@keyframes zoomInDownLarge {
			0% {
				opacity: 0;
				transform: scale(0) translateY(-1000px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}
		}

		.animating.zoom-in-down-large {
			-webkit-animation-name: zoomInDownLarge;
			animation-name: zoomInDownLarge;
		}


/*	#Zoom In Left
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomInLeft {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(-200px);
			}

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

		@keyframes zoomInLeft {
			0% {
				opacity: 0;
				transform: scale(0) translateX(-200px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}
		}

		.animating.zoom-in-left {
			-webkit-animation-name: zoomInLeft;
			animation-name: zoomInLeft;
		}

	/* Big */

		@-webkit-keyframes zoomInLeftBig {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(-600px);
			}

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

		@keyframes zoomInLeftBig {
			0% {
				opacity: 0;
				transform: scale(0) translateX(-600px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}
		}

		.animating.zoom-in-left-big {
			-webkit-animation-name: zoomInLeftBig;
			animation-name: zoomInLeftBig;
		}

	/* Large */

		@-webkit-keyframes zoomInLeftLarge {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(-1300px);
			}

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

		@keyframes zoomInLeftLarge {
			0% {
				opacity: 0;
				transform: scale(0) translateX(-1300px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}
		}

		.animating.zoom-in-left-large {
			-webkit-animation-name: zoomInLeftLarge;
			animation-name: zoomInLeftLarge;
		}


/*	#Zoom In Right
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomInRight {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(200px);
			}

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

		@keyframes zoomInRight {
			0% {
				opacity: 0;
				transform: scale(0) translateX(200px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}
		}

		.animating.zoom-in-right {
			-webkit-animation-name: zoomInRight;
			animation-name: zoomInRight;
		}

	/* Big */

		@-webkit-keyframes zoomInRightBig {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(600px);
			}

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

		@keyframes zoomInRightBig {
			0% {
				opacity: 0;
				transform: scale(0) translateX(600px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}
		}

		.animating.zoom-in-right-big {
			-webkit-animation-name: zoomInRightBig;
			animation-name: zoomInRightBig;
		}

	/* Large */

		@-webkit-keyframes zoomInRightLarge {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(1300px);
			}

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

		@keyframes zoomInRightLarge {
			0% {
				opacity: 0;
				transform: scale(0) translateX(1300px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}
		}

		.animating.zoom-in-right-large {
			-webkit-animation-name: zoomInRightLarge;
			animation-name: zoomInRightLarge;
		}


/*	#Zoom In Up Left
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomInUpLeft {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(200px, 200px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInUpLeft {
			0% {
				opacity: 0;
				transform: scale(0) translate(200px, 200px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-up-left {
			-webkit-animation-name: zoomInUpLeft;
			animation-name: zoomInUpLeft;
		}

	/* Big */

		@-webkit-keyframes zoomInUpLeftBig {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(600px, 600px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInUpLeftBig {
			0% {
				opacity: 0;
				transform: scale(0) translate(600px, 600px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-up-left-big {
			-webkit-animation-name: zoomInUpLeftBig;
			animation-name: zoomInUpLeftBig;
		}

	/* Large */

		@-webkit-keyframes zoomInUpLeftLarge {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(1000px, 1000px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInUpLeftLarge {
			0% {
				opacity: 0;
				transform: scale(0) translate(1000px, 1000px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-up-left-large {
			-webkit-animation-name: zoomInUpLeftLarge;
			animation-name: zoomInUpLeftLarge;
		}


/*	#Zoom In Up Right
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomInUpRight {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-200px, 200px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInUpRight {
			0% {
				opacity: 0;
				transform: scale(0) translate(-200px, 200px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-up-right {
			-webkit-animation-name: zoomInUpRight;
			animation-name: zoomInUpRight;
		}

	/* Big */

		@-webkit-keyframes zoomInUpRightBig {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-600px, 600px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInUpRightBig {
			0% {
				opacity: 0;
				transform: scale(0) translate(-600px, 600px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-up-right-big {
			-webkit-animation-name: zoomInUpRightBig;
			animation-name: zoomInUpRightBig;
		}

	/* Large */

		@-webkit-keyframes zoomInUpRightLarge {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-1000px, 1000px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInUpRightLarge {
			0% {
				opacity: 0;
				transform: scale(0) translate(-1000px, 1000px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-up-right-large {
			-webkit-animation-name: zoomInUpRightLarge;
			animation-name: zoomInUpRightLarge;
		}


/*	#Zoom In Down Left
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomInDownLeft {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-200px, -200px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInDownLeft {
			0% {
				opacity: 0;
				transform: scale(0) translate(-200px, -200px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-down-left {
			-webkit-animation-name: zoomInDownLeft;
			animation-name: zoomInDownLeft;
		}

	/* Big */

		@-webkit-keyframes zoomInDownLeftBig {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-600px, -600px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInDownLeftBig {
			0% {
				opacity: 0;
				transform: scale(0) translate(-600px, -600px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-down-left-big {
			-webkit-animation-name: zoomInDownLeftBig;
			animation-name: zoomInDownLeftBig;
		}

	/* Large */

		@-webkit-keyframes zoomInDownLeftLarge {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-1000px, -1000px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInDownLeftLarge {
			0% {
				opacity: 0;
				transform: scale(0) translate(-1000px, -1000px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-down-left-large {
			-webkit-animation-name: zoomInDownLeftLarge;
			animation-name: zoomInDownLeftLarge;
		}


/*	#Zoom In Down Right
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomInDownRight {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(200px, -200px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInDownRight {
			0% {
				opacity: 0;
				transform: scale(0) translate(200px, -200px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-down-right {
			-webkit-animation-name: zoomInDownRight;
			animation-name: zoomInDownRight;
		}

	/* Big */

		@-webkit-keyframes zoomInDownRightBig {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(600px, -600px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInDownRightBig {
			0% {
				opacity: 0;
				transform: scale(0) translate(600px, -600px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-down-right-big {
			-webkit-animation-name: zoomInDownRightBig;
			animation-name: zoomInDownRightBig;
		}

	/* Large */

		@-webkit-keyframes zoomInDownRightLarge {
			0% {
				opacity: 0;
				-webkit-transform: scale(0) translate(1000px, -1000px);
			}

			100% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}
		}

		@keyframes zoomInDownRightLarge {
			0% {
				opacity: 0;
				transform: scale(0) translate(1000px, -1000px);
			}

			100% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}
		}

		.animating.zoom-in-down-right-large {
			-webkit-animation-name: zoomInDownRightLarge;
			animation-name: zoomInDownRightLarge;
		}


/*	#Zoom Out
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomOut {
			0% {
				opacity: 1;
				-webkit-transform: scale(1);
			}

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

		@keyframes zoomOut {
			0% {
				opacity: 1;
				transform: scale(1);
			}

			100% {
				opacity: 0;
				transform: scale(0);
			}
		}

		.animating.zoom-out {
			-webkit-animation-name: zoomOut;
			animation-name: zoomOut;
		}


/*	#Zoom Out Up
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomOutUp {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(-200px);
			}
		}

		@keyframes zoomOutUp {
			0% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateY(-200px);
			}
		}

		.animating.zoom-out-up {
			-webkit-animation-name: zoomOutUp;
			animation-name: zoomOutUp;
		}

	/* Big */

		@-webkit-keyframes zoomOutUpBig {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(-600px);
			}
		}

		@keyframes zoomOutUpBig {
			0% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateY(-600px);
			}
		}

		.animating.zoom-out-up-big {
			-webkit-animation-name: zoomOutUpBig;
			animation-name: zoomOutUpBig;
		}

	/* Large */

		@-webkit-keyframes zoomOutUpLarge {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(-1000px);
			}
		}

		@keyframes zoomOutUpLarge {
			0% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateY(-1000px);
			}
		}

		.animating.zoom-out-up-large {
			-webkit-animation-name: zoomOutUpLarge;
			animation-name: zoomOutUpLarge;
		}


/*	#Zoom Out Down
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomOutDown {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(200px);
			}
		}

		@keyframes zoomOutDown {
			0% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateY(200px);
			}
		}

		.animating.zoom-out-down {
			-webkit-animation-name: zoomOutDown;
			animation-name: zoomOutDown;
		}

	/* Big */

		@-webkit-keyframes zoomOutDownBig {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(600px);
			}
		}

		@keyframes zoomOutDownBig {
			0% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateY(600px);
			}
		}

		.animating.zoom-out-down-big {
			-webkit-animation-name: zoomOutDownBig;
			animation-name: zoomOutDownBig;
		}

	/* Large */

		@-webkit-keyframes zoomOutDownLarge {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateY(1000px);
			}
		}

		@keyframes zoomOutDownLarge {
			0% {
				opacity: 1;
				transform: scale(1) translateY(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateY(1000px);
			}
		}

		.animating.zoom-out-down-large {
			-webkit-animation-name: zoomOutDownLarge;
			animation-name: zoomOutDownLarge;
		}


/*	#Zoom Out Left
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomOutLeft {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(-200px);
			}
		}

		@keyframes zoomOutLeft {
			0% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateX(-200px);
			}
		}

		.animating.zoom-out-left {
			-webkit-animation-name: zoomOutLeft;
			animation-name: zoomOutLeft;
		}

	/* Big */

		@-webkit-keyframes zoomOutLeftBig {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(-600px);
			}
		}

		@keyframes zoomOutLeftBig {
			0% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateX(-600px);
			}
		}

		.animating.zoom-out-left-big {
			-webkit-animation-name: zoomOutLeftBig;
			animation-name: zoomOutLeftBig;
		}

	/* Large */

		@-webkit-keyframes zoomOutLeftLarge {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(-1300px);
			}
		}

		@keyframes zoomOutLeftLarge {
			0% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateX(-1300px);
			}
		}

		.animating.zoom-out-left-large {
			-webkit-animation-name: zoomOutLeftLarge;
			animation-name: zoomOutLeftLarge;
		}


/*	#Zoom Out Right
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomOutRight {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(200px);
			}
		}

		@keyframes zoomOutRight {
			0% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateX(200px);
			}
		}

		.animating.zoom-out-right {
			-webkit-animation-name: zoomOutRight;
			animation-name: zoomOutRight;
		}

	/* Big */

		@-webkit-keyframes zoomOutRightBig {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(600px);
			}
		}

		@keyframes zoomOutRightBig {
			0% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateX(600px);
			}
		}

		.animating.zoom-out-right-big {
			-webkit-animation-name: zoomOutRightBig;
			animation-name: zoomOutRightBig;
		}

	/* Large */

		@-webkit-keyframes zoomOutRightLarge {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translateX(1300px);
			}
		}

		@keyframes zoomOutRightLarge {
			0% {
				opacity: 1;
				transform: scale(1) translateX(0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translateX(1300px);
			}
		}

		.animating.zoom-out-right-large {
			-webkit-animation-name: zoomOutRightLarge;
			animation-name: zoomOutRightLarge;
		}


/*	#Zoom Out Up Left
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomOutUpLeft {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-200px, -200px);
			}
		}

		@keyframes zoomOutUpLeft {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(-200px, -200px);
			}
		}

		.animating.zoom-out-up-left {
			-webkit-animation-name: zoomOutUpLeft;
			animation-name: zoomOutUpLeft;
		}

	/* Big */

		@-webkit-keyframes zoomOutUpLeftBig {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-600px, -600px);
			}
		}

		@keyframes zoomOutUpLeftBig {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(-600px, -600px);
			}
		}

		.animating.zoom-out-up-left-big {
			-webkit-animation-name: zoomOutUpLeftBig;
			animation-name: zoomOutUpLeftBig;
		}

	/* Large */

		@-webkit-keyframes zoomOutUpLeftLarge {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-1000px, -1000px);
			}
		}

		@keyframes zoomOutUpLeftLarge {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(-1000px, -1000px);
			}
		}

		.animating.zoom-out-up-left-large {
			-webkit-animation-name: zoomOutUpLeftLarge;
			animation-name: zoomOutUpLeftLarge;
		}


/*	#Zoom Out Up Right
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomOutUpRight {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(200px, -200px);
			}
		}

		@keyframes zoomOutUpRight {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(200px, -200px);
			}
		}

		.animating.zoom-out-up-right {
			-webkit-animation-name: zoomOutUpRight;
			animation-name: zoomOutUpRight;
		}

	/* Big */

		@-webkit-keyframes zoomOutUpRightBig {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(600px, -600px);
			}
		}

		@keyframes zoomOutUpRightBig {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(600px, -600px);
			}
		}

		.animating.zoom-out-up-right-big {
			-webkit-animation-name: zoomOutUpRightBig;
			animation-name: zoomOutUpRightBig;
		}

	/* Large */

		@-webkit-keyframes zoomOutUpRightLarge {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(1000px, -1000px);
			}
		}

		@keyframes zoomOutUpRightLarge {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(1000px, -1000px);
			}
		}

		.animating.zoom-out-up-right-large {
			-webkit-animation-name: zoomOutUpRightLarge;
			animation-name: zoomOutUpRightLarge;
		}


/*	#Zoom Out Down Left
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomOutDownLeft {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-200px, 200px);
			}
		}

		@keyframes zoomOutDownLeft {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(-200px, 200px);
			}
		}

		.animating.zoom-out-down-left {
			-webkit-animation-name: zoomOutDownLeft;
			animation-name: zoomOutDownLeft;
		}

	/* Big */

		@-webkit-keyframes zoomOutDownLeftBig {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-600px, 600px);
			}
		}

		@keyframes zoomOutDownLeftBig {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(-600px, 600px);
			}
		}

		.animating.zoom-out-down-left-big {
			-webkit-animation-name: zoomOutDownLeftBig;
			animation-name: zoomOutDownLeftBig;
		}

	/* Large */

		@-webkit-keyframes zoomOutDownLeftLarge {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(-1000px, 1000px);
			}
		}

		@keyframes zoomOutDownLeftLarge {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(-1000px, 1000px);
			}
		}

		.animating.zoom-out-down-left-large {
			-webkit-animation-name: zoomOutDownLeftLarge;
			animation-name: zoomOutDownLeftLarge;
		}


/*	#Zoom Out Down Right
//	================================================== */

	/* Default */

		@-webkit-keyframes zoomOutDownRight {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(200px, 200px);
			}
		}

		@keyframes zoomOutDownRight {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(200px, 200px);
			}
		}

		.animating.zoom-out-down-right {
			-webkit-animation-name: zoomOutDownRight;
			animation-name: zoomOutDownRight;
		}

	/* Big */

		@-webkit-keyframes zoomOutDownRightBig {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(600px, 600px);
			}
		}

		@keyframes zoomOutDownRightBig {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(600px, 600px);
			}
		}

		.animating.zoom-out-down-right-big {
			-webkit-animation-name: zoomOutDownRightBig;
			animation-name: zoomOutDownRightBig;
		}

	/* Large */

		@-webkit-keyframes zoomOutDownRightLarge {
			0% {
				opacity: 1;
				-webkit-transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				-webkit-transform: scale(0) translate(1000px, 1000px);
			}
		}

		@keyframes zoomOutDownRightLarge {
			0% {
				opacity: 1;
				transform: scale(1) translate(0, 0);
			}

			100% {
				opacity: 0;
				transform: scale(0) translate(1000px, 1000px);
			}
		}

		.animating.zoom-out-down-right-large {
			-webkit-animation-name: zoomOutDownRightLarge;
			animation-name: zoomOutDownRightLarge;
		}


/*	#Flip In X
//	================================================== */

	@-webkit-keyframes flipInX {
		0% {
			opacity: 0;
			-webkit-transform: perspective(500) rotateX(90deg);
		}

		50% { -webkit-transform: perspective(500) rotateX(-15deg); }

		70% { -webkit-transform: perspective(500) rotateX(15deg); }

		100% {
			opacity: 1;
			-webkit-transform: perspective(500) rotateX(0deg);
		}
	}

	@keyframes flipInX {
		0% {
			opacity: 0;
			transform: perspective(500) rotateX(90deg);
		}

		50% { transform: perspective(500) rotateX(-15deg); }

		70% { transform: perspective(500) rotateX(15deg); }

		100% {
			opacity: 1;
			transform: perspective(500) rotateX(0deg);
		}
	}

	.animating.flip-in-x {
		-webkit-backface-visibility: visible !important;
		backface-visibility: visible !important;
		-webkit-animation-name: flipInX;
		animation-name: flipInX;
	}


/*	#Flip In Y
//	================================================== */

	@-webkit-keyframes flipInY {
		0% {
			-webkit-transform: perspective(500) rotateY(90deg);
			opacity: 0;
		}

		50% { -webkit-transform: perspective(500) rotateY(-25deg); }

		70% { -webkit-transform: perspective(500) rotateY(25deg); }

		100% {
			-webkit-transform: perspective(500) rotateY(0deg);
			opacity: 1;
		}
	}

	@keyframes flipInY {
		0% {
			transform: perspective(500) rotateY(90deg);
			opacity: 0;
		}

		50% { transform: perspective(500) rotateY(-25deg); }

		70% { transform: perspective(500) rotateY(25deg); }

		100% {
			transform: perspective(500) rotateY(0deg);
			opacity: 1;
		}
	}

	.animating.flip-in-y {
		-webkit-backface-visibility: visible !important;
		backface-visibility: visible !important;
		-webkit-animation-name: flipInY;
		animation-name: flipInY;
	}


/*	#Flip In Top Front
//	================================================== */

	@-webkit-keyframes flipInTopFront {
		0% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateX(90deg);
		}

		50% { -webkit-transform: perspective(1000) rotateX(-15deg); }

		70% { -webkit-transform: perspective(1000) rotateX(15deg); }

		100% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateX(0deg);
		}
	}

	@keyframes flipInTopFront {
		0% {
			opacity: 0;
			transform: perspective(1000) rotateX(90deg);
		}

		50% { transform: perspective(1000) rotateX(-15deg); }

		70% { transform: perspective(1000) rotateX(15deg); }

		100% {
			opacity: 1;
			transform: perspective(1000) rotateX(0deg);
		}
	}

	.animating.flip-in-top-front {
		-webkit-transform-origin-x: 50%;
		-webkit-transform-origin-y: 0%;
		transform-origin-x: 50%;
		transform-origin-y: 0%;
		-webkit-animation-name: flipInTopFront;
		animation-name: flipInTopFront;
	}


/*	#Flip In Top Back
//	================================================== */

	@-webkit-keyframes flipInTopBack {
		0% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateX(-90deg);
		}

		50% { -webkit-transform: perspective(1000) rotateX(20deg); }

		70% { -webkit-transform: perspective(1000) rotateX(-15deg); }

		100% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateX(0deg);
		}
	}

	@keyframes flipInTopBack {
		0% {
			opacity: 0;
			transform: perspective(1000) rotateX(-90deg);
		}

		50% { transform: perspective(1000) rotateX(20deg); }

		70% { transform: perspective(1000) rotateX(-15deg); }

		100% {
			opacity: 1;
			transform: perspective(1000) rotateX(0deg);
		}
	}

	.animating.flip-in-top-back {
		-webkit-transform-origin-x: 50%;
		-webkit-transform-origin-y: 0%;
		transform-origin-x: 50%;
		transform-origin-y: 0%;
		-webkit-animation-name: flipInTopBack;
		animation-name: flipInTopBack;
	}


/*	#Flip In Bottom Front
//	================================================== */

	@-webkit-keyframes flipInBottomFront {
		0% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateX(-90deg);
		}

		50% { -webkit-transform: perspective(1000) rotateX(20deg); }

		70% { -webkit-transform: perspective(1000) rotateX(-15deg); }

		100% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateX(0deg);
		}
	}

	@keyframes flipInBottomFront {
		0% {
			opacity: 0;
			transform: perspective(1000) rotateX(-90deg);
		}

		50% { transform: perspective(1000) rotateX(20deg); }

		70% { transform: perspective(1000) rotateX(-15deg); }

		100% {
			opacity: 1;
			transform: perspective(1000) rotateX(0deg);
		}
	}

	.animating.flip-in-bottom-front {
		-webkit-transform-origin-x: 50%;
		-webkit-transform-origin-y: 100%;
		transform-origin-x: 50%;
		transform-origin-y: 100%;
		-webkit-animation-name: flipInBottomFront;
		animation-name: flipInBottomFront;
	}


/*	#Flip In Bottom Back
//	================================================== */

	@-webkit-keyframes flipInBottomBack {
		0% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateX(90deg);
		}

		50% { -webkit-transform: perspective(1000) rotateX(-20deg); }

		70% { -webkit-transform: perspective(1000) rotateX(15deg); }

		100% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateX(0deg);
		}
	}

	@keyframes flipInBottomBack {
		0% {
			opacity: 0;
			transform: perspective(1000) rotateX(90deg);
		}

		50% { transform: perspective(1000) rotateX(-20deg); }

		70% { transform: perspective(1000) rotateX(15deg); }

		100% {
			opacity: 1;
			transform: perspective(1000) rotateX(0deg);
		}
	}

	.animating.flip-in-bottom-back {
		-webkit-transform-origin-x: 50%;
		-webkit-transform-origin-y: 100%;
		transform-origin-x: 50%;
		transform-origin-y: 100%;
		-webkit-animation-name: flipInBottomBack;
		animation-name: flipInBottomBack;
	}


/*	#Flip In Left Front
//	================================================== */

	@-webkit-keyframes flipInLeftFront {
		0% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateY(-90deg);
		}

		50% { -webkit-transform: perspective(1000) rotateY(20deg); }

		70% { -webkit-transform: perspective(1000) rotateY(-15deg); }

		100% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateY(0deg);
		}
	}

	@keyframes flipInLeftFront {
		0% {
			opacity: 0;
			transform: perspective(1000) rotateY(-90deg);
		}

		50% { transform: perspective(1000) rotateY(20deg); }

		70% { transform: perspective(1000) rotateY(-15deg); }

		100% {
			opacity: 1;
			transform: perspective(1000) rotateY(0deg);
		}
	}

	.animating.flip-in-left-front {
		-webkit-transform-origin-x: 0%;
		-webkit-transform-origin-y: 50%;
		transform-origin-x: 0%;
		transform-origin-y: 50%;
		-webkit-animation-name: flipInLeftFront;
		animation-name: flipInLeftFront;
	}


/*	#Flip In Left Back
//	================================================== */

	@-webkit-keyframes flipInLeftBack {
		0% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateY(90deg);
		}

		50% { -webkit-transform: perspective(1000) rotateY(-20deg); }

		70% { -webkit-transform: perspective(1000) rotateY(15deg); }

		100% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateY(0deg);
		}
	}

	@keyframes flipInLeftBack {
		0% {
			opacity: 0;
			transform: perspective(1000) rotateY(90deg);
		}

		50% { transform: perspective(1000) rotateY(-20deg); }

		70% { transform: perspective(1000) rotateY(15deg); }

		100% {
			opacity: 1;
			transform: perspective(1000) rotateY(0deg);
		}
	}

	.animating.flip-in-left-back {
		-webkit-transform-origin-x: 0%;
		-webkit-transform-origin-y: 50%;
		transform-origin-x: 0%;
		transform-origin-y: 50%;
		-webkit-animation-name: flipInLeftBack;
		animation-name: flipInLeftBack;
	}


/*	#Flip In Right Front
//	================================================== */

	@-webkit-keyframes flipInRightFront {
		0% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateY(90deg);
		}

		50% { -webkit-transform: perspective(1000) rotateY(-20deg); }

		70% { -webkit-transform: perspective(1000) rotateY(15deg); }

		100% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateY(0deg);
		}
	}

	@keyframes flipInRightFront {
		0% {
			opacity: 0;
			transform: perspective(1000) rotateY(90deg);
		}

		50% { transform: perspective(1000) rotateY(-20deg); }

		70% { transform: perspective(1000) rotateY(15deg); }

		100% {
			opacity: 1;
			transform: perspective(1000) rotateY(0deg);
		}
	}

	.animating.flip-in-right-front {
		-webkit-transform-origin-x: 100%;
		-webkit-transform-origin-y: 50%;
		transform-origin-x: 100%;
		transform-origin-y: 50%;
		-webkit-animation-name: flipInRightFront;
		animation-name: flipInRightFront;
	}


/*	#Flip In Right Back
//	================================================== */

	@-webkit-keyframes flipInRightBack {
		0% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateY(-90deg);
		}

		50% { -webkit-transform: perspective(1000) rotateY(20deg); }

		70% { -webkit-transform: perspective(1000) rotateY(-15deg); }

		100% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateY(0deg);
		}
	}

	@keyframes flipInRightBack {
		0% {
			opacity: 0;
			transform: perspective(1000) rotateY(-90deg);
		}

		50% { transform: perspective(1000) rotateY(20deg); }

		70% { transform: perspective(1000) rotateY(-15deg); }

		100% {
			opacity: 1;
			transform: perspective(1000) rotateY(0deg);
		}
	}

	.animating.flip-in-right-back {
		-webkit-transform-origin-x: 100%;
		-webkit-transform-origin-y: 50%;
		transform-origin-x: 100%;
		transform-origin-y: 50%;
		-webkit-animation-name: flipInRightBack;
		animation-name: flipInRightBack;
	}


/*	#Flip Out X
//	================================================== */

	@-webkit-keyframes flipOutX {
		0%, 5% {
			-webkit-transform: perspective(500) rotateX(0deg);
			opacity: 1;
		}

		30% { -webkit-transform: perspective(500) rotateX(-25deg); }

		50% { opacity: 1; }

		90%, 100% {
			-webkit-transform: perspective(500) rotateX(90deg);
			opacity: 0;
		}
	}

	@keyframes flipOutX {
		0%, 5% {
			transform: perspective(500) rotateX(0deg);
			opacity: 1;
		}

		30% { transform: perspective(500) rotateX(-25deg); }

		50% { opacity: 1; }

		90%, 100% {
			transform: perspective(500) rotateX(90deg);
			opacity: 0;
		}
	}

	.animating.flip-out-x {
		-webkit-backface-visibility: visible !important;
		backface-visibility: visible !important;
		-webkit-animation-name: flipOutX;
		animation-name: flipOutX;
	}


/*	#Flip Out Y
//	================================================== */

	@-webkit-keyframes flipOutY {
		0%, 5% {
			-webkit-transform: perspective(500) rotateY(0deg);
			opacity: 1;
		}

		30% { -webkit-transform: perspective(500) rotateY(-25deg); }

		50% { opacity: 1; }

		90%, 100% {
			-webkit-transform: perspective(500) rotateY(90deg);
			opacity: 0;
		}
	}

	@keyframes flipOutY {
		0%, 5% {
			transform: perspective(500) rotateY(0deg);
			opacity: 1;
		}

		30% { transform: perspective(500) rotateY(-25deg); }

		50% { opacity: 1; }

		90%, 100% {
			transform: perspective(500) rotateY(90deg);
			opacity: 0;
		}
	}

	.animating.flip-out-y {
		-webkit-backface-visibility: visible !important;
		backface-visibility: visible !important;
		-webkit-animation-name: flipOutY;
		animation-name: flipOutY;
	}


/*	#Flip Out Top
//	================================================== */

  /* Front */

	@-webkit-keyframes flipOutTopFront {
		0% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateX(0deg);
		}

		30% { -webkit-transform: perspective(1000) rotateX(-20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateX(90deg);
		}
	}

	@keyframes flipOutTopFront {
		0% {
			opacity: 1;
			transform: perspective(1000) rotateX(0deg);
		}

		30% { transform: perspective(1000) rotateX(-20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			transform: perspective(1000) rotateX(90deg);
		}
	}

	.animating.flip-out-top-front {
		-webkit-transform-origin-x: 50%;
		-webkit-transform-origin-y: 0%;
		transform-origin-x: 50%;
		transform-origin-y: 0%;
		-webkit-animation-name: flipOutTopFront;
		animation-name: flipOutTopFront;
	}

  /* Back */

	@-webkit-keyframes flipOutTopBack {
		0% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateX(0deg);
		}

		30% { -webkit-transform: perspective(1000) rotateX(20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateX(-90deg);
		}
	}

	@keyframes flipOutTopBack {
		0% {
			opacity: 1;
			transform: perspective(1000) rotateX(0deg);
		}

		30% { transform: perspective(1000) rotateX(20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			transform: perspective(1000) rotateX(-90deg);
		}
	}

	.animating.flip-out-top-back {
		-webkit-transform-origin-x: 50%;
		-webkit-transform-origin-y: 0%;
		transform-origin-x: 50%;
		transform-origin-y: 0%;
		-webkit-animation-name: flipOutTopBack;
		animation-name: flipOutTopBack;
	}


/*	#Flip Out Bottom Front
//	================================================== */

  /* Front */

	@-webkit-keyframes flipOutBottomFront {
		0% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateX(0deg);
		}

		30% { -webkit-transform: perspective(1000) rotateX(20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateX(-90deg);
		}
	}

	@keyframes flipOutBottomFront {
		0% {
			opacity: 1;
			transform: perspective(1000) rotateX(0deg);
		}

		30% { transform: perspective(1000) rotateX(20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			transform: perspective(1000) rotateX(-90deg);
		}
	}

	.animating.flip-out-bottom-front {
		-webkit-transform-origin-x: 50%;
		-webkit-transform-origin-y: 100%;
		transform-origin-x: 50%;
		transform-origin-y: 100%;
		-webkit-animation-name: flipOutBottomFront;
		animation-name: flipOutBottomFront;
	}

  /* Back */

	@-webkit-keyframes flipOutBottomBack {
		0% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateX(0deg);
		}

		30% { -webkit-transform: perspective(1000) rotateX(-20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateX(90deg);
		}
	}

	@keyframes flipOutBottomBack {
		0% {
			opacity: 1;
			transform: perspective(1000) rotateX(0deg);
		}

		30% { transform: perspective(1000) rotateX(-20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			transform: perspective(1000) rotateX(90deg);
		}
	}

	.animating.flip-out-bottom-back {
		-webkit-transform-origin-x: 50%;
		-webkit-transform-origin-y: 100%;
		transform-origin-x: 50%;
		transform-origin-y: 100%;
		-webkit-animation-name: flipOutBottomBack;
		animation-name: flipOutBottomBack;
	}


/*	#Flip Out Left Front
//	================================================== */

  /* Front */

	@-webkit-keyframes flipOutLeftFront {
		0% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateY(0deg);
		}

		30% { -webkit-transform: perspective(1000) rotateY(20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateY(-90deg);
		}
	}

	@keyframes flipOutLeftFront {
		0% {
			opacity: 1;
			transform: perspective(1000) rotateY(0deg);
		}

		30% { transform: perspective(1000) rotateY(20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			transform: perspective(1000) rotateY(-90deg);
		}
	}

	.animating.flip-out-left-front {
		-webkit-transform-origin-x: 0%;
		-webkit-transform-origin-y: 50%;
		transform-origin-x: 0%;
		transform-origin-y: 50%;
		-webkit-animation-name: flipOutLeftFront;
		animation-name: flipOutLeftFront;
	}

  /* Back */

	@-webkit-keyframes flipOutLeftBack {
		0% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateY(0deg);
		}

		30% { -webkit-transform: perspective(1000) rotateY(-20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateY(90deg);
		}
	}

	@keyframes flipOutLeftBack {
		0% {
			opacity: 1;
			transform: perspective(1000) rotateY(0deg);
		}

		30% { transform: perspective(1000) rotateY(-20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			transform: perspective(1000) rotateY(90deg);
		}
	}

	.animating.flip-out-left-back {
		-webkit-transform-origin-x: 0%;
		-webkit-transform-origin-y: 50%;
		transform-origin-x: 0%;
		transform-origin-y: 50%;
		-webkit-animation-name: flipOutLeftBack;
		animation-name: flipOutLeftBack;
	}


/*	#Flip Out Right Front
//	================================================== */

  /* Front */

	@-webkit-keyframes flipOutRightFront {
		0% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateY(0deg);
		}

		30% { -webkit-transform: perspective(1000) rotateY(-20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateY(90deg);
		}
	}

	@keyframes flipOutRightFront {
		0% {
			opacity: 1;
			transform: perspective(1000) rotateY(0deg);
		}

		30% { transform: perspective(1000) rotateY(-20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			transform: perspective(1000) rotateY(90deg);
		}
	}

	.animating.flip-out-right-front {
		-webkit-transform-origin-x: 100%;
		-webkit-transform-origin-y: 50%;
		transform-origin-x: 100%;
		transform-origin-y: 50%;
		-webkit-animation-name: flipOutRightFront;
		animation-name: flipOutRightFront;
	}

  /* Back */

	@-webkit-keyframes flipOutRightBack {
		0% {
			opacity: 1;
			-webkit-transform: perspective(1000) rotateY(0deg);
		}

		30% { -webkit-transform: perspective(1000) rotateY(20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			-webkit-transform: perspective(1000) rotateY(-90deg);
		}
	}

	@keyframes flipOutRightBack {
		0% {
			opacity: 1;
			transform: perspective(1000) rotateY(0deg);
		}

		30% { transform: perspective(1000) rotateY(20deg); }

		50% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			transform: perspective(1000) rotateY(-90deg);
		}
	}

	.animating.flip-out-right-back {
		-webkit-transform-origin-x: 100%;
		-webkit-transform-origin-y: 50%;
		transform-origin-x: 100%;
		transform-origin-y: 50%;
		-webkit-animation-name: flipOutRightBack;
		animation-name: flipOutRightBack;
	}


/*	#Flash
//	================================================== */

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

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

	.animating.flash,
	.hover-flash:hover {
		-webkit-animation-name: flash;
		animation-name: flash;
	}


/*	#Strobe
//	================================================== */

	@-webkit-keyframes strobe {
		0%, 20%, 40%, 60%, 80%, 100% { opacity: 1; }
		10%, 30%, 50%, 70%, 90% { opacity: 0; }
	}

	@keyframes strobe {
		0%, 20%, 40%, 60%, 80%, 100% { opacity: 1; }
		10%, 30%, 50%, 70%, 90% { opacity: 0; }
	}

	.animating.strobe,
	.hover-strobe:hover {
		-webkit-animation-name: strobe;
		animation-name: strobe;
	}


/*	#Shake X
//	================================================== */

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

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

	.animating.shake-x,
	.hover-shake-x:hover {
		-webkit-animation-name: shakeX;
		animation-name: shakeX;
	}


/*	#Shake Y
//	================================================== */

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

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

	.animating.shake-y,
	.hover-shake-y:hover {
		-webkit-animation-name: shakeY;
		animation-name: shakeY;
	}


/*	#Bounce
//	================================================== */

	@-webkit-keyframes bounce {
		0%, 20%, 50%, 80%, 100% { -webkit-transform: translateY(0); }
		40% { -webkit-transform: translateY(-30px); }
		60% { -webkit-transform: translateY(-15px); }
	}

	@keyframes bounce {
		0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
		40% { transform: translateY(-30px); }
		60% { transform: translateY(-15px); }
	}

	.animating.bounce,
	.hover-bounce:hover {
		-webkit-animation-name: bounce;
		animation-name: bounce;
	}


/*	#Tada
//	================================================== */

	@-webkit-keyframes tada {
		0%, 100% { -webkit-transform: scale(1) rotate(0); }
		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); }
	}

	@keyframes tada {
		0%, 100% { transform: scale(1) rotate(0); }
		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); }
	}

	.animating.tada,
	.hover-tada:hover {
		-webkit-animation-name: tada;
		animation-name: tada;
	}


/*	#Rubber Band
//	================================================== */

	@-webkit-keyframes rubberBand {
		0%, 100% { -webkit-transform: scale(1); }
		30% { -webkit-transform: scaleX(1.25) scaleY(0.75); }
		40% { -webkit-transform: scaleX(0.75) scaleY(1.25); }
		60% { -webkit-transform: scaleX(1.15) scaleY(0.85); }
	}

	@keyframes rubberBand {
		0%, 100% { transform: scale(1); }
		30% { transform: scaleX(1.25) scaleY(0.75); }
		40% { transform: scaleX(0.75) scaleY(1.25); }
		60% { transform: scaleX(1.15) scaleY(0.85); }
	}

	.animating.rubber-band,
	.hover-rubber-band:hover {
		-webkit-animation-name: rubberBand;
		animation-name: rubberBand;
	}

/*	#Swing
//	================================================== */

	@-webkit-keyframes swing {
		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); }
	}

	.animating.swing,
	.hover-swing:hover {
		-webkit-animation-name: swing;
		animation-name: swing;
	}


/*	#Spin Clockwise
//	================================================== */

	@-webkit-keyframes spin {
		0% { -webkit-transform: rotate(0deg); }
		100% { -webkit-transform: rotate(360deg); }
	}

	@keyframes spin {
		0% { transform: rotate(0deg); }
		100% { transform: rotate(360deg); }
	}

	.animating.spin,
	.hover-spin:hover {
		-webkit-animation-name: spin;
		animation-name: spin;
	}


/*	#Spin Counter-Clockwise
//	================================================== */

	@-webkit-keyframes spin-reverse {
		0% { -webkit-transform: rotate(0deg); }
		100% { -webkit-transform: rotate(-360deg); }
	}

	@keyframes spin-reverse {
		0% { transform: rotate(0deg); }
		100% { transform: rotate(-360deg); }
	}

	.animating.spin-reverse,
	.hover-spin-reverse:hover {
		-webkit-animation-name: spin-reverse;
		animation-name: spin-reverse;
	}


/*	#Slingshot Clockwise
//	================================================== */

	@-webkit-keyframes slingshot {
		0% { -webkit-transform: rotate(0deg); }
		20%, 30% { -webkit-transform: rotate(-45deg); }
		100% { -webkit-transform: rotate(360deg); }
	}

	@keyframes slingshot {
		0% { transform: rotate(0deg); }
		20%, 30% { transform: rotate(-45deg); }
		100% { transform: rotate(360deg); }
	}

	.animating.slingshot,
	.hover-slingshot:hover {
		-webkit-animation-name: slingshot;
		animation-name: slingshot;
	}


/*	#Slingshot Counter-Clockwise
//	================================================== */

	@-webkit-keyframes slingshot-reverse {
		0% { -webkit-transform: rotate(0deg); }
		20%, 30% { -webkit-transform: rotate(45deg); }
		100% { -webkit-transform: rotate(-360deg); }
	}

	@keyframes slingshot-reverse {
		0% { transform: rotate(0deg); }
		20%, 30% { transform: rotate(45deg); }
		100% { transform: rotate(-360deg); }
	}

	.animating.slingshot-reverse,
	.hover-slingshot-reverse:hover {
		-webkit-animation-name: slingshot-reverse;
		animation-name: slingshot-reverse;
	}


/*	#Wobble
//	================================================== */

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

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

	.animating.wobble,
	.hover-wobble:hover {
		-webkit-animation-name: wobble;
		animation-name: wobble;
	}


/*	#Pulse
//	================================================== */

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

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

	.animating.pulse,
	.hover-pulse:hover {
		-webkit-animation-name: pulse;
		animation-name: pulse;
	}


/*	#Pulsate
//	================================================== */

	@-webkit-keyframes pulsate {
		0%, 50%, 100% { -webkit-transform: scale(1); }
		25%, 75% { -webkit-transform: scale(1.1); }
	}

	@keyframes pulsate {
		0%, 50%, 100% { transform: scale(1); }
		25%, 75% { transform: scale(1.1); }
	}

	.animating.pulsate,
	.hover-pulsate:hover {
		-webkit-animation-name: pulsate;
		animation-name: pulsate;
	}


/*	#Heartbeat
//	================================================== */

	@-webkit-keyframes heartbeat {
		0%, 30%, 50%, 60%, 80% { -webkit-transform: scale(1); }
		40%, 70% { -webkit-transform: scale(1.1); }
	}

	@keyframes heartbeat {
		0%, 30%, 50%, 60%, 80% { transform: scale(1); }
		40%, 70% { transform: scale(1.1); }
	}

	.animating.heartbeat,
	.hover-heartbeat:hover {
		-webkit-animation-name: heartbeat;
		animation-name: heartbeat;
	}


/*	#Panic
//	================================================== */

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

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

	.animating.panic,
	.hover-panic:hover {
		-webkit-animation-name: panic;
		animation-name: panic;
	}