.elementor-875 .elementor-element.elementor-element-31a7ac1{--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:100;}.elementor-875 .elementor-element.elementor-element-31a7ac1:not(.elementor-motion-effects-element-type-background), .elementor-875 .elementor-element.elementor-element-31a7ac1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F1ECE2;}.elementor-875 .elementor-element.elementor-element-c77b31e{--display:flex;--justify-content:center;}.elementor-875 .elementor-element.elementor-element-5a61e0a{text-align:start;}.elementor-875 .elementor-element.elementor-element-5a61e0a img{width:24%;}.elementor-875 .elementor-element.elementor-element-0356a96{--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-875 .elementor-element.elementor-element-af8148d{--display:flex;}.elementor-875 .elementor-element.elementor-element-a24f641{--display:flex;}.elementor-875 .elementor-element.elementor-element-4c85bfb{--display:flex;}.elementor-875 .elementor-element.elementor-element-5a33419{--display:flex;}.elementor-875 .elementor-element.elementor-element-5ca9109{--n-menu-dropdown-content-max-width:initial;--n-menu-heading-justify-content:flex-end;--n-menu-title-flex-grow:initial;--n-menu-title-justify-content:initial;--n-menu-title-justify-content-mobile:flex-end;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-distance-from-content:0px;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-font-size:0.9em;--n-menu-title-color-normal:#171714;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;}.elementor-875 .elementor-element.elementor-element-5ca9109 > .elementor-widget-container > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title, .elementor-875 .elementor-element.elementor-element-5ca9109 > .elementor-widget-container > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container, .elementor-875 .elementor-element.elementor-element-5ca9109 > .elementor-widget-container > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container > span{font-family:"Geist", Sans-serif;}.elementor-875 .elementor-element.elementor-element-d159549 .elementor-button{background-color:var( --e-global-color-secondary );font-family:"Geist", Sans-serif;font-weight:600;letter-spacing:0.1px;fill:var( --e-global-color-text );color:var( --e-global-color-text );}.elementor-875 .elementor-element.elementor-element-d159549 .elementor-button:hover, .elementor-875 .elementor-element.elementor-element-d159549 .elementor-button:focus{background-color:var( --e-global-color-text );color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-875 .elementor-element.elementor-element-d159549 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-875 .elementor-element.elementor-element-d159549 .elementor-button .elementor-button-content-wrapper{gap:15px;}.elementor-875 .elementor-element.elementor-element-d159549 .elementor-button:hover svg, .elementor-875 .elementor-element.elementor-element-d159549 .elementor-button:focus svg{fill:var( --e-global-color-secondary );}.elementor-875 .elementor-element.elementor-element-f81a16f{--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:100;}.elementor-875 .elementor-element.elementor-element-f81a16f:not(.elementor-motion-effects-element-type-background), .elementor-875 .elementor-element.elementor-element-f81a16f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F1ECE2;}.elementor-875 .elementor-element.elementor-element-3cc0923{--display:flex;--justify-content:center;}.elementor-875 .elementor-element.elementor-element-c57549e{text-align:start;}.elementor-875 .elementor-element.elementor-element-c57549e img{width:24%;}.elementor-875 .elementor-element.elementor-element-a5b62d7{--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-875 .elementor-element.elementor-element-c4dac5a .elementor-icon-wrapper{text-align:center;}.elementor-875 .elementor-element.elementor-element-c4dac5a.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-875 .elementor-element.elementor-element-c4dac5a.elementor-view-framed .elementor-icon, .elementor-875 .elementor-element.elementor-element-c4dac5a.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-875 .elementor-element.elementor-element-c4dac5a.elementor-view-framed .elementor-icon, .elementor-875 .elementor-element.elementor-element-c4dac5a.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-875 .elementor-element.elementor-element-f81a16f{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:2vw;--padding-bottom:2vw;--padding-left:3vw;--padding-right:3vw;}.elementor-875 .elementor-element.elementor-element-3cc0923{--width:50%;}.elementor-875 .elementor-element.elementor-element-c57549e img{width:60%;}.elementor-875 .elementor-element.elementor-element-a5b62d7{--width:50%;--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:flex-end;}.elementor-875 .elementor-element.elementor-element-c4dac5a .elementor-icon{font-size:1.7em;}.elementor-875 .elementor-element.elementor-element-c4dac5a .elementor-icon svg{height:1.7em;}}@media(min-width:768px){.elementor-875 .elementor-element.elementor-element-c77b31e{--width:87%;}.elementor-875 .elementor-element.elementor-element-0356a96{--width:100%;}.elementor-875 .elementor-element.elementor-element-3cc0923{--width:87%;}.elementor-875 .elementor-element.elementor-element-a5b62d7{--width:100%;}}/* Start custom CSS for mega-menu, class: .elementor-element-5ca9109 */.e-n-menu-heading .e-n-menu-title-text {
  position: relative;
  display: inline-block;
}

.e-n-menu-heading .e-n-menu-title-text::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 1px;
  background-color: #171714;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
}

