.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-weight:500;font-family:"Poppins", Sans-serif;font-size:15px;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 h2{font-size:clamp(34px, 3.8vw, 48px);font-weight:600;}.elementor-kit-5 h3{font-size:clamp(25px, 3.8vw, 35px);}.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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@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;}}:root { --silk-ink:#111111; --silk-black:#0B0B0B; --silk-paper:#FFFFFF; --silk-soft:#F6F6F2; --silk-muted:#666666; --silk-line:#DEDED8; --silk-yellow:#F9D500; --silk-font:Poppins; --silk-page-width:1280px; --silk-page-gutter:24px; --silk-header-width:1600px; --silk-muted-clair:#777777; }
/* Start custom CSS */@media (min-width: 768px) {
  /*#jet-mega-menu-item-387 >*/ .jet-mega-menu-mega-container {
    --jmm-submenu-width: 100vw !important;
    position: fixed !important;
    top: 110px !important;
    left: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    background: var(--silk-paper) !important;
    z-index: 9999 !important;
  }

  /*#jet-mega-menu-item-387 >*/ .jet-mega-menu-mega-container
  > .jet-mega-menu-mega-container__inner {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }
}

/* Pages hors Elementor (éditeur classique, recherche, 404) : le contenu du thème Hello (main#content.site-main)
   commence sous l'en-tête fixe de 884 (91 px en bureau, 79 px sous 1 025 px), plus une marge. */
body:not(.elementor-page) #content.site-main {
  padding-top: calc(91px + 72px);
  padding-bottom: 96px;
}
@media (max-width: 1024px) {
  body:not(.elementor-page) #content.site-main { padding-top: calc(79px + 56px); padding-bottom: 72px; }
}
@media (max-width: 767px) {
  body:not(.elementor-page) #content.site-main { padding-top: calc(79px + 40px); padding-bottom: 56px; }
}

/* Pages hors Elementor : texte harmonisé avec le site (largeur 1 260 px + marges 28 / 14 px, colonne de lecture 860 px,
   titres Poppins 400 à interlettrage serré, texte 15 px, liens noirs soulignés de jaune). */
body:not(.elementor-page) #content.site-main {
  width: 100%;
  max-width: calc(1260px + 56px);
  margin-inline: auto;
  padding-inline: 28px;
  font-family: var(--e-global-typography-text-font-family, "Poppins"), Arial, sans-serif;
  color: #444444;
}
body:not(.elementor-page) #content.site-main :is(.page-header, .page-content) { 
    max-width: 1400px; 
    
}
body:not(.elementor-page) #content.site-main h1 {
  margin: 0 0 48px;
  font-size: clamp(40px, 5vw, 64px);
  line-height: 1.02;
  font-weight: 400;
  letter-spacing: -0.047em;
  color: #111111;
  text-wrap: balance;
}
body:not(.elementor-page) #content.site-main h2 {
  margin: 56px 0 20px;
  font-size: clamp(26px, 2.6vw, 36px);
  line-height: 1.12;
  font-weight: 400;
  letter-spacing: -0.04em;
  color: #111111;
}
body:not(.elementor-page) #content.site-main h3 {
  margin: 36px 0 14px;
  font-size: 22px;
  line-height: 1.3;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: #111111;
}
body:not(.elementor-page) #content.site-main h4 { 
    margin: 28px 0 12px; font-size: 17px; line-height: 1.4; font-weight: 600; color: #111111; 
    
}
body:not(.elementor-page) #content.site-main :is(p, li) { font-size: 15px; line-height: 1.82; color: #444444; }
body:not(.elementor-page) #content.site-main p { margin: 0 0 18px; }
body:not(.elementor-page) #content.site-main :is(ul, ol) { margin: 0 0 18px; padding-left: 1.2em; }
body:not(.elementor-page) #content.site-main li { margin-bottom: 6px; }
body:not(.elementor-page) #content.site-main :is(strong, b) { font-weight: 600; color: #111111; }
body:not(.elementor-page) #content.site-main a {
  color: #111111;
  text-decoration: underline;
  text-decoration-color: #F9D500;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
  overflow-wrap: anywhere;
  transition: background-color .2s;
}
body:not(.elementor-page) #content.site-main a:hover,
body:not(.elementor-page) #content.site-main a:focus-visible { color: #111111; background-color: rgba(249, 213, 0, 0.25); }
@media (max-width: 767px) {
  body:not(.elementor-page) #content.site-main { padding-inline: 14px; }
  body:not(.elementor-page) #content.site-main h1 { margin-bottom: 32px; font-size: 38px; }
  body:not(.elementor-page) #content.site-main h2 { margin-top: 44px; font-size: 26px; }
  body:not(.elementor-page) #content.site-main h3 { font-size: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  body:not(.elementor-page) #content.site-main a { transition: none; }
}/* End custom CSS */