.elementor-28 .elementor-element.elementor-element-7ce7f5c{--display:flex;--min-height:100vh;--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;--justify-content:flex-end;--overlay-opacity:0.5;--padding-top:0%;--padding-bottom:5%;--padding-left:0%;--padding-right:0%;}.elementor-28 .elementor-element.elementor-element-7ce7f5c:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-7ce7f5c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/FOND-HEADER-scaled.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-28 .elementor-element.elementor-element-7ce7f5c::before, .elementor-28 .elementor-element.elementor-element-7ce7f5c > .elementor-background-video-container::before, .elementor-28 .elementor-element.elementor-element-7ce7f5c > .e-con-inner > .elementor-background-video-container::before, .elementor-28 .elementor-element.elementor-element-7ce7f5c > .elementor-background-slideshow::before, .elementor-28 .elementor-element.elementor-element-7ce7f5c > .e-con-inner > .elementor-background-slideshow::before, .elementor-28 .elementor-element.elementor-element-7ce7f5c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-28 .elementor-element.elementor-element-8cddb6c{margin:100px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-28 .elementor-element.elementor-element-8cddb6c .elementor-heading-title{font-family:"Neue", Sans-serif;font-size:7.9em;font-weight:400;line-height:130px;color:#F0EFE6;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-28 .elementor-element.elementor-element-6e63212{width:var( --container-widget-width, 60% );max-width:60%;--container-widget-width:60%;--container-widget-flex-grow:0;font-family:"Neue Roman", Sans-serif;font-size:18px;font-weight:400;color:#F0EFE6;}.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-28 .elementor-element.elementor-element-a3ba648 .elementor-button{background-color:#1F1E15C7;font-family:"Neue Roman", Sans-serif;font-size:16px;font-weight:500;text-transform:uppercase;letter-spacing:12%;border-radius:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-28 .elementor-element.elementor-element-a3ba648 .elementor-button:hover, .elementor-28 .elementor-element.elementor-element-a3ba648 .elementor-button:focus{background-color:#CBA84D;}.elementor-28 .elementor-element.elementor-element-a3ba648.elementor-element{--align-self:flex-start;}.elementor-28 .elementor-element.elementor-element-a3ba648 .elementor-button-content-wrapper{flex-direction:row;}.elementor-28 .elementor-element.elementor-element-a3ba648 .elementor-button .elementor-button-content-wrapper{gap:10px;}.elementor-28 .elementor-element.elementor-element-8540598{--display:flex;--min-height:300px;--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;--justify-content:center;--padding-top:180px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-8540598:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-8540598 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EFE6;}.elementor-28 .elementor-element.elementor-element-0e41051{--display:flex;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-1e140f7{--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-28 .elementor-element.elementor-element-e81b7da{text-align:center;}.elementor-28 .elementor-element.elementor-element-f7d5e5b{--display:flex;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-ef49459{--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;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-5324c1e{text-align:center;}.elementor-28 .elementor-element.elementor-element-2e46231{--display:flex;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-6815e1b{--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;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-fff2c02{text-align:center;}.elementor-28 .elementor-element.elementor-element-7cdcbc8{--display:flex;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-37a58de{--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;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-217918c{text-align:center;}.elementor-28 .elementor-element.elementor-element-2ce1e50{--display:flex;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-8c65c8b{--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;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-c00bdfd{text-align:center;}.elementor-28 .elementor-element.elementor-element-b5b798e{--display:flex;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-23c61dd{--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;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-88b2aa2{text-align:center;}.elementor-28 .elementor-element.elementor-element-665a52f{--display:flex;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-f99f41e{--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;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-d0fcff3{text-align:center;}.elementor-28 .elementor-element.elementor-element-ed701b0{--display:flex;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-4481cfe{--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;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-248e737{text-align:center;}.elementor-28 .elementor-element.elementor-element-896d9f7{--e-n-carousel-swiper-slides-to-display:7;--e-n-carousel-swiper-slides-gap:100px;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;}.elementor-28 .elementor-element.elementor-element-91d2921{--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;--padding-top:180px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-91d2921:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-91d2921 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EFE6;}.elementor-28 .elementor-element.elementor-element-897c834{--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:space-between;}.elementor-28 .elementor-element.elementor-element-2d066d6{--display:flex;}.elementor-28 .elementor-element.elementor-element-29caea0 .elementor-heading-title{font-family:"Neue Roman", Sans-serif;font-size:64px;font-weight:300;line-height:84px;color:#393624C9;}.elementor-28 .elementor-element.elementor-element-a9393c0{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:flex-start;}.elementor-28 .elementor-element.elementor-element-ec8e2a3{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:#393624C9;}.elementor-28 .elementor-element.elementor-element-b6f7ab9{font-family:"NeueHaas", Sans-serif;font-size:15px;font-weight:400;color:#393624C9;}.elementor-28 .elementor-element.elementor-element-3542c13{--display:flex;--margin-top:0%;--margin-bottom:0%;--margin-left:-4%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:5%;--padding-right:0%;}.elementor-28 .elementor-element.elementor-element-055fe91{--display:flex;}.elementor-28 .elementor-element.elementor-element-8e382ac{--display:flex;--min-height:500px;--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;--justify-content:center;--background-transition:0.3s;}.elementor-28 .elementor-element.elementor-element-8e382ac:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-8e382ac > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/card-chiffre-cles.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-28 .elementor-element.elementor-element-8e382ac:hover{background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/card-chiffre-cles-hover.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-widget-counter .elementor-counter-number-wrapper{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-counter .elementor-counter-title{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-28 .elementor-element.elementor-element-2f41237 .elementor-counter-title{justify-content:center;color:#393624C9;font-family:"test", Sans-serif;font-size:24px;font-weight:400;}.elementor-28 .elementor-element.elementor-element-2f41237 .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:1;--counter-suffix-grow:1;--counter-number-grow:0;color:#393624C9;font-family:"Neue Roman", Sans-serif;font-size:90px;font-weight:500;}.elementor-28 .elementor-element.elementor-element-f2afb1d{--display:flex;}.elementor-28 .elementor-element.elementor-element-764eb41{--display:flex;--min-height:500px;--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;--justify-content:center;--background-transition:0.3s;}.elementor-28 .elementor-element.elementor-element-764eb41:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-764eb41 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/card-chiffre-cles.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-28 .elementor-element.elementor-element-764eb41:hover{background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/card-chiffre-cles-hover.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-28 .elementor-element.elementor-element-e830c92 .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:1;--counter-suffix-grow:1;--counter-number-grow:0;color:#393624C9;font-family:"Neue Roman", Sans-serif;font-size:90px;font-weight:500;}.elementor-28 .elementor-element.elementor-element-e830c92 .elementor-counter-title{color:#393624C9;font-family:"test", Sans-serif;font-size:24px;font-weight:400;}.elementor-28 .elementor-element.elementor-element-f743212{--display:flex;}.elementor-28 .elementor-element.elementor-element-6b811f4{--display:flex;--min-height:500px;--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;--justify-content:center;--background-transition:0.3s;}.elementor-28 .elementor-element.elementor-element-6b811f4:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-6b811f4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/card-chiffre-cles.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-28 .elementor-element.elementor-element-6b811f4:hover{background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/card-chiffre-cles-hover.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-28 .elementor-element.elementor-element-a3590d9 .elementor-counter-title{justify-content:center;color:#393624C9;font-family:"test", Sans-serif;font-size:24px;font-weight:400;}.elementor-28 .elementor-element.elementor-element-a3590d9 .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:1;--counter-suffix-grow:1;--counter-number-grow:0;color:#393624C9;font-family:"Neue Roman", Sans-serif;font-size:90px;font-weight:500;}.elementor-28 .elementor-element.elementor-element-b0d6942{--display:flex;}.elementor-28 .elementor-element.elementor-element-0cd7d98{--display:flex;--min-height:500px;--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;--justify-content:center;--background-transition:0.3s;}.elementor-28 .elementor-element.elementor-element-0cd7d98:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-0cd7d98 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/card-chiffre-cles.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-28 .elementor-element.elementor-element-0cd7d98:hover{background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/card-chiffre-cles-hover.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-28 .elementor-element.elementor-element-a48a575 .elementor-counter-title{justify-content:center;color:#393624C9;font-family:"test", Sans-serif;font-size:24px;font-weight:400;}.elementor-28 .elementor-element.elementor-element-a48a575 .elementor-counter-number-wrapper{text-align:{{VALUE}};--counter-prefix-grow:1;--counter-suffix-grow:1;--counter-number-grow:0;color:#393624C9;font-family:"Neue Roman", Sans-serif;font-size:90px;font-weight:500;}.elementor-28 .elementor-element.elementor-element-45d7cfd{--e-n-carousel-swiper-slides-gap:50px;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;--e-n-carousel-arrow-prev-left-align:0%;--e-n-carousel-arrow-prev-translate-x:0px;--e-n-carousel-arrow-prev-left-position:0px;--e-n-carousel-arrow-prev-top-align:50%;--e-n-carousel-arrow-prev-translate-y:-50%;--e-n-carousel-arrow-prev-top-position:0px;--e-n-carousel-arrow-next-right-align:0%;--e-n-carousel-arrow-next-translate-x:0%;--e-n-carousel-arrow-next-right-position:0px;--e-n-carousel-arrow-next-top-align:50%;--e-n-carousel-arrow-next-translate-y:-50%;--e-n-carousel-arrow-next-top-position:0px;}.elementor-28 .elementor-element.elementor-element-f66ca02{--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;--padding-top:180px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-f66ca02:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-f66ca02 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EFE6;}.elementor-28 .elementor-element.elementor-element-8fb67fe{--display:flex;}.elementor-28 .elementor-element.elementor-element-8fb67fe.e-con{--align-self:center;}.elementor-28 .elementor-element.elementor-element-e653fd6 .elementor-heading-title{font-family:"Neue Roman", Sans-serif;font-size:64px;font-weight:400;line-height:84px;color:#393624C9;}.elementor-28 .elementor-element.elementor-element-43dde56 .elementor-button{background-color:#1F1E15C7;font-family:"Neue Roman", Sans-serif;font-size:16px;font-weight:500;text-transform:uppercase;letter-spacing:12%;border-radius:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-28 .elementor-element.elementor-element-43dde56 .elementor-button:hover, .elementor-28 .elementor-element.elementor-element-43dde56 .elementor-button:focus{background-color:#CBA84D;}.elementor-28 .elementor-element.elementor-element-43dde56.elementor-element{--align-self:flex-start;}.elementor-28 .elementor-element.elementor-element-43dde56 .elementor-button-content-wrapper{flex-direction:row;}.elementor-28 .elementor-element.elementor-element-43dde56 .elementor-button .elementor-button-content-wrapper{gap:10px;}.elementor-28 .elementor-element.elementor-element-cb93a3f{--display:flex;}.elementor-28 .elementor-element.elementor-element-3dbe339.elementor-element{--align-self:flex-end;}.elementor-28 .elementor-element.elementor-element-3dbe339{text-align:end;}.elementor-28 .elementor-element.elementor-element-3dbe339 img{width:55%;}.elementor-28 .elementor-element.elementor-element-87080d4{--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;--padding-top:180px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-87080d4:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-87080d4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EFE6;}.elementor-28 .elementor-element.elementor-element-763372d .elementor-heading-title{font-family:"Neue Roman", Sans-serif;font-size:50px;font-weight:400;line-height:71.32px;color:#393624C9;}.elementor-28 .elementor-element.elementor-element-64b6977{--display:flex;}.elementor-28 .elementor-element.elementor-element-f12a565{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-28 .elementor-element.elementor-element-67abbea{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-28 .elementor-element.elementor-element-67abbea.e-con{--align-self:center;}.elementor-28 .elementor-element.elementor-element-3118a76{--display:flex;--min-height:80px;--justify-content:space-between;--padding-top:5px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-2760ead .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:300;color:#393624C9;}.elementor-28 .elementor-element.elementor-element-a2294d5{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-28 .elementor-element.elementor-element-5257005{--display:flex;}.elementor-28 .elementor-element.elementor-element-95f1787{text-align:end;}.elementor-28 .elementor-element.elementor-element-95f1787 img{width:20px;}.elementor-28 .elementor-element.elementor-element-963aaf5{--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-28 .elementor-element.elementor-element-8f67b18{--display:flex;}.elementor-28 .elementor-element.elementor-element-8f67b18.e-con{--align-self:center;}.elementor-28 .elementor-element.elementor-element-c02f070{--display:flex;--min-height:80px;--justify-content:space-between;--padding-top:5px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-079c1f3{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-28 .elementor-element.elementor-element-a205de0{--display:flex;}.elementor-28 .elementor-element.elementor-element-4ddb9a1{text-align:end;}.elementor-28 .elementor-element.elementor-element-4ddb9a1 img{width:20px;}.elementor-28 .elementor-element.elementor-element-fd719ab{--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-28 .elementor-element.elementor-element-bd0e822{--display:flex;}.elementor-28 .elementor-element.elementor-element-bd0e822.e-con{--align-self:center;}.elementor-28 .elementor-element.elementor-element-efb5e6c{--display:flex;--min-height:80px;--justify-content:space-between;--padding-top:5px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-8bfd2aa{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-28 .elementor-element.elementor-element-19d33c2{--display:flex;}.elementor-28 .elementor-element.elementor-element-2978c88{text-align:end;}.elementor-28 .elementor-element.elementor-element-2978c88 img{width:20px;}.elementor-28 .elementor-element.elementor-element-ad012ef{--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-28 .elementor-element.elementor-element-09abd80{--display:flex;}.elementor-28 .elementor-element.elementor-element-09abd80.e-con{--align-self:center;}.elementor-28 .elementor-element.elementor-element-f287c3f{--display:flex;--min-height:80px;--justify-content:space-between;--padding-top:5px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-f44a003{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-28 .elementor-element.elementor-element-2c14c44{--display:flex;}.elementor-28 .elementor-element.elementor-element-1bf6e6c{text-align:end;}.elementor-28 .elementor-element.elementor-element-1bf6e6c img{width:20px;}.elementor-28 .elementor-element.elementor-element-7ae368a{--display:flex;--min-height:50vh;--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;--padding-top:180px;--padding-bottom:180px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-7ae368a:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-7ae368a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EFE6;background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/Frame-1000003841.svg");background-size:50% auto;}.elementor-28 .elementor-element.elementor-element-b7ebbac{--display:flex;}.elementor-28 .elementor-element.elementor-element-021d061 .elementor-heading-title{font-family:"Neue Roman", Sans-serif;font-size:50px;font-weight:400;line-height:65px;color:#393624C9;}.elementor-28 .elementor-element.elementor-element-62acc14{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:#393624;}.elementor-28 .elementor-element.elementor-element-62acc14 a{color:#020101;}.elementor-28 .elementor-element.elementor-element-95faaf3{--display:flex;}.elementor-28 .elementor-element.elementor-element-8efcb17{--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;--z-index:2;}.elementor-28 .elementor-element.elementor-element-2787eb2{--display:flex;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-38bc5f9 .elementor-heading-title{font-family:"test", Sans-serif;font-size:24px;font-weight:500;color:#393624C9;}.elementor-28 .elementor-element.elementor-element-d47ae1e{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:#393624C9;}.elementor-28 .elementor-element.elementor-element-3ae1130{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-28 .elementor-element.elementor-element-0c88fb3.elementor-element{--align-self:center;}.elementor-28 .elementor-element.elementor-element-0c88fb3{text-align:center;}.elementor-28 .elementor-element.elementor-element-0c88fb3 img{width:50%;}.elementor-28 .elementor-element.elementor-element-31fbb0c.elementor-element{--align-self:center;}.elementor-28 .elementor-element.elementor-element-31fbb0c{text-align:center;}.elementor-28 .elementor-element.elementor-element-31fbb0c img{width:50%;}.elementor-28 .elementor-element.elementor-element-9c02491{--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;--z-index:2;}.elementor-28 .elementor-element.elementor-element-037459c{--display:flex;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-7732ebd .elementor-heading-title{font-family:"test", Sans-serif;font-size:24px;font-weight:500;color:#393624C9;}.elementor-28 .elementor-element.elementor-element-0460872{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:#393624C9;}.elementor-28 .elementor-element.elementor-element-c31249a{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-28 .elementor-element.elementor-element-e7751cc.elementor-element{--align-self:center;}.elementor-28 .elementor-element.elementor-element-e7751cc{text-align:center;}.elementor-28 .elementor-element.elementor-element-e7751cc img{width:50%;}.elementor-28 .elementor-element.elementor-element-9363b59.elementor-element{--align-self:center;}.elementor-28 .elementor-element.elementor-element-9363b59{text-align:center;}.elementor-28 .elementor-element.elementor-element-9363b59 img{width:50%;}.elementor-28 .elementor-element.elementor-element-86d96ae{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-86d96ae:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-86d96ae > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EFE6;}.elementor-28 .elementor-element.elementor-element-74cab7f{--display:flex;}.elementor-28 .elementor-element.elementor-element-74cab7f.e-con{--align-self:center;}.elementor-28 .elementor-element.elementor-element-cbc5955.elementor-element{--align-self:flex-end;}.elementor-28 .elementor-element.elementor-element-cbc5955{z-index:2;text-align:end;}.elementor-28 .elementor-element.elementor-element-cbc5955 img{width:100%;}.elementor-28 .elementor-element.elementor-element-0204327{--display:flex;--z-index:10;}.elementor-28 .elementor-element.elementor-element-0204327.e-con{--align-self:center;}.elementor-28 .elementor-element.elementor-element-7a777d0 .elementor-heading-title{font-family:"Neue Roman", Sans-serif;font-size:64px;font-weight:400;line-height:84px;color:#393624C9;}.elementor-28 .elementor-element.elementor-element-f9019ea .elementor-button{background-color:#1F1E15C7;font-family:"Neue Roman", Sans-serif;font-size:16px;font-weight:500;text-transform:uppercase;letter-spacing:12%;border-radius:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-28 .elementor-element.elementor-element-f9019ea .elementor-button:hover, .elementor-28 .elementor-element.elementor-element-f9019ea .elementor-button:focus{background-color:#CBA84D;}.elementor-28 .elementor-element.elementor-element-f9019ea.elementor-element{--align-self:flex-start;}.elementor-28 .elementor-element.elementor-element-f9019ea .elementor-button-content-wrapper{flex-direction:row;}.elementor-28 .elementor-element.elementor-element-f9019ea .elementor-button .elementor-button-content-wrapper{gap:10px;}.elementor-28 .elementor-element.elementor-element-8b34972{--display:flex;--min-height:80vh;--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;--justify-content:center;--padding-top:180px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-8b34972:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-8b34972 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EFE6;}.elementor-28 .elementor-element.elementor-element-8b34972.e-con{--align-self:center;}.elementor-28 .elementor-element.elementor-element-8b7d58d{--display:flex;}.elementor-28 .elementor-element.elementor-element-77e10f7{--display:flex;--min-height:1000px;--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-28 .elementor-element.elementor-element-77e10f7:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-77e10f7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/Rubikle-Section-Avis-scaled.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-28 .elementor-element.elementor-element-c2536a7{--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-28 .elementor-element.elementor-element-c2536a7.e-con{--flex-grow:1;--flex-shrink:0;}.elementor-28 .elementor-element.elementor-element-86af555{--display:flex;}.elementor-28 .elementor-element.elementor-element-e41c90e{--display:flex;--justify-content:flex-end;}.elementor-28 .elementor-element.elementor-element-9d13edd{text-align:start;}.elementor-28 .elementor-element.elementor-element-9d13edd img{width:100px;}.elementor-28 .elementor-element.elementor-element-b6cbbc3 .elementor-heading-title{font-family:"Neue Roman", Sans-serif;font-size:36px;font-weight:400;color:#FFFFFF;}.elementor-28 .elementor-element.elementor-element-7b90b01{font-family:"Neue", Sans-serif;font-size:15px;font-weight:400;color:#FFFFFF;}.elementor-28 .elementor-element.elementor-element-72a9a82{--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-28 .elementor-element.elementor-element-7f94b44{--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-28 .elementor-element.elementor-element-9bdda52{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--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-28 .elementor-element.elementor-element-3a5a378{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -10px) 0px;text-align:end;font-family:"Neue Roman", Sans-serif;font-size:24px;font-weight:400;color:#FFFFFF;}.elementor-28 .elementor-element.elementor-element-870ee9d{text-align:end;font-family:"Neue Roman", Sans-serif;font-size:15px;font-weight:400;color:#CBA84D;}.elementor-28 .elementor-element.elementor-element-6d0e280{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-28 .elementor-element.elementor-element-2d01bfc img{width:50%;}.elementor-28 .elementor-element.elementor-element-e60ed30.elementor-element{--align-self:center;}.elementor-28 .elementor-element.elementor-element-e60ed30{color:#F0EFE6;}.elementor-28 .elementor-element.elementor-element-6dd4c68{--e-n-carousel-swiper-slides-to-display:1;--e-n-carousel-swiper-slides-gap:10px;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;}.elementor-28 .elementor-element.elementor-element-7146408{--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;--padding-top:180px;--padding-bottom:180px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-7146408:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-7146408 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0EFE6;}.elementor-28 .elementor-element.elementor-element-36eea90{--display:flex;}.elementor-28 .elementor-element.elementor-element-36eea90.e-con{--align-self:center;}.elementor-28 .elementor-element.elementor-element-9bd49f9 .elementor-heading-title{font-family:"Neue Roman", Sans-serif;font-size:64px;font-weight:400;line-height:84px;color:#393624C9;}.elementor-28 .elementor-element.elementor-element-07dbdb0{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-28 .elementor-element.elementor-element-523ac65 .elementor-button{background-color:#1F1E15C7;font-family:"Neue Roman", Sans-serif;font-size:16px;font-weight:500;text-transform:uppercase;letter-spacing:12%;border-radius:0px 0px 0px 0px;padding:10px 10px 10px 10px;}.elementor-28 .elementor-element.elementor-element-523ac65 .elementor-button:hover, .elementor-28 .elementor-element.elementor-element-523ac65 .elementor-button:focus{background-color:#CBA84D;}.elementor-28 .elementor-element.elementor-element-523ac65.elementor-element{--align-self:flex-start;}.elementor-28 .elementor-element.elementor-element-523ac65 .elementor-button-content-wrapper{flex-direction:row;}.elementor-28 .elementor-element.elementor-element-523ac65 .elementor-button .elementor-button-content-wrapper{gap:10px;}.elementor-28 .elementor-element.elementor-element-30545c5{--display:flex;--min-height:0px;--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;}body:not(.rtl) .elementor-28 .elementor-element.elementor-element-6ef20c6{right:0px;}body.rtl .elementor-28 .elementor-element.elementor-element-6ef20c6{left:0px;}.elementor-28 .elementor-element.elementor-element-6ef20c6{bottom:50px;text-align:end;}.elementor-28 .elementor-element.elementor-element-6ef20c6 img{width:90%;}.elementor-28 .elementor-element.elementor-element-da4177c{--display:flex;--min-height:0px;--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;}body:not(.rtl) .elementor-28 .elementor-element.elementor-element-d3b15c7{right:0vh;}body.rtl .elementor-28 .elementor-element.elementor-element-d3b15c7{left:0vh;}.elementor-28 .elementor-element.elementor-element-d3b15c7{bottom:210vh;z-index:0;text-align:start;}.elementor-28 .elementor-element.elementor-element-d3b15c7 img{width:60vw;max-width:100%;height:100%;object-fit:contain;object-position:center center;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-28 .elementor-element.elementor-element-7ce7f5c{--content-width:95%;}.elementor-28 .elementor-element.elementor-element-8540598{--content-width:100%;}.elementor-28 .elementor-element.elementor-element-91d2921{--content-width:95%;}.elementor-28 .elementor-element.elementor-element-a9393c0{--width:50%;}.elementor-28 .elementor-element.elementor-element-3542c13{--width:100vw;}.elementor-28 .elementor-element.elementor-element-f66ca02{--content-width:95%;}.elementor-28 .elementor-element.elementor-element-8fb67fe{--width:77%;}.elementor-28 .elementor-element.elementor-element-87080d4{--content-width:95%;}.elementor-28 .elementor-element.elementor-element-67abbea{--width:100%;}.elementor-28 .elementor-element.elementor-element-8f67b18{--width:20%;}.elementor-28 .elementor-element.elementor-element-bd0e822{--width:20%;}.elementor-28 .elementor-element.elementor-element-09abd80{--width:20%;}.elementor-28 .elementor-element.elementor-element-7ae368a{--content-width:95%;}.elementor-28 .elementor-element.elementor-element-3ae1130{--width:30%;}.elementor-28 .elementor-element.elementor-element-c31249a{--width:30%;}.elementor-28 .elementor-element.elementor-element-86d96ae{--content-width:95%;}.elementor-28 .elementor-element.elementor-element-74cab7f{--width:75%;}.elementor-28 .elementor-element.elementor-element-0204327{--width:75%;}.elementor-28 .elementor-element.elementor-element-8b34972{--content-width:95%;}.elementor-28 .elementor-element.elementor-element-77e10f7{--content-width:auto;}.elementor-28 .elementor-element.elementor-element-c2536a7{--width:100%;}.elementor-28 .elementor-element.elementor-element-86af555{--width:100%;}.elementor-28 .elementor-element.elementor-element-e41c90e{--width:100%;}.elementor-28 .elementor-element.elementor-element-6d0e280{--width:30%;}.elementor-28 .elementor-element.elementor-element-7146408{--content-width:95%;}.elementor-28 .elementor-element.elementor-element-36eea90{--width:80%;}.elementor-28 .elementor-element.elementor-element-30545c5{--content-width:0px;}.elementor-28 .elementor-element.elementor-element-da4177c{--content-width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-28 .elementor-element.elementor-element-8fb67fe{--width:80%;}.elementor-28 .elementor-element.elementor-element-74cab7f{--width:80%;}.elementor-28 .elementor-element.elementor-element-0204327{--width:80%;}.elementor-28 .elementor-element.elementor-element-36eea90{--width:80%;}}@media(max-width:1024px){.elementor-28 .elementor-element.elementor-element-8cddb6c .elementor-heading-title{font-size:60px;line-height:60px;}.elementor-28 .elementor-element.elementor-element-896d9f7{--e-n-carousel-swiper-slides-to-display:4;}.elementor-28 .elementor-element.elementor-element-29caea0 .elementor-heading-title{font-size:45px;line-height:45px;}.elementor-28 .elementor-element.elementor-element-a9393c0{--justify-content:flex-end;}.elementor-28 .elementor-element.elementor-element-45d7cfd{--e-n-carousel-swiper-slides-to-display:2;}.elementor-28 .elementor-element.elementor-element-e653fd6 .elementor-heading-title{font-size:45px;line-height:45px;}.elementor-28 .elementor-element.elementor-element-763372d .elementor-heading-title{font-size:40px;line-height:40px;}.elementor-28 .elementor-element.elementor-element-7ae368a{--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-28 .elementor-element.elementor-element-7a777d0 .elementor-heading-title{font-size:58px;}.elementor-28 .elementor-element.elementor-element-6dd4c68{--e-n-carousel-swiper-slides-to-display:1;}.elementor-28 .elementor-element.elementor-element-9bd49f9{z-index:3;}.elementor-28 .elementor-element.elementor-element-9bd49f9 .elementor-heading-title{font-size:58px;}.elementor-28 .elementor-element.elementor-element-07dbdb0{z-index:3;}.elementor-28 .elementor-element.elementor-element-523ac65{z-index:3;}}@media(max-width:767px){.elementor-28 .elementor-element.elementor-element-7ce7f5c::before, .elementor-28 .elementor-element.elementor-element-7ce7f5c > .elementor-background-video-container::before, .elementor-28 .elementor-element.elementor-element-7ce7f5c > .e-con-inner > .elementor-background-video-container::before, .elementor-28 .elementor-element.elementor-element-7ce7f5c > .elementor-background-slideshow::before, .elementor-28 .elementor-element.elementor-element-7ce7f5c > .e-con-inner > .elementor-background-slideshow::before, .elementor-28 .elementor-element.elementor-element-7ce7f5c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://factory.perroquet.eu/wp-content/uploads/2026/07/patern-up.svg");}.elementor-28 .elementor-element.elementor-element-7ce7f5c{--padding-top:0%;--padding-bottom:15%;--padding-left:5%;--padding-right:5%;}.elementor-28 .elementor-element.elementor-element-8cddb6c .elementor-heading-title{font-size:48px;line-height:50px;}.elementor-28 .elementor-element.elementor-element-8540598{--content-width:100%;--min-height:auto;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-896d9f7{--e-n-carousel-swiper-slides-to-display:3;--e-n-carousel-swiper-slides-gap:0px;}.elementor-28 .elementor-element.elementor-element-91d2921{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-29caea0 .elementor-heading-title{font-size:48px;line-height:115%;}.elementor-28 .elementor-element.elementor-element-ec8e2a3{width:100%;max-width:100%;}.elementor-28 .elementor-element.elementor-element-b6f7ab9{width:100%;max-width:100%;font-size:15px;}.elementor-28 .elementor-element.elementor-element-3542c13.e-con{--align-self:center;}.elementor-28 .elementor-element.elementor-element-45d7cfd{--e-n-carousel-swiper-slides-to-display:1;}.elementor-28 .elementor-element.elementor-element-f66ca02{--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-e653fd6 .elementor-heading-title{font-size:42px;line-height:115%;}.elementor-28 .elementor-element.elementor-element-3dbe339 img{width:100%;}.elementor-28 .elementor-element.elementor-element-87080d4{--padding-top:30%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-28 .elementor-element.elementor-element-763372d{width:var( --container-widget-width, 90% );max-width:90%;--container-widget-width:90%;--container-widget-flex-grow:0;}.elementor-28 .elementor-element.elementor-element-763372d.elementor-element{--align-self:center;}.elementor-28 .elementor-element.elementor-element-763372d .elementor-heading-title{font-size:40px;line-height:115%;}.elementor-28 .elementor-element.elementor-element-64b6977{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-2760ead .elementor-heading-title{font-size:24px;}.elementor-28 .elementor-element.elementor-element-7ae368a{--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-021d061 .elementor-heading-title{font-size:45px;line-height:115%;}.elementor-28 .elementor-element.elementor-element-95faaf3{--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-28 .elementor-element.elementor-element-8efcb17{--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:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-28 .elementor-element.elementor-element-2787eb2{--width:73%;}.elementor-28 .elementor-element.elementor-element-38bc5f9 .elementor-heading-title{font-size:20px;}.elementor-28 .elementor-element.elementor-element-3ae1130{--width:27%;--min-height:125px;}.elementor-28 .elementor-element.elementor-element-0c88fb3 img{width:100%;}.elementor-28 .elementor-element.elementor-element-31fbb0c img{width:100%;}.elementor-28 .elementor-element.elementor-element-9c02491{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-28 .elementor-element.elementor-element-037459c{--width:73%;}.elementor-28 .elementor-element.elementor-element-7732ebd .elementor-heading-title{font-size:20px;}.elementor-28 .elementor-element.elementor-element-c31249a{--width:27%;--min-height:125px;}.elementor-28 .elementor-element.elementor-element-e7751cc img{width:100%;}.elementor-28 .elementor-element.elementor-element-9363b59 img{width:100%;}.elementor-28 .elementor-element.elementor-element-86d96ae{--padding-top:40%;--padding-bottom:0%;--padding-left:5%;--padding-right:5%;}.elementor-28 .elementor-element.elementor-element-74cab7f{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-0204327{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-7a777d0 .elementor-heading-title{font-size:42px;line-height:115%;}.elementor-28 .elementor-element.elementor-element-77e10f7{--min-height:715px;}.elementor-28 .elementor-element.elementor-element-c2536a7{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-9d13edd img{width:60px;}.elementor-28 .elementor-element.elementor-element-7b90b01{font-size:15px;}.elementor-28 .elementor-element.elementor-element-7f94b44{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-28 .elementor-element.elementor-element-9bdda52{--width:65%;}.elementor-28 .elementor-element.elementor-element-6d0e280{--width:35%;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:7px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-6d0e280.e-con{--align-self:flex-end;}.elementor-28 .elementor-element.elementor-element-2d01bfc.elementor-element{--align-self:center;}.elementor-28 .elementor-element.elementor-element-2d01bfc{text-align:center;}.elementor-28 .elementor-element.elementor-element-2d01bfc img{width:70px;}.elementor-28 .elementor-element.elementor-element-e60ed30{text-align:end;}.elementor-28 .elementor-element.elementor-element-6dd4c68{--e-n-carousel-swiper-slides-to-display:1;}.elementor-28 .elementor-element.elementor-element-9bd49f9{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-28 .elementor-element.elementor-element-9bd49f9 .elementor-heading-title{font-size:42px;line-height:115%;}}/* Start custom CSS for container, class: .elementor-element-1e140f7 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur principal */
.logo-swap {
    /* Ajuster entre 0.8 et 1 si le logo hover paraît plus grand */
    --logo-hover-scale: 0.9;

    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}


/* Conteneurs des deux logos */
.logo-swap .logo-normal,
.logo-swap .logo-hover {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;
}


/* Logo normal */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;

    opacity: 1;
    visibility: visible;
}


/* Logo affiché au survol */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;
    z-index: 2;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* Images */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;

    width: 100%;
    max-width: 100%;

    height: auto;
    max-height: 100%;

    object-fit: contain;
    object-position: center;

    transition: transform 0.3s ease;
}


