/* Animation Library */
/* http://www.labs.later.com */

/* Pulse */
@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale3d(1, 1, 1); }
  50% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1); }
  100% {
    -webkit-transform: scale3d(1, 1, 1); } }
@-moz-keyframes pulse {
  0% {
    -moz-transform: scale3d(1, 1, 1); }
  50% {
    -moz-transform: scale3d(1.1, 1.1, 1.1); }
  100% {
    -moz-transform: scale3d(1, 1, 1); } }
@-o-keyframes pulse {
  0% {
    -o-transform: scale3d(1, 1, 1); }
  50% {
    -o-transform: scale3d(1.1, 1.1, 1.1); }
  100% {
    -o-transform: scale3d(1, 1, 1); } }
@keyframes pulse {
  0% {
    transform: scale3d(1, 1, 1); }
  50% {
    transform: scale3d(1.1, 1.1, 1.1); }
  100% {
    transform: scale3d(1, 1, 1); } }

.u--pulse {
  -webkit-animation: pulse 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -moz-animation: pulse 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -o-animation: pulse 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  animation: pulse 2s cubic-bezier(0.445, 0.05, 0.55, 0.95); }

/* Flash */
@-webkit-keyframes flash {
  0%, 50%, 100% {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }
@-moz-keyframes flash {
  0%, 50%, 100% {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }
@-o-keyframes flash {
  0%, 50%, 100% {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }
@keyframes flash {
  0%, 50%, 100% {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }

.u--flash {
  -webkit-animation: flash 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -moz-animation: flash 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -o-animation: flash 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  animation: flash 2s cubic-bezier(0.445, 0.05, 0.55, 0.95); }

/* Bounce */
@-webkit-keyframes bounce {
  0%, 20%, 53%, 80%, 100% {
    -webkit-transform: translate3d(0, 0, 0); }
  40%, 43% {
    -webkit-transform: translate3d(0, -6vh, 0); }
  70% {
    -webkit-transform: translate3d(0, -3vh, 0); }
  90% {
    -webkit-transform: translate3d(0, -1vh, 0); } }
@-moz-keyframes bounce {
  0%, 20%, 53%, 80%, 100% {
    -moz-transform: translate3d(0, 0, 0); }
  40%, 43% {
    -moz-transform: translate3d(0, -6vh, 0); }
  70% {
    -moz-transform: translate3d(0, -3vh, 0); }
  90% {
    -moz-transform: translate3d(0, -1vh, 0); } }
@-o-keyframes bounce {
  0%, 20%, 53%, 80%, 100% {
    -o-transform: translate3d(0, 0, 0); }
  40%, 43% {
    -o-transform: translate3d(0, -6vh, 0); }
  70% {
    -o-transform: translate3d(0, -3vh, 0); }
  90% {
    -o-transform: translate3d(0, -1vh, 0); } }
@keyframes bounce {
  0%, 20%, 53%, 80%, 100% {
    transform: translate3d(0, 0, 0); }
  40%, 43% {
    transform: translate3d(0, -6vh, 0); }
  70% {
    transform: translate3d(0, -3vh, 0); }
  90% {
    transform: translate3d(0, -1vh, 0); } }

.u--bounce {
  -webkit-animation: bounce 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -moz-animation: bounce 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -o-animation: bounce 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  animation: bounce 2s cubic-bezier(0.445, 0.05, 0.55, 0.95); }

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

.u--shake {
  -webkit-animation: shake 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -moz-animation: shake 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -o-animation: shake 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  animation: shake 2s cubic-bezier(0.445, 0.05, 0.55, 0.95); }

/* Swing */
@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg); }
  100% {
    -webkit-transform: rotate3d(0, 0, 1, 0deg); } }
@-moz-keyframes swing {
  20% {
    -moz-transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -moz-transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -moz-transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -moz-transform: rotate3d(0, 0, 1, -5deg); }
  100% {
    -moz-transform: rotate3d(0, 0, 1, 0deg); } }
@-o-keyframes swing {
  20% {
    -o-transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -o-transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -o-transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -o-transform: rotate3d(0, 0, 1, -5deg); }
  100% {
    -o-transform: rotate3d(0, 0, 1, 0deg); } }
@keyframes swing {
  20% {
    transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    transform: rotate3d(0, 0, 1, -5deg); }
  100% {
    transform: rotate3d(0, 0, 1, 0deg); } }

.u--swing {
  -webkit-transform-origin: top center;
  -moz-transform-origin: top center;
  -o-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation: swing 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -moz-animation: swing 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -o-animation: swing 2s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  animation: swing 2s cubic-bezier(0.445, 0.05, 0.55, 0.95); }

  /* Bounce In */
@-webkit-keyframes bounceIn {
  0% {
    -webkit-transform: scale(0.3);
    opacity: 0; }
  40% {
    -webkit-transform: scale(1.1);
    opacity: 0.9; }
  80% {
    -webkit-transform: scale(0.8);
    opacity: 1; }
  100% {
    -webkit-transform: scale(1);
    opacity: 1; } }
@-moz-keyframes bounceIn {
  0% {
    -moz-transform: scale(0.3);
    opacity: 0; }
  40% {
    -moz-transform: scale(1.1);
    opacity: 0.9; }
  80% {
    -moz-transform: scale(0.8);
    opacity: 1; }
  100% {
    -moz-transform: scale(1);
    opacity: 1; } }
@-o-keyframes bounceIn {
  0% {
    -o-transform: scale(0.3);
    opacity: 0; }
  40% {
    -o-transform: scale(1.1);
    opacity: 0.9; }
  80% {
    -o-transform: scale(0.8);
    opacity: 1; }
  100% {
    -o-transform: scale(1);
    opacity: 1; } }
@keyframes bounceIn {
  0% {
    transform: scale(0.3);
    opacity: 0; }
  40% {
    transform: scale(1.1);
    opacity: 0.9; }
  80% {
    transform: scale(0.8);
    opacity: 1; }
  100% {
    transform: scale(1);
    opacity: 1; } }

.u--bounceIn {
  -webkit-animation: bounceIn 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-animation: bounceIn 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-animation: bounceIn 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  animation: bounceIn 2s cubic-bezier(0.215, 0.61, 0.355, 1); }

/* Bounce Out */
@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale(0.9); }
  50%, 65% {
    -webkit-transform: scale(1.1);
    opacity: 1; }
  100% {
    -webkit-transform: scale(0.3);
    opacity: 0; } }
