.elementor-36 .elementor-element.elementor-element-37de04f{--display:flex;--min-height:100px;--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;--justify-content:space-between;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-36 .elementor-element.elementor-element-dbc32d0 img{width:63%;}.elementor-36 .elementor-element.elementor-element-7e62b8f{width:100%;max-width:100%;}.elementor-36 .elementor-element.elementor-element-5efb463{--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;--justify-content:flex-end;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;--padding-top:0px;--padding-bottom:0px;--padding-left:6px;--padding-right:0px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-36 .elementor-element.elementor-element-19a1f97:hover{--e-transform-scale:1.02;}.elementor-36 .elementor-element.elementor-element-19a1f97{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -6px) 0px;padding:0px 0px 0px 0px;--e-transform-transition-duration:100ms;}.elementor-36 .elementor-element.elementor-element-19a1f97 .elementor-icon-wrapper{text-align:center;}.elementor-36 .elementor-element.elementor-element-19a1f97.elementor-view-stacked .elementor-icon{background-color:#FFFFFF00;color:var( --e-global-color-e5e3710 );}.elementor-36 .elementor-element.elementor-element-19a1f97.elementor-view-framed .elementor-icon, .elementor-36 .elementor-element.elementor-element-19a1f97.elementor-view-default .elementor-icon{color:#FFFFFF00;border-color:#FFFFFF00;}.elementor-36 .elementor-element.elementor-element-19a1f97.elementor-view-framed .elementor-icon, .elementor-36 .elementor-element.elementor-element-19a1f97.elementor-view-default .elementor-icon svg{fill:#FFFFFF00;}.elementor-36 .elementor-element.elementor-element-19a1f97.elementor-view-framed .elementor-icon{background-color:var( --e-global-color-e5e3710 );}.elementor-36 .elementor-element.elementor-element-19a1f97.elementor-view-stacked .elementor-icon svg{fill:var( --e-global-color-e5e3710 );}.elementor-36 .elementor-element.elementor-element-19a1f97 .elementor-icon{font-size:20px;}.elementor-36 .elementor-element.elementor-element-19a1f97 .elementor-icon svg{height:20px;}.elementor-36 .elementor-element.elementor-element-5bde015:hover{--e-transform-scale:1.02;}.elementor-36 .elementor-element.elementor-element-5bde015{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -6px) 0px;padding:0px 0px 0px 0px;--e-transform-transition-duration:100ms;}.elementor-36 .elementor-element.elementor-element-5bde015 .elementor-icon-wrapper{text-align:center;}.elementor-36 .elementor-element.elementor-element-5bde015.elementor-view-stacked .elementor-icon{background-color:#FFFFFF00;color:var( --e-global-color-e5e3710 );}.elementor-36 .elementor-element.elementor-element-5bde015.elementor-view-framed .elementor-icon, .elementor-36 .elementor-element.elementor-element-5bde015.elementor-view-default .elementor-icon{color:#FFFFFF00;border-color:#FFFFFF00;}.elementor-36 .elementor-element.elementor-element-5bde015.elementor-view-framed .elementor-icon, .elementor-36 .elementor-element.elementor-element-5bde015.elementor-view-default .elementor-icon svg{fill:#FFFFFF00;}.elementor-36 .elementor-element.elementor-element-5bde015.elementor-view-framed .elementor-icon{background-color:var( --e-global-color-e5e3710 );}.elementor-36 .elementor-element.elementor-element-5bde015.elementor-view-stacked .elementor-icon svg{fill:var( --e-global-color-e5e3710 );}.elementor-36 .elementor-element.elementor-element-5bde015 .elementor-icon{font-size:20px;}.elementor-36 .elementor-element.elementor-element-5bde015 .elementor-icon svg{height:20px;}.elementor-36 .elementor-element.elementor-element-ed43963:hover{--e-transform-scale:1.02;}.elementor-36 .elementor-element.elementor-element-ed43963{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -6px) 0px;padding:0px 0px 0px 0px;--e-transform-transition-duration:100ms;}.elementor-36 .elementor-element.elementor-element-ed43963 .elementor-icon-wrapper{text-align:center;}.elementor-36 .elementor-element.elementor-element-ed43963.elementor-view-stacked .elementor-icon{background-color:#FFFFFF00;color:var( --e-global-color-e5e3710 );}.elementor-36 .elementor-element.elementor-element-ed43963.elementor-view-framed .elementor-icon, .elementor-36 .elementor-element.elementor-element-ed43963.elementor-view-default .elementor-icon{color:#FFFFFF00;border-color:#FFFFFF00;}.elementor-36 .elementor-element.elementor-element-ed43963.elementor-view-framed .elementor-icon, .elementor-36 .elementor-element.elementor-element-ed43963.elementor-view-default .elementor-icon svg{fill:#FFFFFF00;}.elementor-36 .elementor-element.elementor-element-ed43963.elementor-view-framed .elementor-icon{background-color:var( --e-global-color-e5e3710 );}.elementor-36 .elementor-element.elementor-element-ed43963.elementor-view-stacked .elementor-icon svg{fill:var( --e-global-color-e5e3710 );}.elementor-36 .elementor-element.elementor-element-ed43963 .elementor-icon{font-size:20px;}.elementor-36 .elementor-element.elementor-element-ed43963 .elementor-icon svg{height:20px;}.elementor-36 .elementor-element.elementor-element-23a416c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -6px) 6px;padding:0px 0px 0px 0px;}.elementor-36 .elementor-element.elementor-element-23a416c.elementor-element{--align-self:center;}.elementor-36 .elementor-element.elementor-element-51df734{--display:flex;--min-height:100px;--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;--justify-content:space-between;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-36 .elementor-element.elementor-element-1662c55{width:100%;max-width:100%;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-36 .elementor-element.elementor-element-37de04f{--content-width:1277px;}.elementor-36 .elementor-element.elementor-element-5efb463{--width:230px;}.elementor-36 .elementor-element.elementor-element-51df734{--content-width:1360px;}}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}}/* Start custom CSS for maxmegamenu, class: .elementor-element-7e62b8f *//* ================================================
   MEGA MENU — Reset hover background
   ================================================ */

#mega-menu-wrap-menu-1 #mega-menu-menu-1 li.mega-menu-item:hover {
    background: none !important;
}

/* ================================================
   SOUS-MENU — Conteneur principal
   ================================================ */

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu {
    padding: 0 !important;
    overflow: hidden !important;
}

/* ================================================
   TITRES DE SECTION dans colonnes texte (ex: URBANISME)
   ================================================ */

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column:not(:has(> ul > li.widget_media_image)) > ul.mega-sub-menu > li .mega-block-title,
#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column:not(:has(> ul > li.widget_media_image)) > ul.mega-sub-menu > li h4 {
    font-family: "Hanken Grotesk", Sans-serif !important;
    font-size: 1.2rem !important;
    font-weight: 600 !important;
    text-transform: none !important;
    line-height: 19px !important;
}

