.elementor-kit-8{--e-global-color-primary:#0E1410;--e-global-color-secondary:#0697AC;--e-global-color-text:#FFFFFF;--e-global-color-2b68e61:#0D1B1E;--e-global-color-099a06b:#37C3D6;--e-global-color-281e1f8:#68B6C8;--e-global-color-83bc642:#000000;--e-global-color-d616ca7:#E6EFEF;--e-global-color-7eed041:#F3BAFD;--e-global-typography-primary-font-family:"Stardos Stencil";--e-global-typography-primary-font-size:2.5rem;--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Lato";--e-global-typography-text-font-size:1.25rem;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.3rem;--e-global-typography-text-letter-spacing:0.01rem;--e-global-typography-text-word-spacing:0.05rem;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;background-color:var( --e-global-color-primary );--e-page-transition-entrance-animation:e-page-transition-fade-out;--e-page-transition-animation-duration:1000ms;}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{background-color:#0697AC;font-family:"Lato", Sans-serif;font-size:1.25rem;font-weight:400;line-height:1.5rem;letter-spacing:0.01rem;word-spacing:0.05rem;color:#FFFFFF;border-style:solid;border-color:#0697AC;}.elementor-kit-8 e-page-transition{background-color:#000000;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end: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;}@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 *//* 🔓 Désactive overflow hidden pour les sections contenant le header */
.elementor-location-header,
.elementor-location-header .elementor-container,
.elementor-location-header .elementor-section {
  overflow: visible !important;
  z-index: 9999 !important;
}
/* ✅ Empêche le débordement horizontal sur mobile */
body,
.elementor-location-header {
  overflow-x: hidden;
}


/* ==========================
   TITRES - TYPO & RESPONSIVE
   ========================== */

/* ? H1 - Titre principal, en Stardos Stencil, blanc, responsive */
h1 {
    font-family: 'Stardos Stencil', sans-serif;
    font-weight: 400;
    font-size: clamp(1.6rem, 5vw, 2.5rem); /* PC: 2.5rem | Tablette: ~2rem | Mobile: 1.8rem */
    line-height: clamp(2.2rem, 4vw, 2.5rem);
    word-spacing: clamp(0.1rem, 0.5vw, 0.3rem);
    color: white;
}

/* ? H2 - Titre de second niveau, en Times New Roman, blanc, responsive */
h2 {
    font-family: 'Times New Roman', serif;
    font-weight: 400;
    font-size: clamp(1.4rem, 4vw, 2rem); /* PC: 2rem | Tablette: ~1.6rem | Mobile: 1.4rem */
    line-height: clamp(2rem, 3.5vw, 2.2rem);
    word-spacing: clamp(0.08rem, 0.4vw, 0.25rem);
    color: white;
}

/* ? H3 - Titre de troisième niveau, en Times New Roman, blanc, responsive */
h3 {
    font-family: 'Times New Roman', serif;
    font-weight: 400;
    font-size: clamp(1.4rem, 3.5vw, 1.75rem); /* PC: 1.75rem | Tablette: ~1.4rem | Mobile: 1.1rem */
    line-height: clamp(1.4rem, 3vw, 2rem);
    word-spacing: clamp(0.05rem, 0.3vw, 0.2rem);
    color: white;
}

/* ==========================
   TEXTES - PARAGRAPHES & LIENS
   ========================== */

/* ? Paragraphes - Lato, blanc, taille alignée avec les titres */
p {
    font-family: "Lato", sans-serif;
    font-weight: 400;
    font-size: clamp(1rem, 3.5vw, 1.25rem); /* PC: 1.25rem | Tablette: ~1.1rem | Mobile: 1rem */
    color: white;
    line-height: clamp(1.4rem, 3vw, 2rem);
    
    word-spacing: clamp(0.05rem, 0.3vw, 0.2rem);
    color: white;
}

/* 🌐 Interligne ordi/tablette/ecran */

/* 🌐 Ordinateurs (écrans > 1024px) */
@media (min-width: 1025px) {
  p {
    line-height: 2rem; /* Lecture confortable sur grand écran */
  }
}

/* 💻 Tablettes (601px – 1024px) */
@media (max-width: 1024px) and (min-width: 601px) {
  p {
    line-height: 2rem; /* Plus aéré pour compenser le bloc visuel plus dense */
  }
}

/* 📱 Mobiles (≤ 600px) */
@media (max-width: 600px) {
  p {
    line-height: 1.7rem; /* Aéré mais plus compact que tablette */
  }
}



/* ? Liens généraux - Responsive, soulignés et en #0999AC */
a {
    font-family: "Lato", sans-serif;
    font-weight: 400;
    font-size: clamp(1rem, 2.5vw, 1.25rem);
    color: ##0999AC;
    text-decoration: underline;
    transition: color 0.3s ease-in-out;
}

/* ? Effet au survol des liens */
a:hover {
    color: #6A6EBE;
    text-decoration: none;
}

/* ? Liens dans les paragraphes - Alignés avec le texte */
p a {
    font-size: inherit;
    font-weight: 600;
    text-decoration: underline;
    font-style: italic;
    color: 	#0999AC;
    transition: color 0.3s ease-in-out;
}

/* ? Liens dans les titres - Héritent de leur élément parent */
h1 a, h2 a, h3 a {
    font-size: inherit;
}

/* ==========================
   BOUTONS - TYPO & RESPONSIVE
   ========================== */

/* ? Boutons - Lato, demi-gras, responsive */
.button, .elementor-button {
    font-family: "Lato", sans-serif;
    font-weight: 600;
    font-size: clamp(1rem, 2.5vw, 1.25rem);
    border-width: clamp(0.8px, 0.2vw, 1px);
}

/* ? Supprime le soulignement des liens à l'intérieur des boutons */
.button a, .elementor-button a {
    text-decoration: none;
}

/* ==========================
   LISTES - TYPO & RESPONSIVE
   ========================== */

/* ? Listes (ul, ol) - Taille et indentation sur PC */
ul, ol {
    font-size: 1.25rem; /* Taille fixe pour PC */
    line-height: 2rem;
    color: white;
    margin-left: 1.5rem; /* Indentation normale sur PC */
}

/* ? Éléments de liste (li) */
li {
    font-size: 1.25rem;
    line-height: 2rem;
    color: white;
}

/* ? Liens dans les listes - Alignés avec le texte */
li a {
    font-size: 1.25rem;
    color: #0697AC;
    text-decoration: underline;
    transition: color 0.3s ease-in-out;
}

/* ? Effet au survol des liens */
li a:hover {
    color: #047089;
    text-decoration: none;
}

/* ?? TABLETTES (max 1024px) */
@media (max-width: 1024px) {
    ul, ol, li, li a {
        font-size: 1.1rem; /* Taille réduite pour tablette */
        line-height: 2.2rem;
    }
    ul, ol {
        margin-left: 1.2rem; /* Indentation légèrement réduite */
    }
}

/* ?? MOBILES (max 768px) */
@media (max-width: 768px) {
    ul, ol, li, li a {
        font-size: 1rem; /* Taille plus petite pour mobile */
        line-height: 1.6rem;
    }
    ul, ol {
        margin-left: 1rem; /* Indentation plus réduite */
    }
}

/* ==========================
   LOGO DU HEADER – VERSION RESPONSIVE
   ========================== */

.elementor-location-header .elementor-widget-image img,
.elementor-location-header .elementor-widget-theme-site-logo img {
  max-width: 280px;  /* Ajuste selon ton design */
  height: auto;      /* Conserve les proportions */
}

/* Tablettes (<= 1024px) */
@media (max-width: 1024px) {
  .elementor-location-header .elementor-widget-image img,
  .elementor-location-header .elementor-widget-theme-site-logo img {
    max-width: 280px;
  }
}

/* Mobiles (<= 768px) */
@media (max-width: 768px) {
  .elementor-location-header .elementor-widget-image img,
  .elementor-location-header .elementor-widget-theme-site-logo img {
    max-width: 200px;
  }
}




/* -----------------------------------------
   LOGO DU FOOTER – VERSION RESPONSIVE
   Ce code ajuste uniquement la TAILLE du logo
   sans affecter l’alignement ou la mise en page.
------------------------------------------ */

/* Desktop (écrans larges ≥ 1025px) */
.elementor-location-footer .elementor-widget-image img {
  max-width: 340px;  /* Largeur maximale du logo */
  height: auto;      /* Garde les proportions originales */
  /* Pas de display ni margin ici pour ne pas forcer le centrage */
}

/* Tablettes (<= 1024px) */
@media (max-width: 1024px) {
  .elementor-location-footer .elementor-widget-image img {
    max-width: 280px; /* Réduction douce pour tablettes */
  }
}

/* Mobiles standard (<= 768px) */
@media (max-width: 768px) {
  .elementor-location-footer .elementor-widget-image img {
    max-width: 200px; /* Plus petit pour écrans de téléphone */
  }
}


/* ==========================
   PHRASE D’ACCROCHE - FOOTER (RESPONSIVE)
   ========================== */

.footer-tagline {
  font-family: 'Times New Roman', Times, serif;        /* Police élégante */
  color: #37C3D6;                                      /* Bleu corporate */
  font-size: clamp(1rem, 2.5vw, 1.5rem);               /* ✅ Taille fluide entre mobile et desktop */
  font-style: italic;                                  /* Ton doux et professionnel */
  text-align: center;                                  /* Centrage horizontal */
  margin-bottom: 20px;                                 /* Espacement sous la phrase */
  padding: 0 10px;                                      /* Air latéral en mobile */
}


/* ==========================
   BLOC CONTACT DU FOOTER
   ========================== */

/* 🎯 Appliquer le style aux paragraphes à l'intérieur du bloc contact */

.footer-contact-block p {
  font-family: 'Times New Roman', Times, serif;
  font-size: clamp(0.9rem, 2vw, 1.3rem);
  line-height: 1.6;
  color: #eaeaea;
  margin: 0 0 10px 0;
  text-align: left;  /* ← Centré uniquement si non mobile */
}

/* 🎯 Icônes */
.footer-contact-block i {
  color: #37C3D6;
  margin-right: 6px;
}

/* 📱 Mobile : centrer le texte ET les paragraphes */
@media (max-width: 768px) {
  .footer-contact-block {
    text-align: center;
  }

  .footer-contact-block p {
    text-align: center; /* ✅ Correction ici */
  }
}



/* ============================================
   BLOC DE NAVIGATION DU FOOTER (.footer-links)
   ============================================ */

.footer-links {
  font-family: 'Times New Roman', Times, serif;
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: center;
}

.footer-links li {
  margin-bottom: 6px;
}

/* ✅ Correction : forcer police et taille responsive */
.footer-links a {
  font-family: 'Times New Roman', Times, serif !important;   /* Police prioritaire */
  font-size: clamp(0.9rem, 2vw, 1.3rem) !important;           /* Taille fluide et prioritaire */
  color: #37C3D6;
  text-decoration: none;
  transition: color 0.3s ease;
}

.footer-links a:hover {
  color: #eaeaea;
  text-decoration: none;
}


/* 📱 Centrage du bloc navigation sur mobile */
@media (max-width: 768px) {
  .footer-links {
    text-align: center;
  }
}

/* ============================================
   BLOC LEGAL DU FOOTER (.footer-legal)
   - Mentions légales + droits réservés
   - Responsive, cohérent avec les autres colonnes
   ============================================ */

.footer-legal {
  font-family: 'Times New Roman', Times, serif;
  color: #eaeaea;
  text-align: left;
}

.footer-legal ul {
  list-style: none;
  padding: 0;
  margin: 0 0 10px 0;
}

.footer-legal li {
  margin-bottom: 6px;
  padding-left: 1.2em;
  position: relative;
}


/* Lien vers mentions légales */
.footer-legal a {
  font-family: 'Times New Roman', Times, serif;
  font-size: clamp(0.9rem, 2vw, 1.2rem);
  color: #eaeaea;
  text-decoration: none;
  transition: color 0.3s ease;
}

.footer-legal a:hover {
  color: #0697AC;
  text-decoration: none;
}

/* ⓒ Texte copyright */
.footer-legal .copyright-text {
  font-size: clamp(0.8rem, 1.5vw, 1.1rem);
  color: #aaa;
  margin-top: 10px;
}

/* 📱 Mobile : centrer tout */
@media (max-width: 768px) {
  .footer-legal {
    text-align: center;
  }

  .footer-legal li {
    padding-left: 0;
  }

  .footer-legal li::before {
    display: none;
  }
}



/* 📱 Centrer uniquement les titres H1, H2, H3 sur mobile (écran ≤ 768px) */
@media (max-width: 600px) {
  h1, h2, h3 {
    text-align: center;
  }
}/* End custom CSS */