@charset "UTF-8";
/*
    HACK FILE for bad design but needed design
    /!\ WRITE DOWN A EXPLANATION FOR EACH RULE /!\
*/
@import url("https://fonts.googleapis.com/css?family=Roboto:100,300,400,700");
@import url("https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700");
@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,400i,600,600i,700,700i");
@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,400i,600,600i,700,700i");

*:focus {
    outline: none;
}

/*TEST flex fix firefox*/
@-webkit-keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        -moz-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        -o-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -webkit-transform: translateY(-15px);
        -moz-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        -o-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

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

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

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

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

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

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

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

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

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

@-webkit-keyframes jello {
    11.1% {
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        -moz-transform: skewX(-12.5deg) skewY(-12.5deg);
        -ms-transform: skewX(-12.5deg) skewY(-12.5deg);
        -o-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        -moz-transform: skewX(6.25deg) skewY(6.25deg);
        -ms-transform: skewX(6.25deg) skewY(6.25deg);
        -o-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        -moz-transform: skewX(-3.125deg) skewY(-3.125deg);
        -ms-transform: skewX(-3.125deg) skewY(-3.125deg);
        -o-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        -moz-transform: skewX(1.5625deg) skewY(1.5625deg);
        -ms-transform: skewX(1.5625deg) skewY(1.5625deg);
        -o-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -moz-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -ms-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -o-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }
    77.7% {
        -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
        -moz-transform: skewX(0.39062deg) skewY(0.39062deg);
        -ms-transform: skewX(0.39062deg) skewY(0.39062deg);
        -o-transform: skewX(0.39062deg) skewY(0.39062deg);
        transform: skewX(0.39062deg) skewY(0.39062deg);
    }
    88.8% {
        -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -moz-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -ms-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -o-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        transform: skewX(-0.19531deg) skewY(-0.19531deg);
    }
    100% {
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
}

@-moz-keyframes jello {
    11.1% {
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        -moz-transform: skewX(-12.5deg) skewY(-12.5deg);
        -ms-transform: skewX(-12.5deg) skewY(-12.5deg);
        -o-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        -moz-transform: skewX(6.25deg) skewY(6.25deg);
        -ms-transform: skewX(6.25deg) skewY(6.25deg);
        -o-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        -moz-transform: skewX(-3.125deg) skewY(-3.125deg);
        -ms-transform: skewX(-3.125deg) skewY(-3.125deg);
        -o-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        -moz-transform: skewX(1.5625deg) skewY(1.5625deg);
        -ms-transform: skewX(1.5625deg) skewY(1.5625deg);
        -o-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -moz-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -ms-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -o-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }
    77.7% {
        -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
        -moz-transform: skewX(0.39062deg) skewY(0.39062deg);
        -ms-transform: skewX(0.39062deg) skewY(0.39062deg);
        -o-transform: skewX(0.39062deg) skewY(0.39062deg);
        transform: skewX(0.39062deg) skewY(0.39062deg);
    }
    88.8% {
        -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -moz-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -ms-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -o-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        transform: skewX(-0.19531deg) skewY(-0.19531deg);
    }
    100% {
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
}

@-ms-keyframes jello {
    11.1% {
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        -moz-transform: skewX(-12.5deg) skewY(-12.5deg);
        -ms-transform: skewX(-12.5deg) skewY(-12.5deg);
        -o-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        -moz-transform: skewX(6.25deg) skewY(6.25deg);
        -ms-transform: skewX(6.25deg) skewY(6.25deg);
        -o-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        -moz-transform: skewX(-3.125deg) skewY(-3.125deg);
        -ms-transform: skewX(-3.125deg) skewY(-3.125deg);
        -o-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        -moz-transform: skewX(1.5625deg) skewY(1.5625deg);
        -ms-transform: skewX(1.5625deg) skewY(1.5625deg);
        -o-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -moz-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -ms-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -o-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }
    77.7% {
        -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
        -moz-transform: skewX(0.39062deg) skewY(0.39062deg);
        -ms-transform: skewX(0.39062deg) skewY(0.39062deg);
        -o-transform: skewX(0.39062deg) skewY(0.39062deg);
        transform: skewX(0.39062deg) skewY(0.39062deg);
    }
    88.8% {
        -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -moz-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -ms-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -o-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        transform: skewX(-0.19531deg) skewY(-0.19531deg);
    }
    100% {
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
}

@-o-keyframes jello {
    11.1% {
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        -moz-transform: skewX(-12.5deg) skewY(-12.5deg);
        -ms-transform: skewX(-12.5deg) skewY(-12.5deg);
        -o-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        -moz-transform: skewX(6.25deg) skewY(6.25deg);
        -ms-transform: skewX(6.25deg) skewY(6.25deg);
        -o-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        -moz-transform: skewX(-3.125deg) skewY(-3.125deg);
        -ms-transform: skewX(-3.125deg) skewY(-3.125deg);
        -o-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        -moz-transform: skewX(1.5625deg) skewY(1.5625deg);
        -ms-transform: skewX(1.5625deg) skewY(1.5625deg);
        -o-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -moz-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -ms-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -o-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }
    77.7% {
        -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
        -moz-transform: skewX(0.39062deg) skewY(0.39062deg);
        -ms-transform: skewX(0.39062deg) skewY(0.39062deg);
        -o-transform: skewX(0.39062deg) skewY(0.39062deg);
        transform: skewX(0.39062deg) skewY(0.39062deg);
    }
    88.8% {
        -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -moz-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -ms-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -o-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        transform: skewX(-0.19531deg) skewY(-0.19531deg);
    }
    100% {
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
}

@keyframes jello {
    11.1% {
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        -moz-transform: skewX(-12.5deg) skewY(-12.5deg);
        -ms-transform: skewX(-12.5deg) skewY(-12.5deg);
        -o-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        -moz-transform: skewX(6.25deg) skewY(6.25deg);
        -ms-transform: skewX(6.25deg) skewY(6.25deg);
        -o-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        -moz-transform: skewX(-3.125deg) skewY(-3.125deg);
        -ms-transform: skewX(-3.125deg) skewY(-3.125deg);
        -o-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        -moz-transform: skewX(1.5625deg) skewY(1.5625deg);
        -ms-transform: skewX(1.5625deg) skewY(1.5625deg);
        -o-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -moz-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -ms-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        -o-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }
    77.7% {
        -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
        -moz-transform: skewX(0.39062deg) skewY(0.39062deg);
        -ms-transform: skewX(0.39062deg) skewY(0.39062deg);
        -o-transform: skewX(0.39062deg) skewY(0.39062deg);
        transform: skewX(0.39062deg) skewY(0.39062deg);
    }
    88.8% {
        -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -moz-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -ms-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        -o-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        transform: skewX(-0.19531deg) skewY(-0.19531deg);
    }
    100% {
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }
}

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

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

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

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

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

@-webkit-keyframes rubberBand {
    0% {
        -webkit-transform: scale3d(1, 1, 1);
        -moz-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        -o-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    30% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        -moz-transform: scale3d(1.25, 0.75, 1);
        -ms-transform: scale3d(1.25, 0.75, 1);
        -o-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
    }
    40% {
        -webkit-transform: scale3d(0.75, 1.25, 1);
        -moz-transform: scale3d(0.75, 1.25, 1);
        -ms-transform: scale3d(0.75, 1.25, 1);
        -o-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
    }
    50% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        -moz-transform: scale3d(1.15, 0.85, 1);
        -ms-transform: scale3d(1.15, 0.85, 1);
        -o-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
    }
    65% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        -moz-transform: scale3d(0.95, 1.05, 1);
        -ms-transform: scale3d(0.95, 1.05, 1);
        -o-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }
    75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        -moz-transform: scale3d(1.05, 0.95, 1);
        -ms-transform: scale3d(1.05, 0.95, 1);
        -o-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
    }
    100% {
        -webkit-transform: scale3d(1, 1, 1);
        -moz-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        -o-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

@-moz-keyframes rubberBand {
    0% {
        -webkit-transform: scale3d(1, 1, 1);
        -moz-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        -o-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    30% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        -moz-transform: scale3d(1.25, 0.75, 1);
        -ms-transform: scale3d(1.25, 0.75, 1);
        -o-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
    }
    40% {
        -webkit-transform: scale3d(0.75, 1.25, 1);
        -moz-transform: scale3d(0.75, 1.25, 1);
        -ms-transform: scale3d(0.75, 1.25, 1);
        -o-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
    }
    50% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        -moz-transform: scale3d(1.15, 0.85, 1);
        -ms-transform: scale3d(1.15, 0.85, 1);
        -o-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
    }
    65% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        -moz-transform: scale3d(0.95, 1.05, 1);
        -ms-transform: scale3d(0.95, 1.05, 1);
        -o-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }
    75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        -moz-transform: scale3d(1.05, 0.95, 1);
        -ms-transform: scale3d(1.05, 0.95, 1);
        -o-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
    }
    100% {
        -webkit-transform: scale3d(1, 1, 1);
        -moz-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        -o-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

@-ms-keyframes rubberBand {
    0% {
        -webkit-transform: scale3d(1, 1, 1);
        -moz-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        -o-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    30% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        -moz-transform: scale3d(1.25, 0.75, 1);
        -ms-transform: scale3d(1.25, 0.75, 1);
        -o-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
    }
    40% {
        -webkit-transform: scale3d(0.75, 1.25, 1);
        -moz-transform: scale3d(0.75, 1.25, 1);
        -ms-transform: scale3d(0.75, 1.25, 1);
        -o-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
    }
    50% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        -moz-transform: scale3d(1.15, 0.85, 1);
        -ms-transform: scale3d(1.15, 0.85, 1);
        -o-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
    }
    65% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        -moz-transform: scale3d(0.95, 1.05, 1);
        -ms-transform: scale3d(0.95, 1.05, 1);
        -o-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }
    75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        -moz-transform: scale3d(1.05, 0.95, 1);
        -ms-transform: scale3d(1.05, 0.95, 1);
        -o-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
    }
    100% {
        -webkit-transform: scale3d(1, 1, 1);
        -moz-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        -o-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

@-o-keyframes rubberBand {
    0% {
        -webkit-transform: scale3d(1, 1, 1);
        -moz-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        -o-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    30% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        -moz-transform: scale3d(1.25, 0.75, 1);
        -ms-transform: scale3d(1.25, 0.75, 1);
        -o-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
    }
    40% {
        -webkit-transform: scale3d(0.75, 1.25, 1);
        -moz-transform: scale3d(0.75, 1.25, 1);
        -ms-transform: scale3d(0.75, 1.25, 1);
        -o-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
    }
    50% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        -moz-transform: scale3d(1.15, 0.85, 1);
        -ms-transform: scale3d(1.15, 0.85, 1);
        -o-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
    }
    65% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        -moz-transform: scale3d(0.95, 1.05, 1);
        -ms-transform: scale3d(0.95, 1.05, 1);
        -o-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }
    75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        -moz-transform: scale3d(1.05, 0.95, 1);
        -ms-transform: scale3d(1.05, 0.95, 1);
        -o-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
    }
    100% {
        -webkit-transform: scale3d(1, 1, 1);
        -moz-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        -o-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

@keyframes rubberBand {
    0% {
        -webkit-transform: scale3d(1, 1, 1);
        -moz-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        -o-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    30% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        -moz-transform: scale3d(1.25, 0.75, 1);
        -ms-transform: scale3d(1.25, 0.75, 1);
        -o-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
    }
    40% {
        -webkit-transform: scale3d(0.75, 1.25, 1);
        -moz-transform: scale3d(0.75, 1.25, 1);
        -ms-transform: scale3d(0.75, 1.25, 1);
        -o-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
    }
    50% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        -moz-transform: scale3d(1.15, 0.85, 1);
        -ms-transform: scale3d(1.15, 0.85, 1);
        -o-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
    }
    65% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        -moz-transform: scale3d(0.95, 1.05, 1);
        -ms-transform: scale3d(0.95, 1.05, 1);
        -o-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }
    75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        -moz-transform: scale3d(1.05, 0.95, 1);
        -ms-transform: scale3d(1.05, 0.95, 1);
        -o-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
    }
    100% {
        -webkit-transform: scale3d(1, 1, 1);
        -moz-transform: scale3d(1, 1, 1);
        -ms-transform: scale3d(1, 1, 1);
        -o-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@-webkit-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        -moz-transform: scale(1.05);
        -ms-transform: scale(1.05);
        -o-transform: scale(1.05);
        transform: scale(1.05);
    }
    70% {
        -webkit-transform: scale(0.9);
        -moz-transform: scale(0.9);
        -ms-transform: scale(0.9);
        -o-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}

@-moz-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        -moz-transform: scale(1.05);
        -ms-transform: scale(1.05);
        -o-transform: scale(1.05);
        transform: scale(1.05);
    }
    70% {
        -webkit-transform: scale(0.9);
        -moz-transform: scale(0.9);
        -ms-transform: scale(0.9);
        -o-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}

@-ms-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        -moz-transform: scale(1.05);
        -ms-transform: scale(1.05);
        -o-transform: scale(1.05);
        transform: scale(1.05);
    }
    70% {
        -webkit-transform: scale(0.9);
        -moz-transform: scale(0.9);
        -ms-transform: scale(0.9);
        -o-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}

@-o-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        -moz-transform: scale(1.05);
        -ms-transform: scale(1.05);
        -o-transform: scale(1.05);
        transform: scale(1.05);
    }
    70% {
        -webkit-transform: scale(0.9);
        -moz-transform: scale(0.9);
        -ms-transform: scale(0.9);
        -o-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        -moz-transform: scale(1.05);
        -ms-transform: scale(1.05);
        -o-transform: scale(1.05);
        transform: scale(1.05);
    }
    70% {
        -webkit-transform: scale(0.9);
        -moz-transform: scale(0.9);
        -ms-transform: scale(0.9);
        -o-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@-webkit-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
    25% {
        -webkit-transform: scale(0.95);
        -moz-transform: scale(0.95);
        -ms-transform: scale(0.95);
        -o-transform: scale(0.95);
        transform: scale(0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -o-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
    }
}

@-moz-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
    25% {
        -webkit-transform: scale(0.95);
        -moz-transform: scale(0.95);
        -ms-transform: scale(0.95);
        -o-transform: scale(0.95);
        transform: scale(0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -o-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
    }
}

@-ms-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
    25% {
        -webkit-transform: scale(0.95);
        -moz-transform: scale(0.95);
        -ms-transform: scale(0.95);
        -o-transform: scale(0.95);
        transform: scale(0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -o-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
    }
}

@-o-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
    25% {
        -webkit-transform: scale(0.95);
        -moz-transform: scale(0.95);
        -ms-transform: scale(0.95);
        -o-transform: scale(0.95);
        transform: scale(0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -o-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
    }
}

@keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
    25% {
        -webkit-transform: scale(0.95);
        -moz-transform: scale(0.95);
        -ms-transform: scale(0.95);
        -o-transform: scale(0.95);
        transform: scale(0.95);
    }
    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -o-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -moz-transform: scale(0.3);
        -ms-transform: scale(0.3);
        -o-transform: scale(0.3);
        transform: scale(0.3);
    }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@-o-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);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -moz-transform: translateY(20px);
        -ms-transform: translateY(20px);
        -o-transform: translateY(20px);
        transform: translateY(20px);
    }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@-webkit-keyframes hinge {
    0% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    20%, 60% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(80deg);
        -moz-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        -o-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    40% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(60deg);
        -moz-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        -o-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    80% {
        opacity: 1;
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(60deg) translateY(0);
        -moz-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        -o-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(700px);
        -moz-transform: translateY(700px);
        -ms-transform: translateY(700px);
        -o-transform: translateY(700px);
        transform: translateY(700px);
    }
}

@-moz-keyframes hinge {
    0% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    20%, 60% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(80deg);
        -moz-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        -o-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    40% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(60deg);
        -moz-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        -o-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    80% {
        opacity: 1;
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(60deg) translateY(0);
        -moz-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        -o-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(700px);
        -moz-transform: translateY(700px);
        -ms-transform: translateY(700px);
        -o-transform: translateY(700px);
        transform: translateY(700px);
    }
}

@-ms-keyframes hinge {
    0% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    20%, 60% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(80deg);
        -moz-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        -o-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    40% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(60deg);
        -moz-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        -o-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    80% {
        opacity: 1;
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(60deg) translateY(0);
        -moz-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        -o-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(700px);
        -moz-transform: translateY(700px);
        -ms-transform: translateY(700px);
        -o-transform: translateY(700px);
        transform: translateY(700px);
    }
}

@-o-keyframes hinge {
    0% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    20%, 60% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(80deg);
        -moz-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        -o-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    40% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(60deg);
        -moz-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        -o-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    80% {
        opacity: 1;
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(60deg) translateY(0);
        -moz-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        -o-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(700px);
        -moz-transform: translateY(700px);
        -ms-transform: translateY(700px);
        -o-transform: translateY(700px);
        transform: translateY(700px);
    }
}

@keyframes hinge {
    0% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    20%, 60% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(80deg);
        -moz-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        -o-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    40% {
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(60deg);
        -moz-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        -o-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    80% {
        opacity: 1;
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(60deg) translateY(0);
        -moz-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        -o-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        -webkit-transform-origin: top left;
        -moz-transform-origin: top left;
        -ms-transform-origin: top left;
        -o-transform-origin: top left;
        transform-origin: top left;
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(700px);
        -moz-transform: translateY(700px);
        -ms-transform: translateY(700px);
        -o-transform: translateY(700px);
        transform: translateY(700px);
    }
}

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

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

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

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

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

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

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

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

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

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

@-webkit-keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -moz-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        -o-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    50% {
        opacity: 1;
    }
}

@-moz-keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -moz-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        -o-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    50% {
        opacity: 1;
    }
}

@-ms-keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -moz-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        -o-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    50% {
        opacity: 1;
    }
}

@-o-keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -moz-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        -o-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    50% {
        opacity: 1;
    }
}

@keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -moz-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        -o-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    50% {
        opacity: 1;
    }
}

@-webkit-keyframes zoomInDown {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    }
}

@-moz-keyframes zoomInDown {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    }
}

@-ms-keyframes zoomInDown {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    }
}

@-o-keyframes zoomInDown {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    }
}

@keyframes zoomInDown {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -o-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-keyframes zoomInLeft {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    }
}

@-moz-keyframes zoomInLeft {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    }
}

@-ms-keyframes zoomInLeft {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    }
}

@-o-keyframes zoomInLeft {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    }
}

@keyframes zoomInLeft {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -o-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-keyframes zoomInRight {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    }
}

@-moz-keyframes zoomInRight {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    }
}

@-ms-keyframes zoomInRight {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    }
}

@-o-keyframes zoomInRight {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    }
}

@keyframes zoomInRight {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -o-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-keyframes zoomInUp {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    }
}

@-moz-keyframes zoomInUp {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    }
}

@-ms-keyframes zoomInUp {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    }
}

@-o-keyframes zoomInUp {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    }
}

@keyframes zoomInUp {
    0% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -o-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    }
    60% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -o-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-keyframes zoomOut {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -moz-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        -o-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    100% {
        opacity: 0;
    }
}

@-moz-keyframes zoomOut {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -moz-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        -o-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    100% {
        opacity: 0;
    }
}

@-ms-keyframes zoomOut {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -moz-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        -o-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    100% {
        opacity: 0;
    }
}

@-o-keyframes zoomOut {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -moz-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        -o-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    100% {
        opacity: 0;
    }
}

@keyframes zoomOut {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        -moz-transform: scale3d(0.3, 0.3, 0.3);
        -ms-transform: scale3d(0.3, 0.3, 0.3);
        -o-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    100% {
        opacity: 0;
    }
}

@-webkit-keyframes zoomOutDown {
    40% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    }
    100% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -o-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;
        -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
        -o-transform-origin: center bottom;
        transform-origin: center bottom;
    }
}

@-moz-keyframes zoomOutDown {
    40% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    }
    100% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -o-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;
        -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
        -o-transform-origin: center bottom;
        transform-origin: center bottom;
    }
}

@-ms-keyframes zoomOutDown {
    40% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    }
    100% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -o-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;
        -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
        -o-transform-origin: center bottom;
        transform-origin: center bottom;
    }
}

@-o-keyframes zoomOutDown {
    40% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    }
    100% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -o-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;
        -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
        -o-transform-origin: center bottom;
        transform-origin: center bottom;
    }
}

@keyframes zoomOutDown {
    40% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    }
    100% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -o-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;
        -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
        -o-transform-origin: center bottom;
        transform-origin: center bottom;
    }
}

@-webkit-keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -moz-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -ms-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -o-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        -moz-transform-origin: left center;
        -ms-transform-origin: left center;
        -o-transform-origin: left center;
        transform-origin: left center;
    }
}

@-moz-keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -moz-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -ms-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -o-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        -moz-transform-origin: left center;
        -ms-transform-origin: left center;
        -o-transform-origin: left center;
        transform-origin: left center;
    }
}

@-ms-keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -moz-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -ms-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -o-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        -moz-transform-origin: left center;
        -ms-transform-origin: left center;
        -o-transform-origin: left center;
        transform-origin: left center;
    }
}

@-o-keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -moz-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -ms-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -o-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        -moz-transform-origin: left center;
        -ms-transform-origin: left center;
        -o-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);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -moz-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -ms-transform: scale(0.1) translate3d(-2000px, 0, 0);
        -o-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        -moz-transform-origin: left center;
        -ms-transform-origin: left center;
        -o-transform-origin: left center;
        transform-origin: left center;
    }
}

@-webkit-keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        -moz-transform: scale(0.1) translate3d(2000px, 0, 0);
        -ms-transform: scale(0.1) translate3d(2000px, 0, 0);
        -o-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        -moz-transform-origin: right center;
        -ms-transform-origin: right center;
        -o-transform-origin: right center;
        transform-origin: right center;
    }
}

@-moz-keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        -moz-transform: scale(0.1) translate3d(2000px, 0, 0);
        -ms-transform: scale(0.1) translate3d(2000px, 0, 0);
        -o-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        -moz-transform-origin: right center;
        -ms-transform-origin: right center;
        -o-transform-origin: right center;
        transform-origin: right center;
    }
}

@-ms-keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        -moz-transform: scale(0.1) translate3d(2000px, 0, 0);
        -ms-transform: scale(0.1) translate3d(2000px, 0, 0);
        -o-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        -moz-transform-origin: right center;
        -ms-transform-origin: right center;
        -o-transform-origin: right center;
        transform-origin: right center;
    }
}

@-o-keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        -moz-transform: scale(0.1) translate3d(2000px, 0, 0);
        -ms-transform: scale(0.1) translate3d(2000px, 0, 0);
        -o-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        -moz-transform-origin: right center;
        -ms-transform-origin: right center;
        -o-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);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }
    100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        -moz-transform: scale(0.1) translate3d(2000px, 0, 0);
        -ms-transform: scale(0.1) translate3d(2000px, 0, 0);
        -o-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        -moz-transform-origin: right center;
        -ms-transform-origin: right center;
        -o-transform-origin: right center;
        transform-origin: right center;
    }
}

@-webkit-keyframes zoomOutUp {
    40% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    }
    100% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -o-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;
        -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
        -o-transform-origin: center bottom;
        transform-origin: center bottom;
    }
}

@-moz-keyframes zoomOutUp {
    40% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    }
    100% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -o-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;
        -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
        -o-transform-origin: center bottom;
        transform-origin: center bottom;
    }
}

@-ms-keyframes zoomOutUp {
    40% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    }
    100% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -o-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;
        -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
        -o-transform-origin: center bottom;
        transform-origin: center bottom;
    }
}

@-o-keyframes zoomOutUp {
    40% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    }
    100% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -o-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;
        -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
        -o-transform-origin: center bottom;
        transform-origin: center bottom;
    }
}

@keyframes zoomOutUp {
    40% {
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -moz-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -ms-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -o-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    }
    100% {
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -moz-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -ms-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -o-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;
        -moz-transform-origin: center bottom;
        -ms-transform-origin: center bottom;
        -o-transform-origin: center bottom;
        transform-origin: center bottom;
    }
}

.body_content .left-menu {
    flex: 0 0 220px;
    background-color: #313541;
    text-align: center;
}

.body_content .left-menu ul {
    position: sticky;
    position: -webkit-sticky;
    top: 0px;
}

.body_content .left-menu a {
    color: #ffffff;
    height: 90px;
    padding: 0px;
    background-size: 42px;
    background-repeat: no-repeat;
    background-position: center 20px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.body_content .left-menu a:hover {
    background-color: #272A34 !important;
}

.body_content .left-menu a.nav-dashboard {
    background-image: url("/login_layout/dashboard_ico.svg");
}

.body_content .left-menu a.nav-invoice {
    background-image: url("/login_layout/facture_ico.svg");
}

.body_content .left-menu a.nav-consumption {
    background-image: url("/login_layout/analyse_ico.svg");
}

.body_content .left-menu a.nav-energyprofile {
    background-image: url("/login_layout/usage_ico.svg");
}

.body_content .left-menu a.nav-advices {
    background-image: url("/login_layout/ecoguide_ico.svg");
}

.body_content .left-menu a.nav-simu {
    background-image: url("/login_layout/simulateur_ico.svg");
}

.body_content .left-menu a.nav-metigate {
    background-image: url("/login_layout/meteo_ico.svg");
}

.body_content .left-menu a.contact_link {
    background-image: url("/login_layout/contact_ico.svg");
    background-size: 45px;
}

.body_content .left-menu a.contact_link:focus {
    background-image: url("/login_layout/contact_ico.svg");
    background-color: #313541;
}

.body_content .left-menu a.nav-dashboard:hover {
    background-image: url("/login_layout/dashboard_ico_o.svg");
}

.body_content .left-menu a.nav-invoice:hover {
    background-image: url("/login_layout/facture_ico_o.svg");
}

.body_content .left-menu a.nav-consumption:hover {
    background-image: url("/login_layout/analyse_ico_o.svg");
}

.body_content .left-menu a.nav-energyprofile:hover {
    background-image: url("/login_layout/usage_ico_o.svg");
}

.body_content .left-menu a.nav-advices:hover {
    background-image: url("/login_layout/ecoguide_ico_o.svg");
}

.body_content .left-menu a.nav-simu:hover {
    background-image: url("/login_layout/simulateur_ico_o.svg");
}

.body_content .left-menu a.nav-metigate:hover {
    background-image: url("/login_layout/meteo_ico_o.svg");
}

.body_content .left-menu a.contact_link:hover {
    background-size: 45px;
    background-image: url("/login_layout/contact_ico_o.svg");
}

#mobile_navbar_collapse {
    z-index: 999;
    position: fixed !important;
}

.nav_mobile {
    z-index: 999;
    background-color: #fff;
    border: none;
    box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.15);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 45px;
    margin-bottom: 0;
}

.nav_mobile .navbar-header {
    height: 45px;
    position: relative;
}

.nav_mobile .navbar-brand {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.nav_mobile .navbar-brand img {
    width: 100px;
}

.nav_mobile .navbar-toggle {
    float: none;
    margin: 0;
    border: none;
    border-radius: 0;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.nav_mobile .navbar-toggle .icon-bar {
    background-color: #376EB3;
}

.nav_mobile .navbar-toggle:hover, .nav_mobile .navbar-toggle:focus {
    background-color: transparent;
}

#mobile_navbar_collapse.navbar-collapse {
    padding: 0;
    height: auto;
    max-height: calc(100vh - 45px);
    position: absolute;
    top: 45px;
    width: 100%;
    background-color: #fff;
    box-shadow: 0px 3px 15px 0px;
}

#mobile_navbar_collapse .navbar-nav {
    margin: 0;
}

#mobile_navbar_collapse .select_contract {
    display: block;
    background-color: #376EB3;
    color: #fff;
    padding: 20px 15px 15px;
    background-image: url(/specific/background/contract_menu_bg.jpg);
    background-size: cover;
    background-position: center center;
    position: relative;
}

#mobile_navbar_collapse .select_contract:hover, #mobile_navbar_collapse .select_contract:focus {
    text-decoration: none;
    outline: none;
}

#mobile_navbar_collapse .select_contract p {
    margin: 0;
    font-size: 14px;
    opacity: 0.6;
}

#mobile_navbar_collapse .select_contract p.profile_name {
    opacity: 1;
    font-weight: 700;
}

#mobile_navbar_collapse .select_contract .caret {
    position: absolute;
    right: 15px;
    bottom: 15px;
    transform: scale(1.3);
}

#mobile_navbar_collapse .select_contract .status {
    position: absolute;
    right: 15px;
    top: 15px;
    transform: scale(1.3);
}

#mobile_navbar_collapse .nav {
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #ddd;
}

#mobile_navbar_collapse .nav > li > a {
    color: #666;
    padding: 8px 15px;
}

#mobile_navbar_collapse .nav > li > a[href="/invoice"] {
    padding: 8px 17px;
}

#mobile_navbar_collapse .nav > li > a[href="/invoice"] .glyphicon {
    margin-right: 42px;
}

#mobile_navbar_collapse .nav > li > .labelled {
    display: inline-block;
    width: 100%;
}

#mobile_navbar_collapse .nav > li > .labelled > .profile-label {
    display: table;
    height: 20px;
    line-height: 20px;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
}

#mobile_navbar_collapse .nav > li > a .glyphicon {
    margin-right: 40px;
}

#mobile_navbar_collapse .nav > li > a:hover {
    background-color: transparent;
    color: #333;
}