@-moz-keyframes bounceOut {
  20% {
    -moz-transform: scale(0.9); }
  50%, 65% {
    -moz-transform: scale(1.1);
    opacity: 1; }
  100% {
    -moz-transform: scale(0.3);
    opacity: 0; } }
@-o-keyframes bounceOut {
  20% {
    -o-transform: scale(0.9); }
  50%, 55% {
    -o-transform: scale(1.1);
    opacity: 1; }
  100% {
    -o-transform: scale(0.3);
    opacity: 0; } }
@keyframes bounceOut {
  20% {
    transform: scale(0.9); }
  50%, 65% {
    transform: scale(1.1);
    opacity: 1; }
  100% {
    transform: scale(0.3);
    opacity: 0; } }

.u--bounceOut {
  -webkit-animation: bounceOut 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-animation: bounceOut 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-animation: bounceOut 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  animation: bounceOut 2s cubic-bezier(0.215, 0.61, 0.355, 1); }

/* bounceInLeft */
@-webkit-keyframes bounceInLeft {
  0% {
    -webkit-transform: translate3d(-25%, 0, 0); }
  60% {
    -webkit-transform: translate3d(3%, 0, 0); }
  75% {
    -webkit-transform: translate3d(-1%, 0, 0); }
  90% {
    -webkit-transform: translate3d(1%, 0, 0); }
  100% {
    -webkit-transform: none; } }
@-moz-keyframes bounceInLeft {
  0% {
    -moz-transform: translate3d(-25%, 0, 0); }
  60% {
    -moz-transform: translate3d(3%, 0, 0); }
  75% {
    -moz-transform: translate3d(-1%, 0, 0); }
  90% {
    -moz-transform: translate3d(1%, 0, 0); }
  100% {
    -moz-transform: none; } }
@-o-keyframes bounceInLeft {
  0% {
    -o-transform: translate3d(-25%, 0, 0); }
  60% {
    -o-transform: translate3d(3%, 0, 0); }
  75% {
    -o-transform: translate3d(-1%, 0, 0); }
  90% {
    -o-transform: translate3d(1%, 0, 0); }
  100% {
    -o-transform: none; } }
@keyframes bounceInLeft {
  0% {
    transform: translate3d(-25%, 0, 0); }
  60% {
    transform: translate3d(3%, 0, 0); }
  75% {
    transform: translate3d(-1%, 0, 0); }
  90% {
    transform: translate3d(1%, 0, 0); }
  100% {
    transform: none; } }

.u--bounceInLeft {
  -webkit-animation: bounceInLeft 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-animation: bounceInLeft 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-animation: bounceInLeft 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  animation: bounceInLeft 2s cubic-bezier(0.215, 0.61, 0.355, 1); }

/* bounceInRight */
@-webkit-keyframes bounceInRight {
  0% {
    -webkit-transform: translate3d(25%, 0, 0); }
  60% {
    -webkit-transform: translate3d(-3%, 0, 0); }
  75% {
    -webkit-transform: translate3d(1%, 0, 0); }
  90% {
    -webkit-transform: translate3d(-1%, 0, 0); }
  100% {
    -webkit-transform: none; } }
@-moz-keyframes bounceInRight {
  0% {
    -moz-transform: translate3d(25%, 0, 0); }
  60% {
    -moz-transform: translate3d(-3%, 0, 0); }
  75% {
    -moz-transform: translate3d(1%, 0, 0); }
  90% {
    -moz-transform: translate3d(-1%, 0, 0); }
  100% {
    -moz-transform: none; } }
