.elementor-widget-container [data-tippy-root] > .tippy-box{color:var( --e-global-color-primary );background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-container [data-tippy-root] > .tippy-box .tippy-arrow{color:var( --e-global-color-primary );}.elementor-619 .elementor-element.elementor-element-c0f28bf{--display:flex;--min-height:0px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:5em;--padding-bottom:1em;--padding-left:0em;--padding-right:0em;}.elementor-619 .elementor-element.elementor-element-c0f28bf:not(.elementor-motion-effects-element-type-background), .elementor-619 .elementor-element.elementor-element-c0f28bf > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#052148;}.elementor-widget-html [data-tippy-root] > .tippy-box{color:var( --e-global-color-primary );background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-html [data-tippy-root] > .tippy-box .tippy-arrow{color:var( --e-global-color-primary );}.elementor-widget-html .wpcf7 input:not([type="submit"]){background-color:var( --e-global-color-primary );}.elementor-widget-html .wpcf7 select{background-color:var( --e-global-color-primary );}.elementor-widget-html .wpcf7 textarea{background-color:var( --e-global-color-primary );}.elementor-widget-html .wpcf7 label{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-widget-html ::placeholder{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-widget-html .wpcf7-submit{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 );background-color:var( --e-global-color-primary );}.elementor-widget-html .wpcf7 input[type="submit"]:hover{color:var( --e-global-color-primary );background-color:var( --e-global-color-primary );}.elementor-619 .elementor-element.elementor-element-fb8be73{width:var( --container-widget-width, 1280px );max-width:1280px;margin:0em 0em calc(var(--kit-widget-spacing, 0px) + 4em) 0em;padding:0em 0em 0em 0em;--container-widget-width:1280px;--container-widget-flex-grow:0;}.elementor-619 .elementor-element.elementor-element-2c06e9d{width:var( --container-widget-width, 1280px );max-width:1280px;--container-widget-width:1280px;--container-widget-flex-grow:0;}.elementor-619 .elementor-element.elementor-element-8312f8d{width:var( --container-widget-width, 1280px );max-width:1280px;--container-widget-width:1280px;--container-widget-flex-grow:0;}.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-619 .elementor-element.elementor-element-c0f28bf{--padding-top:2em;--padding-bottom:0em;--padding-left:0em;--padding-right:0em;}}@media(min-width:768px){.elementor-619 .elementor-element.elementor-element-c0f28bf{--content-width:1280px;}}/* Start custom CSS for html, class: .elementor-element-fb8be73 */.footer-top {
    column-gap: 12em;
    row-gap: 12em;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1.25fr 0.5fr;
    grid-auto-columns: 1fr;
    display: grid;
}
.footer-left, .footer-center {
    column-gap: 2em;
    row-gap: 2em;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
    flex-flow: column;
}
.w-inline-block {
    max-width: 100%;
    display: inline-block;
}
a {
    color: rgb(255, 255, 255);
    text-decoration: none;
}
.logo-f {
    width: auto;
    max-width: none;
    height: 1.88em;
}
.footer-text {
    font-family: 'Oxanium', sans-serif;
    font-size: 1em;
    font-weight: 300;
    line-height: 150%;
}
.footer-txt-wrap {
    column-gap: 1em;
    row-gap: 1em;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
    flex-flow: column;
}
.footer-text {
    font-family: 'Oxanium', sans-serif;
    font-size: 1em;
    font-weight: 300;
    line-height: 150%;
    color:white;
}
.footer-left, .footer-center {
    column-gap: 2em;
    row-gap: 2em;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
    flex-flow: column;
}

.contact-wrap {
    column-gap: 1em;
    row-gap: 1em;
    justify-content: flex-start;
    align-items: center;
    display: flex;
}
.contact-icon {
    width: auto;
    max-width: none;
    height: 1.5em;
}
.contact-wrap.cont-wr, .contact-wrap.cont-wr--2 {
    justify-content: flex-start;
    align-items: flex-start;
}
.phone-wrap {
    column-gap: 1em;
    row-gap: 1em;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
    flex-flow: column;
}
.footer-right {
    column-gap: 1.5em;
    row-gap: 1.5em;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
    flex-flow: column;
}

.footer-link {
    letter-spacing: -0.01em;
    text-transform: uppercase;
    font-size: 1em;
    line-height: 130%;
    font-family: 'Oxanium', sans-serif;;
}

/* ==================== FOOTER RESPONSIVE ==================== */
/* ============================================= */
@media (min-width: 768px) and (max-width: 1140px) {
  .footer-top {
    grid-template-columns: 1fr 1fr 0.8fr !important;   /* un peu plus équilibré sur tablette */
    column-gap: 4em !important;                        /* beaucoup moins d’espace qu’en desktop */
    row-gap: 4em !important;
    padding: 3rem 2rem !important;
  }

  /* Police plus petite sur tablette */
  .footer-text,
  .footer-link,
  .footer-top a {
    font-size: 0.875em !important;   /* 14 px si la base est 16px */
    line-height: 140% !important;
  }

  .logo-f {
    height: 1.6em !important;
  }

  /* Un peu moins d’espace dans les blocs */
  .footer-left,
  .footer-center,
  .footer-right,
  .footer-txt-wrap,
  .phone-wrap {
    row-gap: 1.2em !important;
  }
}