/* La row qui contient les colonnes */
#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu {
    display: flex !important;
    align-items: stretch !important;
    min-height: 260px !important;
}

/* ================================================
   TOUTES LES COLONNES — Base
   ================================================ */

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column {
    display: flex !important;
    align-items: center !important;
    padding: 0 !important;
}

li#mega-menu-33-0-1{
    height: 250px !important;
}

li#mega-menu-33-0 {
    align-content: center !important;
    justify-content: center !important;
}


/* ================================================
   COLONNES IMAGE — Flush, sans padding
   ================================================ */

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column:has(> ul > li.widget_media_image) {
    align-items: stretch !important;
}

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column:has(> ul > li.widget_media_image) > ul.mega-sub-menu {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    padding: 16px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Le li image prend l'espace disponible */
#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.widget_media_image {
    position: relative !important;
    flex: 1 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border-radius: 8px !important;
}

/* H4 en overlay — TITRES SUR IMAGES */
#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.widget_media_image h4.mega-block-title {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 2 !important;
    margin: 0 !important;
    padding: 24px 14px 12px !important;
    color: #fff !important;
    font-family: "Hanken Grotesk", Sans-serif !important;
    font-size: 1.2rem !important;
    font-weight: 600 !important;
    text-transform: none !important;
    line-height: 19px !important;
    letter-spacing: 0.04em !important;
    pointer-events: none !important;
    background: linear-gradient(transparent, rgba(0,0,0,0.55)) !important;
}

/* Lien image — remplit le li */
#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.widget_media_image a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    border-radius: 8px !important;
}

/* Image */
#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.widget_media_image a img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    max-width: none !important;
    max-height: none !important;
    display: block !important;
    transform: scale(1) !important;
    filter: brightness(0.6) !important;
    transition: transform 0.4s ease, filter 0.4s ease !important;
}

/* Zoom + éclaircissement au hover */
#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.widget_media_image a:hover img {
    transform: scale(1.06) !important;
    filter: brightness(0.85) !important;
}

/* ================================================
   MA VILLE (#mega-sub-menu-32)
   Images empilées avec hauteur fixe
   ================================================ */

#mega-menu-32-0-1 li.widget_media_image a {
    display: block !important;
    
    overflow: hidden !important;
}