.e-n-menu-heading .e-n-menu-item:hover .e-n-menu-title-text::after {
  transform: scaleX(1);
}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-c4dac5a *//* MENU MOBILE TOP AGENCY */

.ta-mobile-menu {
  display: none;
}

@media (max-width: 767px) {
  /* Garde le header au-dessus du menu */
  .elementor-location-header {
    position: relative !important;
    z-index: 10000 !important;
  }

  /* Animation hamburger → croix */
  .ta-menu-trigger .elementor-icon-wrapper,
  .ta-menu-trigger .elementor-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 48px !important;
    height: 48px !important;
  }

  .ta-menu-trigger .elementor-icon {
    position: relative !important;
    font-size: 0 !important;
  }

  .ta-menu-trigger .elementor-icon i,
  .ta-menu-trigger .elementor-icon svg {
    display: none !important;
  }

  .ta-menu-trigger .elementor-icon::before {
    position: absolute;
    width: 31px;
    height: 2px;
    content: "";
    background: #171714;
    box-shadow: 0 -10px #171714, 0 10px #171714;
    transition: transform .3s ease, box-shadow .22s ease;
  }

  .ta-menu-trigger .elementor-icon::after {
    position: absolute;
    width: 31px;
    height: 2px;
    content: "";
    opacity: 0;
    background: #171714;
    transform: rotate(0);
    transition: transform .3s ease, opacity .18s ease;
  }

  .ta-menu-trigger.is-open .elementor-icon::before {
    box-shadow: none;
    transform: rotate(45deg);
  }

  .ta-menu-trigger.is-open .elementor-icon::after {
    opacity: 1;
    transform: rotate(-45deg);
  }

  body.ta-mobile-menu-open {
    overflow: hidden !important;
  }

  /*
   * Le menu débute SOUS le header.
   * Modifie 92px si ton header mobile a une autre hauteur.
   */
  .ta-mobile-menu {
    position: fixed;
    z-index: 9998;
    top: 92px;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    overflow-y: auto;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    background: rgba(23, 23, 20, .74);
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    transition: opacity .25s ease, visibility .25s ease;
  }

  .ta-mobile-menu.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }

  /* Panneau sombre */
.ta-mobile-menu__panel {
  display: flex;
  flex-direction: column;
  margin: 2.5rem 1rem 2rem;
  padding: .4rem 1.15rem 1.15rem;
  border: 1px solid rgba(255, 253, 247, .18);
  border-radius: 16px;
  background: #171714 !important;
  box-shadow: 0 18px 36px rgba(0, 0, 0, .28);
  transform: translateY(-14px);
  transition: transform .32s cubic-bezier(.2, .8, .2, 1);
}

  .ta-mobile-menu.is-open .ta-mobile-menu__panel {
    transform: translateY(0);
  }

  /* Liens : couleurs forcées contre le bleu du thème */
  #ta-mobile-menu .ta-mobile-menu__link,
  #ta-mobile-menu .ta-mobile-menu__link:link,
  #ta-mobile-menu .ta-mobile-menu__link:visited,
  #ta-mobile-menu .ta-mobile-menu__link:hover,
  #ta-mobile-menu .ta-mobile-menu__link:active,
  #ta-mobile-menu .ta-mobile-menu__link span,
  #ta-mobile-menu .ta-mobile-menu__link i {
    color: #fffdf7 !important;
    text-decoration: none !important;
  }

  #ta-mobile-menu .ta-mobile-menu__link {
    display: grid !important;
    grid-template-columns: 2.6rem 1fr auto !important;
    align-items: center !important;
    gap: .65rem !important;
    min-height: 86px !important;
    border-bottom: 1px solid rgba(255, 253, 247, .18) !important;
    background: transparent !important;
    font-family: "Geist", sans-serif !important;
    font-size: 1.12rem !important;
    font-weight: 500 !important;
    line-height: 1.1 !important;
  }

  #ta-mobile-menu .ta-mobile-menu__icon {
    width: 1.45rem;
    font-size: 1.35rem !important;
    text-align: center;
  }

  #ta-mobile-menu .ta-mobile-menu__arrow {
    font-size: 2.25rem !important;
    font-weight: 300 !important;
    line-height: 1 !important;
  }

  /* CTA verte */
  #ta-mobile-menu .ta-mobile-menu__cta,
  #ta-mobile-menu .ta-mobile-menu__cta:link,
  #ta-mobile-menu .ta-mobile-menu__cta:visited {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 1rem !important;
    min-height: 76px;
    margin-top: 1rem;
    border: 0 !important;
    border-radius: 8px;
    background: #d9ef78 !important;
    color: #171714 !important;
    font-family: "Geist", sans-serif !important;
    font-size: 1.12rem !important;
    font-weight: 500 !important;
    text-decoration: none !important;
  }

  #ta-mobile-menu .ta-mobile-menu__cta span {
    color: #171714 !important;
    font-size: 1.45rem !important;
  }

  #ta-mobile-menu .ta-mobile-menu__cta:hover {
    background: #f04b2f !important;
    color: #fffdf7 !important;
  }

  #ta-mobile-menu .ta-mobile-menu__cta:hover span {
    color: #fffdf7 !important;
  }
}

