/* Animações */
@keyframes morphShape {
    0% {
        border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
    }
    25% {
        border-radius: 58% 42% 75% 25% / 76% 46% 54% 24%;
    }
    50% {
        border-radius: 50% 50% 33% 67% / 55% 27% 73% 45%;
    }
    75% {
        border-radius: 33% 67% 58% 42% / 63% 68% 32% 37%;
    }
    100% {
        border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
    }
}

@keyframes rotateRing {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@keyframes floatParticle {
    0% {
        transform: translate(0, 0) rotate(0deg);
    }
    33% {
        transform: translate(30px, -30px) rotate(45deg);
    }
    66% {
        transform: translate(-20px, 20px) rotate(-30deg);
    }
    100% {
        transform: translate(20px, 20px) rotate(20deg);
    }
}

@keyframes fadeOutParticle {
    0% {
        opacity: var(--initial-opacity);
        transform: scale(1) translate(0, 0);
    }
    100% {
        opacity: 0;
        transform: scale(0) translate(var(--random-x), var(--random-y));
    }
}

@keyframes highlightText {
    0% {
        background-position: -100% 0;
    }
    100% {
        background-position: 200% 0;
    }
}