/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license

Copyright (c) 2013 Daniel Eden

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

@-webkit-keyframes bounce {
    0%, 100%, 20%, 50%, 80% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }
    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

@keyframes bounce {
    0%, 100%, 20%, 50%, 80% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
    40% {
        -webkit-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        transform: translateY(-30px)
    }
    60% {
        -webkit-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        transform: translateY(-15px)
    }
}

@-webkit-keyframes flash {
    0%, 100%, 50% {
        opacity: 1
    }
    25%, 75% {
        opacity: 0
    }
}

@keyframes flash {
    0%, 100%, 50% {
        opacity: 1
    }
    25%, 75% {
        opacity: 0
    }
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }
    50% {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1)
    }
    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }
}

@-webkit-keyframes shake {
    0%, 100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px)
    }
    20%, 40%, 60%, 80% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px)
    }
}

@keyframes shake {
    0%, 100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        transform: translateX(-10px)
    }
    20%, 40%, 60%, 80% {
        -webkit-transform: translateX(10px);
        -ms-transform: translateX(10px);
        transform: translateX(10px)
    }
}

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

@-webkit-keyframes swing {
    20% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg)
    }
    40% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg)
    }
    60% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg)
    }
    80% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg)
    }
    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@keyframes swing {
    20% {
        -webkit-transform: rotate(15deg);
        -ms-transform: rotate(15deg);
        transform: rotate(15deg)
    }
    40% {
        -webkit-transform: rotate(-10deg);
        -ms-transform: rotate(-10deg);
        transform: rotate(-10deg)
    }
    60% {
        -webkit-transform: rotate(5deg);
        -ms-transform: rotate(5deg);
        transform: rotate(5deg)
    }
    80% {
        -webkit-transform: rotate(-5deg);
        -ms-transform: rotate(-5deg);
        transform: rotate(-5deg)
    }
    100% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0)
    }
}

@-webkit-keyframes tada {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    10%, 20% {
        -webkit-transform: scale(.9) rotate(-3deg);
        transform: scale(.9) rotate(-3deg)
    }
    30%, 50%, 70%, 90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg)
    }
    40%, 60%, 80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg)
    }
    100% {
        -webkit-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0)
    }
}

@keyframes tada {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }
    10%, 20% {
        -webkit-transform: scale(.9) rotate(-3deg);
        -ms-transform: scale(.9) rotate(-3deg);
        transform: scale(.9) rotate(-3deg)
    }
    30%, 50%, 70%, 90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg)
    }
    40%, 60%, 80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg)
    }
    100% {
        -webkit-transform: scale(1) rotate(0);
        -ms-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0)
    }
}

@-webkit-keyframes wobble {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg)
    }
    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg)
    }
    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg)
    }
    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg)
    }
    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg)
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes wobble {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        -ms-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg)
    }
    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        -ms-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg)
    }
    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        -ms-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg)
    }
    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        -ms-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg)
    }
    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        -ms-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg)
    }
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(.3);
        transform: scale(.3)
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        transform: scale(1.05)
    }
    70% {
        -webkit-transform: scale(.9);
        transform: scale(.9)
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(.3);
        -ms-transform: scale(.3);
        transform: scale(.3)
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
        transform: scale(1.05)
    }
    70% {
        -webkit-transform: scale(.9);
        -ms-transform: scale(.9);
        transform: scale(.9)
    }
    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }
}

@-webkit-keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }
    80% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px)
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        -ms-transform: translateY(30px);
        transform: translateY(30px)
    }
    80% {
        -webkit-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
        transform: translateY(-10px)
    }
    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        transform: translateX(30px)
    }
    80% {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px)
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        -ms-transform: translateX(30px);
        transform: translateX(30px)
    }
    80% {
        -webkit-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        transform: translateX(-10px)
    }
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        transform: translateX(-30px)
    }
    80% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px)
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }
    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        -ms-transform: translateX(-30px);
        transform: translateX(-30px)
    }
    80% {
        -webkit-transform: translateX(10px);
        -ms-transform: translateX(10px);
        transform: translateX(10px)
    }
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px)
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px)
    }
    80% {
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px)
    }
    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        transform: translateY(-30px)
    }
    80% {
        -webkit-transform: translateY(10px);
        -ms-transform: translateY(10px);
        transform: translateY(10px)
    }
    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    25% {
        -webkit-transform: scale(.95);
        transform: scale(.95)
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(.3);
        transform: scale(.3)
    }
}

@keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }
    25% {
        -webkit-transform: scale(.95);
        -ms-transform: scale(.95);
        transform: scale(.95)
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1)
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(.3);
        -ms-transform: scale(.3);
        transform: scale(.3)
    }
}

@-webkit-keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px)
    }
}

@keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px)
    }
}

@-webkit-keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

@keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

@-webkit-keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

@keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

@-webkit-keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        transform: translateY(20px)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

@keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }
    100% {
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }
    100% {
        opacity: 1
    }
}

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

@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

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

@-webkit-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1
    }
    100% {
        opacity: 0
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1
    }
    100% {
        opacity: 0
    }
}

@-webkit-keyframes fadeOutDown {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px)
    }
}

@keyframes fadeOutDown {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px)
    }
}

@-webkit-keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px)
    }
}

@keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px)
    }
}

@-webkit-keyframes fadeOutLeft {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }
}

@keyframes fadeOutLeft {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px)
    }
}

@-webkit-keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

@keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

@-webkit-keyframes fadeOutRight {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }
}

@keyframes fadeOutRight {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px)
    }
}

@-webkit-keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

@keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

@-webkit-keyframes fadeOutUp {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }
}

@keyframes fadeOutUp {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px)
    }
}

@-webkit-keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

@keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

@-webkit-keyframes flip {
    0% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
    80% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
    100% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
}

@keyframes flip {
    0% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        -ms-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out
    }
    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
    80% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
        -ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
    100% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        -ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }
}

@-webkit-keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg)
    }
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg)
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(0);
        transform: perspective(400px) rotateX(0);
        opacity: 1
    }
}

@keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0
    }
    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        -ms-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg)
    }
    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        -ms-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg)
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(0);
        -ms-transform: perspective(400px) rotateX(0);
        transform: perspective(400px) rotateX(0);
        opacity: 1
    }
}

@-webkit-keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0
    }
    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg)
    }
    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg)
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        opacity: 1
    }
}

@keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0
    }
    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        -ms-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg)
    }
    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        -ms-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg)
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(0);
        -ms-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        opacity: 1
    }
}

@-webkit-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0);
        transform: perspective(400px) rotateX(0);
        opacity: 1
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0
    }
}

@keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0);
        -ms-transform: perspective(400px) rotateX(0);
        transform: perspective(400px) rotateX(0);
        opacity: 1
    }
    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0
    }
}

@-webkit-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        opacity: 1
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0
    }
}

@keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0);
        -ms-transform: perspective(400px) rotateY(0);
        transform: perspective(400px) rotateY(0);
        opacity: 1
    }
    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0
    }
}

@-webkit-keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0
    }
    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        opacity: 1
    }
    80% {
        -webkit-transform: translateX(0) skewX(-15deg);
        transform: translateX(0) skewX(-15deg);
        opacity: 1
    }
    100% {
        -webkit-transform: translateX(0) skewX(0);
        transform: translateX(0) skewX(0);
        opacity: 1
    }
}

@keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0
    }
    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        -ms-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        opacity: 1
    }
    80% {
        -webkit-transform: translateX(0) skewX(-15deg);
        -ms-transform: translateX(0) skewX(-15deg);
        transform: translateX(0) skewX(-15deg);
        opacity: 1
    }
    100% {
        -webkit-transform: translateX(0) skewX(0);
        -ms-transform: translateX(0) skewX(0);
        transform: translateX(0) skewX(0);
        opacity: 1
    }
}

@-webkit-keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0) skewX(0);
        transform: translateX(0) skewX(0);
        opacity: 1
    }
    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0
    }
}

@keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0) skewX(0);
        -ms-transform: translateX(0) skewX(0);
        transform: translateX(0) skewX(0);
        opacity: 1
    }
    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0
    }
}

@-webkit-keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0
    }
    100% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(-200deg);
        -ms-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0
    }
    100% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@-webkit-keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@-webkit-keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@-webkit-keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@-webkit-keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
}

@-webkit-keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
    100% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0
    }
}

@keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
    100% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(200deg);
        -ms-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0
    }
}

@-webkit-keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
}

@keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
}

@-webkit-keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
}

@keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
}

@-webkit-keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
}

@keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0
    }
}

@-webkit-keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
}

@keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1
    }
    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0
    }
}

@-webkit-keyframes slideInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes slideInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes slideInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes slideInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes slideInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes slideInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes slideOutLeft {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

@keyframes slideOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px)
    }
}

@-webkit-keyframes slideOutRight {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

@keyframes slideOutRight {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px)
    }
}