@media (max-width: 767px) {
  #ta-mobile-menu .ta-mobile-menu__panel {
    background: #f1ede3 !important;
  }

  #ta-mobile-menu .ta-mobile-menu__link,
  #ta-mobile-menu .ta-mobile-menu__link:link,
  #ta-mobile-menu .ta-mobile-menu__link:visited,
  #ta-mobile-menu .ta-mobile-menu__link:hover,
  #ta-mobile-menu .ta-mobile-menu__link:active,
  #ta-mobile-menu .ta-mobile-menu__link span,
  #ta-mobile-menu .ta-mobile-menu__link i,
  #ta-mobile-menu .ta-mobile-menu__arrow {
    color: #171714 !important;
  }

  #ta-mobile-menu .ta-mobile-menu__link {
    border-bottom-color: rgba(23, 23, 20, .18) !important;
  }

  #ta-mobile-menu .ta-mobile-menu__cta,
  #ta-mobile-menu .ta-mobile-menu__cta:link,
  #ta-mobile-menu .ta-mobile-menu__cta:visited {
    background: #171714 !important;
    color: #f1ede3 !important;
  }

  #ta-mobile-menu .ta-mobile-menu__cta span {
    color: #f1ede3 !important;
  }

  #ta-mobile-menu .ta-mobile-menu__cta:hover {
    background: #f04b2f !important;
    color: #f1ede3 !important;
  }
}

@media (max-width: 767px) {
  /*
   * Menu transparent au-dessus du header.
   * Le fond de page ne change pas de couleur.
   */
  .ta-mobile-menu,
  .ta-mobile-menu.is-open {
    z-index: 10001 !important;
    top: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    pointer-events: none !important;
  }

  /*
   * Le panneau commence sous le header avec plus d'espace.
   * Ajuste 160px si tu veux le déplacer encore.
   */
  #ta-mobile-menu .ta-mobile-menu__panel {
    position: relative !important;
    z-index: 10002 !important;
    margin: 160px 1rem 2rem !important;
    border: 0 !important;
    background: #f1ede3 !important;
    box-shadow:
      0 24px 55px rgba(23, 23, 20, .24),
      0 4px 14px rgba(23, 23, 20, .12) !important;
    pointer-events: auto !important;
  }

  /*
   * Le header reste visible et son hamburger/croix
   * reste toujours cliquable derrière le calque transparent.
   */
  .elementor-location-header {
    position: relative !important;
    z-index: 10000 !important;
  }

  /* Textes noirs forcés */
  #ta-mobile-menu .ta-mobile-menu__link,
  #ta-mobile-menu .ta-mobile-menu__link:link,
  #ta-mobile-menu .ta-mobile-menu__link:visited,
  #ta-mobile-menu .ta-mobile-menu__link:hover,
  #ta-mobile-menu .ta-mobile-menu__link:active,
  #ta-mobile-menu .ta-mobile-menu__link span,
  #ta-mobile-menu .ta-mobile-menu__link i,
  #ta-mobile-menu .ta-mobile-menu__arrow {
    color: #171714 !important;
  }

  #ta-mobile-menu .ta-mobile-menu__link {
    border-bottom-color: rgba(23, 23, 20, .18) !important;
  }
}/* End custom CSS */