@-o-keyframes bounceInRight {
  0% {
    -o-transform: translate3d(25%, 0, 0); }
  60% {
    -o-transform: translate3d(-3%, 0, 0); }
  75% {
    -o-transform: translate3d(1%, 0, 0); }
  90% {
    -o-transform: translate3d(-1%, 0, 0); }
  100% {
    -o-transform: none; } }
@keyframes bounceInRight {
  0% {
    transform: translate3d(25%, 0, 0); }
  60% {
    transform: translate3d(-3%, 0, 0); }
  75% {
    transform: translate3d(1%, 0, 0); }
  90% {
    transform: translate3d(-1%, 0, 0); }
  100% {
    transform: none; } }

.u--bounceInRight {
  -webkit-animation: bounceInRight 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-animation: bounceInRight 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-animation: bounceInRight 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  animation: bounceInRight 2s cubic-bezier(0.215, 0.61, 0.355, 1); }

/* bounceInUp */
@-webkit-keyframes bounceInUp {
  0% {
    -webkit-transform: translate3d(0, 25%, 0); }
  60% {
    -webkit-transform: translate3d(0, -3%, 0); }
  75% {
    -webkit-transform: translate3d(0, 1%, 0); }
  90% {
    -webkit-transform: translate3d(0, -1%, 0); }
  100% {
    -webkit-transform: none; } }
@-moz-keyframes bounceInUp {
  0% {
    -moz-transform: translate3d(0, 25%, 0); }
  60% {
    -moz-transform: translate3d(0, -3%, 0); }
  75% {
    -moz-transform: translate3d(0, 1%, 0); }
  90% {
    -moz-transform: translate3d(0, -1%, 0); }
  100% {
    -moz-transform: none; } }
@-o-keyframes bounceInUp {
  0% {
    -o-transform: translate3d(0, 25%, 0); }
  60% {
    -o-transform: translate3d(0, -3%, 0); }
  75% {
    -o-transform: translate3d(0, 1%, 0); }
  90% {
    -o-transform: translate3d(0, -1%, 0); }
  100% {
    -o-transform: none; } }
@keyframes bounceInUp {
  0% {
    transform: translate3d(0, 25%, 0); }
  60% {
    transform: translate3d(0, -3%, 0); }
  75% {
    transform: translate3d(0, 1%, 0); }
  90% {
    transform: translate3d(0, -1%, 0); }
  100% {
    transform: none; } }

.u--bounceInUp {
  -webkit-animation: bounceInUp 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-animation: bounceInUp 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-animation: bounceInUp 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  animation: bounceInUp 2s cubic-bezier(0.215, 0.61, 0.355, 1); }

/* bounceInDown */
@-webkit-keyframes bounceInDown {
  0% {
    -webkit-transform: translate3d(0, -25%, 0); }
  60% {
    -webkit-transform: translate3d(0, 3%, 0); }
  75% {
    -webkit-transform: translate3d(0, -1%, 0); }
  90% {
    -webkit-transform: translate3d(0, 1%, 0); }
  100% {
    -webkit-transform: none; } }
@-moz-keyframes bounceInDown {
  0% {
    -moz-transform: translate3d(0, -25%, 0); }
  60% {
    -moz-transform: translate3d(0, 3%, 0); }
  75% {
    -moz-transform: translate3d(0, -1%, 0); }
  90% {
    -moz-transform: translate3d(0, 1%, 0); }
  100% {
    -moz-transform: none; } }
@-o-keyframes bounceInDown {
  0% {
    -o-transform: translate3d(0, -25%, 0); }
  60% {
    -o-transform: translate3d(0, 3%, 0); }
  75% {
    -o-transform: translate3d(0, -1%, 0); }
  90% {
    -o-transform: translate3d(0, 1%, 0); }
  100% {
    -o-transform: none; } }
@keyframes bounceInDown {
  0% {
    transform: translate3d(0, -25%, 0); }
  60% {
    transform: translate3d(0, 3%, 0); }
  75% {
    transform: translate3d(0, -1%, 0); }
  90% {
    transform: translate3d(0, 1%, 0); }
  100% {
    transform: none; } }

.u--bounceInDown {
  -webkit-animation: bounceInDown 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-animation: bounceInDown 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-animation: bounceInDown 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  animation: bounceInDown 2s cubic-bezier(0.215, 0.61, 0.355, 1); }

  /* fadeIn */
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-moz-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-o-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.u--fadeIn {
  -webkit-animation: fadeIn 1s ease-in;
  -moz-animation: fadeIn 1s ease-in;
  -o-animation: fadeIn 1s ease-in;
  animation: fadeIn 1s ease-in; }

/* fadeInLeft */
@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-50%, 0, 0); }
  100% {
    opacity: 1;
    -webkit-transform: none; } }
@-moz-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -moz-transform: translate3d(-50%, 0, 0); }
  100% {
    opacity: 1;
    -moz-transform: none; } }