@-webkit-keyframes slideOutUp {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

@keyframes slideOutUp {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px)
    }
}

@-webkit-keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(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: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }
    40% {
        -webkit-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }
    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        opacity: 1;
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }
    100% {
        -webkit-transform: translateY(700px);
        transform: translateY(700px);
        opacity: 0
    }
}

@keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left;
        -ms-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: rotate(80deg);
        -ms-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }
    40% {
        -webkit-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }
    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        opacity: 1;
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out
    }
    100% {
        -webkit-transform: translateY(700px);
        -ms-transform: translateY(700px);
        transform: translateY(700px);
        opacity: 0
    }
}

@-webkit-keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0) rotate(0);
        transform: translateX(0) rotate(0)
    }
}

@keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateX(0) rotate(0);
        -ms-transform: translateX(0) rotate(0);
        transform: translateX(0) rotate(0)
    }
}

@-webkit-keyframes rollOut {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0) rotate(0);
        transform: translateX(0) rotate(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(100%) rotate(120deg);
        transform: translateX(100%) rotate(120deg)
    }
}

@keyframes rollOut {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0) rotate(0);
        -ms-transform: translateX(0) rotate(0);
        transform: translateX(0) rotate(0)
    }
    100% {
        opacity: 0;
        -webkit-transform: translateX(100%) rotate(120deg);
        -ms-transform: translateX(100%) rotate(120deg);
        transform: translateX(100%) rotate(120deg)
    }
}

.owl-theme .owl-controls {
    margin-top: 10px;
    text-align: center
}

.owl-theme .owl-controls {
    margin-top: 10px;
    text-align: center
}

/*style.css*/

.programming {
    height: 1.5em;
    width: 1.5em;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: middle
}

