.flyin {
    animation: vex-flyin 0.5s;
    -webkit-animation: vex-flyin 0.5s;
    -moz-animation: vex-flyin 0.5s;
    -ms-animation: vex-flyin 0.5s;
    -o-animation: vex-flyin 0.5s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.flyout {
    animation: vex-flyout 0.5s;
    -webkit-animation: vex-flyout 0.5s;
    -moz-animation: vex-flyout 0.5s;
    -ms-animation: vex-flyout 0.5s;
    -o-animation: vex-flyout 0.5s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.pulse {
    animation: vex-pulse 1.1s infinite;
    -webkit-animation: vex-pulse 1.1s infinite;
    -moz-animation: vex-pulse 1.1s infinite;
    -ms-animation: vex-pulse 1.1s infinite;
    -o-animation: vex-pulse 1.1s infinite;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    outline: none;
}

@keyframes vex-flyin {
    0% {
        opacity: 0;
        transform: translateY(-40px);
        -webkit-transform: translateY(-40px);
        -moz-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        -o-transform: translateY(-40px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
    }
}

@-webkit-keyframes vex-flyin {
    0% {
        opacity: 0;
        transform: translateY(-40px);
        -webkit-transform: translateY(-40px);
        -moz-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        -o-transform: translateY(-40px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
    }
}

@-moz-keyframes vex-flyin {
    0% {
        opacity: 0;
        transform: translateY(-40px);
        -webkit-transform: translateY(-40px);
        -moz-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        -o-transform: translateY(-40px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
    }
}

@-ms-keyframes vex-flyin {
    0% {
        opacity: 0;
        transform: translateY(-40px);
        -webkit-transform: translateY(-40px);
        -moz-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        -o-transform: translateY(-40px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
    }
}

@-o-keyframes vex-flyin {
    0% {
        opacity: 0;
        transform: translateY(-40px);
        -webkit-transform: translateY(-40px);
        -moz-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        -o-transform: translateY(-40px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
    }
}

@keyframes vex-flyout {
    0% {
        opacity: 1;
        transform: translateY(0);
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
    }
    100% {
        opacity: 0;
        transform: translateY(-40px);
        -webkit-transform: translateY(-40px);
        -moz-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        -o-transform: translateY(-40px);
    }
}

@-webkit-keyframes vex-flyout {
    0% {
        opacity: 1;
        transform: translateY(0);
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
    }
    100% {
        opacity: 0;
        transform: translateY(-40px);
        -webkit-transform: translateY(-40px);
        -moz-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        -o-transform: translateY(-40px);
    }
}

@-moz-keyframes vex-flyout {
    0% {
        opacity: 1;
        transform: translateY(0);
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
    }
    100% {
        opacity: 0;
        transform: translateY(-40px);
        -webkit-transform: translateY(-40px);
        -moz-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        -o-transform: translateY(-40px);
    }
}

@-ms-keyframes vex-flyout {
    0% {
        opacity: 1;
        transform: translateY(0);
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
    }
    100% {
        opacity: 0;
        transform: translateY(-40px);
        -webkit-transform: translateY(-40px);
        -moz-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        -o-transform: translateY(-40px);
    }
}

@-o-keyframes vex-flyout {
    0% {
        opacity: 1;
        transform: translateY(0);
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
    }
    100% {
        opacity: 0;
        transform: translateY(-40px);
        -webkit-transform: translateY(-40px);
        -moz-transform: translateY(-40px);
        -ms-transform: translateY(-40px);
        -o-transform: translateY(-40px);
    }
}

@keyframes vex-pulse {
    0% {
        -moz-box-shadow: inset 0 0 0 300px transparent;
        -webkit-box-shadow: inset 0 0 0 300px transparent;
        box-shadow: inset 0 0 0 300px transparent;
    }
    70% {
        -moz-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
        -webkit-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
        box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
    }
    100% {
        -moz-box-shadow: inset 0 0 0 300px transparent;
        -webkit-box-shadow: inset 0 0 0 300px transparent;
        box-shadow: inset 0 0 0 300px transparent;
    }
}

@-webkit-keyframes vex-pulse {
    0% {
        -moz-box-shadow: inset 0 0 0 300px transparent;
        -webkit-box-shadow: inset 0 0 0 300px transparent;
        box-shadow: inset 0 0 0 300px transparent;
    }
    70% {
        -moz-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
        -webkit-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
        box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
    }
    100% {
        -moz-box-shadow: inset 0 0 0 300px transparent;
        -webkit-box-shadow: inset 0 0 0 300px transparent;
        box-shadow: inset 0 0 0 300px transparent;
    }
}

@-moz-keyframes vex-pulse {
    0% {
        -moz-box-shadow: inset 0 0 0 300px transparent;
        -webkit-box-shadow: inset 0 0 0 300px transparent;
        box-shadow: inset 0 0 0 300px transparent;
    }
    70% {
        -moz-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
        -webkit-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
        box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
    }
    100% {
        -moz-box-shadow: inset 0 0 0 300px transparent;
        -webkit-box-shadow: inset 0 0 0 300px transparent;
        box-shadow: inset 0 0 0 300px transparent;
    }
}

@-ms-keyframes vex-pulse {
    0% {
        -moz-box-shadow: inset 0 0 0 300px transparent;
        -webkit-box-shadow: inset 0 0 0 300px transparent;
        box-shadow: inset 0 0 0 300px transparent;
    }
    70% {
        -moz-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
        -webkit-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
        box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
    }
    100% {
        -moz-box-shadow: inset 0 0 0 300px transparent;
        -webkit-box-shadow: inset 0 0 0 300px transparent;
        box-shadow: inset 0 0 0 300px transparent;
    }
}

@-o-keyframes vex-pulse {
    0% {
        -moz-box-shadow: inset 0 0 0 300px transparent;
        -webkit-box-shadow: inset 0 0 0 300px transparent;
        box-shadow: inset 0 0 0 300px transparent;
    }
    70% {
        -moz-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
        -webkit-box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
        box-shadow: inset 0 0 0 300px rgba(255, 255, 255, 0.25);
    }
    100% {
        -moz-box-shadow: inset 0 0 0 300px transparent;
        -webkit-box-shadow: inset 0 0 0 300px transparent;
        box-shadow: inset 0 0 0 300px transparent;
    }
}