@-o-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -o-transform: translate3d(-50%, 0, 0); }
  100% {
    opacity: 1;
    -o-transform: none; } }
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translate3d(-50%, 0, 0); }
  100% {
    opacity: 1;
    transform: none; } }

.u--fadeInLeft {
  -webkit-animation: fadeInLeft 1s ease-in;
  -moz-animation: fadeInLeft 1s ease-in;
  -o-animation: fadeInLeft 1s ease-in;
  animation: fadeInLeft 1s ease-in; }

/* fadeInRight */
@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(50%, 0, 0); }
  100% {
    opacity: 1;
    -webkit-transform: none; } }
@-moz-keyframes fadeInRight {
  0% {
    opacity: 0;
    -moz-transform: translate3d(50%, 0, 0); }
  100% {
    opacity: 1;
    -moz-transform: none; } }
@-o-keyframes fadeInRight {
  0% {
    opacity: 0;
    -o-transform: translate3d(50%, 0, 0); }
  100% {
    opacity: 1;
    -o-transform: none; } }
@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translate3d(50%, 0, 0); }
  100% {
    opacity: 1;
    transform: none; } }

.u--fadeInRight {
  -webkit-animation: fadeInRight 1s ease-in;
  -moz-animation: fadeInRight 1s ease-in;
  -o-animation: fadeInRight 1s ease-in;
  animation: fadeInRight 1s ease-in; }

/* fadeInUp */
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 50%, 0); }
  100% {
    opacity: 1;
    -webkit-transform: none; } }
@-moz-keyframes fadeInUp {
  0% {
    opacity: 0;
    -moz-transform: translate3d(0, 50%, 0); }
  100% {
    opacity: 1;
    -moz-transform: none; } }
@-o-keyframes fadeInUp {
  0% {
    opacity: 0;
    -o-transform: translate3d(0, 50%, 0); }
  100% {
    opacity: 1;
    -o-transform: none; } }
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translate3d(0, 50%, 0); }
  100% {
    opacity: 1;
    transform: none; } }

.u--fadeInUp {
  -webkit-animation: fadeInUp 1s ease-in;
  -moz-animation: fadeInUp 1s ease-in;
  -o-animation: fadeInUp 1s ease-in;
  animation: fadeInUp 1s ease-in; }

/* fadeInDown */
@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -50%, 0); }
  100% {
    opacity: 1;
    -webkit-transform: none; } }
@-moz-keyframes fadeInDown {
  0% {
    opacity: 0;
    -moz-transform: translate3d(0, -50%, 0); }
  100% {
    opacity: 1;
    -moz-transform: none; } }
@-o-keyframes fadeInDown {
  0% {
    opacity: 0;
    -o-transform: translate3d(0, -50%, 0); }
  100% {
    opacity: 1;
    -o-transform: none; } }
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translate3d(0, -50%, 0); }
  100% {
    opacity: 1;
    transform: none; } }

.u--fadeInDown {
  -webkit-animation: fadeInDown 1s ease-in;
  -moz-animation: fadeInDown 1s ease-in;
  -o-animation: fadeInDown 1s ease-in;
  animation: fadeInDown 1s ease-in; }

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

.u--fadeOut {
  -webkit-animation: fadeOut 1s ease-out;
  -moz-animation: fadeOut 1s ease-out;
  -o-animation: fadeOut 1s ease-out;
  animation: fadeOut 1s ease-out; }

/* fadeOutLeft */
@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(-50%, 0, 0); }
  100% {
    opacity: 0;
    -webkit-transform: none; } }
@-moz-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -moz-transform: translate3d(-50%, 0, 0); }
  100% {
    opacity: 0;
    -moz-transform: none; } }
@-o-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -o-transform: translate3d(-50%, 0, 0); }
  100% {
    opacity: 0;
    -o-transform: none; } }
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    transform: translate3d(-50%, 0, 0); }
  100% {
    opacity: 0;
    transform: none; } }

.u--fadeOutLeft {
  -webkit-animation: fadeOutLeft 1s ease-out;
  -moz-animation: fadeOutLeft 1s ease-out;
  -o-animation: fadeOutLeft 1s ease-out;
  animation: fadeOutLeft 1s ease-out; }

/* fadeOutRight */
@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(50%, 0, 0); }
  100% {
    opacity: 0;
    -webkit-transform: none; } }
@-moz-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -moz-transform: translate3d(50%, 0, 0); }
  100% {
    opacity: 0;
    -moz-transform: none; } }
@-o-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -o-transform: translate3d(50%, 0, 0); }
  100% {
    opacity: 0;
    -o-transform: none; } }
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    transform: translate3d(50%, 0, 0); }
  100% {
    opacity: 0;
    transform: none; } }

.u--fadeOutRight {
  -webkit-animation: fadeOutRight 1s ease-out;
  -moz-animation: fadeOutRight 1s ease-out;
  -o-animation: fadeOutRight 1s ease-out;
  animation: fadeOutRight 1s ease-out; }

