/* PATTERN 1 - FLUIDO */
/* Variante A - Classico */
@keyframes gradientPattern1A {
    0% { background-position: 0% 50%; background-size: 400% 400%; }
    25% { background-position: 100% 25%; background-size: 500% 500%; }
    50% { background-position: 50% 100%; background-size: 300% 300%; }
    75% { background-position: 25% 0%; background-size: 450% 450%; }
    100% { background-position: 0% 50%; background-size: 400% 400%; }
}

/* Variante B - Ampio */
@keyframes gradientPattern1B {
    0% { background-position: 0% 30%; background-size: 350% 350%; }
    30% { background-position: 70% 100%; background-size: 600% 600%; }
    60% { background-position: 100% 0%; background-size: 250% 250%; }
    100% { background-position: 0% 30%; background-size: 350% 350%; }
}

/* Variante C - Veloce */
@keyframes gradientPattern1C {
    0% { background-position: 20% 80%; background-size: 380% 380%; }
    20% { background-position: 80% 20%; background-size: 520% 520%; }
    40% { background-position: 40% 60%; background-size: 280% 280%; }
    60% { background-position: 90% 10%; background-size: 480% 480%; }
    80% { background-position: 10% 90%; background-size: 320% 320%; }
    100% { background-position: 20% 80%; background-size: 380% 380%; }
}

/* PATTERN 2 - CIRCOLARE */
/* Variante A - Orario */
@keyframes gradientPattern2A {
    0% { background-position: 50% 0%; background-size: 350% 350%; }
    25% { background-position: 100% 50%; background-size: 480% 480%; }
    50% { background-position: 50% 100%; background-size: 320% 320%; }
    75% { background-position: 0% 50%; background-size: 420% 420%; }
    100% { background-position: 50% 0%; background-size: 350% 350%; }
}

/* Variante B - Antiorario */
@keyframes gradientPattern2B {
    0% { background-position: 50% 0%; background-size: 300% 300%; }
    25% { background-position: 0% 50%; background-size: 500% 500%; }
    50% { background-position: 50% 100%; background-size: 250% 250%; }
    75% { background-position: 100% 50%; background-size: 450% 450%; }
    100% { background-position: 50% 0%; background-size: 300% 300%; }
}

/* Variante C - Ellittico */
@keyframes gradientPattern2C {
    0% { background-position: 50% 20%; background-size: 400% 200%; }
    33% { background-position: 80% 50%; background-size: 200% 600%; }
    66% { background-position: 20% 80%; background-size: 500% 300%; }
    100% { background-position: 50% 20%; background-size: 400% 200%; }
}

/* PATTERN 3 - ONDA */
/* Variante A - Diagonale */
@keyframes gradientPattern3A {
    0% { background-position: 0% 0%; background-size: 300% 600%; }
    33% { background-position: 50% 100%; background-size: 600% 300%; }
    66% { background-position: 100% 0%; background-size: 400% 400%; }
    100% { background-position: 0% 0%; background-size: 300% 600%; }
}

/* Variante B - Orizzontale */
@keyframes gradientPattern3B {
    0% { background-position: 0% 50%; background-size: 800% 200%; }
    50% { background-position: 100% 50%; background-size: 200% 800%; }
    100% { background-position: 0% 50%; background-size: 800% 200%; }
}

/* Variante C - Verticale */
@keyframes gradientPattern3C {
    0% { background-position: 50% 0%; background-size: 200% 700%; }
    25% { background-position: 25% 100%; background-size: 600% 250%; }
    50% { background-position: 75% 0%; background-size: 300% 500%; }
    75% { background-position: 50% 100%; background-size: 500% 300%; }
    100% { background-position: 50% 0%; background-size: 200% 700%; }
}

/* PATTERN 4 - PULSANTE */
/* Variante A - Centro */
@keyframes gradientPattern4A {
    0% { background-position: 50% 50%; background-size: 200% 200%; }
    20% { background-position: 30% 70%; background-size: 800% 800%; }
    40% { background-position: 70% 30%; background-size: 150% 150%; }
    60% { background-position: 20% 80%; background-size: 600% 600%; }
    80% { background-position: 80% 20%; background-size: 250% 250%; }
    100% { background-position: 50% 50%; background-size: 200% 200%; }
}

/* Variante B - Multi-punto */
@keyframes gradientPattern4B {
    0% { background-position: 25% 25%; background-size: 300% 300%; }
    25% { background-position: 75% 25%; background-size: 700% 700%; }
    50% { background-position: 75% 75%; background-size: 200% 200%; }
    75% { background-position: 25% 75%; background-size: 500% 500%; }
    100% { background-position: 25% 25%; background-size: 300% 300%; }
}

/* Variante C - Respirazione */
@keyframes gradientPattern4C {
    0% { background-position: 50% 50%; background-size: 100% 100%; }
    50% { background-position: 50% 50%; background-size: 900% 900%; }
    100% { background-position: 50% 50%; background-size: 100% 100%; }
}

/* Classe base */
.gradient-cover {
    background: linear-gradient(45deg, #b19ad3, #fbafb0, #97d3cd, #d2c8e6, #ffdcdc, #c8e6e2);
    background-size: 400% 400%;
}

/* PATTERN 1 - FLUIDO */
.gradient-cover-pattern-1a { animation: gradientPattern1A 40s ease-in-out infinite; }
.gradient-cover-pattern-1b { animation: gradientPattern1B 45s ease-in-out infinite; }
.gradient-cover-pattern-1c { animation: gradientPattern1C 25s ease-in-out infinite; }

/* PATTERN 2 - CIRCOLARE */
.gradient-cover-pattern-2a { animation: gradientPattern2A 35s ease-in-out infinite; }
.gradient-cover-pattern-2b { animation: gradientPattern2B 38s ease-in-out infinite; }
.gradient-cover-pattern-2c { animation: gradientPattern2C 42s ease-in-out infinite; }

/* PATTERN 3 - ONDA */
.gradient-cover-pattern-3a { animation: gradientPattern3A 45s ease-in-out infinite; }
.gradient-cover-pattern-3b { animation: gradientPattern3B 50s ease-in-out infinite; }
.gradient-cover-pattern-3c { animation: gradientPattern3C 35s ease-in-out infinite; }

/* PATTERN 4 - PULSANTE */
.gradient-cover-pattern-4a { animation: gradientPattern4A 30s ease-in-out infinite; }
.gradient-cover-pattern-4b { animation: gradientPattern4B 28s ease-in-out infinite; }
.gradient-cover-pattern-4c { animation: gradientPattern4C 60s ease-in-out infinite; }