.elementor-kit-6{--e-global-color-primary:#4BAAEB;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#8365C7;--e-global-color-d3d31d3:#A279FF;--e-global-color-0c5e145:#C9B9A7;--e-global-color-a68ef5e:#DBCDBD;--e-global-color-55cdf45:#0097FF;--e-global-color-7f594bb:#1657E8;--e-global-color-a9bb019:#898DA2;--e-global-color-b36c736:#021E5F;--e-global-color-8755cda:#1D2B4B;--e-global-color-e7e3cfc:#1D2944;--e-global-color-2098d35:#1D2944;--e-global-color-cec2d24:#394A70;--e-global-color-ff19b18:#2D3548;--e-global-color-3867c96:#40485C;--e-global-color-88c3ac4:#626C7A;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:200;--e-global-typography-secondary-font-family:"Roboto";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;color:#CDD5E0;font-size:15px;font-weight:400;line-height:24px;letter-spacing:0.5px;background-image:url("https://gymcom.fr/wp-content/uploads/2025/07/pattern-4.png");--e-page-transition-entrance-animation:e-page-transition-slide-out-right;--e-page-transition-exit-animation:e-page-transition-slide-in-left;--e-page-transition-animation-duration:700ms;--e-preloader-animation-duration:1500ms;--e-preloader-delay:0ms;}.elementor-kit-6 a{color:var( --e-global-color-55cdf45 );}.elementor-kit-6 a:hover{color:#A279FF;}.elementor-kit-6 h1{color:var( --e-global-color-88c3ac4 );font-family:"Roboto", Sans-serif;font-size:70px;text-transform:uppercase;}.elementor-kit-6 h2{font-family:"Roboto", Sans-serif;}.elementor-kit-6 h3{color:#DFDFDF;font-family:"Overpass", Sans-serif;font-size:22px;font-weight:400;}.elementor-kit-6 h4{font-family:"Roboto", Sans-serif;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#A279FF00;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:#0097FF;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.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);}.elementor-kit-6 e-page-transition{background-color:#2D3548;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}.elementor-kit-6{--e-preloader-width:100%;}}/* Start custom CSS *//* ------ Force fixed background 1439 -----*/





/* ----------------------------------------*/

/* PlusAddOn bug bouton hover-focus */
.elementor-kit-6 button:hover, .elementor-kit-6 button:focus {
    background-color: #ffffff00 !important;
}

/* NO cookies Mob  */
@media only screen and (max-width: 768px) {
#cmplz-cookiebanner-container .cmplz-cookiebanner {
    display: none !important;
}
}

/*scroll bar color */
* {
    scrollbar-color: #c9b9a7 black;
}
/* list */
li {
    margin-left: -20px;
}

/* ------------- Anim Universel Elements --------------*/
/* Masque les éléments avant anim (hors éditeur) */
body:not(.elementor-editor-active) [data-anim] {
  /* Les états init s'appliquent en inline par JS, on évite ici de casser la mise en page */
}

/* Optionnel : fluidité si fallback IO sans GSAP */
[data-anim] * {
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
}




/* ------------------ Anim Universel Mots -------------------*/
/* ================== Anim Texte — BASE ================== */
/* Masquer au chargement hors éditeur */
body:not(.elementor-editor-active) .anim-texte,
body:not(.elementor-editor-active) .anim-texte-hover {
  visibility: hidden;
}

/* Éléments animés (lettres & mots) */
.anim-texte .char-anim,
.anim-texte .mot-anim,
.anim-texte-hover .char-anim,
.anim-texte-hover .mot-anim {
  will-change: transform, opacity;
}

/* Lettres = inline-block (indispensable pour l’anim par lettre) */
.anim-texte .char-anim,
.anim-texte-hover .char-anim {
  display: inline-block;
}

/* Mots : une unité entière non coupée, mais retour à la ligne ENTRE les mots */
.anim-texte .mot-anim,
.anim-texte-hover .mot-anim {
  display: inline-block;   /* chaque mot est une boîte */
  white-space: nowrap;     /* ne casse pas à l’intérieur du mot */
}

/* Mode "lettre" : wrapper par mot pour empêcher les casses en mobile */
.anim-texte .mot-wrap,
.anim-texte-hover .mot-wrap {
  display: inline-block;
  white-space: nowrap;     /* verrouille la casse à l’intérieur du mot */
}

/* Conteneurs : autorisent le wrap naturel entre les boîtes-mots */
.anim-texte,
.anim-texte-hover {
  white-space: normal;     /* retours à la ligne “normaux” */
  word-break: normal;      /* ne force pas la casse */
  overflow-wrap: normal;   /* pas de coupure automatique */
  hyphens: none;           /* pas de césure avec tiret */
  -webkit-hyphens: none;
  -ms-hyphens: none;
}