/* fadeOutUp */
@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 50%, 0); }
  100% {
    opacity: 0;
    -webkit-transform: none; } }
@-moz-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -moz-transform: translate3d(0, 50%, 0); }
  100% {
    opacity: 0;
    -moz-transform: none; } }
@-o-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -o-transform: translate3d(0, 50%, 0); }
  100% {
    opacity: 0;
    -o-transform: none; } }
@keyframes fadeOutUp {
  0% {
    opacity: 1;
    transform: translate3d(0, 50%, 0); }
  100% {
    opacity: 0;
    transform: none; } }

.u--fadeOutUp {
  -webkit-animation: fadeOutUp 1s ease-out;
  -moz-animation: fadeOutUp 1s ease-out;
  -o-animation: fadeOutUp 1s ease-out;
  animation: fadeOutUp 1s ease-out; }

/* fadeOutDown */
@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, -50%, 0); }
  100% {
    opacity: 0;
    -webkit-transform: none; } }
@-moz-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -moz-transform: translate3d(0, -50%, 0); }
  100% {
    opacity: 0;
    -moz-transform: none; } }
@-o-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -o-transform: translate3d(0, -50%, 0); }
  100% {
    opacity: 0;
    -o-transform: none; } }
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    transform: translate3d(0, -50%, 0); }
  100% {
    opacity: 0;
    transform: none; } }

.u--fadeOutDown {
  -webkit-animation: fadeOutDown 1s ease-out;
  -moz-animation: fadeOutDown 1s ease-out;
  -o-animation: fadeOutDown 1s ease-out;
  animation: fadeOutDown 1s ease-out; }

  /* flip */
@-webkit-keyframes flip {
  0% {
    -webkit-transform: rotate3d(0, 1, 0, 0deg); }
  100% {
    -webkit-transform: rotate3d(0, 1, 0, -180deg); } }
@-moz-keyframes flip {
  0% {
    -moz-transform: rotate3d(0, 1, 0, 0deg); }
  100% {
    -moz-transform: rotate3d(0, 1, 0, -180deg); } }
@-o-keyframes flip {
  0% {
    -o-transform: rotate3d(0, 1, 0, 0deg); }
  100% {
    -o-transform: rotate3d(0, 1, 0, -180deg); } }
@keyframes flip {
  0% {
    transform: rotate3d(0, 1, 0, 0deg); }
  100% {
    transform: rotate3d(0, 1, 0, -180deg); } }

.u--flip {
  -webkit-animation: flip 2s ease-out;
  -moz-animation: flip 2s ease-out;
  -o-animation: flip 2s ease-out;
  animation: flip 2s ease-out; }

/* flipX */
@-webkit-keyframes flipX {
  0% {
    -webkit-transform: rotate3d(1, 0, 0, 90deg);
    opacity: 0; }
  40% {
    -webkit-transform: rotate3d(1, 0, 0, -20deg); }
  60% {
    -webkit-transform: rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: rotate3d(1, 0, 0, -5deg); }
  100% {
    -webkit-transform: rotate3d(1, 0, 0, 0deg); } }
@-moz-keyframes flipX {
  0% {
    -moz-transform: rotate3d(1, 0, 0, 90deg);
    opacity: 0; }
  40% {
    -moz-transform: rotate3d(1, 0, 0, -20deg); }
  60% {
    -moz-transform: rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -moz-transform: rotate3d(1, 0, 0, -5deg); }
  100% {
    -moz-transform: rotate3d(1, 0, 0, 0deg); } }
@-o-keyframes flipX {
  0% {
    -o-transform: rotate3d(1, 0, 0, 90deg);
    opacity: 0; }
  40% {
    -o-transform: rotate3d(1, 0, 0, -20deg); }
  60% {
    -o-transform: rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -o-transform: rotate3d(1, 0, 0, -5deg); }
  100% {
    -o-transform: rotate3d(1, 0, 0, 0deg); } }
@keyframes flipX {
  0% {
    transform: rotate3d(1, 0, 0, 90deg);
    opacity: 0; }
  40% {
    transform: rotate3d(1, 0, 0, -20deg); }
  60% {
    transform: rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    transform: rotate3d(1, 0, 0, -5deg); }
  100% {
    transform: rotate3d(1, 0, 0, 0deg); } }

.u--flipX {
  -webkit-animation: flipX 2s ease-in;
  -moz-animation: flipX 2s ease-in;
  -o-animation: flipX 2s ease-in;
  animation: flipX 2s ease-in; }

/* flipY */
@-webkit-keyframes flipY {
  0% {
    -webkit-transform: rotate3d(0, 1, 0, 90deg);
    opacity: 0; }
  40% {
    -webkit-transform: rotate3d(0, 1, 0, -20deg); }
  60% {
    -webkit-transform: rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: rotate3d(0, 1, 0, -5deg); }
  100% {
    -webkit-transform: rotate3d(0, 1, 0, 0deg); } }
