.elementor-12227 .elementor-element.elementor-element-2fe864cb{--display:flex;}.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars{background-color:var( --e-global-color-7971729 );--e-floating-bars-announcement-text-color:var( --e-global-color-1512607 );--e-floating-bars-cta-button-text-color:#FFFFFF;--e-floating-bars-cta-button-bg-color:var( --e-global-color-040dc27 );--e-floating-bars-cta-button-text-color-hover:var( --e-global-color-7971729 );--e-floating-bars-cta-button-bg-color-hover:var( --e-global-color-1512607 );--e-floating-bars-cta-button-border-color-hover:var( --e-global-color-1512607 );--e-floating-bars-cta-button-border-width:1px;--e-floating-bars-cta-button-border-color:var( --e-global-color-1512607 );--e-floating-bars-cta-button-padding-block-end:8px;--e-floating-bars-cta-button-padding-block-start:8px;--e-floating-bars-cta-button-padding-inline-end:20px;--e-floating-bars-cta-button-padding-inline-start:20px;--e-floating-bars-close-button-color:var( --e-global-color-1512607 );justify-content:start;--e-floating-bars-elements-gap:20px;--e-floating-bars-elements-padding-block-end:12px;--e-floating-bars-elements-padding-block-start:12px;--e-floating-bars-elements-padding-inline-end:16px;--e-floating-bars-elements-padding-inline-start:16px;}.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars__announcement-text{font-family:"Lexend", Sans-serif;font-size:24px;font-weight:700;line-height:1.2em;text-align:start;}.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars__cta-button{font-family:var( --e-global-typography-2556b30-font-family ), Sans-serif;font-size:var( --e-global-typography-2556b30-font-size );font-weight:var( --e-global-typography-2556b30-font-weight );}.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars__close-button{inset-inline-end:10px;}.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars__cta-button-container{justify-content:start;}@media(max-width:1260px){.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars__announcement-text{font-size:20px;}.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars__cta-button{font-size:var( --e-global-typography-2556b30-font-size );}.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars{--e-floating-bars-elements-padding-block-end:5px;--e-floating-bars-elements-padding-block-start:5px;--e-floating-bars-elements-padding-inline-end:15px;--e-floating-bars-elements-padding-inline-start:0px;}}@media(max-width:767px){.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars__announcement-text{font-size:16px;}.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars__cta-button{font-size:var( --e-global-typography-2556b30-font-size );}.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars{--e-floating-bars-cta-button-padding-block-end:5px;--e-floating-bars-cta-button-padding-block-start:5px;--e-floating-bars-cta-button-padding-inline-end:10px;--e-floating-bars-cta-button-padding-inline-start:10px;--e-floating-bars-elements-padding-block-end:5px;--e-floating-bars-elements-padding-block-start:5px;--e-floating-bars-elements-padding-inline-end:15px;--e-floating-bars-elements-padding-inline-start:00px;}}/* Start custom CSS for floating-bars-var-1, class: .elementor-element-72c9baf7 *//* --- Barre : comportement de base + apparition/disparition au scroll --- */
.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars {
  /* Hauteur figée dès le premier rendu (évite le saut au chargement) */
  height: 73.5px;
  min-height: 73.5px;
  overflow: hidden;
  transition: transform 0.3s ease, opacity 0.3s ease;
  will-change: transform;
}

.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars.cta-bar-hidden {
  transform: translateY(-100%);
  opacity: 0;
  pointer-events: none;
}

/* Empêche le texte de passer sur plusieurs lignes avant que le marquee ne démarre */
.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars .e-floating-bars__announcement-text {
  white-space: nowrap;
}

/* Retire le contour de focus automatique posé par Elementor (role="alertdialog") */
.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars:focus,
.elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

/* --- Marquee (texte + bouton défilant) --- */
.elementor-12227 .elementor-element.elementor-element-72c9baf7 .cta-marquee {
  display: flex;
  overflow: hidden;
  width: 100%;
}

.elementor-12227 .elementor-element.elementor-element-72c9baf7 .cta-marquee__content {
  flex-shrink: 0;
  display: flex;
  min-width: 100%;
  align-items: center;
  animation: cta-scroll 50s linear infinite;
}

.elementor-12227 .elementor-element.elementor-element-72c9baf7 .cta-marquee:hover .cta-marquee__content {
  animation-play-state: paused;
}

.elementor-12227 .elementor-element.elementor-element-72c9baf7 .cta-marquee-item {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 0 50px;
  white-space: nowrap;
  flex-shrink: 0;
}

@keyframes cta-scroll {
  from { transform: translateX(0); }
  to   { transform: translateX(-100%); }
}

/* Hauteurs de la barre selon l'écran */
@media (max-width: 1024px) {
  .elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars { height: 55px; min-height: 55px; }
}

/* Fix mobile : évite la ligne de grille vide qui gonflait la hauteur */
@media (max-width: 767px) {
  .elementor-12227 .elementor-element.elementor-element-72c9baf7 .e-floating-bars {
    height: 48px;
    min-height: 48px;
    display: flex !important;
    align-items: center !important;
    row-gap: 0 !important;
  }
}

/* --- Header : placé sous la barre dès le premier rendu, puis suit la barre via transform --- */
#site-header {
  --bar-h: 73.5px;
  top: var(--bar-h) !important;
  margin-top: -1px;
  z-index: 99; /* passe au-dessus du hero, sinon son fond est recouvert par la photo */
  transition: transform 0.1s ease;
}

@media (max-width: 1024px) {
  #site-header { --bar-h: 55px; }
}
@media (max-width: 767px) {
  #site-header { --bar-h: 48px; }
}

#site-header.cta-bar-hidden-header {
  transform: translateY(var(--bar-offset, 0px));
}/* End custom CSS */