/** Animations */

.vibrate-1 {
    -webkit-animation: vibrate-1 0.3s linear infinite both;
    animation: vibrate-1 0.3s linear infinite both;
}

.phone-ring {
    -webkit-animation: phone-ring 1s linear infinite both;
    animation: phone-ring 1s linear infinite both;
}

.slide-in-left {
    -webkit-animation: slide-in-left 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    animation: slide-in-left 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

.blink-1 {
    -webkit-animation: blink-1 2s infinite both;
    animation: blink-1 2s infinite both;
}

.flicker-2 {
    -webkit-animation: flicker-2 2s linear infinite both;
    animation: flicker-2 2s linear infinite both;
}

.defilement-ltr {
    -webkit-animation: defilement-ltr 10s linear infinite both;
    animation: defilement-ltr 10s linear infinite both;
}

.defilement-ltr-decale {
    -webkit-animation: defilement-ltr-2 1s linear infinite both;
    animation: defilement-ltr-2 1s linear infinite both;
    animation-delay: 2s;
}

.scale-in-center {
    -webkit-animation: scale-in-center 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    animation: scale-in-center 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

.rotate-vert-center {
    -webkit-animation: rotate-vert-center 0.5s infinite cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
    animation: rotate-vert-center 0.5s infinite cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
}

.balance {
    -webkit-animation: balance-30 0.75s infinite linear both;
    animation: balance-30 0.75s infinite linear both;
}

.musique-droite {
    -webkit-animation: musique-droite 2s 0.5s infinite both;
    animation: musique-droite 2s 0.5s infinite both;
}

.musique-gauche {
    -webkit-animation: musique-gauche 2s infinite both;
    animation: musique-gauche 2s infinite both;
}

.hny {
    -webkit-animation: hny 4s cubic-bezier(0.075, 0.820, 0.165, 1.000) both infinite;
    animation: hny 4s cubic-bezier(0.075, 0.820, 0.165, 1.000) both infinite;
}

.floating-ale {
    -webkit-animation: floating-ale 2s linear both infinite;
    animation: floating-ale 2s linear both infinite;
}

.floating-ale-delay-1 {
    -webkit-animation: floating-ale 2s linear both infinite;
    animation: floating-ale 2s linear both infinite;
    animation-delay: 0.75s;
}

.floating-ale-delay-2 {
    -webkit-animation: floating-ale 2s linear both infinite;
    animation: floating-ale 2s linear both infinite;
    animation-delay: 1.5s;
}

.splash {
    -webkit-animation: splash 2s cubic-bezier(0, 1.43, 0, 1.01) both infinite;
    animation: splash 2s cubic-bezier(0, 1.43, 0, 1.01) both infinite;
}

@-webkit-keyframes vibrate-1 {
    0% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
    20% {
        -webkit-transform: translate(-2px, 2px);
        transform: translate(-2px, 2px);
    }
    40% {
        -webkit-transform: translate(-2px, -2px);
        transform: translate(-2px, -2px);
    }
    60% {
        -webkit-transform: translate(2px, 2px);
        transform: translate(2px, 2px);
    }
    80% {
        -webkit-transform: translate(2px, -2px);
        transform: translate(2px, -2px);
    }
    100% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
}

@keyframes vibrate-1 {
    0% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
    20% {
        -webkit-transform: translate(-2px, 2px);
        transform: translate(-2px, 2px);
    }
    40% {
        -webkit-transform: translate(-2px, -2px);
        transform: translate(-2px, -2px);
    }
    60% {
        -webkit-transform: translate(2px, 2px);
        transform: translate(2px, 2px);
    }
    80% {
        -webkit-transform: translate(2px, -2px);
        transform: translate(2px, -2px);
    }
    100% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
}

@-webkit-keyframes phone-ring {
    0% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
    5% {
        -webkit-transform: translate(-1px, 1px);
        transform: translate(-1px, 1px);
    }
    10% {
        -webkit-transform: translate(-1px, -1px);
        transform: translate(-1px, -1px);
    }
    15% {
        -webkit-transform: translate(1px, 1px);
        transform: translate(1px, 1px);
    }
    20% {
        -webkit-transform: translate(1px, -1px);
        transform: translate(1px, -1px);
    }
    25% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
    40% {
        -webkit-transform: translate(-1px, 1px);
        transform: translate(-1px, 1px);
    }
    45% {
        -webkit-transform: translate(-1px, -1px);
        transform: translate(-1px, -1px);
    }
    50% {
        -webkit-transform: translate(1px, 1px);
        transform: translate(1px, 1px);
    }
    55% {
        -webkit-transform: translate(1px, -1px);
        transform: translate(1px, -1px);
    }
    60% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
    100% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
}

@keyframes phone-ring {
    0% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
    5% {
        -webkit-transform: translate(-1px, 1px);
        transform: translate(-1px, 1px);
    }
    10% {
        -webkit-transform: translate(-1px, -1px);
        transform: translate(-1px, -1px);
    }
    15% {
        -webkit-transform: translate(1px, 1px);
        transform: translate(1px, 1px);
    }
    20% {
        -webkit-transform: translate(1px, -1px);
        transform: translate(1px, -1px);
    }
    25% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
    40% {
        -webkit-transform: translate(-1px, 1px);
        transform: translate(-1px, 1px);
    }
    45% {
        -webkit-transform: translate(-1px, -1px);
        transform: translate(-1px, -1px);
    }
    50% {
        -webkit-transform: translate(1px, 1px);
        transform: translate(1px, 1px);
    }
    55% {
        -webkit-transform: translate(1px, -1px);
        transform: translate(1px, -1px);
    }
    60% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
    100% {
        -webkit-transform: translate(0);
        transform: translate(0);
    }
}

@-webkit-keyframes slide-in-left {
    0% {
        -webkit-transform: translateX(-1000px);
        transform: translateX(-1000px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes slide-in-left {
    0% {
        -webkit-transform: translateX(-1000px);
        transform: translateX(-1000px);
        opacity: 0;
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

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

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

@-webkit-keyframes flicker-2 {
    0%,
    100% {
        opacity: 1;
    }
    41.99% {
        opacity: 1;
    }
    42% {
        opacity: 0;
    }
    43% {
        opacity: 0;
    }
    43.01% {
        opacity: 1;
    }
    45.99% {
        opacity: 1;
    }
    46% {
        opacity: 0;
    }
    46.9% {
        opacity: 0;
    }
    46.91% {
        opacity: 1;
    }
    51.99% {
        opacity: 1;
    }
    52% {
        opacity: 0;
    }
    52.8% {
        opacity: 0;
    }
    52.81% {
        opacity: 1;
    }
}

@keyframes flicker-2 {
    0%,
    100% {
        opacity: 1;
    }
    41.99% {
        opacity: 1;
    }
    42% {
        opacity: 0;
    }
    43% {
        opacity: 0;
    }
    43.01% {
        opacity: 1;
    }
    45.99% {
        opacity: 1;
    }
    46% {
        opacity: 0;
    }
    46.9% {
        opacity: 0;
    }
    46.91% {
        opacity: 1;
    }
    51.99% {
        opacity: 1;
    }
    52% {
        opacity: 0;
    }
    52.8% {
        opacity: 0;
    }
    52.81% {
        opacity: 1;
    }
}

@-webkit-keyframes defilement-ltr {
    0% {
        transform: translate3d(-100%, 0, 0);
        opacity: 0;
    }
    15% {
        opacity: 1;
    }
    85% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes defilement-ltr {
    0% {
        transform: translate3d(-100%, 0, 0);
        opacity: 0;
    }
    15% {
        opacity: 1;
    }
    85% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: translate3d(0, 0, 0);
    }
}

@-webkit-keyframes defilement-ltr-2 {
    0% {
        transform: translate3d(-15%, 0, 0);
        opacity: 0;
    }
    55% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes defilement-ltr-2 {
    0% {
        transform: translate3d(-15%, 0, 0);
        opacity: 0;
    }
    55% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: translate3d(0, 0, 0);
    }
}

@-webkit-keyframes scale-in-center {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
        opacity: 1;
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes scale-in-center {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
        opacity: 1;
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

@-webkit-keyframes rotate-vert-center {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }
    100% {
        -webkit-transform: rotateY(360deg);
        transform: rotateY(360deg);
    }
}

@keyframes rotate-vert-center {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }
    100% {
        -webkit-transform: rotateY(360deg);
        transform: rotateY(360deg);
    }
}

@keyframes balance-30 {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
    25% {
        -webkit-transform: rotate(30deg);
        transform: rotate(30deg);
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
    50% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
    75% {
        -webkit-transform: rotate(-30deg);
        transform: rotate(-30deg);
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
}

@keyframes balance-30 {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
    25% {
        -webkit-transform: rotate(30deg);
        transform: rotate(30deg);
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
    50% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
    75% {
        -webkit-transform: rotate(-30deg);
        transform: rotate(-30deg);
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
    100% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: center center;
        transform-origin: center center;
    }
}

@-webkit-keyframes musique-droite {
    0% {
        -webkit-transform: translateX(-100px) translateY(0px);
        transform: translateX(-100px) translateY(0px);
        opacity: 0;
    }
    40% {
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0) translateY(-50px);
        transform: translateX(0) translateY(-50px);
        opacity: 0;
    }
}

@keyframes musique-droite {
    0% {
        -webkit-transform: translateX(-100px) translateY(0px);
        transform: translateX(-100px) translateY(0px);
        opacity: 0;
    }
    40% {
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(0) translateY(-50px);
        transform: translateX(0) translateY(-50px);
        opacity: 0;
    }
}

@-webkit-keyframes musique-gauche {
    0% {
        -webkit-transform: translateX(0px) translateY(0px);
        transform: translateX(0px) translateY(0px);
        opacity: 0;
    }
    40% {
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(-100px) translateY(-50px);
        transform: translateX(-100px) translateY(-50px);
        opacity: 0;
    }
}

@keyframes musique-gauche {
    0% {
        -webkit-transform: translateX(0px) translateY(0px);
        transform: translateX(0px) translateY(0px);
        opacity: 0;
    }
    40% {
        opacity: 1;
    }
    100% {
        -webkit-transform: translateX(-100px) translateY(-50px);
        transform: translateX(-100px) translateY(-50px);
        opacity: 0;
    }
}

/*ALE*/
@-webkit-keyframes hny {
    0% {
        opacity: 0;
        transform: scale(0.1);
    }
    40% {
        opacity: 0.6;
    }
    100% {
        opacity: 0;
        transform: scale(1.2);
    }
}

@keyframes hny {
    0% {
        opacity: 0;
        transform: scale(0.1);
    }
    75% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: scale(1.2);
    }
}

@-webkit-keyframes hny {
    0% {
        opacity: 0;
        transform: scale(0.1);
    }
    75% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: scale(1.2);
    }
}

@keyframes floating-ale {
    0% {
        transform: translateX(0) translateY(0);
    }
    20% {
        transform: translateX(2px) translateY(-2px);
    }
    40% {
        transform: translateX(2px) translateY(2px);
    }
    60% {
        transform: translateX(-2px) translateY(-2px);
    }
    80% {
        transform: translateX(-2px) translateY(2px);
    }
    100% {
        transform: translateX(0) translateY(0);
    }
}

@-webkit-keyframes floating-ale {
    0% {
        transform: translateX(0) translateY(0);
    }
    20% {
        transform: translateX(2px) translateY(-2px);
    }
    40% {
        transform: translateX(2px) translateY(2px);
    }
    60% {
        transform: translateX(-2px) translateY(-2px);
    }
    80% {
        transform: translateX(-2px) translateY(2px);
    }
    100% {
        transform: translateX(0) translateY(0);
    }
}

@keyframes splash {
    0% {
        transform: scale(0);
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}