.lang-go {
    background-image: url(https://languages.abranhe.com/languages/go.png)
}

.lang-html {
    background-image: url(https://languages.abranhe.com/languages/html.png)
}

.lang-java {
    background-image: url(https://languages.abranhe.com/languages/java.png)
}

.lang-javascript {
    background-image: url(https://languages.abranhe.com/languages/javascript.png)
}

.lang-kotlin {
    background-image: url(https://languages.abranhe.com/languages/kotlin.png)
}

.lang-php {
    background-image: url(https://languages.abranhe.com/languages/php.png)
}

.lang-python {
    background-image: url(https://languages.abranhe.com/languages/python.png)
}

.lang-ruby {
    background-image: url(https://languages.abranhe.com/languages/ruby.png)
}

.lang-typescript {
    background-image: url(https://languages.abranhe.com/languages/typescript.png)
}

a, address, body, center, code, div, footer, form, h1, h2, h3, h4, h5, h6, header, html, i, img, label, li, menu, nav, p, ruby, s, section, span, time, ul {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

footer, header, menu, nav, section {
    display: block
}

body {
    line-height: 1
}

ul {
    list-style: none
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Open Sans';
    font-size: 16px
}

p {
    font-family: 'Open Sans';
    font-size: 14px
}

html * {
    text-rendering: optimizeLegibility!important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

*, :after, :before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

::-webkit-scrollbar {
    display: none
}

::-moz-selection {
    color: #fff;
    background: #23d3d3
}

::selection {
    color: #fff;
    background: #23d3d3
}

.container-m {
    max-width: 1024px;
    margin: 0 auto!important;
    padding-left: 40px;
    padding-right: 40px;
    position: relative
}

.container-s {
    max-width: 920px;
    margin: 0 auto!important;
    padding-left: 40px;
    padding-right: 40px;
    position: relative
}

.logo {
    position: fixed;
    top: 5%;
    left: 2%;
    z-index: 11
}

.navbar {
    font-family: Montserrat;
    padding: 15px 0;
    background-color: #fff!important;
    border-bottom: 1px solid #efeff1;
    -webkit-transition: .5s all ease;
    transition: .5s all ease
}

.no-border {
    border: none!important
}

.navbar .navbar-brand {
    font-family: Montserrat;
    font-size: 40px;
    font-weight: 600;
    letter-spacing: 0;
    color: #333347!important;
    vertical-align: middle
}

.navbar .navbar-brand img {
    vertical-align: middle;
    margin-right: .3em
}

.navbar .navbar-toggler {
    border: none
}

.focus-text {
    font-size: 15px
}

.navbar span.navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0,0,0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E")
}

.navbar span.navbar-toggler-icon::before {
    outline: 0
}

.navbar .navbar-toggler:focus {
    outline: 0
}

.feature {
    font-size: 15px;
    margin: 20px 60px;
    max-width: 120px
}

.feature h1 {
    font-size: 15px!important;
    margin-top: 15px
}

.navbar-nav {
    height: auto;
    background: #fff;
    padding: 0 1.5rem;
    display: flex;
    align-items: center;
    -webkit-transition: .5s all ease;
    transition: .5s all ease
}

.navbar-nav .nav-item {
    margin-right: 0;
    margin-top: 1.5rem;
    font-size: .85rem;
    font-weight: 400;
    text-transform: capitalize;
    color: #333347;
    display: flex
}

.navbar-nav .nav-item .nav-link {
    color: #333347;
    font-weight: 500;
    display: flex;
    vertical-align: middle
}

.navbar-nav .nav-item .nav-link:hover {
    color: #333347;
    -webkit-transition: .5s;
    transition: .5s
}

.navbar-nav .nav-item .nav-link:focus {
    color: #333347
}

.btn-nav {
    display: inline-block;
    height: 38px;
    padding: 0 30px;
    text-align: center;
    font-size: 12px;
    font-weight: 600;
    line-height: 36px;
    letter-spacing: 1px;
    margin: 25px 0;
    text-transform: uppercase;
    text-decoration: none!important;
    white-space: nowrap;
    cursor: pointer;
    background-color: transparent;
    background: #047aed;
    color: #fff;
    border: 1px solid #047aed!important;
    border-radius: 50px;
    box-sizing: border-box;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    transition: .2s
}

.btn-nav:hover {
    color: #fff;
    background: #047aed
}

.btn-nav:active, .btn-nav:focus {
    background: #047aed;
    color: #fff
}

.navbar-alt {
    background: 0 0!important
}

.navbar-alt .navbar-nav {
    background: 0 0!important
}

.navbar-alt .nav-item .nav-link {
    color: #fff
}

.navbar-alt .nav-item .nav-link:focus, .navbar-alt .nav-item .nav-link:hover {
    color: rgba(255, 255, 255, .7)
}

.navbar-alt .navbar-brand {
    color: #fff!important
}

@media only screen and (max-width:767px) {
    .navbar {
        padding: 15px
    }
    .navbar .navbar-nav {
        background: #fff!important;
        padding-bottom: 25px
    }
    .navbar-nav .nav-item {
        display: block
    }
    .nav-white .nav-item .nav-link {
        color: #4957b8
    }
    .navbar-alt .nav-item .nav-link {
        color: #333347
    }
    .navbar .btn-cta {
        padding: 0 30px
    }
}

@media only screen and (min-width: 240px) {
    .navbar.past-main {
        background: #FFFFFF !important;
        border-bottom: 1px solid #EFEFF1;
    }
    .navbar.effect-main {
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
    }
    .navbar.past-main .navbar-brand {
        color: #333347 !important;
    }
    .nav-white.past-main .nav-item .nav-link {
        color: #333347;
        font-weight: 500;
    }
    .navbar.past-main .nav-item .nav-link {
        color: #333347;
        font-weight: 500;
    }
    .navbar.past-main .nav-item:hover .nav-link {
        color: #23D3D3;
    }
    .navbar.past-main .navbar-brand {
        color: #333347;
    }
    /*
.navbar.past-main span.navbar-toggler-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.6)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}*/
    .nav-white.effect-main {
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
    }
}

.main {
    width: 100%;
    height: 100%
}

.home {
    padding: 75px 0 75px 0;
    background: #f7f7f8
}

.home .hero-content {
    padding: 25px 0 0 0
}

.home h1 {
    font-size: 42px;
    font-weight: 300;
    color: #fff;
    color: #252525;
    line-height: 1.2;
    letter-spacing: -.01em
}

.home p {
    font-size: 18px;
    font-weight: 400;
    color: #818198;
    max-width: 630px;
    margin: 0 auto;
    letter-spacing: 0;
    line-height: 1.6;
    margin-top: 10px;
    margin-bottom: 15px
}

.btn-action {
    font-family: Montserrat;
    display: inline-block;
    height: 42px;
    padding: 0 30px;
    text-align: center;
    font-size: 12px;
    font-weight: 600;
    line-height: 40px;
    letter-spacing: 1px;
    margin: 25px 0;
    text-transform: uppercase;
    text-decoration: none!important;
    white-space: nowrap;
    cursor: pointer;
    background-color: transparent;
    background: #047aed;
    color: #fff;
    border: 1px solid #047aed!important;
    border-radius: 50px;
    box-sizing: border-box;
    -webkit-transition: .2s;
    -moz-transition: .2s;
    transition: .2s
}

.btn-action:hover {
    color: #fff;
    background: #047aed;
    border: 1px solid #047aed!important;
    outline: 0!important;
    text-decoration: none
}

.btn-action:active, .btn-action:focus {
    background: #047aed;
    color: #fff;
    border: 1px solid transparent!important;
    outline: 0!important
}

.btn-alt {
    background: #047aed;
    color: #fff
}

.btn-alt:hover {
    background: #047aed;
    color: #fff;
    border: 1px solid #6d48e5!important;
    outline: 0!important;
    text-decoration: none
}

.btn-white {
    background: #fff;
    color: #047aed
}

.btn-white:hover {
    background: #fff;
    color: #047aed;
    border: 1px solid #fff!important;
    outline: 0!important;
    text-decoration: none
}

.home-2 {
    background: #fef;
    background: #fafafa;
    background: linear-gradient(to bottom, #0ab3e4, #102976);
    background: #047aed;
    position: relative;
    padding: 160px 0 50px 0;
}

.home-2 .hero-img img {
    max-width: 768px!important;
    width: 100%;
    margin-top: 20px
}

.home-2 .hero-content {
    display: flex;
    height: 100%;
    padding: 0!important
}

.home-2 .hero-content .hero-content-inner {
    text-align: center
}

.home-2 h1 {
    font-size: 55px;
    font-weight: 300;
    color: #fff;
    line-height: 1.2;
    letter-spacing: -.01em
}

.home-2 p {
    font-size: 23px;
    font-weight: 400;
    color: rgba(255, 255, 255, .7);
    max-width: none;
    letter-spacing: 0;
    line-height: 1.6;
    margin-top: 25px;
    margin-bottom: 0
}

.home-2 .hero-form {
    position: relative;
    z-index: 1
}

.home-2 .hero-form #contactForm {
    background: #fff;
    padding: 35px;
    border-radius: 10px;
    max-width: 380px!important;
    margin: 0 auto;
    float: none;
    z-index: 1111!important;
    box-shadow: 0 5px 50px rgba(0, 0, 10, .2)
}

.home-2 .hero-form #contactForm label {
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 600;
    color: #1e266d;
    line-height: 1.4;
    margin: 10px 0
}

.home-2 .hero-form #contactForm input {
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 400;
    color: #1e266d;
    border: 0;
    border-radius: 0;
    border-bottom: 2px solid #b4becb
}

.home-2 .hero-form #contactForm .btn-action {
    margin: 20px 0;
    min-width: 100%
}

.home-3 {
    background: #fef;
    background: #fafafa;
    background: linear-gradient(to bottom, #0ab3e4, #102976);
    background: #047aed;
    position: relative;
    padding: 160px 0 50px 0
}

.home-3 .hero-img img {
    max-width: 768px!important;
    width: 100%;
    margin-top: 20px
}

.home-3 .hero-content {
    display: flex;
    height: 100%;
    padding: 0!important
}

.home-3 .hero-content .hero-content-inner {
    margin: auto;
    text-align: center
}

.home-3 h1 {
    font-size: 42px;
    font-weight: 300;
    color: #fff;
    line-height: 1.2;
    letter-spacing: -.01em
}

.home-3 p {
    font-size: 23px;
    font-weight: 400;
    color: rgba(255, 255, 255, .7);
    max-width: none;
    letter-spacing: 0;
    line-height: 1.6;
    margin-top: 25px;
    margin-bottom: 0
}

.home-3 .hero-form {
    position: relative;
    z-index: 1
}

.home-3 .hero-form #contactForm {
    background: #fff;
    padding: 35px;
    border-radius: 10px;
    max-width: 380px!important;
    margin: 0 auto;
    float: none;
    z-index: 1111!important;
    box-shadow: 0 5px 50px rgba(0, 0, 10, .2)
}

.home-3 .hero-form #contactForm label {
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 600;
    color: #1e266d;
    line-height: 1.4;
    margin: 10px 0
}

.home-3 .hero-form #contactForm input {
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 400;
    color: #1e266d;
    border: 0;
    border-radius: 0;
    border-bottom: 2px solid #b4becb
}

.home-3 .hero-form #contactForm .btn-action {
    margin: 20px 0;
    min-width: 100%
}

.help-block {
    font-family: Montserrat;
    font-size: 12px;
    font-weight: 400;
    margin-top: 5px;
    color: #f33;
    font-style: normal!important
}

#email-error {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -50%;
    font-family: Montserrat;
    font-size: 13px;
    font-weight: 500;
    color: #f33
}

.home-split {
    width: 100%;
    height: 100%
}

.home-split .btm_block {
    position: relative;
    width: 100%;
    height: auto
}

.home-split .block_inner {
    position: absolute;
    bottom: 0;
    left: 50px
}

.split_footer {
    position: relative;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0
}

.split_footer p {
    font-size: 12px!important
}

.split_footer ul {
    list-style-type: none;
    text-align: center;
    margin-bottom: 20px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0
}

.split_footer ul li {
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0;
    display: inline-block;
    margin-left: 10px;
    margin-right: 10px
}

.split_footer ul li a {
    font-size: 14px;
    font-weight: 500;
    line-height: 24px;
    text-transform: uppercase;
    position: relative;
    display: inline-block;
    color: #fff;
    text-decoration: none
}

.split_footer ul li a:hover {
    text-decoration: none;
    color: #97a6b5
}

.split_footer ul li {
    margin-left: 8px;
    margin-right: 8px
}

.split_footer ul li a img {
    width: 21px;
    vertical-align: middle
}

@media only screen and (max-width:767px) {
    .home-split .btn-alt {
        display: block
    }
}

.form {
    padding-top: 25px;
    position: relative;
    text-align: center
}

.form input {
    color: #222;
    font-family: Montserrat;
    padding: 0;
    font-size: 13px;
    font-weight: 500;
    height: 45px;
    border: 0;
    border-radius: 30px;
    background-color: #efefef;
    outline: 0;
    padding: 0 100px 0 20px;
    box-shadow: 0 5px 30px rgba(255, 255, 255, .1)
}

.form input:focus {
    outline: 0!important;
    border-color: transparent
}

.form .submit-button {
    height: 45px;
    border: 0;
    border-radius: 30px;
    margin-left: -35px;
    padding: 0 25px 0 25px;
    background: #047aed;
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 500;
    text-transform: capitalize;
    letter-spacing: 0;
    color: #fff;
    cursor: pointer;
    outline: 0;
    box-shadow: 0 5px 30px rgba(255, 255, 255, .05);
    -webkit-transition: .5s;
    -moz-transition: .5s;
    transition: .5s
}

#email-error {
    position: absolute;
    left: 20%;
    right: 0;
    bottom: 0;
    font-family: Montserrat;
    font-size: 13px;
    font-weight: 500;
    color: #f33
}

.lbl-services {
    background: #fff;
    padding: 50px 0;
    position: relative
}

.service-intro {
    padding: 0 0 50px 0
}

.service-intro h1 {
    font-size: 32px;
    font-weight: 300;
    color: #364655;
    line-height: 1.2;
    margin-bottom: 20px
}

.service-intro p {
    font-size: 20px;
    font-weight: 400;
    color: #818198;
    line-height: 1.6;
    max-width: 800px;
    margin: 0 auto
}

.justify-center {
    justify-content: center!important;
    display: flex
}

.lbl_cards {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-radius: 10px;
    overflow: hidden;
    text-align: center;
    flex: auto;
    flex-direction: row;
    justify-content: space-around
}

.card-icon {
    width: 160px;
    height: 160px;
    margin: 0 auto;
    border-radius: 50%;
    background: rgba(30, 166, 154, .08);
    background: #edf4f7;
    display: table;
    text-align: center
}

.card-img {
    display: table-cell;
    vertical-align: middle;
    text-align: center
}

.card-text {
    padding: 15px;
    margin-top: 15px
}

.card-text h3 {
    font-size: 20px;
    line-height: 30px;
    font-weight: 500;
    color: #364655
}

.card-text p {
    font-size: 16px;
    font-weight: 500;
    color: #818198;
    line-height: 1.6;
    margin-top: 15px
}

.flex-split {
    padding: 50px 0;
    background: #f7f7f8
}

.flex-intro {
    margin-bottom: 50px;
    text-align: center
}

.flex-intro-2 {
    margin-top: 30px
}

.flex-intro h2 {
    font-size: 32px;
    font-weight: 300;
    color: #3a3a47;
    line-height: 1.3;
    margin-bottom: 10px
}

.flex-intro p {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: .01em;
    color: #818198;
    max-width: 630px;
    margin: 0 auto;
    margin-top: 15px;
    margin-bottom: 15px
}

.flex-inner {
    margin: 50px 0
}

.flex-inner .f-image {
    padding: 0 35px;
    text-align: center
}

.flex-inner .f-text {
    padding: 0 35px;
    text-align: center
}

.flex-inner .f-text {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    text-align: center
}

.flex-inner .f-text h2 {
    font-size: 24px;
    font-weight: 600;
    color: #3a3a47;
    line-height: 1.3;
    margin-top: 25px
}

.flex-inner .f-text p {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: .01em;
    color: #818198;
    margin-top: 15px;
    margin-bottom: 15px
}

.flex-inner .f-text .left-content a {
    font-family: "Open Sans";
    font-size: 14px;
    font-weight: 500;
    color: #8798ab;
    position: relative;
    display: inline-block;
    text-decoration: none
}

.flex-inner .f-text .left-content a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -20%;
    height: 1px;
    width: 50px;
    background: #8798ab;
    -webkit-transition: .3s;
    transition: .3s
}

.flex-inner .f-text .left-content a:hover::after {
    width: 75px
}

.flex-inner .f-text .left-content a:hover {
    text-decoration: none
}

.flex-inner.flex-inverted .f-image {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

.flex-inner.flex-inverted .f-image img {
    -webkit-filter: grayscale(100%);
    filter: grayscale(10%)
}

.yd_cta_box {
    background: #fff
}

.cta_box {
    background: #303c42 url(../images/motherboard1.png);
    background-repeat: no-repeat;
    background-position: right;
    border-radius: 0;
    display: flex;
    margin: auto;
    height: 480px
}

.cta_box .cta_box_inner {
    margin: auto;
    padding: 0
}

.cta_box .cta_box_inner h4 {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.2;
    color: rgba(255, 255, 255, .8);
    margin-bottom: 20px
}

.cta_box .cta_box_inner h2 {
    font-size: 24px;
    font-weight: 400;
    line-height: 1.6;
    color: #fff
}

.programming-large {
    width: 74px;
    height: 50px
}

.left {
    background: #f3f3f5;
    padding: 75px
}

.right {
    background-color: #f3f3f5;
    background: #333;
    line-height: 0;
    position: relative;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    justify-content: space-around
}

.right>* {
    flex: 1 100%
}

.yd_flex {
    display: block;
    text-align: center
}

.yd_flex_1 {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.yd_flex_2 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
}

.yd_flex_1 .flex_content {
    max-width: 420px;
    margin: 0 auto
}

.yd_flex_1 .flex_content h2 {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.4;
    color: #364655;
    margin-bottom: 10px
}

.yd_flex_1 .flex_content p {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    color: #5f6368;
    margin-bottom: 5px
}

.flex_main {
    display: flex;
    flex-wrap: wrap;
    justify-content: center
}

.yd_faqs {
    padding: 50px 0;
    background: #f7f7f8
}

.yd_faqs .faq_intro {
    max-width: 600px;
    margin-bottom: 50px
}

.yd_faqs .faq_inner h2 {
    font-size: 32px;
    font-weight: 300;
    color: #111;
    line-height: 1.2;
    margin-bottom: 15px
}

.yd_faqs .faq_inner p {
    font-size: 16px;
    font-weight: 400;
    color: rgba(0, 0, 0, .5);
    line-height: 1.6;
    margin: 15px 0
}

.yd_faqs .faq_inner h5 {
    font-size: 16px;
    font-weight: 400;
    color: rgba(0, 0, 0, .5);
    line-height: 1.6;
    margin-top: 20px;
    display: inline
}

.yd_faqs .faq_inner a {
    display: inline;
    font-family: 'Open Sans';
    color: #047aed;
    font-size: 14px;
    font-weight: 400;
    text-decoration: none
}

#accordion .card {
    border-radius: 0;
    border: 0
}

#accordion .card-header {
    padding: 30px 0;
    background: #f7f7f8;
    border-bottom: 2px solid rgba(0, 0, 0, .03);
    cursor: pointer
}

