/* 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; }