/* Réduit légèrement le logo hover pour égaliser sa taille visuelle */
.logo-swap .logo-hover img {
    transform: scale(var(--logo-hover-scale));
}


/* Masque le logo normal au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche le logo hover */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur les appareils sans véritable hover */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}


/* Réduction des animations si demandée par l’utilisateur */
@media (prefers-reduced-motion: reduce) {
    .logo-swap .logo-normal,
    .logo-swap .logo-hover,
    .logo-swap .logo-normal img,
    .logo-swap .logo-hover img {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ef49459 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6815e1b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-37a58de *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8c65c8b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23c61dd *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f99f41e *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4481cfe *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1e140f7 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur principal */
.logo-swap {
    /* Ajuster entre 0.8 et 1 si le logo hover paraît plus grand */
    --logo-hover-scale: 0.9;

    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}


/* Conteneurs des deux logos */
.logo-swap .logo-normal,
.logo-swap .logo-hover {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;
}


/* Logo normal */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;

    opacity: 1;
    visibility: visible;
}


/* Logo affiché au survol */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;
    z-index: 2;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* Images */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;

    width: 100%;
    max-width: 100%;

    height: auto;
    max-height: 100%;

    object-fit: contain;
    object-position: center;

    transition: transform 0.3s ease;
}