@-moz-keyframes flipY {
  0% {
    -moz-transform: rotate3d(0, 1, 0, 90deg);
    opacity: 0; }
  40% {
    -moz-transform: rotate3d(0, 1, 0, -20deg); }
  60% {
    -moz-transform: rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -moz-transform: rotate3d(0, 1, 0, -5deg); }
  100% {
    -moz-transform: rotate3d(0, 1, 0, 0deg); } }
@-o-keyframes flipY {
  0% {
    -o-transform: rotate3d(0, 1, 0, 90deg);
    opacity: 0; }
  40% {
    -o-transform: rotate3d(0, 1, 0, -20deg); }
  60% {
    -o-transform: rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -o-transform: rotate3d(0, 1, 0, -5deg); }
  100% {
    -o-transform: rotate3d(0, 1, 0, 0deg); } }
@keyframes flipY {
  0% {
    transform: rotate3d(0, 1, 0, 90deg);
    opacity: 0; }
  40% {
    transform: rotate3d(0, 1, 0, -20deg); }
  60% {
    transform: rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    transform: rotate3d(0, 1, 0, -5deg); }
  100% {
    transform: rotate3d(0, 1, 0, 0deg); } }

.u--flipY {
  -webkit-animation: flipY 2s ease-in;
  -moz-animation: flipY 2s ease-in;
  -o-animation: flipY 2s ease-in;
  animation: flipY 2s ease-in; }

  /* rotate */
@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotate3d(0, 0, 1, -300deg); }
  100% {
    -webkit-transform: none; } }
@-moz-keyframes rotate {
  0% {
    -moz-transform: rotate3d(0, 0, 1, -300deg); }
  100% {
    -moz-transform: none; } }
@-o-keyframes rotate {
  0% {
    -o-transform: rotate3d(0, 0, 1, -300deg); }
  100% {
    -o-transform: none; } }
@keyframes rotate {
  0% {
    transform: rotate3d(0, 0, 1, -300deg); }
  100% {
    transform: none; } }

.u--rotate {
  -webkit-animation: rotate 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -moz-animation: rotate 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -o-animation: rotate 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  animation: rotate 1s;
  -webkit-transform-origin: center;
  -moz-transform-origin: center;
  -o-transform-origin: center;
  transform-origin: center; }

/* rotateUpLeft */
@-webkit-keyframes rotateUpLeft {
  0% {
    -webkit-transform: rotate(45deg); }
  100% {
    -webkit-transform: none; } }
@-moz-keyframes rotateUpLeft {
  0% {
    -moz-transform: rotate(45deg); }
  100% {
    -moz-transform: none; } }
@-o-keyframes rotateUpLeft {
  0% {
    -o-transform: rotate(45deg); }
  100% {
    -o-transform: none; } }
@keyframes rotateUpLeft {
  0% {
    transform: rotate(45deg); }
  100% {
    transform: none; } }

.u--rotateUpLeft {
  -webkit-animation: rotateUpLeft 1s;
  -moz-animation: rotateUpLeft 1s;
  -o-animation: rotateUpLeft 1s;
  animation: rotateUpLeft 1s;
  -webkit-transform-origin: left bottom;
  -moz-transform-origin: left bottom;
  -o-transform-origin: left bottom;
  transform-origin: left bottom; }

/* rotateUpRight */
@-webkit-keyframes rotateUpRight {
  0% {
    -webkit-transform: rotate(-45deg); }
  100% {
    -webkit-transform: none; } }
@-moz-keyframes rotateUpRight {
  0% {
    -moz-transform: rotate(-45deg); }
  100% {
    -moz-transform: none; } }
@-o-keyframes rotateUpRight {
  0% {
    -o-transform: rotate(-45deg); }
  100% {
    -o-transform: none; } }
@keyframes rotateUpRight {
  0% {
    transform: rotate(-45deg); }
  100% {
    transform: none; } }

.u--rotateUpRight {
  -webkit-animation: rotateUpRight 1s;
  -moz-animation: rotateUpRight 1s;
  -o-animation: rotateUpRight 1s;
  animation: rotateUpRight 1s;
  -webkit-transform-origin: right bottom;
  -moz-transform-origin: right bottom;
  -o-transform-origin: right bottom;
  transform-origin: right bottom; }

/* rotateDownLeft */
@-webkit-keyframes rotateDownLeft {
  0% {
    -webkit-transform: rotate(-45deg); }
  100% {
    -webkit-transform: rotate(0deg); } }
@-moz-keyframes rotateDownLeft {
  0% {
    -moz-transform: rotate(-45deg); }
  100% {
    -moz-transform: rotate(0deg); } }
@-o-keyframes rotateDownLeft {
  0% {
    -o-transform: rotate(-45deg); }
  100% {
    -o-transform: rotate(0deg); } }
@keyframes rotateDownLeft {
  0% {
    transform: rotate(-45deg); }
  100% {
    transform: rotate(0deg); } }