#mobile_navbar_collapse .nav > li > span.label {
    position: absolute;
    right: 15px;
    display: inline-block;
    transform: translateY(50%);
    line-height: normal;
}

#mobile_navbar_collapse .languages {
    display: table;
    margin: 0 auto;
}

#mobile_navbar_collapse .languages a {
    display: inline-block;
    padding: 15px 7px;
}

#mobile_navbar_collapse .languages img {
    width: 20px;
}

#mobile_navbar_collapse .disconnect_btn {
    width: 100%;
    color: #666;
    background-color: #ebebeb;
}

#mobile_navbar_collapse .disconnect_btn .glyphicon {
    margin-left: 10px;
}

@media screen and (max-width: 991px) {
    .body_content .left-menu {
        flex: 0 0 120px;
    }
}

@media screen and (max-width: 767px) {
    .left-menu {
        display: none;
    }
}

@media screen and (min-width: 768px) {
    #mobile_navbar_collapse {
        display: none !important;
    }
}

@media screen and (max-width: 991px) {
    ul.nav-sidebar a.nav-invoice {
        height: 110px !important;
    }
}

body.body_dashboard a.nav-dashboard,
body.body_invoice a.nav-invoice,
body.body_consumption a.nav-consumption,
body.body_energyprofile a.nav-energyprofile,
body.body_advices a.nav-advices,
body.body_simu a.nav-simu,
body.body_metigate a.nav-metigate {
    background-color: #272A34;
}

body.body_dashboard a.nav-dashboard[href="/dashboard"],
body.body_invoice a.nav-invoice[href="/dashboard"],
body.body_consumption a.nav-consumption[href="/dashboard"],
body.body_energyprofile a.nav-energyprofile[href="/dashboard"],
body.body_advices a.nav-advices[href="/dashboard"],
body.body_simu a.nav-simu[href="/dashboard"],
body.body_metigate a.nav-metigate[href="/dashboard"] {
    background-image: url("/login_layout/dashboard_ico_o.svg");
}

body.body_dashboard a.nav-dashboard[href="/invoice"],
body.body_invoice a.nav-invoice[href="/invoice"],
body.body_consumption a.nav-consumption[href="/invoice"],
body.body_energyprofile a.nav-energyprofile[href="/invoice"],
body.body_advices a.nav-advices[href="/invoice"],
body.body_simu a.nav-simu[href="/invoice"],
body.body_metigate a.nav-metigate[href="/invoice"] {
    background-image: url("/login_layout/facture_ico_o.svg");
}

body.body_dashboard a.nav-dashboard[href="/consumption?isAmm=true"],
body.body_invoice a.nav-invoice[href="/consumption?isAmm=true"],
body.body_consumption a.nav-consumption[href="/consumption?isAmm=true"],
body.body_energyprofile a.nav-energyprofile[href="/consumption?isAmm=true"],
body.body_advices a.nav-advices[href="/consumption?isAmm=true"],
body.body_simu a.nav-simu[href="/consumption?isAmm=true"],
body.body_metigate a.nav-metigate[href="/consumption?isAmm=true"] {
    background-image: url("/login_layout/analyse_ico_o.svg");
}

body.body_dashboard a.nav-dashboard[href="/consumption?isAmm=false"],
body.body_invoice a.nav-invoice[href="/consumption?isAmm=false"],
body.body_consumption a.nav-consumption[href="/consumption?isAmm=false"],
body.body_energyprofile a.nav-energyprofile[href="/consumption?isAmm=false"],
body.body_advices a.nav-advices[href="/consumption?isAmm=false"],
body.body_simu a.nav-simu[href="/consumption?isAmm=false"],
body.body_metigate a.nav-metigate[href="/consumption?isAmm=false"] {
    background-image: url("/login_layout/analyse_ico_o.svg");
}

body.body_dashboard a.nav-dashboard[href="/energyprofile"],
body.body_invoice a.nav-invoice[href="/energyprofile"],
body.body_consumption a.nav-consumption[href="/energyprofile"],
body.body_energyprofile a.nav-energyprofile[href="/energyprofile"],
body.body_advices a.nav-advices[href="/energyprofile"],
body.body_simu a.nav-simu[href="/energyprofile"],
body.body_metigate a.nav-metigate[href="/energyprofile"] {
    background-image: url("/login_layout/usage_ico_o.svg");
}

body.body_dashboard a.nav-dashboard[href="/advices"],
body.body_invoice a.nav-invoice[href="/advices"],
body.body_consumption a.nav-consumption[href="/advices"],
body.body_energyprofile a.nav-energyprofile[href="/advices"],
body.body_advices a.nav-advices[href="/advices"],
body.body_simu a.nav-simu[href="/advices"],
body.body_metigate a.nav-metigate[href="/advices"] {
    background-image: url("/login_layout/ecoguide_ico_o.svg");
}

body.body_dashboard a.nav-dashboard[href="/simu"],
body.body_invoice a.nav-invoice[href="/simu"],
body.body_consumption a.nav-consumption[href="/simu"],
body.body_energyprofile a.nav-energyprofile[href="/simu"],
body.body_advices a.nav-advices[href="/simu"],
body.body_simu a.nav-simu[href="/simu"],
body.body_metigate a.nav-metigate[href="/simu"] {
    background-image: url("/login_layout/simulateur_ico_o.svg");
}

body.body_dashboard a.nav-dashboard[href="/weather"],
body.body_invoice a.nav-invoice[href="/weather"],
body.body_consumption a.nav-consumption[href="/weather"],
body.body_energyprofile a.nav-energyprofile[href="/weather"],
body.body_advices a.nav-advices[href="/weather"],
body.body_simu a.nav-simu[href="/weather"],
body.body_metigate a.nav-metigate[href="/weather"] {
    background-image: url("/login_layout/meteo_ico_o.svg");
}

body::after {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
    z-index: -1;
    content: url("/login_layout/meteo_ico_o.svg") url("/login_layout/simulateur_ico_o.svg") url("/login_layout/ecoguide_ico_o.svg") url("/login_layout/usage_ico_o.svg") url("/login_layout/analyse_ico_o.svg") url("/login_layout/facture_ico_o.svg") url("/login_layout/dashboard_ico_o.svg") url("/login_layout/contact_ico_o.svg");
}

.footer {
    background-color: #272A34;
    padding: 30px 0px;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    font-size: 16px;
    width: 100%;
}

footer {
    display: flex;
}

footer p {
    margin: 0;
    color: #ffffff;
}

footer a {
    color: #ffffff;
}

footer a.none {
    display: none;
}

footer .logo_info {
    display: flex;
    flex-grow: 2;
    flex-basis: 0;
}

footer .logo {
    background-image: url(/specific/logo/logo.png);
    background-repeat: no-repeat;
    width: 100px;
    background-size: 100%;
    margin: 0px;
}

footer .info {
    margin-left: 50px;
}

footer .links {
    flex-grow: 1;
    flex-basis: 0;
}

footer .right {
    flex-grow: 2;
    flex-basis: 0;
    text-align: right;
    position: relative;
    margin-right: 10px;
}

footer .right .socials a {
    display: inline-block;
    height: 50px;
    width: 50px;
    background-image: url("/assets/common/facebook_ico.svg");
    background-size: 42px;
    background-repeat: no-repeat;
    background-position: center center;
}

footer .right .socials a.facebook {
    background-image: url("/assets/common/facebook_ico.svg");
}

footer .right .socials a.twitter {
    background-image: url("/assets/common/twitter_ico.svg");
}

footer .right .socials a.linkedin {
    background-image: url("/assets/common/linkedin_ico.svg");
}

footer .right .socials a.instagram {
    background-image: url("/assets/common/instagram_ico.svg");
}

footer .right .socials a.facebook:hover {
    background-image: url("/assets/common/facebook_ico_o.svg");
}

footer .right .socials a.twitter:hover {
    background-image: url("/assets/common/twitter_ico_o.svg");
}

footer .right .socials a.linkedin:hover {
    background-image: url("/assets/common/linkedin_ico_o.svg");
}

footer .right .socials a.instagram:hover {
    background-image: url("/assets/common/instagram_ico_o.svg");
}

footer .right .language_footer {
    height: 40px;
    margin: 5px;
}

footer .right .language_footer a {
    height: 30px;
    display: inline-block;
    margin: 5px;
}

footer .right .language_footer .flag_footer img {
    height: 30px;
    width: 40px;
}

footer .right .legals {
    margin: 5px;
    bottom: 0px;
    right: 0px;
}

footer .close {
    color: white;
}

footer .close:hover {
    color: white;
}

footer #modal_close {
    color: #3065A9;
}

footer .modal-body a {
    color: black;
}

footer .modal-body p {
    color: black;
}

/* footer .right .socials a i.fab { font-size: 30px; margin: 15px 5px; } */
@media screen and (min-width: 990px) {
    .footer {
        padding-left: 240px;
    }
}

@media screen and (max-width: 767px) {
    .footer {
        display: none;
    }
}

@media screen and (max-width: 991px) and (min-width: 767px) {
    .footer {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media screen and (min-width: 1200px) {
    footer {
        width: auto;
        margin-left: auto;
        margin-right: auto;
        padding: 15px;
    }
}

.body_topnav.nav_desktop {
    min-height: 70px;
    border: 0;
    background-color: #F7F7F7;
    margin: 0px;
    border-radius: 0px;
}

.body_topnav.nav_desktop.navbar-inverse .navbar-right > li > a {
    box-shadow: none;
    text-align: left;
    font-size: 16px;
    background-image: url("/assets/common/user_ico.svg");
    background-size: 42px;
    background-repeat: no-repeat;
    background-position: left 15px;
    height: 70px;
    padding-left: 50px;
    padding-top: 15px;
    padding-bottom: 0px;
    background-color: unset;
}

.body_topnav.nav_desktop.navbar-inverse .navbar-right > li > a > span {
    color: #000000;
}

.body_topnav.nav_desktop.navbar-inverse .navbar-right > li > a > span.nav-first-name {
    color: #9d9d9d;
}

.body_topnav.nav_desktop.navbar-inverse .navbar-nav > .open > a:focus, .body_topnav.nav_desktop.navbar-inverse .navbar-nav > .open > a:hover {
    background-color: unset;
}

.body_topnav.nav_desktop.navbar-inverse .navbar-nav > li > a {
    color: #9d9d9d;
}

.body_topnav.nav_desktop.navbar-inverse .navbar-nav > li > a:focus, .body_topnav.nav_desktop.navbar-inverse .navbar-nav > li > a:hover {
    color: #9d9d9d;
}

.body_topnav.nav_desktop.navbar-inverse .navbar-nav > .open > a {
    color: #9d9d9d;
}

.body_topnav.nav_desktop.navbar-inverse .navbar-nav > .open > a:focus, .body_topnav.nav_desktop.navbar-inverse .navbar-nav > .open > a:hover {
    color: #9d9d9d;
}

/* .nav_desktop.navbar-inverse .navbar-right>li>a:hover,
  .nav_desktop.navbar-inverse .navbar-right>li>a:focus {
    color: #9d9d9d
  } */
@media screen and (min-width: 768px) {
    .nav_mobile {
        display: none;
    }

    .navbar-brand {
        background-image: url("/specific/logo/logo.png");
        background-size: 50px;
        height: 69px;
        width: 190px;
        background-repeat: no-repeat;
        margin-left: auto;
        margin-right: auto;
        background-position: 25px 15px;
    }
}

@media screen and (max-width: 767px) {
    .nav_desktop {
        display: none;
    }
}

/*
 * File: _variables.scss
 * File Created: Thursday, 14th February 2019 11:36:06 am
 * Author: Paul Mazeau (paul.mazeau@gridpocket.com)
 * -----
 * Last Modified: Thursday, 1st August 2019 4:37:35 pm
 * Modified By: Pierre Bonny (pierre.bonny@gridpocket.com>)
 * -----
 * GridPocket SAS Copyright (C) 2019 All Rights Reserved
 * This source is property of GridPocket SAS.
 * Please email contact@gridpocket.com for more information.
 */
.loader-3-dots {
    top: calc(50% - 130px);
    left: calc(50% + 110px);
    transform: translate(-50%, -50%);
    position: absolute;
    z-index: 8;
    -webkit-animation-name: fadeIn;
    -moz-animation-name: fadeIn;
    -ms-animation-name: fadeIn;
    -o-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    -ms-animation-iteration-count: 1;
    -o-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-duration: 0.4s;
    -moz-animation-duration: 0.4s;
    -ms-animation-duration: 0.4s;
    -o-animation-duration: 0.4s;
    animation-duration: 0.4s;
    -webkit-animation-delay: 0s;
    -moz-animation-delay: 0s;
    -ms-animation-delay: 0s;
    -o-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-timing-function: ease-in-out;
    -ms-animation-timing-function: ease-in-out;
    -o-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -ms-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
}

@media screen and (max-width: 991px) and (min-width: 768px) {
    .loader-3-dots {
        left: calc(50% + 60px);
    }
}

.loader-3-dots.inModal {
    top: calc(50% - 20px);
    left: calc(50% - 25px);
}

.loader-3-dots .desktop-loader {
    display: flex;
    flex-direction: row;
}

.loader-3-dots .desktop-loader .dot {
    background-color: #376EB3;
    width: 12px;
    height: 12px;
    margin: 0 5px;
    border-radius: 100px;
    animation: 2s dot3Bouncing ease-in-out infinite;
}

.loader-3-dots .desktop-loader .dot:nth-of-type(2) {
    animation: 2s dot3Bouncing ease-in-out infinite;
    animation-delay: .1s;
}

.loader-3-dots .desktop-loader .dot:last-of-type {
    animation: 2s dot3Bouncing ease-in-out infinite;
    animation-delay: .2s;
}

.loader-3-dots .mobile-loader {
    display: none;
}

@media screen and (max-width: 768px) and (min-width: 480px) {
    .loader-3-dots {
        left: calc(50%);
    }

    .loader-3-dots .desktop-loader {
        display: none;
    }

    .loader-3-dots .mobile-loader {
        display: flex;
        justify-content: flex-end;
        width: 100%;
        position: relative;
        align-items: center;
    }

    .loader-3-dots .mobile-loader .dot {
        background-color: #376EB3;
        margin: 0 5px;
        border-radius: 100px;
        transform-origin: center;
    }

    .loader-3-dots .mobile-loader .dot-1 {
        position: relative;
        width: 40px;
        height: 40px;
        animation: dot2Bouncing1 2s infinite;
        background-color: rgba(55, 110, 179, 0.2);
    }

    .loader-3-dots .mobile-loader .dot-2 {
        position: absolute;
        width: 15px;
        height: 15px;
        right: 32.5px;
        animation: dot2Bouncing2 2s infinite;
        background-color: #376EB3;
    }
}

@media screen and (max-width: 480px) {
    .loader-3-dots {
        left: calc(50%);
    }

    .loader-3-dots .desktop-loader {
        display: none;
    }

    .loader-3-dots .mobile-loader {
        display: flex;
        justify-content: flex-end;
        width: 100%;
        position: relative;
        align-items: center;
    }

    .loader-3-dots .mobile-loader .dot {
        background-color: #376EB3;
        margin: 0 5px;
        border-radius: 100px;
        transform-origin: center;
    }

    .loader-3-dots .mobile-loader .dot-1 {
        position: relative;
        width: 40px;
        height: 40px;
        animation: dot2Bouncing1 2s infinite;
        background-color: rgba(55, 110, 179, 0.2);
    }

    .loader-3-dots .mobile-loader .dot-2 {
        position: absolute;
        width: 15px;
        height: 15px;
        right: 27px;
        animation: dot2Bouncing2 2s infinite;
        background-color: #376EB3;
    }
}

@keyframes dot3Bouncing {
    0% {
        transform: translateY(0px);
    }
    25% {
        transform: translateY(5px);
    }
    50% {
        transform: translateY(-5px);
    }
    75% {
        transform: translateY(5px);
    }
    100% {
        transform: translateY(0px);
    }
}

@keyframes dot2Bouncing1 {
    0% {
        transform: scale(0);
    }
    40% {
        transform: scale(1);
    }
    100% {
        transform: scale(0);
    }
}

@keyframes dot2Bouncing2 {
    0% {
        transform: scale(0);
    }
    20% {
        transform: scale(1.2);
    }
    23% {
        transform: scale(0.9);
    }
    26% {
        transform: scale(1.1);
    }
    29% {
        transform: scale(0.95);
    }
    32% {
        transform: scale(1);
    }
    100% {
        transform: scale(0);
    }
}

#loading {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: fixed;
    display: block;
    opacity: 0.7;
    background-color: #fff;
    z-index: 99;
    text-align: center;
}

.body_account .public_page .restore_information {
    text-align: left;
    margin: 20px;
    font-size: 14px;
}

.body_account .pds_input {
    margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
    .body_account .public_page .public_left_bloc.account_bloc {
        padding: 20px 20px 20px;
    }

    .body_account .public_page .introduction_bloc {
        display: none;
    }
}

.body_init .public_page.init .public_left_bloc, .body_init .public_page.init .introduction_bloc {
    padding: 20px;
}

.body_init .public_page.init .public_left_bloc h1 + p {
    font-size: 14px;
    line-height: normal;
    text-transform: initial;
    margin-bottom: 5px;
    color: #666;
}

.body_init .introduction_bloc img {
    max-width: 90%;
}

@media screen and (min-width: 768px) {
    .body_init .public_page.init .public_left_bloc {
        padding: 30px 40px 40px;
    }

    .body_init .public_page.init .introduction_bloc {
        padding: 30px 40px 40px;
    }

    .body_init .public_page.init .introduction_bloc p {
        display: block;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        max-width: calc(100% - 60px);
    }
}

.body_cgu .public_left_bloc {
    width: 100% !important;
    height: auto !important;
}

.body_cgu .cgu_content {
    height: 340px;
    overflow: auto;
    margin-bottom: 10px;
}

.body_cgu .cgu_content p, .body_cgu .cgu_content ul {
    padding-right: 8px;
}

.body_cgu .accept-cgu {
    z-index: 1;
    text-align: right;
}

.body_cgu #btn-scrolldown {
    width: 40px;
    padding: 0;
}

.body_cgu .wrapper {
    z-index: 3;
    position: relative;
    cursor: not-allowed;
}

.body_cgu .efacture-alert, .body_cgu .internetAccount-alert {
    padding: 15px;
}

.body_cgu button.btn-disabled-cgu {
    z-index: 5;
    pointer-events: none;
    color: darkgrey !important;
}

.body_cgu #btn-cgu {
    width: auto;
    margin-top: 0px;
    margin-bottom: 0px;
}

.body_cgu .disabled.btn, .body_cgu [disabled].btn, .body_cgu fieldset[disabled].btn {
    opacity: 1;
}

.body_cgu i#loading-icon {
    color: #000;
    position: absolute;
    z-index: 999;
    top: 50%;
    left: 50%;
    font-size: 100px;
    margin-top: -50px;
    margin-left: -50px;
}

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

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

@-ms-keyframes pulse {

.body_cgu

0
%
{
    -ms-transform: scale(1.1)
;
}
.body_cgu

50
%
{
    -ms-transform: scale(0.8)
;
}
.body_cgu

100
%
{
    -ms-transform: scale(1.1)
;
}
}

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

.body_cgu i#scroll-icon {
    position: absolute;
    cursor: pointer;
    right: 30px;
    bottom: 30%;
    -moz-animation: pulse 2s linear infinite;
    -webkit-animation: pulse 2s linear infinite;
    -ms-animation: pulse 2s linear infinite;
    animation: pulse 2s linear infinite;
}

@media screen and (max-width: 991px) {
    .body_cgu i#scroll-icon {
        cursor: pointer;
        right: 25px;
        bottom: 18%;
    }
}

.body_cgu #efacture-msg {
    color: #376fb3;
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 20px;
}

.body_cgu #efacture-checkbox:disabled {
    color: #d2d1d1;
    border: 1px solid #d2d1d1;
}

.body_cgu #efacture-checkbox:disabled::before {
    color: #d2d1d1;
    border: 1px solid #d2d1d1;
}

.body_public {
    padding-top: 0 !important;
    background-color: #3f6ab6;
    color: #666;
    font-family: 'Open Sans', sans-serif;
    background-image: url(/specific/background/main_bg.png);
    background-size: cover;
    background-position: center center;
    height: 100vh;
    background-repeat: no-repeat;
    /*====================
          GLOBAL
  ===================*/
    /*====================================
          checkboxes style override
  ====================================*/
    /*====================
          BLOC
  ===================*/
    /* Public left Bloc */
    /* Introduction_bloc */
    /* Introduction slider */
    /*====================
          LINKS
  ===================*/
    /*== FORMS ==*/
    /* Icons */
}

.body_public footer div a .logo_smeg {
    width: 100px;
    cursor: pointer;
}

.body_public .btn.btn-primary {
    height: 50px;
    border-radius: 25px;
    font-family: "Roboto", sans-serif;
    font-weight: normal;
    font-size: 16px;
    color: white;
    line-height: 19px;
}

.body_public .exclamation-circle-icon {
    margin-right: 5px;
    width: 18px;
}

.body_public .rounded-check-ico {
    margin-right: 5px;
    width: 18px;
}

.body_public .error-p {
    color: #C83257;
    display: none;
    font-family: "Roboto", sans-serif;
    font-size: 12px;
    text-align: left;
    line-height: 14px;
    font-weight: normal;
}

.body_public .success_msg {
    color: #4BB543;
    display: none;
    font-family: "Roboto", sans-serif;
    font-size: 12px;
    text-align: center;
    line-height: 14px;
    font-weight: normal;
    margin-bottom: 20px;
}

.body_public .content_bloc {
    box-shadow: none;
    padding: 0px;
    margin-bottom: 0;
}

.body_public input[type=checkbox] {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    height: 16px;
    width: 16px;
    background: #fff;
    border: 1px solid #888888;
    border-radius: 3px;
    margin-left: -30px !important;
    margin-top: -1px !important;
    cursor: pointer;
}

.body_public input[type="checkbox"]:checked::before {
    font-family: 'Font Awesome 5 Free';
    content: '\f00c';
    display: block;
    color: #888888;
    font-size: 13px;
    position: absolute;
    font-weight: 900;
}

.body_public .public_page {
    padding-top: 100px;
}

.body_public .public_page .content_bloc {
    background-color: #ffffff;
    width: 1030px;
    max-width: 100%;
    margin: 0 auto;
    font-size: 0;
    position: relative;
    margin-bottom: 50px;
    padding: 0px;
}

.body_public .public_page .content_bloc .shadow_box {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    -webkit-box-shadow: 10px 10px 18px 0px rgba(0, 0, 0, 0.35);
    -moz-box-shadow: 10px 10px 18px 0px rgba(0, 0, 0, 0.35);
    box-shadow: 10px 10px 18px 0px rgba(0, 0, 0, 0.35);
}

.body_public .public_page .content_bloc .decoration {
    background-color: #fff;
    opacity: .5;
    height: 100%;
    width: calc(100% - 60px);
    position: absolute;
    top: 0;
    left: 30px;
    transform: rotate(178deg);
    z-index: 1;
}

.body_public .public_page .public_left_bloc {
    display: inline-block;
    background-color: #fff;
    vertical-align: top;
    width: 55%;
    height: 406px;
    padding: 30px 80px 20px;
    font-size: 14px;
    position: relative;
    z-index: 3;
}

.body_public .public_page .public_left_bloc h1 {
    font-size: 24px;
    margin-top: 0;
    margin-bottom: 30px;
    font-weight: normal;
    line-height: 30px;
    font-family: "Roboto", sans-serif;
}

.body_public .public_page .public_left_bloc button {
    width: 100%;
    margin-top: 15px;
    margin-bottom: 15px;
}

.body_public .public_page .public_left_bloc .lost_password, .body_public .public_page .public_left_bloc .go-back-to-signin {
    text-align: right;
}

.body_public .public_page .public_left_bloc .lost_password a, .body_public .public_page .public_left_bloc .go-back-to-signin a {
    font-family: "Roboto", sans-serif;
    font-size: 12px;
    color: #888888;
    text-align: right;
    line-height: 14px;
    font-weight: normal;
    margin-right: 5px;
}

.body_public .public_page .public_left_bloc .create_account_link {
    display: inline-block;
    text-align: center;
    display: block;
    font-family: 'Open Sans';
    font-size: 16px;
    color: #376eb3;
    text-align: center;
    line-height: 22px;
    font-weight: normal;
    cursor: pointer;
}

.body_public .public_page .introduction_bloc {
    background-color: rgba(255, 255, 255, 0.9);
    display: inline-block;
    vertical-align: top;
    width: 45%;
    height: 406px;
    padding: 20px 0 0;
    font-size: 18px;
    text-align: center;
    /*background-image: url(/login_layout/introduction_bg.jpg);*/
    background-size: cover;
    background-position: right bottom;
    position: relative;
    z-index: 3;
}

.body_public .public_page .introduction_bloc .main_logo {
    height: 60px;
    max-width: 100%;
    display: block;
    margin: 0 auto;
    top: 50%;
    margin-top: -30px;
}

.body_public .public_page .introduction_bloc h2 {
    color: #C83257;
    font-size: 22px;
    margin-bottom: 70px;
    margin-left: 15px;
    margin-right: 15px;
    min-height: 75px;
}

.body_public .public_page footer {
    width: 1030px;
    max-width: 100%;
    margin: 0 auto;
    margin-bottom: 30px;
    font-size: 0;
}

.body_public .public_page footer .smeg {
    display: inline-block;
    vertical-align: bottom;
    width: 50%;
}

.body_public .public_page footer .smeg a:hover {
    opacity: .7;
    transition: .3s;
}

.body_public .public_page footer .gridpocket {
    display: inline-block;
    vertical-align: bottom;
    width: 100%;
    font-size: 14px;
    text-align: center;
}

.body_public .public_page footer .gridpocket p {
    margin-bottom: 0;
    color: #fff;
}

.body_public .public_page footer .gridpocket p a {
    color: #fff;
    font-weight: bold;
}

.body_public .public_page footer .gridpocket p a:hover {
    text-decoration: none;
    opacity: .7;
    transition: 0.3s;
}

@media screen and (max-width: 1199px) {
    .body_public .public_page {
        padding-top: 100px;
    }

    .body_public .public_page .content_bloc {
        margin-bottom: 50px;
    }

    .body_public .public_page .public_left_bloc {
        height: 376px;
    }

    .body_public .public_page .introduction_bloc {
        height: 400px;
    }
}

@media screen and (max-width: 991px) {
    .body_public .btn.btn-lg {
        font-size: 16px;
        font-weight: 600;
    }

    .body_public .public_page .public_left_bloc {
        height: 500px;
        padding: 30px 30px 0;
    }

    .body_public .public_page .introduction_bloc {
        padding: 50px 30px 0;
    }

    .body_public .public_page .introduction_bloc h2 {
        margin-bottom: 100px;
    }
}

@media screen and (max-width: 767px) {
    .body_public .public_page {
        padding-top: 10px;
    }

    .body_public .public_page .public_left_bloc {
        width: 100%;
        height: auto;
        padding: 20px;
    }

    .body_public .public_page .introduction_bloc {
        width: 100%;
        height: auto;
        padding: 10px 20px;
    }

    .body_public .public_page .introduction_bloc .main_logo, .body_public .public_page .introduction_bloc h2 {
        margin-bottom: 10px;
    }
}

.body_public .quote_bloc .item {
    position: relative;
    font-size: 15px;
}

.body_public .quote_bloc .item:before {
    content: '';
    display: block;
    width: 67px;
    height: 67px;
    position: absolute;
    top: 0;
    left: 0;
}

.body_public .quote_bloc .slider {
    margin-bottom: 20px;
}

.body_public .quote_bloc .slider .slick-arrow {
    visibility: hidden;
}

.body_public .quote_bloc .slider .slick-dots li {
    margin: 0 2px;
}

.body_public .quote_bloc .slider .slick-dots li button::before {
    opacity: 1;
    color: #ccc;
    font-size: 13px;
}

.body_public .quote_bloc .slider .slick-dots li.slick-active button::before {
    color: #C83257;
}

.body_public .link:hover {
    text-decoration: none;
}

.body_public .link:focus {
    outline: none;
    text-decoration: none;
}

.body_public .link_primary {
    color: #C83257;
    font-size: 18px;
    font-weight: 600;
}

.body_public .link_primary:hover {
    color: #e55753;
}

.body_public .link_secondary {
    color: #376EB3;
    font-size: 18px;
    font-weight: 600;
}

.body_public .link_secondary:hover {
    color: #0090b2;
}

.body_public .link_primary .info_ico {
    display: inline-block;
    margin-left: 12px;
    background-color: white;
    width: 33px;
    height: 33px;
    vertical-align: middle;
    border-radius: 50%;
    position: relative;
}

.body_public .link_primary .info_ico:before {
    content: '';
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(/login_layout/info_ico.svg);
    background-image: url(/login_layout/info_ico.svg);
    background-size: 8px;
    background-repeat: no-repeat;
    background-position: center center;
}

.body_public .link_secondary .user_ico:before {
    content: '';
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(/login_layout/user_white_ico.svg);
    background-image: url(/login_layout/user_white_ico.svg);
    background-size: 15px;
    background-repeat: no-repeat;
    background-position: center center;
}