/* Réduit légèrement le logo hover pour égaliser sa taille visuelle */
.logo-swap .logo-hover img {
    transform: scale(var(--logo-hover-scale));
}


/* Masque le logo normal au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche le logo hover */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur les appareils sans véritable hover */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}


/* Réduction des animations si demandée par l’utilisateur */
@media (prefers-reduced-motion: reduce) {
    .logo-swap .logo-normal,
    .logo-swap .logo-hover,
    .logo-swap .logo-normal img,
    .logo-swap .logo-hover img {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ef49459 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6815e1b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-37a58de *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8c65c8b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23c61dd *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f99f41e *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4481cfe *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1e140f7 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur principal */
.logo-swap {
    /* Ajuster entre 0.8 et 1 si le logo hover paraît plus grand */
    --logo-hover-scale: 0.9;

    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}


/* Conteneurs des deux logos */
.logo-swap .logo-normal,
.logo-swap .logo-hover {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;
}


/* Logo normal */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;

    opacity: 1;
    visibility: visible;
}


/* Logo affiché au survol */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;
    z-index: 2;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* Images */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;

    width: 100%;
    max-width: 100%;

    height: auto;
    max-height: 100%;

    object-fit: contain;
    object-position: center;

    transition: transform 0.3s ease;
}