.u--rotateDownLeft {
  -webkit-animation: rotateDownLeft 1s;
  -moz-animation: rotateDownLeft 1s;
  -o-animation: rotateDownLeft 1s;
  animation: rotateDownLeft 1s;
  -webkit-transform-origin: top left;
  -moz-transform-origin: top left;
  -o-transform-origin: top left;
  transform-origin: top left; }

/* rotateDownRight */
@-webkit-keyframes rotateDownRight {
  0% {
    -webkit-transform: rotate(45deg); }
  100% {
    -webkit-transform: rotate(0deg); } }
@-moz-keyframes rotateDownRight {
  0% {
    -moz-transform: rotate(45deg); }
  100% {
    -moz-transform: rotate(0deg); } }
@-o-keyframes rotateDownRight {
  0% {
    -o-transform: rotate(45deg); }
  100% {
    -o-transform: rotate(0deg); } }
@keyframes rotateDownRight {
  0% {
    transform: rotate(45deg); }
  100% {
    transform: rotate(0deg); } }

.u--rotateDownRight {
  -webkit-animation: rotateDownRight 1s;
  -moz-animation: rotateDownRight 1s;
  -o-animation: rotateDownRight 1s;
  animation: rotateDownRight 1s;
  -webkit-transform-origin: top right;
  -moz-transform-origin: top right;
  -o-transform-origin: top right;
  transform-origin: top right; }

  /* slideUp */
@-webkit-keyframes slideUp {
  0% {
    -webkit-transform: translate3d(0, 100%, 0); }
  100% {
    -webkit-transform: none; } }
@-moz-keyframes slideUp {
  0% {
    -moz-transform: translate3d(0, 100%, 0); }
  100% {
    -moz-transform: none; } }
@-o-keyframes slideUp {
  0% {
    -o-transform: translate3d(0, 100%, 0); }
  100% {
    -o-transform: none; } }
@keyframes slideUp {
  0% {
    transform: translate3d(0, 100%, 0); }
  100% {
    transform: none; } }

.u--slideUp {
  -webkit-animation: slideUp 1s;
  -moz-animation: slideUp 1s;
  -o-animation: slideUp 1s;
  animation: slideUp 1s; }

/* slideDown */
@-webkit-keyframes slideDown {
  0% {
    -webkit-transform: translate3d(0, -100%, 0); }
  100% {
    -webkit-transform: none; } }
@-moz-keyframes slideDown {
  0% {
    -moz-transform: translate3d(0, -100%, 0); }
  100% {
    -moz-transform: none; } }
@-o-keyframes slideDown {
  0% {
    -o-transform: translate3d(0, -100%, 0); }
  100% {
    -o-transform: none; } }
@keyframes slideDown {
  0% {
    transform: translate3d(0, -100%, 0); }
  100% {
    transform: none; } }

.u--slideDown {
  -webkit-animation: slideDown 1s;
  -moz-animation: slideDown 1s;
  -o-animation: slideDown 1s;
  animation: slideDown 1s; }

/* slideLeft */
@-webkit-keyframes slideLeft {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0); }
  100% {
    -webkit-transform: none; } }
@-moz-keyframes slideLeft {
  0% {
    -moz-transform: translate3d(-100%, 0, 0); }
  100% {
    -moz-transform: none; } }
@-o-keyframes slideLeft {
  0% {
    -o-transform: translate3d(-100%, 0, 0); }
  100% {
    -o-transform: none; } }
@keyframes slideLeft {
  0% {
    transform: translate3d(-100%, 0, 0); }
  100% {
    transform: none; } }

.u--slideLeft {
  -webkit-animation: slideLeft 1s;
  -moz-animation: slideLeft 1s;
  -o-animation: slideLeft 1s;
  animation: slideLeft 1s; }

/* slideRight */
@-webkit-keyframes slideRight {
  0% {
    -webkit-transform: translate3d(100%, 0, 0); }
  100% {
    -webkit-transform: none; } }
@-moz-keyframes slideRight {
  0% {
    -moz-transform: translate3d(100%, 0, 0); }
  100% {
    -moz-transform: none; } }
@-o-keyframes slideRight {
  0% {
    -o-transform: translate3d(100%, 0, 0); }
  100% {
    -o-transform: none; } }
@keyframes slideRight {
  0% {
    transform: translate3d(100%, 0, 0); }
  100% {
    transform: none; } }

.u--slideRight {
  -webkit-animation: slideRight 1s;
  -moz-animation: slideRight 1s;
  -o-animation: slideRight 1s;
  animation: slideRight 1s; }