.body_public .form-control {
    height: 50px;
    font-size: 16px;
    font-family: "Roboto", sans-serif;
    color: #707070;
    border: none;
    background-color: #EFEFEF;
    border-radius: 25px;
    padding-left: 60px;
    box-shadow: none;
}

.body_public .form-control:hover, .body_public .form-control:focus {
    box-shadow: none;
}

.body_public .has-error.form-control {
    border: 1px solid #a94442;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}

.body_public .field-icon {
    float: right;
    margin-right: 21px;
    margin-top: -36px;
    position: relative;
    z-index: 2;
    width: 30px;
    height: 25px;
    cursor: pointer;
}

.body_public .user-input {
    position: relative;
}

.body_public .user-input:before {
    content: "";
    position: absolute;
    left: 22px;
    top: 0;
    bottom: 0;
    width: 20px;
    background: url(/login_layout/user_grey_ico.svg) center/contain no-repeat;
}

.body_public .password-input {
    position: relative;
    background-color: #EFEFEF;
    border-radius: 25px;
}

.body_public .password-input:before {
    content: "";
    position: absolute;
    left: 22px;
    top: 0;
    bottom: 0;
    width: 20px;
    background: url(/login_layout/locked_grey_ico.svg) center/contain no-repeat;
}

/*.body_public .password-input input.locked_ico {
    width: 85%;
}*/

.body_restore .public_page .public_left_bloc .fa-spinner.hidden {
    display: none;
}

.body_restore .restore_title {
    text-align: center;
}

@media screen and (max-width: 767px) {
    .body_restore .public_page .public_left_bloc.restore_bloc {
        padding: 20px 20px 20px;
    }

    .body_restore .public_page .introduction_bloc {
        display: none;
    }
}

.body_restore .btn.btn-primary.go_back_ico {
    padding-right: 5%;
    padding-left: 5%;
    margin-top: 95%;
    margin-bottom: 0;
    margin-left: auto;
    margin-right: auto;
}

.body_restore .btn.btn-primary.go_back_ico.none {
    display: none;
}

.body_restore .btn.btn-primary.go_back_ico:after {
    content: '';
    display: block;
    width: 20px;
    height: 25px;
    position: absolute;
    top: 55%;
    background-size: 15px;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-image: url(/login_layout/nav_left.png);
}

background-image:
url

(
/login_layout/ nav_left.png

)
;
}

.body_dashboard {
    /*-Page Accueil-Compteur Dépenses--*/
    /* Contract bloc */
    /* Slick slider */
    /* container */
    /* white bloc */
    /* Define row */
}

.body_dashboard .body_content .dashboard_view {
    background-color: #ebe8e4;
}

.body_dashboard footer {
    width: auto;
}

.body_dashboard .dashboard_content > .line_bloc, .body_dashboard .dashboard_mobile .content_bloc {
    display: none;
}

.body_dashboard .btn.btn-primary {
    height: unset;
}

.body_dashboard .dashboard_mobile .welcome_sentence_bloc {
    margin: 0;
    font-size: 18px;
    text-align: center;
}

.body_dashboard .dashboard_mobile .content_bloc {
    background-color: #fff;
    padding: 15px;
    margin-bottom: 15px;
}

.body_dashboard .dashboard_mobile h1, .body_dashboard .dashboard_mobile h2 {
    font-size: 18px;
    font-weight: 400;
    color: #376EB3;
    text-align: center;
    margin-top: 5px;
    margin-bottom: 15px;
}

.body_dashboard .dashboard_mobile .contract_bloc h4 {
    margin: 0;
    font-size: 13px;
    font-style: italic;
    color: #376EB3;
    font-weight: 600;
    margin-bottom: 3px;
}

.body_dashboard .dashboard_mobile .contract_bloc p {
    margin: 0;
    font-size: 13px;
    line-height: 1.3;
}

.body_dashboard .dashboard_mobile .contract_bloc .calendar_btn {
    width: 100%;
    text-align: left;
    position: relative;
    padding: 8px 10px 8px 43px;
    margin-top: 10px;
}

.body_dashboard .dashboard_mobile .contract_bloc .calendar_btn:before {
    content: '';
    display: block;
    width: 28px;
    height: 28px;
    background-image: url(/login_layout/calendar_ico.svg);
    background-image: url(/login_layout/calendar_ico.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    position: absolute;
    left: 8px;
    top: 50%;
    transform: translateY(-50%);
}

.body_dashboard .dashboard_mobile .contract_bloc .calendar_btn .caret {
    display: none;
}

.body_dashboard .slick-slider .item {
    position: relative;
    margin-bottom: 15px;
}

.body_dashboard .slick-slider .item time {
    display: block;
    font-size: 13px;
    text-align: left;
    color: #C83257;
    font-weight: bold;
    font-style: italic;
    margin-bottom: 5px;
}

.body_dashboard .slick-slider .item .summary {
    font-size: 13px;
    line-height: 1.3;
    margin: 0;
}

.body_dashboard .slick-slider .item:before {
    content: '';
    display: block;
    width: 67px;
    height: 67px;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url(/login_layout/quotes.svg);
    background-image: url(/login_layout/quotes.svg);
    background-position: top -10px left 0;
    opacity: .1;
}

.body_dashboard .slick-slider .slick-arrow {
    visibility: hidden;
}

.body_dashboard .slick-slider .slick-dots li {
    margin: 0 2px;
}

.body_dashboard .slick-slider .slick-dots li button::before {
    opacity: 1;
    color: #fff;
    font-size: 13px;
}

.body_dashboard .slick-slider .slick-dots li.slick-active button::before {
    color: #C83257;
}

.body_dashboard .arguments_bloc .slick-slider .item {
    position: relative;
    margin-bottom: 0px;
}

.body_dashboard .arguments_bloc .slider {
    width: auto;
    margin: 30px auto;
}

.body_dashboard .dashboard_desktop .dashboard_content {
    text-align: center;
    margin-bottom: 30px;
    font-size: 0;
}

.body_dashboard .dashboard_desktop .dashboard_content .white_bloc {
    background-color: white;
}

.body_dashboard .dashboard_desktop .dashboard_content .line_bloc {
    display: flex;
    margin-bottom: 30px;
}

.body_dashboard .dashboard_desktop .dashboard_content .padding-content {
    padding-right: 25px;
    padding-left: 25px;
    margin-right: auto;
    margin-left: auto;
    max-width: 1360px;
}

@media screen and (max-width: 991px) {
    .body_dashboard .dashboard_desktop .dashboard_content h2 {
        font-size: 20px;
    }
}

.body_signin {
    /*====================
  GLOBAL
  ===================*/
    /*====================
  BUTTONS
  ===================*/
    /*========================
  LOGIN PAGE
  =========================*/
    /*========================
  LOGIN MOBILE
  =========================*/
}

.body_signin .content_bloc {
    box-shadow: none;
    padding: 0px;
    margin-bottom: 0;
}

.body_signin .create-ico {
    width: 33px;
    margin-left: 10px;
}

.body_signin .clearfix.lost_password {
    float: right;
}

.body_signin .checkbox {
    font-family: "Roboto", sans-serif;
    font-size: 12px;
    color: #888888;
    line-height: 14px;
    font-weight: normal;
    margin-top: 18px;
    margin-left: 15px;
}

.body_signin .btn.btn-primary.plug_ico {
    padding-right: 65px;
    padding-left: 65px;
}

.body_signin .btn.btn-primary.plug_ico:after {
    content: '';
    display: block;
    width: 33px;
    height: 33px;
    position: absolute;
    right: 9px;
    top: 50%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-image: url(/login_layout/plug_circle_ico.svg);
}

background-image:
url

(
/login_layout/ plug_circle_ico.svg

)
;
}
.body_signin .btn.btn-primary.plug_ico .fa-pulse {
    margin-left: 5px;
}

.body_signin .btn.btn-primary.user_ico {
    padding-right: 65px;
    padding-left: 65px;
}

.body_signin .btn.btn-primary.user_ico:after {
    content: '';
    display: block;
    width: 33px;
    height: 33px;
    position: absolute;
    right: 9px;
    top: 50%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-image: url(/login_layout/user_circle_ico.svg);
}

background-image:
url

(
/login_layout/ user_circle_ico.svg

)
;
}
.body_signin .btn.btn-secondary.plug_ico {
    padding-right: 65px;
    padding-left: 65px;
}

.body_signin .btn.btn-secondary.plug_ico:after {
    content: '';
    display: block;
    width: 33px;
    height: 33px;
    position: absolute;
    right: 9px;
    top: 50%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-image: url(/login_layout/plug_circle_ico.svg);
}

background-image:
url

(
/login_layout/ plug_circle_ico.svg

)
;
}
.body_signin .btn.btn-secondary.user_ico {
    padding-right: 65px;
    padding-left: 65px;
}

.body_signin .btn.btn-secondary.user_ico:after {
    content: '';
    display: block;
    width: 33px;
    height: 33px;
    position: absolute;
    right: 9px;
    top: 50%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-image: url(/login_layout/user_circle_ico.svg);
}

background-image:
url

(
/login_layout/ user_circle_ico.svg

)
;
}
@media screen and (max-width: 480px) {
    .body_signin {
        background-position: right -100px bottom -200px;
        min-height: 500px;
    }

    .body_signin .body_public {
        background-position: right center;
    }

    .body_signin .login_page {
        display: none;
    }
}

.body_signin .dot {
    cursor: pointer;
    height: 10px;
    width: 10px;
    margin: 0 10px;
    background-color: #bbb;
    border-radius: 50%;
    display: inline-block;
    transition: background-color 0.6s ease;
}

.body_signin .dot.active, .body_signin .dot:hover {
    background-color: #C83257;
}

.body_signin .signin-form {
    padding-bottom: 25px;
    margin-bottom: 35px;
    border-bottom: solid 1px lightgrey;
}

.body_signin #master_consumption {
    color: #c83257;
    text-transform: uppercase;
    margin-bottom: 50px;
    font-size: 26px;
    text-align: center;
    font-weight: normal;
}

@media (max-width: 991px) {
    .body_signin #master_consumption {
        font-size: 18px;
    }
}

@media (max-width: 832px) {
    .body_signin #master_consumption {
        font-size: 16px;
    }
}

.body_signin .login_mobile {
    display: none;
    width: 100%;
    overflow: hidden;
    height: 100%;
    color: #fff;
    text-align: center;
}

.body_signin .login_mobile header {
    padding: 40px 0 0;
    margin-bottom: 70px;
    position: relative;
    padding: 30px 0 0;
    margin-bottom: 90px;
}

.body_signin .login_mobile header .content_bloc {
    position: relative;
    z-index: 2;
}

.body_signin .login_mobile header .content_bloc .mobile_label {
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    color: #707070;
    text-align: center;
    line-height: 19px;
}

.body_signin .login_mobile header .main_logo {
    margin-bottom: 15px;
}

.body_signin .login_mobile header h2 {
    color: #c83257;
    text-transform: uppercase;
    margin-bottom: 50px;
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    text-align: center;
    line-height: 19px;
    font-weight: normal;
}

.body_signin .login_mobile header .rounded_border {
    background-image: url(/specific/background/introduction_bg.jpg);
    background-size: cover;
    background-position: right bottom;
    height: 320px;
    bottom: -50px;
    width: 170%;
    border-bottom-left-radius: 60%;
    border-bottom-right-radius: 60%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}

.body_signin .login_mobile .main_content {
    padding: 0 30px 15px;
}

.body_signin .login_mobile .main_content .blockquote {
    font-size: 16px;
    margin-bottom: 10px;
    min-height: 75px;
}

.body_signin .login_mobile .main_content button {
    width: 100%;
}

.body_signin .login_mobile .main_content .register_account {
    margin-top: 10px;
}

.body_signin .login_mobile .main_content .register_account .link_primary {
    color: #fff;
    font-size: 14px;
}

.body_signin .login_mobile footer {
    width: 1030px;
    max-width: 100%;
    margin: 0 auto;
    font-size: 0;
    position: absolute;
    bottom: 0;
    padding: 0 30px 15px;
}

.body_signin .login_mobile footer .smeg {
    display: inline-block;
    vertical-align: bottom;
    width: 30%;
    text-align: left;
}

.body_signin .login_mobile footer .smeg img {
    width: 50px;
}

.body_signin .login_mobile footer .gridpocket {
    display: inline-block;
    vertical-align: bottom;
    width: 70%;
    font-size: 14px;
    text-align: right;
}

.body_signin .login_mobile footer .gridpocket p {
    margin-bottom: 0;
    color: #fff;
}

.body_signin .modal_login .modal-dialog {
    margin: 0;
    min-height: 100%;
    height: auto;
    display: absolute;
}

.body_signin .modal_login .modal-content {
    color: #666;
    min-height: 100%;
    height: auto;
    text-align: center;
    border: none;
    border-radius: 0;
    position: absolute;
    width: 100%;
}

.body_signin .modal_login .modal-content .modal-header {
    color: #C83257;
    text-transform: uppercase;
    font-size: 18px;
    border: none;
    padding-top: 35px;
}

.body_signin .modal_login .modal-content .modal-header .main_logo {
    margin-bottom: 15px;
}

.body_signin .modal_login .modal-content form button {
    width: 100%;
    margin-bottom: 15px;
    margin-top: 30px;
}

.body_signin .modal_login .modal-content .lost_password {
    text-align: right;
}

.body_signin .modal_login .modal-content .lost_password a {
    color: #666;
}

.body_signin .modal_login .close {
    opacity: 1;
    background-color: red;
    height: 33px;
    width: 33px;
    border-radius: 50%;
    background-image: linear-gradient(to right, #783cd5, #376EB3);
    position: absolute;
    right: 15px;
    top: 15px;
}

.body_signin .modal_login .close:after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url(/login_layout/cancel_white_ico.svg);
    background-image: url(/login_layout/cancel_white_ico.svg);
    background-size: 16px;
    background-repeat: no-repeat;
    background-position: center center;
}

.body_signin .login_mobile .main_content .quote_bloc {
    min-height: 100px;
}

.body_signin .login_mobile .modal_login .modal-content .create_account_btn {
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 20px 16px;
    position: absolute;
}

.body_signin .footer_mobile {
    font-size: 0;
    padding: 0 30px 15px;
    display: none;
    width: 100%;
    height: 80px;
}

.body_signin .footer_mobile .smeg {
    display: inline-block;
    vertical-align: bottom;
    width: 30%;
    text-align: left;
}

.body_signin .footer_mobile .smeg img {
    width: 50px;
}

.body_signin .footer_mobile .gridpocket {
    display: inline-block;
    vertical-align: bottom;
    width: 70%;
    font-size: 14px;
    text-align: right;
}

.body_signin .footer_mobile .gridpocket p {
    margin-bottom: 0;
    color: #fff;
}

.body_signin body.apple-ios.modal-open {
    position: fixed;
    width: 100%;
}

@media screen and (max-width: 480px) {
    .body_signin .body_public {
        position: relative;
        min-height: 100vh;
        padding-bottom: 80px;
        height: auto;
    }

    .body_signin .footer_mobile, .body_signin .login_mobile {
        display: block;
    }
}

@media only screen and (max-device-width: 991px) and (orientation: landscape) {
    .body_signin .modal-backdrop {
        display: none;
    }

    .body_signin .modal-backdrop.in {
        opacity: 0;
    }

    .body_signin body.modal-open {
        overflow: auto;
    }
}

@media screen and (max-width: 310px) {
    .body_signin .login_mobile .main_content .quote_bloc {
        display: none;
    }
}

.body_signin i#loading-icon {
    color: #000;
    position: absolute;
    z-index: 999;
    top: 50%;
    left: 50%;
    font-size: 100px;
    margin-top: -50px;
    margin-left: -50px;
}

/*
 * File: _registration.scss
 * File Created: Wednesday, 6th May 2020 11:25:59 am
 * Author: Sébastien PAQUIS (sebastien.paquis@gridpocket.com)
 * -----
 * Last Modified: Wednesday, 6th May 2020 11:30:34 am
 * Modified By: Sébastien PAQUIS (sebastien.paquis@gridpocket.com>)
 * -----
 * GridPocket SAS Copyright (C) 2020 All Rights Reserved
 * This source is property of GridPocket SAS.
 * Please email contact@gridpocket.com for more information.
 */
.registration-left-content {
    height: 100%;
    display: flex;
    flex-direction: column;
    flex: 1;
    justify-content: center;
}

.registration-left-content h1 {
    font-size: 24px !important;
}

/*
 * File: _struct.scss
 * File Created: Friday, 22nd March 2019 8:40:30 am
 * Author: Pierre Bonny (pierre.bonny@gridpocket.com)
 * -----
 * Last Modified: Tuesday, 20th August 2019 5:10:08 pm
 * Modified By: Julien Blacas (julien.blacas@gridpocket.com>)
 * -----
 * GridPocket SAS Copyright (C) 2019 All Rights Reserved
 * This source is property of GridPocket SAS.
 * Please email contact@gridpocket.com for more information.
 */
/*
* Base structure
*/
/* Move down content because we have a fixed navbar that is 50px tall + full height background */
/* UPDATE: 26/12/2019 Seems to be mobile view only and for legacy */
@media screen and (max-width: 767px) {
    .body_survey, .body_simu, .body_profile {
        padding-top: 45px;
        display: flex;
        flex-direction: column;
        min-height: 100vh;
    }
}

/*
* Fix for Slicky slider and Flex
*/
* {
    min-width: 0;
    /*min-height: 0;*/
}

.container {
    width: 100% !important;
}

/*
* Content
*/
.body_content {
    display: flex;
}

.body_content .main {
    background-color: #fff;
    flex: 1;
    width: 100%;
}

.col-centered {
    float: none;
    margin: 0 auto;
}

/*
* Main
*/
/*
* Placeholder dashboard ideas
*/
/*.placeholders { margin-bottom: 30px; text-align: center; }
.placeholders h4 { margin-bottom: 0; }
.placeholder { margin-bottom: 20px; }
.placeholder img { display: inline-block; border-radius: 50%; }
*/
/*
 * File: _energyprofile.scss
 * File Created: Wednesday, 31st July 2019 10:37:59 am
 * Author: Romain Devalle (romain.devalle@gridpocket.com)
 * -----
 * Last Modified: Wednesday, 18th September 2019 1:58:06 pm
 * Modified By: Victor Houzé (victor.houze@gridpocket.com>)
 * -----
 * GridPocket SAS Copyright (C) 2019 All Rights Reserved
 * This source is property of GridPocket SAS.
 * Please email contact@gridpocket.com for more information.
 */
.body_energyprofile {
    -webkit-animation-name: fadeIn;
    -moz-animation-name: fadeIn;
    -ms-animation-name: fadeIn;
    -o-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    -ms-animation-iteration-count: 1;
    -o-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-duration: 0.4s;
    -moz-animation-duration: 0.4s;
    -ms-animation-duration: 0.4s;
    -o-animation-duration: 0.4s;
    animation-duration: 0.4s;
    -webkit-animation-delay: 0s;
    -moz-animation-delay: 0s;
    -ms-animation-delay: 0s;
    -o-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-timing-function: ease-in-out;
    -ms-animation-timing-function: ease-in-out;
    -o-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -ms-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    flex: 1;
}

.body_energyprofile .loading {
    left: 50%;
    position: absolute;
    top: 400px;
}

.body_energyprofile #back_survey {
    border-radius: 40px;
    margin-top: 60px;
    margin-bottom: 30px;
}

.body_energyprofile .energyProfile_view {
    background-color: #F7F7F7;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.body_energyprofile .energyProfile_view .welcome_sentence_bloc {
    margin-top: unset;
}

.body_energyprofile .energyProfile_view .welcome_sentence_bloc:first-letter {
    text-transform: capitalize;
}

.body_energyprofile .energyProfile_view .period_switch button {
    height: 25px;
    padding-top: 3px;
}

.body_energyprofile .energyProfile_view .subtitle {
    font-size: 16px;
    font-weight: 400;
}

.body_energyprofile .energyProfile_view .energy_profile_graph_title {
    margin-top: 50px;
    color: #3065A9;
    font-size: 20px;
}

.body_energyprofile .energyProfile_view #energy_profile_graph {
    height: 400px;
    width: 100%;
}

.body_energyprofile .energyProfile_view .circle-charts-container {
    min-height: 50px;
}

.body_energyprofile .energyProfile_view .circle-charts-container .circle-usage {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.body_energyprofile .energyProfile_view .circle-charts-container .circle-usage .circle-container {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin-top: 20px;
}

.body_energyprofile .energyProfile_view .circle-charts-container .circle-usage .circle-container .circular-chart {
    width: 125px;
    margin-top: inherit;
}

.body_energyprofile .energyProfile_view .circle-charts-container .circle-usage .circle-container .circular-chart .circle {
    stroke: #2C94F1;
    fill: none;
    stroke-width: 2;
    stroke-linecap: round;
    animation: progress 1s ease-out forwards;
}

.body_energyprofile .energyProfile_view .circle-charts-container .circle-usage .circle-container .circular-chart .circle-bg {
    fill: white;
    stroke: #eee;
    stroke-width: 3;
}

@keyframes progress {
    0% {
        stroke-dasharray: 0 100;
    }
}

.body_energyprofile .energyProfile_view .circle-charts-container .circle-usage .circle-container .usage-icon {
    position: absolute;
    width: 35%;
}

.body_energyprofile .energyProfile_view .circle-charts-container .circle-usage .circle-container .usage-pourcentage {
    position: absolute;
    color: #3065A9;
    font-size: 18px;
    top: calc(50% + 25px);
}

.body_energyprofile .energyProfile_view .circle-charts-container .circle-usage .usage-title {
    margin-top: 15px;
    font-size: 15px;
    color: #666;
    white-space: nowrap;
}

@media screen and (max-width: 820px) and (min-width: 767px) {
    .body_energyprofile .energyProfile_view .circle-charts-container .circle-usage .usage-title {
        font-size: 14px;
    }
}

@media screen and (max-width: 465px) {
    .body_energyprofile .energyProfile_view .circle-charts-container .circle-usage .usage-title {
        font-size: 13px;
    }
}

.body_energyprofile .energyProfile_view .circle-charts-container .circle-usage .usage-conso {
    color: #376EB3;
    font-size: 13px;
}

.modal_rib .close {
    opacity: 1;
}

.modal_rib .success_msg {
    color: #4BB543;
    display: none;
    font-family: "Roboto", sans-serif;
    font-size: 12px;
    text-align: left;
    line-height: 14px;
    font-weight: normal;
    margin-bottom: 20px;
}

.modal_rib .success_msg .rounded-check-ico {
    margin-right: 5px;
    width: 18px;
}

.modal_rib .modal-header {
    padding: 0;
}

.modal_rib .modal-header .mobile_modal_navbar {
    display: flex;
    align-items: flex-end;
    position: relative;
    background-image: linear-gradient(to right, #7D51D9, #376EB3);
    box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.15);
    height: 90px;
}

@media screen and (min-width: 768px) {
    .modal_rib .modal-header .mobile_modal_navbar {
        display: none;
    }
}

.modal_rib .modal-header .mobile_modal_navbar .nav_arrow {
    height: 30px;
    width: 30px;
    position: absolute;
    left: 5px;
    bottom: 15px;
    cursor: pointer;
}

.modal_rib .modal-header .mobile_modal_navbar .nav_text {
    font-size: 18px;
    color: white;
    margin-left: 40px;
    margin-bottom: 20px;
}

.modal_rib .fa-spinner {
    margin-left: 5px;
}

.modal_rib .modal_title {
    text-align: center;
    font-size: 44px;
    color: #376EB3;
}

.modal_rib .subtitle {
    text-align: center;
    font-size: 26px !important;
}

@media screen and (max-width: 767px) {
    .modal_rib .subtitle {
        font-size: 16px !important;
    }
}

@media screen and (min-width: 768px) {
    .modal_rib {
        opacity: 0;
        -webkit-transition: opacity .3s;
        -o-transition: opacity .3s;
        transition: opacity .3s;
    }

    .modal_rib.in {
        opacity: 1;
    }
}

#modalRibSelection {
    padding: 0 !important;
    line-height: normal;
}

#modalRibSelection .loader-3-dots {
    top: calc(100% + 50px);
    left: 50%;
}

#modalRibSelection > .modal-dialog {
    margin: 0;
    background-color: #EFEFEF;
    width: 100%;
    min-height: 100vh;
}

#modalRibSelection > .modal-dialog > .modal-content {
    min-height: 100vh;
    background-color: #EFEFEF;
}

@media screen and (max-width: 767px) {
    #modalRibSelection > .modal-dialog > .modal-content {
        margin-top: 0;
        border-radius: 0;
    }
}

#modalRibSelection > .modal-dialog > .modal-content > .modal-header {
    border-bottom: none;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body button {
    border-radius: 32px;
    margin-left: 10px;
}

@media screen and (max-width: 767px) {
    #modalRibSelection > .modal-dialog > .modal-content .modal-body button {
        margin: 0 10px;
        width: calc(100% - 20px);
    }
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    padding-top: 50px;
}

@media screen and (min-width: 1860px) {
    #modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items {
        width: 1804px;
    }
}

@media screen and (max-width: 1859px) {
    #modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items {
        width: 1354px;
    }
}

@media screen and (max-width: 1401px) {
    #modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items {
        width: 904px;
    }
}

