@charset "UTF-8";

/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.7.0
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2018 Daniel Eden
 */

@-webkit-keyframes bounce {

    from,
    20%,
    53%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    40%,
    43% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -30px, 0);
        transform: translate3d(0, -30px, 0);
    }

    70% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -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.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    40%,
    43% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -30px, 0);
        transform: translate3d(0, -30px, 0);
    }

    70% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -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(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }

    75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.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(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }

    75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.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(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(0.9, 0.9, 0.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(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(0.9, 0.9, 0.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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

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

    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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

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

@-webkit-keyframes jello {

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

    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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    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 heartBeat {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    14% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }

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

    42% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }

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

@keyframes heartBeat {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    14% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }

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

    42% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }

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

.heartBeat {
    -webkit-animation-name: heartBeat;
    animation-name: heartBeat;
    -webkit-animation-duration: 1.3s;
    animation-duration: 1.3s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
}

@-webkit-keyframes bounceIn {

    from,
    20%,
    40%,
    60%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

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

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

    40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.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(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.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.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

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

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

    40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.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(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.97);
    }

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

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

@-webkit-keyframes bounceInDown {

    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes bounceInDown {

    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.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.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes bounceInLeft {

    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.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.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes bounceInRight {

    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.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.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    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.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    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(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.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(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
}

@keyframes bounceOut {
    20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.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(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
}

.bounceOut {
    -webkit-animation-duration: 0.75s;
    animation-duration: 0.75s;
    -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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

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

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

.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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

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

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

.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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

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

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

.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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

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

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

.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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

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

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

.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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

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

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

.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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

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

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

.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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

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

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

.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) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    40% {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        transform: perspective(400px) scale3d(1, 1, 1) 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) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        transform: perspective(400px) scale3d(1, 1, 1) 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(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    to {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

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

    40% {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        transform: perspective(400px) scale3d(1, 1, 1) 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) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        transform: perspective(400px) scale3d(1, 1, 1) 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(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    to {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -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-duration: 0.75s;
    animation-duration: 0.75s;
    -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-animation-duration: 0.75s;
    animation-duration: 0.75s;
    -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);
    }

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

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

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

.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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        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-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-name: hinge;
    animation-name: hinge;
}

@-webkit-keyframes jackInTheBox {
    from {
        opacity: 0;
        -webkit-transform: scale(0.1) rotate(30deg);
        transform: scale(0.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
    }

    50% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }

    70% {
        -webkit-transform: rotate(3deg);
        transform: rotate(3deg);
    }

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

@keyframes jackInTheBox {
    from {
        opacity: 0;
        -webkit-transform: scale(0.1) rotate(30deg);
        transform: scale(0.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
    }

    50% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }

    70% {
        -webkit-transform: rotate(3deg);
        transform: rotate(3deg);
    }

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

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

/* 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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@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: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.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(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }

    50% {
        opacity: 1;
    }
}

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

    50% {
        opacity: 1;
    }
}

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

@-webkit-keyframes zoomInDown {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

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

@keyframes zoomInDown {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

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

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

@-webkit-keyframes zoomInLeft {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

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

@keyframes zoomInLeft {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

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

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

@-webkit-keyframes zoomInRight {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

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

@keyframes zoomInRight {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

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

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

@-webkit-keyframes zoomInUp {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

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

@keyframes zoomInUp {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

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

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

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

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

    to {
        opacity: 0;
    }
}

@keyframes zoomOut {
    from {
        opacity: 1;
    }

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

    to {
        opacity: 0;
    }
}

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

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

    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        transform: scale3d(0.1, 0.1, 0.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.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

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

    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        transform: scale3d(0.1, 0.1, 0.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.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

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

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

    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        transform-origin: left center;
    }
}

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

    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.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(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }

    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        transform-origin: right center;
    }
}

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

    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.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(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        transform: scale3d(0.1, 0.1, 0.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.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

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

    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        transform: scale3d(0.1, 0.1, 0.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.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 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;
}

.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.delay-1s {
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}

.animated.delay-2s {
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
}

.animated.delay-3s {
    -webkit-animation-delay: 3s;
    animation-delay: 3s;
}

.animated.delay-4s {
    -webkit-animation-delay: 4s;
    animation-delay: 4s;
}

.animated.delay-5s {
    -webkit-animation-delay: 5s;
    animation-delay: 5s;
}

.animated.fast {
    -webkit-animation-duration: 800ms;
    animation-duration: 800ms;
}

.animated.faster {
    -webkit-animation-duration: 500ms;
    animation-duration: 500ms;
}

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

.animated.slower {
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
}

@media (prefers-reduced-motion) {
    .animated {
        -webkit-animation: unset !important;
        animation: unset !important;
        -webkit-transition: none !important;
        transition: none !important;
    }
}
.dsm-advanced-tabs-container .dsm_advanced_tabs_child.et_pb_module {
  margin-bottom: 0px !important;
}

.dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper {
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab {
  cursor: pointer;
  text-align: center;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab .dsm-image {
  line-height: 0;
}

.dsm-advanced-tabs-container .dsm-advanced-tabs-wrapper .dsm-tab .dsm_icon {
  display: block;
  line-height: 1.3em;
}

.dsm-advanced-tabs-container .dsm-advanced-tabs-content-wrapper .dsm-content {
  padding-bottom: 15px;
}

.dsm_advanced_tabs .dsm-advanced-tabs-container .dsm-advanced-tabs-content-wrapper .dsm-content-wrapper {
  display: none;
}

.dsm-advanced-tabs-container .dsm-advanced-tabs-content-wrapper .dsm-content-wrapper.dsm-active {
  display: flex;
}

.dsm-tab-active-state:not(dsm-active)>div:nth-child(2),
.dsm-tab-active-state.dsm-active>div:first-child {
  display: none;
}


.dsm-tab-active-state.dsm-active>div:nth-child(2) {
  display: block;
}

.dsm-advanced-tabs-container .dsm-advanced-tabs-content-wrapper .dsm-inner-content-wrapper,
.dsm-advanced-tabs-container .dsm-advanced-tabs-content-wrapper .dsm-inner-content {
  width: 100%;
}
.mfp-wrap .mfp-container button:hover{background:transparent!important}.mfp-wrap .mfp-arrow:active{position:absolute;top:50%}.mfp-wrap .mfp-close:active{position:absolute;top:-10px}.mfp-arrow-left .mfp-a,.mfp-arrow-left:after,.mfp-arrow-right .mfp-a,.mfp-arrow-right:after{font-family:ETmodules;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.mfp-fade.mfp-bg{opacity:.001;-webkit-transition:all .5s ease-out;transition:all .5s ease-out}.mfp-fade.mfp-bg.mfp-ready{opacity:.8}.mfp-fade.mfp-bg.mfp-removing{opacity:0}.mfp-fade .mfp-wrap.mfp-wrap.mfp-ready .mfp-content{opacity:1}.mfp-fade .mfp-wrap.mfp-wrap.mfp-removing .mfp-content{opacity:0}.mfp-fade .mfp-wrap .mfp-content{opacity:.001;-webkit-transition:all .5s ease-out;transition:all .5s ease-out}.mfp-bg{z-index:1000000;overflow:hidden;background:#0b0b0b;opacity:.8;filter:alpha(opacity=80)}.mfp-bg,.mfp-wrap{top:0;left:0;width:100%;height:100%;position:fixed}.mfp-wrap{z-index:1000001;outline:none!important;-webkit-backface-visibility:hidden}.mfp-container{text-align:center;position:absolute;width:100%;height:100%;left:0;top:0;padding:0 8px;-webkit-box-sizing:border-box;box-sizing:border-box}.mfp-container:before{content:"";display:inline-block;height:100%;vertical-align:middle}.mfp-align-top .mfp-container:before{display:none}.mfp-content{position:relative;display:inline-block;vertical-align:middle;margin:0 auto;text-align:left;z-index:1045}.mfp-ajax-holder .mfp-content,.mfp-inline-holder .mfp-content{width:100%;cursor:auto}.mfp-ajax-cur{cursor:progress}.mfp-zoom{cursor:pointer;cursor:-webkit-zoom-in;cursor:zoom-in}.mfp-zoom-out-cur,.mfp-zoom-out-cur .mfp-image-holder .mfp-close{cursor:-webkit-zoom-out;cursor:zoom-out}.mfp-auto-cursor .mfp-content{cursor:auto}.mfp-arrow,.mfp-close,.mfp-counter,.mfp-preloader{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mfp-loading.mfp-figure{display:none}.mfp-hide{display:none!important}.mfp-preloader{color:#ccc;position:absolute;top:50%;width:auto;text-align:center;margin-top:-.8em;left:8px;right:8px;z-index:1044}.mfp-preloader a{color:#ccc}.mfp-preloader a:hover{color:#fff}.mfp-s-error .mfp-content,.mfp-s-ready .mfp-preloader{display:none}button.mfp-arrow,button.mfp-close{overflow:visible;cursor:pointer;background:transparent;border:0;-webkit-appearance:none;display:block;outline:none;padding:0;z-index:1046;-webkit-box-shadow:none;box-shadow:none}button::-moz-focus-inner{padding:0;border:0}.mfp-close{width:44px;height:44px;line-height:44px;position:absolute;right:0;top:0;text-decoration:none;text-align:center;opacity:.65;filter:alpha(opacity=65);padding:0 0 18px 10px;color:#fff;font-style:normal;font-size:28px;font-family:Arial,Baskerville,monospace}.mfp-close:focus,.mfp-close:hover{opacity:1;filter:alpha(opacity=100)}.mfp-close:active{top:1px}.mfp-close-btn-in .mfp-close{color:#333}.mfp-iframe-holder .mfp-close,.mfp-image-holder .mfp-close{color:#fff;right:-6px;text-align:right;padding-right:6px;width:100%}.mfp-counter{position:absolute;top:0;right:0;color:#ccc;font-size:12px;line-height:18px}.mfp-arrow{position:absolute;opacity:.55;filter:alpha(opacity=55);top:50%;margin:-32px 0 0;padding:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mfp-arrow:hover{opacity:1;filter:alpha(opacity=100)}.mfp-arrow-left{left:10px}.mfp-arrow-right{right:10px}.mfp-iframe-holder{padding-top:40px;padding-bottom:40px}.mfp-iframe-holder .mfp-content{line-height:0;width:100%;max-width:900px}.mfp-iframe-holder .mfp-close{top:-40px}.mfp-iframe-scaler{width:100%;height:0;overflow:hidden;padding-top:56.25%}.mfp-iframe-scaler iframe{position:absolute;display:block;top:0;left:0;width:100%;height:100%;-webkit-box-shadow:0 0 8px rgba(0,0,0,.6);box-shadow:0 0 8px rgba(0,0,0,.6);background:#000}.mfp-arrow{background:none!important;margin-top:-32px!important;line-height:1em!important}.mfp-arrow,.mfp-arrow:after{width:48px!important;height:48px!important}.mfp-arrow:after{margin:0!important;top:0!important;border:none!important}.mfp-arrow-left{left:0!important}.mfp-arrow-left .mfp-a,.mfp-arrow-left:after,.mfp-arrow-right .mfp-a,.mfp-arrow-right:after{border:none;font-size:64px;color:#fff}.mfp-arrow-left:before,.mfp-arrow-right:before{display:none}.mfp-arrow-left .mfp-a,.mfp-arrow-left:after{content:"4"}.mfp-arrow-right .mfp-a,.mfp-arrow-right:after{content:"5"}.mfp-iframe-holder .mfp-close,.mfp-image-holder .mfp-close{font-size:64px;font-family:Open Sans,Arial,sans-serif;font-weight:200;top:-10px;opacity:.2}.mfp-iframe-holder .mfp-close:hover,.mfp-image-holder .mfp-close:hover{opacity:1}img.mfp-img{width:auto;max-width:100%;height:auto;display:block;-webkit-box-sizing:border-box;box-sizing:border-box;padding:40px 0;margin:0 auto}.mfp-figure,img.mfp-img{line-height:0}.mfp-figure:after{content:"";position:absolute;left:0;top:40px;bottom:40px;display:block;right:0;width:auto;height:auto;z-index:-1;-webkit-box-shadow:0 0 8px rgba(0,0,0,.6);box-shadow:0 0 8px rgba(0,0,0,.6);background:#444}.mfp-figure small{color:#bdbdbd;display:block;font-size:12px;line-height:14px}.mfp-figure figure{margin:0}.mfp-bottom-bar{margin-top:-36px;position:absolute;top:100%;left:0;width:100%;cursor:auto}.mfp-title{text-align:left;line-height:18px;color:#f3f3f3;word-wrap:break-word;padding-right:36px}.mfp-image-holder .mfp-content{max-width:100%}.mfp-gallery .mfp-image-holder .mfp-figure{cursor:pointer}@media screen and (max-height:300px),screen and (max-width:800px) and (orientation:landscape){.mfp-img-mobile .mfp-image-holder{padding-left:0;padding-right:0}.mfp-img-mobile img.mfp-img{padding:0}.mfp-img-mobile .mfp-figure:after{top:0;bottom:0}.mfp-img-mobile .mfp-figure small{display:inline;margin-left:5px}.mfp-img-mobile .mfp-bottom-bar{background:rgba(0,0,0,.6);bottom:0;margin:0;top:auto;padding:3px 5px;position:fixed;-webkit-box-sizing:border-box;box-sizing:border-box}.mfp-img-mobile .mfp-bottom-bar:empty{padding:0}.mfp-img-mobile .mfp-counter{right:5px;top:3px}.mfp-img-mobile .mfp-close{top:0;right:0;width:35px;height:35px;line-height:35px;background:rgba(0,0,0,.6);position:fixed;text-align:center;padding:0}}@media (max-width:900px){.mfp-arrow{-webkit-transform:scale(.75);transform:scale(.75)}.mfp-arrow-left{-webkit-transform-origin:0;transform-origin:0}.mfp-arrow-right{-webkit-transform-origin:100%;transform-origin:100%}.mfp-container{padding-left:6px;padding-right:6px}}
.et_overlay{z-index:-1;position:absolute;top:0;left:0;display:block;width:100%;height:100%;background:hsla(0,0%,100%,.9);opacity:0;pointer-events:none;-webkit-transition:all .3s;transition:all .3s;border:1px solid #e5e5e5;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-font-smoothing:antialiased}.et_overlay:before{color:#2ea3f2;content:"\E050";position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);font-size:32px;-webkit-transition:all .4s;transition:all .4s}.et_portfolio_image,.et_shop_image{position:relative;display:block}.et_pb_has_overlay:not(.et_pb_image):hover .et_overlay,.et_portfolio_image:hover .et_overlay,.et_shop_image:hover .et_overlay{z-index:3;opacity:1}#ie7 .et_overlay,#ie8 .et_overlay{display:none}.et_pb_module.et_pb_has_overlay{position:relative}.et_pb_module.et_pb_has_overlay .et_overlay,article.et_pb_has_overlay{border:none}
.dsm_icon_list .dsm_icon_list_items,
#left-area ul.dsm_icon_list_items,
.comment-content ul.dsm_icon_list_items,
.entry-content ul.dsm_icon_list_items,
.et-l--body ul.dsm_icon_list_items,
.et-l--footer ul.dsm_icon_list_items,
.et-l--header ul.dsm_icon_list_items,
body.et-pb-preview #main-content .container ul.dsm_icon_list_items,
.et-l--body ul.dsm_icon_list_items,
.et-l--footer ul.dsm_icon_list_items,
.et-l--header ul.dsm_icon_list_items {
    list-style-type: none;
    margin: 0;
    padding: 0;
    line-height: 26px;
}

.dsm_icon_list .dsm_icon_list_items.dsm_icon_list_layout_horizontal .dsm_icon_list_child {
    display: inline-flex;
}

.dsm_icon_list .dsm_icon_list_child,
.dsm_icon_list .dsm_icon_list_child a,
.dsm_icon_list .dsm_icon_list_child .dsm_icon_list_tooltip {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    position: relative;
}

.dsm_icon_list_text {
    line-height: 1.7em;
}

.dsm_icon_list .dsm_icon_list_ltr_direction .dsm_icon_list_child .dsm_icon_list_text {
    padding-left: 5px;
}

.dsm_icon_list .dsm_icon_list_rtl_direction .dsm_icon_list_child .dsm_icon_list_text {
    padding-right: 5px;
}

.dsm_icon_list .dsm_icon_list_child {
    border-style: solid;
    border-color: #333333;
}

.dsm_icon_list .dsm_icon_list_wrapper {
    flex-shrink: 0;
    line-height: 0;
}

.dsm_icon_list .dsm_icon_list_icon {
    display: inline-block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-family: ETmodules;
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    font-variant: normal;
    -webkit-font-smoothing: antialiased;
    line-height: 1;
    text-transform: none;
    content: attr(data-icon);
    speak: none;
    border-style: solid;
    border-color: #333333;
    flex-shrink: 0;
}

.dsm_icon_list .dsm_icon_list_image {
    border-style: solid;
    border-color: #333333;
    display: inline-block;
    flex-shrink: 0;
}

.dsm_icon_list .dsm_icon_list_image img {
    width: 24px;
}

.dsm_icon_list_tooltip:hover {
    cursor: pointer;
}

.tippy-tooltip.dsm_icon_list_child_tooltip_wrapper {
    pointer-events: auto !important;
    line-height: 1.4em;
    word-wrap: break-word;
    color: #fff;
    font-size: 13px;
    overflow: visible !important;
}

.tippy-tooltip.dsm_icon_list_child_tooltip_wrapper .tippy-arrow::after {
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
}

.tippy-tooltip.dsm_icon_list_child_tooltip_wrapper .tippy-arrow::after {
    content: "";
    position: absolute;
    top: -6px;
    transform: translateZ(-1px);
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
}

/*fix divi column*/
.dsm_icon_list_column_fix {
    z-index: 1;
}

/*fb*/
.et-fb .dsm_icon_list_child.et_pb_module,
.et-fb .dsm_icon_list .dsm_icon_list_child.et-fb-module--short,
.et-db #et-boc .et-l #et-fb-app .dsm_icon_list_child.et_pb_module {
    margin-bottom: 0;
}

.et-fb .dsm_icon_list .dsm_icon_list_child>div,
.et-fb .dsm_icon_list .dsm_icon_list_child>div a,
.et-fb .dsm_icon_list .dsm_icon_list_child>div .dsm_icon_list_tooltip {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    position: relative;
}

.et-fb .dsm_icon_list_child .et_pb_module_inner,
.et-fb .dsm_icon_list .dsm_icon_list_child>div {
    width: 100%;
}
.dsm-video-popup-wrap .mfp-iframe-holder .mfp-close {
    top: -60px;
}

.dsm_button .et_pb_button_two {
    margin-left: 20px;
}
.dsm_button .dsm-button-seperator .et_pb_button_two {
    margin-left: 0;
}
.et_pb_button_module_wrappers > a {
    display: inline-block;
}
.dsm-hidden {
    display: none;
}

.dsm-tooltip {
    display: inline-flex;
}

div[data-dsm-tooltip] {
    overflow: visible;
}

[data-dsm-tooltip] {
    position: relative;
    cursor: pointer;
}

[data-dsm-tooltip]:after {
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -moz-opacity: 0;
    -khtml-opacity: 0;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: all 0.18s ease-out 0.18s;
    -moz-transition: all 0.18s ease-out 0.18s;
    -ms-transition: all 0.18s ease-out 0.18s;
    -o-transition: all 0.18s ease-out 0.18s;
    transition: all 0.18s ease-out 0.18s;
    font-family: inherit;
    font-weight: normal;
    font-style: normal;
    text-shadow: none;
    font-size: 12px;
    background: rgba(17, 17, 17, 0.9);
    border-radius: 0.25rem;
    color: #fff;
    content: attr(data-dsm-tooltip);
    text-align: center;
    position: absolute;
    white-space: nowrap;
    line-height: 1.7em;
    z-index: 12;
}

[data-dsm-tooltip]:before {
    background: transparent;
    border: 6px solid transparent;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -moz-opacity: 0;
    -khtml-opacity: 0;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: all 0.18s ease-out 0.18s;
    -moz-transition: all 0.18s ease-out 0.18s;
    -ms-transition: all 0.18s ease-out 0.18s;
    -o-transition: all 0.18s ease-out 0.18s;
    transition: all 0.18s ease-out 0.18s;
    content: '';
    position: absolute;
    z-index: 12;
}

[data-dsm-tooltip]:hover:before,
[data-dsm-tooltip]:hover:after,
[data-dsm-tooltip][data-dsm-tooltip-visible]:before,
[data-dsm-tooltip][data-dsm-tooltip-visible]:after {
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -moz-opacity: 1;
    -khtml-opacity: 1;
    opacity: 1;
    pointer-events: auto;
}

[data-dsm-tooltip].font-awesome:after {
    font-family: FontAwesome;
}

[data-dsm-tooltip][data-dsm-tooltip-break]:after {
    white-space: pre;
}

[data-dsm-tooltip][data-dsm-tooltip-blunt]:before,
[data-dsm-tooltip][data-dsm-tooltip-blunt]:after {
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top"]:after {
    bottom: 100%;
    left: 50%;
    margin-bottom: 12px;
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    /*
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;*/
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top"]:before {
    bottom: 100%;
    left: 50%;
    border-top-color: rgba(17, 17, 17, 0.9);
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    /*
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;*/
}

[data-dsm-tooltip][data-dsm-tooltip-placement='top'].dsm-tooltip-fade-in-direction:before,
[data-dsm-tooltip][data-dsm-tooltip-placement='top'].dsm-tooltip-fade-in-direction:after {
    -webkit-transform: translate(-50%, 20px);
    -moz-transform: translate(-50%, 20px);
    -ms-transform: translate(-50%, 20px);
    transform: translate(-50%, 20px);
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top"]:hover:after,
[data-dsm-tooltip][data-dsm-tooltip-placement="top"][data-dsm-tooltip-visible]:after {
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top"]:hover:before,
[data-dsm-tooltip][data-dsm-tooltip-placement="top"][data-dsm-tooltip-visible]:before {
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top-left"]:after {
    bottom: 100%;
    left: 0;
    margin-bottom: 11px;
    -webkit-transform: translate(0, 10px);
    -moz-transform: translate(0, 10px);
    -ms-transform: translate(0, 10px);
    transform: translate(0, 10px);
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top-left"]:before {
    bottom: 100%;
    left: 5px;
    margin-bottom: 5px;
    -webkit-transform: translate(0, 10px);
    -moz-transform: translate(0, 10px);
    -ms-transform: translate(0, 10px);
    transform: translate(0, 10px);
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top-left"]:hover:after,
[data-dsm-tooltip][data-dsm-tooltip-placement="top-left"][data-dsm-tooltip-visible]:after {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top-left"]:hover:before,
[data-dsm-tooltip][data-dsm-tooltip-placement="top-left"][data-dsm-tooltip-visible]:before {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top-right"]:after {
    bottom: 100%;
    right: 0;
    margin-bottom: 11px;
    -webkit-transform: translate(0, 10px);
    -moz-transform: translate(0, 10px);
    -ms-transform: translate(0, 10px);
    transform: translate(0, 10px);
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top-right"]:before {
    bottom: 100%;
    right: 5px;
    margin-bottom: 5px;
    -webkit-transform: translate(0, 10px);
    -moz-transform: translate(0, 10px);
    -ms-transform: translate(0, 10px);
    transform: translate(0, 10px);
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top-right"]:hover:after,
[data-dsm-tooltip][data-dsm-tooltip-placement="top-right"][data-dsm-tooltip-visible]:after {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement="top-right"]:hover:before,
[data-dsm-tooltip][data-dsm-tooltip-placement="top-right"][data-dsm-tooltip-visible]:before {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom']:after {
    left: 50%;
    margin-top: 12px;
    top: 100%;
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom']:before {
    border-bottom-color: rgba(17, 17, 17, 0.9);
    left: 50%;
    top: 100%;
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom'].dsm-tooltip-fade-in-direction:before,
[data-dsm-tooltip][data-dsm-tooltip-placement='bottom'].dsm-tooltip-fade-in-direction:after {
    -webkit-transform: translate(-50%, -20px);
    -moz-transform: translate(-50%, -20px);
    -ms-transform: translate(-50%, -20px);
    transform: translate(-50%, -20px);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom']:hover:after,
[data-dsm-tooltip][data-dsm-tooltip-placement='bottom'][data-dsm-tooltip-visible]:after {
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom']:hover:before,
[data-dsm-tooltip][data-dsm-tooltip-placement='bottom'][data-dsm-tooltip-visible]:before {
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-left']:after {
    left: 0;
    margin-top: 11px;
    top: 100%;
    -webkit-transform: translate(0, -10px);
    -moz-transform: translate(0, -10px);
    -ms-transform: translate(0, -10px);
    transform: translate(0, -10px);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-left']:before {
    background: no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2236px%22%20height%3D%2212px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(180 18 6)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E");
    background-size: 100% auto;
    width: 18px;
    height: 6px;
    left: 5px;
    margin-top: 5px;
    top: 100%;
    -webkit-transform: translate(0, -10px);
    -moz-transform: translate(0, -10px);
    -ms-transform: translate(0, -10px);
    transform: translate(0, -10px);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-left']:hover:after,
[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-left'][data-dsm-tooltip-visible]:after {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-left']:hover:before,
[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-left'][data-dsm-tooltip-visible]:before {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-right']:after {
    right: 0;
    margin-top: 11px;
    top: 100%;
    -webkit-transform: translate(0, -10px);
    -moz-transform: translate(0, -10px);
    -ms-transform: translate(0, -10px);
    transform: translate(0, -10px);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-right']:before {
    background: no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2236px%22%20height%3D%2212px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(180 18 6)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E");
    background-size: 100% auto;
    width: 18px;
    height: 6px;
    right: 5px;
    margin-top: 5px;
    top: 100%;
    -webkit-transform: translate(0, -10px);
    -moz-transform: translate(0, -10px);
    -ms-transform: translate(0, -10px);
    transform: translate(0, -10px);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-right']:hover:after,
[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-right'][data-dsm-tooltip-visible]:after {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-right']:hover:before,
[data-dsm-tooltip][data-dsm-tooltip-placement='bottom-right'][data-dsm-tooltip-visible]:before {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='left']:after {
    margin-right: 12px;
    right: 100%;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='left']:before {
    border-left-color: rgba(17, 17, 17, 0.9);
    right: 100%;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='left'].dsm-tooltip-fade-in-direction:before,
[data-dsm-tooltip][data-dsm-tooltip-placement='left'].dsm-tooltip-fade-in-direction:after {
    -webkit-transform: translate(20px, -50%);
    -moz-transform: translate(20px, -50%);
    -ms-transform: translate(20px, -50%);
    transform: translate(20px, -50%)
}

[data-dsm-tooltip][data-dsm-tooltip-placement='left']:hover:after,
[data-dsm-tooltip][data-dsm-tooltip-placement='left'][data-dsm-tooltip-visible]:after {
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='left']:hover:before,
[data-dsm-tooltip][data-dsm-tooltip-placement='left'][data-dsm-tooltip-visible]:before {
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='right']:after {
    left: 100%;
    margin-left: 12px;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%)
}

[data-dsm-tooltip][data-dsm-tooltip-placement='right']:before {
    border-right-color: rgba(17, 17, 17, 0.9);
    left: 100%;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%)
}

[data-dsm-tooltip][data-dsm-tooltip-placement='right'].dsm-tooltip-fade-in-direction:before,
[data-dsm-tooltip][data-dsm-tooltip-placement='right'].dsm-tooltip-fade-in-direction:after {
    -webkit-transform: translate(-20px, -50%);
    -moz-transform: translate(-20px, -50%);
    -ms-transform: translate(-20px, -50%);
    transform: translate(-20px, -50%)
}

[data-dsm-tooltip][data-dsm-tooltip-placement='right']:hover:after,
[data-dsm-tooltip][data-dsm-tooltip-placement='right'][data-dsm-tooltip-visible]:after {
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

[data-dsm-tooltip][data-dsm-tooltip-placement='right']:hover:before,
[data-dsm-tooltip][data-dsm-tooltip-placement='right'][data-dsm-tooltip-visible]:before {
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

[data-dsm-tooltip][data-dsm-tooltip-size='small']:after {
    white-space: nowrap;
    padding: .2rem .4rem;
}

[data-dsm-tooltip][data-dsm-tooltip-size='regular']:after {
    white-space: nowrap;
    padding: .3rem .6rem;
}

[data-dsm-tooltip][data-dsm-tooltip-size='large']:after {
    white-space: nowrap;
    padding: .4rem .8rem;
}

[data-dsm-tooltip][data-dsm-tooltip-size='xlarge']:after {
    white-space: nowrap;
    width: 380px;
}

@media screen and (max-width: 768px) {
    [data-dsm-tooltip][data-dsm-tooltip-size='xlarge']:after {
        white-space: normal;
        width: 90vw;
    }
}

[data-dsm-tooltip][data-dsm-tooltip-size='fit']:after {
    white-space: normal;
    width: 100%;
}

.et_pb_button_module_wrappers.et_pb_button_alignment_left {
    text-align: left; }
  
  .et_pb_button_module_wrappers.et_pb_button_alignment_right {
    text-align: right; }
  
  .et_pb_button_module_wrappers.et_pb_button_alignment_center {
    text-align: center; }
  
  /* Button Alignment - Tablet */
  @media all and (max-width: 980px) {
    .et_pb_button_module_wrappers.et_pb_button_alignment_tablet_left {
      text-align: left; }
    .et_pb_button_module_wrappers.et_pb_button_alignment_tablet_right {
      text-align: right; }
    .et_pb_button_module_wrappers.et_pb_button_alignment_tablet_center {
      text-align: center; } }
  
  /* Button Alignment - Phone */
  @media all and (max-width: 767px) {
    .et_pb_button_module_wrappers.et_pb_button_alignment_phone_left {
      text-align: left; }
    .et_pb_button_module_wrappers.et_pb_button_alignment_phone_right {
      text-align: right; }
    .et_pb_button_module_wrappers.et_pb_button_alignment_phone_center {
      text-align: center; } }

  
@media (max-width: 768px) {
    .dsm-button-separator-remove .dsm-button-separator-text {
        display: none;
    }
    .dsm_button .dsm-button-seperator.dsm-button-separator-remove .et_pb_button_two {
        margin-left: 20px;
    }
    .dsm_button .et_pb_button_two {
    	margin-top: 20px;
    }
    .dsm-button-separator-fullwidth .dsm-button-separator-text {
    	display: block;
    	margin-top: 10px;
    	margin-bottom: 10px;
    }
    .dsm-button-separator-fullwidth .et_pb_button_two {
    	margin-top: 0;
    }
}
/*!
 * Hover.css (http://ianlunn.github.io/Hover/)
 * Version: 2.1.0
 * 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.
 */
.dsm-grow {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-grow:active,
.dsm-grow:focus,
.dsm-grow:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
}

.dsm-shrink {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-shrink:active,
.dsm-shrink:focus,
.dsm-shrink:hover {
    -webkit-transform: scale(.9);
    transform: scale(.9)
}

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

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

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

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

.dsm-pulse {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-pulse:active,
.dsm-pulse:focus,
.dsm-pulse:hover {
    -webkit-animation-name: dsm-pulse;
    animation-name: dsm-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
}

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

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

.dsm-pulse-grow {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-pulse-grow:active,
.dsm-pulse-grow:focus,
.dsm-pulse-grow:hover {
    -webkit-animation-name: dsm-pulse-grow;
    animation-name: dsm-pulse-grow;
    -webkit-animation-duration: .3s;
    animation-duration: .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
}

@-webkit-keyframes dsm-pulse-shrink {
    to {
        -webkit-transform: scale(.9);
        transform: scale(.9)
    }
}

@keyframes dsm-pulse-shrink {
    to {
        -webkit-transform: scale(.9);
        transform: scale(.9)
    }
}

.dsm-pulse-shrink {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-pulse-shrink:active,
.dsm-pulse-shrink:focus,
.dsm-pulse-shrink:hover {
    -webkit-animation-name: dsm-pulse-shrink;
    animation-name: dsm-pulse-shrink;
    -webkit-animation-duration: .3s;
    animation-duration: .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
}

@-webkit-keyframes dsm-push {
    50% {
        -webkit-transform: scale(.8);
        transform: scale(.8)
    }

    to {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes dsm-push {
    50% {
        -webkit-transform: scale(.8);
        transform: scale(.8)
    }

    to {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

.dsm-push {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-push:active,
.dsm-push:focus,
.dsm-push:hover {
    -webkit-animation-name: dsm-push;
    animation-name: dsm-push;
    -webkit-animation-duration: .3s;
    animation-duration: .3s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1
}

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

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

.dsm-pop {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-pop:active,
.dsm-pop:focus,
.dsm-pop:hover {
    -webkit-animation-name: dsm-pop;
    animation-name: dsm-pop;
    -webkit-animation-duration: .3s;
    animation-duration: .3s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1
}

.dsm-bounce-in {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .5s;
    transition-duration: .5s
}

.dsm-bounce-in:active,
.dsm-bounce-in:focus,
.dsm-bounce-in:hover {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition-timing-function: cubic-bezier(.47, 2.02, .31, -.36);
    transition-timing-function: cubic-bezier(.47, 2.02, .31, -.36)
}

.dsm-bounce-out {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .5s;
    transition-duration: .5s
}

.dsm-bounce-out:active,
.dsm-bounce-out:focus,
.dsm-bounce-out:hover {
    -webkit-transform: scale(.8);
    transform: scale(.8);
    -webkit-transition-timing-function: cubic-bezier(.47, 2.02, .31, -.36);
    transition-timing-function: cubic-bezier(.47, 2.02, .31, -.36)
}

.dsm-rotate {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-rotate:active,
.dsm-rotate:focus,
.dsm-rotate:hover {
    -webkit-transform: rotate(4deg);
    transform: rotate(4deg)
}

.dsm-grow-rotate {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-grow-rotate:active,
.dsm-grow-rotate:focus,
.dsm-grow-rotate:hover {
    -webkit-transform: scale(1.1) rotate(4deg);
    transform: scale(1.1) rotate(4deg)
}

.dsm-float {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-float:active,
.dsm-float:focus,
.dsm-float:hover {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px)
}

.dsm-sink {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-sink:active,
.dsm-sink:focus,
.dsm-sink:hover {
    -webkit-transform: translateY(8px);
    transform: translateY(8px)
}

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

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

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

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

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

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

@-webkit-keyframes dsm-bob-float {
    to {
        -webkit-transform: translateY(-8px);
        transform: translateY(-8px)
    }
}

@keyframes dsm-bob-float {
    to {
        -webkit-transform: translateY(-8px);
        transform: translateY(-8px)
    }
}

.dsm-bob {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-bob:active,
.dsm-bob:focus,
.dsm-bob:hover {
    -webkit-animation-name: dsm-bob-float, dsm-bob;
    animation-name: dsm-bob-float, dsm-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
}

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

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

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

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

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

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

@-webkit-keyframes dsm-hang-sink {
    to {
        -webkit-transform: translateY(8px);
        transform: translateY(8px)
    }
}

@keyframes dsm-hang-sink {
    to {
        -webkit-transform: translateY(8px);
        transform: translateY(8px)
    }
}

.dsm-hang {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-hang:active,
.dsm-hang:focus,
.dsm-hang:hover {
    -webkit-animation-name: dsm-hang-sink, dsm-hang;
    animation-name: dsm-hang-sink, dsm-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
}

.dsm-skew {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-skew:active,
.dsm-skew:focus,
.dsm-skew:hover {
    -webkit-transform: skew(-10deg);
    transform: skew(-10deg)
}

.dsm-skew-forward {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%
}

.dsm-skew-forward:active,
.dsm-skew-forward:focus,
.dsm-skew-forward:hover {
    -webkit-transform: skew(-10deg);
    transform: skew(-10deg)
}

.dsm-skew-backward {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%
}

.dsm-skew-backward:active,
.dsm-skew-backward:focus,
.dsm-skew-backward:hover {
    -webkit-transform: skew(10deg);
    transform: skew(10deg)
}

@-webkit-keyframes dsm-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)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes dsm-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)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.dsm-wobble-vertical {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-wobble-vertical:active,
.dsm-wobble-vertical:focus,
.dsm-wobble-vertical:hover {
    -webkit-animation-name: dsm-wobble-vertical;
    animation-name: dsm-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
}

@-webkit-keyframes dsm-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)
    }

    to {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes dsm-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)
    }

    to {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.dsm-wobble-horizontal {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-wobble-horizontal:active,
.dsm-wobble-horizontal:focus,
.dsm-wobble-horizontal:hover {
    -webkit-animation-name: dsm-wobble-horizontal;
    animation-name: dsm-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
}

@-webkit-keyframes dsm-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)
    }

    to {
        -webkit-transform: translate(0);
        transform: translate(0)
    }
}

@keyframes dsm-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)
    }

    to {
        -webkit-transform: translate(0);
        transform: translate(0)
    }
}

.dsm-wobble-to-bottom-right {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-wobble-to-bottom-right:active,
.dsm-wobble-to-bottom-right:focus,
.dsm-wobble-to-bottom-right:hover {
    -webkit-animation-name: dsm-wobble-to-bottom-right;
    animation-name: dsm-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
}

@-webkit-keyframes dsm-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)
    }

    to {
        -webkit-transform: translate(0);
        transform: translate(0)
    }
}

@keyframes dsm-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)
    }

    to {
        -webkit-transform: translate(0);
        transform: translate(0)
    }
}

.dsm-wobble-to-top-right {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-wobble-to-top-right:active,
.dsm-wobble-to-top-right:focus,
.dsm-wobble-to-top-right:hover {
    -webkit-animation-name: dsm-wobble-to-top-right;
    animation-name: dsm-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
}

@-webkit-keyframes dsm-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)
    }

    to {
        -webkit-transform: skew(0);
        transform: skew(0)
    }
}

@keyframes dsm-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)
    }

    to {
        -webkit-transform: skew(0);
        transform: skew(0)
    }
}

.dsm-wobble-top {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%
}

.dsm-wobble-top:active,
.dsm-wobble-top:focus,
.dsm-wobble-top:hover {
    -webkit-animation-name: dsm-wobble-top;
    animation-name: dsm-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
}

@-webkit-keyframes dsm-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)
    }

    to {
        -webkit-transform: skew(0);
        transform: skew(0)
    }
}

@keyframes dsm-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)
    }

    to {
        -webkit-transform: skew(0);
        transform: skew(0)
    }
}

.dsm-wobble-bottom {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0
}

.dsm-wobble-bottom:active,
.dsm-wobble-bottom:focus,
.dsm-wobble-bottom:hover {
    -webkit-animation-name: dsm-wobble-bottom;
    animation-name: dsm-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
}

@-webkit-keyframes dsm-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)
    }

    to {
        -webkit-transform: skew(0);
        transform: skew(0)
    }
}

@keyframes dsm-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)
    }

    to {
        -webkit-transform: skew(0);
        transform: skew(0)
    }
}

.dsm-wobble-skew {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-wobble-skew:active,
.dsm-wobble-skew:focus,
.dsm-wobble-skew:hover {
    -webkit-animation-name: dsm-wobble-skew;
    animation-name: dsm-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
}

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

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

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

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

.dsm-buzz {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-buzz:active,
.dsm-buzz:focus,
.dsm-buzz:hover {
    -webkit-animation-name: dsm-buzz;
    animation-name: dsm-buzz;
    -webkit-animation-duration: .15s;
    animation-duration: .15s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

@-webkit-keyframes dsm-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)
    }

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

@keyframes dsm-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)
    }

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

.dsm-buzz-out {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent
}

.dsm-buzz-out:active,
.dsm-buzz-out:focus,
.dsm-buzz-out:hover {
    -webkit-animation-name: dsm-buzz-out;
    animation-name: dsm-buzz-out;
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1
}

.dsm-forward {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-forward:active,
.dsm-forward:focus,
.dsm-forward:hover {
    -webkit-transform: translateX(8px);
    transform: translateX(8px)
}

.dsm-backward {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-backward:active,
.dsm-backward:focus,
.dsm-backward:hover {
    -webkit-transform: translateX(-8px);
    transform: translateX(-8px)
}

.dsm-fade {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    overflow: hidden;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color
}

.dsm-fade:active,
.dsm-fade:focus,
.dsm-fade:hover {
    background-color: #2098d1;
    color: #fff
}

@-webkit-keyframes dsm-back-pulse {
    50% {
        background-color: rgba(32, 152, 209, .75)
    }
}

@keyframes dsm-back-pulse {
    50% {
        background-color: rgba(32, 152, 209, .75)
    }
}

.dsm-back-pulse {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    overflow: hidden;
    -webkit-transition-duration: .5s;
    transition-duration: .5s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color
}

.dsm-back-pulse:active,
.dsm-back-pulse:focus,
.dsm-back-pulse:hover {
    -webkit-animation-name: dsm-back-pulse;
    animation-name: dsm-back-pulse;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: .5s;
    animation-delay: .5s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    background-color: #2098d1;
    color: #fff
}

.dsm-sweep-to-right {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-sweep-to-right,
.dsm-sweep-to-right:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-sweep-to-right:active,
.dsm-sweep-to-right:focus,
.dsm-sweep-to-right:hover {
    color: #fff
}

.dsm-sweep-to-right:active:before,
.dsm-sweep-to-right:focus:before,
.dsm-sweep-to-right:hover:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
}

.dsm-sweep-to-left {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-sweep-to-left,
.dsm-sweep-to-left:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-sweep-to-left:active,
.dsm-sweep-to-left:focus,
.dsm-sweep-to-left:hover {
    color: #fff
}

.dsm-sweep-to-left:active:before,
.dsm-sweep-to-left:focus:before,
.dsm-sweep-to-left:hover:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
}

.dsm-sweep-to-bottom {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-sweep-to-bottom,
.dsm-sweep-to-bottom:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-sweep-to-bottom:active,
.dsm-sweep-to-bottom:focus,
.dsm-sweep-to-bottom:hover {
    color: #fff
}

.dsm-sweep-to-bottom:active:before,
.dsm-sweep-to-bottom:focus:before,
.dsm-sweep-to-bottom:hover:before {
    -webkit-transform: scaleY(1);
    transform: scaleY(1)
}

.dsm-sweep-to-top {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-sweep-to-top,
.dsm-sweep-to-top:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-sweep-to-top:active,
.dsm-sweep-to-top:focus,
.dsm-sweep-to-top:hover {
    color: #fff
}

.dsm-sweep-to-top:active:before,
.dsm-sweep-to-top:focus:before,
.dsm-sweep-to-top:hover:before {
    -webkit-transform: scaleY(1);
    transform: scaleY(1)
}

.dsm-bounce-to-right {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-bounce-to-right,
.dsm-bounce-to-right:before {
    -webkit-transition-duration: .5s;
    transition-duration: .5s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-bounce-to-right:active,
.dsm-bounce-to-right:focus,
.dsm-bounce-to-right:hover {
    color: #fff
}

.dsm-bounce-to-right:active:before,
.dsm-bounce-to-right:focus:before,
.dsm-bounce-to-right:hover:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transition-timing-function: cubic-bezier(.52, 1.64, .37, .66);
    transition-timing-function: cubic-bezier(.52, 1.64, .37, .66)
}

.dsm-bounce-to-left {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-bounce-to-left,
.dsm-bounce-to-left:before {
    -webkit-transition-duration: .5s;
    transition-duration: .5s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-bounce-to-left:active,
.dsm-bounce-to-left:focus,
.dsm-bounce-to-left:hover {
    color: #fff
}

.dsm-bounce-to-left:active:before,
.dsm-bounce-to-left:focus:before,
.dsm-bounce-to-left:hover:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transition-timing-function: cubic-bezier(.52, 1.64, .37, .66);
    transition-timing-function: cubic-bezier(.52, 1.64, .37, .66)
}

.dsm-bounce-to-bottom {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-bounce-to-bottom,
.dsm-bounce-to-bottom:before {
    -webkit-transition-duration: .5s;
    transition-duration: .5s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-bounce-to-bottom:active,
.dsm-bounce-to-bottom:focus,
.dsm-bounce-to-bottom:hover {
    color: #fff
}

.dsm-bounce-to-bottom:active:before,
.dsm-bounce-to-bottom:focus:before,
.dsm-bounce-to-bottom:hover:before {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transition-timing-function: cubic-bezier(.52, 1.64, .37, .66);
    transition-timing-function: cubic-bezier(.52, 1.64, .37, .66)
}

.dsm-bounce-to-top {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-bounce-to-top,
.dsm-bounce-to-top:before {
    -webkit-transition-duration: .5s;
    transition-duration: .5s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-bounce-to-top:active,
.dsm-bounce-to-top:focus,
.dsm-bounce-to-top:hover {
    color: #fff
}

.dsm-bounce-to-top:active:before,
.dsm-bounce-to-top:focus:before,
.dsm-bounce-to-top:hover:before {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transition-timing-function: cubic-bezier(.52, 1.64, .37, .66);
    transition-timing-function: cubic-bezier(.52, 1.64, .37, .66)
}

.dsm-radial-out {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    overflow: hidden;
    background: #e1e1e1;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-radial-out,
.dsm-radial-out:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-radial-out:active,
.dsm-radial-out:focus,
.dsm-radial-out:hover {
    color: #fff
}

.dsm-radial-out:active:before,
.dsm-radial-out:focus:before,
.dsm-radial-out:hover:before {
    -webkit-transform: scale(2);
    transform: scale(2)
}

.dsm-radial-in {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    overflow: hidden;
    background: #2098d1;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-radial-in,
.dsm-radial-in:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-radial-in:active,
.dsm-radial-in:focus,
.dsm-radial-in:hover {
    color: #fff
}

.dsm-radial-in:active:before,
.dsm-radial-in:focus:before,
.dsm-radial-in:hover:before {
    -webkit-transform: scale(0);
    transform: scale(0)
}

.dsm-rectangle-in {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    background: #2098d1;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-rectangle-in,
.dsm-rectangle-in:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-rectangle-in:active,
.dsm-rectangle-in:focus,
.dsm-rectangle-in:hover {
    color: #fff
}

.dsm-rectangle-in:active:before,
.dsm-rectangle-in:focus:before,
.dsm-rectangle-in:hover:before {
    -webkit-transform: scale(0);
    transform: scale(0)
}

.dsm-rectangle-out {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    background: #e1e1e1;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-rectangle-out,
.dsm-rectangle-out:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-rectangle-out:active,
.dsm-rectangle-out:focus,
.dsm-rectangle-out:hover {
    color: #fff
}

.dsm-rectangle-out:active:before,
.dsm-rectangle-out:focus:before,
.dsm-rectangle-out:hover:before {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.dsm-shutter-in-horizontal {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    background: #2098d1;
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-shutter-in-horizontal:active,
.dsm-shutter-in-horizontal:focus,
.dsm-shutter-in-horizontal:hover {
    color: #fff
}

.dsm-shutter-in-horizontal:active:before,
.dsm-shutter-in-horizontal:focus:before,
.dsm-shutter-in-horizontal:hover:before {
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
}

.dsm-shutter-out-horizontal {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    background: #e1e1e1;
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-shutter-out-horizontal:active,
.dsm-shutter-out-horizontal:focus,
.dsm-shutter-out-horizontal:hover {
    color: #fff
}

.dsm-shutter-out-horizontal:active:before,
.dsm-shutter-out-horizontal:focus:before,
.dsm-shutter-out-horizontal:hover:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
}

.dsm-shutter-in-vertical {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    background: #2098d1;
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-shutter-in-vertical:active,
.dsm-shutter-in-vertical:focus,
.dsm-shutter-in-vertical:hover {
    color: #fff
}

.dsm-shutter-in-vertical:active:before,
.dsm-shutter-in-vertical:focus:before,
.dsm-shutter-in-vertical:hover:before {
    -webkit-transform: scaleY(0);
    transform: scaleY(0)
}

.dsm-shutter-out-vertical {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    background: #e1e1e1;
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-shutter-out-vertical:active,
.dsm-shutter-out-vertical:focus,
.dsm-shutter-out-vertical:hover {
    color: #fff
}

.dsm-shutter-out-vertical:active:before,
.dsm-shutter-out-vertical:focus:before,
.dsm-shutter-out-vertical:hover:before {
    -webkit-transform: scaleY(1);
    transform: scaleY(1)
}

.dsm-border-fade {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: box-shadow;
    transition-property: box-shadow;
    box-shadow: inset 0 0 0 4px #e1e1e1, 0 0 1px transparent
}

.dsm-border-fade:active,
.dsm-border-fade:focus,
.dsm-border-fade:hover {
    box-shadow: inset 0 0 0 4px #2098d1, 0 0 1px transparent
}

.dsm-hollow {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: background;
    transition-property: background;
    box-shadow: inset 0 0 0 4px #e1e1e1, 0 0 1px transparent
}

.dsm-hollow:active,
.dsm-hollow:focus,
.dsm-hollow:hover {
    background: none
}

.dsm-trim {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-trim:before {
    content: "";
    position: absolute;
    border: 4px solid #fff;
    top: 4px;
    left: 4px;
    right: 4px;
    bottom: 4px;
    opacity: 0;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: opacity;
    transition-property: opacity
}

.dsm-trim:active:before,
.dsm-trim:focus:before,
.dsm-trim:hover:before {
    opacity: 1
}

@-webkit-keyframes dsm-ripple-out {
    to {
        top: -12px;
        right: -12px;
        bottom: -12px;
        left: -12px;
        opacity: 0
    }
}

@keyframes dsm-ripple-out {
    to {
        top: -12px;
        right: -12px;
        bottom: -12px;
        left: -12px;
        opacity: 0
    }
}

.dsm-ripple-out {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-ripple-out:before {
    content: "";
    position: absolute;
    border: 6px solid #e1e1e1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-animation-duration: 1s;
    animation-duration: 1s
}

.dsm-ripple-out:active:before,
.dsm-ripple-out:focus:before,
.dsm-ripple-out:hover:before {
    -webkit-animation-name: dsm-ripple-out;
    animation-name: dsm-ripple-out
}

@-webkit-keyframes dsm-ripple-in {
    to {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        opacity: 1
    }
}

@keyframes dsm-ripple-in {
    to {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        opacity: 1
    }
}

.dsm-ripple-in {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-ripple-in:before {
    content: "";
    position: absolute;
    border: 4px solid #e1e1e1;
    top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0;
    -webkit-animation-duration: 1s;
    animation-duration: 1s
}

.dsm-ripple-in:active:before,
.dsm-ripple-in:focus:before,
.dsm-ripple-in:hover:before {
    -webkit-animation-name: dsm-ripple-in;
    animation-name: dsm-ripple-in
}

.dsm-outline-out {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-outline-out:before {
    content: "";
    position: absolute;
    border: 4px solid #e1e1e1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: top, right, bottom, left;
    transition-property: top, right, bottom, left
}

.dsm-outline-out:active:before,
.dsm-outline-out:focus:before,
.dsm-outline-out:hover:before {
    top: -8px;
    right: -8px;
    bottom: -8px;
    left: -8px
}

.dsm-outline-in {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-outline-in:before {
    pointer-events: none;
    content: "";
    position: absolute;
    border: 4px solid #e1e1e1;
    top: -16px;
    right: -16px;
    bottom: -16px;
    left: -16px;
    opacity: 0;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: top, right, bottom, left;
    transition-property: top, right, bottom, left
}

.dsm-outline-in:active:before,
.dsm-outline-in:focus:before,
.dsm-outline-in:hover:before {
    top: -8px;
    right: -8px;
    bottom: -8px;
    left: -8px;
    opacity: 1
}

.dsm-round-corners {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: border-radius;
    transition-property: border-radius
}

.dsm-round-corners:active,
.dsm-round-corners:focus,
.dsm-round-corners:hover {
    border-radius: 1em
}

.dsm-underline-from-left {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    overflow: hidden
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-underline-from-left:active:before,
.dsm-underline-from-left:focus:before,
.dsm-underline-from-left:hover:before {
    right: 0
}

.dsm-underline-from-center {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    overflow: hidden
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-underline-from-center:active:before,
.dsm-underline-from-center:focus:before,
.dsm-underline-from-center:hover:before {
    left: 0;
    right: 0
}

.dsm-underline-from-right {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    overflow: hidden
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-underline-from-right:active:before,
.dsm-underline-from-right:focus:before,
.dsm-underline-from-right:hover:before {
    left: 0
}

.dsm-overline-from-left {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    overflow: hidden
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-overline-from-left:active:before,
.dsm-overline-from-left:focus:before,
.dsm-overline-from-left:hover:before {
    right: 0
}

.dsm-overline-from-center {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    overflow: hidden
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-overline-from-center:active:before,
.dsm-overline-from-center:focus:before,
.dsm-overline-from-center:hover:before {
    left: 0;
    right: 0
}

.dsm-overline-from-right {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    overflow: hidden
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-overline-from-right:active:before,
.dsm-overline-from-right:focus:before,
.dsm-overline-from-right:hover:before {
    left: 0
}

.dsm-reveal {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    overflow: hidden
}

.dsm-reveal:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border: 0 solid #2098d1;
    -webkit-transition-property: border-width;
    transition-property: border-width;
    -webkit-transition-duration: .1s;
    transition-duration: .1s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-reveal:active:before,
.dsm-reveal:focus:before,
.dsm-reveal:hover:before {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    border-width: 4px
}

.dsm-underline-reveal {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    overflow: hidden
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-underline-reveal:active:before,
.dsm-underline-reveal:focus:before,
.dsm-underline-reveal:hover:before {
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.dsm-overline-reveal {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    overflow: hidden
}

.dsm-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: .3s;
    transition-duration: .3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-overline-reveal:active:before,
.dsm-overline-reveal:focus:before,
.dsm-overline-reveal:hover:before {
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.dsm-glow {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: box-shadow;
    transition-property: box-shadow
}

.dsm-glow:active,
.dsm-glow:focus,
.dsm-glow:hover {
    box-shadow: 0 0 8px rgba(0, 0, 0, .6)
}

.dsm-shadow {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: box-shadow;
    transition-property: box-shadow
}

.dsm-shadow:active,
.dsm-shadow:focus,
.dsm-shadow:hover {
    box-shadow: 0 10px 10px -10px rgba(0, 0, 0, .5)
}

.dsm-grow-shadow {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: box-shadow, transform;
    transition-property: box-shadow, transform
}

.dsm-grow-shadow:active,
.dsm-grow-shadow:focus,
.dsm-grow-shadow:hover {
    box-shadow: 0 10px 10px -10px rgba(0, 0, 0, .5);
    -webkit-transform: scale(1.1);
    transform: scale(1.1)
}

.dsm-box-shadow-outset {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: box-shadow;
    transition-property: box-shadow
}

.dsm-box-shadow-outset:active,
.dsm-box-shadow-outset:focus,
.dsm-box-shadow-outset:hover {
    box-shadow: 2px 2px 2px rgba(0, 0, 0, .6)
}

.dsm-box-shadow-inset {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: box-shadow;
    transition-property: box-shadow;
    box-shadow: inset 0 0 0 rgba(0, 0, 0, .6), 0 0 1px transparent
}

.dsm-box-shadow-inset:active,
.dsm-box-shadow-inset:focus,
.dsm-box-shadow-inset:hover {
    box-shadow: inset 2px 2px 2px rgba(0, 0, 0, .6), 0 0 1px transparent
}

.dsm-float-shadow {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-float-shadow,
.dsm-float-shadow:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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, .35) 0, transparent 80%);
    background: radial-gradient(ellipse at center, rgba(0, 0, 0, .35) 0, transparent 80%);
    -webkit-transition-property: transform, opacity;
    transition-property: transform, opacity
}

.dsm-float-shadow:active,
.dsm-float-shadow:focus,
.dsm-float-shadow:hover {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px)
}

.dsm-float-shadow:active:before,
.dsm-float-shadow:focus:before,
.dsm-float-shadow:hover:before {
    opacity: 1;
    -webkit-transform: translateY(5px);
    transform: translateY(5px)
}

.dsm-shadow-radial {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-shadow-radial:after,
.dsm-shadow-radial:before {
    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: .3s;
    transition-duration: .3s;
    -webkit-transition-property: opacity;
    transition-property: opacity
}

.dsm-shadow-radial:before {
    bottom: 100%;
    background: -webkit-radial-gradient(50% 150%, ellipse, rgba(0, 0, 0, .6) 0, transparent 80%);
    background: radial-gradient(ellipse at 50% 150%, rgba(0, 0, 0, .6) 0, transparent 80%)
}

.dsm-shadow-radial:after {
    top: 100%;
    background: -webkit-radial-gradient(50% -50%, ellipse, rgba(0, 0, 0, .6) 0, transparent 80%);
    background: radial-gradient(ellipse at 50% -50%, rgba(0, 0, 0, .6) 0, transparent 80%)
}

.dsm-shadow-radial:active:after,
.dsm-shadow-radial:active:before,
.dsm-shadow-radial:focus:after,
.dsm-shadow-radial:focus:before,
.dsm-shadow-radial:hover:after,
.dsm-shadow-radial:hover:before {
    opacity: 1
}

.dsm-bubble-top {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-bubble-top:before {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    content: "";
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform;
    left: calc(50% - 10px);
    top: 0;
    border-color: transparent transparent #e1e1e1;
    border-style: solid;
    border-width: 0 10px 10px
}

.dsm-bubble-top:active:before,
.dsm-bubble-top:focus:before,
.dsm-bubble-top:hover:before {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px)
}

.dsm-bubble-right {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-bubble-right:before {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    content: "";
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform;
    top: calc(50% - 10px);
    right: 0;
    border-color: transparent transparent transparent #e1e1e1;
    border-style: solid;
    border-width: 10px 0 10px 10px
}

.dsm-bubble-right:active:before,
.dsm-bubble-right:focus:before,
.dsm-bubble-right:hover:before {
    -webkit-transform: translateX(10px);
    transform: translateX(10px)
}

.dsm-bubble-bottom {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-bubble-bottom:before {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    content: "";
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform;
    left: calc(50% - 10px);
    bottom: 0;
    border-color: #e1e1e1 transparent transparent;
    border-style: solid;
    border-width: 10px 10px 0
}

.dsm-bubble-bottom:active:before,
.dsm-bubble-bottom:focus:before,
.dsm-bubble-bottom:hover:before {
    -webkit-transform: translateY(10px);
    transform: translateY(10px)
}

.dsm-bubble-left {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-bubble-left:before {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    content: "";
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform;
    top: calc(50% - 10px);
    left: 0;
    border-color: transparent #e1e1e1 transparent transparent;
    border-style: solid;
    border-width: 10px 10px 10px 0
}

.dsm-bubble-left:active:before,
.dsm-bubble-left:focus:before,
.dsm-bubble-left:hover:before {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px)
}

.dsm-bubble-float-top {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-bubble-float-top,
.dsm-bubble-float-top:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-bubble-float-top:before {
    position: absolute;
    z-index: -1;
    content: "";
    left: calc(50% - 10px);
    top: 0;
    border-color: transparent transparent #e1e1e1;
    border-style: solid;
    border-width: 0 10px 10px
}

.dsm-bubble-float-top:active,
.dsm-bubble-float-top:focus,
.dsm-bubble-float-top:hover {
    -webkit-transform: translateY(10px);
    transform: translateY(10px)
}

.dsm-bubble-float-top:active:before,
.dsm-bubble-float-top:focus:before,
.dsm-bubble-float-top:hover:before {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px)
}

.dsm-bubble-float-right {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-bubble-float-right,
.dsm-bubble-float-right:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-bubble-float-right:before {
    position: absolute;
    z-index: -1;
    top: calc(50% - 10px);
    right: 0;
    content: "";
    border-color: transparent transparent transparent #e1e1e1;
    border-style: solid;
    border-width: 10px 0 10px 10px
}

.dsm-bubble-float-right:active,
.dsm-bubble-float-right:focus,
.dsm-bubble-float-right:hover {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px)
}

.dsm-bubble-float-right:active:before,
.dsm-bubble-float-right:focus:before,
.dsm-bubble-float-right:hover:before {
    -webkit-transform: translateX(10px);
    transform: translateX(10px)
}

.dsm-bubble-float-bottom {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-bubble-float-bottom,
.dsm-bubble-float-bottom:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-bubble-float-bottom:before {
    position: absolute;
    z-index: -1;
    content: "";
    left: calc(50% - 10px);
    bottom: 0;
    border-color: #e1e1e1 transparent transparent;
    border-style: solid;
    border-width: 10px 10px 0
}

.dsm-bubble-float-bottom:active,
.dsm-bubble-float-bottom:focus,
.dsm-bubble-float-bottom:hover {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px)
}

.dsm-bubble-float-bottom:active:before,
.dsm-bubble-float-bottom:focus:before,
.dsm-bubble-float-bottom:hover:before {
    -webkit-transform: translateY(10px);
    transform: translateY(10px)
}

.dsm-bubble-float-left {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-bubble-float-left,
.dsm-bubble-float-left:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: transform;
    transition-property: transform
}

.dsm-bubble-float-left:before {
    position: absolute;
    z-index: -1;
    content: "";
    top: calc(50% - 10px);
    left: 0;
    border-color: transparent #e1e1e1 transparent transparent;
    border-style: solid;
    border-width: 10px 10px 10px 0
}

.dsm-bubble-float-left:active,
.dsm-bubble-float-left:focus,
.dsm-bubble-float-left:hover {
    -webkit-transform: translateX(10px);
    transform: translateX(10px)
}

.dsm-bubble-float-left:active:before,
.dsm-bubble-float-left:focus:before,
.dsm-bubble-float-left:hover:before {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px)
}

.dsm-icon-back {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-left: 2.2em
}

.dsm-icon-back,
.dsm-icon-back:before,
.dsm-icon-back:after {
    -webkit-transition-duration: .1s;
    transition-duration: .1s
}

.dsm-icon-back:before,
.dsm-icon-back:after {
    position: absolute;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-back:active:before,
.dsm-icon-back:focus:before,
.dsm-icon-back:hover:before,
.dsm-icon-back:active:after,
.dsm-icon-back:focus:after,
.dsm-icon-back:hover:after {
    -webkit-transform: translateX(-4px);
    transform: translateX(-4px)
}

.dsm-icon-forward {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-forward,
.dsm-icon-forward:before,
.dsm-icon-forward:after {
    -webkit-transition-duration: .1s;
    transition-duration: .1s
}

.dsm-icon-forward:before,
.dsm-icon-forward:after {
    position: absolute;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-forward:active:before,
.dsm-icon-forward:focus:before,
.dsm-icon-forward:hover:before,
.dsm-icon-forward:active:after,
.dsm-icon-forward:focus:after,
.dsm-icon-forward:hover:after {
    -webkit-transform: translateX(4px);
    transform: translateX(4px)
}

@-webkit-keyframes dsm-icon-down {

    0%,
    50%,
    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

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

@keyframes dsm-icon-down {

    0%,
    50%,
    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

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

.dsm-icon-down {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-down:before,
.dsm-icon-down:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.dsm-icon-down:active:before,
.dsm-icon-down:focus:before,
.dsm-icon-down:hover:before,
.dsm-icon-down:active:after,
.dsm-icon-down:focus:after,
.dsm-icon-down:hover:after {
    -webkit-animation-name: dsm-icon-down;
    animation-name: dsm-icon-down;
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes dsm-icon-up {

    0%,
    50%,
    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

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

@keyframes dsm-icon-up {

    0%,
    50%,
    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

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

.dsm-icon-up {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-up:before,
.dsm-icon-up:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.dsm-icon-up:active:before,
.dsm-icon-up:focus:before,
.dsm-icon-up:hover:before,
.dsm-icon-up:active:after,
.dsm-icon-up:focus:after,
.dsm-icon-up:hover:after {
    -webkit-animation-name: dsm-icon-up;
    animation-name: dsm-icon-up;
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

.dsm-icon-spin {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-spin:before,
.dsm-icon-spin:after {
    -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
}

.dsm-icon-spin:active:before,
.dsm-icon-spin:focus:before,
.dsm-icon-spin:hover:before,
.dsm-icon-spin:active:after,
.dsm-icon-spin:focus:after,
.dsm-icon-spin:hover:after {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn)
}

@-webkit-keyframes dsm-icon-drop {
    0% {
        opacity: 0
    }

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

    51%,
    to {
        opacity: 1
    }
}

@keyframes dsm-icon-drop {
    0% {
        opacity: 0
    }

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

    51%,
    to {
        opacity: 1
    }
}

.dsm-icon-drop {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-drop:before,
.dsm-icon-drop:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.dsm-icon-drop:active:before,
.dsm-icon-drop:focus:before,
.dsm-icon-drop:hover:before,
.dsm-icon-drop:active:after,
.dsm-icon-drop:focus:after,
.dsm-icon-drop:hover:after {
    opacity: 0;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-animation-name: dsm-icon-drop;
    animation-name: dsm-icon-drop;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-delay: .3s;
    animation-delay: .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(.52, 1.64, .37, .66);
    animation-timing-function: cubic-bezier(.52, 1.64, .37, .66)
}

.dsm-icon-fade {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-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: .5s;
    transition-duration: .5s;
    -webkit-transition-property: color;
    transition-property: color
}

.dsm-icon-fade:active:before,
.dsm-icon-fade:focus:before,
.dsm-icon-fade:hover:before {
    color: #0f9e5e
}

@-webkit-keyframes dsm-icon-float-away {
    0% {
        opacity: 1
    }

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

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

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

.dsm-icon-float-away {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-float-away:after,
.dsm-icon-float-away:before {
}

.dsm-icon-float-away:before,
.dsm-icon-float-away:after {
    opacity: 0;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}
.dsm-icon-float-away:active:before,
.dsm-icon-float-away:focus:before,
.dsm-icon-float-away:hover:before,
.dsm-icon-float-away:active:after,
.dsm-icon-float-away:focus:after,
.dsm-icon-float-away:hover:after {
    -webkit-animation-name: dsm-icon-float-away;
    animation-name: dsm-icon-float-away;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes dsm-icon-sink-away {
    0% {
        opacity: 1
    }

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

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

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

.dsm-icon-sink-away {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-sink-away:after,
.dsm-icon-sink-away:before {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}
.dsm-icon-sink-away:before,
.dsm-icon-sink-away:after {
    opacity: 0;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.dsm-icon-sink-away:active:before,
.dsm-icon-sink-away:focus:before,
.dsm-icon-sink-away:hover:before,
.dsm-icon-sink-away:active:after,
.dsm-icon-sink-away:focus:after,
.dsm-icon-sink-away:hover:after {
    -webkit-animation-name: dsm-icon-sink-away;
    animation-name: dsm-icon-sink-away;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

.dsm-icon-grow {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-grow,
.dsm-icon-grow:before,
.dsm-icon-grow:after {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-grow:before,
.dsm-icon-grow:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-grow:active:before,
.dsm-icon-grow:focus:before,
.dsm-icon-grow:hover:before,
.dsm-icon-grow:active:after,
.dsm-icon-grow:focus:after,
.dsm-icon-grow:hover:after {
    -webkit-transform: scale(1.3) translateZ(0);
    transform: scale(1.3) translateZ(0)
}

.dsm-icon-shrink {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-shrink,
.dsm-icon-shrink:before,
.dsm-icon-shrink:after {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-shrink:before,
.dsm-icon-shrink:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-shrink:active:before,
.dsm-icon-shrink:focus:before,
.dsm-icon-shrink:hover:before,
.dsm-icon-shrink:active:after,
.dsm-icon-shrink:focus:after,
.dsm-icon-shrink:hover:after {
    -webkit-transform: scale(.8);
    transform: scale(.8)
}

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

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

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

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

.dsm-icon-pulse {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-pulse:before,
.dsm-icon-pulse:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-pulse:active:before,
.dsm-icon-pulse:focus:before,
.dsm-icon-pulse:hover:before,
.dsm-icon-pulse:active:after,
.dsm-icon-pulse:focus:after,
.dsm-icon-pulse:hover:after {
    -webkit-animation-name: dsm-icon-pulse;
    animation-name: dsm-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
}

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

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

.dsm-icon-pulse-grow {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
}

.dsm-icon-pulse-grow:before,
.dsm-icon-pulse-grow:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-pulse-grow:active:before,
.dsm-icon-pulse-grow:focus:before,
.dsm-icon-pulse-grow:hover:before,
.dsm-icon-pulse-grow:active:after,
.dsm-icon-pulse-grow:focus:after,
.dsm-icon-pulse-grow:hover:after {
    -webkit-animation-name: dsm-icon-pulse-grow;
    animation-name: dsm-icon-pulse-grow;
    -webkit-animation-duration: .3s;
    animation-duration: .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
}

@-webkit-keyframes dsm-icon-pulse-shrink {
    to {
        -webkit-transform: scale(.8);
        transform: scale(.8)
    }
}

@keyframes dsm-icon-pulse-shrink {
    to {
        -webkit-transform: scale(.8);
        transform: scale(.8)
    }
}

.dsm-icon-pulse-shrink {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-pulse-shrink:before,
.dsm-icon-pulse-shrink:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-pulse-shrink:active:before,
.dsm-icon-pulse-shrink:focus:before,
.dsm-icon-pulse-shrink:hover:before,
.dsm-icon-pulse-shrink:active:after,
.dsm-icon-pulse-shrink:focus:after,
.dsm-icon-pulse-shrink:hover:after {
    -webkit-animation-name: dsm-icon-pulse-shrink;
    animation-name: dsm-icon-pulse-shrink;
    -webkit-animation-duration: .3s;
    animation-duration: .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
}

@-webkit-keyframes dsm-icon-push {
    50% {
        -webkit-transform: scale(.5);
        transform: scale(.5)
    }
}

@keyframes dsm-icon-push {
    50% {
        -webkit-transform: scale(.5);
        transform: scale(.5)
    }
}

.dsm-icon-push {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-push,
.dsm-icon-push:before,
.dsm-icon-push:after {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-push:before,
.dsm-icon-push:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-push:active:before,
.dsm-icon-push:focus:before,
.dsm-icon-push:hover:before,
.dsm-icon-push:active:after,
.dsm-icon-push:focus:after,
.dsm-icon-push:hover:after {
    -webkit-animation-name: dsm-icon-push;
    animation-name: dsm-icon-push;
    -webkit-animation-duration: .3s;
    animation-duration: .3s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1
}

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

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

.dsm-icon-pop {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
}

.dsm-icon-pop,
.dsm-icon-pop:before,
.dsm-icon-pop:after {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-pop:before,
.dsm-icon-pop:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-pop:active:before,
.dsm-icon-pop:focus:before,
.dsm-icon-pop:hover:before,
.dsm-icon-pop:active:after,
.dsm-icon-pop:focus:after,
.dsm-icon-pop:hover:after {
    -webkit-animation-name: dsm-icon-pop;
    animation-name: dsm-icon-pop;
    -webkit-animation-duration: .3s;
    animation-duration: .3s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1
}

.dsm-icon-bounce {
    display: inline-block;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-bounce,
.dsm-icon-bounce:before,
.dsm-icon-bounce:after {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-bounce:before,
.dsm-icon-bounce:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-bounce:active:before,
.dsm-icon-bounce:focus:before,
.dsm-icon-bounce:hover:before,
.dsm-icon-bounce:active:after,
.dsm-icon-bounce:focus:after,
.dsm-icon-bounce:hover:after {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
    -webkit-transition-timing-function: cubic-bezier(.47, 2.02, .31, -.36);
    transition-timing-function: cubic-bezier(.47, 2.02, .31, -.36)
}

.dsm-icon-rotate {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-rotate,
.dsm-icon-rotate:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-rotate:before {
    content: "\f0c6";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-rotate:active:before,
.dsm-icon-rotate:focus:before,
.dsm-icon-rotate:hover:before {
    -webkit-transform: rotate(20deg);
    transform: rotate(20deg)
}

.dsm-icon-grow-rotate {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-grow-rotate,
.dsm-icon-grow-rotate:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-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-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-grow-rotate:active:before,
.dsm-icon-grow-rotate:focus:before,
.dsm-icon-grow-rotate:hover:before {
    -webkit-transform: scale(1.5) rotate(12deg);
    transform: scale(1.5) rotate(12deg)
}

.dsm-icon-float {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-float,
.dsm-icon-float:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-float:before {
    content: "\f01b";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-float:active:before,
.dsm-icon-float:focus:before,
.dsm-icon-float:hover:before {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px)
}

.dsm-icon-sink {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em
}

.dsm-icon-sink,
.dsm-icon-sink:before {
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-sink:before {
    content: "\f01a";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.dsm-icon-sink:active:before,
.dsm-icon-sink:focus:before,
.dsm-icon-sink:hover:before {
    -webkit-transform: translateY(4px);
    transform: translateY(4px)
}

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

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

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

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

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

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

@-webkit-keyframes dsm-icon-bob-float {
    to {
        -webkit-transform: translateY(-6px);
        transform: translateY(-6px)
    }
}

@keyframes dsm-icon-bob-float {
    to {
        -webkit-transform: translateY(-6px);
        transform: translateY(-6px)
    }
}

.dsm-icon-bob {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-bob:before {
    content: "\f077";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.dsm-icon-bob:active:before,
.dsm-icon-bob:focus:before,
.dsm-icon-bob:hover:before {
    -webkit-animation-name: dsm-icon-bob-float, dsm-icon-bob;
    animation-name: dsm-icon-bob-float, dsm-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
}

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

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

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

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

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

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

@-webkit-keyframes dsm-icon-hang-sink {
    to {
        -webkit-transform: translateY(6px);
        transform: translateY(6px)
    }
}

@keyframes dsm-icon-hang-sink {
    to {
        -webkit-transform: translateY(6px);
        transform: translateY(6px)
    }
}

.dsm-icon-hang {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-hang:before {
    content: "\f078";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.dsm-icon-hang:active:before,
.dsm-icon-hang:focus:before,
.dsm-icon-hang:hover:before {
    -webkit-animation-name: dsm-icon-hang-sink, dsm-icon-hang;
    animation-name: dsm-icon-hang-sink, dsm-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
}

@-webkit-keyframes dsm-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)
    }

    to {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes dsm-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)
    }

    to {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.dsm-icon-wobble-horizontal {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-wobble-horizontal:before {
    content: "\f061";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.dsm-icon-wobble-horizontal:active:before,
.dsm-icon-wobble-horizontal:focus:before,
.dsm-icon-wobble-horizontal:hover:before {
    -webkit-animation-name: dsm-icon-wobble-horizontal;
    animation-name: dsm-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
}

@-webkit-keyframes dsm-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)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes dsm-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)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.dsm-icon-wobble-vertical {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-wobble-vertical:before {
    content: "\f062";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.dsm-icon-wobble-vertical:active:before,
.dsm-icon-wobble-vertical:focus:before,
.dsm-icon-wobble-vertical:hover:before {
    -webkit-animation-name: dsm-icon-wobble-vertical;
    animation-name: dsm-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
}

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

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

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

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

.dsm-icon-buzz {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-buzz:before {
    content: "\f017";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.dsm-icon-buzz:active:before,
.dsm-icon-buzz:focus:before,
.dsm-icon-buzz:hover:before {
    -webkit-animation-name: dsm-icon-buzz;
    animation-name: dsm-icon-buzz;
    -webkit-animation-duration: .15s;
    animation-duration: .15s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

@-webkit-keyframes dsm-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)
    }

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

@keyframes dsm-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)
    }

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

.dsm-icon-buzz-out {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative;
    padding-right: 2.2em;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
}

.dsm-icon-buzz-out:before {
    content: "\f023";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.dsm-icon-buzz-out:active:before,
.dsm-icon-buzz-out:focus:before,
.dsm-icon-buzz-out:hover:before {
    -webkit-animation-name: dsm-icon-buzz-out;
    animation-name: dsm-icon-buzz-out;
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1
}

.dsm-curl-top-left {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-curl-top-left:before {
    pointer-events: none;
    position: absolute;
    content: "";
    height: 0;
    width: 0;
    top: 0;
    left: 0;
    background: #fff;
    background: linear-gradient(135deg, #fff 45%, #aaa 50%, #ccc 56%, #fff 80%);
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr="#ffffff", endColorstr="#000000");
    z-index: 1000;
    box-shadow: 1px 1px 1px rgba(0, 0, 0, .4);
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: width, height;
    transition-property: width, height
}

.dsm-curl-top-left:active:before,
.dsm-curl-top-left:focus:before,
.dsm-curl-top-left:hover:before {
    width: 25px;
    height: 25px
}

.dsm-curl-top-right {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-curl-top-right:before {
    pointer-events: none;
    position: absolute;
    content: "";
    height: 0;
    width: 0;
    top: 0;
    right: 0;
    background: #fff;
    background: linear-gradient(225deg, #fff 45%, #aaa 50%, #ccc 56%, #fff 80%);
    box-shadow: -1px 1px 1px rgba(0, 0, 0, .4);
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: width, height;
    transition-property: width, height
}

.dsm-curl-top-right:active:before,
.dsm-curl-top-right:focus:before,
.dsm-curl-top-right:hover:before {
    width: 25px;
    height: 25px
}

.dsm-curl-bottom-right {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-curl-bottom-right:before {
    pointer-events: none;
    position: absolute;
    content: "";
    height: 0;
    width: 0;
    bottom: 0;
    right: 0;
    background: #fff;
    background: linear-gradient(315deg, #fff 45%, #aaa 50%, #ccc 56%, #fff 80%);
    box-shadow: -1px -1px 1px rgba(0, 0, 0, .4);
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: width, height;
    transition-property: width, height
}

.dsm-curl-bottom-right:active:before,
.dsm-curl-bottom-right:focus:before,
.dsm-curl-bottom-right:hover:before {
    width: 25px;
    height: 25px
}

.dsm-curl-bottom-left {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    position: relative
}

.dsm-curl-bottom-left:before {
    pointer-events: none;
    position: absolute;
    content: "";
    height: 0;
    width: 0;
    bottom: 0;
    left: 0;
    background: #fff;
    background: linear-gradient(45deg, #fff 45%, #aaa 50%, #ccc 56%, #fff 80%);
    box-shadow: 1px -1px 1px rgba(0, 0, 0, .4);
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-property: width, height;
    transition-property: width, height
}

.dsm-curl-bottom-left:active:before,
.dsm-curl-bottom-left:focus:before,
.dsm-curl-bottom-left:hover:before {
    width: 25px;
    height: 25px
}
.dsm_floating_multi_images {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    will-change: opacity, transform;
}

.dsm_floating_multi_images_container {
    height: 360px;
}

.et-db #et-boc .et_pb_module.dsm_floating_multi_images_child,
.et-db #et-boc .dsm_floating_multi_images_child.et_pb_module,.et-db #et-boc .et-l #et-fb-app .dsm_floating_multi_images_child.et_pb_module {
    position: absolute;
}

.dsm_floating_multi_images_child {
    position: absolute;
    display: inline-block;
    line-height: 0;
    top: 0;
    left: 0;
    margin: 0;
    will-change: transform;
    transition: .3s;
    animation: dsm-float-up-down 5000ms alternate infinite ease-in-out;
}
.dsm_floating_multi_images_child a {
    line-height: 0;
    display: inline-block;
}
.dsm_floating_multi_images_child img {
    border-style: solid;
    border-color: #333333;
}

.et_pb_module.dsm_floating_multi_images_child,
.et-db #et-boc .et-l .et_pb_module.dsm_floating_multi_images_child {
    max-width: 50%;
    animation-duration: 5000ms;
}
.dsm_floating_multi_images_child:nth-child(1),
.et-db #et-boc .et-l .et_pb_module.dsm_floating_multi_images_child:nth-child(1) {
    animation-delay: -3000ms;
}

.dsm_floating_multi_images_child:nth-child(2),
.et-db #et-boc .et-l .et_pb_module.dsm_floating_multi_images_child:nth-child(2) {
    animation-delay: -5000ms;
}

.dsm_floating_multi_images_child:nth-child(3),
.et-db #et-boc .et-l .et_pb_module.dsm_floating_multi_images_child:nth-child(3) {
    animation-delay: -7000ms;
}

.dsm_floating_multi_images_child:nth-child(4),
.et-db #et-boc .et-l .et_pb_module.dsm_floating_multi_images_child:nth-child(4) {
    animation-delay: -9000ms;
}

.dsm_floating_multi_images_child:nth-child(5),
.et-db #et-boc .et-l .et_pb_module.dsm_floating_multi_images_child:nth-child(5) {
    animation-delay: -11000ms;
}

.dsm_floating_multi_images_child:nth-child(6),
.et-db #et-boc .et-l .et_pb_module.dsm_floating_multi_images_child:nth-child(6) {
    animation-delay: -13000ms;
}

.dsm_floating_multi_images_child:nth-child(7),
.et-db #et-boc .et-l .et_pb_module.dsm_floating_multi_images_child:nth-child(7) {
    animation-delay: -15000ms;
}

.dsm_floating_multi_images_child:nth-child(8),
.et-db #et-boc .et-l .et_pb_module.dsm_floating_multi_images_child:nth-child(8) {
    animation-delay: -17000ms;
}

.dsm_floating_multi_images_child:nth-child(9),
.et-db #et-boc .et-l .et_pb_module.dsm_floating_multi_images_child:nth-child(9) {
    animation-delay: -19000ms;
}

.dsm_floating_multi_images_child:nth-child(10),
.et-db #et-boc .et-l .et_pb_module.dsm_floating_multi_images_child:nth-child(10) {
    animation-delay: -21000ms;
}

@-webkit-keyframes dsm-float-up-down {
    0% {
        transform: translatey(0);
        -webkit-transform: translatey(0);
        -moz-transform: translatey(0);
        -ms-transform: translatey(0);
        -o-transform: translatey(0)
    }
    50% {
        transform: translatey(-20px);
        -webkit-transform: translatey(-20px);
        -moz-transform: translatey(-20px);
        -ms-transform: translatey(-20px);
        -o-transform: translatey(-20px)
    }
    100% {
        transform: translatey(0);
        -webkit-transform: translatey(0);
        -moz-transform: translatey(0);
        -ms-transform: translatey(0);
        -o-transform: translatey(0)
    }
}

@keyframes dsm-float-up-down {
    0% {
        transform: translatey(0);
        -webkit-transform: translatey(0);
        -moz-transform: translatey(0);
        -ms-transform: translatey(0);
        -o-transform: translatey(0)
    }
    50% {
        transform: translatey(-20px);
        -webkit-transform: translatey(-20px);
        -moz-transform: translatey(-20px);
        -ms-transform: translatey(-20px);
        -o-transform: translatey(-20px)
    }
    100% {
        transform: translatey(0);
        -webkit-transform: translatey(0);
        -moz-transform: translatey(0);
        -ms-transform: translatey(0);
        -o-transform: translatey(0)
    }
}

@-webkit-keyframes dsm-float-left-right {
    0% {
        transform: translatex(0);
        -webkit-transform: translatex(0);
        -moz-transform: translatex(0);
        -ms-transform: translatex(0);
        -o-transform: translatex(0)
    }
    50% {
        transform: translatex(-20px);
        -webkit-transform: translatex(-20px);
        -moz-transform: translatex(-20px);
        -ms-transform: translatex(-20px);
        -o-transform: translatex(-20px)
    }
    100% {
        transform: translatex(0);
        -webkit-transform: translatex(0);
        -moz-transform: translatex(0);
        -ms-transform: translatex(0);
        -o-transform: translatex(0)
    }
}

@keyframes dsm-float-left-right {
    0% {
        transform: translatex(0);
        -webkit-transform: translatex(0);
        -moz-transform: translatex(0);
        -ms-transform: translatex(0);
        -o-transform: translatex(0)
    }
    50% {
        transform: translatex(-20px);
        -webkit-transform: translatex(-20px);
        -moz-transform: translatex(-20px);
        -ms-transform: translatex(-20px);
        -o-transform: translatex(-20px)
    }
    100% {
        transform: translatex(0);
        -webkit-transform: translatex(0);
        -moz-transform: translatex(0);
        -ms-transform: translatex(0);
        -o-transform: translatex(0)
    }
}
/*fix CPT*/
.et-db #et-boc .et-l .dsm_image_accordion_child>.et_pb_module_inner {
    position: absolute;
}

/*New divi icon update*/
.dsm_image_accordion_child .et_pb_button[data-icon]:not([data-icon=""]):after {
    content: attr(data-icon);
}

.dsm_image_accordion_wrapper {
    width: 100%;
    position: relative;
    height: 380px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.dsm_image_accordion_child {
    position: relative;
    flex: 1 0 auto;
    text-align: center;
    text-decoration: none;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: all .3s ease-in-out;
    margin-bottom: 0 !important;
    overflow: hidden;
    transition-duration: 480ms;
}

.dsm_image_accordion_child:not(.et-animated--vb)>div:before,
.dsm_image_accordion_child_content_vb:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    transition: all .3s ease-in-out;
}

.dsm_image_accordion_child_image_vb {
    position: absolute;
    height: 100%;
    width: 100%;
    flex: 1 0 auto;
    text-align: center;
    text-decoration: none;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: all .3s ease-in-out;
    margin-bottom: 0 !important;
    overflow: hidden;
    transition-duration: 480ms;
}

.dsm_image_accordion_click_item .dsm_image_accordion_child {
    cursor: pointer;
}

.dsm_image_accordion_child.dsm_image_accordion_active_item {
    flex: 5 0 auto;
}

.dsm_image_accordion_child_content {
    z-index: 0;
}

.dsm_image_accordion_active_item .dsm_image_accordion_child_content {
    z-index: 1;
}

.dsm_image_accordion_active_item .dsm_image_accordion_overylay_content {
    z-index: 0;
}

.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child .dsm_image_accordion_child_content {
    opacity: 0;
    position: relative;
    transition-duration: 380ms;
    transition-property: all;
}

.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_child_content {
    opacity: 1;
    transition-duration: 300ms;
    transition-delay: 380ms;
    transition-property: all;
}

.dsm_image_accordion_animation_fade_in.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child .dsm_image_accordion_child_content {
    opacity: 0;
}

.dsm_image_accordion_animation_fade_in.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_child_content {
    opacity: 1;
}

.dsm_image_accordion_animation_zoom_in.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child .dsm_image_accordion_child_content {
    opacity: 0;
    transform: scale(0.5);
}

.dsm_image_accordion_animation_zoom_in.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_child_content {
    opacity: 1;
    transform: scale(1);
}

.dsm_image_accordion_animation_push_up.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child .dsm_image_accordion_child_content {
    opacity: 0;
    transform: translateY(18%);
}

.dsm_image_accordion_animation_push_up.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_child_content {
    opacity: 1;
    transform: translateY(0);
}

.dsm_image_accordion_animation_push_right.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child .dsm_image_accordion_child_content {
    opacity: 0;
    transform: translateX(-18%);
}

.dsm_image_accordion_animation_push_right.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_child_content {
    opacity: 1;
    transform: translateY(0);
}

.dsm_image_accordion_animation_push_down.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child .dsm_image_accordion_child_content {
    opacity: 0;
    transform: translateY(-18%);
}

.dsm_image_accordion_animation_push_down.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_child_content {
    opacity: 1;
    transform: translateY(0);
}

.dsm_image_accordion_animation_push_left.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child .dsm_image_accordion_child_content {
    opacity: 0;
    transform: translateX(18%);
}

.dsm_image_accordion_animation_push_left.dsm_image_accordion_animation_sequence_off .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_child_content {
    opacity: 1;
    transform: translateY(0);
}

/*Sequence On*/
.dsm_image_accordion_image_icon_wrapper,
.dsm_image_accordion_title,
.dsm_image_accordion_description,
.dsm_image_accordion_button_wrapper {
    transition: all .3s ease-in-out;
}

.dsm_image_accordion_animation_fade_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_image_icon_wrapper {
    opacity: 0;
}

.dsm_image_accordion_animation_fade_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_image_icon_wrapper {
    opacity: 1;
    transition-delay: .2s;
}

.dsm_image_accordion_animation_fade_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_title {
    opacity: 0;
}

.dsm_image_accordion_animation_fade_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_title {
    opacity: 1;
    transition-delay: .4s;
}

.dsm_image_accordion_animation_fade_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_description {
    opacity: 0;
}

.dsm_image_accordion_animation_fade_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_description {
    opacity: 1;
    transition-delay: .6s;
}

.dsm_image_accordion_animation_fade_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_button_wrapper {
    opacity: 0;
}

.dsm_image_accordion_animation_fade_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_button_wrapper {
    opacity: 1;
    transition-delay: .8s;
}

/*Zoom In*/
.dsm_image_accordion_animation_zoom_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_image_icon_wrapper {

    opacity: 0;
    transform: scale(0.5);
}

.dsm_image_accordion_animation_zoom_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_image_icon_wrapper {
    transition-delay: .2s;
    opacity: 1;
    transform: scale(1);
}

.dsm_image_accordion_animation_zoom_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_title {

    opacity: 0;
    transform: scale(0.5);
}

.dsm_image_accordion_animation_zoom_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_title {
    transition-delay: .4s;
    opacity: 1;
    transform: scale(1);
}

.dsm_image_accordion_animation_zoom_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_description {

    opacity: 0;
    transform: scale(0.5);
}

.dsm_image_accordion_animation_zoom_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_description {
    transition-delay: .6s;
    opacity: 1;
    transform: scale(1);
}

.dsm_image_accordion_animation_zoom_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_button_wrapper {

    opacity: 0;
    transform: scale(0.5);
}

.dsm_image_accordion_animation_zoom_in.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_button_wrapper {
    transition-delay: .8s;
    opacity: 1;
    transform: scale(1);
}

/*Push Up*/
.dsm_image_accordion_animation_push_up.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_image_icon_wrapper {
    opacity: 0;
    transform: translateY(18%);
}

.dsm_image_accordion_animation_push_up.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_image_icon_wrapper {
    opacity: 1;
    transform: translateY(0);
    transition-delay: .2s;
}

.dsm_image_accordion_animation_push_up.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_title {
    opacity: 0;
    transform: translateY(18%);
}

.dsm_image_accordion_animation_push_up.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_title {
    opacity: 1;
    transform: translateY(0);
    transition-delay: .4s;
}

.dsm_image_accordion_animation_push_up.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_description {
    opacity: 0;
    transform: translateY(18%);
}

.dsm_image_accordion_animation_push_up.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_description {
    opacity: 1;
    transform: translateY(0);
    transition-delay: .6s;
}

.dsm_image_accordion_animation_push_up.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_button_wrapper {
    opacity: 0;
    transform: translateY(18%);
}

.dsm_image_accordion_animation_push_up.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_button_wrapper {
    opacity: 1;
    transform: translateY(0);
    transition-delay: .8s;
}

/*Push Right*/
.dsm_image_accordion_animation_push_right.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_image_icon_wrapper {
    opacity: 0;
    transform: translateX(-18%);
}

.dsm_image_accordion_animation_push_right.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_image_icon_wrapper {
    opacity: 1;
    transform: translateX(0);
    transition-delay: .2s;
}

.dsm_image_accordion_animation_push_right.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_title {
    opacity: 0;
    transform: translateX(-18%);
}

.dsm_image_accordion_animation_push_right.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_title {
    opacity: 1;
    transform: translateX(0);
    transition-delay: .4s;
}

.dsm_image_accordion_animation_push_right.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_description {
    opacity: 0;
    transform: translateX(-18%);
}

.dsm_image_accordion_animation_push_right.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_description {
    opacity: 1;
    transform: translateX(0);
    transition-delay: .6s;
}

.dsm_image_accordion_animation_push_right.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_button_wrapper {
    opacity: 0;
    transform: translateX(-18%);
}

.dsm_image_accordion_animation_push_right.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_button_wrapper {
    opacity: 1;
    transform: translateX(0);
    transition-delay: .8s;
}

/*Push Down*/
.dsm_image_accordion_animation_push_down.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_image_icon_wrapper {
    opacity: 0;
    transform: translateY(-18%);
}

.dsm_image_accordion_animation_push_down.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_image_icon_wrapper {
    opacity: 1;
    transform: translateY(0);
    transition-delay: .2s;
}

.dsm_image_accordion_animation_push_down.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_title {
    opacity: 0;
    transform: translateY(-18%);
}

.dsm_image_accordion_animation_push_down.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_title {
    opacity: 1;
    transform: translateY(0);
    transition-delay: .4s;
}

.dsm_image_accordion_animation_push_down.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_description {
    opacity: 0;
    transform: translateY(-18%);
}

.dsm_image_accordion_animation_push_down.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_description {
    opacity: 1;
    transform: translateY(0);
    transition-delay: .6s;
}

.dsm_image_accordion_animation_push_down.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_button_wrapper {
    opacity: 0;
    transform: translateY(-18%);
}

.dsm_image_accordion_animation_push_down.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_button_wrapper {
    opacity: 1;
    transform: translateY(0);
    transition-delay: .8s;
}

/*Push Left*/
.dsm_image_accordion_animation_push_left.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_image_icon_wrapper {
    opacity: 0;
    transform: translateX(18%);
}

.dsm_image_accordion_animation_push_left.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_image_icon_wrapper {
    opacity: 1;
    transform: translateX(0);
    transition-delay: .2s;
}

.dsm_image_accordion_animation_push_left.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_title {
    opacity: 0;
    transform: translateX(18%);
}

.dsm_image_accordion_animation_push_left.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_title {
    opacity: 1;
    transform: translateX(0);
    transition-delay: .4s;
}

.dsm_image_accordion_animation_push_left.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_description {
    opacity: 0;
    transform: translateX(18%);
}

.dsm_image_accordion_animation_push_left.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_description {
    opacity: 1;
    transform: translateX(0);
    transition-delay: .6s;
}

.dsm_image_accordion_animation_push_left.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child .dsm_image_accordion_button_wrapper {
    opacity: 0;
    transform: translateX(18%);
}

.dsm_image_accordion_animation_push_left.dsm_image_accordion_animation_sequence_on .dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_button_wrapper {
    opacity: 1;
    transform: translateX(0);
    transition-delay: .8s;
}

.dsm_image_accordion_child>div {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: background-color .3s;
}

.et-pb-icon.dsm_image_accordion_icon {
    font-size: 40px;
}

.dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_image_icon_wrapper {
    margin-bottom: 15px;
}

.dsm_image_accordion_child .dsm_image_accordion_image_icon_wrapper>img {
    border-style: solid;
    height: auto;
}

.dsm_image_accordion_child .dsm_image_accordion_title {
    font-size: 22px;
    color: #fff;
    padding-bottom: 10px;
    line-height: 1em;
    font-weight: 500;
    transition: all .3s ease-in-out;
}


.dsm_image_accordion_child .dsm_image_accordion_description {
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5em;
    margin-bottom: 20px;
    transition: all .3s ease-in-out;
}


.dsm_image_accordion_child .dsm_image_accordion_button_wrapper {
    transition: all .3s ease-in-out;
}


.dsm_image_accordion_child>div,
.dsm_image_accordion_child_content_vb_wrapper {
    display: flex;
    width: 100%;
    height: 100%;
    z-index: 20;
}

.dsm_image_accordion_overylay_content {
    display: flex;
    width: 100%;
    height: 100%;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    align-items: center;
    justify-content: center;
    padding: 10px;
}

.dsm_image_accordion_child .dsm_image_accordion_overylay_title {
    font-size: 22px;
    color: #fff;
    line-height: 1.7em;
    font-weight: 500;
    transition: all .3s ease-in-out;
    transition-duration: 480ms;
    opacity: 1;

}

.dsm_image_accordion_child.dsm_image_accordion_active_item .dsm_image_accordion_overylay_title {
    opacity: 0;

}

.dsm_image_accordion_horizontal_left>div {
    justify-content: flex-start;
}

.dsm_image_accordion_horizontal_center>div {
    justify-content: center;
}

.dsm_image_accordion_horizontal_right>div {
    justify-content: flex-end;
}

.dsm_image_accordion_horizontal_left>div {
    text-align: left;
}

.dsm_image_accordion_horizontal_center>div {
    text-align: center;
}

.dsm_image_accordion_horizontal_right>div {
    text-align: right;
}


@media (max-width: 980px) {
    .dsm_image_accordion_horizontal_tablet_left>div {
        justify-content: flex-start;
    }

    .dsm_image_accordion_horizontal_tablet_center>div {
        justify-content: center;
    }

    .dsm_image_accordion_horizontal_tablet_right>div {
        justify-content: flex-end;
    }

    .dsm_image_accordion_horizontal_tablet_left .dsm_image_accordion_child_content {
        text-align: left;
    }

    .dsm_image_accordion_horizontal_tablet_center .dsm_image_accordion_child_content {
        text-align: center;
    }

    .dsm_image_accordion_horizontal_tablet_right .dsm_image_accordion_child_content {
        text-align: right;
    }
}

@media (max-width: 767px) {
    .dsm_image_accordion_horizontal_phone_left>div {
        justify-content: flex-start;
    }

    .dsm_image_accordion_horizontal_phone_center>div {
        justify-content: center;
    }

    .dsm_image_accordion_horizontal_phone_right>div {
        justify-content: flex-end;
    }

    .dsm_image_accordion_horizontal_phone_left .dsm_image_accordion_child_content {
        text-align: left;
    }

    .dsm_image_accordion_horizontal_phone_center .dsm_image_accordion_child_content {
        text-align: center;
    }

    .dsm_image_accordion_horizontal_phone_right .dsm_image_accordion_child_content {
        text-align: right;
    }
}

.dsm_image_accordion_vertical_top>div {
    align-items: flex-start;
}

.dsm_image_accordion_vertical_center>div {
    align-items: center;
}

.dsm_image_accordion_vertical_bottom>div {
    align-items: flex-end;
}


@media (max-width: 980px) {
    .dsm_image_accordion_vertical_tablet_top>div {
        align-items: flex-start;
    }

    .dsm_image_accordion_vertical_tablet_center>div {

        align-items: center;
    }

    .dsm_image_accordion_vertical_tablet_bottom>div {
        align-items: flex-end;
    }
}


@media (max-width:767px) {
    .dsm_image_accordion_vertical_phone_top>div {

        align-items: flex-start;
    }

    .dsm_image_accordion_vertical_phone_center>div {
        align-items: center;
    }

    .dsm_image_accordion_vertical_phone_bottom>div {
        align-items: flex-end;
    }
}
ul.dsm-menu, ul.dsm-menu .sub-menu {
	list-style-type: disc;
	list-style-position: inside;
}

.dsm-menu a {
	transition: all .4s ease-in-out;
}
.et_pb_bg_layout_dark ul.dsm-menu li a {
	color: #fff
}
#left-area ul.dsm-menu, .comment-content ul.dsm-menu, .entry-content ul.dsm-menu, .et-l--body ul.dsm-menu, .et-l--footer ul.dsm-menu, .et-l--header ul.dsm-menu, body.et-pb-preview #main-content .container ul.dsm-menu {
	padding-left: 0;
}
ul.dsm-menu .menu-item-has-children {
	position: relative;
}
ul.dsm-menu .menu-item-has-children .sub-menu {
	padding-bottom: 0;
	padding-left: 20px;
}
.dsm-menu-animation li a span {
	position: relative;
	padding-bottom: 2px;
}
.dsm-menu-animation-left-right li a span:after {
	content: "";
	position: absolute;
	width: 0;
	height: 2px;
	bottom: 0;
	left: 0;
	visibility: hidden;
	transition: all .4s ease-in-out;
}
.dsm-menu-animation-left-right li a span:hover:after {
    visibility: visible;
	width: 100%;
}

.dsm-menu-animation-right-left li a span:after {
	content: "";
	position: absolute;
	width: 0;
	height: 2px;
	bottom: 0;
	right: 0;
	visibility: hidden;
	transition: all .4s ease-in-out;
}
.dsm-menu-animation-right-left li a span:hover:after {
    visibility: visible;
	width: 100%;
}

.dsm-menu-animation-center-out li a span:after {
	content: "";
	position: absolute;
	width: 100%;
	height: 2px;
	bottom: 0;
	left: 0;
	visibility: hidden;
	transform: scaleX(0);
	transition: all .4s ease-in-out;
}
.dsm-menu-animation-center-out li a span:hover:after {
    visibility: visible;
	transform: scaleX(1);
}

/*Sub Menu Collapse*/
.dsm-menu-submenu-collapse .menu-item-has-children .sub-menu {
	display: none;
}
.dsm-menu-submenu-collapse .menu-item-has-children .et-pb-icon {
	font-size: 16px;
	border-style: solid;
}
.dsm-menu-submenu-collapse .menu-item-has-children>a {
	display: inline-flex;
justify-content: center;
align-items: center;
}
/*
.dsm-menu-submenu-collapse .dsm-submenu-active .sub-menu {
	display: block;
}

.dsm-menu-submenu-collapse .menu-item-has-children > a:first-child {
    padding-right: 20px;
} 
.dsm-menu-submenu-collapse .menu-item-has-children > a:first-child::after {
    font-family: 'ETmodules';
content: "3";
font-size: 16px;
position: absolute;
right: 0;
top: 0;
font-weight: 800;
} */