.elementor-446 .elementor-element.elementor-element-9accb64{--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;--margin-top:6em;--margin-bottom:6em;--margin-left:0em;--margin-right:0em;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-446 .elementor-element.elementor-element-20b4354 .spf-template-project-field-value{font-family:"Bebas Neue", Sans-serif;font-size:2.7em;font-weight:600;line-height:1.1em;color:var( --e-global-color-primary );}.elementor-446 .elementor-element.elementor-element-20b4354 .spf-template-project-field-wrapper{text-align:center;}.elementor-446 .elementor-element.elementor-element-384dcbf{--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;--gap:2em 2em;--row-gap:2em;--column-gap:2em;--margin-top:3em;--margin-bottom:3em;--margin-left:0em;--margin-right:0em;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-446 .elementor-element.elementor-element-be95860{--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-446 .elementor-element.elementor-element-e61ba1e .spf-template-project-field-value{font-family:"Poppins", Sans-serif;font-size:15px;font-weight:400;line-height:22px;}.elementor-446 .elementor-element.elementor-element-e61ba1e .spf-template-project-field-wrapper{text-align:left;}.elementor-446 .elementor-element.elementor-element-eca44a7.elementor-element{--align-self:flex-start;}.elementor-446 .elementor-element.elementor-element-eca44a7 .spf-media-links{justify-content:flex-start;gap:16px;}.elementor-446 .elementor-element.elementor-element-eca44a7 .spf-media-links-logo img{height:86px;width:auto;max-width:100%;object-fit:contain;opacity:1;}.elementor-446 .elementor-element.elementor-element-eca44a7 .spf-media-links-item:hover .spf-media-links-logo img{opacity:0.85;}.elementor-446 .elementor-element.elementor-element-b9eb47a{--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-446 .elementor-element.elementor-element-aabd2a6 .spf-gal-adv__img{object-fit:fill;}.elementor-446 .elementor-element.elementor-element-aabd2a6 .spf-gal-adv__media{box-shadow:4px 0px 46px 1px rgba(0,0,0,0.5);}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-446 .elementor-element.elementor-element-43d194d .elementor-button{background-color:var( --e-global-color-primary );border-radius:24px 24px 24px 24px;}.elementor-446 .elementor-element.elementor-element-43d194d .elementor-button:hover, .elementor-446 .elementor-element.elementor-element-43d194d .elementor-button:focus{background-color:var( --e-global-color-secondary );color:var( --e-global-color-835f292 );}.elementor-446 .elementor-element.elementor-element-43d194d .elementor-button:hover svg, .elementor-446 .elementor-element.elementor-element-43d194d .elementor-button:focus svg{fill:var( --e-global-color-835f292 );}.elementor-446 .elementor-element.elementor-element-49c6f75{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-446 .elementor-element.elementor-element-8785c84 .spf-template-project-video{text-align:center;}.elementor-446 .elementor-element.elementor-element-e90d545 .spf-template-project-video{text-align:center;}.elementor-446 .elementor-element.elementor-element-c7b333b{--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;--justify-content:center;--margin-top:3em;--margin-bottom:3em;--margin-left:0em;--margin-right:0em;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-446 .elementor-element.elementor-element-c1e18e1{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-446 .elementor-element.elementor-element-f07dd37 .elementor-button{background-color:var( --e-global-color-primary );border-radius:24px 24px 24px 24px;}.elementor-446 .elementor-element.elementor-element-f07dd37 .elementor-button:hover, .elementor-446 .elementor-element.elementor-element-f07dd37 .elementor-button:focus{background-color:var( --e-global-color-secondary );color:var( --e-global-color-835f292 );}.elementor-446 .elementor-element.elementor-element-f07dd37 .elementor-button:hover svg, .elementor-446 .elementor-element.elementor-element-f07dd37 .elementor-button:focus svg{fill:var( --e-global-color-835f292 );}@media(min-width:768px){.elementor-446 .elementor-element.elementor-element-be95860{--width:50%;}.elementor-446 .elementor-element.elementor-element-b9eb47a{--width:50%;}.elementor-446 .elementor-element.elementor-element-49c6f75{--content-width:805px;}.elementor-446 .elementor-element.elementor-element-c1e18e1{--width:78%;}}/* Start custom CSS for spf-template-project-description, class: .elementor-element-e61ba1e *//* On force le conteneur à traiter les puces comme des retours à la ligne */
.elementor-446 .elementor-element.elementor-element-e61ba1e {
    display: block !important;
}

.elementor-446 .elementor-element.elementor-element-e61ba1e .spf-template-project-field-value {
    display: block !important;
}

/* Cette ligne demande au navigateur de créer un saut de ligne automatique avant chaque puce */
.elementor-446 .elementor-element.elementor-element-e61ba1e .spf-template-project-field-value {
    white-space: pre-wrap;
}

/* L'astuce pour forcer le saut de ligne sans modifier votre texte */
.elementor-446 .elementor-element.elementor-element-e61ba1e .spf-template-project-field-value::after {
    content: "";
    display: block;
}

/* On cible spécifiquement les caractères "•" pour les isoler visuellement */
.elementor-446 .elementor-element.elementor-element-e61ba1e .spf-template-project-field-value {
    /* Si le texte est dans un seul bloc, on force le saut de ligne avant chaque puce */
    content: " ";
    white-space: pre-wrap;
}/* End custom CSS */
/* Start custom CSS for spf-template-project-gallery-advanced, class: .elementor-element-aabd2a6 *//* 1. Bloc conteneur : on force l'aspect carré et l'isolation */
.spf-gal-adv__item {
    position: relative !important;
    overflow: hidden !important;
    aspect-ratio: 1 / 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    /* Empêche les scripts externes d'interférer avec le layout du bloc */
    contain: layout style size !important; 
}

/* 2. L'image : on force son maintien en mémoire et sa visibilité */
.spf-gal-adv__img--main {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    
    /* Transformation initiale pour stabiliser le rendu */
    transform: scale(1) translateZ(0) !important;
    
    /* Transition fluide */
    transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    
    /* Évite le clignotement lors de l'animation */
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
    
    /* Force l'affichage permanent */
    visibility: visible !important;
    opacity: 1 !important;
}

/* 3. Zoom au survol : on cible uniquement l'image */
.spf-gal-adv__item:hover .spf-gal-adv__img--main {
    transform: scale(1.15) translateZ(0) !important;
}/* End custom CSS */