#accordion .card-header .card-title {
    font-family: 'Open Sans';
    font-size: 18px;
    color: rgba(0, 0, 0, .75);
    font-weight: 500;
    line-height: 1.4
}

#accordion .card-body {
    padding: 30px 0;
    background: #f7f7f8
}

#accordion .card-body p {
    font-family: Roboto;
    font-size: 16px;
    color: rgba(0, 0, 0, .6);
    font-weight: 400;
    line-height: 2
}

.faq_alt {
    background: #fff
}

.faq_alt #accordion .card-header {
    background: #fff
}

.faq_alt #accordion .card-body {
    background: #fff
}

.split_features {
    width: 100%;
    height: 100%
}

.btn-white {
    color: #047aed;
    background-color: #fff!important;
    border-color: #fff!important
}

.footer {
    background: #040e1a;
    background: #303c42;
    padding: 35px 0;
    border-top: 2px solid rgba(255, 255, 255, .1)
}

.footer-inner {
    background: #1e266d
}

.footer .footer-logo {
    text-align: center
}

.footer .footer-logo h2 {
    font-size: 18px;
    font-weight: 500;
    color: #e5e5e5;
    line-height: 1.4;
    letter-spacing: 1px
}

.social-links {
    width: 25px;
    height: 25px
}

.faq-icon {
    width: 25px;
    height: 25px;
    float: right
}