/* Bloc complet (mode "bloc") reste animable */
.anim-texte .bloc-anim,
.anim-texte-hover .bloc-anim {
  display: inline-block;
  will-change: transform, opacity;
}

/* ================== Wrappers (masques) ================== */
/* IMPORTANT : ne pas écraser la hauteur des lignes (line-height:0 = casse le multilignes) */
.anim-texte-wrapper,
.anim-texte-hover-wrapper {
  overflow: hidden;
  display: block;          /* ou flex selon besoin */
  line-height: inherit;    /* garde la hauteur de ligne naturelle */
  border: 0;               /* neutralise le wrapper de test */
}

/* ================== Sécurité globale anti-césure ================== */
.anim-texte, .anim-texte *,
.anim-texte-hover, .anim-texte-hover * {
  hyphens: none;
  -webkit-hyphens: none;
  -ms-hyphens: none;
}

/* ================== (Option) Si parent en flex bloque le wrap ================== */
/*
.anim-texte,
.anim-texte-hover {
  display: flex;
  flex-wrap: wrap;
}
*/

/* ================== (Option) Thèmes agressifs sur mobile ================== */
/* Désactive les casses forcées en smartphone si un thème impose break-word */
@media (max-width: 768px) {
  .anim-texte, .anim-texte * ,
  .anim-texte-hover, .anim-texte-hover * {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
  }
}









/* ----------- Letter Scramble Safe Defaults (FIX) ------------ */
/* ================== Letter Scramble — SAFE DEFAULTS ================== */

/* Texte visible par défaut */
.letter-scramble { 
  visibility: visible; 
}

/* Pendant l’anim, on masque uniquement les .char (pas les .word) */
body:not(.elementor-editor-active) .letter-scramble.is-scrambling .char {
  opacity: 0;
  will-change: opacity, transform;
}

/* Éditeur Elementor : jamais masqué */
body.elementor-editor-active .letter-scramble,
body.elementor-editor-active .letter-scramble .char,
body.elementor-editor-active .letter-scramble .word {
  opacity: 1 !important;
  visibility: visible !important;
}

/* ================== Anti-césure & wrap correct ================== */

/* Conteneur : autoriser les retours à la ligne naturels (entre mots) */
.letter-scramble {
  white-space: normal;
  word-break: normal;       /* ne force pas la casse */
  overflow-wrap: normal;    /* pas de coupure automatique */
  hyphens: none;
  -webkit-hyphens: none;
  -ms-hyphens: none;
}

/* Les mots (wrappers de SplitType) : ne jamais casser à l’intérieur */
.letter-scramble .word {
  display: inline-block;
  white-space: nowrap;      /* garde le mot entier sur une seule "boîte" */
}

/* Les lettres : boîtes animables (opacité/transform) */
.letter-scramble .char {
  display: inline-block;    /* requis pour les transforms/opacity fine-grained */
  will-change: transform, opacity;
}

/* ================== Accessibilité ================== */
@media (prefers-reduced-motion: reduce) {
  .letter-scramble.is-scrambling .char {
    opacity: 1 !important;
  }
}

/* ================== Thèmes agressifs sur mobile (sécurité) ================== */
@media (max-width: 768px) {
  .letter-scramble, 
  .letter-scramble * {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
  }
}

/* ================== (Option) Parental flex qui bloquerait le wrap ================== */
/*
.parent-flex-autorise-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
}
*/








/*------- container reveal  -------*/
/* WRAPPER – masque externe */
.reveal-wrapper {
  overflow: hidden;
  width: 100%;
  display: block;
}
/* ÉDITION ELEMENTOR – pour voir le contenu dans l’admin */
body.elementor-editor-active .reveal-element-de-gauche, body.elementor-editor-active .reveal-wrapper .reveal-element-centre-rond {
  clip-path: none !important;
  -webkit-clip-path: none !important;
  opacity: 1 !important;
}
/* --- de GAUCHE --- */
/* ÉLÉMENT INTÉRIEUR – contenu à révéler */
.reveal-element-de-gauche {
  clip-path: inset(0 100% 0 0);
  -webkit-clip-path: inset(0 100% 0 0);
  opacity: 0;
  transition: none;
}
/* --- du CENTRE en CERCLE --- */
/* ÉLÉMENT INTÉRIEUR – contenu à révéler (cercle centré de rayon 0) */
.reveal-element-centre-rond {
  clip-path: circle(0% at 50% 50%);
  -webkit-clip-path: circle(0% at 50% 50%);
  opacity: 0;
  transition: none;
}/* End custom CSS */