/* zoomIn */
@-webkit-keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }
@-moz-keyframes zoomIn {
  0% {
    opacity: 0;
    -moz-transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }
@-o-keyframes zoomIn {
  0% {
    opacity: 0;
    -o-transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }
@keyframes zoomIn {
  0% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }

.u--zoomIn {
  -webkit-animation: zoomIn 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -moz-animation: zoomIn 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -o-animation: zoomIn 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  animation: zoomIn 1s cubic-bezier(0.445, 0.05, 0.55, 0.95); }

/* zoomInDown */
@-webkit-keyframes zoomInDown {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -90vh, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  50% {
    opacity: 1;
    -webkit-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, 3vh, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@-moz-keyframes zoomInDown {
  0% {
    opacity: 0;
    -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -90vh, 0);
    -moz-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  50% {
    opacity: 1;
    -moz-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, 3vh, 0);
    -moz-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@-o-keyframes zoomInDown {
  0% {
    opacity: 0;
    -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -90vh, 0);
    -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  50% {
    opacity: 1;
    -o-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, 3vh, 0);
    -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomInDown {
  0% {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -90vh, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  50% {
    opacity: 1;
    transform: scale3d(0.6, 0.6, 0.6) translate3d(0, 3vh, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.u--zoomInDown {
  -webkit-animation: zoomInDown 1s;
  -moz-animation: zoomInDown 1s;
  -o-animation: zoomInDown 1s;
  animation: zoomInDown 1s; }

/* zoomInUp */
@-webkit-keyframes zoomInUp {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 90vh, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  50% {
    opacity: 1;
    -webkit-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, -3vh, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@-moz-keyframes zoomInUp {
  0% {
    opacity: 0;
    -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 90vh, 0);
    -moz-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  50% {
    opacity: 1;
    -moz-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, -3vh, 0);
    -moz-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@-o-keyframes zoomInUp {
  0% {
    opacity: 0;
    -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 90vh, 0);
    -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  50% {
    opacity: 1;
    -o-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, -3vh, 0);
    -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomInUp {
  0% {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 90vh, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    transform: scale3d(0.6, 0.6, 0.6) translate3d(0, -3vh, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.u--zoomInUp {
  -webkit-animation: zoomInUp 1s;
  -moz-animation: zoomInUp 1s;
  -o-animation: zoomInUp 1s;
  animation: zoomInUp 1s; }

/* zoomOut */
@-webkit-keyframes zoomOut {
  0% {
    opacity: 1; }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3); }
  100% {
    opacity: 0; } }
@-moz-keyframes zoomOut {
  0% {
    opacity: 1; }
  50% {
    opacity: 0;
    -moz-transform: scale3d(0.3, 0.3, 0.3); }
  100% {
    opacity: 0; } }
@-o-keyframes zoomOut {
  0% {
    opacity: 1; }
  50% {
    opacity: 0;
    -o-transform: scale3d(0.3, 0.3, 0.3); }
  100% {
    opacity: 0; } }
@keyframes zoomOut {
  0% {
    opacity: 1; }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3); }
  100% {
    opacity: 0; } }

.u--zoomOut {
  -webkit-animation: zoomOut 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -moz-animation: zoomOut 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  -o-animation: zoomOut 1s cubic-bezier(0.445, 0.05, 0.55, 0.95);
  animation: zoomOut 1s cubic-bezier(0.445, 0.05, 0.55, 0.95); }

/* zoomOutDown */
@-webkit-keyframes zoomOutDown {
  50% {
    opacity: 1;
    -webkit-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, -3vh, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 90vh, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@-moz-keyframes zoomOutDown {
  50% {
    opacity: 1;
    -moz-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, -3vh, 0);
    -moz-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% {
    opacity: 0;
    -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 90vh, 0);
    -moz-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@-o-keyframes zoomOutDown {
  50% {
    opacity: 1;
    -o-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, -3vh, 0);
    -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% {
    opacity: 0;
    -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 90vh, 0);
    -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomOutDown {
  40% {
    opacity: 1;
    transform: scale3d(0.6, 0.6, 0.6) translate3d(0, -3vh, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 90vh, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.u--zoomOutDown {
  -webkit-animation: zoomOutDown 1s;
  -moz-animation: zoomOutDown 1s;
  -o-animation: zoomOutDown 1s;
  animation: zoomOutDown 1s; }

/* zoomOutUp */
@-webkit-keyframes zoomOutUp {
  50% {
    opacity: 1;
    -webkit-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, 3vh, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -90vh, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@-moz-keyframes zoomOutUp {
  50% {
    opacity: 1;
    -moz-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, 3vh, 0);
    -moz-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% {
    opacity: 0;
    -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -90vh, 0);
    -moz-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@-o-keyframes zoomOutUp {
  50% {
    opacity: 1;
    -o-transform: scale3d(0.6, 0.6, 0.6) translate3d(0, 3vh, 0);
    -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% {
    opacity: 0;
    -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -90vh, 0);
    -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomOutUp {
  40% {
    opacity: 1;
    transform: scale3d(0.6, 0.6, 0.6) translate3d(0, 3vh, 0);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -90vh, 0);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.u--zoomOutUp {
  -webkit-animation: zoomOutUp 1s;
  -moz-animation: zoomOutUp 1s;
  -o-animation: zoomOutUp 1s;
  animation: zoomOutUp 1s; }  
