.elementor-kit-6{--e-global-color-primary:#FA0303;--e-global-color-secondary:#FF4D00;--e-global-color-text:#FA7403;--e-global-color-accent:#FA0303;--e-global-color-136b48a:#EAEAEA;--e-global-color-ddfbd06:#141414;--e-global-color-d475cfe:#303030;--e-global-color-0509a89:#C9CED6;--e-global-color-a33be3c:#4A4F55;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-d29015a-font-family:"Inter";--e-global-typography-d29015a-font-size:clamp(2.5rem, 0.5rem + 6.5vw, 14rem);--e-global-typography-d29015a-font-weight:400;--e-global-typography-d29015a-line-height:1em;--e-global-typography-d29015a-letter-spacing:-0.075em;--e-global-typography-524dcc5-font-family:"Inter";--e-global-typography-524dcc5-font-size:clamp(1.5rem, 0.8rem + 1vw, 2.8rem);--e-global-typography-524dcc5-font-weight:400;--e-global-typography-524dcc5-line-height:1.3em;--e-global-typography-524dcc5-letter-spacing:-0.065em;--e-global-typography-b87d0fd-font-family:"Inter";--e-global-typography-b87d0fd-font-size:clamp(4.3rem, 4.18rem + 0.07vw, 5rem);--e-global-typography-b87d0fd-font-weight:400;--e-global-typography-b87d0fd-letter-spacing:-1px;--e-global-typography-3a5b02c-font-family:"Inter";--e-global-typography-3a5b02c-font-size:clamp(1.6rem, 1rem + 1.5vw, 4rem);--e-global-typography-3a5b02c-font-weight:400;--e-global-typography-3a5b02c-letter-spacing:-2.3px;--e-global-typography-cc63740-font-family:"Inter";--e-global-typography-cc63740-font-size:clamp(1rem, 0.85rem + 0.35vw, 1.35rem);--e-global-typography-cc63740-font-weight:400;--e-global-typography-57e0d41-font-family:"Inter";--e-global-typography-57e0d41-font-size:clamp(0.9rem, 0.8rem + 0.3vw, 1.1rem);--e-global-typography-57e0d41-font-weight:400;--e-global-typography-57e0d41-text-transform:uppercase;--e-global-typography-57e0d41-letter-spacing:-1px;--e-global-typography-9501d8a-font-family:"Inter";--e-global-typography-9501d8a-font-size:clamp(1rem, 0.9rem + 0.4vw, 1.3rem);--e-global-typography-9501d8a-font-weight:400;--e-global-typography-9501d8a-text-decoration:underline;--e-global-typography-9501d8a-line-height:1em;--e-global-typography-9501d8a-letter-spacing:-0.5px;--e-global-typography-f33a9fb-font-family:"Inter";--e-global-typography-f33a9fb-font-size:7.2rem;--e-global-typography-f33a9fb-font-weight:500;--e-global-typography-f33a9fb-text-transform:uppercase;--e-global-typography-f33a9fb-line-height:0.75em;--e-global-typography-f33a9fb-letter-spacing:-10px;--e-global-typography-3e577bd-font-family:"Inter";--e-global-typography-3e577bd-font-size:clamp(1.2rem, 0.95rem + 0.45vw, 1.6rem);--e-global-typography-3e577bd-font-weight:500;--e-global-typography-3e577bd-text-transform:uppercase;--e-global-typography-3e577bd-letter-spacing:-0.8px;--e-global-typography-9daf2b6-font-family:"Inter";--e-global-typography-9daf2b6-font-size:clamp(3rem, 1rem + 2.5vw, 7rem);--e-global-typography-9daf2b6-font-weight:500;--e-global-typography-9daf2b6-letter-spacing:-1.8px;--e-global-typography-5a131fe-font-family:"Inter";--e-global-typography-5a131fe-font-size:clamp(2rem, 1rem + 3vw, 6rem);--e-global-typography-5a131fe-font-weight:400;--e-global-typography-5a131fe-letter-spacing:-0.055em;background-color:var( --e-global-color-ddfbd06 );color:var( --e-global-color-136b48a );font-family:var( --e-global-typography-cc63740-font-family ), Sans-serif;font-size:var( --e-global-typography-cc63740-font-size );font-weight:var( --e-global-typography-cc63740-font-weight );}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 h1{color:var( --e-global-color-136b48a );font-family:var( --e-global-typography-d29015a-font-family ), Sans-serif;font-size:var( --e-global-typography-d29015a-font-size );font-weight:var( --e-global-typography-d29015a-font-weight );line-height:var( --e-global-typography-d29015a-line-height );letter-spacing:var( --e-global-typography-d29015a-letter-spacing );}.elementor-kit-6 h2{color:var( --e-global-color-136b48a );font-family:var( --e-global-typography-b87d0fd-font-family ), Sans-serif;font-size:var( --e-global-typography-b87d0fd-font-size );font-weight:var( --e-global-typography-b87d0fd-font-weight );letter-spacing:var( --e-global-typography-b87d0fd-letter-spacing );}.elementor-kit-6 h3{color:var( --e-global-color-136b48a );font-family:var( --e-global-typography-3a5b02c-font-family ), Sans-serif;font-size:var( --e-global-typography-3a5b02c-font-size );font-weight:var( --e-global-typography-3a5b02c-font-weight );letter-spacing:var( --e-global-typography-3a5b02c-letter-spacing );}.elementor-kit-6 h4{color:var( --e-global-color-136b48a );}.elementor-kit-6 h5{color:var( --e-global-color-136b48a );}.elementor-kit-6 h6{color:var( --e-global-color-136b48a );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:0px;padding-inline-start:0px;}@media(max-width:1024px){.elementor-kit-6{--e-global-typography-524dcc5-line-height:1.4em;font-size:var( --e-global-typography-cc63740-font-size );}.elementor-kit-6 h1{font-size:var( --e-global-typography-d29015a-font-size );line-height:var( --e-global-typography-d29015a-line-height );letter-spacing:var( --e-global-typography-d29015a-letter-spacing );}.elementor-kit-6 h2{font-size:var( --e-global-typography-b87d0fd-font-size );letter-spacing:var( --e-global-typography-b87d0fd-letter-spacing );}.elementor-kit-6 h3{font-size:var( --e-global-typography-3a5b02c-font-size );letter-spacing:var( --e-global-typography-3a5b02c-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-524dcc5-letter-spacing:-1.2px;--e-global-typography-b87d0fd-line-height:1em;--e-global-typography-3a5b02c-line-height:1em;--e-global-typography-9501d8a-line-height:0.7em;--e-global-typography-9501d8a-letter-spacing:0em;--e-global-typography-f33a9fb-font-size:5rem;--e-global-typography-3e577bd-line-height:0em;font-size:var( --e-global-typography-cc63740-font-size );}.elementor-kit-6 h1{font-size:var( --e-global-typography-d29015a-font-size );line-height:var( --e-global-typography-d29015a-line-height );letter-spacing:var( --e-global-typography-d29015a-letter-spacing );}.elementor-kit-6 h2{font-size:var( --e-global-typography-b87d0fd-font-size );letter-spacing:var( --e-global-typography-b87d0fd-letter-spacing );}.elementor-kit-6 h3{font-size:var( --e-global-typography-3a5b02c-font-size );letter-spacing:var( --e-global-typography-3a5b02c-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* === Bouton avec swap vertical du label === */
.elementor-widget-button.btn-swap .elementor-button .elementor-button-content-wrapper{
  position: relative; /* ancre l’overlay animé */
}

/* On masque visuellement le label d'origine mais on garde sa place (accessibilité OK) */
.elementor-widget-button.btn-swap .elementor-button-text{
  visibility: hidden;
}

/* Calque animé injecté par JS */
.elementor-widget-button.btn-swap .e-swap{
  position: absolute;
  left: 0; right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: inline-block;
  text-align: center;
  pointer-events: none;     /* ne bloque pas le clic */
  height: 1em;              /* fenêtre: 1 ligne */
  line-height: 1;
  overflow: hidden;
  white-space: nowrap;
}

/* Les 2 lignes superposées */
.elementor-widget-button.btn-swap .e-swap .e-line{
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  transition: transform .32s cubic-bezier(.22,.61,.36,1);
  will-change: transform;
}

/* La 2e ligne démarre sous la fenêtre */
.elementor-widget-button.btn-swap .e-swap .e-line:nth-child(2){
  transform: translate(-50%, 100%);
}

/* Interactions : hover + focus clavier */
.elementor-widget-button.btn-swap .elementor-button:hover .e-swap .e-line:first-child,
.elementor-widget-button.btn-swap .elementor-button:focus .e-swap .e-line:first-child{
  transform: translate(-50%, -100%);
}
.elementor-widget-button.btn-swap .elementor-button:hover .e-swap .e-line:nth-child(2),
.elementor-widget-button.btn-swap .elementor-button:focus .e-swap .e-line:nth-child(2){
  transform: translate(-50%, 0%);
}

/* (Optionnels) micro-améliorations de rendu */
.elementor-widget-button.btn-swap .elementor-button{
  line-height: 1.1; /* stabilise si le thème gonfle le line-height */
}
.elementor-widget-button.btn-swap .e-swap,
.elementor-widget-button.btn-swap .e-swap .e-line{
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}


/* ========= Text Reveal – générique ========= */
.text-anim-reveal{
  /* Paramètres ajustables par widget via custom CSS */
  --stagger: .08s;     /* délai entre mots */
  --duration: 1.2s;    /* durée de l'anim de chaque mot */
  --offset: 110%;      /* position de départ (vers le bas) */
  --mask-h: 1.18em;    /* hauteur du masque, liée à la taille de police */
}

/* Boîte de masque : ne touche pas à la typo du widget */
.text-anim-reveal .mask{
  display:inline-block;
  overflow:hidden;
  height:var(--mask-h);
  padding-right:.07em;          /* évite les overlaps entre mots */
  white-space:nowrap;
  vertical-align:bottom;        /* évite de couper les jambages */
}

/* Les mots animés (activés seulement quand .is-ready est présent) */
.text-anim-reveal.is-ready .word{
  display:inline-block;
  transform:translate3d(0, var(--offset), 0);
  will-change:transform;
  animation:text-reveal-up var(--duration) cubic-bezier(.77,0,.175,1) forwards;
  animation-delay: calc(var(--i) * var(--stagger));
}

/* Motion-safe */
@media (prefers-reduced-motion: reduce){
  .text-anim-reveal.is-ready .word{
    animation:none;
    transform:none;
  }
}

/* Keyframes */
@keyframes text-reveal-up {
  from { transform: translate3d(0, var(--offset), 0); }
  to   { transform: translate3d(0, 0, 0); }
}/* End custom CSS */