.footer p {
    font-size: 24px;
    font-weight: 700;
    color: #e5e5e5;
    line-height: 1.4;
    margin-top: 0
}

.footer ul {
    list-style-type: none;
    text-align: center;
    margin-top: 0
}

.footer .footer-menu {
    text-align: center;
    margin: 20px 0
}

.footer .footer-links ul {
    text-align: center
}

.footer ul li {
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0;
    display: inline-block;
    margin-left: 10px;
    margin-right: 10px
}

.footer ul li a {
    font-size: 14px;
    font-weight: 500;
    line-height: 24px;
    text-transform: uppercase;
    position: relative;
    display: inline-block;
    color: #fff;
    text-decoration: none
}

.footer ul li a:hover {
    text-decoration: none;
    color: #97a6b5
}

.footer .footer-links ul li {
    margin-left: 10px;
    margin-right: 10px
}

.footer .footer-links ul li a img {
    width: 24px;
    vertical-align: middle
}

@media only screen and (min-width:767px) {
    .navbar-nav {
        margin-top: 0
    }
    .navbar-nav .nav-item {
        margin-top: 0;
        margin-right: 15px;
        font-size: .85rem;
        font-weight: 400
    }
    .btn-nav {
        margin: 0
    }
    .container-s {
        padding-left: 20px;
        padding-right: 20px
    }
    .container-m {
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 65px
    }
    .hero-inner h2 {
        font-size: 38px
    }
    .home .hero-content {
        padding: 75px 0 0 0
    }
    .home-2 {
        padding: 100px 0 0 0
    }
    .home-3 {
        padding: 100px 0 100px 0
    }
    .home-2 .hero-form #contactForm {
        float: right
    }
    .home-2 .hero-content .hero-content-inner {
        text-align: left
    }
    .lbl-services {
        padding: 50px 0 50px 0
    }
    .service-intro h1 {
        font-size: 34px
    }
    .flex-split {
        padding: 100px 0 10px 0
    }
    .flex-intro h2 {
        font-size: 34px
    }
    .flex-inner {
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin: 75px 0 0 0
    }
    .flex-inner .f-image {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 400px;
        flex: 0 0 400px
    }
    .cta_box .cta_box_inner h2 {
        font-size: 32px
    }
    .flex-inner .f-text h2 {
        margin-top: 0
    }
    .yd_faqs {
        padding: 100px 0
    }
    .flex-inner .f-text h2 {
        font-size: 24px
    }
    .flex-inner .f-text p {
        font-size: 16px;
        font-weight: 500
    }
    .yd_flex {
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        text-align: left;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    .yd_flex .yd_flex_2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 568px;
        flex: 0 0 568px
    }
    .yd_flex_1 .flex_content {
        max-width: 420px;
        margin: 0
    }
    .left {
        padding: 50px
    }
    .flex_main {
        display: flex
    }
    .left {
        flex: 1 0 0
    }
    .right {
        flex: 1 0 0;
        flex-direction: column
    }
    .footer .footer-logo {
        text-align: left
    }
    .footer .footer-menu {
        text-align: right;
        margin: 0
    }
    .footer .footer-links ul {
        text-align: right
    }
}

@media only screen and (min-width:480px) {
    .container-s {
        padding-left: 40px;
        padding-right: 40px
    }
    .flex-inner .f-text {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        text-align: left
    }
}

@media only screen and (min-width:768px) and (max-width:1024px) {
    .yd_flex .yd_flex_2 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 420px;
        flex: 0 0 420px
    }
}

@media only screen and (min-width:1024px) {
    .home-3 .hero-img img {
        transform: translateX(120px);
        box-shadow: 0 0 30px rgba(0, 0, 0, .2)
    }
    .cta_box .cta_box_inner {
        padding: 0
    }
    .left {
        padding: 100px
    }
}

@media only screen and (max-width:420px) {
    .form {
        text-align: center
    }
    .form input {
        padding: 0 75px 0 20px
    }
    .form .submit-button {
        margin-left: 0;
        margin-top: 10px
    }
}