.elementor-416 .elementor-element.elementor-element-507f4c3d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-heading .elementor-heading-title{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-416 .elementor-element.elementor-element-259cca7e{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-416 .elementor-element.elementor-element-259cca7e .elementor-heading-title{font-family:"Merriweather", Sans-serif;font-weight:600;color:#000000;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-416 .elementor-element.elementor-element-7ef6d2e7{margin:40px 40px calc(var(--kit-widget-spacing, 0px) + 40px) 40px;padding:0px 0px 0px 0px;text-align:left;color:#000000;}.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-416 .elementor-element.elementor-element-56eb6437 .elementor-button{font-family:"Merriweather", Sans-serif;font-weight:500;}#elementor-popup-modal-416 .dialog-widget-content{animation-duration:0s;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-416{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-416 .dialog-message{width:680px;height:auto;}#elementor-popup-modal-416 .dialog-close-button{display:flex;}

/* Start custom CSS for button, class: .elementor-element-56eb6437 *//* === Bouton RETOUR — dégradé animé #6772FF → #F14C75 + 1 seule flèche === */
.elementor-416 .elementor-element.elementor-element-56eb6437{
  --g1:#6772FF;
  --g2:#F14C75;
  --spd:2.2s;      /* ↓ plus petit = plus rapide */
  --r:999px;       /* 16px pour carré arrondi */
  --shade:0.18;    /* voile sombre pour contraste du texte (0–.28) */
}

@keyframes moveGrad{
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}

/* Base bouton */
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link{
  position:relative !important;
  display:inline-flex !important;
  align-items:center; justify-content:center;
  padding:14px 22px !important;
  border:0 !important; border-radius:var(--r) !important;
  overflow:hidden !important; cursor:pointer;

  /* 2 couches : voile sombre + dégradé animé (6772FF → F14C75) */
  background-image:
    linear-gradient(rgba(0,0,0,var(--shade)), rgba(0,0,0,var(--shade))),
    linear-gradient(90deg, var(--g1), var(--g2), var(--g1)) !important;
  background-size: auto, 300% 300% !important;
  background-position: 0 0, 0% 50% !important;
  animation: moveGrad var(--spd) linear infinite !important;

  color:#fff !important; font-weight:800 !important; letter-spacing:.3px; line-height:1.2 !important;
  box-shadow:0 10px 22px rgba(25,33,78,.28);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

/* Nettoyage des anciens fallbacks (évite la double flèche) */
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button .elementor-button-text::before,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link .elementor-button-text::before,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button > span:first-child::before,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link > span:first-child::before{ content:none !important; }

/* Ajoute UNE seule flèche à gauche sur le bouton lui-même */
@keyframes arrowPulse{ 0%,100%{transform:translateY(-50%) translateX(0)} 50%{transform:translateY(-50%) translateX(-6px)} }
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button::before,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link::before{
  content:"←";
  position:absolute; left:12px; top:50%;
  transform:translateY(-50%);
  font-weight:900; color:#fff; opacity:.95; z-index:2;
  animation: arrowPulse 1.2s ease-in-out infinite;
}

/* Espace pour la flèche */
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button .elementor-button-text,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link .elementor-button-text,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button > span:first-child,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link > span:first-child{
  padding-left:28px;
}

/* Hover */
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button:hover,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link:hover{
  filter:brightness(1.06) saturate(1.05);
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(25,33,78,.35);
}

/* Accessibilité */
@media (prefers-reduced-motion: reduce){
  .elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button, .elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link{ animation:none !important; }
  .elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button::before, .elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link::before{ animation:none !important; }
}
/* Rapprocher la flèche du texte */
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button::before,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link::before{
  left: 8px;            /* avant 12px */
  font-size: 1em;       /* option : taille cohérente */
}

.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button .elementor-button-text,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link .elementor-button-text,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button > span:first-child,
.elementor-416 .elementor-element.elementor-element-56eb6437 .elementor-button-link > span:first-child{
  padding-left: 22px;   /* avant 28px */
}

/* (option) animation un peu plus courte, sinon la flèche part trop loin */
@keyframes arrowPulse{ 
  0%,100%{ transform:translateY(-50%) translateX(0) } 
  50%    { transform:translateY(-50%) translateX(-4px) } 
}/* End custom CSS */


