    @charset "UTF-8";
    /*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.2
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2017 Daniel Eden
 */
    
    .animated {
        animation-duration: 1s;
        animation-fill-mode: both
    }
    
    .animated.infinite {
        animation-iteration-count: infinite
    }
    
    .animated.hinge {
        animation-duration: 2s
    }
    
    .animated.bounceIn,
    .animated.bounceOut,
    .animated.flipOutX,
    .animated.flipOutY {
        animation-duration: .75s
    }
    
    @keyframes bounce {
        0%,
        20%,
        53%,
        80%,
        to {
            animation-timing-function: cubic-bezier(.215, .61, .355, 1);
            transform: translateZ(0)
        }
        40%,
        43% {
            animation-timing-function: cubic-bezier(.755, .05, .855, .06);
            transform: translate3d(0, -30px, 0)
        }
        70% {
            animation-timing-function: cubic-bezier(.755, .05, .855, .06);
            transform: translate3d(0, -15px, 0)
        }
        90% {
            transform: translate3d(0, -4px, 0)
        }
    }
    
    .bounce {
        animation-name: bounce;
        transform-origin: center bottom
    }
    
    @keyframes flash {
        0%,
        50%,
        to {
            opacity: 1
        }
        25%,
        75% {
            opacity: 0
        }
    }
    
    .flash {
        animation-name: flash
    }
    
    @keyframes pulse {
        0% {
            transform: scaleX(1)
        }
        50% {
            transform: scale3d(1.05, 1.05, 1.05)
        }
        to {
            transform: scaleX(1)
        }
    }
    
    .pulse {
        animation-name: pulse
    }
    
    @keyframes rubberBand {
        0% {
            transform: scaleX(1)
        }
        30% {
            transform: scale3d(1.25, .75, 1)
        }
        40% {
            transform: scale3d(.75, 1.25, 1)
        }
        50% {
            transform: scale3d(1.15, .85, 1)
        }
        65% {
            transform: scale3d(.95, 1.05, 1)
        }
        75% {
            transform: scale3d(1.05, .95, 1)
        }
        to {
            transform: scaleX(1)
        }
    }
    
    .rubberBand {
        animation-name: rubberBand
    }
    
    @keyframes shake {
        0%,
        to {
            transform: translateZ(0)
        }
        10%,
        30%,
        50%,
        70%,
        90% {
            transform: translate3d(-10px, 0, 0)
        }
        20%,
        40%,
        60%,
        80% {
            transform: translate3d(10px, 0, 0)
        }
    }
    
    .shake {
        animation-name: shake
    }
    
    @keyframes headShake {
        0% {
            transform: translateX(0)
        }
        6.5% {
            transform: translateX(-6px) rotateY(-9deg)
        }
        18.5% {
            transform: translateX(5px) rotateY(7deg)
        }
        31.5% {
            transform: translateX(-3px) rotateY(-5deg)
        }
        43.5% {
            transform: translateX(2px) rotateY(3deg)
        }
        50% {
            transform: translateX(0)
        }
    }
    
    .headShake {
        animation-timing-function: ease-in-out;
        animation-name: headShake
    }
    
    @keyframes swing {
        20% {
            transform: rotate(15deg)
        }
        40% {
            transform: rotate(-10deg)
        }
        60% {
            transform: rotate(5deg)
        }
        80% {
            transform: rotate(-5deg)
        }
        to {
            transform: rotate(0deg)
        }
    }
    
    .swing {
        transform-origin: top center;
        animation-name: swing
    }
    
    @keyframes tada {
        0% {
            transform: scaleX(1)
        }
        10%,
        20% {
            transform: scale3d(.9, .9, .9) rotate(-3deg)
        }
        30%,
        50%,
        70%,
        90% {
            transform: scale3d(1.1, 1.1, 1.1) rotate(3deg)
        }
        40%,
        60%,
        80% {
            transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg)
        }
        to {
            transform: scaleX(1)
        }
    }
    
    .tada {
        animation-name: tada
    }
    
    @keyframes wobble {
        0% {
            transform: none
        }
        15% {
            transform: translate3d(-25%, 0, 0) rotate(-5deg)
        }
        30% {
            transform: translate3d(20%, 0, 0) rotate(3deg)
        }
        45% {
            transform: translate3d(-15%, 0, 0) rotate(-3deg)
        }
        60% {
            transform: translate3d(10%, 0, 0) rotate(2deg)
        }
        75% {
            transform: translate3d(-5%, 0, 0) rotate(-1deg)
        }
        to {
            transform: none
        }
    }
    
    .wobble {
        animation-name: wobble
    }
    
    @keyframes jello {
        0%,
        11.1%,
        to {
            transform: none
        }
        22.2% {
            transform: skewX(-12.5deg) skewY(-12.5deg)
        }
        33.3% {
            transform: skewX(6.25deg) skewY(6.25deg)
        }
        44.4% {
            transform: skewX(-3.125deg) skewY(-3.125deg)
        }
        55.5% {
            transform: skewX(1.5625deg) skewY(1.5625deg)
        }
        66.6% {
            transform: skewX(-.78125deg) skewY(-.78125deg)
        }
        77.7% {
            transform: skewX(.390625deg) skewY(.390625deg)
        }
        88.8% {
            transform: skewX(-.1953125deg) skewY(-.1953125deg)
        }
    }
    
    .jello {
        animation-name: jello;
        transform-origin: center
    }
    
    @keyframes bounceIn {
        0%,
        20%,
        40%,
        60%,
        80%,
        to {
            animation-timing-function: cubic-bezier(.215, .61, .355, 1)
        }
        0% {
            opacity: 0;
            transform: scale3d(.3, .3, .3)
        }
        20% {
            transform: scale3d(1.1, 1.1, 1.1)
        }
        40% {
            transform: scale3d(.9, .9, .9)
        }
        60% {
            opacity: 1;
            transform: scale3d(1.03, 1.03, 1.03)
        }
        80% {
            transform: scale3d(.97, .97, .97)
        }
        to {
            opacity: 1;
            transform: scaleX(1)
        }
    }
    
    .bounceIn {
        animation-name: bounceIn
    }
    
    @keyframes bounceInDown {
        0%,
        60%,
        75%,
        90%,
        to {
            animation-timing-function: cubic-bezier(.215, .61, .355, 1)
        }
        0% {
            opacity: 0;
            transform: translate3d(0, -3000px, 0)
        }
        60% {
            opacity: 1;
            transform: translate3d(0, 25px, 0)
        }
        75% {
            transform: translate3d(0, -10px, 0)
        }
        90% {
            transform: translate3d(0, 5px, 0)
        }
        to {
            transform: none
        }
    }
    
    .bounceInDown {
        animation-name: bounceInDown
    }
    
    @keyframes bounceInLeft {
        0%,
        60%,
        75%,
        90%,
        to {
            animation-timing-function: cubic-bezier(.215, .61, .355, 1)
        }
        0% {
            opacity: 0;
            transform: translate3d(-3000px, 0, 0)
        }
        60% {
            opacity: 1;
            transform: translate3d(25px, 0, 0)
        }
        75% {
            transform: translate3d(-10px, 0, 0)
        }
        90% {
            transform: translate3d(5px, 0, 0)
        }
        to {
            transform: none
        }
    }
    
    .bounceInLeft {
        animation-name: bounceInLeft
    }
    
    @keyframes bounceInRight {
        0%,
        60%,
        75%,
        90%,
        to {
            animation-timing-function: cubic-bezier(.215, .61, .355, 1)
        }
        0% {
            opacity: 0;
            transform: translate3d(3000px, 0, 0)
        }
        60% {
            opacity: 1;
            transform: translate3d(-25px, 0, 0)
        }
        75% {
            transform: translate3d(10px, 0, 0)
        }
        90% {
            transform: translate3d(-5px, 0, 0)
        }
        to {
            transform: none
        }
    }
    
    .bounceInRight {
        animation-name: bounceInRight
    }
    
    @keyframes bounceInUp {
        0%,
        60%,
        75%,
        90%,
        to {
            animation-timing-function: cubic-bezier(.215, .61, .355, 1)
        }
        0% {
            opacity: 0;
            transform: translate3d(0, 3000px, 0)
        }
        60% {
            opacity: 1;
            transform: translate3d(0, -20px, 0)
        }
        75% {
            transform: translate3d(0, 10px, 0)
        }
        90% {
            transform: translate3d(0, -5px, 0)
        }
        to {
            transform: translateZ(0)
        }
    }
    
    .bounceInUp {
        animation-name: bounceInUp
    }
    
    @keyframes bounceOut {
        20% {
            transform: scale3d(.9, .9, .9)
        }
        50%,
        55% {
            opacity: 1;
            transform: scale3d(1.1, 1.1, 1.1)
        }
        to {
            opacity: 0;
            transform: scale3d(.3, .3, .3)
        }
    }
    
    .bounceOut {
        animation-name: bounceOut
    }
    
    @keyframes bounceOutDown {
        20% {
            transform: translate3d(0, 10px, 0)
        }
        40%,
        45% {
            opacity: 1;
            transform: translate3d(0, -20px, 0)
        }
        to {
            opacity: 0;
            transform: translate3d(0, 2000px, 0)
        }
    }
    
    .bounceOutDown {
        animation-name: bounceOutDown
    }
    
    @keyframes bounceOutLeft {
        20% {
            opacity: 1;
            transform: translate3d(20px, 0, 0)
        }
        to {
            opacity: 0;
            transform: translate3d(-2000px, 0, 0)
        }
    }
    
    .bounceOutLeft {
        animation-name: bounceOutLeft
    }
    
    @keyframes bounceOutRight {
        20% {
            opacity: 1;
            transform: translate3d(-20px, 0, 0)
        }
        to {
            opacity: 0;
            transform: translate3d(2000px, 0, 0)
        }
    }
    
    .bounceOutRight {
        animation-name: bounceOutRight
    }
    
    @keyframes bounceOutUp {
        20% {
            transform: translate3d(0, -10px, 0)
        }
        40%,
        45% {
            opacity: 1;
            transform: translate3d(0, 20px, 0)
        }
        to {
            opacity: 0;
            transform: translate3d(0, -2000px, 0)
        }
    }
    
    .bounceOutUp {
        animation-name: bounceOutUp
    }
    
    @keyframes fadeIn {
        0% {
            opacity: 0
        }
        to {
            opacity: 1
        }
    }
    
    .fadeIn {
        animation-name: fadeIn
    }
    
    @keyframes fadeInDown {
        0% {
            opacity: 0;
            transform: translate3d(0, -100%, 0)
        }
        to {
            opacity: 1;
            transform: none
        }
    }
    
    .fadeInDown {
        animation-name: fadeInDown
    }
    
    @keyframes fadeInDownBig {
        0% {
            opacity: 0;
            transform: translate3d(0, -2000px, 0)
        }
        to {
            opacity: 1;
            transform: none
        }
    }
    
    .fadeInDownBig {
        animation-name: fadeInDownBig
    }
    
    @keyframes fadeInLeft {
        0% {
            opacity: 0;
            transform: translate3d(-100%, 0, 0)
        }
        to {
            opacity: 1;
            transform: none
        }
    }
    
    .fadeInLeft {
        animation-name: fadeInLeft
    }
    
    @keyframes fadeInLeftBig {
        0% {
            opacity: 0;
            transform: translate3d(-2000px, 0, 0)
        }
        to {
            opacity: 1;
            transform: none
        }
    }
    
    .fadeInLeftBig {
        animation-name: fadeInLeftBig
    }
    
    @keyframes fadeInRight {
        0% {
            opacity: 0;
            transform: translate3d(100%, 0, 0)
        }
        to {
            opacity: 1;
            transform: none
        }
    }
    
    .fadeInRight {
        animation-name: fadeInRight
    }
    
    @keyframes fadeInRightBig {
        0% {
            opacity: 0;
            transform: translate3d(2000px, 0, 0)
        }
        to {
            opacity: 1;
            transform: none
        }
    }
    
    .fadeInRightBig {
        animation-name: fadeInRightBig
    }
    
    @keyframes fadeInUp {
        0% {
            opacity: 0;
            transform: translate3d(0, 100%, 0)
        }
        to {
            opacity: 1;
            transform: none
        }
    }
    
    .fadeInUp {
        animation-name: fadeInUp
    }
    
    @keyframes fadeInUpBig {
        0% {
            opacity: 0;
            transform: translate3d(0, 2000px, 0)
        }
        to {
            opacity: 1;
            transform: none
        }
    }
    
    .fadeInUpBig {
        animation-name: fadeInUpBig
    }
    
    @keyframes fadeOut {
        0% {
            opacity: 1
        }
        to {
            opacity: 0
        }
    }
    
    .fadeOut {
        animation-name: fadeOut
    }
    
    @keyframes fadeOutDown {
        0% {
            opacity: 1
        }
        to {
            opacity: 0;
            transform: translate3d(0, 100%, 0)
        }
    }
    
    .fadeOutDown {
        animation-name: fadeOutDown
    }
    
    @keyframes fadeOutDownBig {
        0% {
            opacity: 1
        }
        to {
            opacity: 0;
            transform: translate3d(0, 2000px, 0)
        }
    }
    
    .fadeOutDownBig {
        animation-name: fadeOutDownBig
    }
    
    @keyframes fadeOutLeft {
        0% {
            opacity: 1
        }
        to {
            opacity: 0;
            transform: translate3d(-100%, 0, 0)
        }
    }
    
    .fadeOutLeft {
        animation-name: fadeOutLeft
    }
    
    @keyframes fadeOutLeftBig {
        0% {
            opacity: 1
        }
        to {
            opacity: 0;
            transform: translate3d(-2000px, 0, 0)
        }
    }
    
    .fadeOutLeftBig {
        animation-name: fadeOutLeftBig
    }
    
    @keyframes fadeOutRight {
        0% {
            opacity: 1
        }
        to {
            opacity: 0;
            transform: translate3d(100%, 0, 0)
        }
    }
    
    .fadeOutRight {
        animation-name: fadeOutRight
    }
    
    @keyframes fadeOutRightBig {
        0% {
            opacity: 1
        }
        to {
            opacity: 0;
            transform: translate3d(2000px, 0, 0)
        }
    }
    
    .fadeOutRightBig {
        animation-name: fadeOutRightBig
    }
    
    @keyframes fadeOutUp {
        0% {
            opacity: 1
        }
        to {
            opacity: 0;
            transform: translate3d(0, -100%, 0)
        }
    }
    
    .fadeOutUp {
        animation-name: fadeOutUp
    }
    
    @keyframes fadeOutUpBig {
        0% {
            opacity: 1
        }
        to {
            opacity: 0;
            transform: translate3d(0, -2000px, 0)
        }
    }
    
    .fadeOutUpBig {
        animation-name: fadeOutUpBig
    }
    
    @keyframes flip {
        0% {
            transform: perspective(400px) rotateY(-1turn);
            animation-timing-function: ease-out
        }
        40% {
            transform: perspective(400px) translateZ(150px) rotateY(-190deg);
            animation-timing-function: ease-out
        }
        50% {
            transform: perspective(400px) translateZ(150px) rotateY(-170deg);
            animation-timing-function: ease-in
        }
        80% {
            transform: perspective(400px) scale3d(.95, .95, .95);
            animation-timing-function: ease-in
        }
        to {
            transform: perspective(400px);
            animation-timing-function: ease-in
        }
    }
    
    .animated.flip {
        -webkit-backface-visibility: visible;
        backface-visibility: visible;
        animation-name: flip
    }
    
    @keyframes flipInX {
        0% {
            transform: perspective(400px) rotateX(90deg);
            animation-timing-function: ease-in;
            opacity: 0
        }
        40% {
            transform: perspective(400px) rotateX(-20deg);
            animation-timing-function: ease-in
        }
        60% {
            transform: perspective(400px) rotateX(10deg);
            opacity: 1
        }
        80% {
            transform: perspective(400px) rotateX(-5deg)
        }
        to {
            transform: perspective(400px)
        }
    }
    
    .flipInX {
        -webkit-backface-visibility: visible!important;
        backface-visibility: visible!important;
        animation-name: flipInX
    }
    
    @keyframes flipInY {
        0% {
            transform: perspective(400px) rotateY(90deg);
            animation-timing-function: ease-in;
            opacity: 0
        }
        40% {
            transform: perspective(400px) rotateY(-20deg);
            animation-timing-function: ease-in
        }
        60% {
            transform: perspective(400px) rotateY(10deg);
            opacity: 1
        }
        80% {
            transform: perspective(400px) rotateY(-5deg)
        }
        to {
            transform: perspective(400px)
        }
    }
    
    .flipInY {
        -webkit-backface-visibility: visible!important;
        backface-visibility: visible!important;
        animation-name: flipInY
    }
    
    @keyframes flipOutX {
        0% {
            transform: perspective(400px)
        }
        30% {
            transform: perspective(400px) rotateX(-20deg);
            opacity: 1
        }
        to {
            transform: perspective(400px) rotateX(90deg);
            opacity: 0
        }
    }
    
    .flipOutX {
        animation-name: flipOutX;
        -webkit-backface-visibility: visible!important;
        backface-visibility: visible!important
    }
    
    @keyframes flipOutY {
        0% {
            transform: perspective(400px)
        }
        30% {
            transform: perspective(400px) rotateY(-15deg);
            opacity: 1
        }
        to {
            transform: perspective(400px) rotateY(90deg);
            opacity: 0
        }
    }
    
    .flipOutY {
        -webkit-backface-visibility: visible!important;
        backface-visibility: visible!important;
        animation-name: flipOutY
    }
    
    @keyframes lightSpeedIn {
        0% {
            transform: translate3d(100%, 0, 0) skewX(-30deg);
            opacity: 0
        }
        60% {
            transform: skewX(20deg);
            opacity: 1
        }
        80% {
            transform: skewX(-5deg);
            opacity: 1
        }
        to {
            transform: none;
            opacity: 1
        }
    }
    
    .lightSpeedIn {
        animation-name: lightSpeedIn;
        animation-timing-function: ease-out
    }
    
    @keyframes lightSpeedOut {
        0% {
            opacity: 1
        }
        to {
            transform: translate3d(100%, 0, 0) skewX(30deg);
            opacity: 0
        }
    }
    
    .lightSpeedOut {
        animation-name: lightSpeedOut;
        animation-timing-function: ease-in
    }
    
    @keyframes rotateIn {
        0% {
            transform-origin: center;
            transform: rotate(-200deg);
            opacity: 0
        }
        to {
            transform-origin: center;
            transform: none;
            opacity: 1
        }
    }
    
    .rotateIn {
        animation-name: rotateIn
    }
    
    @keyframes rotateInDownLeft {
        0% {
            transform-origin: left bottom;
            transform: rotate(-45deg);
            opacity: 0
        }
        to {
            transform-origin: left bottom;
            transform: none;
            opacity: 1
        }
    }
    
    .rotateInDownLeft {
        animation-name: rotateInDownLeft
    }
    
    @keyframes rotateInDownRight {
        0% {
            transform-origin: right bottom;
            transform: rotate(45deg);
            opacity: 0
        }
        to {
            transform-origin: right bottom;
            transform: none;
            opacity: 1
        }
    }
    
    .rotateInDownRight {
        animation-name: rotateInDownRight
    }
    
    @keyframes rotateInUpLeft {
        0% {
            transform-origin: left bottom;
            transform: rotate(45deg);
            opacity: 0
        }
        to {
            transform-origin: left bottom;
            transform: none;
            opacity: 1
        }
    }
    
    .rotateInUpLeft {
        animation-name: rotateInUpLeft
    }
    
    @keyframes rotateInUpRight {
        0% {
            transform-origin: right bottom;
            transform: rotate(-90deg);
            opacity: 0
        }
        to {
            transform-origin: right bottom;
            transform: none;
            opacity: 1
        }
    }
    
    .rotateInUpRight {
        animation-name: rotateInUpRight
    }
    
    @keyframes rotateOut {
        0% {
            transform-origin: center;
            opacity: 1
        }
        to {
            transform-origin: center;
            transform: rotate(200deg);
            opacity: 0
        }
    }
    
    .rotateOut {
        animation-name: rotateOut
    }
    
    @keyframes rotateOutDownLeft {
        0% {
            transform-origin: left bottom;
            opacity: 1
        }
        to {
            transform-origin: left bottom;
            transform: rotate(45deg);
            opacity: 0
        }
    }
    
    .rotateOutDownLeft {
        animation-name: rotateOutDownLeft
    }
    
    @keyframes rotateOutDownRight {
        0% {
            transform-origin: right bottom;
            opacity: 1
        }
        to {
            transform-origin: right bottom;
            transform: rotate(-45deg);
            opacity: 0
        }
    }
    
    .rotateOutDownRight {
        animation-name: rotateOutDownRight
    }
    
    @keyframes rotateOutUpLeft {
        0% {
            transform-origin: left bottom;
            opacity: 1
        }
        to {
            transform-origin: left bottom;
            transform: rotate(-45deg);
            opacity: 0
        }
    }
    
    .rotateOutUpLeft {
        animation-name: rotateOutUpLeft
    }
    
    @keyframes rotateOutUpRight {
        0% {
            transform-origin: right bottom;
            opacity: 1
        }
        to {
            transform-origin: right bottom;
            transform: rotate(90deg);
            opacity: 0
        }
    }
    
    .rotateOutUpRight {
        animation-name: rotateOutUpRight
    }
    
    @keyframes hinge {
        0% {
            transform-origin: top left;
            animation-timing-function: ease-in-out
        }
        20%,
        60% {
            transform: rotate(80deg);
            transform-origin: top left;
            animation-timing-function: ease-in-out
        }
        40%,
        80% {
            transform: rotate(60deg);
            transform-origin: top left;
            animation-timing-function: ease-in-out;
            opacity: 1
        }
        to {
            transform: translate3d(0, 700px, 0);
            opacity: 0
        }
    }
    
    .hinge {
        animation-name: hinge
    }
    
    @keyframes jackInTheBox {
        0% {
            opacity: 0;
            transform: scale(.1) rotate(30deg);
            transform-origin: center bottom
        }
        50% {
            transform: rotate(-10deg)
        }
        70% {
            transform: rotate(3deg)
        }
        to {
            opacity: 1;
            transform: scale(1)
        }
    }
    
    .jackInTheBox {
        animation-name: jackInTheBox
    }
    
    @keyframes rollIn {
        0% {
            opacity: 0;
            transform: translate3d(-100%, 0, 0) rotate(-120deg)
        }
        to {
            opacity: 1;
            transform: none
        }
    }
    
    .rollIn {
        animation-name: rollIn
    }
    
    @keyframes rollOut {
        0% {
            opacity: 1
        }
        to {
            opacity: 0;
            transform: translate3d(100%, 0, 0) rotate(120deg)
        }
    }
    
    .rollOut {
        animation-name: rollOut
    }
    
    @keyframes zoomIn {
        0% {
            opacity: 0;
            transform: scale3d(.3, .3, .3)
        }
        50% {
            opacity: 1
        }
    }
    
    .zoomIn {
        animation-name: zoomIn
    }
    
    @keyframes zoomInDown {
        0% {
            opacity: 0;
            transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
            animation-timing-function: cubic-bezier(.55, .055, .675, .19)
        }
        60% {
            opacity: 1;
            transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
            animation-timing-function: cubic-bezier(.175, .885, .32, 1)
        }
    }
    
    .zoomInDown {
        animation-name: zoomInDown
    }
    
    @keyframes zoomInLeft {
        0% {
            opacity: 0;
            transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
            animation-timing-function: cubic-bezier(.55, .055, .675, .19)
        }
        60% {
            opacity: 1;
            transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
            animation-timing-function: cubic-bezier(.175, .885, .32, 1)
        }
    }
    
    .zoomInLeft {
        animation-name: zoomInLeft
    }
    
    @keyframes zoomInRight {
        0% {
            opacity: 0;
            transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
            animation-timing-function: cubic-bezier(.55, .055, .675, .19)
        }
        60% {
            opacity: 1;
            transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
            animation-timing-function: cubic-bezier(.175, .885, .32, 1)
        }
    }
    
    .zoomInRight {
        animation-name: zoomInRight
    }
    
    @keyframes zoomInUp {
        0% {
            opacity: 0;
            transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
            animation-timing-function: cubic-bezier(.55, .055, .675, .19)
        }
        60% {
            opacity: 1;
            transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
            animation-timing-function: cubic-bezier(.175, .885, .32, 1)
        }
    }
    
    .zoomInUp {
        animation-name: zoomInUp
    }
    
    @keyframes zoomOut {
        0% {
            opacity: 1
        }
        50% {
            opacity: 0;
            transform: scale3d(.3, .3, .3)
        }
        to {
            opacity: 0
        }
    }
    
    .zoomOut {
        animation-name: zoomOut
    }
    
    @keyframes zoomOutDown {
        40% {
            opacity: 1;
            transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
            animation-timing-function: cubic-bezier(.55, .055, .675, .19)
        }
        to {
            opacity: 0;
            transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
            transform-origin: center bottom;
            animation-timing-function: cubic-bezier(.175, .885, .32, 1)
        }
    }
    
    .zoomOutDown {
        animation-name: zoomOutDown
    }
    
    @keyframes zoomOutLeft {
        40% {
            opacity: 1;
            transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0)
        }
        to {
            opacity: 0;
            transform: scale(.1) translate3d(-2000px, 0, 0);
            transform-origin: left center
        }
    }
    
    .zoomOutLeft {
        animation-name: zoomOutLeft
    }
    
    @keyframes zoomOutRight {
        40% {
            opacity: 1;
            transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0)
        }
        to {
            opacity: 0;
            transform: scale(.1) translate3d(2000px, 0, 0);
            transform-origin: right center
        }
    }
    
    .zoomOutRight {
        animation-name: zoomOutRight
    }
    
    @keyframes zoomOutUp {
        40% {
            opacity: 1;
            transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
            animation-timing-function: cubic-bezier(.55, .055, .675, .19)
        }
        to {
            opacity: 0;
            transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
            transform-origin: center bottom;
            animation-timing-function: cubic-bezier(.175, .885, .32, 1)
        }
    }
    
    .zoomOutUp {
        animation-name: zoomOutUp
    }
    
    @keyframes slideInDown {
        0% {
            transform: translate3d(0, -100%, 0);
            visibility: visible
        }
        to {
            transform: translateZ(0)
        }
    }
    
    .slideInDown {
        animation-name: slideInDown
    }
    
    @keyframes slideInLeft {
        0% {
            transform: translate3d(-100%, 0, 0);
            visibility: visible
        }
        to {
            transform: translateZ(0)
        }
    }
    
    .slideInLeft {
        animation-name: slideInLeft
    }
    
    @keyframes slideInRight {
        0% {
            transform: translate3d(100%, 0, 0);
            visibility: visible
        }
        to {
            transform: translateZ(0)
        }
    }
    
    .slideInRight {
        animation-name: slideInRight
    }
    
    @keyframes slideInUp {
        0% {
            transform: translate3d(0, 100%, 0);
            visibility: visible
        }
        to {
            transform: translateZ(0)
        }
    }
    
    .slideInUp {
        animation-name: slideInUp
    }
    
    @keyframes slideOutDown {
        0% {
            transform: translateZ(0)
        }
        to {
            visibility: hidden;
            transform: translate3d(0, 100%, 0)
        }
    }
    
    .slideOutDown {
        animation-name: slideOutDown
    }
    
    @keyframes slideOutLeft {
        0% {
            transform: translateZ(0)
        }
        to {
            visibility: hidden;
            transform: translate3d(-100%, 0, 0)
        }
    }
    
    .slideOutLeft {
        animation-name: slideOutLeft
    }
    
    @keyframes slideOutRight {
        0% {
            transform: translateZ(0)
        }
        to {
            visibility: hidden;
            transform: translate3d(100%, 0, 0)
        }
    }
    
    .slideOutRight {
        animation-name: slideOutRight
    }
    
    @keyframes slideOutUp {
        0% {
            transform: translateZ(0)
        }
        to {
            visibility: hidden;
            transform: translate3d(0, -100%, 0)
        }
    }
    
    .slideOutUp {
        animation-name: slideOutUp
    }