.elementor-221 .elementor-element.elementor-element-994b023{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-221 .elementor-element.elementor-element-7704026{--display:flex;}.elementor-221 .elementor-element.elementor-element-346803e{--display:flex;--justify-content:center;--padding-top:0rem;--padding-bottom:0rem;--padding-left:4rem;--padding-right:0rem;}.elementor-221 .elementor-element.elementor-element-f195c67{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;}.elementor-221 .elementor-element.elementor-element-f195c67 .elementor-heading-title{font-family:var( --e-global-typography-046fb34-font-family ), Sans-serif;font-size:var( --e-global-typography-046fb34-font-size );font-weight:var( --e-global-typography-046fb34-font-weight );line-height:var( --e-global-typography-046fb34-line-height );color:var( --e-global-color-4ddaba7 );}.elementor-221 .elementor-element.elementor-element-55f4ee9{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;font-family:var( --e-global-typography-ed353ef-font-family ), Sans-serif;font-size:var( --e-global-typography-ed353ef-font-size );font-weight:var( --e-global-typography-ed353ef-font-weight );line-height:var( --e-global-typography-ed353ef-line-height );}.elementor-221 .elementor-element.elementor-element-1b12ed5 .elementor-button{font-family:var( --e-global-typography-ea70e75-font-family ), Sans-serif;font-size:var( --e-global-typography-ea70e75-font-size );font-weight:var( --e-global-typography-ea70e75-font-weight );}.elementor-221 .elementor-element.elementor-element-dd2c131{--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;}@media(max-width:1366px){.elementor-221 .elementor-element.elementor-element-994b023{--margin-top:0rem;--margin-bottom:0rem;--margin-left:0rem;--margin-right:0rem;--padding-top:0rem;--padding-bottom:0rem;--padding-left:0rem;--padding-right:0rem;}.elementor-221 .elementor-element.elementor-element-f195c67 .elementor-heading-title{font-size:var( --e-global-typography-046fb34-font-size );line-height:var( --e-global-typography-046fb34-line-height );}.elementor-221 .elementor-element.elementor-element-55f4ee9{font-size:var( --e-global-typography-ed353ef-font-size );line-height:var( --e-global-typography-ed353ef-line-height );}.elementor-221 .elementor-element.elementor-element-1b12ed5 .elementor-button{font-size:var( --e-global-typography-ea70e75-font-size );}}@media(max-width:1024px){.elementor-221 .elementor-element.elementor-element-f195c67 .elementor-heading-title{font-size:var( --e-global-typography-046fb34-font-size );line-height:var( --e-global-typography-046fb34-line-height );}.elementor-221 .elementor-element.elementor-element-55f4ee9{font-size:var( --e-global-typography-ed353ef-font-size );line-height:var( --e-global-typography-ed353ef-line-height );}.elementor-221 .elementor-element.elementor-element-1b12ed5 .elementor-button{font-size:var( --e-global-typography-ea70e75-font-size );}}@media(max-width:767px){.elementor-221 .elementor-element.elementor-element-346803e{--margin-top:0rem;--margin-bottom:0rem;--margin-left:0rem;--margin-right:0rem;--padding-top:0rem;--padding-bottom:0rem;--padding-left:0rem;--padding-right:0rem;}.elementor-221 .elementor-element.elementor-element-f195c67{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-221 .elementor-element.elementor-element-f195c67 .elementor-heading-title{font-size:var( --e-global-typography-046fb34-font-size );line-height:var( --e-global-typography-046fb34-line-height );}.elementor-221 .elementor-element.elementor-element-55f4ee9{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;font-size:var( --e-global-typography-ed353ef-font-size );line-height:var( --e-global-typography-ed353ef-line-height );}.elementor-221 .elementor-element.elementor-element-1b12ed5 .elementor-button{font-size:var( --e-global-typography-ea70e75-font-size );}}/* Start custom CSS for container, class: .elementor-element-346803e */@media (max-width: 767px) {

    /* On cible spécifiquement la colonne de texte pour forcer la marge */
    .id3d-full-row .elementor-element.col-infos {
        margin-left: 1rem !important;
        margin-right: 1rem !important;
        width: calc(100% - 3rem) !important; /* On déduit les marges de la largeur totale */
    }
    
    /* On s'assure que le bouton et les textes ne collent pas aux bords */
    .id3d-full-row .col-infos .elementor-widget-wrap {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-994b023 *//* --- SÉCURITÉ ARCHIVES (Laptop & Tablette) --- */
@media (max-width: 1320px) {
    .id3d-catalogue-container {
        width: 100% !important;
        /* Gouttière généreuse pour Laptop/Tablette */
        padding-left: 3rem !important;
        padding-right: 3rem !important;
        box-sizing: border-box !important;
    }

    .id3d-full-row {
        width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        display: flex !important;
        align-items: center !important;
        gap: 40px !important; /* Espace entre image et texte */
    }
}

/* --- ADAPTATION MOBILE (Smartphone) --- */
@media (max-width: 767px) {
    .id3d-catalogue-container {
        /* On réduit les marges pour que l'image soit plus grande */
        padding-left: 0rem !important;
        padding-right: 0rem !important;
    }

    .id3d-full-row {
        /* On empile verticalement : Image en haut, Texte en bas */
        flex-direction: column !important;
        gap: 20px !important;
        text-align: center !important; /* Optionnel : centre le texte pour le mobile */
    }

    /* On annule l'inversion row-reverse pour que l'image reste TOUJOURS en haut */
    .id3d-full-row.is-reversed {
        flex-direction: column !important;
    }
    
    /* On force l'image et le texte à prendre 100% de la largeur disponible */
    .id3d-full-row > div {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* Correction spécifique pour l'alternance Desktop/Laptop uniquement */
@media (min-width: 768px) {
    .id3d-full-row.is-reversed {
        flex-direction: row-reverse !important;
    }

}/* End custom CSS */
/* Start custom CSS for image-carousel, class: .elementor-element-500f27a *//* On masque l'icône par défaut de Swiper */
.id3d-custom-arrow::after {
    display: none !important;
}

/* On ajuste la taille et la position de tes flèches personnalisées dans le catalogue */
.id3d-custom-arrow {
    width: 42px !important; /* Un peu plus petit que le slider du haut */
    height: 42px !important;
    background: transparent !important;
}

/* On s'assure que les flèches sont bien visibles sur l'image */
.swiper-button-prev.id3d-custom-arrow { left: 15px; }
.swiper-button-next.id3d-custom-arrow { right: 15px; }

/* 1. Taille des pastilles (Inactives) */
.id3d-product-swiper .swiper-pagination-bullet {
    background: #ffffff !important;
    opacity: 1 !important;
    width: 1.0625rem !important; /* 17px */
    height: 1.0625rem !important;
    margin: 0 4px !important; /* On réduit l'espacement horizontal entre les points */
    border: 1px solid #dbdbdb; /* Un bord léger pour le relief sur fond blanc */
    cursor: pointer;
    transition: all 0.3s ease;
}

/* 2. Style de la pastille ACTIVE */
.id3d-product-swiper .swiper-pagination-bullet-active {
    background: #2523DE !important;
    border-color: #2523DE !important;
    transform: scale(1.1); /* Légèrement plus grande pour l'emphase */
}

/* 3. Positionnement global du conteneur de points */
.id3d-product-swiper .swiper-pagination {
    bottom: 20px !important;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

/* On force l'arrondi sur le conteneur parent pour éviter les coins carrés pendant le slide */
.id3d-product-swiper {
    border-radius: 2.5625rem !important; /* Ajuste la valeur selon tes cartes (ex: 15px ou 20px) */
    overflow: hidden !important;
    /* Un petit hack pour forcer le rendu sur Safari iOS */
    -webkit-mask-image: -webkit-radial-gradient(white, black);
}

/* On s'assure que les images à l'intérieur n'ont plus besoin de gérer l'arrondi individuellement */
.id3d-product-swiper .swiper-slide img {
    border-radius: 0 !important; 
    width: 100%;
    height: 100%;
    object-fit: cover;
}/* End custom CSS */