@media screen and (max-width: 956px) {
    #modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items {
        width: 452px;
    }
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items .rib_creation {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    top: 0;
    z-index: 8000;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items .rib_view {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 431px;
    margin: 10px 10px;
    font-size: 14px;
    line-height: 20px;
    padding: 20px 35px;
    cursor: pointer;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items .rib_view:hover {
    background-color: #376EB3 !important;
    color: white !important;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items .rib_view:hover .strong_div {
    color: white !important;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items .rib_view.active {
    background-color: #376EB3;
    color: white;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items .rib_view.active .strong_div {
    color: white;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items .rib_view:not(.active) {
    background-color: white;
    color: black;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items .rib_view:not(.active) .strong_div {
    color: #376EB3;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items .rib_view .row.heading {
    margin-bottom: 15px;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items_mobile {
    display: flex;
    flex-direction: column;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items_mobile .rib_view_mobile {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 10px;
    font-size: 14px;
    line-height: 20px;
    padding: 20px 35px;
    cursor: pointer;
    border-radius: 5px;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items_mobile .rib_view_mobile:hover {
    background-color: #376EB3 !important;
    color: white !important;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items_mobile .rib_view_mobile:hover .strong_div {
    color: white !important;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items_mobile .rib_view_mobile.active {
    background-color: #376EB3;
    color: white;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items_mobile .rib_view_mobile.active .strong_div {
    color: white;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items_mobile .rib_view_mobile:not(.active) {
    background-color: white;
    color: black;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items_mobile .rib_view_mobile:not(.active) .strong_div {
    color: #376EB3;
}

#modalRibSelection > .modal-dialog > .modal-content .modal-body .ribs_items_mobile .rib_view_mobile .row.heading {
    margin-bottom: 15px;
}

#modalRibCreation {
    padding: 0 !important;
    line-height: normal;
}

#modalRibCreation > .modal-dialog {
    width: 100%;
    margin: 0;
    height: 100%;
    background-color: white;
    overflow: hidden;
}

#modalRibCreation > .modal-dialog > .modal-content {
    height: 100%;
    background-color: white;
}

@media screen and (max-width: 767px) {
    #modalRibCreation > .modal-dialog > .modal-content {
        margin-top: 0;
    }
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-header {
    border-bottom: none;
}

@media screen and (max-width: 767px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-header .subtitle {
        display: none;
    }
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-header .go_back_arrow {
    width: 60px;
    position: absolute;
    cursor: pointer;
    height: 60px;
    border-radius: 50%;
    background-image: url(/assets/common/arrow_blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body {
    margin-right: auto !important;
    margin-left: auto !important;
    max-width: 40%;
}

@media screen and (min-width: 768px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-body {
        min-width: 700px;
    }
}

@media screen and (max-width: 767px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-body {
        max-width: 90%;
        padding: 0;
    }
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body .paddedInput {
    padding: 0 10px;
}

@media screen and (min-width: 768px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-body .alert {
        font-size: 12px;
    }
}

@media screen and (max-width: 767px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-body .alert {
        font-size: 10px;
        padding: 10px;
    }
}

@media screen and (max-width: 768px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-body #invalidIbanAlertError {
        font-size: 10px;
    }
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body button {
    border-radius: 32px;
    position: absolute;
}

@media screen and (min-width: 768px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-body button {
        left: 50%;
        bottom: -50px;
        transform: translateX(-50%);
    }
}

@media screen and (max-width: 767px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-body button {
        bottom: 40px;
        left: 16px;
        width: calc(100% - 32px);
        height: 50px;
    }
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form {
    width: 100%;
    height: calc(100vh - 90px);
    display: flex;
    position: relative;
    flex-direction: column;
    justify-content: center;
    /* The checkbox_container */
    /* Hide the browser's default checkbox */
    /* Create a custom checkbox */
    /* On mouse-over, add a grey background color */
    /* When the checkbox is checked, add a blue background */
    /* Create the checkmark/indicator (hidden when not checked) */
    /* Show the checkmark when checked */
    /* Style the checkmark/indicator */
}

@media screen and (max-width: 767px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-body form {
        justify-content: flex-start;
    }
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .form_body {
    transform: translateY(-20%);
    position: relative;
}

@media screen and (max-width: 767px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-body form .form_body {
        height: calc(100vh - 180px);
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        padding-top: 15px;
        padding-bottom: 15px;
        transform: unset;
    }
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .form_body .iban_div {
    display: flex;
    width: 100%;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .form_body .iban_div .iban_inputs {
    margin-right: 5px;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .error-p {
    margin-bottom: 10px;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .success_msg {
    margin-bottom: 10px;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form p {
    color: black;
    font-size: 16px;
    text-align: left;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form input {
    margin-bottom: 20px;
    border-top: none;
    border-right: none;
    border-left: none;
    padding: 0;
    font-size: 18px;
}

@media screen and (max-width: 767px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-body form input {
        font-size: 14px;
    }
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form input::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: lightgrey;
    opacity: 1;
    /* Firefox */
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .checkbox_container {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 12px;
    font-weight: normal;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-align: justify;
}

@media screen and (max-width: 767px) {
    #modalRibCreation > .modal-dialog > .modal-content > .modal-body form .checkbox_container {
        font-size: 10px;
    }
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .checkbox_container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .checkbox_container:hover input ~ .checkmark {
    background-color: #ccc;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .checkbox_container input:checked ~ .checkmark {
    background-color: #C83257;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .checkbox_container input:checked ~ .checkmark:after {
    display: block;
}

#modalRibCreation > .modal-dialog > .modal-content > .modal-body form .checkbox_container .checkmark:after {
    left: 9px;
    top: 2px;
    width: 8px;
    height: 16px;
    border: solid white;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

#modalRibValidation {
    padding: 0 !important;
    line-height: normal;
}

#modalRibValidation > .modal-dialog {
    width: 100%;
    margin: 0;
    height: 100%;
    background-color: #EFEFEF;
    overflow: hidden;
}

#modalRibValidation > .modal-dialog > .modal-content {
    height: 100%;
    background-color: #EFEFEF;
    margin-top: 0;
}

@media screen and (max-width: 767px) {
    #modalRibValidation > .modal-dialog > .modal-content {
        background-color: white;
    }
}

@media screen and (max-width: 767px) {
    #modalRibValidation > .modal-dialog > .modal-content {
        margin-top: 0;
    }
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-header {
    border-bottom: none;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-header .go_back_arrow {
    width: 60px;
    position: absolute;
    cursor: pointer;
    height: 60px;
    border-radius: 50%;
    background-image: url(/assets/common/arrow_blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 10vh;
    /* The checkbox_container */
    /* Hide the browser's default checkbox */
    /* Create a custom checkbox */
    /* On mouse-over, add a grey background color */
    /* When the checkbox is checked, add a blue background */
    /* Create the checkmark/indicator (hidden when not checked) */
    /* Show the checkmark when checked */
    /* Style the checkmark/indicator */
}

@media screen and (max-width: 767px) {
    #modalRibValidation > .modal-dialog > .modal-content > .modal-body {
        height: calc(100vh - 180px);
        padding: 0;
    }
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body button {
    border-radius: 32px;
}

@media screen and (max-width: 767px) {
    #modalRibValidation > .modal-dialog > .modal-content > .modal-body button {
        height: 50px;
        width: 95%;
        position: absolute;
        bottom: 0;
    }
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .error-p {
    margin-bottom: 10px;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .success_msg {
    margin-bottom: 10px;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view {
    width: 60%;
    max-width: 821px;
    min-width: 320px;
    margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
    #modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view {
        width: 100%;
    }
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .rib_view {
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 10px 10px;
    font-size: 20px;
    line-height: 26px;
    padding: 20px 35px;
    background-color: white;
}

@media screen and (max-width: 767px) {
    #modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .rib_view {
        font-size: 15px;
    }
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .rib_view .row.heading {
    margin-bottom: 15px;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .rib_view .row.heading .strong_div {
    color: #376EB3;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .rib_view_mobile {
    font-size: 16px;
    background-color: #F7F7F7;
    height: 165px;
    width: 100%;
    text-align: center;
    margin-top: 20vh;
    padding-top: 35px;
    color: black;
    position: relative;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .rib_view_mobile .strong_div {
    font-size: 18px;
    color: #376EB3;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .rib_view_mobile .owner {
    margin-bottom: 20px;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .rib_view_mobile .signature_date {
    font-size: 12px;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .rib_view_mobile .triangle {
    border-left: solid 21px transparent;
    border-top: solid 18px #F7F7F7;
    border-right: solid 21px transparent;
    border-bottom: solid 18px transparent;
    height: 20px;
    position: absolute;
    left: calc(50% - 20px);
    bottom: -36px;
    width: 20px;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .mandate_preview {
    color: #376EB3;
    font-size: 16px;
    margin-right: 10px;
    text-align: right;
    display: flex;
    justify-content: flex-end;
}

@media screen and (max-width: 767px) {
    #modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .mandate_preview {
        justify-content: center;
        margin-top: 30px;
    }
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .mandate_preview .download_mandate {
    cursor: pointer;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .mandate_preview .download_mandate p {
    display: inline-block;
    margin-right: 10px;
    transform: translateY(25%);
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .main_view .mandate_preview .download_mandate img {
    width: 27px;
    height: 27px;
    display: inline-block;
    background-image: linear-gradient(to right, #D04E4B, #C83257);
    border-radius: 50%;
    padding: 5px;
    cursor: pointer;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body p {
    font-size: 16px;
    margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
    #modalRibValidation > .modal-dialog > .modal-content > .modal-body .validation_warning {
        text-align: center;
        font-size: 12px;
        max-width: 225px;
    }
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body input {
    margin-bottom: 20px;
    border-top: none;
    border-right: none;
    border-left: none;
    padding: 0;
    font-size: 18px;
}

@media screen and (max-width: 767px) {
    #modalRibValidation > .modal-dialog > .modal-content > .modal-body input {
        font-size: 14px;
    }
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body input::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: lightgrey;
    opacity: 1;
    /* Firefox */
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body #signatureMissing {
    margin: 20px 0 -15px 0;
    text-align: center;
}

@media screen and (max-width: 767px) {
    #modalRibValidation > .modal-dialog > .modal-content > .modal-body #signatureMissing {
        padding: 20px 35px;
        text-align: center;
        margin: 10px 10px -40px 10px;
    }
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .checkbox_container {
    display: block;
    position: relative;
    padding: 20px 35px;
    cursor: pointer;
    margin: 10px;
    font-size: 14px;
    font-weight: normal;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-align: justify;
}

@media screen and (max-width: 767px) {
    #modalRibValidation > .modal-dialog > .modal-content > .modal-body .checkbox_container {
        font-size: 12px;
        margin: 20px;
    }
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .checkbox_container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .checkmark {
    position: absolute;
    top: calc(50% - 25px);
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #ccc;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .checkbox_container:hover input ~ .checkmark {
    background-color: #ccc;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .checkbox_container input:checked ~ .checkmark {
    background-color: #C83257;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .checkbox_container input:checked ~ .checkmark:after {
    display: block;
}

#modalRibValidation > .modal-dialog > .modal-content > .modal-body .checkbox_container .checkmark:after {
    left: 9px;
    top: 2px;
    width: 8px;
    height: 16px;
    border: solid white;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.body_invoice {
    background-color: #EFEFEF;
}

.body_invoice .popover_debit_help {
    background-color: white;
    border-color: white;
    color: #666666;
}

.body_invoice .popover_debit_help .arrow::after {
    border-top-color: white !important;
}

.body_invoice .popover_debit_help .arrow {
    border-top-color: white !important;
}

.body_invoice .body_topnav.nav_desktop {
    background-color: #F7F7F7;
}

.body_invoice h2 {
    font-size: 15px;
}

.body_invoice footer {
    width: auto;
}

.body_invoice .padding-content {
    padding-right: 25px;
    padding-left: 25px;
    margin-right: auto;
    margin-left: auto;
}

.body_invoice .main.contracts_view {
    background-color: #EFEFEF;
    font-family: "Roboto", sans-serif;
}

.body_invoice .main.contracts_view .darkFilter {
    height: 100%;
    width: 100%;
    z-index: 10;
    background-color: rgba(0, 0, 0, 0.5);
    position: fixed;
    top: 45px;
}

.body_invoice .main.contracts_view .darkFilter .close_dark_filter {
    position: absolute;
    width: 33px;
    height: 33px;
    right: 20px;
    top: 20px;
}

.body_invoice .main.contracts_view .titleContainer {
    width: 100%;
    margin-bottom: 99px;
}

.body_invoice .main.contracts_view .titleContainer.sliders {
    margin-bottom: 49px;
}

.body_invoice .main.contracts_view .titleContainer.sliderAll {
    margin-bottom: 0;
}

.body_invoice .main.contracts_view .titleContainer .title {
    margin: 0;
    text-align: center;
    font-size: 44px;
    color: #376EB3;
    margin-top: 50px;
}

.body_invoice .main.contracts_view .no_display {
    text-align: center;
    margin-top: 100px;
}

.body_invoice .main.contracts_view .invoices-display-header {
    padding-right: 15px;
    margin-bottom: 30px;
    width: 100%;
}

.body_invoice .main.contracts_view .invoices-display-header .head {
    color: #3065A9;
    font-family: "Roboto", sans-serif;
    font-size: 26px;
}

.body_invoice .main.contracts_view .invoices-display-header .head.allFactures {
    padding-bottom: 38px;
}

.body_invoice .main.contracts_view .invoices-display-header .head.none {
    display: none;
}

.body_invoice .main.contracts_view .invoices-display-header .infos {
    margin-bottom: 20px;
}

.body_invoice .main.contracts_view .invoices-display-header .infos .numbers {
    font-size: 26px;
    color: #3065A9;
    line-height: 32px;
    align-items: center;
    margin-bottom: 8px;
}

.body_invoice .main.contracts_view .invoices-display-header .infos .numbers .contract_number {
    white-space: nowrap;
    font-weight: bold;
    padding-right: 26.5px;
    border-right: solid 1px #666666;
}

@media screen and (max-width: 991px) {
    .body_invoice .main.contracts_view .invoices-display-header .infos .numbers .contract_number {
        border-right: solid 0px #666666;
    }
}

.body_invoice .main.contracts_view .invoices-display-header .infos .numbers .edl_number {
    white-space: nowrap;
    padding-left: 26.5px;
}

.body_invoice .main.contracts_view .invoices-display-header .infos .numbers .user_roles {
    padding-left: 26.5px;
    padding-right: 26.5px;
    border-right: solid 1px #666666;
}

.body_invoice .main.contracts_view .invoices-display-header .infos .numbers .energy_type_ico {
    margin-right: 5px;
    width: 23px;
}

.body_invoice .main.contracts_view .invoices-display-header .infos .numbers .user_role {
    font-size: 16px;
    color: #666666;
}

.body_invoice .main.contracts_view .invoices-display-header .infos .right_details {
    display: flex;
    font-size: 16px;
    color: #666666;
    line-height: 19px;
    width: 100%;
    justify-content: flex-start;
}

.body_invoice .main.contracts_view .invoices-display-header .infos .right_details .address {
    padding-right: 10px;
    border-right: solid 1px #666666;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: calc(100% - 202px);
    overflow: hidden;
    position: relative;
    padding-left: 28px;
}

.body_invoice .main.contracts_view .invoices-display-header .infos .right_details .address:before {
    content: "";
    position: absolute;
    left: 0px;
    top: 0;
    bottom: 0;
    width: 23px;
    background: url(/assets/invoice/place.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header .infos .right_details .active_date {
    padding-left: 10px;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn {
    margin-bottom: 10px;
    cursor: pointer;
    padding-right: 12px;
    padding-left: 35px;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn.btn-primary {
    margin-right: 5px;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn.btn-primary.debit:before {
    content: "";
    position: absolute;
    left: 8px;
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/transfert_white.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn.btn-primary.efacture:before {
    content: "";
    position: absolute;
    left: 10px;
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/efacture.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn.btn-secondary {
    margin-right: 5px;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn.btn-tertiary {
    margin-right: 5px;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn.btn-tertiary.modify_address:before {
    content: "";
    position: absolute;
    left: 10px;
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/edit.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn.btn-tertiary.manage_rib:before {
    content: "";
    position: absolute;
    left: 10px;
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/transfert.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .more-infos {
    height: 22px;
    margin-right: 5px;
    cursor: pointer;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn {
    cursor: pointer;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn.btn-primary {
    color: #fff;
    background-size: 300% 100%;
    background-image: linear-gradient(to right, #D04F4B, #C83257, #C83257, #E55753, #E55753);
    border-radius: 20px;
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn.btn-secondary {
    color: #fff;
    background-size: 300% 100%;
    background-image: linear-gradient(to right, #6B5BCC, #446EAF);
}

.body_invoice .main.contracts_view .invoices-display-header .buttons .btn.btn-tertiary {
    color: #3065A9;
    background-color: white;
    border-radius: 20px;
}

.body_invoice .main.contracts_view .main-view {
    animation-duration: 0.8s;
    border-bottom: solid 1px rgba(102, 102, 102, 0.15);
}

.body_invoice .main.contracts_view .main-view.all {
    border-bottom: none;
}

.body_invoice .main.contracts_view .slider-invoices {
    max-width: 1360px;
    padding-bottom: 50px;
    padding-top: 50px;
    margin: 0 auto;
    padding-left: 15px;
    padding-right: 15px;
}

.body_invoice .main.contracts_view .slider-invoices.none {
    display: none;
}

.body_invoice .main.contracts_view .slider-invoices.bgWhite {
    padding-top: 131px;
}

.body_invoice .main.contracts_view .slider-invoices .controls {
    margin: 0;
    padding: 0;
    list-style: none;
    left: -30px;
    right: 0;
    background: transparent;
    top: calc(50% - 40px);
    display: flex;
    position: absolute;
    justify-content: space-between;
    z-index: 3;
}

.body_invoice .main.contracts_view .slider-invoices .controls:focus {
    outline: none;
}

.body_invoice .main.contracts_view .slider-invoices .controls .arrow.none {
    display: none;
}

.body_invoice .main.contracts_view .slider-invoices .controls.all {
    right: 230px;
}

.body_invoice .main.contracts_view .slider-invoices .cont {
    width: 230px;
    position: relative;
    margin-left: 15px;
}

.body_invoice .main.contracts_view .slider-invoices .cont.none {
    display: none;
}

.body_invoice .main.contracts_view .slider-invoices .cont .unpayed-total {
    margin-top: -6px;
    display: flex;
    flex-direction: column;
    font-size: 26px;
    font-family: "Roboto", sans-serif;
    color: #3065A9;
}

.body_invoice .main.contracts_view .slider-invoices .cont .unpayed-total .amount {
    font-weight: bold;
    white-space: nowrap;
}

.body_invoice .main.contracts_view .slider-invoices .cont .unpayed-total .btn.btn-tertiary {
    background-color: white;
    border-radius: 20px;
    color: #3065A9;
    margin-right: 5px;
    cursor: pointer;
    padding-right: 12px;
    padding-left: 37px;
    font-size: 16px;
}

.body_invoice .main.contracts_view .slider-invoices .cont .unpayed-total .btn.btn-tertiary.pay_integrality_cb:before {
    content: "";
    position: absolute;
    left: 15px;
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/cb.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .slider-invoices .cont .unpayed-total .pay_integrality_cb + .tooltip > .tooltip-arrow {
    border-bottom-color: #3065A9;
}

.body_invoice .main.contracts_view .slider-invoices .cont .unpayed-total .pay_integrality_cb + .tooltip > .tooltip-inner {
    background-color: #F7F7F7;
    border: solid 1px #3065A9;
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    color: #3065A9;
}

.body_invoice .main.contracts_view .slider-invoices .cont .unpayed-total .pay_integrality_cb + .tooltip {
    opacity: 1.0;
}

.body_invoice .main.contracts_view .slider-invoices .all_container {
    display: flex;
}

@media screen and (min-width: 1510px) {
    .body_invoice .main.contracts_view .slider-invoices .all_container .tns-outer {
        width: calc((100% / 4) * 3);
    }
}

@media screen and (max-width: 1510px) {
    .body_invoice .main.contracts_view .slider-invoices .all_container .tns-outer {
        width: calc((100% / 3) * 2);
    }
}

@media screen and (max-width: 1199px) {
    .body_invoice .main.contracts_view .slider-invoices .all_container .tns-outer {
        width: calc(100% / 2);
    }
}

.body_invoice .main.contracts_view .slider-invoices .tns-outer {
    position: relative;
}

.body_invoice .main.contracts_view .slider-invoices .tns-outer .tns-controls {
    position: absolute;
    z-index: 10;
    width: 100%;
}

.body_invoice .main.contracts_view .slider-invoices .tns-outer .tns-controls button {
    height: 216px;
    width: 30px;
    position: absolute;
    background-color: transparent;
    border: none;
    padding: 0;
    background-size: 15px 24px;
    background-repeat: no-repeat;
    background-position: center center;
}

.body_invoice .main.contracts_view .slider-invoices .tns-outer .tns-controls button.none {
    display: none;
}

.body_invoice .main.contracts_view .slider-invoices .tns-outer .tns-controls [data-controls="prev"] {
    background-image: url("/assets/invoice/nav_left.png");
    left: -15px;
}

.body_invoice .main.contracts_view .slider-invoices .tns-outer .tns-controls [data-controls="next"] {
    background-image: url("/assets/invoice/nav_right.png");
    right: -15px;
}

.body_invoice .main.contracts_view .slider-invoices .all_container .tns-controls button {
    height: 312px;
}

.body_invoice .main.contracts_view .slider-invoices-display {
    display: flex;
    position: relative;
}

.body_invoice .main.contracts_view .slider-invoices-display .subdiv {
    padding: 0 15px;
    padding-top: 15px;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.body_invoice .main.contracts_view .contract-div {
    max-width: 1360px;
    width: 100%;
    padding-top: 52px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    flex-flow: wrap;
    margin-bottom: 160px;
}

.body_invoice .main.contracts_view .contract-div.centered {
    margin: 0 auto;
    padding: 0 15px;
}

.body_invoice .main.contracts_view .contract-div .subdiv {
    padding: 0 15px;
    display: inline-block;
    margin-bottom: 52px;
}

@media screen and (max-width: 1199px) {
    .body_invoice .main.contracts_view .contract-div .subdiv {
        width: calc(100% / 2);
    }
}

@media screen and (max-width: 1510px) and (min-width: 1199px) {
    .body_invoice .main.contracts_view .contract-div .subdiv {
        width: calc(100% / 3);
    }
}

@media screen and (min-width: 1510px) {
    .body_invoice .main.contracts_view .contract-div .subdiv {
        width: calc(100% / 4);
    }
}

.body_invoice .main.contracts_view .contract-div.none {
    display: none;
}

.body_invoice .main.contracts_view .invoice_view {
    position: relative;
    transition: .2s ease-in-out;
    border-bottom-left-radius: 7px;
    border-bottom-right-radius: 7px;
    line-height: normal;
}

.body_invoice .main.contracts_view .invoice_view .triangle {
    border-bottom: 34px solid transparent;
    border-right: 34px solid transparent;
    height: 0;
    width: 0;
    position: absolute;
}

.body_invoice .main.contracts_view .invoice_view .triangle.unpayed {
    border-left: 34px solid #D04E4B;
    border-top: 34px solid #D04E4B;
}

.body_invoice .main.contracts_view .invoice_view .triangle.unpayed_s {
    border-left: 34px solid #D04E4B;
    border-top: 34px solid #D04E4B;
}

.body_invoice .main.contracts_view .invoice_view .triangle.payed {
    border-left: 34px solid #7BD06B;
    border-top: 34px solid #7BD06B;
}

.body_invoice .main.contracts_view .invoice_view .triangle.pending {
    border-left: 34px solid #FF974B;
    border-top: 34px solid #FF974B;
}

.body_invoice .main.contracts_view .invoice_view.none {
    display: none;
}

.body_invoice .main.contracts_view .invoice_view:hover {
    cursor: pointer;
}

.body_invoice .main.contracts_view .invoice_view:hover .invoice_bottom_payed {
    border-top-color: #EFEFEF;
}

.body_invoice .main.contracts_view .invoice_view:hover .invoice_bottom_payed,
.body_invoice .main.contracts_view .invoice_view:hover .invoice_body {
    background-color: #F7F7F7;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body {
    transition: .2s ease-in-out;
    background-color: white;
    color: #666666;
    display: flex;
    flex-direction: column;
    padding-top: 29px;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .invoice_price {
    color: #3065A9;
    font-size: 26px;
    text-align: center;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .invoice_price .tax_sentence {
    font-size: 16px;
    vertical-align: baseline;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .invoice_price.bold {
    font-weight: bold;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .invoice_details {
    text-align: center;
    font-size: 16px;
    padding-bottom: 20px;
    padding-top: 20px;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .invoice_details.unpayed {
    padding-bottom: 20px;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .invoice_details.unpayed_s {
    padding-bottom: 20px;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .invoice_details.payed {
    padding-bottom: 40px;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .invoice_details.pending {
    padding-bottom: 37px;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .invoice_details .italic_details {
    font-style: italic;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .contract_details {
    font-size: 16px;
    padding-left: 20px;
    padding-top: 20px;
    padding-bottom: 20px;
    border-top: solid #F7F7F7 1px;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .contract_details .contract_details_position {
    position: relative;
    height: 17px;
    padding-bottom: 20px;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .contract_details .contract_details_position .addressText {
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 240px;
    overflow: hidden;
    display: inline-block;
    padding-left: 15px;
}

.body_invoice .main.contracts_view .invoice_view .invoice_body .contract_details .contract_details_position:before {
    content: "";
    position: absolute;
    left: -5px;
    top: 0;
    bottom: 0;
    width: 20px;
    height: 20px;
    background: url(/assets/invoice/place.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoice_view .invoice_bottom_unpayed {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 55px;
    background-size: 300% 100%;
    background-image: linear-gradient(to right, #D04F4B, #C83257, #C83257, #E55753, #E55753);
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 16px;
    color: white;
    position: relative;
}

.body_invoice .main.contracts_view .invoice_view .invoice_bottom_unpayed .fa-question-circle {
    position: absolute;
    top: 10px;
    right: 10px;
    margin-left: 80px;
    font-size: 24px;
    color: white;
}

.body_invoice .main.contracts_view .invoice_view .invoice_bottom_unpayed [class^="invoice_"] {
    color: #ffffff;
    font-weight: bold;
    font-size: 16px;
    position: relative;
    left: 12.5px;
}

.body_invoice .main.contracts_view .invoice_view .invoice_bottom_unpayed [class^="invoice_"][class$="debit"]:before {
    content: "";
    position: absolute;
    left: -30px;
    top: -2px;
    bottom: 0;
    width: 22px;
    height: 22px;
    background: url(/assets/invoice/transfert_white.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoice_view .invoice_bottom_payed {
    transition: .2s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: white;
    height: 55px;
    border-top: solid #F7F7F7 1px;
    color: #666666;
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: bold;
}

.body_invoice .main.contracts_view .invoice_view .invoice_bottom_pending {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 55px;
    background-color: #FF974B;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    margin-bottom: 5px;
    color: #ffffff;
    font-weight: bold;
    font-size: 16px;
}

.body_invoice .main.contracts_view .invoice_footer {
    display: flex;
    flex-direction: column;
    font-size: 14px;
    color: #666666;
}

.body_invoice .main.contracts_view .invoice_footer .pay_by_cb {
    position: relative;
    left: 25px;
    cursor: pointer;
    width: fit-content;
}

.body_invoice .main.contracts_view .invoice_footer .pay_by_cb:before {
    content: "";
    position: absolute;
    left: -25px;
    top: 0;
    bottom: 0;
    width: 20px;
    background: url(/assets/invoice/cb_grey.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoice_footer .flex_line {
    display: flex;
    justify-content: space-between;
}

.body_invoice .main.contracts_view .invoice_footer .flex_line .download_invoice {
    position: relative;
    left: 25px;
    cursor: pointer;
    width: fit-content;
}

.body_invoice .main.contracts_view .invoice_footer .flex_line .download_invoice .fa-spinner {
    margin-left: 2px;
}

.body_invoice .main.contracts_view .invoice_footer .flex_line .download_invoice:before {
    content: "";
    position: absolute;
    left: -25px;
    top: 0;
    bottom: 0;
    width: 20px;
    background: url(/assets/invoice/dl.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoice_footer .flex_line .label {
    color: #ffffff;
    font-size: 90%;
    border-radius: 0;
    font-weight: normal;
    background-image: linear-gradient(to right, #6B5BCC, #446EAF);
}

.body_invoice .main.contracts_view .payement_div {
    width: 100%;
    background-image: linear-gradient(to right, #7D51D9, #376EB3);
    position: fixed;
    bottom: 0;
    box-shadow: -5px -5px 20px 0px rgba(0, 0, 0, 0.16);
    z-index: 20;
}

.body_invoice .main.contracts_view .payement_div.small {
    padding: 31px 0;
}

.body_invoice .main.contracts_view .payement_div .total_div {
    display: flex;
    align-items: center;
    font-size: 16px;
    line-height: normal;
    justify-content: center;
    color: white;
}

.body_invoice .main.contracts_view .payement_div .total_div .total {
    font-weight: bold;
    margin-left: 3px;
}

.body_invoice .main.contracts_view .payement_div .button_div {
    display: flex;
    justify-content: center;
    margin-top: 10px;
}

.body_invoice .main.contracts_view .payement_div .button_div .btn.btn-tertiary {
    width: 80%;
    font-size: 14px;
}

.body_invoice .main.contracts_view .payement_div .button_div .btn.btn-tertiary.pay_integrality_cb:before {
    content: "";
    position: absolute;
    left: calc(50% - 105px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/cb.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .payement_div .button_div .btn.btn-tertiary.pay_by_cb:before {
    content: "";
    position: absolute;
    left: calc(50% - 105px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/cb.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .payement_div .btn {
    cursor: pointer;
}

.body_invoice .main.contracts_view .payement_div .btn.btn-primary {
    color: #fff;
    background-size: 300% 100%;
    background-image: linear-gradient(to right, #D04F4B, #C83257, #C83257, #E55753, #E55753);
    border-radius: 20px;
}

.body_invoice .main.contracts_view .payement_div .btn.btn-secondary {
    color: #fff;
    background-size: 300% 100%;
    background-image: linear-gradient(to right, #6B5BCC, #446EAF);
}

.body_invoice .main.contracts_view .payement_div .btn.btn-tertiary {
    color: #3065A9;
    background-color: white;
    border-radius: 20px;
}

.body_invoice .main.contracts_view .payement_div .buttons {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 31px 0;
}

.body_invoice .main.contracts_view .payement_div .buttons .infos_head {
    position: absolute;
    top: -78px;
    left: 15px;
    width: 100%;
    color: white;
    background-color: transparent;
    font-size: 14px;
}

.body_invoice .main.contracts_view .payement_div .buttons .infos_head .total {
    font-weight: bold;
}

.body_invoice .main.contracts_view .payement_div .buttons .btn {
    margin-bottom: 20px;
    width: 80%;
}

.body_invoice .main.contracts_view .payement_div .buttons .btn.pay_by_cb:before {
    content: "";
    position: absolute;
    left: calc(50% - 90px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/cb.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .payement_div .buttons .btn.debit:before {
    content: "";
    position: absolute;
    left: calc(50% - 97px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/transfert.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .payement_div .buttons .btn.download_invoice:before {
    content: "";
    position: absolute;
    left: calc(50% - 90px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/dl_blue.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .payement_div .buttons .btn.visualize_invoice:before {
    content: "";
    position: absolute;
    left: calc(50% - 90px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/login_layout/open_eye_blue.svg) center/contain no-repeat;
}

background:
url

(
/login_layout/ open_eye_blue.svg

)
center

/
contain no-repeat

;
}
.body_invoice .main.contracts_view .payement_div .buttons .btn.manage_rib:before {
    content: "";
    position: absolute;
    left: calc(50% - 75px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/transfert.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .payement_div .buttons .help_div {
    font-size: 14px;
    text-align: justify;
    width: 80%;
    color: white;
}

.body_invoice .main.contracts_view .all_invoices {
    padding-left: 16px;
    padding-right: 16px;
}

.body_invoice .main.contracts_view .all_invoices.payement {
    margin-bottom: 170px;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view_container {
    background-color: white;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view_container .infos {
    border-top: #F7F7F7 1px solid;
    padding: 8px 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-left: 15px;
    margin-bottom: 20px;
    font-size: 12px;
    color: #707070;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view_container .infos .numbers {
    display: flex;
    flex-wrap: wrap;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view_container .infos .numbers .spacer {
    margin: 0 5px;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view_container .infos .numbers .user_role {
    font-size: 16px;
    color: #666666;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view_container .infos .address {
    position: relative;
    padding-left: 15px;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view_container .infos .address:before {
    content: "";
    position: absolute;
    left: -5px;
    top: 0;
    bottom: 0;
    width: 20px;
    background: url(/assets/invoice/place.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view {
    display: flex;
    justify-content: space-between;
    padding: 15.15px 13px;
    background-color: white;
    margin-bottom: 10px;
    font-size: 14px;
    position: relative;
    line-height: normal;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view.slip {
    height: 69px;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .triangle {
    border-bottom: 9px solid transparent;
    border-right: 9px solid transparent;
    width: 0;
    height: 0;
    position: absolute;
    top: 0;
    left: 0;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .triangle.unpayed {
    border-left: 9px solid #D04E4B;
    border-top: 9px solid #D04E4B;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .triangle.unpayed_s {
    border-left: 9px solid #D04E4B;
    border-top: 9px solid #D04E4B;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .triangle.payed {
    border-left: 9px solid #7BD06B;
    border-top: 9px solid #7BD06B;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .triangle.pending {
    border-left: 9px solid #FF974B;
    border-top: 9px solid #FF974B;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .col {
    display: flex;
    flex-direction: column;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .col .label {
    background-image: linear-gradient(to right, #6B5BCC, #446EAF);
    padding: 5px 0;
    margin-top: 5px;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .col.right {
    text-align: right;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .col .details {
    color: #666666;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .col .details.colored {
    color: #3065A9;
    font-size: 16px;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .col .details.colored .tax_sentence {
    font-size: 12px;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .col .details.italic {
    font-style: italic;
}

.body_invoice .main.contracts_view .all_invoices .mobile_invoice_view .col .details.bold {
    font-weight: bold;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile {
    margin-top: 20px;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile.allContracts {
    position: relative;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .unpayed_head {
    padding-right: 16px;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .unpayed_head .btn.btn-tertiary.pay {
    width: 111px;
    color: #3065A9;
    background-color: white;
    border-radius: 20px;
    padding-right: 0;
    transform: translateY(-20%);
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .unpayed_head .btn.btn-tertiary.pay.pay:before {
    content: "";
    position: absolute;
    left: 15px;
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/cb.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .unpayed_head .btn.btn-tertiary.pay + .tooltip > .tooltip-arrow {
    border-bottom-color: #3065A9;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .unpayed_head .btn.btn-tertiary.pay + .tooltip > .tooltip-inner {
    background-color: white;
    border: solid 1px #3065A9;
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    color: #3065A9;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .unpayed_head .btn.btn-tertiary.pay + .tooltip {
    opacity: 1.0;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .title {
    margin-top: 0;
    text-align: unset;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .infos {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-left: 15px;
    margin-bottom: 20px;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .infos .numbers {
    display: flex;
    font-size: 16px;
    color: #3065A9;
    line-height: 32px;
    align-items: baseline;
    flex-wrap: wrap;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .infos .numbers .contract_number {
    font-weight: bold;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .infos .numbers .contract_number .energy_type_ico {
    max-width: 17px;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .infos .numbers .spacer {
    margin: 0 5px;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .infos .numbers .user_role {
    font-size: 16px;
    color: #666666;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .infos .address {
    font-size: 12px;
    position: relative;
    padding-left: 15px;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .infos .address:before {
    content: "";
    position: absolute;
    left: -5px;
    top: 0;
    bottom: 0;
    width: 20px;
    background: url(/assets/invoice/place.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .buttons {
    display: flex;
    flex-direction: column;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .buttons .btn {
    cursor: pointer;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .buttons .btn.btn-primary {
    color: #fff;
    background-size: 300% 100%;
    background-image: linear-gradient(to right, #D04F4B, #C83257, #C83257, #E55753, #E55753);
    border-radius: 20px;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .buttons .btn.btn-secondary {
    color: #fff;
    background-size: 300% 100%;
    background-image: linear-gradient(to right, #6B5BCC, #446EAF);
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .buttons .btn.btn-tertiary {
    color: #3065A9;
    background-color: white;
    border-radius: 20px;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .buttons .btn {
    cursor: pointer;
    margin: 7.5px 15px;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .buttons .btn.btn-primary.debit:before {
    content: "";
    position: absolute;
    left: calc(50% - 100px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/transfert_white.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .buttons .btn.btn-primary.efacture:before {
    content: "";
    position: absolute;
    left: calc(50% - 125px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/efacture.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .buttons .btn.btn-tertiary.modify_address:before {
    content: "";
    position: absolute;
    left: calc(50% - 125px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/edit.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .buttons .btn.btn-tertiary.modify_post_address:before {
    content: "";
    position: absolute;
    left: calc(50% - 140px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/edit.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .buttons .btn.btn-tertiary.manage_rib:before {
    content: "";
    position: absolute;
    left: calc(50% - 75px);
    top: 0;
    bottom: 0;
    width: 22px;
    background: url(/assets/invoice/transfert.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .invoices-display-header-mobile .head {
    color: #376EB3;
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    line-height: normal;
    text-align: left;
    margin-left: 16px;
    margin-bottom: 20px;
}

.body_invoice .main.contracts_view .mobile_contracts_view {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.body_invoice .main.contracts_view .mobile_contracts_view.bottom-sheet-spacer {
    margin-bottom: 125px;
}

.body_invoice .main.contracts_view .mobile_contracts_view.payement {
    margin-bottom: 170px;
}

.body_invoice .main.contracts_view .mobile_contracts_view .mobile_contract_view {
    display: flex;
    flex-direction: column;
    font-size: 14px;
    margin: 0 16px;
    margin-bottom: 10px;
    padding: 0 20px;
    height: 74px;
    justify-content: center;
    background-color: white;
    cursor: pointer;
}

.body_invoice .main.contracts_view .mobile_contracts_view .mobile_contract_view .contract_content {
    display: flex;
    align-items: baseline;
}

.body_invoice .main.contracts_view .mobile_contracts_view .mobile_contract_view .details {
    color: #666666;
}

.body_invoice .main.contracts_view .mobile_contracts_view .mobile_contract_view .details.bold {
    font-weight: bold;
}

.body_invoice .main.contracts_view .mobile_contracts_view .mobile_contract_view .details .user_role {
    font-size: 14px;
    color: #666666;
    font-weight: normal;
}

.body_invoice .main.contracts_view .mobile_contracts_view .mobile_contract_view .details.address {
    position: relative;
    padding-left: 15px;
    font-size: 12px;
}

.body_invoice .main.contracts_view .mobile_contracts_view .mobile_contract_view .details.address:before {
    content: "";
    position: absolute;
    left: -5px;
    top: 0;
    bottom: 0;
    width: 20px;
    background: url(/assets/invoice/place.png) center/contain no-repeat;
}

.body_invoice .main.contracts_view .mobile_contracts_view .mobile_contract_view .details .energy_type_ico {
    max-width: 17px;
}

.body_invoice .main.contracts_view .switch_div {
    width: 180px;
    float: right;
    margin: 50px;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .body_invoice .main.contracts_view .switch_div {
        top: 20px;
        margin: 0;
    }
}

.body_invoice .main.contracts_view .switch_div .switch_title {
    color: #3065A9;
    line-height: 30px;
}

.body_invoice .main.contracts_view .switch_div .stopped_contracts_eye {
    height: 16px;
    margin-left: 5px;
}

.body_invoice .main.contracts_view nav.page_list {
    display: flex;
    align-items: center;
    margin: 10px 0;
    justify-content: center;
}

.body_invoice .main.contracts_view nav.page_list .page-item {
    cursor: pointer;
}

.body_invoice .main.contracts_view nav.page_list .page-item .page-link {
    color: #666666;
    font-weight: bold;
}

.body_invoice .main.contracts_view nav.page_list .page-item .page-link.button_page_\.\.\. {
    cursor: default;
}

.body_invoice .main.contracts_view nav.page_list .page-item .page-link.active_page {
    cursor: default;
    background-size: 115% 100%;
    background-image: linear-gradient(to right, #D04F4B, #C83257, #E55753);
    color: white !important;
}

.body_invoice .main.contracts_view nav.page_list #page_form {
    display: inline-block;
    margin-right: 20px;
}

.body_invoice .main.contracts_view nav.page_list #page_form div {
    display: inline-block;
    margin-right: 5px;
    max-width: 130px;
}

.body_invoice .main.contracts_view nav.page_list #page_form input {
    max-width: 30px;
}

.body_invoice .main.contracts_view nav.page_list #page_form input[type="number"] {
    -moz-appearance: textfield;
}

.body_invoice .main.contracts_view nav.page_list #page_form input[type="number"]::-webkit-outer-spin-button, .body_invoice .main.contracts_view nav.page_list #page_form input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.body_invoice .modal-body.big_modal {
    height: 80vh;
}

@media screen and (max-width: 767px) {
    .body_invoice .modal-body.big_modal {
        height: 70vh;
    }
}

.body_invoice .modal-body .alert {
    display: block;
}

.body_invoice .modal-body input {
    width: 100%;
    line-height: 1.7;
    padding-left: 10px;
}

.body_invoice .modal-body .input-group {
    margin-bottom: 5px;
    margin-top: 5px;
}

.body_invoice .modal-body .input-group .input-group-addon {
    min-width: 100px;
    color: #ffffff;
    background-image: linear-gradient(to right, #6B5BCC, #446EAF);
    border: 1px solid #376EB3;
}

.body_invoice .modal-body .select_address {
    margin: 15px 0;
    padding: 5px;
    border-radius: 5px;
}

.body_invoice .modal-body .error-p {
    color: #C83257;
    display: none;
    font-family: "Roboto", sans-serif;
    font-size: 12px;
    text-align: left;
    line-height: 14px;
    font-weight: normal;
}

.body_invoice .modal-body .exclamation-circle-icon {
    margin-right: 5px;
    width: 18px;
}

.body_invoice .modal-body .modal_email_input {
    margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
    .body_invoice .modal-content {
        margin-top: 50px;
    }

    .body_invoice .modal-content.big_content {
        width: 90% !important;
        margin-left: auto;
        margin-right: auto;
    }

    .body_invoice .modal-content .big_footer {
        display: flex;
        flex-direction: column-reverse;
        align-items: center;
        justify-content: space-between;
        height: 160px;
    }
}

.body_invoice .modal-content.big_content {
    width: 680px;
}

.body_invoice .modal-content .modal-footer .btn {
    margin: 0;
}

.body_invoice .modal-content .modal-footer .btn-primary {
    color: #fff;
    background-size: 300% 100%;
    background-image: linear-gradient(to right, #D04F4B, #C83257, #C83257, #E55753, #E55753);
    border-radius: 20px;
}

.body_invoice .modal-content .modal-footer .btn-tertiary {
    color: #3065A9;
    background-color: #F7F7F7;
    border-radius: 20px;
}

.body_invoice .modal-content .modal-footer .fa-spinner {
    margin-left: 5px;
}

.body_invoice .loader_container.none {
    display: none;
}

.body_invoice .chargingRIB {
    text-align: center;
    font-size: 26px !important;
    top: calc(100% - 10px);
    left: 50%;
    position: absolute;
    z-index: 8;
    transform: translate(-50%, -50%);
}

.body_invoice .mobile_navbar {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    background-image: linear-gradient(to right, #7D51D9, #376EB3);
    box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.15);
    height: 45px;
}

@media screen and (min-width: 768px) {
    .body_invoice .mobile_navbar {
        display: none;
    }
}

.body_invoice .mobile_navbar .nav_arrow {
    height: 30px;
    width: 30px;
    position: absolute;
    left: 15px;
    cursor: pointer;
}

.body_invoice .mobile_navbar .nav_text {
    font-size: 16px;
    color: #ffffff;
}

@media screen and (max-width: 767px) {
    .body_invoice #invoicePDFPreviewModal {
        padding: 0 !important;
        overflow-y: hidden;
    }

    .body_invoice #invoicePDFPreviewModal .modal-dialog {
        width: 100%;
        height: 100%;
        margin: 0;
    }

    .body_invoice #invoicePDFPreviewModal .modal-dialog .modal-content {
        width: 100%;
        height: 100%;
        margin: 0;
        border-radius: 0;
    }

    .body_invoice #invoicePDFPreviewModal .modal-dialog .modal-content .modal-header {
        padding: 0;
        border: 0;
    }

    .body_invoice #invoicePDFPreviewModal .modal-dialog .modal-content .modal-header .mobile_navbar {
        justify-content: flex-start;
        align-items: flex-end;
        height: 90px;
    }

    .body_invoice #invoicePDFPreviewModal .modal-dialog .modal-content .modal-header .mobile_navbar .nav_arrow {
        bottom: 20px;
    }

    .body_invoice #invoicePDFPreviewModal .modal-dialog .modal-content .modal-header .mobile_navbar .nav_text {
        margin-left: 70px;
        margin-bottom: 23px;
    }

    .body_invoice #invoicePDFPreviewModal .modal-dialog .modal-content .modal-body {
        height: calc(100% - 90px);
        padding: 0;
    }

    .body_invoice #invoicePDFPreviewModal .modal-dialog .modal-content .modal-body iframe {
        border: 0;
    }

    .body_invoice #invoicePDFPreviewModal .modal-dialog .modal-content .modal-footer {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    #downloadAlert .modal-dialog {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }
}

#downloadAlert .modal-content {
    width: 100%;
}

#downloadAlert .modal-content .modal-body {
    padding: 0;
}

#downloadAlert .modal-content .modal-body .alert {
    display: block;
    font-size: 16px;
    margin-bottom: 0;
}

#downloadAlert .modal-content .modal-body .close {
    opacity: 1;
}

#downloadAlert .modal-content .modal-body .close:hover {
    opacity: 1;
}

#downloadAlert .modal-dialog-centered {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: calc(100% - (.5rem * 2));
}

@media screen and (min-width: 576px) {
    #downloadAlert .modal-dialog-centered {
        min-height: calc(100% - (1.75rem * 2));
    }
}

.body_metigate {
    color: #666666;
}

.body_metigate .metigate_view {
    position: relative;
}

.body_metigate .metigate_view:before {
    content: '';
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    background: url("/assets/meteo_icons/background_metigate.svg") no-repeat;
    background-position: center;
    opacity: .08;
    width: 100%;
    height: 100%;
}

@media (min-width: 768px) {
    .body_metigate .metigate_view:before {
        top: 5%;
        left: -5%;
    }
}

.body_metigate #metigate_title {
    z-index: 10;
    font-size: 44px;
    color: #376EB3;
}

@media (max-width: 768px) {
    .body_metigate #metigate_title {
        margin-top: 35px;
    }
}

.body_metigate .period-select {
    margin-top: 30px;
    z-index: 10;
}

@media (min-width: 768px) {
    .body_metigate .period-select {
        margin-top: 35px;
    }
}

.body_metigate #data_row {
    z-index: 10;
    margin-top: 30px;
}

@media (min-width: 768px) and (max-width: 1199px) {
    .body_metigate .dots-grid-days-text {
        padding-left: 20px;
    }
}

@media (min-width: 577px) {
    .body_metigate .graphics-container {
        width: 100%;
    }
}

.body_metigate .period-select #month-select, .body_metigate .period-select #year-select {
    border-width: 0;
    border-radius: 30px;
    color: #666666;
    background-color: #E1E1E1;
    padding-left: 10px;
    width: 100%;
    height: 28px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url("/login_layout/nav_down.svg") 92%/15% #E1E1E1 no-repeat !important;
    background: url("/login_layout/nav_down.svg") 92%/15% #E1E1E1 no-repeat !important;
    background-position: center;
}

@media (min-width: 768px) {
    .body_metigate .period-select #month-select, .body_metigate .period-select #year-select {
        min-width: 100px;
    }
}

@media (max-width: 768px) {
    .body_metigate .period-select #month-select, .body_metigate .period-select #year-select {
        max-width: 150px;
    }
}

.body_metigate #graph_row {
    background-image: linear-gradient(to right, #7D51D9, #376EB3);
    color: white;
}

@media screen and (min-width: 768px) {
    .body_metigate #graph_row {
        margin-bottom: 100px;
    }
}

.body_metigate #col_graph {
    z-index: 10;
}

@media (max-width: 768px) {
    .body_metigate #advice_value {
        font-size: 44px;
        color: #376EB3;
    }
}

@media (min-width: 768px) {
    .body_metigate #advice_value {
        font-size: 20px;
        font-weight: bold;
    }
}

.body_metigate #mr-meteo {
    position: absolute;
    bottom: 0;
    left: 8%;
    height: 450px;
    width: 280px;
    z-index: 20;
}

@media (max-width: 990px) {
    .body_metigate #mr-meteo {
        height: 400px;
        width: auto;
        left: 5%;
    }
}

.body_simu {
    /* Simu page*/
    /* Large desktops and laptops */
    /* Landscape tablets and medium desktops */
    /* Portrait tablets and small desktops */
    /* Landscape phones and portrait tablets */
    /* Portrait phones and smaller */
    /*(special)Very small*/
}

.body_simu button {
    border-radius: 30px;
}

.body_simu .title {
    text-align: center;
}

.body_simu #simu_title {
    font-size: 44px;
    color: #376EB3;
}

.body_simu #simu_subtitle {
    font-size: 20px;
    color: #666666;
}

.body_simu .power-select {
    text-align: center;
    margin-top: 10px;
    margin-bottom: 10px;
}

.body_simu .simu-content dd {
    text-align: right;
}

.body_simu .pad {
    padding: 5px;
    padding-left: 20px;
    padding-right: 20px;
    /*border-top-right-radius: 5px;*/
    border-top-left-radius: 30px;
    background-color: #fafafa;
    border: 1px solid #e3e3e3;
    cursor: pointer;
    min-height: 237px;
}

.body_simu .pad .pad_title {
    color: #376EB3;
    font-size: 180%;
    margin-bottom: 0px;
}

.body_simu .selected-pad {
    border-bottom: 0px;
    height: 265px;
}

.body_simu .simu-base {
    padding-right: 0px;
}

.body_simu .simu-base .pad {
    border-top-right-radius: 0px;
    border-right: 0px;
}

.body_simu .simu-hphc {
    padding-left: 0px;
}

.body_simu .simu-hphc .pad {
    border-top-left-radius: 0px;
    border-left: 0px;
}

.body_simu .my-contract {
    z-index: 1;
}

.body_simu .my-contract > .pad {
    background-color: #ebebeb;
    border-color: #cfcfcf;
}

.body_simu .simu-base, .body_simu .simu-hphc {
    z-index: 1;
}

.body_simu .panel {
    margin-top: -1px;
}

.body_simu .simu-content .annual-price .lead {
    font-size: 35px;
}

.body_simu .simu-content .label {
    font-size: 100%;
    padding: 0.2em 2.6em .3em;
}

.body_simu .annual-price {
    margin-top: 30px;
    margin-bottom: 30px;
}

.body_simu .bookmark {
    color: #337ab7;
    font-size: 60px;
    position: absolute;
    right: 20px;
    top: -3px;
    display: none;
}

.body_simu .panel-bottom {
    background-color: #fafafa;
}

.body_simu #my-contract-more {
    display: none;
}

.body_simu #my-contract-more .panel-bottom {
    background-color: #ebebeb;
}

.body_simu #my-contract-more .glyphicon {
    color: #ebebeb;
}

.body_simu #simu-more {
    display: none;
}

.body_simu #my-chart, .body_simu #simu-chart, .body_simu #simu-bar-chart {
    min-width: 310px;
    height: 150px;
    max-width: 600px;
}

.body_simu .cons_control {
    height: 300px;
    background-color: #ebebeb;
    overflow: hidden;
    position: relative;
}

.body_simu .cons_control.fr {
    background-image: url("/images/sun_moon.png");
}

.body_simu .cons_control.en {
    background-image: url("/images/sun_moon_en.png");
}

.body_simu .cons_pos {
    margin: 10px;
    padding: 0.5em;
    cursor: pointer;
    border-radius: 50%;
    background-color: #376EB3;
    background-position: 0px -80px;
    position: relative;
    color: #fff;
    font-size: 28px;
    width: 50px !important;
    height: 50px !important;
}

.body_simu .cons_pos:hover, .body_simu .cons_pos:active {
    box-shadow: 1px 1px 15px #555;
}

.body_simu .cons_pos > i {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}

.body_simu .cons-label-up {
    top: 5px;
    left: 50%;
    font-size: 12px;
    font-weight: 500;
    position: absolute;
    transform: translateX(-50%);
    color: #999999;
}

.body_simu .cons-label-down {
    bottom: 5px;
    left: 50%;
    font-size: 12px;
    font-weight: 500;
    position: absolute;
    transform: translateX(-50%);
    color: #999999;
}

.body_simu .cons-day {
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
    z-index: 1;
}

.body_simu .cons-night {
    position: absolute;
    display: inline-block;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    z-index: 1;
}

.body_simu .caret-down {
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    bottom: -15px;
    left: 50%;
    vertical-align: middle;
    border-top: 10px dashed #376EB3;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    transform: translateX(-50%);
}

.body_simu .caret-up {
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    top: -15px;
    left: 50%;
    vertical-align: middle;
    border-bottom: 10px dashed #376EB3;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    transform: translateX(-50%);
}

.body_simu .caret-left {
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    top: 50%;
    left: -15px;
    vertical-align: middle;
    border-bottom: 10px solid transparent;
    border-right: 10px solid #376EB3;
    border-top: 10px solid transparent;
    transform: translateY(-50%);
}

.body_simu .caret-right {
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    top: 50%;
    right: -15px;
    vertical-align: middle;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #376EB3;
    border-top: 10px solid transparent;
    transform: translateY(-50%);
}

.body_simu .dash-down {
    position: absolute;
    display: block;
    width: 1px;
    height: 9999px;
    top: 65px;
    left: 50%;
    border-right: 1px dashed #376EB3;
}

.body_simu .dash-up {
    position: absolute;
    display: block;
    width: 1px;
    height: 9999px;
    bottom: 65px;
    left: 50%;
    border-right: 1px dashed #376EB3;
}

.body_simu .dash-left {
    position: absolute;
    display: inline-block;
    width: 9999px;
    height: 1px;
    top: 50%;
    right: 65px;
    border-top: 1px dashed #376EB3;
}

.body_simu .dash-right {
    position: absolute;
    display: inline-block;
    width: 9999px;
    height: 1px;
    top: 50%;
    left: 65px;
    border-top: 1px dashed #376EB3;
}

.body_simu .dashline-x {
    height: 1px;
    width: 9999px;
    border-top: 1px dashed limegreen;
    top: 50%;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
}

.body_simu .config_buttons {
    font-size: 0;
    margin-bottom: 10px;
}

.body_simu .config_buttons .btn {
    display: inline-block;
    text-align: center;
    padding: 0;
}

@media screen and (max-width: 767px) {
    .body_simu .config_buttons .btn {
        padding: 5px;
    }
}

.body_simu .config_buttons .btn .caret {
    margin-left: 5px;
}

.body_simu .config_buttons .btn:first-child {
    width: 95%;
    margin-right: 5px;
}

.body_simu .config_buttons .btn#reset {
    margin-top: 3px;
}

.body_simu .config_buttons .btn-group {
    background-color: unset;
    padding-left: 0;
    padding-right: 0;
}

.body_simu .simu-graph-zone {
    margin-top: 20px;
}

.body_simu .simu-chart {
    transform: translateY(20%);
    margin-bottom: 7vh;
}

.body_simu #my-sentence-base, .body_simu #my-sentence-hphc {
    display: none;
}

.body_simu .simu-mv-info {
    text-align: center;
}

.body_simu .label_simu {
    display: inline;
    padding: .2em .6em .3em;
    font-size: 50%;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
}

.body_simu .my-contract-sm {
    background-color: #376EB3;
    padding: 10px;
    color: #fff;
    margin-bottom: 5px;
}

.body_simu .simu-base-sm, .body_simu .simu-hphc-sm {
    background-color: #ebebeb;
    padding: 10px;
    margin-bottom: 10px;
}

.body_simu .simu-base-sm > .name, .body_simu .simu-hphc-sm > .name, .body_simu .my-contract-sm > .name {
    font-size: 14px;
    font-weight: 600;
    line-height: 0.60;
    margin: 0;
}

.body_simu .simu-base-sm > .pricing, .body_simu .simu-hphc-sm > .pricing, .body_simu .my-contract-sm > .pricing {
    font-size: 24px;
    font-weight: bold;
    margin: 0;
}

@media (min-width: 992px) and (max-width: 1199px) {
    .body_simu .pad {
        min-height: 260px;
    }

    .body_simu .selected-pad {
        height: 290px;
    }

    .body_simu .cons_control {
        height: 260px;
    }
}

.body_simu .full-reset {
    width: 70%;
}

.body_simu .simu-content {
    font-size: 80%;
}

@media (min-width: 768px) and (max-width: 991px) {
    .body_simu {
        /*.reset_label{
    display:none;
  }*/
    }

    .body_simu .pad {
        height: 230px;
    }

    .body_simu .selected-pad {
        height: 260px;
    }

    .body_simu .cons_control {
        height: 230px;
    }

    .body_simu #simu-chart {
        min-width: 280px;
        height: 120px;
        overflow: visible !important;
    }

    .body_simu #simu-bar-chart {
        min-width: 280px;
        /*height: 120px;*/
    }
}

@media (max-width: 767px) {
    .body_simu .text-xs-center {
        text-align: center;
    }

    .body_simu .dropdown_power_button {
        width: 80%;
    }

    .body_simu .annual-price {
        margin-top: 0px;
    }

    .body_simu .title-simulation {
        color: #376EB3;
    }

    .body_simu .my-contract, .body_simu .simu-base, .body_simu .simu-hphc {
        padding-left: 0px;
        padding-right: 0px;
    }
}

@media (max-width: 480px) {
    .body_simu .full-reset {
        width: 70%;
    }

    .body_simu .simu-content {
        font-size: 80%;
    }

    .body_simu .annual-price {
        margin-top: 5px;
        margin-bottom: 10px;
    }

    .body_simu .title-simulation {
        color: #376EB3;
    }

    .body_simu .cons_control {
        height: 210px;
    }

    .body_simu .my-contract, .body_simu .simu-base, .body_simu .simu-hphc {
        padding-left: 0px;
        padding-right: 0px;
    }
}

@media (max-width: 350px) {
    .body_simu .cons_control {
        height: 175px;
    }
}

.body_simu .features {
    margin-top: 60px;
}

.body_simu .unactive-msg {
    display: none;
    position: absolute;
    width: 70%;
    left: 15%;
    top: 400px;
    border: solid 2px #555;
    border-radius: 5px;
    color: #555;
    background-color: white;
    padding: 20px;
    opacity: 1;
    z-index: 2;
    font-size: 18px;
}

@media (max-width: 350px) {
    .body_simu .unactive-msg {
        top: 200px;
    }
}

/**
 * importer.less
 *
 * By default, new Sails projects are configured to compile this file
 * from LESS to CSS.  Unlike CSS files, LESS files are not compiled and
 * included automatically unless they are imported below.
 *
 * The LESS files imported below are compiled and included in the order
 * they are listed.  Mixins, variables, etc. should be imported first
 * so that they can be accessed by subsequent LESS stylesheets.
 *
 * (Just like the rest of the asset pipeline bundled in Sails, you can
 * always omit, customize, or replace this behavior with SASS, SCSS,
 * or any other Grunt tasks you like.)
 */
/*--Menu principal--Desktops*/
/*
This file is loaded after all others CSS and can overload default display
*/
/*--Menu principal*/
/**********************************************/
.color-1 {
    color: #0090b2;
}

.color-2 {
    color: #376EB3;
}

.color-3 {
    color: #C83257;
}

.color-4 {
    color: #5cb85c;
}

.color-5 {
    color: white;
}

.color-6 {
    color: #fafdfe;
}

/* body {
  background-image: url('/specific/background/default_bg.jpg');
  background-color: #ebe8e4;
  font-family: 'Open Sans', sans-serif;
  -webkit-text-size-adjust: 100%;
  font-variant-ligatures: none;
  -webkit-font-variant-ligatures: none;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center top;
} */
#logo_brand_header_public {
    background-image: url("/specififc/logo/logo.png");
    background-size: auto 60px;
    height: 60px;
    width: 205px;
    margin-left: auto;
    margin-right: auto;
    background-repeat: no-repeat;
}

#logo_brand_header_menu {
    background-size: 50px;
    height: 60px;
    width: 90px;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    background-position: 0px 0px;
}

.ael-link {
    background-image: url("/specific/e-smeg.png");
    background-size: 90px auto;
    background-position: 55px -30px;
    background-repeat: no-repeat;
    padding-top: 25px;
    width: 100%;
    margin-bottom: 10px;
}

.survey .part .question .pickup_answer.btn.active p,
.survey .pickup_answer.btn-default.active p,
.survey .pickup_answer.btn-default.active.focus p,
.survey .pickup_answer.btn-default.active:focus p,
.survey .pickup_answer.btn-default.active:hover p,
.survey .pickup_answer.btn-default.focus:active p,
.survey .pickup_answer.btn-default:active:focus p,
.survey .pickup_answer.btn-default:active:hover p {
    color: black;
}

.wall .sunee {
    background: url(/specific/sune.png);
    width: 5vw;
    height: 3vw;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 0vw 0.5vw;
    float: right;
}

.wall .sunee-gf {
    position: absolute;
    margin: auto;
    top: 200px;
    right: 40px;
    width: 140px;
}

.wall .ski .photo {
    background-image: url("/specific/wall/img_infos/Fotolia_88630172_S.jpg");
}

.wall .gasoline .photo {
    background-image: url("/specific/wall/img_infos/iStock-595326738.jpg");
}

.wall .worldtour .photo {
    background-image: url("/specific/wall/img_infos/iStock-679528590.jpg");
}

.wall .formuleE .photo {
    background-image: url("/specific/wall/img_infos/BD-SMEG-13 mai 2017@FTerlin-246.jpg");
}

.wall .bike .photo {
    background-image: url("/specific/wall/img_infos/iStock-147308383.jpg");
    background-position: 30% 50%;
}

.wall .segway .photo {
    background-image: url("/specific/wall/img_infos/iStock-613770480.jpg");
}

.wall .ev .photo {
    background-image: url("/specific/wall/img_infos/iStock-178995466.jpg");
}

.wall .solarImpulse .photo {
    background-image: url("/specific/wall/img_infos/25805316743_0af8a3a74d_z.jpg");
}

.wall .smartphone .photo {
    background-image: url("/specific/wall/img_infos/iStock-671426576.jpg");
}

.wall .formuleEprod .photo {
    background-image: url("/specific/wall/img_infos/BD-SMEG-13 mai 2017@FTerlin-273.jpg");
}

.wall .noFinishLine .photo {
    background-image: url("/specific/wall/img_infos/iStock-495715111.jpg");
}

.wall .webSearch .photo {
    background-image: url("/specific/wall/img_infos/iStock-480254799.jpg");
}

.wall .concert .photo {
    background-image: url("/specific/wall/img_infos/iStock-526833490.jpg");
}

.wall .map {
    background-image: url("/specific/wall/wall_monaco_map.png");
    height: 25vh;
    background-position: 50%, 50%;
    background-repeat: no-repeat;
    background-size: contain;
    margin-top: 2vh;
}

.metigate .wind .photo {
    background-image: url("/specific/wall/img_infos/iStock-611314806.jpg");
}

.metigate .temp .photo {
    background-image: url("/specific/wall/img_infos/Fotolia_28734289_M.jpg");
}

.metigate .rain .photo {
    background-image: url("/specific/wall/img_infos/iStock-490371198.jpg");
}

.metigate .sun .photo {
    background-image: url("/specific/wall/img_infos/iStock-543562666.jpg");
}

/* Custom, iPhone Retina */
@media only screen and (min-width: 320px) {
    .text-xs-left {
        text-align: left;
    }

    .text-xs-right {
        text-align: right;
    }

    .text-xs-justify {
        text-align: justify;
    }
}

/* Extra Small Devices, Phones */
@media only screen and (min-width: 480px) {
    .text-xs-left {
        text-align: left;
    }

    .text-xs-right {
        text-align: right;
    }

    .text-xs-justify {
        text-align: justify;
    }
}

/* Small Devices, Tablets */
@media only screen and (min-width: 768px) {
    .text-sm-left {
        text-align: left;
    }

    .text-sm-right {
        text-align: right;
    }

    .text-sm-center {
        text-align: center;
    }

    .text-sm-justify {
        text-align: justify;
    }
}

/* Medium Devices, Desktops */
@media only screen and (min-width: 992px) {
    .text-md-left {
        text-align: left;
    }

    .text-md-right {
        text-align: right;
    }

    .text-md-center {
        text-align: center;
    }

    .text-md-justify {
        text-align: justify;
    }
}

.label {
    display: inline;
    padding: 0.2em 0.6em 0.3em;
    font-size: 75%;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25em;
}

.label:empty {
    display: none;
}

.btn .label {
    position: relative;
    top: -1px;
}

body.admin a.btn.btn-primary {
    line-height: 34px;
}

body.admin .btn {
    color: #666666;
    background-size: 300% 100%;
    transition: 0.2s;
    padding: 0 15px;
    background-color: #EFEFEF !important;
    background-image: unset;
    border-radius: 30px;
}

body.admin .btn .caret {
    color: #666666;
}

body.admin .btn:hover {
    color: black;
    background-color: #e5e5e5 !important;
}

body.admin .btn:hover .caret {
    color: black;
}

body.admin .refresh-button {
    top: -5px;
}

body.admin thead.primary_bkgd {
    background-image: linear-gradient(to right, #7D51D9, #376EB3) !important;
}

.body_consumption.amm {
    -webkit-animation-name: fadeIn;
    -moz-animation-name: fadeIn;
    -ms-animation-name: fadeIn;
    -o-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    -ms-animation-iteration-count: 1;
    -o-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-duration: 0.4s;
    -moz-animation-duration: 0.4s;
    -ms-animation-duration: 0.4s;
    -o-animation-duration: 0.4s;
    animation-duration: 0.4s;
    -webkit-animation-delay: 0s;
    -moz-animation-delay: 0s;
    -ms-animation-delay: 0s;
    -o-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-timing-function: ease-in-out;
    -ms-animation-timing-function: ease-in-out;
    -o-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -ms-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
}

.body_consumption.amm .consumption_view {
    position: relative;
}

.body_consumption.amm .consumption_view .main-consumption .button-container {
    text-align: center;
}

.body_consumption.amm .consumption_view .main-consumption .button-container > button {
    background-color: #EFEFEF;
    border-radius: 40px;
    font-size: 17px;
    margin: 16px 20px;
}

.body_consumption.amm .consumption_view .main-consumption .button-container > button:hover {
    background-color: #d4d4d4;
    cursor: pointer;
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .button-container > button {
        margin: 10px 15px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .day-choice-container {
    display: flex;
    min-height: 30px;
    margin-top: 20px;
    position: relative;
    justify-content: center;
}

.body_consumption.amm .consumption_view .main-consumption .day-choice-container .current-date {
    font-size: 20px;
    margin: 0 50px;
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .day-choice-container .current-date {
        padding: 0 15px;
        font-size: 21px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .day-choice-container .left-arrow, .body_consumption.amm .consumption_view .main-consumption .day-choice-container .right-arrow {
    position: absolute;
    width: 40px;
    height: 40px;
    background: url("/images/consumption/arrow_carousel_black.png") no-repeat center center;
    background-color: #EFEFEF;
    background-size: 12px;
    cursor: pointer;
    border: 5px solid #EFEFEF;
    border-radius: 1000px;
    margin-top: -5px;
}

.body_consumption.amm .consumption_view .main-consumption .day-choice-container .left-arrow {
    transform: rotate(180deg);
    left: calc(28% - 100px);
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .day-choice-container .left-arrow {
        left: 20px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .day-choice-container .right-arrow {
    right: calc(28% - 100px);
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .day-choice-container .right-arrow {
        right: 20px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button {
    margin-top: 20px;
    width: fit-content;
    position: relative;
    cursor: pointer;
    margin-left: 20px;
    display: flex;
    align-items: center;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button.hide {
    display: none;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .btn-bar-chart-text {
    font-size: 14px;
    text-decoration: underline;
}

@media screen and (max-width: 600px) {
    .body_consumption.amm .consumption_view .main-consumption .bar-chart-button .btn-bar-chart-text {
        display: none;
    }
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .circle-icon + .chart-icon .bar-container {
    display: none;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .circle-icon + .chart-icon .circle-container {
    display: flex;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .bar-icon + .chart-icon .circle-container {
    display: none;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .bar-icon + .chart-icon .bar-container {
    display: flex;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .circle-icon-en:after {
    content: " pie chart";
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .circle-icon-fr:after {
    content: " stylisé";
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .bar-icon:after {
    content: " standard";
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .chart-icon {
    background-color: #353841;
    width: 30px;
    height: 30px;
    border-radius: 400px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 10px;
}

@media screen and (max-width: 600px) {
    .body_consumption.amm .consumption_view .main-consumption .bar-chart-button .chart-icon {
        width: 40px;
        height: 40px;
        margin-left: 0;
    }
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .chart-icon .bar-container {
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .chart-icon .bar-container .bar {
    background-color: #353841;
    border: 1px solid white;
    width: 2px;
    margin: 0 1px;
    margin-bottom: 1px;
    transition: .2s ease-in-out;
    box-sizing: unset;
    -webkit-box-sizing: unset;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .chart-icon .bar-container .first-bar {
    height: 30%;
    animation: bounceBar1 3s infinite;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .chart-icon .bar-container .second-bar {
    height: 60%;
    animation: bounceBar2 3s infinite;
    animation-delay: .1s;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .chart-icon .bar-container .third-bar {
    height: 80%;
    animation: bounceBar3 3s infinite;
    animation-delay: .2s;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .chart-icon .circle-container {
    width: 20px;
    height: 20px;
    display: none;
    justify-content: center;
    align-items: center;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .chart-icon .circle-container .circle {
    background-color: white;
    width: 7px;
    height: 7px;
    border-radius: 1000px;
    position: absolute;
}

.body_consumption.amm .consumption_view .main-consumption .bar-chart-button .chart-icon .circle-container .big-circle {
    width: 18px;
    height: 18px;
    background-color: rgba(255, 255, 255, 0.2);
    border: 1px solid white;
    animation: circleBounce 3s infinite;
}

.body_consumption.amm .consumption_view .main-consumption .conso-text {
    text-align: center;
    font-size: 16px;
    font-style: italic;
    padding: 0 20px;
    margin-bottom: 20px;
    margin-top: 50px;
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .conso-text {
        font-size: 12px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .centering_row {
    margin: 0 auto;
}

.body_consumption.amm .consumption_view .main-consumption .centering_col {
    margin: auto 0;
}

.body_consumption.amm .consumption_view .main-consumption .bottom_button {
    margin: 0 auto;
    height: 32px;
    display: block;
    margin-bottom: 20px;
    border-radius: 32px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper {
    display: flex;
    flex-direction: row;
    width: 100%;
    overflow: hidden;
    position: relative;
    justify-content: center;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .loading .loader-3-dots {
    top: 0;
    left: 50%;
    transform: translate(-50%, 50%);
}

@media screen and (min-width: 992px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper {
        justify-content: center;
        width: inherit;
    }
}

@media screen and (max-width: 991px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper {
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button {
    position: absolute;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    z-index: 6;
    top: 50px;
    left: 0;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button:hover {
    cursor: pointer;
    color: #353841;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button.hide {
    display: none;
}

@media screen and (min-width: 1000px) and (max-width: 1390px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button {
        top: 50px;
        left: 70px;
    }
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button {
        top: 80px;
        left: 20px;
    }
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button {
        top: 80px;
        left: 20px;
    }
}

@media screen and (max-width: 374px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button {
        top: 50px;
        left: 20px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .btn-bar-chart-text {
    font-size: 14px;
    text-decoration: underline;
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .btn-bar-chart-text {
        display: none;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .circle-icon + .chart-icon .bar-container {
    display: none;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .circle-icon + .chart-icon .circle-container {
    display: flex;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .bar-icon + .chart-icon .circle-container {
    display: none;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .bar-icon + .chart-icon .bar-container {
    display: flex;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .circle-icon:after {
    content: " stylisé";
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .bar-icon:after {
    content: " standard";
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .btn-chart-icon {
    width: 15px;
    margin-left: 10px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .chart-icon {
    background-color: #353841;
    width: 30px;
    height: 30px;
    border-radius: 400px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 10px;
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .chart-icon {
        width: 40px;
        height: 40px;
        margin-left: 0;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .chart-icon .bar-container {
    width: 20px;
    height: 20px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-end;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .chart-icon .bar-container .bar {
    background-color: #353841;
    border: 1px solid white;
    width: 2px;
    height: 8px;
    margin: 0 1px;
    margin-bottom: 1px;
    transition: .2s ease-in-out;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .chart-icon .bar-container .first-bar {
    height: 30%;
    animation: bounceBar1 3s infinite;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .chart-icon .bar-container .second-bar {
    height: 60%;
    animation: bounceBar2 3s infinite;
    animation-delay: .1s;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .chart-icon .bar-container .third-bar {
    height: 80%;
    animation: bounceBar3 3s infinite;
    animation-delay: .2s;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .chart-icon .circle-container {
    width: 20px;
    display: none;
    height: 20px;
    justify-content: center;
    align-items: center;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .chart-icon .circle-container .circle {
    background-color: white;
    width: 7px;
    height: 7px;
    border-radius: 1000px;
    position: absolute;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-button .chart-icon .circle-container .big-circle {
    width: 18px;
    height: 18px;
    background-color: rgba(255, 255, 255, 0.2);
    border: 1px solid white;
    animation: circleBounce 3s infinite;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart {
    width: 80vw;
    height: 80vw;
    position: relative;
    display: flex;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart:before {
    content: '';
    padding-top: 100%;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart.line-chart-container, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart.bar-chart-container {
    height: 40vh;
}

@media screen and (min-width: 992px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart {
        width: 45vw;
        height: 45vw;
    }
}

@media screen and (max-width: 767px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart {
        width: 90vw;
        height: 90vw;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart #rosette-chart {
    z-index: 4;
    width: 100%;
    height: 100%;
    margin-left: inherit;
    margin-top: inherit;
}

@media screen and (min-width: 1000px) and (max-width: 1390px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart #rosette-chart {
        max-width: 650px;
        max-height: 650px;
    }
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart #rosette-chart {
        max-width: 850px;
        max-height: 850px;
    }
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart #rosette-chart {
        max-width: 900px;
        max-height: 900px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .info-chart {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

@media screen and (min-width: 1000px) and (max-width: 1390px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .info-chart {
        min-width: 100%;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .circular-chart {
    display: flex;
    width: 57%;
    margin-top: inherit;
    transform-origin: 50% 50%;
    transform-box: fill-box;
    transform: rotate(194deg);
    z-index: 2;
    align-self: center;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .circle {
    fill: none;
    stroke-width: .5;
    stroke-linecap: round;
    animation: progress 1s ease-out forwards;
}

@keyframes progress {
    0% {
        stroke-dasharray: 0 100;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .no-data-rossette {
    font-family: "Roboto", sans-serif;
    font-size: 22px;
    position: absolute;
    left: 42%;
    top: 45%;
    z-index: 8;
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .no-data-rossette {
        left: 36%;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .house-icon {
    position: absolute;
    left: 340px;
    width: 180px;
    z-index: 8;
    top: 230px;
}

@media screen and (min-width: 992px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .house-icon {
        left: calc(50% - 65px);
        top: calc(50% - 60px);
        width: 150px;
    }
}

@media screen and (min-width: 680px) and (max-width: 991px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .house-icon {
        left: calc(50% - 75px);
        top: calc(50% - 80px);
        width: 200px;
    }
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .house-icon {
        left: calc(50% - 45px);
        top: calc(50% - 50px);
        width: 130px;
    }
}

@media screen and (max-width: 374px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .house-icon {
        left: calc(50% - 45px);
        top: calc(50% - 40px);
        width: 100px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .tooltip {
    opacity: unset !important;
    height: fit-content !important;
    margin-left: 10px;
    width: 100px;
    display: none;
    position: absolute;
    font-size: 14px;
    z-index: 10;
    color: #fff;
    background-color: rgba(53, 56, 65, 0.6);
    padding: 10px;
    border-radius: 10px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .tooltip b {
    font-weight: bold;
}

@media screen and (min-width: 992px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .tooltip {
        width: fit-content;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day {
    display: none;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sun-icon-container {
    position: absolute;
    top: 26%;
    width: 30px;
    z-index: 8;
    left: calc(50% - 15px);
    -webkit-animation-name: fadeIn;
    -moz-animation-name: fadeIn;
    -ms-animation-name: fadeIn;
    -o-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    -ms-animation-iteration-count: 1;
    -o-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-duration: 0.4s;
    -moz-animation-duration: 0.4s;
    -ms-animation-duration: 0.4s;
    -o-animation-duration: 0.4s;
    animation-duration: 0.4s;
    -webkit-animation-delay: 0s;
    -moz-animation-delay: 0s;
    -ms-animation-delay: 0s;
    -o-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-timing-function: ease-in-out;
    -ms-animation-timing-function: ease-in-out;
    -o-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -ms-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sun-icon-container .sun-icon {
    width: 25px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sun-icon-container .sun-text {
    font-size: 14px;
}

@media screen and (max-width: 1390px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sun-icon-container {
        width: 25px;
    }
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sun-icon-container {
        width: 20px;
    }

    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sun-icon-container .sun-icon {
        width: 20px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sunrise-icon-container {
    position: absolute;
    top: calc(50% - 30px);
    left: 28%;
    width: 30px;
    z-index: 8;
    -webkit-animation-name: fadeIn;
    -moz-animation-name: fadeIn;
    -ms-animation-name: fadeIn;
    -o-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    -ms-animation-iteration-count: 1;
    -o-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-duration: 0.4s;
    -moz-animation-duration: 0.4s;
    -ms-animation-duration: 0.4s;
    -o-animation-duration: 0.4s;
    animation-duration: 0.4s;
    -webkit-animation-delay: 0.02s;
    -moz-animation-delay: 0.02s;
    -ms-animation-delay: 0.02s;
    -o-animation-delay: 0.02s;
    animation-delay: 0.02s;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-timing-function: ease-in-out;
    -ms-animation-timing-function: ease-in-out;
    -o-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -ms-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sunrise-icon-container .sunrise-text {
    font-size: 14px;
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sunrise-icon-container {
        top: calc(50% - 15px);
    }

    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sunrise-icon-container .sunrise-icon {
        width: 20px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sunset-icon-container {
    position: absolute;
    top: calc(50% - 30px);
    right: 28%;
    width: 30px;
    z-index: 8;
    -webkit-animation-name: fadeIn;
    -moz-animation-name: fadeIn;
    -ms-animation-name: fadeIn;
    -o-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    -ms-animation-iteration-count: 1;
    -o-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-duration: 0.4s;
    -moz-animation-duration: 0.4s;
    -ms-animation-duration: 0.4s;
    -o-animation-duration: 0.4s;
    animation-duration: 0.4s;
    -webkit-animation-delay: 0.04s;
    -moz-animation-delay: 0.04s;
    -ms-animation-delay: 0.04s;
    -o-animation-delay: 0.04s;
    animation-delay: 0.04s;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-timing-function: ease-in-out;
    -ms-animation-timing-function: ease-in-out;
    -o-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -ms-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sunset-icon-container .sunset-text {
    font-size: 14px;
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sunset-icon-container {
        top: calc(50% - 15px);
    }

    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .sunset-icon-container .sunset-icon {
        width: 20px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .night-icon-container {
    position: absolute;
    top: 67%;
    width: 25px;
    z-index: 8;
    left: calc(50% - 15px);
    -webkit-animation-name: fadeIn;
    -moz-animation-name: fadeIn;
    -ms-animation-name: fadeIn;
    -o-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
    -ms-animation-iteration-count: 1;
    -o-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-animation-duration: 0.4s;
    -moz-animation-duration: 0.4s;
    -ms-animation-duration: 0.4s;
    -o-animation-duration: 0.4s;
    animation-duration: 0.4s;
    -webkit-animation-delay: 0.06s;
    -moz-animation-delay: 0.06s;
    -ms-animation-delay: 0.06s;
    -o-animation-delay: 0.06s;
    animation-delay: 0.06s;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-timing-function: ease-in-out;
    -ms-animation-timing-function: ease-in-out;
    -o-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -ms-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .night-icon-container .night-icon {
    width: 20px;
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .night-icon-container .night-icon {
        width: 15px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-day .night-icon-container .night-text {
    font-size: 14px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-week ul, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-month ul, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-year ul {
    position: absolute;
    list-style-type: none;
    z-index: 8;
    padding: 0;
    top: 50%;
    left: 50%;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-week li, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-month li, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-year li {
    position: absolute;
    text-align: center;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-month {
    font-size: 16px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .chart-info-year {
    font-size: 14px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .rounded {
    background-color: #fff;
    width: 49.5%;
    height: 47.5%;
    margin-top: 0px;
    border-radius: 1000px;
    position: absolute;
    z-index: 6;
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .rounded {
        width: 50%;
        height: 50%;
        margin-top: 0px;
    }
}

@media screen and (max-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .rounded {
        width: 50%;
        height: 50%;
        margin-top: 0px;
    }
}

@supports (-moz-appearance: none) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .rounded {
        margin-top: -50px;
    }

    @media screen and (min-width: 1000px) and (max-width: 1390px) {
        .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .rounded {
            margin-top: 0px;
        }
    }
    @media screen and (max-width: 1000px) and (min-width: 680px) {
        .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .rounded {
            margin-top: 0px;
        }
    }
    @media screen and (max-width: 680px) {
        .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .chart .rounded {
            margin-top: 0px;
        }
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .line-chart-container {
    display: none;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .line-chart-container #line-chart {
    width: 100%;
    height: 100%;
    margin-top: 20px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-container {
    display: none;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .bar-chart-container #bar-chart {
    width: 100%;
    height: 100%;
    margin-top: 20px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper .consumption_container {
    display: flex;
    margin-right: 20px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-self: center;
    align-items: left;
    transition: .2s ease-in-out;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.kwh-wrapper {
    width: 100%;
    display: flex;
    justify-content: left;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.kwh-wrapper div.kwh-number {
    margin-top: 32px;
    font-size: 40px;
    font-weight: 300;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.price-wrapper {
    width: 100%;
    display: flex;
    justify-content: left;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.price-wrapper div.kwh-price {
    margin-top: 32px;
    font-size: 40px;
    font-weight: 300;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionKWH {
    width: 100%;
    height: 23px;
    margin-top: 10px;
    display: flex;
    flex-direction: row;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionKWH div.consumptionKWH1, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionKWH div.consumptionKWH2 {
    text-align: left;
    font-weight: 500;
    font-size: 13px;
    padding-left: 5px;
    line-height: 20px;
    color: white;
    transition: 2s ease-in-out;
    transition: width 1s ease-in-out 0s;
    align-items: center;
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionKWH div.consumptionKWH1, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionKWH div.consumptionKWH2 {
        font-size: 18px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionKWH div.consumptionKWH1 {
    background-color: #376EB3;
    overflow: hidden;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionKWH div.consumptionKWH2 {
    background-color: #C83257;
    margin-left: 3px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionEUR {
    width: 100%;
    height: 22px;
    margin-top: 10px;
    display: flex;
    flex-direction: row;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionEUR div.consumptionEUR1, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionEUR div.consumptionEUR2, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionEUR div.consumptionEUR3 {
    text-align: left;
    font-weight: 500;
    font-size: 13px;
    line-height: 20px;
    padding-left: 5px;
    min-width: 50px;
    transition: width 1s ease-in-out 0s;
    align-items: center;
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionEUR div.consumptionEUR1, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionEUR div.consumptionEUR2, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionEUR div.consumptionEUR3 {
        font-size: 18px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionEUR div.consumptionEUR1 {
    color: white;
    overflow: hidden;
    background-color: #376EB3;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionEUR div.consumptionEUR2 {
    background-color: #C83257;
    color: white;
    margin-left: 3px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.consumptionEUR div.consumptionEUR3 {
    background-color: #EFEFEF;
    color: black;
    margin-left: 3px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-top: 48px;
    width: 100%;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-round {
    border-radius: 100px;
    width: 13px;
    height: 13px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-legend {
    margin-left: 10px;
    font-weight: 400;
    font-size: 14px;
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-legend {
        font-size: 16px;
    }
}

@media screen and (max-width: 374px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-legend {
        font-size: 10px;
    }
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-1, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-2, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-3 {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-1 {
    color: black;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-1 div.color-round {
    background-color: #376EB3;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-2 {
    color: black;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-2 div.color-round {
    background-color: #C83257;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-3 {
    color: black;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.color-container div.color-3 div.color-round {
    background-color: #EFEFEF;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption .peak_off_peak_diagram {
    display: flex;
    width: 100%;
    height: 20px;
    align-items: center;
    margin-top: 40px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption .peak_off_peak_diagram .normal_hour {
    height: 2px;
    width: calc((100%) / 3);
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption .peak_off_peak_diagram .normal_hour.peak {
    background-color: #376EB3;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption .peak_off_peak_diagram .normal_hour.off_peak {
    background-color: #C83257;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption .peak_off_peak_diagram .special_hour {
    border-radius: 50%;
    height: 6px;
    min-width: 6px;
    position: relative;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption .peak_off_peak_diagram .special_hour.peak {
    background-color: #376EB3;
    color: #376EB3;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption .peak_off_peak_diagram .special_hour.off_peak {
    background-color: #C83257;
    color: #C83257;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption .peak_off_peak_diagram .special_hour .hour {
    position: absolute;
    bottom: -20px;
    left: -50%;
    font-size: 11px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.conso-comparaison {
    width: 100%;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    margin-top: 52px;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.conso-comparaison .arrow-up, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.conso-comparaison .arrow-down, .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.conso-comparaison .equal {
    font-size: 28px;
    margin-right: 16px;
    display: none;
    animation: bounceConso 5s infinite;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.conso-comparaison .arrow-down {
    width: 10px;
    color: #24b687;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.conso-comparaison .arrow-up {
    color: #d34a4a;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.conso-comparaison .equal {
    size: 40px;
    color: black;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.conso-comparaison div.comp-text {
    font-size: 18px;
    font-weight: 400;
}

.body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.conso-comparaison div.comp-text span.conso {
    font-size: 20px;
    font-weight: 400;
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.amm .consumption_view .main-consumption .chart-consumption-wrapper div.consumption div.conso-comparaison div.comp-text span.conso {
        font-size: 20px;
    }
}

@keyframes bounceConso {
    0%,
    20%,
    100% {
        transform: rotate(0);
    }
    4% {
        transform: rotate(-10deg);
    }
    8% {
        transform: rotate(5deg);
    }
    12% {
        transform: rotate(-3deg);
    }
    16% {
        transform: rotate(2deg);
    }
}

@keyframes bounceBar1 {
    0% {
        height: 30%;
    }
    10% {
        height: 26%;
    }
    15% {
        height: 33%;
    }
    18% {
        height: 28%;
    }
    22% {
        height: 31%;
    }
    24% {
        height: 29%;
    }
    25% {
        height: 30.5%;
    }
    26% {
        height: 30%;
    }
}

@keyframes bounceBar2 {
    0% {
        height: 60%;
    }
    10% {
        height: 56%;
    }
    15% {
        height: 63%;
    }
    18% {
        height: 58%;
    }
    22% {
        height: 61%;
    }
    24% {
        height: 59%;
    }
    25% {
        height: 60.5%;
    }
    26% {
        height: 60%;
    }
}

@keyframes bounceBar3 {
    0% {
        height: 80%;
    }
    10% {
        height: 76%;
    }
    15% {
        height: 83%;
    }
    18% {
        height: 78%;
    }
    22% {
        height: 81%;
    }
    24% {
        height: 79%;
    }
    25% {
        height: 80.5%;
    }
    26% {
        height: 80%;
    }
}

@keyframes circleBounce {
    0% {
        transform: scale(1);
    }
    10% {
        transform: scale(0.8);
    }
    15% {
        transform: scale(1.2);
    }
    18% {
        transform: scale(0.9);
    }
    22% {
        transform: scale(1.1);
    }
    24% {
        transform: scale(0.95);
    }
    25% {
        transform: scale(1);
    }
}

.body_consumption.em .welcome_sentence_bloc {
    margin-top: unset;
}

.body_consumption.em .welcome_sentence_bloc:first-letter {
    text-transform: capitalize;
}

.body_consumption.em #consumption-filter > *.hidden {
    display: none;
}

.body_consumption.em #know-more {
    margin-bottom: 20px;
}

@media (max-width: 540px) {
    .body_consumption.em #modal-knowmore-img {
        width: 100%;
    }
}

.body_consumption.em #consumption-title {
    font-size: 30px;
    color: #376EB3;
}

@media (min-width: 992px) {
    .body_consumption.em #consumption-graph {
        margin-top: 15px;
        margin-bottom: 50px;
    }

    .body_consumption.em #consumption-filter {
        text-align: center;
        padding-right: 25px;
        padding-left: 25px;
    }
}

.body_consumption.em #datepicker1 button, .body_consumption.em #datepicker2 button {
    max-width: 50px;
    padding-left: 15px;
    padding-right: 15px;
}

@media (max-width: 767px) {
    .body_consumption.em #consumption-graph {
        padding: unset;
    }

    .body_consumption.em #consumption-title {
        margin-top: 35px;
    }
}

.body_consumption.em .btn-group:hover .btn:hover {
    background-image: linear-gradient(to right, #D04E4B, #C93655);
}

.body_consumption.em .btn-group:hover .btn:not(:hover) {
    background-image: unset;
}

.body_consumption.em .btn-group .btn.active {
    background: unset;
    background-image: linear-gradient(to right, #D04E4B, #C93655);
}

.body_consumption.em #period .btn {
    vertical-align: middle;
}

.body_consumption.em .legend_graph > span {
    font-size: 0.8em;
    display: inline-block;
    margin-right: 1em;
    font-weight: bold;
}

.body_consumption.em .legend_graph > span > span {
    vertical-align: middle;
}

.body_consumption.em .legend_graph > span > span:first-child {
    display: inline-block;
    width: 0.9em;
    height: 0.9em;
    border-radius: 50%;
    margin-right: 0.5em;
}

.body_consumption.em #tempToggle, .body_consumption.em #priceToggle {
    width: 100%;
    max-width: 250px;
}

.body_consumption.em #tempToggle .btn-default-toggle, .body_consumption.em #priceToggle .btn-default-toggle {
    width: 50%;
}

.body_consumption.em .display-comparaison {
    white-space: normal;
    font-weight: 600;
    height: unset;
    background: #ebebeb;
    color: #666666;
    border-radius: 30px;
}

.body_consumption.em .display-comparaison:hover {
    color: white;
    background-image: linear-gradient(to right, #D04E4B, #C93655);
}

.body_consumption.em #title_datepicker, .body_consumption.em #priceTitle, .body_consumption.em #tempTitle {
    margin-left: 10px;
    margin-right: unset;
    font-weight: bold;
}

.body_consumption.em #datepicker1, .body_consumption.em #datepicker2 {
    margin-left: unset;
    margin-right: unset;
}

.body_consumption.em #datepicker1 .btn-default, .body_consumption.em #datepicker2 .btn-default {
    border: solid;
    border-color: #a3a3a3;
    border-width: 1px;
    background-color: #ebebeb;
}

.body_consumption.em #datepicker1 .datepicker, .body_consumption.em #datepicker2 .datepicker {
    margin-right: unset;
}

.body_consumption.em .consumption_view > div {
    padding-left: 10px;
    padding-right: 10px;
}

.body_consumption.em div.consumption {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: left;
    transition: .2s ease-in-out;
    margin-top: -30px;
}

.body_consumption.em div.consumption div.kwh-wrapper {
    width: 100%;
    display: flex;
    justify-content: left;
}

.body_consumption.em div.consumption div.kwh-wrapper div.kwh-number {
    margin-top: 32px;
    font-size: 40px;
    font-weight: 300;
}

.body_consumption.em div.consumption div.price-wrapper {
    width: 100%;
    display: flex;
    justify-content: left;
}

.body_consumption.em div.consumption div.price-wrapper div.kwh-price {
    margin-top: 32px;
    font-size: 40px;
    font-weight: 300;
}

.body_consumption.em div.consumption div.consumptionKWH {
    width: 100%;
    height: 23px;
    margin-top: 10px;
    display: flex;
    flex-direction: row;
}

.body_consumption.em div.consumption div.consumptionKWH div.consumptionKWH1, .body_consumption.em div.consumption div.consumptionKWH div.consumptionKWH2 {
    text-align: left;
    font-weight: 500;
    font-size: 13px;
    padding-left: 5px;
    line-height: 20px;
    color: white;
    transition: 2s ease-in-out;
    transition: width 1s ease-in-out 0s;
    align-items: center;
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.em div.consumption div.consumptionKWH div.consumptionKWH1, .body_consumption.em div.consumption div.consumptionKWH div.consumptionKWH2 {
        font-size: 18px;
    }
}

.body_consumption.em div.consumption div.consumptionKWH div.consumptionKWH1 {
    background-color: #cf4a4d;
    overflow: hidden;
}

.body_consumption.em div.consumption div.consumptionKWH div.consumptionKWH2 {
    background-color: #376EB3;
    margin-left: 3px;
}

.body_consumption.em div.consumption div.consumptionEUR {
    width: 100%;
    height: 22px;
    margin-top: 10px;
    display: flex;
    flex-direction: row;
}

.body_consumption.em div.consumption div.consumptionEUR div.consumptionEUR1, .body_consumption.em div.consumption div.consumptionEUR div.consumptionEUR2, .body_consumption.em div.consumption div.consumptionEUR div.consumptionEUR3 {
    text-align: left;
    font-weight: 500;
    font-size: 13px;
    line-height: 20px;
    padding-left: 5px;
    transition: width 1s ease-in-out 0s;
    align-items: center;
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.em div.consumption div.consumptionEUR div.consumptionEUR1, .body_consumption.em div.consumption div.consumptionEUR div.consumptionEUR2, .body_consumption.em div.consumption div.consumptionEUR div.consumptionEUR3 {
        font-size: 18px;
    }
}

.body_consumption.em div.consumption div.consumptionEUR div.consumptionEUR1 {
    color: white;
    overflow: hidden;
    background-color: #cf4a4d;
}

.body_consumption.em div.consumption div.consumptionEUR div.consumptionEUR2 {
    background-color: #376EB3;
    color: white;
    margin-left: 3px;
}

.body_consumption.em div.consumption div.consumptionEUR div.consumptionEUR3 {
    background-color: #DED7CA;
    color: black;
    margin-left: 3px;
}

.body_consumption.em div.consumption div.color-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-top: 48px;
    width: 100%;
}

.body_consumption.em div.consumption div.color-container div.color-round {
    border-radius: 100px;
    width: 13px;
    height: 13px;
}

.body_consumption.em div.consumption div.color-container div.color-legend {
    margin-left: 10px;
    font-weight: 400;
    font-size: 14px;
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.em div.consumption div.color-container div.color-legend {
        font-size: 16px;
    }
}

@media screen and (max-width: 374px) {
    .body_consumption.em div.consumption div.color-container div.color-legend {
        font-size: 10px;
    }
}

.body_consumption.em div.consumption div.color-container div.color-1, .body_consumption.em div.consumption div.color-container div.color-2, .body_consumption.em div.consumption div.color-container div.color-3 {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.body_consumption.em div.consumption div.color-container div.color-1 {
    color: #CF4A4D;
}

.body_consumption.em div.consumption div.color-container div.color-1 div.color-round {
    background-color: #CF4A4D;
}

.body_consumption.em div.consumption div.color-container div.color-2 {
    color: #376EB3;
}

.body_consumption.em div.consumption div.color-container div.color-2 div.color-round {
    background-color: #376EB3;
}

.body_consumption.em div.consumption div.color-container div.color-3 {
    color: black;
}

.body_consumption.em div.consumption div.color-container div.color-3 div.color-round {
    background-color: #DED7CA;
}

.body_consumption.em div.consumption div.conso-comparaison {
    width: 100%;
    height: 100px;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    margin-top: 32px;
}

.body_consumption.em div.consumption div.conso-comparaison .arrow-up, .body_consumption.em div.consumption div.conso-comparaison .arrow-down, .body_consumption.em div.consumption div.conso-comparaison .equal {
    font-size: 28px;
    margin-right: 16px;
    display: none;
    animation: bounceConso 5s infinite;
}

.body_consumption.em div.consumption div.conso-comparaison .arrow-down {
    width: 10px;
    color: #24b687;
}

.body_consumption.em div.consumption div.conso-comparaison .arrow-up {
    color: #d34a4a;
}

.body_consumption.em div.consumption div.conso-comparaison .equal {
    size: 40px;
    color: black;
}

.body_consumption.em div.consumption div.conso-comparaison div.comp-text {
    font-size: 18px;
    font-weight: 400;
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.em div.consumption div.conso-comparaison div.comp-text {
        font-size: 20px;
        margin-top: -30px;
    }
}

@media screen and (max-width: 680px) {
    .body_consumption.em div.consumption div.conso-comparaison div.comp-text {
        margin-top: -30px;
    }
}

.body_consumption.em div.consumption div.conso-comparaison div.comp-text span.conso {
    font-size: 20px;
    font-weight: 400;
}

@media screen and (max-width: 1000px) and (min-width: 680px) {
    .body_consumption.em div.consumption div.conso-comparaison div.comp-text span.conso {
        font-size: 20px;
    }
}

.body_consumption.em div.consumption .peak_off_peak_diagram {
    display: flex;
    width: 100%;
    height: 20px;
    align-items: center;
    margin-top: 40px;
}

.body_consumption.em div.consumption .peak_off_peak_diagram .normal_hour {
    height: 2px;
    width: calc((100%) / 3);
}

.body_consumption.em div.consumption .peak_off_peak_diagram .normal_hour.peak {
    background-color: #376EB3;
}

.body_consumption.em div.consumption .peak_off_peak_diagram .normal_hour.off_peak {
    background-color: #C83257;
}

.body_consumption.em div.consumption .peak_off_peak_diagram .special_hour {
    border-radius: 50%;
    height: 6px;
    min-width: 6px;
    position: relative;
}

.body_consumption.em div.consumption .peak_off_peak_diagram .special_hour.peak {
    background-color: #376EB3;
    color: #376EB3;
}

.body_consumption.em div.consumption .peak_off_peak_diagram .special_hour.off_peak {
    background-color: #C83257;
    color: #C83257;
}

.body_consumption.em div.consumption .peak_off_peak_diagram .special_hour .hour {
    position: absolute;
    bottom: -20px;
    left: -50%;
    font-size: 11px;
}

/*
 * File: _contact.scss
 * File Created: Thursday, 6th December 2018 3:37:26 pm
 * Author: Michal Burdzy (michal.burdzy@gripdocket.com)
 * -----
 * Last Modified: Wednesday, 13th February 2019 4:04:12 pm
 * Modified By: Paul Mazeau (paul.mazeau@gridpocket.com>)
 * -----
 * GridPocket SAS Copyright (C) 2018 All Rights Reserved
 * This source is property of GridPocket SAS.
 * Please email contact@gridpocket.com for more information.
 */
.body-contact {
    background-image: linear-gradient(to bottom right, #d5e8fa, #b3d3f1);
    background-size: cover;
    position: relative;
    min-height: 100vh;
}

.body-contact footer.footer {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100vw;
}

.body-contact .contact__container {
    display: flex;
    justify-content: space-between;
    background-color: #fff;
    padding: 40px 20px;
    margin: 50px auto;
    border-radius: 4px;
    box-shadow: 2px 4px 7px rgba(0, 0, 0, 0.2);
}

.body-contact .contact__block {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    height: 300px;
    width: 45%;
    background-color: #cbdef0;
    border-radius: 4px;
    box-shadow: 2px 4px 7px rgba(0, 0, 0, 0.2);
}

.body-contact .contact__block--body {
    padding: 3% 2% 5% 20%;
}

.body-contact .contact__block h3 {
    color: #0179c2;
    font-weight: 600;
    position: absolute;
    top: 5%;
    left: 20%;
}

.body-contact .contact__block h4 {
    font-weight: 600;
}

.body_survey {
    /* Complete part */
    /* Complete part */
    /* Complete part */
    /*
  .form-control.active{
      margin-top: 3px;
  }
  */
    /**SELECT SURCHAGE **/
    /********* BTN WITH SVG ****************/
    /*.part .question .btn-default:hover, {
    border-color: #1e8c99;
    color: #1e8c99 ;
    background: white ;
  }*/
}

.body_survey h3 span {
    color: grey;
    font-size: 15px;
}

.body_survey .title {
    text-align: center;
}

.body_survey .btn {
    -moz-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.body_survey .cachet_etat {
    width: 400px;
}

@media screen and (max-width: 991px) {
    .body_survey .cachet_etat {
        width: 320px;
    }
}

.body_survey .line_timeline, .body_survey .icon_timeline {
    position: relative;
    display: inline-block;
}

.body_survey .line_timeline {
    width: 100px;
    margin-left: 2px;
    border-bottom: 2px solid #b5c8d4;
    margin-right: 2px;
    margin-left: 4px;
}

.body_survey .icon_timeline {
    top: 3px;
    margin: -4px;
}

.body_survey .nav_part {
    display: inline;
    height: 30px;
}

.body_survey .nav_part .part_label {
    font-size: 15px;
    height: 55px;
    cursor: pointer;
    position: absolute;
    left: 50%;
    bottom: -25%;
    transform: translate(-50%);
    width: 124px;
    color: #b5c8d4;
    z-index: 8;
}

.body_survey i.fa-exclamation {
    color: #b5c8d4;
    display: none;
}

.body_survey .nav_part.previous_active .line_timeline, .body_survey .nav_part.active .line_timeline, .body_survey .nav_part.previous_active .icon {
    border-color: #af3a4b;
}

.body_survey .nav_part.active .icon {
    border-color: #af3a4b;
}

.body_survey .nav_part.active .part_label {
    color: #c84257;
}

.body_survey .nav_part.previous_active .part_label {
    color: #c84257;
}

.body_survey .nav_part.previous_active i.fa-check, .body_survey .nav_part.previous_active i.fa-exclamation {
    color: #c84257;
}

.body_survey .nav_part.active i.fa-exclamation, .body_survey .nav_part.previous_active i.fa-check {
    color: white;
}

.body_survey .survey .icon {
    width: 24px;
    height: 24px;
    line-height: 20px;
    border: 2px solid #b5c8d4;
    border-radius: 50%;
    display: block;
    position: relative;
    top: 4px;
}

.body_survey .survey .title .info_button {
    text-align: right;
    padding-top: 20px;
    font-size: 120%;
    color: #8f9a7e;
    cursor: pointer;
    position: relative;
    top: 5px;
}

.body_survey .survey .title .info_button i {
    font-size: 160%;
    vertical-align: bottom;
}

.body_survey .complete .icon {
    background: #b5c8d4;
}

.body_survey .survey .active .icon, .body_survey .previous_active.complete .icon {
    background: #c84257;
}

.body_survey .nav_part i.fa-check {
    display: none;
    color: white;
}

.body_survey .nav_part.complete i.fa-check {
    display: inline;
}

.body_survey .nav_part.warning i.fa-exclamation {
    display: inline;
}

.body_survey .nav_part.warning .icon {
    top: 1px;
    margin-top: -11px;
}

.body_survey .nav_part.complete .icon {
    top: 1px;
    margin-top: -11px;
}

@media screen and (max-width: 1199px) and (min-width: 992px) {
    .body_survey .btn-group.btn-group-justified .btn {
        padding: 5px;
    }
}

@media screen and (max-width: 991px) {
    .body_survey .line_timeline {
        width: 80px;
    }

    .body_survey .part .col-md-4 {
        border: none !important;
    }
}

.body_survey .mobile_nav {
    display: none;
    margin-bottom: 20px;
}

@media screen and (max-width: 544px) {
    .body_survey .nav_container.pc {
        display: none;
    }

    .body_survey .mobile_nav {
        display: block;
        margin-top: 15px;
    }

    .body_survey .mobile_nav .part_label {
        display: none;
    }

    .body_survey .mobile_nav .line_timeline {
        width: 11%;
        border-width: 2px;
        margin-left: 4px;
        top: 0px;
    }

    .body_survey .mobile_nav .fa-stack {
        font-size: 18px;
        cursor: pointer;
    }

    .body_survey .mobile_nav .active .part_label {
        display: block;
        top: 40px;
        font-size: 19px;
    }

    .body_survey .mobile_nav .active[data-navcustom="part1"] .part_label {
        transform: translate(-15%);
        text-align: left;
    }

    .body_survey .mobile_nav .active[data-navcustom="part5"] .part_label {
        transform: translate(-87%);
        text-align: right;
    }
}

.body_survey .pd30 {
    padding: 30px;
}

.body_survey .pd40 {
    padding: 40px;
}

.body_survey .pd20 {
    padding: 20px;
}

.body_survey .next_container {
    text-align: center;
    margin-bottom: 20px;
}

.body_survey .next_container button {
    display: inline-block;
    position: static;
    cursor: pointer;
}

.body_survey .next_container .btn_next, .body_survey .next_container .btn_previous {
    color: white;
    background-image: linear-gradient(to right, #D04E4B, #C93655);
}

.body_survey .next_container .btn_next:hover, .body_survey .next_container .btn_previous:hover {
    background-image: linear-gradient(to right, #bb4744, #b5314d);
}

.body_survey .next_container .btn_finish {
    border-radius: 30px;
    font-size: 15px;
    font-weight: 600;
}

.body_survey .part {
    position: fixed;
    z-index: 0;
    top: 0;
    visibility: hidden;
    opacity: 0;
}

.body_survey .part label.other p {
    position: relative;
    top: 50%;
}

.body_survey .part .active p {
    color: black !important;
}

.body_survey .display_part {
    position: relative;
    display: block;
    visibility: visible;
    height: initial;
    transition: all ease 1s;
    opacity: 1;
}

.body_survey .part .col-md-4 {
    border: solid #337ab7 1px;
    border-top: none;
    border-bottom: none;
}

.body_survey .part .col-md-4:first-child {
    border-left: none;
    position: relative;
    right: -1px;
}

.body_survey .part .col-md-4:last-child {
    border-right: none;
    position: relative;
    right: 1px;
}

.body_survey .question {
    /*box-shadow: 0px 0px 1px 0px rgba(0,0,0,0.3);
    border-radius:4px;*/
    margin-bottom: 30px;
    /*background: rgba(255,255,255,0.8);*/
}

.body_survey .part .question h3 {
    font-size: 120%;
    font-weight: 700;
    text-align: justify;
    margin-top: 0;
    margin-bottom: 20px;
}

.body_survey .radio_group {
    display: none;
}

.body_survey .btn-group button.dropdown-toggle {
    min-width: 100%;
    text-align: right;
    overflow: hidden;
}

.body_survey .btn-group ul.dropdown-menu {
    min-width: 100%;
}

.body_survey .btn-group ul.dropdown-menu li {
    text-align: center;
}

.body_survey .btn-group button.dropdown-toggle span.selected {
    float: left;
    width: 95%;
    overflow: hidden;
    text-align: center;
}

.body_survey .btn-group:hover .btn:hover {
    background-image: linear-gradient(to right, #D04E4B, #C93655);
}

.body_survey .btn-group:hover .btn:not(:hover) {
    background-image: unset;
}

.body_survey .btn-group .btn.active {
    background: unset;
    background-image: linear-gradient(to right, #D04E4B, #C93655);
}

@media screen and (max-width: 544px) {
    .body_survey .answers {
        text-align: center;
    }
}

.body_survey .answers + .input {
    margin-top: 3px;
}

.body_survey .part .question .pickup_answer.btn {
    width: 100px;
    height: 100px;
    margin-top: 3px;
    margin-left: 1px;
    margin-right: 1px;
    margin-bottom: 2px;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
    position: relative;
    /*overflow: hidden;*/
}

.body_survey .pickup_answer.btn-default {
    border-radius: 13px;
    background-color: #ebebeb;
}

.body_survey .pickup_answer.btn-default.active {
    border-color: #c84257 !important;
    border: solid 2px;
    color: black !important;
    background-color: white !important;
    box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.4);
}

.body_survey .pickup_answer.btn-default.active.focus, .body_survey .pickup_answer.btn-default.active:focus, .body_survey .pickup_answer.btn-default.active:hover {
    border-color: #c84257 !important;
    border: solid 2px;
    color: black !important;
    background-color: white !important;
    box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.4);
}

.body_survey .pickup_answer.btn-default.focus:active {
    border-color: #c84257 !important;
    border: solid 2px;
    color: black !important;
    background-color: white !important;
    box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.4);
}

.body_survey .pickup_answer.btn-default:active:focus, .body_survey .pickup_answer.btn-default:active:hover {
    border-color: #c84257 !important;
    border: solid 2px;
    color: black !important;
    background-color: white !important;
    box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.4);
}

.body_survey .part .question .btn .img_container {
    height: 85px;
}

.body_survey .part .question .btn .img_container .default {
    width: 90%;
    max-height: 90%;
    position: relative;
    top: 50%;
    transform: translate(0, -50%);
    border-top-right-radius: 13px;
    border-top-left-radius: 13px;
}

.body_survey .part .question .btn .img_container > * {
    z-index: 0;
    vertical-align: middle;
    width: 100%;
    filter: gray;
    filter: grayscale(100%) contrast(70%) brightness(125%);
    -webkit-filter: grayscale(100%) contrast(70%) brightness(125%);
    -ms-filter: grayscale(100%) contrast(70%) brightness(125%);
    text-align: center;
    display: inline-block;
}

.body_survey .part .question .btn .area_click {
    cursor: pointer;
}

.body_survey .part .question label.pickup_answer:hover {
    background-color: #cccccc !important;
    color: #666;
}

.body_survey .part .question .btn:hover .img_container > *, .body_survey .part .question .btn.active .img_container > * {
    filter: none;
    -webkit-filter: none;
    -ms-filter: none;
}

.body_survey .part .question .btn .text_container {
    font-size: .8em;
    position: relative;
    white-space: normal;
    margin-top: -7px;
}

.body_survey .part .question .pickup_answer.btn.active p {
    color: #1e8c99;
}

.body_survey .rangeslider__fill {
    background: #1e8c99 !important;
}

.body_survey .rangeslider.rangeslider--horizontal {
    height: 15px;
}

.body_survey .rangeslider__handle {
    top: -6px !important;
    width: 27px !important;
    height: 27px !important;
    box-shadow: none !important;
}

.body_survey .part .question .rangeslider--horizontal {
    margin-top: 30px;
}

.body_survey .input-group.success input {
    border-color: #ebebeb;
}

.body_survey .input-group.success span {
    border: #ebebeb;
    background-color: #c84257;
    color: white;
    -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.body_survey input[type="range"] {
    padding: 0;
    height: 20px;
    margin-top: 15px;
}

.body_survey .pickup_answer.text-center.btn.btn-default.active::before {
    content: "\f00c";
    width: 20px;
    height: 20px;
    position: absolute;
    top: -10px;
    font-family: 'Font Awesome 5 Free';
    color: white;
    right: -10px;
    z-index: +1;
    display: block;
    border-radius: 50%;
    background: #c84257;
}

.body_survey .survey .part .question .pickup_answer.btn.active p {
    color: black;
}

.body_survey .survey .pickup_answer.btn-default.active p, .body_survey .survey .pickup_answer.btn-default.active.focus p, .body_survey .survey .pickup_answer.btn-default.active:focus p, .body_survey .survey .pickup_answer.btn-default.active:hover p {
    color: black;
}

.body_survey .survey .pickup_answer.btn-default.focus:active p {
    color: black;
}

.body_survey .survey .pickup_answer.btn-default:active:focus p, .body_survey .survey .pickup_answer.btn-default:active:hover p {
    color: black;
}

.body_survey hr {
    border-color: #eee;
}

.body_smarthome {
    /********** MODAL **************/
}

.body_smarthome .smarthome-content {
    background-color: rgba(255, 255, 255, 0.7);
}

.body_smarthome .widget {
    background-color: white;
    border: 1px solid #eee;
    border-radius: 4px;
    color: #222;
    font-size: 20px;
    text-align: justify;
    padding: 10px;
    margin-bottom: 10px !important;
    margin-top: 10px !important;
    overflow: hidden !important;
}

.body_smarthome .widget .loading {
    position: relative;
    max-height: 115%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.body_smarthome .widget h1 {
    font-size: 21px;
    text-align: center;
    margin: 0;
    margin-bottom: 3px;
    position: relative;
    z-index: -1;
    color: #376EB3;
    font-weight: bold;
}

.body_smarthome .widget h1 .glyphicon {
    color: #555;
    font-size: 17px;
    margin-right: 7px;
}

@media (min-width: 992px) and (max-width: 1199px) {
    .body_smarthome .widget h1 {
        font-size: 18px;
        margin-bottom: 3px;
    }

    .body_smarthome .widget h1 .glyphicon {
        font-size: 17px;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .body_smarthome .widget h1 {
        font-size: 13px;
        margin-bottom: 3px;
    }

    .body_smarthome .widget h1 .glyphicon {
        font-size: 13px;
    }
}

.body_smarthome .grid-stack > .grid-stack-item > .ui-resizable-se {
    bottom: 10px !important;
}

.body_smarthome .mark {
    background-color: rgba(200, 123, 23, 0.2);
}

.body_smarthome .new_widget {
    background-color: #509cd3;
    margin-bottom: 10px !important;
    margin-top: 10px !important;
    color: white;
    font-size: 100px;
    display: flex;
    /* contexte sur le parent */
    flex-direction: column;
    /* direction d'affichage verticale */
    justify-content: center;
    text-align: center;
    cursor: pointer;
}

.body_smarthome .widget .glyphicon-trash {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
    cursor: pointer;
    background-color: white;
    display: none;
    padding: 5px;
    color: #444;
}

.body_smarthome .widget .glyphicon-trash:hover {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
    color: #e25;
}

.body_smarthome .modal-body {
    margin-top: 20px;
    height: 65vh;
}

.body_smarthome .modal-body .menu {
    height: 100%;
    border-right: solid 1px #ddd;
}

.body_smarthome .modal-body .menu ul li {
    list-style: none;
    font-size: 18px;
    cursor: pointer;
    margin-bottom: 10px;
}

.body_smarthome .modal-body .menu ul li.active {
    text-decoration: underline;
}

.body_smarthome .modal-body .all_widgets {
    overflow: auto;
    height: 100%;
}

.body_smarthome .modal-body .all_widgets ul li {
    list-style: none;
    width: 200px;
    height: 200px;
    display: inline-block;
    cursor: pointer;
    box-shadow: 0px 0px 5px -2px #656565;
    overflow: hidden;
    margin: 6px;
}

.body_smarthome .modal-body .all_widgets ul li a {
    width: 100%;
    height: 100%;
    text-align: center;
    font-size: 15px;
    text-decoration: none;
    position: relative;
    display: block;
}

.body_smarthome .modal-body .all_widgets ul li a h3 {
    margin: 0;
    padding: 10px;
    z-index: 9999;
    position: relative;
}

.body_smarthome .modal-body .all_widgets ul li a div {
    height: 60%;
    position: absolute;
    bottom: 10px;
    transition: all ease 1s;
    z-index: 0;
    width: 200%;
    text-align: center;
    left: -50%;
}

.body_smarthome .modal-body .all_widgets ul li img {
    max-height: 100%;
    margin: auto;
    display: block;
}

.body_smarthome .modal-body .all_widgets ul li > img {
    max-height: 100%;
    position: relative;
    top: 50%;
    transform: translate(-50%, -50%);
    left: 50%;
}

.body_smarthome .modal-body .all_widgets ul li:hover div {
    height: 75%;
    opacity: 0.5;
    /*transform: rotate(10deg);*/
}

.body_smarthome .modal-body .registred {
    color: #5cb85c;
    text-decoration: none;
}

@media (max-width: 769px) {
    .body_smarthome .widget_list {
        display: block;
        margin: auto;
        text-align: center;
        margin-left: -47px;
    }

    .body_smarthome .modal-body {
        height: initial;
        margin-top: 0px;
    }

    .body_smarthome .modal-body .menu {
        border: none;
        border-bottom: 1px solid #ddd;
        height: initial;
    }

    .body_smarthome .modal-body .menu ul li {
        font-size: 12px;
        margin-bottom: 3px;
        display: inline;
        padding: 2vw;
    }

    .body_smarthome .modal-body .all_widgets {
        height: 55vh;
    }
}

/* TO BE TESTED AND SHOULD PROBABLY BE REMOVED */
@media (min-width: 992px) and (max-width: 1199px) {
    .form-control {
        height: 34px;
    }
}

.alt-center-block {
    display: table;
    margin-right: auto;
    margin-left: auto;
}

@media screen and (max-width: 767px) {
    body {
        color: #666;
    }
}

.body_flex {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.body_flex .full_height_content {
    display: flex;
    flex: 1;
}

#modal-change-password-view .field-icon {
    float: right;
    margin-right: 10px;
    margin-top: -26px;
    position: relative;
    z-index: 2;
    width: 25px;
    height: 20px;
    cursor: pointer;
}

h1, h2, h3 {
    color: #3065A9;
}

h1, h2 {
    font-size: 26px;
    line-height: 1.1;
}

h3 {
    font-size: 20px;
}

.alert {
    display: none;
}

#modal-contact-view .alert {
    display: none;
}

.logo {
    margin-bottom: 10px;
}

/* button global style */
.error-p {
    color: #C83257;
    display: none;
    font-family: "Roboto", sans-serif;
    font-size: 12px;
    text-align: left;
    line-height: 14px;
    font-weight: normal;
}

.exclamation-circle-icon {
    margin-right: 5px;
    width: 18px;
}

.btn {
    position: relative;
    border: none;
    border-radius: 0;
    padding-left: 30px;
    padding-right: 30px;
    height: 34px;
}

.btn:focus, .btn:active {
    outline: none;
}

.btn.btn-lg {
    padding: 13px 16px;
    font-size: 18px;
    font-weight: 600;
}

.btn.btn-default {
    color: #666;
    background-size: 300% 100%;
    background-color: unset;
    font-size: 15px;
    font-weight: 600;
    border-radius: 30px;
}

.btn.btn-primary {
    color: #fff;
    background-size: 300% 100%;
    background-image: #21A3C9;
}

.btn.btn-primary.static {
    cursor: none;
    pointer-events: none;
}

.btn.btn-primary.static:hover {
    background-position: initial;
    transition: unset;
}

.btn.btn-primary:hover {
    background-position: 100% 0;
    transition: all .4s ease-in-out;
}

.btn.btn-secondary {
    width: unset;
    background-color: #ebe8e5;
    border-radius: 20px;
    padding: 5px 15px;
    text-decoration-line: unset;
}

.btn.btn-secondary:hover {
    background-position: 100% 0;
    transition: all .4s ease-in-out;
}

.btn.btn-white {
    width: unset;
    background-color: #ffffff;
    border-radius: 20px;
    text-decoration-line: unset;
    font-size: 16px;
    color: #376EB3;
}

.btn.btn-white.chevron {
    background-image: url("/assets/common/chevron_blue.svg");
}

.btn.btn-grey {
    width: unset;
    background-color: #ebe8e4;
    border-radius: 20px;
    text-decoration-line: unset;
    font-size: 16px;
    color: #376EB3;
}

.btn.chevron {
    background-size: 8px;
    background-repeat: no-repeat;
    background-position: center right 20px;
    padding-right: 45px;
}

.btn.chevron:hover {
    background-position: center right 18px;
    transition: all .1s ease-in-out;
}

.btn-group {
    height: 100%;
    color: #666;
    background-size: 300% 100%;
    background-color: #ebebeb;
    display: inline-block;
    font-size: 15px;
    font-weight: 600;
    border-radius: 30px;
    padding: 3px;
}

.btn-group .btn.btn-default-toggle {
    background: unset;
    display: inline-block;
    font-size: 15px;
    font-weight: 600;
    transition: none;
    border-radius: 30px;
}

.btn.btn-default.active, .btn-group:hover .btn.btn-default:hover, .btn.btn-default-toggle.active {
    box-shadow: unset;
    color: #fff;
    background-color: #c84257;
}

.btn-group:hover .btn.btn-default-toggle:hover {
    box-shadow: unset;
    color: #fff;
    background-color: #c84257;
}

.btn-group:hover .btn.btn-default, .btn-group:hover .btn.btn-default-toggle {
    background-color: #ebebeb;
    color: #666;
}

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
    border-radius: inherit;
}

.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
    border-top-right-radius: inherit;
    border-bottom-right-radius: inherit;
}

.btn-group > .btn:last-child:not(:first-child) {
    border-top-left-radius: inherit;
    border-bottom-left-radius: inherit;
}

.btn-group > .dropdown-toggle:not(:first-child) {
    border-top-left-radius: inherit;
    border-bottom-left-radius: inherit;
}

/* Uppercase first letter */
span.uppercase-first {
    display: inline-block;
}

span.uppercase-first:first-letter {
    text-transform: uppercase !important;
}

/*== MODALS ==*/
.modal.modal_default .modal-content {
    border: none;
    border-radius: 0;
}

.modal.modal_default .modal-header .close {
    opacity: 1;
    height: 48px;
    width: 48px;
    border-radius: 50%;
    position: absolute;
    right: 15px;
    top: 15px;
}

#modal-contact-view .modal-title {
    font-size: 26px;
}

#modal-contact-view .modal-footer .btn-primary {
    color: #fff;
    background-size: 300% 100%;
    background-image: #21A3C9;
    border-radius: 20px;
    margin-right: 5px;
    padding: 6px;
    padding-left: 30px;
    padding-right: 30px;
}

/* Modal Contract */
.modal_contract .modal-content {
    border: none;
    border-radius: 0;
    display: table;
    margin: 0 auto;
    width: 100%;
    max-width: 450px;
    min-height: 100%;
}

.modal_contract .modal-content button {
    width: 100%;
}

.modal_contract .modal-content button + button {
    margin-top: 15px;
}

.modal_contract .modal-content button .criteria {
    margin-top: 4px;
}

.modal_contract .modal-content button .criteria .item {
    display: inline-block;
    background-color: white;
    color: #C83257;
    font-size: 12px;
    padding: 3px 6px;
    font-weight: 700;
    position: relative;
}

.modal_contract .modal-content button .criteria .item.actif {
    padding-right: 25px;
}

.modal_contract .modal-content button .criteria .item.actif:after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 12px;
    height: 12px;
    background-color: #5cb85c;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    border-radius: 50%;
}

.modal_contract .modal-content button .criteria .item.cesse {
    padding-right: 25px;
}

.modal_contract .modal-content button .criteria .item.cesse:after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 12px;
    height: 12px;
    background-color: #f0ad4e;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    border-radius: 50%;
}

.modal_contract .modal-content button .criteria .item.cancel {
    padding-right: 25px;
}

.modal_contract .modal-content button .criteria .item.cancel:after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 12px;
    height: 12px;
    background-color: #C83257;
    top: 50%;
    right: 7px;
    transform: translateY(-50%);
    border-radius: 50%;
}

/*== EMPTY DASHBOARD ANNONCE ==*/
.empty_dashboard_annonce {
    background-color: #fff;
}

.empty_dashboard_annonce .explanation {
    text-align: center;
    padding: 30px 30px 0;
    color: #666;
}

.empty_dashboard_annonce .explanation h3 {
    font-size: 26px;
    margin-top: 0;
    margin-bottom: 20px;
    color: #666;
}

.empty_dashboard_annonce .explanation p {
    font-size: 17px;
    line-height: 1.1;
}

.empty_dashboard_annonce .explanation p a {
    color: #666;
    text-decoration: underline;
    transition: 0.2s;
}

.empty_dashboard_annonce .explanation p a:hover {
    color: #fa6b66;
}

.empty_dashboard_annonce .explanation .btn {
    margin-top: 30px;
    margin-bottom: 20px;
    min-width: 200px;
}

.empty_dashboard_annonce .optional_bloc {
    min-height: 338px;
    background-color: #fff;
}

.empty_dashboard_annonce .soon {
    display: table;
    margin: 0 auto;
    position: relative;
    bottom: 0;
    transform: translateY(50%);
}

.empty_dashboard_annonce .soon p {
    background-color: white;
    color: #376EB3;
    font-weight: 700;
    padding: 20px 25px;
    margin-bottom: 0;
    box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.3);
    position: relative;
    z-index: 10;
}

.empty_dashboard_annonce .soon .decoration {
    position: absolute;
    background-color: white;
    height: 100%;
    width: calc(100% - 20px);
    top: 0;
    left: 10px;
    transform: rotate(-6deg);
    box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.3);
    opacity: .5;
}

.empty_dashboard_annonce .arguments_bloc {
    background-color: cyan;
    padding: 60px 30px 0;
    color: white;
    font-size: 0;
    background: #6f46cf;
    background: -moz-linear-gradient(left, #6f46cf 0%, #3f6bb6 100%);
    background: -webkit-gradient(left top, right top, color-stop(0%, #6f46cf), color-stop(100%, #3f6bb6));
    background: -webkit-linear-gradient(left, #6f46cf 0%, #3f6bb6 100%);
    background: -o-linear-gradient(left, #6f46cf 0%, #3f6bb6 100%);
    background: -ms-linear-gradient(left, #6f46cf 0%, #3f6bb6 100%);
    background: linear-gradient(to right, #6f46cf 0%, #3f6bb6 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#6f46cf', endColorstr='#3f6bb6', GradientType=1);
}

.empty_dashboard_annonce .arguments_bloc h3 {
    font-size: 24px;
    text-transform: uppercase;
    margin-top: 0;
    color: white;
}

.empty_dashboard_annonce .arguments_bloc .slick-slider .item .summary {
    font-size: 16px;
}

.empty_dashboard_annonce .arguments_bloc .picture {
    max-width: 100%;
}

.empty_dashboard_annonce .arguments_bloc .slick-dotted.slick-slider {
    margin-bottom: 0;
}

.empty_dashboard_annonce .arguments_bloc .slider .slick-arrow {
    visibility: hidden;
}

.empty_dashboard_annonce .arguments_bloc .slider .slick-dots {
    width: auto;
    left: calc(25% + (75% / 2) + 30px);
    transform: translateX(-50%);
    bottom: 50px;
}

.empty_dashboard_annonce .arguments_bloc .slider .slick-dots li {
    margin: 0 8px;
}

.empty_dashboard_annonce .arguments_bloc .slider .slick-dots li button::before {
    content: '';
    opacity: 1;
    background-color: white;
    width: 16px;
    height: 16px;
    border-radius: 50%;
}

.empty_dashboard_annonce .arguments_bloc .slider .slick-dots li.slick-active button::before {
    background-color: #313772;
}

@media screen and (max-width: 991px) {
    .empty_dashboard_annonce .arguments_bloc .slider .slick-dots {
        bottom: 15px;
    }
}

@media screen and (max-width: 767px) {
    .empty_dashboard_annonce .arguments_bloc {
        padding-bottom: 5px;
    }

    .empty_dashboard_annonce .arguments_bloc .slick-dotted.slick-slider {
        margin-bottom: 15px;
        margin-top: 15px;
    }

    .empty_dashboard_annonce .arguments_bloc .slider {
        margin-bottom: 15px;
    }

    .empty_dashboard_annonce .arguments_bloc .slider .slick-dots {
        position: relative;
        left: 50%;
        bottom: -5px;
        margin-bottom: 0;
    }
}

@media screen and (max-width: 480px) {
    .empty_dashboard_annonce .explanation {
        padding: 30px 15px 0;
    }

    .empty_dashboard_annonce .explanation h3 {
        font-size: 22px;
    }

    .empty_dashboard_annonce .soon p {
        padding: 15px;
    }

    .empty_dashboard_annonce .arguments_bloc {
        padding: 50px 15px 5px;
    }

    .empty_dashboard_annonce .arguments_bloc h3 {
        font-size: 22px;
    }
}

body {
    font-family: "Roboto" !important;
}

body .h1, body .h2, body .h3, body .h4, body .h5, body .h6, body h1, body h2, body h3, body h4, body h5, body h6 {
    font-family: "Roboto" !important;
}

.mt-1 {
    margin-top: 0.25rem !important;
}

.mt-2 {
    margin-top: 0.5rem !important;
}

.mt-3 {
    margin-top: 1rem !important;
}

.mt-4 {
    margin-top: 1.5rem !important;
}

.mt-5 {
    margin-top: 2rem !important;
}

.mt-6 {
    margin-top: 3rem !important;
}

/*
 * File: oldbrowser.scss
 * File Created: Friday, 10th May 2019 11:53:57 am
 * Author: Romain Devalle (romain.devalle@gridpocket.com)
 * -----
 * Last Modified: Friday, 10th May 2019 11:54:38 am
 * Modified By: Romain Devalle (romain.devalle@gridpocket.com>)
 * -----
 * GridPocket SAS Copyright (C) 2019 All Rights Reserved
 * This source is property of GridPocket SAS.
 * Please email contact@gridpocket.com for more information.
 */
#outdated {
    font-family: "Open Sans", "Segoe UI", sans-serif;
    position: absolute;
    background-color: #f25648;
    color: white;
    display: none;
    overflow: hidden;
    left: 0;
    position: fixed;
    text-align: center;
    text-transform: uppercase;
    top: 0;
    width: 100%;
    z-index: 1500;
    padding: 0 24px 24px 0;
}

#outdated.fullscreen {
    height: 100%;
}

#outdated .vertical-center {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

#outdated h6 {
    font-size: 25px;
    line-height: 25px;
    margin: 12px 0;
}

#outdated p {
    font-size: 12px;
    line-height: 12px;
    margin: 0;
}

#outdated #buttonUpdateBrowser {
    border: 2px solid white;
    color: white;
    cursor: pointer;
    display: block;
    margin: 30px auto 0;
    padding: 10px 20px;
    position: relative;
    text-decoration: none;
    width: 230px;
}

#outdated #buttonUpdateBrowser:hover {
    background-color: white;
    color: #f25648;
}

#outdated .last {
    height: 20px;
    position: absolute;
    right: 70px;
    top: 10px;
    width: auto;
    display: inline-table;
}

#outdated .last[dir=rtl] {
    left: 25px !important;
    right: auto !important;
}

#outdated #buttonCloseUpdateBrowser {
    color: white;
    display: block;
    font-size: 36px;
    height: 100%;
    line-height: 36px;
    position: relative;
    text-decoration: none;
    width: 100%;
}

/*Specific font for admin*/
/* .admin {
    background: #04A9D0;
} */
#main-menu {
    background-color: #fff;
    border: none;
}

#main-menu li a {
    display: block;
    color: #376EB3;
}

#main-menu #left-navbar.nav {
    margin-left: 40px;
}

#main-menu #left-navbar.nav li > a {
    font-size: 18px !important;
    font-weight: 600;
    border-bottom: 5px solid transparent;
    padding: 18px 25px;
}

#main-menu #left-navbar.nav li.active a, #main-menu #left-navbar.nav li a:hover {
    border-bottom: 5px solid #C83257;
    background-color: transparent;
}

#main-menu #left-navbar.nav .open > a {
    border-bottom: 5px solid #C83257;
    background-color: transparent;
}

#main-menu .dropdown-toggle {
    padding: 8px;
    margin-right: 8px;
}

#main-menu .dropdown-menu {
    margin: 0;
    padding: 0;
    text-decoration: none;
    list-style: none;
}

#main-menu .dropdown-menu ul, #main-menu .dropdown-menu li, #main-menu .dropdown-menu a {
    margin: 0;
    padding: 0;
    text-decoration: none;
    list-style: none;
}

#main-menu .visible-xs {
    margin: 0;
    padding: 0;
    text-decoration: none;
    list-style: none;
}

#main-menu .visible-xs ul, #main-menu .visible-xs li, #main-menu .visible-xs a {
    margin: 0;
    padding: 0;
    text-decoration: none;
    list-style: none;
}

#main-menu .navbar-collapse {
    margin: 0;
    padding: 0;
    text-decoration: none;
    list-style: none;
}

#main-menu .dropdown-menu, #main-menu .visible-xs {
    min-width: 200px;
}

#main-menu .dropdown-menu a, #main-menu .visible-xs a {
    padding: 8px;
    padding-right: 12px;
    padding-left: 12px;
}

#main-menu .dropdown-menu li.active a, #main-menu .visible-xs li.active a, #main-menu .dropdown-menu li a:hover, #main-menu .visible-xs li a:hover {
    font-weight: normal;
}

#main-menu .dropdown-menu ul.sub-menu, #main-menu .visible-xs ul.sub-menu {
    background-color: #FAFDFE;
    box-shadow: inset 0 10px 10px -12px #90c5f6;
    position: relative;
    width: 100%;
}

#main-menu .dropdown-menu ul.sub-menu li a, #main-menu .visible-xs ul.sub-menu li a {
    padding-left: 20%;
}

#main-menu .dropdown-menu .title, #main-menu .visible-xs .title {
    font-size: 1.1em;
    font-weight: 700;
    padding: 20px;
    text-align: center;
    color: #777777;
}

#main-menu .dropdown-menu .title i, #main-menu .visible-xs .title i {
    font-size: 1.5em;
    vertical-align: bottom;
}

#main-menu .dropdown-menu .divider, #main-menu .visible-xs .divider {
    width: 100%;
    height: 1px;
    background-color: #e5e5e5;
}

#main-menu button.navbar-toggle {
    float: left;
    border: none;
}

#main-menu button.navbar-toggle:hover, #main-menu button.navbar-toggle:focus {
    background-color: transparent;
}

#main-menu button.navbar-toggle .icon-bar {
    background-color: #777777;
}

#main-menu #menu_contract {
    height: 45px;
    display: flex;
    align-items: center;
}

#main-menu .contract_content {
    display: flex;
    align-items: center;
}

#main-menu .contract_content .contract_icon {
    font-size: 2.5em;
}

#main-menu .contract_content .contract_info {
    padding-right: 10px;
    padding-left: 10px;
    font-size: 12px;
    line-height: 12px;
    width: 90%;
}

#main-menu .contract_content .contract_info .address {
    max-width: 160px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: inline-block;
}

#main-menu .contract_content .contract_info .name {
    padding-right: 10px;
}

#main-menu .contract_content .contract_info .status {
    position: relative;
    top: -2px;
}

#main-menu .contract_content .contract_info .text-right .status {
    top: 0px;
}

#main-menu .contract_list, #main-menu .contract_search {
    max-height: 200px;
    overflow-y: scroll;
    overflow-x: hidden;
}

#main-menu .contract_list .status, #main-menu .contract_search .status {
    position: relative;
    top: -5px;
}

#main-menu .contract_list li.selected, #main-menu .contract_search li.selected {
    border-right: green solid 5px;
}

#main-menu .contract_list .label, #main-menu .contract_search .label {
    font-size: 8px;
    padding-top: 3px;
    vertical-align: bottom;
}

@media screen and (max-width: 767px) {
    #main-menu li a .glyphicon, #main-menu li a .fa, #main-menu li a .flag-icon {
        margin-left: 15px;
        margin-right: 10px;
        max-width: 1em;
    }
}

@media screen and (max-width: 1199px) {
    #main-menu #left-navbar.nav {
        margin-left: 20px;
    }
}

@media screen and (max-width: 991px) {
    #main-menu #left-navbar.nav {
        margin-left: 0px;
    }
}

@media screen and (max-width: 1199px) {
    #main-menu #left-navbar.nav li > a {
        padding: 18px 16px;
    }
}

@media screen and (max-width: 991px) {
    #main-menu #left-navbar.nav li > a {
        font-size: 14px;
        padding: 18px 8px;
    }
}

@media screen and (max-width: 767px) {
    #main-menu .dropdown-menu li:first-child, #main-menu .visible-xs li:first-child, #main-menu .dropdown-menu li:last-child, #main-menu .visible-xs li:last-child {
        padding-top: 20px;
    }

    #main-menu .dropdown-menu li a:last-child, #main-menu .visible-xs li a:last-child {
        padding-bottom: 20px;
    }

    #main-menu .dropdown-menu a, #main-menu .visible-xs a {
        color: #777;
        padding-top: 8px;
        padding-right: 12px;
        padding-left: 12px;
        padding-bottom: 10px;
        font-size: 16px;
    }
}

#right-navbar .lang {
    top: 8px;
}

#right-navbar .lang .dropdown-toggle {
    font-size: 1.2em;
}

#right-navbar .lang .sub-menu {
    z-index: 10;
    list-style: none;
    display: block;
}

#right-navbar .languages {
    text-align: center;
}

#right-navbar .languages a {
    display: inline-block;
    vertical-align: top;
}

#right-navbar .languages img {
    width: 20px;
}

@media screen and (max-width: 1199px) and (min-width: 992px) {
    #main-menu.navbar #left-navbar a {
        padding-right: 12px;
        padding-left: 12px;
    }

    #main-menu.navbar .contract_content .contract_info .address {
        max-width: 140px;
    }
}

/* Landscape phones and portrait tablets */
@media (max-width: 767px) {
    #main-menu.navbar .navbar-header {
        position: fixed;
        z-index: 10;
        top: 0;
        left: 0;
        width: 100vw;
        margin: 0;
        background-color: #FAFDFE;
        box-shadow: 0 0 7px 3px grey;
    }

    #main-menu .navbar-collapse {
        font-size: 14px;
        position: fixed;
        z-index: 9;
        top: 0;
        left: 0;
        width: 100%;
        max-height: 100%;
        padding-top: 50px;
        border: 1px solid rgba(0, 0, 0, 0.15);
        background-color: #fff;
        box-shadow: 0 0 6px 12px rgba(0, 0, 0, 0.175);
        /*overflow: scroll;*/
    }

    #main-menu .navbar-brand {
        position: absolute;
        left: 50%;
        transform: translate(-50%);
    }

    /* body > nav + .container {
    margin-top: -10px;
  } */
}

/*
This file is loaded after all others CSS and can overload default display
*/
/*--Menu principal*/
/**********************************************/
#logo_brand_header_public {
    background-image: url("/specififc/logo/logo.png");
    background-size: auto 60px;
    height: 60px;
    width: 205px;
    margin-left: auto;
    margin-right: auto;
    background-repeat: no-repeat;
}

#logo_brand_header_menu {
    background-image: url("/specific/logo/logo.png");
    background-size: 87px;
    height: 25px;
    width: 87px;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
}

.btn .label {
    position: relative;
    top: -1px;
}

.dashboard_admin_main_container {
    flex: 1;
    width: 100%;
}

.body_dashboard_admin {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.body_dashboard_admin .dataTables_wrapper {
    position: relative;
}

.body_dashboard_admin .dataTables_wrapper .dataTables_processing {
    background-color: transparent;
    border: none;
    top: 60%;
}

.body_dashboard_admin .dataTables_wrapper .dataTables_processing .loader-3-dots {
    transform: none;
    position: unset;
}

.body_dashboard_admin #search {
    height: 30px;
    border-radius: 10px;
    border-width: 1px;
    border: 1px solid #cccccc;
}

.admin .primary_bkgd {
    background-image: linear-gradient(to right, #7D51D9, #376EB3) !important;
    background-size: 100vw;
    color: white;
    border-radius: 0px;
}

.admin .primary_bkgd .row {
    background-color: #337ab7;
}

@media screen and (max-width: 767px) {
    .admin .primary_bkgd {
        border: 1px solid #666666;
    }
}

.admin .caret {
    color: white;
}

table.contract_table.table-striped > tbody > tr:nth-of-type(2n+1) {
    background-color: rgba(250, 250, 250, 0.1) !important;
}

table.contract_table.table-striped > tbody > tr:hover {
    background-color: rgba(250, 250, 250, 0.3) !important;
    cursor: pointer;
}

table.user_table > tbody > tr.odd {
    background-color: rgba(200, 200, 200, 0.3);
}

table.user_table > tbody > tr.odd + tr.details {
    background-color: rgba(200, 200, 200, 0.3);
}

tr.details > td {
    padding: 20px !important;
    padding-right: 40px !important;
    padding-left: 40px !important;
    color: white;
}

tr.details tr {
    background-color: transparent !important;
}

.user_table {
    background-color: white;
}

.contract_table {
    background-color: #0278df !important;
    width: 100%;
}

.contract_table mark {
    background: white;
    color: #0278df;
}

mark {
    background: #0278df;
    color: white;
}

th {
    text-align: center !important;
}

.table-responsive {
    clear: both;
}

.options {
    display: flex;
    flex-direction: row;
    align-items: end;
    position: relative;
    justify-content: space-between;
    width: 700px;
    top: 45px;
    z-index: 2;
    margin-top: -20px;
    float: right;
}

@media screen and (max-width: 1080px) {
    .options {
        float: left;
        margin-bottom: 20px;
        top: 15px;
    }
}

@media screen and (max-width: 767px) {
    .options {
        flex-flow: wrap;
        width: unset;
    }
}

.options > div {
    display: flex;
    margin: 3px;
}

.options > div span {
    margin-right: 10px;
}

.options div.active span {
    color: #337ab7;
}

.options .checkbox_group {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    top: 3px;
    transform: translateY(-25%);
}

.options .checkbox_group span {
    margin-right: 7px;
    font-size: 12px;
    color: #888;
}

/*********** CSS FROM W3C ***************************************/
/* The switch - the box around the slider */
.switch {
    position: relative;
    display: inline-block;
    width: 48px;
    height: 21px;
}

.switch input {
    display: none;
}

/* Hide default HTML checkbox */
/* The slider */
.body_dashboard_admin .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #AAA;
    -webkit-transition: .4s;
    transition: .4s;
}

.body_dashboard_admin .slider:before {
    position: absolute;
    content: "";
    height: 17px;
    width: 17px;
    left: 2px;
    bottom: 2px;
    background-color: #666;
    -webkit-transition: .4s;
    transition: .4s;
}

input:checked + .slider {
    background-color: #337ab7;
}

input:focus + .slider {
    box-shadow: 0 0 1px #337ab7;
}

input:checked + .slider:before {
    background-color: white;
    -webkit-transform: translateX(27px);
    -ms-transform: translateX(27px);
    transform: translateX(27px);
}

/* Rounded sliders */
/* .slider.round {
		border-radius: 34px;
	}

	.slider.round:before {
		border-radius: 50%;
	} */
.fa-spinner {
    transform-origin: 50% 50%;
    -webkit-animation: rotating 2s linear infinite;
}

@-webkit-keyframes rotating {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
    }
}

.billing_types_div {
    margin-top: 10px !important;
}

@media screen and (max-width: 767px) {
    .add_button {
        border: 1px solid #666666;
    }
}

@media screen and (max-width: 480px) {
    .add_button {
        margin-left: 15px;
        position: relative !important;
        margin-bottom: 10px;
        margin-top: -20px;
    }
}

.main-content .alert {
    position: absolute;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
    left: 50%;
    z-index: 5;
}

.draggable_item {
    cursor: grab;
}

tr:not(.sortable-chosen):not(.sortable-ghost).no_hover:hover {
    background-color: white;
}

.sortable-chosen:not(.sortable-ghost) {
    opacity: 1 !important;
    background-color: #C8EBFB !important;
}

.sortable-chosen.sortable-ghost {
    opacity: 0 !important;
}

.sortable-fallback {
    opacity: 0 !important;
}

.sortable-ghost {
    opacity: 1;
    background-color: #C8EBFB !important;
}

/*
 * File: _variables.scss
 * File Created: Wednesday, 12th June 2019 5:35:19 pm
 * Author: Julien Blacas (julien.blacas@gridpocket.com)
 * -----
 * Last Modified: Thursday, 1st August 2019 4:37:35 pm
 * Modified By: Pierre Bonny (pierre.bonny@gridpocket.com>)
 * -----
 * GridPocket SAS Copyright (C) 2019 All Rights Reserved
 * This source is property of GridPocket SAS.
 * Please email contact@gridpocket.com for more information.
 */
.body_payment .main .payment_title {
    margin: 0;
    text-align: center;
    font-size: 44px;
    color: #376EB3;
}

@media (max-width: 768px) {
    .body_payment .main .payment_title {
        margin-top: 35px;
    }
}

.body_payment .main .tickcontainer {
    height: 100%;
    position: relative;
    margin-left: 3%;
    margin-right: 3%;
    text-align: center;
}

.body_payment .main .tickcontainer .go-to-invoice {
    margin-top: 30px;
}

.body_payment .main .tickcontainer a {
    border-radius: 20px;
    padding: 10px 40px 10px 40px;
    text-decoration: none;
    color: white;
    background-image: linear-gradient(to right, #D04E4B, #C93655);
}

.body_payment .main .tickcontainer .successMsg {
    font-size: 16px;
    position: absolute;
    top: 35%;
    left: 0;
    right: 0;
    margin: auto;
    height: 0;
    text-align: center;
}

.body_payment .main .tickcontainer .signbg {
    position: absolute;
    top: 15%;
    left: 0;
    right: 0;
    margin: auto;
    content: "\00a0";
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    height: 120px;
    width: 120px;
}

.body_payment .main .tickcontainer .signbg.error {
    background: linear-gradient(to right, #D04E4B, #C93655);
}

.body_payment .main .tickcontainer .signbg.success {
    background: #7AD16B;
}

.body_payment .main .tickcontainer .signbg .fas {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 50px;
    color: white;
}

/*
* File: _404.scss
* File Created: Monday, 12th August 2019 4:33:55 pm
* Author: Victor Houzé (victor.houze@gridpocket.com)
* -----
* Last Modified: Tuesday, 13th August 2019 11:04:04 am
* Modified By: Victor Houzé (victor.houze@gridpocket.com>)
* -----
* GridPocket SAS Copyright (C) 2019 All Rights Reserved
* This source is property of GridPocket SAS.
* Please email contact@gridpocket.com for more information.
*/
.body_404 {
    background: none;
}

.body_404 .navbar {
    height: 50px;
}

@media screen and (min-width: 768px) {
    .body_404 img {
        margin-top: 20px;
    }
}

@media screen and (max-width: 767px) {
    .body_404 img {
        width: 80%;
    }
}

.body_404 .title_error {
    font-size: 44px;
}

.body_404 .message_error {
    font-size: 30px;
}

@media screen and (max-width: 576px) {
    .body_404 .message_error {
        font-size: 20px;
    }
}

.body_404 .button_404 {
    margin-top: 20px;
}

@media screen and (max-width: 576px) {
    .body_404 .button_404 #backtohome {
        width: 65%;
        padding: 0;
    }
}

.body_404 .button_404 #backtohome a {
    color: white;
    font-size: 18px;
}

.body_404 .footer {
    position: absolute;
    bottom: 0;
    background-color: transparent;
    padding-left: 0;
}

.body_404 .footer .gridpocket {
    flex-grow: 2;
    flex-basis: 0;
    text-align: right;
}

.body_404 .footer .gridpocket p {
    color: black;
}

.body_404 .footer .gridpocket a {
    font-weight: bold;
    color: black;
}

/*
* File: _maintenance.scss
* File Created: Wednesday, 14th August 2019 9:09:02 am
* Author: Victor Houzé (victor.houze@gridpocket.com)
* -----
* Last Modified: Wednesday, 14th August 2019 10:52:35 am
* Modified By: Victor Houzé (victor.houze@gridpocket.com>)
* -----
* GridPocket SAS Copyright (C) 2019 All Rights Reserved
* This source is property of GridPocket SAS.
* Please email contact@gridpocket.com for more information.
*/
.body_maintenance {
    background: none;
}

.body_maintenance .navbar {
    height: 50px;
}

.body_maintenance .div_maintenance {
    margin-top: 30px;
}

.body_maintenance .img_maintenance {
    margin-top: 30px;
}

@media screen and (max-width: 767px) {
    .body_maintenance img {
        width: 70%;
    }
}

.body_maintenance .title_error {
    display: inline;
    font-size: 44px;
}

.body_maintenance .message_error {
    display: block;
    font-size: 30px;
}

@media screen and (max-width: 576px) {
    .body_maintenance .message_error {
        font-size: 20px;
    }
}

.body_maintenance .footer {
    position: absolute;
    bottom: 0;
    background-color: transparent;
    padding-left: 0;
}

.body_maintenance .footer .gridpocket {
    flex-grow: 2;
    flex-basis: 0;
    text-align: right;
}

.body_maintenance .footer .gridpocket p {
    color: black;
}

.body_maintenance .footer .gridpocket a {
    font-weight: bold;
    color: black;
}

.logo-holder {
    border-bottom: solid 1px lightgrey;
    height: 366px;
}

.main_logo {
    margin-bottom: 20px;
}

.logo-holder .main_logo {
    position: relative;
    top: 140px;
}

@media screen and (max-width: 991px) {
    .logo-holder {
        height: 335px;
    }
}

@media screen and (max-width: 768px) {
    .logo-holder {
        height: 100px;
    }

    .main_logo {
        top: 5px
    }

    .body_public .public_page .introduction_bloc .main_logo {
        top: 30px;
        margin-top: 0px;
    }
}

.btn-primary:hover, .btn-primary.hover {
    color: #FFFFFF;
    -webkit-box-shadow: inset 0 -1px 0 #424141;
    box-shadow: inset 0 -1px 0 #424141;
    background-color: #424141;
    border-color: #424141;
    border-bottom-color: #424141;
}

.btn-primary:focus, .btn-primary.focus {
    color: #FFFFFF;
    background-color: #1e6ef2;
    border-color: #1266f1;
    -webkit-box-shadow: 0 0 0 0.15rem rgb(94 151 246 / 50%);
    box-shadow: 0 0 0 0.15rem rgb(94 151 246 / 50%);
}

/*# sourceMappingURL=main.css.map */
