.elementor-27 .elementor-element.elementor-element-614ee901{--display:flex;--min-height:31px;--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:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:7%;--padding-right:0%;--z-index:95;}.elementor-27 .elementor-element.elementor-element-614ee901:not(.elementor-motion-effects-element-type-background), .elementor-27 .elementor-element.elementor-element-614ee901 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1A1F1C;}.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-27 .elementor-element.elementor-element-32c991f .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-27 .elementor-element.elementor-element-32c991f .elementor-button{font-family:"Cairo", Sans-serif;font-weight:700;fill:#1A1F1C;color:#1A1F1C;}.elementor-widget-theme-site-logo .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-27 .elementor-element.elementor-element-c15f90b{width:var( --container-widget-width, 55.678% );max-width:55.678%;--container-widget-width:55.678%;--container-widget-flex-grow:0;text-align:center;}.elementor-27 .elementor-element.elementor-element-c15f90b.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-27 .elementor-element.elementor-element-c15f90b img{width:40%;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-27 .elementor-element.elementor-element-614ee901{--min-height:85px;--padding-top:0%;--padding-bottom:0%;--padding-left:5%;--padding-right:5%;}}@media(max-width:767px){.elementor-27 .elementor-element.elementor-element-614ee901{--min-height:65px;}.elementor-27 .elementor-element.elementor-element-c15f90b{--container-widget-width:165px;--container-widget-flex-grow:0;width:var( --container-widget-width, 165px );max-width:165px;}.elementor-27 .elementor-element.elementor-element-c15f90b img{width:72%;max-width:70%;height:108px;}}/* Start custom CSS for container, class: .elementor-element-614ee901 *//* ===== HEADER STRUCTURE ===== */
#header_clv {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 24px;
  gap: 20px;
  position: relative;
}

/* ===== DESKTOP ===== */
@media (min-width: 1025px) {

  /* Logo centré */
  #logo_header {
    order: 1;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center; /* Centre le logo */
  }

  /* CTA à droite */
  #cta_header {
    order: 2;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: flex-end; /* Aligne le CTA à droite */
    width: auto;
  }

  #logo_header img {
    max-height: 100px; /* Taille du logo ajustée */
    width: auto;
  }

  #cta_header a,
  #cta_header button {
    padding: 10px 20px;
    background-color: #9acd32;
    color: #222723;
    font-size: 16px;
    border-radius: 12px;
    text-decoration: none;
    transition: all 0.3s ease;
  }

  #cta_header a:hover,
  #cta_header button:hover {
    background-color: #7bbd2f;
    transform: translateY(-3px);
  }
}

/* ===== MOBILE ===== */
@media (max-width: 1024px) {

  #header_clv {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 12px 18px;
  }

  /* Logo centré sur mobile */
  #logo_header {
    order: 1;
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* CTA centré sur mobile */
  #cta_header {
    order: 2;
    margin-top: 10px;
    width: 100%;
    display: flex;
    justify-content: center;
  }

  #logo_header img {
    max-height: 60px; /* Taille du logo ajustée pour mobile */
  }

  #cta_header a,
  #cta_header button {
    width: 100%;
    max-width: 480px;
    padding: 12px;
    background-color: #9acd32;
    color: 222723;
    font-size: 16px;
    border-radius: 12px;
    text-decoration: none;
    text-align: center;
    margin: auto;
    transition: all 0.3s ease;
  }

  #cta_header a:hover,
  #cta_header button:hover {
    background-color: #7bbd2f;
    transform: translateY(-3px);
  }
}

/* ===== CTA PREMIUM HOVER ===== */
#cta_header a,
#cta_header button {
  transition: all 0.25s ease;
  border-radius: 12px;
}

#cta_header a:hover,
#cta_header button:hover {
  filter: brightness(1.05) saturate(1.1);
  box-shadow: 0 8px 25px rgba(154, 205, 50, 0.35); /* Glow vert */
  transform: translateY(-2px);
}

/* Active press */
#cta_header a:active,
#cta_header button:active {
  transform: translateY(0px);
  box-shadow: none;
}
/* ===== DESKTOP: center logo perfectly + CTA right (no mobile changes) ===== */
@media (min-width: 1025px) {

  /* 1) Header becomes a 3-column grid:
        [left spacer] [logo] [cta]
     This guarantees the logo is truly centered. */
  #header_clv{
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    align-items: center !important;
    padding: 14px 24px; /* garde ton spacing */
    gap: 20px;
    position: relative;
  }

  /* 2) Reset any previous "absolute" / transforms that could break layout */
  #logo_header{
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;

    grid-column: 2 !important;
    justify-self: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 2;
  }

  #logo_header img{
    max-height: 100px;
    width: auto;
    display: block;
  }

  /* 3) CTA locked to the right column */
  #cta_header{
    grid-column: 3 !important;
    justify-self: end !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    z-index: 3;
  }
}/* End custom CSS */