/* Réduit légèrement le logo hover pour égaliser sa taille visuelle */
.logo-swap .logo-hover img {
    transform: scale(var(--logo-hover-scale));
}


/* Masque le logo normal au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche le logo hover */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur les appareils sans véritable hover */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}


/* Réduction des animations si demandée par l’utilisateur */
@media (prefers-reduced-motion: reduce) {
    .logo-swap .logo-normal,
    .logo-swap .logo-hover,
    .logo-swap .logo-normal img,
    .logo-swap .logo-hover img {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ef49459 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6815e1b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-37a58de *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8c65c8b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23c61dd *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f99f41e *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4481cfe *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1e140f7 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur principal */
.logo-swap {
    /* Ajuster entre 0.8 et 1 si le logo hover paraît plus grand */
    --logo-hover-scale: 0.9;

    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}


/* Conteneurs des deux logos */
.logo-swap .logo-normal,
.logo-swap .logo-hover {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;
}


/* Logo normal */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;

    opacity: 1;
    visibility: visible;
}


/* Logo affiché au survol */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;
    z-index: 2;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* Images */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;

    width: 100%;
    max-width: 100%;

    height: auto;
    max-height: 100%;

    object-fit: contain;
    object-position: center;

    transition: transform 0.3s ease;
}


/* Réduit légèrement le logo hover pour égaliser sa taille visuelle */
.logo-swap .logo-hover img {
    transform: scale(var(--logo-hover-scale));
}


/* Masque le logo normal au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche le logo hover */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur les appareils sans véritable hover */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}


/* Réduction des animations si demandée par l’utilisateur */
@media (prefers-reduced-motion: reduce) {
    .logo-swap .logo-normal,
    .logo-swap .logo-hover,
    .logo-swap .logo-normal img,
    .logo-swap .logo-hover img {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ef49459 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6815e1b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-37a58de *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8c65c8b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23c61dd *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f99f41e *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4481cfe *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1e140f7 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur principal */
.logo-swap {
    /* Ajuster entre 0.8 et 1 si le logo hover paraît plus grand */
    --logo-hover-scale: 0.9;

    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}


/* Conteneurs des deux logos */
.logo-swap .logo-normal,
.logo-swap .logo-hover {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;
}


/* Logo normal */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;

    opacity: 1;
    visibility: visible;
}


/* Logo affiché au survol */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;
    z-index: 2;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* Images */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;

    width: 100%;
    max-width: 100%;

    height: auto;
    max-height: 100%;

    object-fit: contain;
    object-position: center;

    transition: transform 0.3s ease;
}


/* Réduit légèrement le logo hover pour égaliser sa taille visuelle */
.logo-swap .logo-hover img {
    transform: scale(var(--logo-hover-scale));
}


/* Masque le logo normal au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche le logo hover */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur les appareils sans véritable hover */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}


/* Réduction des animations si demandée par l’utilisateur */
@media (prefers-reduced-motion: reduce) {
    .logo-swap .logo-normal,
    .logo-swap .logo-hover,
    .logo-swap .logo-normal img,
    .logo-swap .logo-hover img {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ef49459 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6815e1b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-37a58de *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8c65c8b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23c61dd *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f99f41e *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4481cfe *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1e140f7 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur principal */
.logo-swap {
    /* Ajuster entre 0.8 et 1 si le logo hover paraît plus grand */
    --logo-hover-scale: 0.9;

    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}


/* Conteneurs des deux logos */
.logo-swap .logo-normal,
.logo-swap .logo-hover {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;
}


/* Logo normal */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;

    opacity: 1;
    visibility: visible;
}


/* Logo affiché au survol */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;
    z-index: 2;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* Images */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;

    width: 100%;
    max-width: 100%;

    height: auto;
    max-height: 100%;

    object-fit: contain;
    object-position: center;

    transition: transform 0.3s ease;
}


/* Réduit légèrement le logo hover pour égaliser sa taille visuelle */
.logo-swap .logo-hover img {
    transform: scale(var(--logo-hover-scale));
}


/* Masque le logo normal au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche le logo hover */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur les appareils sans véritable hover */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}


/* Réduction des animations si demandée par l’utilisateur */
@media (prefers-reduced-motion: reduce) {
    .logo-swap .logo-normal,
    .logo-swap .logo-hover,
    .logo-swap .logo-normal img,
    .logo-swap .logo-hover img {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ef49459 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6815e1b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-37a58de *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8c65c8b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23c61dd *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f99f41e *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4481cfe *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1e140f7 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur principal */
.logo-swap {
    /* Ajuster entre 0.8 et 1 si le logo hover paraît plus grand */
    --logo-hover-scale: 0.9;

    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}


/* Conteneurs des deux logos */
.logo-swap .logo-normal,
.logo-swap .logo-hover {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;
}


/* Logo normal */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;

    opacity: 1;
    visibility: visible;
}


/* Logo affiché au survol */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;
    z-index: 2;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* Images */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;

    width: 100%;
    max-width: 100%;

    height: auto;
    max-height: 100%;

    object-fit: contain;
    object-position: center;

    transition: transform 0.3s ease;
}


/* Réduit légèrement le logo hover pour égaliser sa taille visuelle */
.logo-swap .logo-hover img {
    transform: scale(var(--logo-hover-scale));
}


/* Masque le logo normal au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche le logo hover */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur les appareils sans véritable hover */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}


/* Réduction des animations si demandée par l’utilisateur */
@media (prefers-reduced-motion: reduce) {
    .logo-swap .logo-normal,
    .logo-swap .logo-hover,
    .logo-swap .logo-normal img,
    .logo-swap .logo-hover img {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ef49459 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6815e1b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-37a58de *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8c65c8b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23c61dd *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f99f41e *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4481cfe *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1e140f7 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur principal */
.logo-swap {
    /* Ajuster entre 0.8 et 1 si le logo hover paraît plus grand */
    --logo-hover-scale: 0.9;

    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}


/* Conteneurs des deux logos */
.logo-swap .logo-normal,
.logo-swap .logo-hover {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;
}


/* Logo normal */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;

    opacity: 1;
    visibility: visible;
}


/* Logo affiché au survol */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;
    z-index: 2;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* Images */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;

    width: 100%;
    max-width: 100%;

    height: auto;
    max-height: 100%;

    object-fit: contain;
    object-position: center;

    transition: transform 0.3s ease;
}


/* Réduit légèrement le logo hover pour égaliser sa taille visuelle */
.logo-swap .logo-hover img {
    transform: scale(var(--logo-hover-scale));
}


/* Masque le logo normal au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche le logo hover */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur les appareils sans véritable hover */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}


/* Réduction des animations si demandée par l’utilisateur */
@media (prefers-reduced-motion: reduce) {
    .logo-swap .logo-normal,
    .logo-swap .logo-hover,
    .logo-swap .logo-normal img,
    .logo-swap .logo-hover img {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ef49459 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6815e1b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-37a58de *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8c65c8b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23c61dd *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f99f41e *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4481cfe *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1e140f7 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur principal */
.logo-swap {
    /* Ajuster entre 0.8 et 1 si le logo hover paraît plus grand */
    --logo-hover-scale: 0.9;

    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}


/* Conteneurs des deux logos */
.logo-swap .logo-normal,
.logo-swap .logo-hover {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;
}


/* Logo normal */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;

    opacity: 1;
    visibility: visible;
}


/* Logo affiché au survol */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;
    z-index: 2;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}


/* Images */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;

    width: 100%;
    max-width: 100%;

    height: auto;
    max-height: 100%;

    object-fit: contain;
    object-position: center;

    transition: transform 0.3s ease;
}


/* Réduit légèrement le logo hover pour égaliser sa taille visuelle */
.logo-swap .logo-hover img {
    transform: scale(var(--logo-hover-scale));
}


/* Masque le logo normal au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche le logo hover */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur les appareils sans véritable hover */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}


