.elementor-4182 .elementor-element.elementor-element-58ce749{--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;--align-items:center;--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.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-4182 .elementor-element.elementor-element-e93d369{--display:flex;--margin-top:50px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-4182 .elementor-element.elementor-element-fa2f59d .dce-acf-repeater-grid{display:flex;flex-wrap:wrap;justify-content:space-between;}.elementor-4182 .elementor-element.elementor-element-fa2f59d .dce-acf-repeater-masonry .dce-acf-repeater-item{width:calc( 100% / 3 );}.elementor-4182 .elementor-element.elementor-element-fa2f59d .dce-acf-repeater-grid .dce-acf-repeater-item{flex:0 1 calc( 100% / 3 );flex-grow:0;}.elementor-4182 .elementor-element.elementor-element-fa2f59d{width:var( --container-widget-width, 60% );max-width:60%;--container-widget-width:60%;--container-widget-flex-grow:0;color:var( --e-global-color-secondary );}.elementor-4182 .elementor-element.elementor-element-fa2f59d.elementor-element{--align-self:center;}.elementor-4182 .elementor-element.elementor-element-fa2f59d .dce-acf-repeater-item{align-self:flex-start;padding-right:calc( 20px/2 );padding-left:calc( 20px/2 );padding-bottom:20px;}.elementor-4182 .elementor-element.elementor-element-fa2f59d .dce-acf-repeater{margin-left:calc( -20px/2 );margin-right:calc( -20px/2 );}.elementor-4182 .elementor-element.elementor-element-019cab3{--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-4182 .elementor-element.elementor-element-29f5cc5{width:var( --container-widget-width, 60% );max-width:60%;--container-widget-width:60%;--container-widget-flex-grow:0;}.elementor-4182 .elementor-element.elementor-element-29f5cc5.elementor-element{--align-self:center;}.elementor-4182 .elementor-element.elementor-element-3c7ef07{--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-4182 .elementor-element.elementor-element-96024e3{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-4182 .elementor-element.elementor-element-fa2f59d .dce-acf-repeater-grid{display:flex;flex-wrap:wrap;justify-content:3;}.elementor-4182 .elementor-element.elementor-element-fa2f59d .dce-acf-repeater-masonry .dce-acf-repeater-item{width:calc( 100% / 3 );}.elementor-4182 .elementor-element.elementor-element-fa2f59d .dce-acf-repeater-grid .dce-acf-repeater-item{flex:0 1 calc( 100% / 3 );}}@media(max-width:767px){.elementor-4182 .elementor-element.elementor-element-fa2f59d .dce-acf-repeater-grid{display:flex;flex-wrap:wrap;justify-content:1;}.elementor-4182 .elementor-element.elementor-element-fa2f59d .dce-acf-repeater-masonry .dce-acf-repeater-item{width:calc( 100% / 3 );}.elementor-4182 .elementor-element.elementor-element-fa2f59d .dce-acf-repeater-grid .dce-acf-repeater-item{flex:0 1 calc( 100% / 3 );}.elementor-4182 .elementor-element.elementor-element-fa2f59d{width:var( --container-widget-width, 95% );max-width:95%;--container-widget-width:95%;--container-widget-flex-grow:0;}}/* Start custom CSS for dce-acf-repeater-v2, class: .elementor-element-fa2f59d */.link-item {
    width: calc(100%);
    position: relative;
}
.link-item .picture-container {
    position: relative;
    overflow: hidden;
}
.link-item .picture-container:before {
    display: block;
    content: '';
    width: 100%;
    padding-top: 100%;
}
.link-item .picture-container .img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0) scale3D(1, 1, 1);
    transform: translate3d(-50%, -50%, 0) scale3D(1, 1, 1);
    min-width: 100%;
    min-height: 100%;
    z-index: 0;
    -webkit-transition: -webkit-transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: -webkit-transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    -o-transition: transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955), -webkit-transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.link-item:hover .picture-container .img {
        -webkit-transform: translate3d(-50%, -50%, 0) scale3D(1.1, 1.1, 1);
        transform: translate3d(-50%, -50%, 0) scale3D(1.1, 1.1, 1);
    }

.link-item .picture-container::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 1;
}

.link-item .link {
    font-family: "Muli";
    font-weight: bold;
    padding: 0 10px;
    font-size: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    color: #fff;
    z-index: 1;
}
.link-item .link:hover {
    color:#ffffff;
}

.link-item .link::after {
    bottom: -20px;
    height: 5px;
    width: 40px;
}
.link-item .link::after {
    content: '';
    position: relative;
    display: block;
    left: 0;
    margin: 0 auto;
    background-color: #FEFC8D;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e93d369 */.anchor {
    text-align: center;
}
.anchor .picto-container {
    position: relative;
    display: block;
    margin: 0 auto 55px;
}
.anchor .picto-container::after {
    content: '';
    width: 70px;
    height: 45px;
    position: absolute;
    bottom: -25px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #FEFC8D;
    z-index: 0;
}
.anchor .picto-container .picto {
    position: relative;
    z-index: 1;
}
.anchor .ct {
    display: block;
}
.anchor .ct .button-link-label {
    padding: 0;
    position: absolute;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    padding: 0 20px;
    line-height: 1.2;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.anchor .ct.ct--button.border .button-link {
    position: relative;
    display: inline-block;
    min-width: 160px;
    height: 60px;
    text-align: center;
    border: 1px solid #F3F3F3;
    background-color: #fff;
}
.anchor .ct.ct--button.border .button-link::before {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    width: 3px;
    height: 20px;
    background-color: #FEFC8D;
    -webkit-transition: height 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
    -o-transition: height 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
    transition: height 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
}
.anchor .ct.ct--button.border .button-link::after {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    width: 40px;
    height: 3px;
    background-color: #FEFC8D;
    -webkit-transition: width 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
    -o-transition: width 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
    transition: width 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
}
.anchor .ct.ct--button.border .button-link:hover::before {
        height: calc(100% + 4px);
    }
.anchor .ct.ct--button.border .button-link:hover::after {
        width: calc(100% + 4px);
    }
.anchor .ct.ct--button .button-link .button-link-label {
    color: #000;
    line-height: 60px;
}
.anchor .ct.ct--button.border .button-link .button-link-label::before {
    content: '';
    position: absolute;
    bottom: -2px;
    right: -2px;
    width: 3px;
    height: 20px;
    background-color: #FEFC8D;
    -webkit-transition: height 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
    -o-transition: height 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
    transition: height 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
}
.anchor .ct.ct--button.border .button-link .button-link-label::after {
    content: '';
    position: absolute;
    bottom: -2px;
    right: -2px;
    width: 55px;
    height: 3px;
    background-color: #FEFC8D;
    -webkit-transition: width 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
    -o-transition: width 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
    transition: width 350ms cubic-bezier(0.52, 0.76, 0.45, 1);
}
.anchor .ct.ct--button.border .button-link:hover .button-link-label::before {
        height: calc(100% + 4px);
    }
.anchor .ct.ct--button.border .button-link:hover .button-link-label::after {
        width: calc(100% + 4px);
    }/* End custom CSS */
/* Start custom CSS for dce-acf-repeater-v2, class: .elementor-element-29f5cc5 */.link-item {
    width: calc(100%);
    position: relative;
}
.link-item .picture-container {
    position: relative;
    overflow: hidden;
}
.link-item .picture-container:before {
    display: block;
    content: '';
    width: 100%;
    padding-top: 100%;
}
.link-item .picture-container .img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0) scale3D(1, 1, 1);
    transform: translate3d(-50%, -50%, 0) scale3D(1, 1, 1);
    min-width: 100%;
    min-height: 100%;
    z-index: 0;
    -webkit-transition: -webkit-transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: -webkit-transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    -o-transition: transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955), -webkit-transform 350ms cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.link-item:hover .picture-container .img {
        -webkit-transform: translate3d(-50%, -50%, 0) scale3D(1.1, 1.1, 1);
        transform: translate3d(-50%, -50%, 0) scale3D(1.1, 1.1, 1);
    }

.link-item .picture-container::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 1;
}

.link-item .link {
    font-family: "Muli";
    font-weight: bold;
    padding: 0 10px;
    font-size: 20px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    color: #fff;
    z-index: 1;
}
.link-item .link::after {
    bottom: -20px;
    height: 5px;
    width: 40px;
}
.link-item .link::after {
    content: '';
    position: relative;
    display: block;
    left: 0;
    margin: 0 auto;
    background-color: #FEFC8D;
}
.item-block {
    padding-bottom: 50px;
}
/* 1. Si la page elle-même gère le défilement *
html { scroll-padding-top: 200px; }   /* hauteur de ton header collant */

/* 2. Si tu cibles seulement certaines ancres (tes sections) *
[id] { scroll-margin-top: 40px; }/* End custom CSS */