a,
.animated,
.zoom,
input,
button {
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
}

.zoom:hover {
    transform: scale(1.2);
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
}

@-webkit-keyframes rotating /* Safari and Chrome */ {
    from {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    to {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes rotating {
    from {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    to {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
.rotating {
    -webkit-animation: rotating 2s linear infinite;
    -moz-animation: rotating 2s linear infinite;
    -ms-animation: rotating 2s linear infinite;
    -o-animation: rotating 2s linear infinite;
    animation: rotating 2s linear infinite;
}

@keyframes shoot-arrow {
    0% {
        transform: translateX(0);
        opacity: 1;
    }
    30% {
        transform: translateX(-20px);
        opacity: 1;
    }
    100% {
        transform: translateX(100vw);
        opacity: 0;
    }
}
.shoot-arrow {
    animation: shoot-arrow 1s forwards ease-in;
    pointer-events: none;
}

/* HAMBURGUER */

header .hamburguer:before {
    transform: rotate(45deg);
    width: 100%;
    top: 50%;
    animation: before1 0.3s linear, before2 0.3s linear 0.6s;
    animation-fill-mode: forwards;
}
header .hamburguer span {
    height: 0;
    animation: span1 0.3s linear 0.3s;
    animation-fill-mode: forwards;
}
header .hamburguer:after {
    transform: rotate(-45deg);
    width: 100%;
    top: 50%;
    animation: after1 0.3s linear, after2 0.3s linear 0.6s;
    animation-fill-mode: forwards;
}

@keyframes before1 {
    from {
        transform: rotate(45deg);
    }
    to {
        transform: rotate(0);
    }
}
@keyframes before2 {
    from {
        top: 50%;
    }
    to {
        top: 0;
    }
}
@keyframes span1 {
    from {
        height: 0;
    }
    to {
        height: 2px;
    }
}
@keyframes after1 {
    from {
        transform: rotate(-45deg);
    }
    to {
        transform: rotate(0);
    }
}
@keyframes after2 {
    from {
        top: 50%;
    }
    to {
        top: calc(100% - 2px);
    }
}

header.active .hamburguer:before {
    transform: rotate(0);
    top: 0;
    animation: beforeOpen1 0.3s linear, beforeOpen2 0.3s linear 0.6s;
    animation-fill-mode: forwards;
}
header.active .hamburguer span {
    animation: spanOpen1 0.3s linear;
    animation-fill-mode: forwards;
}
header.active .hamburguer:after {
    transform: rotate(0);
    top: 0;
    animation: afterOpen1 0.3s linear, afterOpen2 0.3s linear 0.6s;
    animation-fill-mode: forwards;
}

@keyframes beforeOpen1 {
    from {
        top: 0;
    }
    to {
        top: 50%;
    }
}
@keyframes beforeOpen2 {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(45deg);
    }
}
@keyframes spanOpen1 {
    from {
        height: 2px;
    }
    to {
        height: 0;
    }
}
@keyframes afterOpen1 {
    from {
        top: calc(100% - 2px);
    }
    to {
        top: 50%;
}
}
@keyframes afterOpen2 {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(-45deg);
    }
}

@keyframes dot {
    from {
        transform: scale(1.5);
        background-color: var(--cyan);
    }
    to {
        transform: scale(1);
        background-color: white;
    }
}

/* ZOOM WP-BLOCK-MEDIA-TEXT */

@keyframes zoomInMedia {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(1.15);
    }
}

@keyframes zoomOutMedia {
    from {
        transform: scale(1.15);
    }
    to {
        transform: scale(1);
    }
}