.elementor-kit-7{--e-global-color-primary:#2F5AAE;--e-global-color-secondary:#2F5AEA;--e-global-color-text:#000000;--e-global-color-accent:#2F5AAE;--e-global-color-69aa233:#FFFFFF;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-weight:500;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:#D295E0;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1366px;}.e-con{--container-max-width:1366px;}.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);}@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;}}/* Start custom CSS *//* ============================
   Variables globales (défauts)
   ============================ */
:root{
  --type-scale: 1;

  /* Titres : scale (font-size) */
  --h1-scale: 1;  --h2-scale: 1;  --h3-scale: 1;  --h4-scale: 1;  --h5-scale: 1;
  /* Titres : line-height scale */
  --h1-lh-scale: 1;  --h2-lh-scale: 1;  --h3-lh-scale: 1;  --h4-lh-scale: 1;  --h5-lh-scale: 1;

  /* Paragraphes : scale (font-size) + line-height */
  --p-scale: 1;
  --p-lh-scale: 1;
}

/* ============================
   TITRES (clamps d'origine + scales)
   ============================ */

h1 {
  font-size: calc(
    clamp(
      24px,
      calc(24px + (40 - 24) * ((min(2000px, 100vw) - 300px) / (2000 - 300))),
      calc(40px + (50 - 40) * ((min(3000px, 100vw) - 2000px) / (3000 - 2000)))
    ) * var(--type-scale) * var(--h1-scale)
  ) !important;

  line-height: calc(
    clamp(
      30px,
      calc(30px + (70 - 30) * ((100vw - 300px) / (3000 - 300))),
      70px
    ) * var(--h1-lh-scale)
  ) !important;
}

h2 {
  font-size: calc(
    clamp(19px, calc(19px + (45 - 19) * ((100vw - 300px) / (3000 - 300))), 45px)
    * var(--type-scale, 1) * var(--h2-scale, 1)
  ) !important;
  line-height: calc(
    clamp(26px, calc(26px + (55 - 26) * ((100vw - 300px) / (3000 - 300))), 55px)
    * var(--h2-lh-scale, 1)
  ) !important;
}

h3 {
  font-size: calc(
    clamp(16px, calc(16px + (40 - 16) * ((100vw - 300px) / (3000 - 300))), 40px)
    * var(--type-scale, 1) * var(--h3-scale, 1)
  ) !important;
  line-height: calc(
    clamp(24px, calc(24px + (50 - 24) * ((100vw - 300px) / (3000 - 300))), 50px)
    * var(--h3-lh-scale, 1)
  ) !important;
}


h4 {
  font-size: calc(
    clamp(15px, calc(15px + (35 - 15) * ((100vw - 300px) / (3000 - 300))), 35px)
    * var(--type-scale, 1) * var(--h4-scale, 1)
  ) !important;
  line-height: calc(
    clamp(22px, calc(22px + (45 - 22) * ((100vw - 300px) / (3000 - 300))), 45px)
    * var(--h4-lh-scale, 1)
  ) !important;
}

h5 {
  font-size: calc(
    clamp(14px, calc(14px + (30 - 14) * ((100vw - 300px) / (3000 - 300))), 30px)
    * var(--type-scale, 1) * var(--h5-scale, 1)
  ) !important;
  line-height: calc(
    clamp(20px, calc(20px + (40 - 20) * ((100vw - 300px) / (3000 - 300))), 40px)
    * var(--h5-lh-scale, 1)
  ) !important;
}

/* ----------------------------
   VARIANTES COMPACTES DES TITRES
   ---------------------------- */

.h1small {
  --h1-scale: 0.85;
  --h1-lh-scale: 0.9;
}

.h2small {
  --h2-scale: 0.85;
  --h2-lh-scale: 0.9;
}

.h3small {
  --h3-scale: 0.85;
  --h3-lh-scale: 0.9;
}

.h4small {
  --h4-scale: 0.85;
  --h4-lh-scale: 0.9;
}

.h5small {
  --h5-scale: 0.85;
  --h5-lh-scale: 0.9;
}


/* ----------------------------
   VARIANTES BIG DES TITRES (+20%)
   ---------------------------- */

.h1big {
  --h1-scale: 1.2;
  --h1-lh-scale: 1.2;
}

.h2big {
  --h2-scale: 1.2;
  --h2-lh-scale: 1.2;
}

.h3big {
  --h3-scale: 1.2;
  --h3-lh-scale: 1.2;
}

.h4big {
  --h4-scale: 1.2;
  --h4-lh-scale: 1.2;
}

.h5big {
  --h5-scale: 1.2;
  --h5-lh-scale: 1.2;
}

/* =========================================
   PARAGRAPHES (toutes variantes + p-scale)
   ========================================= */

/* gabarits “paragraphehX” */
.paragrapheh1 p {
  font-size: calc(
    clamp(
      24px,
      calc(24px + (40 - 24) * ((min(2000px, 100vw) - 300px) / (2000 - 300))),
      calc(40px + (50 - 40) * ((min(3000px, 100vw) - 2000px) / (3000 - 2000)))
    ) * var(--p-scale, 1)
  ) !important;

  line-height: calc(
    clamp(
      30px,
      calc(30px + (70 - 30) * ((100vw - 300px) / (3000 - 300))),
      70px
    ) * var(--p-lh-scale, 1)
  ) !important;
}

.paragrapheh2 p {
  font-size: calc(
    clamp(19px, calc(19px + (45 - 19) * ((100vw - 300px) / (3000 - 300))), 45px)
    * var(--p-scale, 1)
  ) !important;
  line-height: calc(
    clamp(26px, calc(26px + (55 - 26) * ((100vw - 300px) / (3000 - 300))), 55px)
    * var(--p-lh-scale, 1)
  ) !important;
}

.paragrapheh3 p {
  font-size: calc(
    clamp(16px, calc(16px + (40 - 16) * ((100vw - 300px) / (3000 - 300))), 40px)
    * var(--p-scale, 1)
  ) !important;
  line-height: calc(
    clamp(24px, calc(24px + (50 - 24) * ((100vw - 300px) / (3000 - 300))), 50px)
    * var(--p-lh-scale, 1)
  ) !important;
}

.paragrapheh4 p {
  font-size: calc(
    clamp(15px, calc(15px + (35 - 15) * ((100vw - 300px) / (3000 - 300))), 35px)
    * var(--p-scale, 1)
  ) !important;
  line-height: calc(
    clamp(22px, calc(22px + (45 - 22) * ((100vw - 300px) / (3000 - 300))), 45px)
    * var(--p-lh-scale, 1)
  ) !important;
}

.paragrapheh5 p {
  font-size: calc(
    clamp(14px, calc(14px + (30 - 14) * ((100vw - 300px) / (3000 - 300))), 30px)
    * var(--p-scale, 1)
  ) !important;
  line-height: calc(
    clamp(20px, calc(20px + (40 - 20) * ((100vw - 300px) / (3000 - 300))), 40px)
    * var(--p-lh-scale, 1)
  ) !important;
}

/* variante extra-large (appliquée à p + li) */
.paragrapheextralarge p,
.paragrapheextralarge li {
  font-size: calc(
    clamp(
      35.4px,
      calc(35.4px + (54.7 - 35.4) * ((min(2000px, 100vw) - 300px) / (2000 - 300))),
      calc(54.7px + (67.6 - 54.7) * ((min(3000px, 100vw) - 2000px) / (3000 - 2000)))
    ) * var(--p-scale, 1)
  ) !important;
  line-height: calc(
    clamp(
      35.4px,
      calc(35.4px + (54.7 - 35.4) * ((min(2000px, 100vw) - 300px) / (2000 - 300))),
      calc(54.7px + (67.6 - 54.7) * ((min(3000px, 100vw) - 2000px) / (3000 - 2000)))
    ) * var(--p-lh-scale, 1)
  ) !important;
}

/* variantes p/li dimensionnelles */
.paragraphebig p,
.paragraphebig li {
  font-size: calc(
    clamp(13px, calc(13px + (28 - 13) * ((100vw - 300px) / (3000 - 300))), 28px)
    * var(--p-scale, 1)
  ) !important;
  line-height: calc(
    clamp(18px, calc(18px + (38 - 18) * ((100vw - 300px) / (3000 - 300))), 38px)
    * var(--p-lh-scale, 1)
  ) !important;
}

.paragraphelarge p,
.paragraphelarge li {
  font-size: calc(
    clamp(12.8px, calc(12.8px + (25 - 12.8) * ((100vw - 300px) / (3000 - 300))), 25px)
    * var(--p-scale, 1)
  ) !important;
  line-height: calc(
    clamp(16px, calc(16px + (35 - 16) * ((100vw - 300px) / (3000 - 300))), 35px)
    * var(--p-lh-scale, 1)
  ) !important;
}

.paragraphenormal p,
.paragraphenormal li {
  font-size: calc(
    clamp(12.5px, calc(12.5px + (22 - 12.5) * ((100vw - 300px) / (3000 - 300))), 22px)
    * var(--p-scale, 1)
  ) !important;
  line-height: calc(
    clamp(16px, calc(16px + (30 - 16) * ((100vw - 300px) / (3000 - 300))), 30px)
    * var(--p-lh-scale, 1)
  ) !important;
}

.paragraphesmall p,
.paragraphesmall li {
  font-size: calc(
    clamp(12.3px, calc(12.3px + (20 - 12.3) * ((100vw - 300px) / (3000 - 300))), 20px)
    * var(--p-scale, 1)
  ) !important;
  line-height: calc(
    clamp(15px, calc(15px + (27 - 15) * ((100vw - 300px) / (3000 - 300))), 27px)
    * var(--p-lh-scale, 1)
  ) !important;
}

.paragraphexsmall p,
.paragraphexsmall li {
  font-size: calc(
    clamp(12px, calc(12px + (18 - 12) * ((100vw - 300px) / (3000 - 300))), 18px)
    * var(--p-scale, 1)
  ) !important;
  line-height: calc(
    clamp(15px, calc(15px + (25 - 15) * ((100vw - 300px) / (3000 - 300))), 25px)
    * var(--p-lh-scale, 1)
  ) !important;
}


/* Taille de la police des boutons responsive */
.elementor-button-text,
.elementor-button-icon svg { font-size: 12px !important; }

@media (min-width: 400px) and (max-width: 999.98px) {
  .elementor-button-text,
  .elementor-button-icon svg {
    font-size: calc(12px + (13 - 12) * ((100vw - 400px) / (1000 - 400))) !important;
  }
}

@media (min-width: 1000px) and (max-width: 1999.98px) {
  .elementor-button-text,
  .elementor-button-icon svg {
    font-size: calc(13px + (18 - 13) * ((100vw - 1000px) / (2000 - 1000))) !important;
  }
}

@media (min-width: 2000px) and (max-width: 2999.98px) {
  .elementor-button-text,
  .elementor-button-icon svg {
    font-size: calc(18px + (20 - 18) * ((100vw - 2000px) / (3000 - 2000))) !important;
  }
}

@media (min-width: 3000px) {
  .elementor-button-text,
  .elementor-button-icon svg { font-size: 20px !important; }
}



.elementor { overflow-x: hidden; }/* End custom CSS */