/* ═════════════════════════════════════════════════════════════
   🌌 MATRIX SECTION - ICÔNES ULTRA-FUTURISTES
   Novilisya Solution - Animations avancées
   ═════════════════════════════════════════════════════════════ */

.matrix-icon .icon-svg {
    width: 80px;
    height: 80px;
    filter: drop-shadow(0 0 12px rgba(139, 92, 246, 0.5))
            drop-shadow(0 0 24px rgba(6, 182, 212, 0.3));
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.matrix-card:hover .matrix-icon .icon-svg {
    transform: scale(1.2) rotateZ(5deg);
    filter: drop-shadow(0 0 20px rgba(139, 92, 246, 0.9))
            drop-shadow(0 0 40px rgba(6, 182, 212, 0.7))
            drop-shadow(0 0 60px rgba(251, 191, 36, 0.5));
}

/* Animation rotation 3D */
@keyframes matrix-rotate-3d {
    0% { 
        transform: rotateY(0deg) rotateZ(0deg);
    }
    50% { 
        transform: rotateY(180deg) rotateZ(10deg);
    }
    100% { 
        transform: rotateY(360deg) rotateZ(0deg);
    }
}

/* Animation pulse pour les cercles */
@keyframes matrix-pulse {
    0%, 100% { 
        opacity: 1;
        r: attr(r);
    }
    50% { 
        opacity: 0.5;
    }
}

/* Animation glow pulsing */
@keyframes matrix-glow {
    0%, 100% { 
        filter: drop-shadow(0 0 8px currentColor);
    }
    50% { 
        filter: drop-shadow(0 0 25px currentColor);
    }
}

/* Animation pour les lignes de scan */
@keyframes matrix-scan-line {
    0% { 
        stroke-dashoffset: 0;
        opacity: 1;
    }
    50% { 
        opacity: 0.4;
    }
    100% { 
        stroke-dashoffset: -100;
        opacity: 1;
    }
}

/* Animation pour les hexagones */
.icon-hex {
    animation: matrix-pulse 3s ease-in-out infinite;
}

/* Animation pour les cubes SaaS */
.icon-cube {
    stroke-dasharray: 200;
    animation: matrix-scan-line 4s linear infinite;
}

/* Animation pour le noyau IA */
.icon-core-ai,
.icon-core {
    animation: matrix-glow 2s ease-in-out infinite;
}

/* Animation pour les lignes */
.icon-lines,
.icon-line,
.icon-connect {
    stroke-dasharray: 50;
    animation: matrix-scan-line 3s linear infinite;
}

/* Animation pour les engrenages */
.icon-gear {
    transform-origin: center;
    animation: matrix-rotate-3d 6s linear infinite;
}

/* Animation des points */
.icon-dot {
    animation: matrix-pulse 2s ease-in-out infinite;
}

/* Effet hover sur les cartes - rotation globale de l'icône */
.matrix-card:hover .icon-saas,
.matrix-card:hover .icon-ai,
.matrix-card:hover .icon-web,
.matrix-card:hover .icon-auto {
    transform-origin: center;
    animation: matrix-rotate-3d 2s ease-in-out 1;
}

/* Effet de gradient animé */
@keyframes matrix-gradient-shift {
    0% { stop-color: #8B5CF6; }
    33% { stop-color: #06B6D4; }
    66% { stop-color: #FBBF24; }
    100% { stop-color: #8B5CF6; }
}