#mega-menu-32-0-1 li.widget_media_image a img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
  
    object-fit: cover !important;
}

#mega-sub-menu-2554 li.widget_media_image a {
    display: block !important;
    height: 130px !important;
    overflow: hidden !important;
}

#mega-sub-menu-2554 li.widget_media_image a img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 130px !important;
    max-height: 130px !important;
    object-fit: cover !important;
}




#mega-sub-menu-1656 li.widget_media_image a img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 130px !important;
    max-height: 130px !important;
    object-fit: cover !important;
}

#mega-menu-1656-0-2 {
    align-self: flex-start !important;
}

.mega-menu-columns-5-of-12 {
    margin-top: 1rem !important;
    margin-left: 3rem !important;
}

/* ================================================
   COLONNES TEXTE — Padding + centrage vertical
   ================================================ */

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column:not(:has(> ul > li.widget_media_image)) > ul.mega-sub-menu {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: 28px 24px !important;
    width: 100% !important;
    gap: 4px !important;
}

/* ================================================
   LIENS TEXTE — Police body + underline slide on hover
   ================================================ */

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
    position: relative !important;
    display: inline-block !important;
    padding: 6px 0 5px !important;
    font-family: var(--e-global-typography-text-font-family), Sans-serif !important;
    font-size: var(--e-global-typography-text-font-size) !important;
    font-weight: var(--e-global-typography-text-font-weight) !important;
}



#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link::after {
    content: "" !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 0% !important;
    height: 2px !important;
    background: #186485 !important;
    border-radius: 2px !important;
    opacity: 0 !important;
    transition: width 250ms ease-in-out, opacity 250ms ease-in-out !important;
}

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover::after {
    width: 100% !important;
    opacity: 1 !important;
}

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link:hover {
    color: #186485 !important;
}

/* ================================================
   ITEM ACTIF (page courante)
   ================================================ */

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-current-menu-item > a.mega-menu-link,
#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-current_page_item > a.mega-menu-link {
    color: #186485 !important;
}

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-current-menu-item > a.mega-menu-link::after,
#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-current_page_item > a.mega-menu-link::after {
    width: 100% !important;
    opacity: 1 !important;
}

/* ================================================
   COLONNE INTRO — Fond séparateur
   ================================================ */

#mega-menu-menu-1 li.mega-menu-column.Intro-2 {
    background-color: #00ABC2 !important;
    padding: 20px !important;
}

#mega-menu-menu-1 li.Intro-2 > ul {
    justify-content: center !important;
}

/* Texte intro — Police body */
#mega-menu-menu-1 li.Intro-2 > ul p {
    color: white !important;
    font-family: var(--e-global-typography-text-font-family), Sans-serif !important;
    font-size: var(--e-global-typography-text-font-size) !important;
    font-weight: var(--e-global-typography-text-font-weight) !important;
}

/* Titres dans colonne Intro — Hanken Grotesk */
#mega-menu-menu-1 li.Intro-2 > ul h4,
#mega-menu-menu-1 li.Intro-2 > ul .mega-block-title {
    font-family: "Hanken Grotesk", Sans-serif !important;
    font-size: 1.2rem !important;
    font-weight: 600 !important;
    text-transform: none !important;
    line-height: 19px !important;
}

/* ================================================
   LARGEUR DU DROPDOWN
   ================================================ */

#mega-menu-menu-1 > li.mega-menu-item > ul.mega-sub-menu {
    min-width: 900px !important;
    max-width: 900px !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5efb463 */.elementor-36 .elementor-element.elementor-element-5efb463 svg circle {
    transition: .3s ease;
}

.elementor-36 .elementor-element.elementor-element-5efb463 svg:hover circle {
    fill: #387A99;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-37de04f */.elementor-36 .elementor-element.elementor-element-37de04f {
    background: transparent !important;
    transition: background 0.4s ease, backdrop-filter 0.4s ease, box-shadow 0.4s ease;
}

.elementor-36 .elementor-element.elementor-element-37de04f.elementor-sticky--effects {
    background: rgba(17, 95, 130, 0.80) !important;
    backdrop-filter: blur(14px) saturate(1.4);
    -webkit-backdrop-filter: blur(14px) saturate(1.4);
    box-shadow: 0 2px 24px rgba(0, 0, 0, 0.18);
}

@media only screen and (max-width: 1024px) and (min-width: 0px) {
    
    .elementor-36 .elementor-element.elementor-element-37de04f {
    display: none;    
    }
    
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-51df734 */@media only screen and (max-width: 9999px) and (min-width: 1024px) {
    
    .elementor-36 .elementor-element.elementor-element-51df734 {
        display: none !important;
    }
    
}/* End custom CSS */