.elementor-7 .elementor-element.elementor-element-15278ea{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-image-gallery .gallery-item .gallery-caption{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-7 .elementor-element.elementor-element-294336e .gallery-item .gallery-caption{display:none;}.elementor-7 .elementor-element.elementor-element-294336e .gallery-item{padding:0 15px 15px 0;}.elementor-7 .elementor-element.elementor-element-294336e .gallery{margin:0 -15px -15px 0;}/* Start custom CSS for container, class: .elementor-element-15278ea *//* Base .elementor-7 .elementor-element.elementor-element-15278ea - à appliquer sur le body ou un conteneur principal */
.elementor-7 .elementor-element.elementor-element-15278ea {
    position: relative;
    background: #102b46;
    overflow: hidden;
    min-height: 100vh;
}

.elementor-7 .elementor-element.elementor-element-15278ea:before,
.elementor-7 .elementor-element.elementor-element-15278ea::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    opacity: 0.15;
    z-index: 0;
}

/* Animation de grille dynamique */
.elementor-7 .elementor-element.elementor-element-15278ea::before {
    background: 
        linear-gradient(90deg, transparent 95%, rgba(0, 255, 255, 0.1) 100%),
        linear-gradient(0deg, transparent 95%, rgba(0, 255, 255, 0.1) 100%);
    background-size: 40px 40px;
    animation: gridMove 20s linear infinite;
}

/* Effet de particules hexagonales */
.elementor-7 .elementor-element.elementor-element-15278ea::after {
    background: 
        radial-gradient(circle at 50% 50%, rgba(20, 100, 200, 0.1) 0%, transparent 50%),
        repeating-conic-gradient(from 15deg, #00ffcc10 0deg 30deg, transparent 31deg 60deg);
    animation: rotate 60s linear infinite;
}

/* Animation supplémentaire pour les hexagones */
@keyframes hexagons {
    0% { background-position: 0 0, 0 0; }
    100% { background-position: 100px 50px, 50px 100px; }
}

/* Animation de la grille */
@keyframes gridMove {
    from { background-position: 0 0; }
    to { background-position: 40px 40px; }
}

/* Animation de rotation */
@keyframes rotate {
    to { transform: rotate(360deg); }
}

/* Effet de scanline supplémentaire */
.elementor-7 .elementor-element.elementor-element-15278ea::before {
    pointer-events: none;
    background-image: 
        linear-gradient(0deg, 
            transparent 0%, 
            rgba(0, 255, 255, 0.3) 2px, 
            transparent 4px);
    background-size: 100% 4px;
    animation: scanline 6s linear infinite;
}

@keyframes scanline {
    from { background-position: 0 100%; }
    to { background-position: 0 0; }
}

/* Contenu par dessus l'animation */
.content {
    position: relative;
    z-index: 1;
    color: white;
    padding: 2rem;
}/* End custom CSS */