/* ============================================= */
/* MOBILE : 1 seule colonne (comme avant, mais nettoyé) */
/* ============================================= */
@media (max-width: 767px) {
  .footer-top {
    grid-template-columns: 1fr !important;
    row-gap: 3.5rem !important;
    column-gap: 0 !important;
    padding: 3rem 1.5rem !important;
  }

  /* Ordre optimisé */
  .footer-left   { order: 1; }
  .footer-right  { order: 2; }
  .footer-center { order: 3; }

  /* Tout centré */

  .contact-wrap,
  .phone-wrap {
    justify-content: center !important;
    align-items: left !important;
  }

  /* Police encore un peu plus petite sur très petit mobile */
  .footer-text,
  .footer-link,
  .footer-top a {
    font-size: 0.9375em !important; /* ~15 px */
  }
}

/* Très petits écrans (optionnel) */
@media (max-width: 480px) {
  .footer-top {
    row-gap: 2.8rem !important;
    padding: 2.5rem 1rem !important;
  }
  .logo-f {
    height: 1.5em !important;
  }
  .footer-text,
  .footer-link {
    font-size: 0.875em !important;
  }
}

/* ============================================= */
/* LIENS TOUJOURS BLANCS + HOVER PROPRE */
/* ============================================= */
.footer-top a,
.footer-text,
.footer-link {
  color: white !important;
  transition: opacity 0.28s ease;
}

.footer-top a:hover,
.footer-link:hover {
  color: white !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2c06e9d */.footer-line {
    padding-top: 2.5em;
    border-top: 1px solid rgba(255, 255, 255, 0.5);
    /* Le trait suit exactement les mêmes marges que le contenu du footer */
    margin-left: 1.5rem;
    margin-right: 1.5rem;
}

/* Desktop ≥ 992px → trait pleine largeur (comme le footer-top) */
@media (min-width: 992px) {
    .footer-line {
        margin-left: 0;
        margin-right: 0;
    }
}

/* Tablette 768–991px → même marge réduite que le footer-top */
@media (max-width: 1140px) {
    .footer-line {
        margin-left: 1.5rem !important;
        margin-right: 1.5rem !important;
    }
}

/* Mobile ≤ 767px → même marge que le footer-top */
@media (max-width: 767px) {
    .footer-line {
        margin-left: 1.5rem !important;
        margin-right: 1.5rem !important;
    }
}

/* Très petits écrans ≤ 480px → même marge réduite que le footer-top */
@media (max-width: 480px) {
    .footer-line {
        margin-left: 1rem !important;
        margin-right: 1rem !important;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8312f8d */.footer-bottom {
    justify-content: space-between;
    align-items: center;
    padding-bottom: 2.5em;
    display: flex;
    
}
.footer-b-left {
    column-gap: 2em;
    row-gap: 2em;
    justify-content: flex-start;
    align-items: center;
    display: flex;
}
.footer-text._80
 {
    opacity: 0.8;
}
.footer-b-right {
    column-gap: 1.5em;
    row-gap: 1.5em;
    justify-content: flex-end;
    align-items: center;
    display: flex;
}

@media (min-width: 768px) and (max-width: 1140px) {
  .footer-bottom {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
    gap: 2rem;
  }
  
  .footer-b-left,
  .footer-b-right {
    gap: 1.5rem;
  }

  .footer-text._80 {
    font-size: 0.9375em;   /* légèrement plus petit que desktop */
  }
}
/* ==================== FOOTER-BOTTOM – MOBILE ==================== */
@media (max-width: 767px) {
  .footer-bottom {
    flex-direction: column !important;     /* passe en colonne */
    gap: 1.5rem !important;                /* espace vertical propre */
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
    text-align: center;                    /* tout centré */
  }

  .footer-b-left,
  .footer-b-right {
    justify-content: center !important;    /* plus de flex-start/flex-end */
    width: 100%;
  }

  /* Les deux textes du gauche l’un sous l’autre sur très petit écran */
  .footer-b-left {
    flex-direction: column;
    gap: 0.5rem;
  }

  /* Les deux liens légaux l’un à côté de l’autre mais centrés */
  .footer-b-right {
    gap: 2rem;
  }
}

/* iPhone SE et très petits écrans */
@media (max-width: 380px) {
  .footer-bottom {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    gap: 1.2rem !important;
  }
  .footer-text._80 {
    font-size: 0.875em;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c0f28bf */@media (min-width: 1280px) and (max-width: 1280px) {
  .elementor-619 .elementor-element.elementor-element-c0f28bf{
      padding-left: 74px;
      padding-right: 64px;
  }
}

@media (min-width: 1300px) and (max-width: 1400px) {
  .elementor-619 .elementor-element.elementor-element-c0f28bf .e-con-inner{
         max-width: 1440px;
    padding: 20px 64px;
  }
}
@media (min-width: 1000px)  {
    .elementor-619 .elementor-element.elementor-element-c0f28bf .e-con-inner {
       padding-top:5em;
    }
}/* End custom CSS */