/* Réduction des animations si demandée par l’utilisateur */
@media (prefers-reduced-motion: reduce) {
    .logo-swap .logo-normal,
    .logo-swap .logo-hover,
    .logo-swap .logo-normal img,
    .logo-swap .logo-hover img {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ef49459 *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6815e1b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-37a58de *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8c65c8b *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23c61dd *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f99f41e *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4481cfe *//* =================================
   CHANGEMENT DE LOGO AU SURVOL
================================= */

/* Conteneur contenant les deux images */
.logo-swap {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* Image normale */
.logo-swap .logo-normal {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Image affichée au hover */
.logo-swap .logo-hover {
    position: absolute !important;
    inset: 0;

    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;
}


/* Empêche les images de se déformer */
.logo-swap .logo-normal img,
.logo-swap .logo-hover img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}


/* Masque l’image normale au survol */
.logo-swap:hover .logo-normal {
    opacity: 0;
    visibility: hidden;
}


/* Affiche la deuxième image au survol */
.logo-swap:hover .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Accessibilité clavier */
.logo-swap:focus-within .logo-normal {
    opacity: 0;
    visibility: hidden;
}

.logo-swap:focus-within .logo-hover {
    opacity: 1;
    visibility: visible;
}


/* Sur mobile, conserve l’image normale */
@media (hover: none) {
    .logo-swap .logo-normal {
        opacity: 1;
        visibility: visible;
    }

    .logo-swap .logo-hover {
        opacity: 0;
        visibility: hidden;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e382ac *//* ==================================================
   CARTE STATISTIQUE — CONFIGURATION GÉNÉRALE
================================================== */

.stat-card {
  --stat-color-default: #393624c9;
  --stat-hover-start: #e2e0d4;
  --stat-hover-end: #e2e0d44d;

  --stat-gradient: linear-gradient(
    90deg,
    var(--stat-color-default) 0%,
    var(--stat-color-default) 50%,
    var(--stat-hover-start) 50%,
    var(--stat-hover-end) 100%
  );

  --stat-background-position: 0%;

  position: relative;

  transition:
    transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}


/* ==================================================
   SURVOL ET FOCUS
================================================== */

.stat-card:hover,
.stat-card:focus-within {
  --stat-background-position: 100%;
}

.stat-card:hover {
  transform: translateY(-4px);
}


/* ==================================================
   DÉGRADÉ UNIQUE SUR TOUT LE COMPTEUR
================================================== */

/*
 * Le dégradé est appliqué uniquement ici.
 *
 * Il couvre :
 * - le nombre ;
 * - le préfixe ;
 * - le suffixe ;
 * - le sous-suffixe m² ;
 * - le titre.
 */

.stat-card .elementor-counter {
  color: transparent !important;

  background-image: var(--stat-gradient) !important;
  background-size: 200% 100% !important;
  background-position:
    var(--stat-background-position) 50% !important;
  background-repeat: no-repeat !important;

  -webkit-background-clip: text !important;
  background-clip: text !important;

  -webkit-text-fill-color: transparent !important;

  text-align: center !important;

  overflow: visible !important;

  transition:
    background-position 0.65s
    cubic-bezier(0.4, 0, 0.2, 1) !important;
}


/* ==================================================
   ÉLÉMENTS INTERNES
================================================== */

/*
 * Les enfants héritent de la transparence du parent.
 * Aucun enfant ne possède son propre dégradé.
 */

.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title,
.stat-card .elementor-counter-number-suffix::after {
  color: inherit !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  -webkit-text-fill-color: inherit !important;

  transition: none !important;
}


/* ==================================================
   WRAPPER DU NOMBRE
================================================== */

/*
 * Important :
 * ne pas utiliser display:flex ici.
 *
 * inline-block permet au dégradé du parent de couvrir
 * le nombre, le suffixe et le pseudo-élément m².
 */

.stat-card .elementor-counter-number-wrapper {
  display: inline-block !important;

  width: auto !important;
  max-width: 100% !important;

  margin: 0 auto !important;
  padding: 0 !important;

  text-align: center !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
}


/* Les éléments restent côte à côte */

.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix {
  display: inline-block !important;

  width: auto !important;

  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;

  position: static !important;

  transform: none !important;

  vertical-align: baseline;

  white-space: nowrap !important;
  overflow: visible !important;
}


/* Masque uniquement le préfixe vide */

.stat-card .elementor-counter-number-prefix:empty {
  display: none !important;
}


/* ==================================================
   TITRE SOUS LE COMPTEUR
================================================== */

.stat-card .elementor-counter-title {
  display: block !important;

  width: 100% !important;

  text-align: center !important;

  overflow: visible !important;
}


/* ==================================================
   SUFFIXE CLASSIQUE
   Exemple : 15 Ans
================================================== */

.stat-card .elementor-counter-number-suffix {
  font-size: 0.35em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin-left: 0em !important;

  /*
   * vertical-align remplace position/top.
   * Le suffixe reste inclus dans le dégradé du parent.
   */
  vertical-align: 0.55em !important;

  position: static !important;
  top: auto !important;
}


/* ==================================================
   COMPTEUR SPÉCIAL : 80k m²
================================================== */

/*
 * Configuration Elementor :
 *
 * Nombre  : 80
 * Suffixe : k
 * Classe  : stat-card suffix-k-m2
 */

.stat-card.suffix-k-m2
  .elementor-counter-number-suffix,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix {
  display: inline-block !important;

  font-size: 1em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin: 0 !important;
  padding: 0 !important;

  position: static !important;
  top: auto !important;

  vertical-align: baseline !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-image: none !important;
}


/* ==================================================
   AJOUT DE m²
================================================== */

.stat-card.suffix-k-m2
  .elementor-counter-number-suffix::after,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix::after {
  content: "m²" !important;

  display: inline-block !important;

  margin-left: 0em !important;
  padding: 0 !important;

  font-size: 0.32em !important;
  font-weight: 400 !important;
  line-height: 1 !important;

  /*
   * Important :
   * ne pas utiliser position: relative ni top.
   * vertical-align garde m² dans la zone du dégradé.
   */
  position: static !important;
  top: auto !important;

  vertical-align: super !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  transition: none !important;
}


/* ==================================================
   SUFFIXE « Ans »
================================================== */

/*
 * Configuration Elementor :
 *
 * Suffixe : Ans
 * Classe  : stat-card suffix-ans
 */

.stat-card.suffix-ans
  .elementor-counter-number-suffix,
.stat-card
  .suffix-ans
  .elementor-counter-number-suffix {
  display: inline-block !important;

  font-size: 0.35em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin-left: 0em !important;
  padding: 0 !important;

  position: static !important;
  top: auto !important;

  vertical-align: 0.55em !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-image: none !important;
}


/* ==================================================
   ACCESSIBILITÉ
================================================== */

@media (prefers-reduced-motion: reduce) {
  .stat-card,
  .stat-card .elementor-counter {
    transition: none !important;
  }

  .stat-card:hover {
    transform: none !important;
  }
}

/* ==================================================
   AJUSTEMENTS D’ESPACEMENT
================================================== */

/* Rapproche le préfixe du nombre : +300 */
.stat-card .elementor-counter-number-prefix {
  margin-right: -0em !important;
}

/* Rapproche les suffixes classiques du nombre */
.stat-card .elementor-counter-number-suffix {
  margin-left: 0em !important;
}


/* ==================================================
   AJUSTEMENTS FINAUX DES SUFFIXES
================================================== */

/* m² : plus proche du k et nettement plus bas */
.stat-card.suffix-k-m2
  .elementor-counter-number-suffix::after,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix::after {
  margin-left: 0.08em !important;
  vertical-align: -0em !important;
}


/* Ans : plus proche du nombre et légèrement plus bas */
.stat-card.suffix-ans
  .elementor-counter-number-suffix,
.stat-card
  .suffix-ans
  .elementor-counter-number-suffix {
  margin-left: 0em !important;
  vertical-align: 0.25em !important;
}/* End custom CSS */
/* Start custom CSS for counter, class: .elementor-element-e830c92 */.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
              transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.stat-card:hover {
  transform: translateY(-4px);
}

.stat-card,
.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title {
  color: #3A3529;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card:hover .elementor-counter-number,
.stat-card:hover .elementor-counter-number-prefix,
.stat-card:hover .elementor-counter-number-suffix,
.stat-card:hover .elementor-counter-title {
  color: #E5E3DA;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0cd7d98 */.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
              transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.stat-card:hover {
  transform: translateY(-4px);
}

.stat-card,
.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title {
  color: #3A3529;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card:hover .elementor-counter-number,
.stat-card:hover .elementor-counter-number-prefix,
.stat-card:hover .elementor-counter-number-suffix,
.stat-card:hover .elementor-counter-title {
  color: #E5E3DA;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e382ac *//* ==================================================
   CARTE STATISTIQUE — CONFIGURATION GÉNÉRALE
================================================== */

.stat-card {
  --stat-color-default: #393624c9;
  --stat-hover-start: #e2e0d4;
  --stat-hover-end: #e2e0d44d;

  --stat-gradient: linear-gradient(
    90deg,
    var(--stat-color-default) 0%,
    var(--stat-color-default) 50%,
    var(--stat-hover-start) 50%,
    var(--stat-hover-end) 100%
  );

  --stat-background-position: 0%;

  position: relative;

  transition:
    transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}


/* ==================================================
   SURVOL ET FOCUS
================================================== */

.stat-card:hover,
.stat-card:focus-within {
  --stat-background-position: 100%;
}

.stat-card:hover {
  transform: translateY(-4px);
}


/* ==================================================
   DÉGRADÉ UNIQUE SUR TOUT LE COMPTEUR
================================================== */

/*
 * Le dégradé est appliqué uniquement ici.
 *
 * Il couvre :
 * - le nombre ;
 * - le préfixe ;
 * - le suffixe ;
 * - le sous-suffixe m² ;
 * - le titre.
 */

.stat-card .elementor-counter {
  color: transparent !important;

  background-image: var(--stat-gradient) !important;
  background-size: 200% 100% !important;
  background-position:
    var(--stat-background-position) 50% !important;
  background-repeat: no-repeat !important;

  -webkit-background-clip: text !important;
  background-clip: text !important;

  -webkit-text-fill-color: transparent !important;

  text-align: center !important;

  overflow: visible !important;

  transition:
    background-position 0.65s
    cubic-bezier(0.4, 0, 0.2, 1) !important;
}


/* ==================================================
   ÉLÉMENTS INTERNES
================================================== */

/*
 * Les enfants héritent de la transparence du parent.
 * Aucun enfant ne possède son propre dégradé.
 */

.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title,
.stat-card .elementor-counter-number-suffix::after {
  color: inherit !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  -webkit-text-fill-color: inherit !important;

  transition: none !important;
}


/* ==================================================
   WRAPPER DU NOMBRE
================================================== */

/*
 * Important :
 * ne pas utiliser display:flex ici.
 *
 * inline-block permet au dégradé du parent de couvrir
 * le nombre, le suffixe et le pseudo-élément m².
 */

.stat-card .elementor-counter-number-wrapper {
  display: inline-block !important;

  width: auto !important;
  max-width: 100% !important;

  margin: 0 auto !important;
  padding: 0 !important;

  text-align: center !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
}


/* Les éléments restent côte à côte */

.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix {
  display: inline-block !important;

  width: auto !important;

  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;

  position: static !important;

  transform: none !important;

  vertical-align: baseline;

  white-space: nowrap !important;
  overflow: visible !important;
}


/* Masque uniquement le préfixe vide */

.stat-card .elementor-counter-number-prefix:empty {
  display: none !important;
}


/* ==================================================
   TITRE SOUS LE COMPTEUR
================================================== */

.stat-card .elementor-counter-title {
  display: block !important;

  width: 100% !important;

  text-align: center !important;

  overflow: visible !important;
}


/* ==================================================
   SUFFIXE CLASSIQUE
   Exemple : 15 Ans
================================================== */

.stat-card .elementor-counter-number-suffix {
  font-size: 0.35em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin-left: 0em !important;

  /*
   * vertical-align remplace position/top.
   * Le suffixe reste inclus dans le dégradé du parent.
   */
  vertical-align: 0.55em !important;

  position: static !important;
  top: auto !important;
}


/* ==================================================
   COMPTEUR SPÉCIAL : 80k m²
================================================== */

/*
 * Configuration Elementor :
 *
 * Nombre  : 80
 * Suffixe : k
 * Classe  : stat-card suffix-k-m2
 */

.stat-card.suffix-k-m2
  .elementor-counter-number-suffix,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix {
  display: inline-block !important;

  font-size: 1em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin: 0 !important;
  padding: 0 !important;

  position: static !important;
  top: auto !important;

  vertical-align: baseline !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-image: none !important;
}


/* ==================================================
   AJOUT DE m²
================================================== */

.stat-card.suffix-k-m2
  .elementor-counter-number-suffix::after,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix::after {
  content: "m²" !important;

  display: inline-block !important;

  margin-left: 0em !important;
  padding: 0 !important;

  font-size: 0.32em !important;
  font-weight: 400 !important;
  line-height: 1 !important;

  /*
   * Important :
   * ne pas utiliser position: relative ni top.
   * vertical-align garde m² dans la zone du dégradé.
   */
  position: static !important;
  top: auto !important;

  vertical-align: super !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  transition: none !important;
}


/* ==================================================
   SUFFIXE « Ans »
================================================== */

/*
 * Configuration Elementor :
 *
 * Suffixe : Ans
 * Classe  : stat-card suffix-ans
 */

.stat-card.suffix-ans
  .elementor-counter-number-suffix,
.stat-card
  .suffix-ans
  .elementor-counter-number-suffix {
  display: inline-block !important;

  font-size: 0.35em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin-left: 0em !important;
  padding: 0 !important;

  position: static !important;
  top: auto !important;

  vertical-align: 0.55em !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-image: none !important;
}


/* ==================================================
   ACCESSIBILITÉ
================================================== */

@media (prefers-reduced-motion: reduce) {
  .stat-card,
  .stat-card .elementor-counter {
    transition: none !important;
  }

  .stat-card:hover {
    transform: none !important;
  }
}

/* ==================================================
   AJUSTEMENTS D’ESPACEMENT
================================================== */

/* Rapproche le préfixe du nombre : +300 */
.stat-card .elementor-counter-number-prefix {
  margin-right: -0em !important;
}

/* Rapproche les suffixes classiques du nombre */
.stat-card .elementor-counter-number-suffix {
  margin-left: 0em !important;
}


/* ==================================================
   AJUSTEMENTS FINAUX DES SUFFIXES
================================================== */

/* m² : plus proche du k et nettement plus bas */
.stat-card.suffix-k-m2
  .elementor-counter-number-suffix::after,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix::after {
  margin-left: 0.08em !important;
  vertical-align: -0em !important;
}


/* Ans : plus proche du nombre et légèrement plus bas */
.stat-card.suffix-ans
  .elementor-counter-number-suffix,
.stat-card
  .suffix-ans
  .elementor-counter-number-suffix {
  margin-left: 0em !important;
  vertical-align: 0.25em !important;
}/* End custom CSS */
/* Start custom CSS for counter, class: .elementor-element-e830c92 */.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
              transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.stat-card:hover {
  transform: translateY(-4px);
}

.stat-card,
.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title {
  color: #3A3529;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card:hover .elementor-counter-number,
.stat-card:hover .elementor-counter-number-prefix,
.stat-card:hover .elementor-counter-number-suffix,
.stat-card:hover .elementor-counter-title {
  color: #E5E3DA;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0cd7d98 */.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
              transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.stat-card:hover {
  transform: translateY(-4px);
}

.stat-card,
.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title {
  color: #3A3529;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card:hover .elementor-counter-number,
.stat-card:hover .elementor-counter-number-prefix,
.stat-card:hover .elementor-counter-number-suffix,
.stat-card:hover .elementor-counter-title {
  color: #E5E3DA;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e382ac *//* ==================================================
   CARTE STATISTIQUE — CONFIGURATION GÉNÉRALE
================================================== */

.stat-card {
  --stat-color-default: #393624c9;
  --stat-hover-start: #e2e0d4;
  --stat-hover-end: #e2e0d44d;

  --stat-gradient: linear-gradient(
    90deg,
    var(--stat-color-default) 0%,
    var(--stat-color-default) 50%,
    var(--stat-hover-start) 50%,
    var(--stat-hover-end) 100%
  );

  --stat-background-position: 0%;

  position: relative;

  transition:
    transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}


/* ==================================================
   SURVOL ET FOCUS
================================================== */

.stat-card:hover,
.stat-card:focus-within {
  --stat-background-position: 100%;
}

.stat-card:hover {
  transform: translateY(-4px);
}


/* ==================================================
   DÉGRADÉ UNIQUE SUR TOUT LE COMPTEUR
================================================== */

/*
 * Le dégradé est appliqué uniquement ici.
 *
 * Il couvre :
 * - le nombre ;
 * - le préfixe ;
 * - le suffixe ;
 * - le sous-suffixe m² ;
 * - le titre.
 */

.stat-card .elementor-counter {
  color: transparent !important;

  background-image: var(--stat-gradient) !important;
  background-size: 200% 100% !important;
  background-position:
    var(--stat-background-position) 50% !important;
  background-repeat: no-repeat !important;

  -webkit-background-clip: text !important;
  background-clip: text !important;

  -webkit-text-fill-color: transparent !important;

  text-align: center !important;

  overflow: visible !important;

  transition:
    background-position 0.65s
    cubic-bezier(0.4, 0, 0.2, 1) !important;
}


/* ==================================================
   ÉLÉMENTS INTERNES
================================================== */

/*
 * Les enfants héritent de la transparence du parent.
 * Aucun enfant ne possède son propre dégradé.
 */

.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title,
.stat-card .elementor-counter-number-suffix::after {
  color: inherit !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  -webkit-text-fill-color: inherit !important;

  transition: none !important;
}


/* ==================================================
   WRAPPER DU NOMBRE
================================================== */

/*
 * Important :
 * ne pas utiliser display:flex ici.
 *
 * inline-block permet au dégradé du parent de couvrir
 * le nombre, le suffixe et le pseudo-élément m².
 */

.stat-card .elementor-counter-number-wrapper {
  display: inline-block !important;

  width: auto !important;
  max-width: 100% !important;

  margin: 0 auto !important;
  padding: 0 !important;

  text-align: center !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
}


/* Les éléments restent côte à côte */

.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix {
  display: inline-block !important;

  width: auto !important;

  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;

  position: static !important;

  transform: none !important;

  vertical-align: baseline;

  white-space: nowrap !important;
  overflow: visible !important;
}


/* Masque uniquement le préfixe vide */

.stat-card .elementor-counter-number-prefix:empty {
  display: none !important;
}


/* ==================================================
   TITRE SOUS LE COMPTEUR
================================================== */

.stat-card .elementor-counter-title {
  display: block !important;

  width: 100% !important;

  text-align: center !important;

  overflow: visible !important;
}


/* ==================================================
   SUFFIXE CLASSIQUE
   Exemple : 15 Ans
================================================== */

.stat-card .elementor-counter-number-suffix {
  font-size: 0.35em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin-left: 0em !important;

  /*
   * vertical-align remplace position/top.
   * Le suffixe reste inclus dans le dégradé du parent.
   */
  vertical-align: 0.55em !important;

  position: static !important;
  top: auto !important;
}


/* ==================================================
   COMPTEUR SPÉCIAL : 80k m²
================================================== */

/*
 * Configuration Elementor :
 *
 * Nombre  : 80
 * Suffixe : k
 * Classe  : stat-card suffix-k-m2
 */

.stat-card.suffix-k-m2
  .elementor-counter-number-suffix,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix {
  display: inline-block !important;

  font-size: 1em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin: 0 !important;
  padding: 0 !important;

  position: static !important;
  top: auto !important;

  vertical-align: baseline !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-image: none !important;
}


/* ==================================================
   AJOUT DE m²
================================================== */

.stat-card.suffix-k-m2
  .elementor-counter-number-suffix::after,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix::after {
  content: "m²" !important;

  display: inline-block !important;

  margin-left: 0em !important;
  padding: 0 !important;

  font-size: 0.32em !important;
  font-weight: 400 !important;
  line-height: 1 !important;

  /*
   * Important :
   * ne pas utiliser position: relative ni top.
   * vertical-align garde m² dans la zone du dégradé.
   */
  position: static !important;
  top: auto !important;

  vertical-align: super !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  transition: none !important;
}


/* ==================================================
   SUFFIXE « Ans »
================================================== */

/*
 * Configuration Elementor :
 *
 * Suffixe : Ans
 * Classe  : stat-card suffix-ans
 */

.stat-card.suffix-ans
  .elementor-counter-number-suffix,
.stat-card
  .suffix-ans
  .elementor-counter-number-suffix {
  display: inline-block !important;

  font-size: 0.35em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin-left: 0em !important;
  padding: 0 !important;

  position: static !important;
  top: auto !important;

  vertical-align: 0.55em !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-image: none !important;
}


/* ==================================================
   ACCESSIBILITÉ
================================================== */

@media (prefers-reduced-motion: reduce) {
  .stat-card,
  .stat-card .elementor-counter {
    transition: none !important;
  }

  .stat-card:hover {
    transform: none !important;
  }
}

/* ==================================================
   AJUSTEMENTS D’ESPACEMENT
================================================== */

/* Rapproche le préfixe du nombre : +300 */
.stat-card .elementor-counter-number-prefix {
  margin-right: -0em !important;
}

/* Rapproche les suffixes classiques du nombre */
.stat-card .elementor-counter-number-suffix {
  margin-left: 0em !important;
}


/* ==================================================
   AJUSTEMENTS FINAUX DES SUFFIXES
================================================== */

/* m² : plus proche du k et nettement plus bas */
.stat-card.suffix-k-m2
  .elementor-counter-number-suffix::after,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix::after {
  margin-left: 0.08em !important;
  vertical-align: -0em !important;
}


/* Ans : plus proche du nombre et légèrement plus bas */
.stat-card.suffix-ans
  .elementor-counter-number-suffix,
.stat-card
  .suffix-ans
  .elementor-counter-number-suffix {
  margin-left: 0em !important;
  vertical-align: 0.25em !important;
}/* End custom CSS */
/* Start custom CSS for counter, class: .elementor-element-e830c92 */.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
              transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.stat-card:hover {
  transform: translateY(-4px);
}

.stat-card,
.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title {
  color: #3A3529;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card:hover .elementor-counter-number,
.stat-card:hover .elementor-counter-number-prefix,
.stat-card:hover .elementor-counter-number-suffix,
.stat-card:hover .elementor-counter-title {
  color: #E5E3DA;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0cd7d98 */.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
              transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.stat-card:hover {
  transform: translateY(-4px);
}

.stat-card,
.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title {
  color: #3A3529;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card:hover .elementor-counter-number,
.stat-card:hover .elementor-counter-number-prefix,
.stat-card:hover .elementor-counter-number-suffix,
.stat-card:hover .elementor-counter-title {
  color: #E5E3DA;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e382ac *//* ==================================================
   CARTE STATISTIQUE — CONFIGURATION GÉNÉRALE
================================================== */

.stat-card {
  --stat-color-default: #393624c9;
  --stat-hover-start: #e2e0d4;
  --stat-hover-end: #e2e0d44d;

  --stat-gradient: linear-gradient(
    90deg,
    var(--stat-color-default) 0%,
    var(--stat-color-default) 50%,
    var(--stat-hover-start) 50%,
    var(--stat-hover-end) 100%
  );

  --stat-background-position: 0%;

  position: relative;

  transition:
    transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}


/* ==================================================
   SURVOL ET FOCUS
================================================== */

.stat-card:hover,
.stat-card:focus-within {
  --stat-background-position: 100%;
}

.stat-card:hover {
  transform: translateY(-4px);
}


/* ==================================================
   DÉGRADÉ UNIQUE SUR TOUT LE COMPTEUR
================================================== */

/*
 * Le dégradé est appliqué uniquement ici.
 *
 * Il couvre :
 * - le nombre ;
 * - le préfixe ;
 * - le suffixe ;
 * - le sous-suffixe m² ;
 * - le titre.
 */

.stat-card .elementor-counter {
  color: transparent !important;

  background-image: var(--stat-gradient) !important;
  background-size: 200% 100% !important;
  background-position:
    var(--stat-background-position) 50% !important;
  background-repeat: no-repeat !important;

  -webkit-background-clip: text !important;
  background-clip: text !important;

  -webkit-text-fill-color: transparent !important;

  text-align: center !important;

  overflow: visible !important;

  transition:
    background-position 0.65s
    cubic-bezier(0.4, 0, 0.2, 1) !important;
}


/* ==================================================
   ÉLÉMENTS INTERNES
================================================== */

/*
 * Les enfants héritent de la transparence du parent.
 * Aucun enfant ne possède son propre dégradé.
 */

.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title,
.stat-card .elementor-counter-number-suffix::after {
  color: inherit !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  -webkit-text-fill-color: inherit !important;

  transition: none !important;
}


/* ==================================================
   WRAPPER DU NOMBRE
================================================== */

/*
 * Important :
 * ne pas utiliser display:flex ici.
 *
 * inline-block permet au dégradé du parent de couvrir
 * le nombre, le suffixe et le pseudo-élément m².
 */

.stat-card .elementor-counter-number-wrapper {
  display: inline-block !important;

  width: auto !important;
  max-width: 100% !important;

  margin: 0 auto !important;
  padding: 0 !important;

  text-align: center !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
}


/* Les éléments restent côte à côte */

.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix {
  display: inline-block !important;

  width: auto !important;

  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;

  position: static !important;

  transform: none !important;

  vertical-align: baseline;

  white-space: nowrap !important;
  overflow: visible !important;
}


/* Masque uniquement le préfixe vide */

.stat-card .elementor-counter-number-prefix:empty {
  display: none !important;
}


/* ==================================================
   TITRE SOUS LE COMPTEUR
================================================== */

.stat-card .elementor-counter-title {
  display: block !important;

  width: 100% !important;

  text-align: center !important;

  overflow: visible !important;
}


/* ==================================================
   SUFFIXE CLASSIQUE
   Exemple : 15 Ans
================================================== */

.stat-card .elementor-counter-number-suffix {
  font-size: 0.35em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin-left: 0em !important;

  /*
   * vertical-align remplace position/top.
   * Le suffixe reste inclus dans le dégradé du parent.
   */
  vertical-align: 0.55em !important;

  position: static !important;
  top: auto !important;
}


/* ==================================================
   COMPTEUR SPÉCIAL : 80k m²
================================================== */

/*
 * Configuration Elementor :
 *
 * Nombre  : 80
 * Suffixe : k
 * Classe  : stat-card suffix-k-m2
 */

.stat-card.suffix-k-m2
  .elementor-counter-number-suffix,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix {
  display: inline-block !important;

  font-size: 1em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin: 0 !important;
  padding: 0 !important;

  position: static !important;
  top: auto !important;

  vertical-align: baseline !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-image: none !important;
}


/* ==================================================
   AJOUT DE m²
================================================== */

.stat-card.suffix-k-m2
  .elementor-counter-number-suffix::after,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix::after {
  content: "m²" !important;

  display: inline-block !important;

  margin-left: 0em !important;
  padding: 0 !important;

  font-size: 0.32em !important;
  font-weight: 400 !important;
  line-height: 1 !important;

  /*
   * Important :
   * ne pas utiliser position: relative ni top.
   * vertical-align garde m² dans la zone du dégradé.
   */
  position: static !important;
  top: auto !important;

  vertical-align: super !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  transition: none !important;
}


/* ==================================================
   SUFFIXE « Ans »
================================================== */

/*
 * Configuration Elementor :
 *
 * Suffixe : Ans
 * Classe  : stat-card suffix-ans
 */

.stat-card.suffix-ans
  .elementor-counter-number-suffix,
.stat-card
  .suffix-ans
  .elementor-counter-number-suffix {
  display: inline-block !important;

  font-size: 0.35em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin-left: 0em !important;
  padding: 0 !important;

  position: static !important;
  top: auto !important;

  vertical-align: 0.55em !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-image: none !important;
}


/* ==================================================
   ACCESSIBILITÉ
================================================== */

@media (prefers-reduced-motion: reduce) {
  .stat-card,
  .stat-card .elementor-counter {
    transition: none !important;
  }

  .stat-card:hover {
    transform: none !important;
  }
}

/* ==================================================
   AJUSTEMENTS D’ESPACEMENT
================================================== */

/* Rapproche le préfixe du nombre : +300 */
.stat-card .elementor-counter-number-prefix {
  margin-right: -0em !important;
}

/* Rapproche les suffixes classiques du nombre */
.stat-card .elementor-counter-number-suffix {
  margin-left: 0em !important;
}


/* ==================================================
   AJUSTEMENTS FINAUX DES SUFFIXES
================================================== */

/* m² : plus proche du k et nettement plus bas */
.stat-card.suffix-k-m2
  .elementor-counter-number-suffix::after,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix::after {
  margin-left: 0.08em !important;
  vertical-align: -0em !important;
}


/* Ans : plus proche du nombre et légèrement plus bas */
.stat-card.suffix-ans
  .elementor-counter-number-suffix,
.stat-card
  .suffix-ans
  .elementor-counter-number-suffix {
  margin-left: 0em !important;
  vertical-align: 0.25em !important;
}/* End custom CSS */
/* Start custom CSS for counter, class: .elementor-element-e830c92 */.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
              transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.stat-card:hover {
  transform: translateY(-4px);
}

.stat-card,
.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title {
  color: #3A3529;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card:hover .elementor-counter-number,
.stat-card:hover .elementor-counter-number-prefix,
.stat-card:hover .elementor-counter-number-suffix,
.stat-card:hover .elementor-counter-title {
  color: #E5E3DA;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0cd7d98 */.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
              transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.stat-card:hover {
  transform: translateY(-4px);
}

.stat-card,
.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title {
  color: #3A3529;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card:hover .elementor-counter-number,
.stat-card:hover .elementor-counter-number-prefix,
.stat-card:hover .elementor-counter-number-suffix,
.stat-card:hover .elementor-counter-title {
  color: #E5E3DA;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e382ac *//* ==================================================
   CARTE STATISTIQUE — CONFIGURATION GÉNÉRALE
================================================== */

.stat-card {
  --stat-color-default: #393624c9;
  --stat-hover-start: #e2e0d4;
  --stat-hover-end: #e2e0d44d;

  --stat-gradient: linear-gradient(
    90deg,
    var(--stat-color-default) 0%,
    var(--stat-color-default) 50%,
    var(--stat-hover-start) 50%,
    var(--stat-hover-end) 100%
  );

  --stat-background-position: 0%;

  position: relative;

  transition:
    transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}


/* ==================================================
   SURVOL ET FOCUS
================================================== */

.stat-card:hover,
.stat-card:focus-within {
  --stat-background-position: 100%;
}

.stat-card:hover {
  transform: translateY(-4px);
}


/* ==================================================
   DÉGRADÉ UNIQUE SUR TOUT LE COMPTEUR
================================================== */

/*
 * Le dégradé est appliqué uniquement ici.
 *
 * Il couvre :
 * - le nombre ;
 * - le préfixe ;
 * - le suffixe ;
 * - le sous-suffixe m² ;
 * - le titre.
 */

.stat-card .elementor-counter {
  color: transparent !important;

  background-image: var(--stat-gradient) !important;
  background-size: 200% 100% !important;
  background-position:
    var(--stat-background-position) 50% !important;
  background-repeat: no-repeat !important;

  -webkit-background-clip: text !important;
  background-clip: text !important;

  -webkit-text-fill-color: transparent !important;

  text-align: center !important;

  overflow: visible !important;

  transition:
    background-position 0.65s
    cubic-bezier(0.4, 0, 0.2, 1) !important;
}


/* ==================================================
   ÉLÉMENTS INTERNES
================================================== */

/*
 * Les enfants héritent de la transparence du parent.
 * Aucun enfant ne possède son propre dégradé.
 */

.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title,
.stat-card .elementor-counter-number-suffix::after {
  color: inherit !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  -webkit-text-fill-color: inherit !important;

  transition: none !important;
}


/* ==================================================
   WRAPPER DU NOMBRE
================================================== */

/*
 * Important :
 * ne pas utiliser display:flex ici.
 *
 * inline-block permet au dégradé du parent de couvrir
 * le nombre, le suffixe et le pseudo-élément m².
 */

.stat-card .elementor-counter-number-wrapper {
  display: inline-block !important;

  width: auto !important;
  max-width: 100% !important;

  margin: 0 auto !important;
  padding: 0 !important;

  text-align: center !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
}


/* Les éléments restent côte à côte */

.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix {
  display: inline-block !important;

  width: auto !important;

  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;

  position: static !important;

  transform: none !important;

  vertical-align: baseline;

  white-space: nowrap !important;
  overflow: visible !important;
}


/* Masque uniquement le préfixe vide */

.stat-card .elementor-counter-number-prefix:empty {
  display: none !important;
}


/* ==================================================
   TITRE SOUS LE COMPTEUR
================================================== */

.stat-card .elementor-counter-title {
  display: block !important;

  width: 100% !important;

  text-align: center !important;

  overflow: visible !important;
}


/* ==================================================
   SUFFIXE CLASSIQUE
   Exemple : 15 Ans
================================================== */

.stat-card .elementor-counter-number-suffix {
  font-size: 0.35em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin-left: 0em !important;

  /*
   * vertical-align remplace position/top.
   * Le suffixe reste inclus dans le dégradé du parent.
   */
  vertical-align: 0.55em !important;

  position: static !important;
  top: auto !important;
}


/* ==================================================
   COMPTEUR SPÉCIAL : 80k m²
================================================== */

/*
 * Configuration Elementor :
 *
 * Nombre  : 80
 * Suffixe : k
 * Classe  : stat-card suffix-k-m2
 */

.stat-card.suffix-k-m2
  .elementor-counter-number-suffix,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix {
  display: inline-block !important;

  font-size: 1em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin: 0 !important;
  padding: 0 !important;

  position: static !important;
  top: auto !important;

  vertical-align: baseline !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-image: none !important;
}


/* ==================================================
   AJOUT DE m²
================================================== */

.stat-card.suffix-k-m2
  .elementor-counter-number-suffix::after,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix::after {
  content: "m²" !important;

  display: inline-block !important;

  margin-left: 0em !important;
  padding: 0 !important;

  font-size: 0.32em !important;
  font-weight: 400 !important;
  line-height: 1 !important;

  /*
   * Important :
   * ne pas utiliser position: relative ni top.
   * vertical-align garde m² dans la zone du dégradé.
   */
  position: static !important;
  top: auto !important;

  vertical-align: super !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  transition: none !important;
}


/* ==================================================
   SUFFIXE « Ans »
================================================== */

/*
 * Configuration Elementor :
 *
 * Suffixe : Ans
 * Classe  : stat-card suffix-ans
 */

.stat-card.suffix-ans
  .elementor-counter-number-suffix,
.stat-card
  .suffix-ans
  .elementor-counter-number-suffix {
  display: inline-block !important;

  font-size: 0.35em !important;
  font-weight: inherit !important;
  line-height: 1 !important;

  margin-left: 0em !important;
  padding: 0 !important;

  position: static !important;
  top: auto !important;

  vertical-align: 0.55em !important;

  transform: none !important;

  white-space: nowrap !important;
  overflow: visible !important;

  color: inherit !important;
  -webkit-text-fill-color: inherit !important;

  background: none !important;
  background-image: none !important;
}


/* ==================================================
   ACCESSIBILITÉ
================================================== */

@media (prefers-reduced-motion: reduce) {
  .stat-card,
  .stat-card .elementor-counter {
    transition: none !important;
  }

  .stat-card:hover {
    transform: none !important;
  }
}

/* ==================================================
   AJUSTEMENTS D’ESPACEMENT
================================================== */

/* Rapproche le préfixe du nombre : +300 */
.stat-card .elementor-counter-number-prefix {
  margin-right: -0em !important;
}

/* Rapproche les suffixes classiques du nombre */
.stat-card .elementor-counter-number-suffix {
  margin-left: 0em !important;
}


/* ==================================================
   AJUSTEMENTS FINAUX DES SUFFIXES
================================================== */

/* m² : plus proche du k et nettement plus bas */
.stat-card.suffix-k-m2
  .elementor-counter-number-suffix::after,
.stat-card
  .suffix-k-m2
  .elementor-counter-number-suffix::after {
  margin-left: 0.08em !important;
  vertical-align: -0em !important;
}


/* Ans : plus proche du nombre et légèrement plus bas */
.stat-card.suffix-ans
  .elementor-counter-number-suffix,
.stat-card
  .suffix-ans
  .elementor-counter-number-suffix {
  margin-left: 0em !important;
  vertical-align: 0.25em !important;
}/* End custom CSS */
/* Start custom CSS for counter, class: .elementor-element-e830c92 */.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
              transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.stat-card:hover {
  transform: translateY(-4px);
}

.stat-card,
.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title {
  color: #3A3529;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card:hover .elementor-counter-number,
.stat-card:hover .elementor-counter-number-prefix,
.stat-card:hover .elementor-counter-number-suffix,
.stat-card:hover .elementor-counter-title {
  color: #E5E3DA;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0cd7d98 */.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card {
  transition: background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
              transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.stat-card:hover {
  transform: translateY(-4px);
}

.stat-card,
.stat-card .elementor-counter-number,
.stat-card .elementor-counter-number-prefix,
.stat-card .elementor-counter-number-suffix,
.stat-card .elementor-counter-title {
  color: #3A3529;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card:hover .elementor-counter-number,
.stat-card:hover .elementor-counter-number-prefix,
.stat-card:hover .elementor-counter-number-suffix,
.stat-card:hover .elementor-counter-title {
  color: #E5E3DA;
}/* End custom CSS */
/* Start custom CSS for nested-carousel, class: .elementor-element-45d7cfd *//* Espace sous les cartes pour placer les flèches */
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper {
    padding-bottom: 60px;
}

/* Style général des deux flèches */
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-prev,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-next {
    top: auto !important;
    bottom: 12px !important;

    width: 32px !important;
    height: 24px !important;
    margin: 0 !important;

    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;

    color: transparent !important;
    box-shadow: none !important;

    transform: none !important;
    z-index: 10;
}

/* Masque les icônes Elementor d’origine */
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button i,
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button svg {
    display: none !important;
}

/* Position en bas à gauche */
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-prev,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-prev {
    left: 0 !important;
    right: auto !important;
}

.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-next,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-next {
    left: 68px !important;
    right: auto !important;
}

/* Trait horizontal */
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-prev::before,
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-next::before,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-prev::before,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-next::before {
    content: "" !important;
    display: block !important;

    position: absolute;
    top: 50%;

    width: 24px;
    height: 1.5px;

    background-color: #77755F;
    transform: translateY(-50%);
}

/* Trait de la flèche gauche */
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-prev::before,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-prev::before {
    left: 4px;
}

/* Trait de la flèche droite */
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-next::before,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-next::before {
    right: 4px;
}

/* Pointe des flèches */
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-prev::after,
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-next::after,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-prev::after,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-next::after {
    content: "" !important;
    display: block !important;

    position: absolute;
    top: 50%;

    width: 9px;
    height: 9px;

    border: solid #77755F;
    border-width: 0 1.5px 1.5px 0;
}

/* Pointe gauche */
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-prev::after,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-prev::after {
    left: 4px;
    transform: translateY(-50%) rotate(135deg);
}

/* Pointe droite */
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-next::after,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-next::after {
    right: 4px;
    transform: translateY(-50%) rotate(-45deg);
}

/* Animation au survol */
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-prev,
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-next,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-prev,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-next {
    transition: opacity 0.25s ease !important;
}

.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-prev:hover,
.elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-next:hover,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-prev:hover,
.elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-next:hover {
    opacity: 0.55;
}

/* ---- MOBILE ---- */
@media (max-width: 767px) {
    .elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-prev,
    .elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-prev {
        left: 10% !important;
        right: auto !important;
    }
    .elementor-28 .elementor-element.elementor-element-45d7cfd .elementor-swiper-button-next,
    .elementor-28 .elementor-element.elementor-element-45d7cfd .swiper-button-next {
        left: 80% !important;
        right: 0 !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3542c13 */.stats-carousel-wrapper {
  overflow: hidden;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-64b6977 *//* =================================
   CONTENEUR GLOBAL
================================= */

.services-links {
  --number-color: #7D7B5A;
  --text-color: rgba(57, 54, 36, 0.79);
  --border-color: rgba(57, 54, 36, 0.08);
  --inactive-opacity: 0.16;

  width: 100%;
}


/* =================================
   LIGNE CLIQUABLE
================================= */

.services-links > .service-link {
  display: grid !important;
  grid-template-columns: 90px minmax(0, 1fr) 56px;
  align-items: start;
  column-gap: 0;

  width: 100%;
  min-height: 96px;

  background: transparent !important;
  border-bottom: 1px solid var(--border-color);

  text-decoration: none !important;
  cursor: pointer;
}


/* =================================
   DIMENSIONS DES ÉLÉMENTS
================================= */

.services-links .service-number,
.services-links .service-copy {
  width: auto !important;
  max-width: none !important;
}


/* =================================
   GESTION DES ÉTATS
================================= */

/*
Tous les éléments sont pâles par défaut.
*/

.services-links > .service-link .service-number,
.services-links > .service-link .service-copy,
.services-links
> .service-link
> .elementor-element:last-child
img {
  opacity: var(--inactive-opacity) !important;

  transition:
    opacity 0.35s ease,
    transform 0.35s ease;
}


/*
La ligne "service-default" est active
tant qu’aucune autre ligne n’est survolée.
*/

.services-links:not(
  :has(> .service-link:not(.service-default):hover)
):not(
  :has(> .service-link:not(.service-default):focus-within)
)
> .service-link.service-default
.service-number,

.services-links:not(
  :has(> .service-link:not(.service-default):hover)
):not(
  :has(> .service-link:not(.service-default):focus-within)
)
> .service-link.service-default
.service-copy,

.services-links:not(
  :has(> .service-link:not(.service-default):hover)
):not(
  :has(> .service-link:not(.service-default):focus-within)
)
> .service-link.service-default
> .elementor-element:last-child
img {
  opacity: 1 !important;
}


/*
La ligne réellement survolée devient active.
Cela fonctionne aussi pour la première ligne.
*/

.services-links
> .service-link:hover
.service-number,

.services-links
> .service-link:hover
.service-copy,

.services-links
> .service-link:hover
> .elementor-element:last-child
img,

.services-links
> .service-link:focus-within
.service-number,

.services-links
> .service-link:focus-within
.service-copy,

.services-links
> .service-link:focus-within
> .elementor-element:last-child
img {
  opacity: 1 !important;
}


/* =================================
   ACCESSIBILITÉ CLAVIER
================================= */

.services-links > .service-link:focus-visible {
  outline: 1px solid var(--number-color);
  outline-offset: 4px;
}


/* =================================
   NUMÉRO
================================= */

.services-links .service-number {
  grid-column: 1;
  align-self: start;

  margin: 0 !important;
  padding-top: 5px;
}

.services-links .service-number,
.services-links .service-number p,
.services-links .service-number .elementor-heading-title,
.services-links .service-number .elementor-widget-container {
  margin: 0 !important;

  color: var(--number-color) !important;

  font-family: "PP Fragment", Georgia, serif !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}


/* =================================
   CONTENEUR TITRE + DESCRIPTION
================================= */

.services-links .service-copy {
  grid-column: 2;

  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;

  min-width: 0;
}

.services-links .service-title,
.services-links .service-description,
.services-links .service-title .elementor-widget-container,
.services-links .service-description .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}


/* =================================
   TITRE
================================= */

.services-links .service-title,
.services-links .service-title p,
.services-links .service-title .elementor-heading-title {
  margin: 0 !important;

  color: var(--text-color) !important;

  font-family: "PP Fragment", Georgia, serif !important;
  font-size: 36px !important;
  font-style: italic !important;
  font-weight: 300 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}


/* =================================
   DESCRIPTION
================================= */

.services-links .service-description,
.services-links .service-description p {
  margin: 0 !important;

  color: var(--text-color) !important;

  font-family: "Neue Montreal", Arial, sans-serif !important;
  font-size: 15px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}


/* =================================
   FLÈCHE
================================= */

/*
HTML utilisé :

<span class="service-arrow"></span>
*/

.services-links .service-arrow {
  position: relative;

  grid-column: 3;
  justify-self: end;
  align-self: start;

  display: block;
  width: 21px;
  height: 21px;

  margin-top: 3px;

  color: var(--number-color);
}


/* Angle supérieur droit */

.services-links .service-arrow::before {
  content: "";

  position: absolute;
  top: 0;
  right: 0;

  width: 21px;
  height: 21px;

  border-top: 1px solid currentColor;
  border-right: 1px solid currentColor;
}


/* Trait diagonal */

.services-links .service-arrow::after {
  content: "";

  position: absolute;
  top: 1px;
  right: 0;

  width: 18px;
  height: 1px;

  background: currentColor;

  transform: rotate(-45deg);
  transform-origin: right center;
}


/* =================================
   RESPONSIVE
================================= */

@media (max-width: 767px) {

  .services-links > .service-link {
    grid-template-columns: 48px minmax(0, 1fr) 36px;
    min-height: 82px;
  }

  .services-links .service-title,
  .services-links .service-title p,
  .services-links .service-title .elementor-heading-title {
    font-size: 28px !important;
  }

  .services-links .service-number,
  .services-links .service-number p,
  .services-links .service-number .elementor-heading-title {
    font-size: 20px !important;
  }

  .services-links .service-description,
  .services-links .service-description p {
    font-size: 14px !important;
    line-height: 1.15 !important;
  }
}

/* =================================
   SÉPARATEURS ENTRE LES LIGNES
================================= */

.services-links .service-link {
  position: relative;
  border-bottom: none !important;
}

.services-links .service-link::after {
  content: "";

  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;

  width: 100%;
  height: 1px;

  background-color: rgba(57, 54, 36, 0.10);

  pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8efcb17 *//* Carte */
.carte-certification {
    --fond-normal: transparent;
    --fond-hover: #dedbd0;

    --logo-normal: #F0EFE6;
    --logo-hover: #D9D8CD;

    background-color: var(--fond-normal);
    transition: background-color 0.35s ease;
    cursor: pointer;
}

/* Changement du fond */
.carte-certification:hover,
.carte-certification:focus-within {
    background-color: var(--fond-hover);
}

/* Couleur normale du logo SVG */
.carte-certification .logo-certification {
    color: var(--logo-normal);
    transition: color 0.35s ease;
}

/* Rend les couleurs internes du SVG modifiables */
.carte-certification .logo-certification svg [fill]:not([fill="none"]) {
    fill: currentColor !important;
}

.carte-certification .logo-certification svg [stroke]:not([stroke="none"]) {
    stroke: currentColor !important;
}

/* Couleur du logo au survol de toute la carte */
.carte-certification:hover .logo-certification,
.carte-certification:focus-within .logo-certification {
    color: var(--logo-hover);
}

.carte-certification .zone-logo {
    position: relative;
}

.carte-certification .zone-logo .logo-normal,
.carte-certification .zone-logo .logo-hover {
    position: absolute;
    inset: 0;
    width: 100%;
    transition: opacity 0.35s ease;
}

.carte-certification .zone-logo .logo-normal {
    opacity: 1;
}

.carte-certification .zone-logo .logo-hover {
    opacity: 0;
}

.carte-certification:hover .zone-logo .logo-normal {
    opacity: 0;
}

.carte-certification:hover .zone-logo .logo-hover {
    opacity: 1;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-e60ed30 */.elementor-28 .elementor-element.elementor-element-e60ed30 {
    width: fit-content !important;
    align-self: center !important;
    margin: 18px auto 0 !important;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    overflow: visible !important;
}

.elementor-28 .elementor-element.elementor-element-e60ed30::before {
    content: "";
    display: block;
    width: 70px;
    min-width: 70px;
    height: 1px;
    background-color: #ffffff;
}

.elementor-28 .elementor-element.elementor-element-e60ed30 .elementor-widget-container,
.elementor-28 .elementor-element.elementor-element-e60ed30 p {
    margin: 0;
}

.elementor-28 .elementor-element.elementor-element-e60ed30 p {
    color: #ffffff;
    line-height: 1;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-e60ed30 */.elementor-28 .elementor-element.elementor-element-e60ed30 {
    width: fit-content !important;
    align-self: center !important;
    margin: 18px auto 0 !important;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    overflow: visible !important;
}

.elementor-28 .elementor-element.elementor-element-e60ed30::before {
    content: "";
    display: block;
    width: 70px;
    min-width: 70px;
    height: 1px;
    background-color: #ffffff;
}

.elementor-28 .elementor-element.elementor-element-e60ed30 .elementor-widget-container,
.elementor-28 .elementor-element.elementor-element-e60ed30 p {
    margin: 0;
}

.elementor-28 .elementor-element.elementor-element-e60ed30 p {
    color: #ffffff;
    line-height: 1;
}/* End custom CSS */
/* Start custom CSS for nested-carousel, class: .elementor-element-6dd4c68 */.elementor-28 .elementor-element.elementor-element-6dd4c68,
.elementor-28 .elementor-element.elementor-element-6dd4c68 .e-n-carousel,
.elementor-28 .elementor-element.elementor-element-6dd4c68 .swiper,
.elementor-28 .elementor-element.elementor-element-6dd4c68 .swiper-wrapper,
.elementor-28 .elementor-element.elementor-element-6dd4c68 .swiper-slide {
    height: 800px !important;
    min-height: 800px !important;
}

.elementor-28 .elementor-element.elementor-element-6dd4c68 .swiper-slide > .e-con,
.elementor-28 .elementor-element.elementor-element-6dd4c68 .swiper-slide > .e-con > .e-con-inner {
    height: 100% !important;
    min-height: 100% !important;
}


/* Conteneur du numéro et de la barre */
.slider-temoignages .numero-temoignage {
    --duree-slide: 5s;

    position: relative;
    width: fit-content !important;
    margin: 18px auto 0 !important;
    padding-left: 80px;

    overflow: visible !important;
}

/* Ligne de fond */
.slider-temoignages .numero-temoignage::before {
    content: "";
    position: absolute;

    width: 70px;
    height: 1px;

    left: 0;
    top: 50%;

    background: rgba(255, 255, 255, 0.35);
    transform: translateY(-50%);
}

/* Barre de chargement */
.slider-temoignages .numero-temoignage::after {
    content: "";
    position: absolute;

    width: 70px;
    height: 1px;

    left: 0;
    top: 50%;

    background: #ffffff;

    transform: translateY(-50%) scaleX(0);
    transform-origin: left center;
}

/* Animation uniquement sur la slide active */
.slider-temoignages
.swiper-slide-active
.numero-temoignage::after {
    animation: chargement-temoignage var(--duree-slide) linear forwards;
    animation-play-state: running !important;
}

/* Le survol ne met jamais la barre en pause */
.slider-temoignages:hover
.swiper-slide-active
.numero-temoignage::after {
    animation-play-state: running !important;
}

.slider-temoignages .numero-temoignage p,
.slider-temoignages .numero-temoignage .elementor-widget-container {
    margin: 0 !important;
}

.slider-temoignages .numero-temoignage p {
    color: #ffffff;
    line-height: 1;
}

@keyframes chargement-temoignage {
    from {
        transform: translateY(-50%) scaleX(0);
    }

    to {
        transform: translateY(-50%) scaleX(1);
    }
}/* End custom CSS */
/* Start custom CSS */html,
body {
    overflow-x: hidden;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Neue';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://factory.perroquet.eu/wp-content/uploads/2026/07/NeueHaasDisplayThin.woff2') format('woff2');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'test';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://factory.perroquet.eu/wp-content/uploads/2026/07/PPFragment-SerifLight.woff2') format('woff2');
}
/* End Custom Fonts CSS */