/*
Theme Name: Divi Child
Theme URI: http://www.elegantthemes.com/gallery/divi/
Template: Divi
Author: Elegant Themes
Author URI: http://www.elegantthemes.com
Description: Smart. Flexible. Beautiful. Divi is the most powerful theme in our collection.
Version: 5.1.0.1774359838
Updated: 2026-03-24 14:43:58

*/
/*** Tailles textes EFabre */
#main-header {
	display: none !important;
}
:root {
  --et_global_body_font_size: 0.9rem !important;
}
body {
  font-size: 0.9rem !important;
}
p-small {
	font-size: 0.9rem !important;
}
p {
	size:0.9rem !important;
}
.nunito {
	font-family: 'Nunito',sans-serif !important;
}
lienvert {
	color: var(--gcid-vtujhzxofi) !important;
}
.meav {
	color: var(--gcid-b2cfvzymfb) !important;
}
.meav2 {
	color: var(--gcid-staqy5z2y6) !important;
}
.meav3 {
	color: var(--gcid-7b0ubtled1) !important;
}
.meav4 {
	color: var(--gcid-8jyx00axux) !important;
}
.meav5 {
    color: var(--gcid-body-color) !important;
}
.glsr * + * {
	font-size: 0.9rem;
}
.rpi-dots .rpi-dot active {
	background-color: var(--gcid-h3zrldwagn)!important
}

/*end*/
@media only screen and (min-width: 1300px) and (max-width: 1490px) and (max-height: 920px) {
.logoheader {
	margin-top: 6rem !important;
}
}


/*** couleurs SVG EFabre */ 
.svg-primary { color: var(--gcid-7b0ubtled1); }
.svg-secondary { color: var(--gcid-3srjs2n3dg); }
/* end */ 


/*** Menu V3 EFabre — FINAL + HAMBURGER CORRIGÉ ***/
:root {
  --menu-on-light-text:   #222b4b;
  --menu-on-light-accent: #222b4bb3;
  --menu-on-dark-text:    #c5cbdf;
  --menu-on-dark-accent:  #c5cbdfb3;
}

/* === BASE === */
.mon-menu3 {
  color: var(--menu-on-light-text);
  transition: color 0.25s ease;
}
.mon-menu3 ul.et-menu > li > a {
  position: relative;
  display: inline-block;
  color: inherit;
  transition: color 0.3s ease;
}
/* --- Soulignement animé --- */
.mon-menu3 ul.et-menu > li > a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 20px;
  width: 100%;
  height: 4px;
  background: var(--menu-on-light-accent) !important;
  transform: translateY(10px);
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease, background 0.3s ease;
  pointer-events: none;
}
/* === MENU FOOTER — correction position du soulignement === */
.menu3footer ul.et-menu > li > a::before {
  bottom: 0px !important;
}
#menufooter3 ul.et-menu > li > a::before {
  bottom: 0px !important;
}
/* === FOND CLAIR (défaut) === */
.mon-menu3 ul.et-menu > li > a:hover::before,
.mon-menu3 ul.et-menu > li.current-menu-item > a::before,
.mon-menu3 ul.et-menu > li.current-menu-ancestor > a::before,
.mon-menu3 li.current-menu-item a[href*="#"]::before,
.mon-menu3 li.current_page_item a[href*="#"]::before {
  background: var(--menu-on-light-accent) !important;
  transform: translateY(0);
  opacity: 1;
}
.mon-menu3 ul.et-menu > li > a:hover,
.mon-menu3 ul.et-menu > li.current-menu-item > a,
.mon-menu3 ul.et-menu > li.current-menu-ancestor > a,
.mon-menu3 li.menu-item a[href*="#"]:hover,
.mon-menu3 li.current-menu-item a[href*="#"],
.mon-menu3 li.current_page_item a[href*="#"] {
  color: var(--menu-on-light-accent) !important;
  /* font-weight: 700; */
}
.mon-menu3 li.menu-item a[href*="#"] {
  color: inherit;
}
/* === FOND SOMBRE (.is-on-dark ajouté par JS) === */
.mon-menu3.is-on-dark {
  color: var(--menu-on-dark-text);
}
.mon-menu3.is-on-dark ul.et-menu > li > a {
  color: var(--menu-on-dark-text) !important;
}
.mon-menu3.is-on-dark ul.et-menu > li > a::before {
  background: var(--menu-on-dark-accent) !important;
}
.mon-menu3.is-on-dark ul.et-menu > li > a:hover::before,
.mon-menu3.is-on-dark ul.et-menu > li.current-menu-item > a::before,
.mon-menu3.is-on-dark ul.et-menu > li.current-menu-ancestor > a::before,
.mon-menu3.is-on-dark li.current-menu-item a[href*="#"]::before,
.mon-menu3.is-on-dark li.current_page_item a[href*="#"]::before {
  background: var(--menu-on-dark-accent) !important;
  transform: translateY(0);
  opacity: 1;
}
.mon-menu3.is-on-dark ul.et-menu > li > a:hover,
.mon-menu3.is-on-dark ul.et-menu > li.current-menu-item > a,
.mon-menu3.is-on-dark ul.et-menu > li.current-menu-ancestor > a,
.mon-menu3.is-on-dark li.menu-item a[href*="#"]:hover,
.mon-menu3.is-on-dark li.current-menu-item a[href*="#"],
.mon-menu3.is-on-dark li.current_page_item a[href*="#"] {
  color: var(--menu-on-dark-accent) !important;
  /* font-weight: 700; */
}
/* ===== MENU MOBILE ===== */
/* Conteneur du menu mobile : ne pas limiter la hauteur, pas d'overflow */
.et_mobile_nav_menu,
.et_pb_menu__container,
.et_pb_menu {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  min-height: auto !important;
}
/* Le menu mobile lui-même */
.et_mobile_menu {
  position: absolute !important;
  top: 100%;
  right: 0;
  left: 0;
  width: 100% !important;
  max-width: 100vw !important;
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  min-height: auto !important;
  padding: 5% !important;
  z-index: 9999 !important;
  background-color: rgba(255, 255, 255, 0.85) !important;
  backdrop-filter: blur(8px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10);
}

/* ===== GESTION DU HAMBURGER (CORRECTION DIVI 5 EFFECTIVE) ===== */

/* 1. On force l'icône à hériter de la couleur du texte global du module */
.mon-menu3 .mobile_menu_bar::before,
#page-container .mon-menu3 .mobile_menu_bar::before {
  color: currentColor !important;
  transition: color 0.3s ease !important;
}
/* S'assurer que le header n'a pas overflow: hidden */
.et_pb_section_1,
.et_pb_row_1,
.et_pb_column_1,
.et_pb_header,
.et_pb_header_wrapper {
  overflow: visible !important;
}
/* Sous-menus dans le menu mobile */
.mon-menu3 ul.et-menu > li > ul.sub-menu {
  position: absolute !important;
  top: 100% !important;
  left: 0;
  z-index: 9999;
  min-width: 200px;
  background: rgba(255, 255, 255, 0.85) !important;
  backdrop-filter: blur(10px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10);
  border-top: 2px solid var(--menu-on-light-accent);
}
.mon-menu3.is-on-dark ul.et-menu > li > ul.sub-menu {
  background: rgba(30, 36, 60, 0.90) !important;
  border-top-color: var(--menu-on-dark-accent);
}
.mon-menu3.is-on-dark ul.et-menu > li > ul.sub-menu a {
  color: var(--menu-on-dark-text) !important;
}

/* Couleurs mobile — fond clair (défaut) */
.et_mobile_menu a {
  color: var(--menu-on-light-text) !important;
  transition: color 0.25s ease;
}

/* Couleurs mobile — fond sombre */
.mon-menu3.is-on-dark .et_mobile_menu {
  background-color: rgba(30, 36, 60, 0.90) !important;
}
.mon-menu3.is-on-dark .et_mobile_menu a {
  color: var(--menu-on-dark-text) !important;
}
/* end menu v3 */


/* animation ecriture du sous titre H2  EFabre */
.sous-titre-write h2 {
  margin: 0;
  font-family: "Rastanty Cortez", "Inter", sans-serif !important;
}
.sous-titre-write h2 span {
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  width: 0;
  border-right: 2px solid currentColor;
  font-family: inherit !important;
  animation: typing 3s steps(30, end) forwards,
             hideCursor 0.01s 2.95s forwards;
}
@keyframes typing {
  from { width: 0; }
  to { width: 100%; }
}
@keyframes hideCursor {
  to { border-right-color: transparent; }
}
/* animation active seulement quand la classe est ajoutée */
.animate-it .sous-titre-write h2 span {
  animation: typing 3s steps(30, end) 0.5s forwards,
             hideCursor 0.01s 3.5s forwards;
}
/* end animation sous tire*/


/*** Fonds de blocs glassmorphisme EFabre ***/

/** 1) fond glass MENU EFabre */
.vitre-moyenne-blanc {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.20);
  backdrop-filter: blur(8px) saturate(140%);
  -webkit-backdrop-filter: blur(8px) saturate(140%);
  border-top: 1px solid rgba(255, 255, 255, 0.34);
  border-left: 1px solid rgba(255, 255, 255, 0.24);
  border-right: 1px solid rgba(0, 0, 0, 0.05);
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow:
    12px 12px 26px rgba(0, 0, 0, 0.10),
  inset 0 1px 0 rgba(255, 255, 255, 0.22),  
  inset 0 -1px 0 rgba(0, 0, 0, 0.06),  
  inset 1px 1px 0 rgba(255, 255, 255, 0.08);  
}
.vitre-moyenne-blanc::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(
    135deg,
    rgba(255, 255, 255, 0.34) 0%,
    rgba(255, 255, 255, 0.12) 20%,
    rgba(255, 255, 255, 0.00) 48%
  );
}
.vitre-moyenne-blanc::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: calc(5px - 1px);
  pointer-events: none;
  border-top: 1px solid rgba(255, 255, 255, 0.26);
  border-left: 1px solid rgba(255, 255, 255, 0.16);
  border-right: 1px solid rgba(0, 0, 0, 0.04);
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}
/* 2 */
.vitre-moyenne-blanc2 {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(8px) saturate(140%);
  -webkit-backdrop-filter: blur(8px) saturate(140%);
  border-top: 1px solid rgba(255, 255, 255, 0.30);
  border-left: 1px solid rgba(255, 255, 255, 0.20);
  border-right: 1px solid rgba(0, 0, 0, 0.05);
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
  box-shadow:
    12px 12px 26px rgba(0, 0, 0, 0.10),
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    inset 0 -1px 0 rgba(0, 0, 0, 0.05);
}

.vitre-moyenne-blanc2::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(
    135deg,
    rgba(255, 255, 255, 0.18) 0%,
    rgba(255, 255, 255, 0.10) 30%,
    rgba(255, 255, 255, 0.06) 42%,
    rgba(255, 255, 255, 0.06) 58%,
    rgba(255, 255, 255, 0.10) 70%,
    rgba(255, 255, 255, 0.18) 100%
  );
}

.vitre-moyenne-blanc2::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: 4px;
  pointer-events: none;
  border-top: 1px solid rgba(255, 255, 255, 0.18);
  border-left: 1px solid rgba(255, 255, 255, 0.10);
  border-right: 1px solid rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
/* end fond du menu */

/** 2) fond de blocs **/
/* fond logos et bloc texte - vitre legere - utilisé sur les fonds bleus */ 
.vitre-legere {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  background: linear-gradient(135deg,
    rgba(255,255,255,0.16) 0%,
    rgba(255,255,255,0.06) 18%,
    rgba(24, 30, 52,0.05) 55%,
    rgba(24, 30, 52,0.06) 100%);
  backdrop-filter: blur(2px) saturate(110%);
  -webkit-backdrop-filter: blur(2px) saturate(110%);
  border-top: 1px solid rgba(255,255,255,0.30);
  border-left: 1px solid rgba(255,255,255,0.22);
  border-right: 1px solid rgba(0,0,0,0.04);
  border-bottom: 1px solid rgba(0,0,0,0.06);
  box-shadow:
    12px 12px 26px rgba(0,0,0,0.10),
    inset 0 1px 0 rgba(255,255,255,0.22),
    inset 0 -1px 0 rgba(0,0,0,0.06),
    inset 1px 1px 0 rgba(255,255,255,0.08);
}

.vitre-legere::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(135deg,
    rgba(255,255,255,0.28) 0%,
    rgba(255,255,255,0.10) 18%,
    rgba(255,255,255,0.00) 45%);
}

.vitre-legere::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: calc(5px - 1px);
  pointer-events: none;
  border-top: 1px solid rgba(255,255,255,0.20);
  border-left: 1px solid rgba(255,255,255,0.14);
  border-right: 1px solid rgba(0,0,0,0.03);
  border-bottom: 1px solid rgba(0,0,0,0.05);
}

/** fond glass moyen EFabre - utilisé sur les fonds blancs */ 
.vitre-moyenne {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  background: linear-gradient(135deg,
    rgba(255,255,255,0.26) 0%,
    rgba(255,255,255,0.12) 18%,
    rgba(24, 30, 52,0.12) 50%,
    rgba(24, 30, 52,0.16) 100%);
  backdrop-filter: blur(2px) saturate(110%);
  -webkit-backdrop-filter: blur(2px) saturate(110%);
  border-top: 1px solid rgba(255,255,255,0.34);
  border-left: 1px solid rgba(255,255,255,0.24);
  border-right: 1px solid rgba(0,0,0,0.05);
  border-bottom: 1px solid rgba(0,0,0,0.08);
  box-shadow:
    12px 12px 26px rgba(0,0,0,0.10),
    inset 0 1px 0 rgba(255,255,255,0.22),
    inset 0 -1px 0 rgba(0,0,0,0.06),
    inset 1px 1px 0 rgba(255,255,255,0.08);
}
.vitre-moyenne::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(135deg,
    rgba(255,255,255,0.34) 0%,
    rgba(255,255,255,0.12) 20%,
    rgba(255,255,255,0.00) 48%);
}
.vitre-moyenne::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: calc(5px - 1px);
  pointer-events: none;
  border-top: 1px solid rgba(255,255,255,0.26);
  border-left: 1px solid rgba(255,255,255,0.16);
  border-right: 1px solid rgba(0,0,0,0.04);
  border-bottom: 1px solid rgba(0,0,0,0.07);
}

/** fond glass moyen titre - EFabre */ 
.vitre-moyenne-titre {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  background: linear-gradient(
    90deg,
    rgba(24, 30, 52, 0.20) 0%,
    rgba(24, 30, 52, 0.25) 20%,
    rgba(24, 30, 52, 0.30) 40%,
    rgba(24, 30, 52, 0.30) 60%,
    rgba(24, 30, 52, 0.25) 80%,
    rgba(24, 30, 52, 0.20) 100%
  );
  backdrop-filter: blur(8px) saturate(140%);
  -webkit-backdrop-filter: blur(8px) saturate(140%);
  border-top: 1px solid rgba(255,255,255,0.34);
  border-left: 1px solid rgba(255,255,255,0.24);
  border-right: 1px solid rgba(0,0,0,0.05);
  border-bottom: 1px solid rgba(0,0,0,0.08);
  box-shadow:
    12px 12px 26px rgba(0,0,0,0.10),
    inset 0 1px 0 rgba(255,255,255,0.22),
    inset 0 -1px 0 rgba(0,0,0,0.06),
    inset 1px 1px 0 rgba(255,255,255,0.08);
}
.vitre-moyenne-titre::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(
    135deg,
    rgba(255,255,255,0.34) 0%,
    rgba(255,255,255,0.12) 20%,
    rgba(255,255,255,0.00) 48%
  );
}
.vitre-moyenne-titre::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: calc(5px - 1px);
  pointer-events: none;
  border-top: 1px solid rgba(255,255,255,0.26);
  border-left: 1px solid rgba(255,255,255,0.16);
  border-right: 1px solid rgba(0,0,0,0.04);
  border-bottom: 1px solid rgba(0,0,0,0.07);
}
/* end */


/** fond glass moyen titre 2 - vert eric - EFabre */ 
.vitre-moyenne-titre-2 {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  background: linear-gradient(
    90deg,
    rgba(121, 159, 127, 0.20) 0%,
    rgba(121, 159, 127, 0.25) 20%,
    rgba(121, 159, 127, 0.30) 40%,
    rgba(121, 159, 127, 0.30) 60%,
    rgba(121, 159, 127, 0.25) 80%,
    rgba(121, 159, 127, 0.20) 100%
  );
  backdrop-filter: blur(8px) saturate(140%);
  -webkit-backdrop-filter: blur(8px) saturate(140%);
  border-top: 1px solid rgba(255,255,255,0.34);
  border-left: 1px solid rgba(255,255,255,0.24);
  border-right: 1px solid rgba(0,0,0,0.05);
  border-bottom: 1px solid rgba(0,0,0,0.08);
  box-shadow:
    12px 12px 26px rgba(0,0,0,0.10),
    inset 0 1px 0 rgba(255,255,255,0.22),
    inset 0 -1px 0 rgba(0,0,0,0.06),
    inset 1px 1px 0 rgba(255,255,255,0.08);
}
.vitre-moyenne-titre-2::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(
    135deg,
    rgba(255,255,255,0.34) 0%,
    rgba(255,255,255,0.12) 20%,
    rgba(255,255,255,0.00) 48%
  );
}
.vitre-moyenne-titre-2::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: calc(5px - 1px);
  pointer-events: none;
  border-top: 1px solid rgba(255,255,255,0.26);
  border-left: 1px solid rgba(255,255,255,0.16);
  border-right: 1px solid rgba(0,0,0,0.04);
  border-bottom: 1px solid rgba(0,0,0,0.07);
}
/* end */


/** fond glass moyen titre 3 - bleu élodie - EFabre */ 
.vitre-moyenne-titre-3 {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  background: linear-gradient(
    90deg,
    rgba(24, 30, 52, 0.20) 0%,
    rgba(24, 30, 52, 0.25) 20%,
    rgba(24, 30, 52, 0.30) 40%,
    rgba(24, 30, 52, 0.30) 60%,
    rgba(24, 30, 52, 0.25) 80%,
    rgba(24, 30, 52, 0.20) 100%
  );
  backdrop-filter: blur(4px) saturate(120%);
  -webkit-backdrop-filter: blur(4px) saturate(120%);
  border-top: 1px solid rgba(255,255,255,0.34);
  border-left: 1px solid rgba(255,255,255,0.24);
  border-right: 1px solid rgba(0,0,0,0.05);
  border-bottom: 1px solid rgba(0,0,0,0.08);
  box-shadow:
    12px 12px 26px rgba(0,0,0,0.10),
    inset 0 1px 0 rgba(255,255,255,0.22),
    inset 0 -1px 0 rgba(0,0,0,0.06),
    inset 1px 1px 0 rgba(255,255,255,0.08);
}
.vitre-moyenne-titre-3::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(
    135deg,
    rgba(255,255,255,0.34) 0%,
    rgba(255,255,255,0.12) 20%,
    rgba(255,255,255,0.00) 48%
  );
}
.vitre-moyenne-titre-3::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: calc(5px - 1px);
  pointer-events: none;
  border-top: 1px solid rgba(255,255,255,0.26);
  border-left: 1px solid rgba(255,255,255,0.16);
  border-right: 1px solid rgba(0,0,0,0.04);
  border-bottom: 1px solid rgba(0,0,0,0.07);
}
/* end */
/** bouton formulaire temoignages EFabre **/ 
.glsr-default button.glsr-button {
  background-color: var(--gcid-h3zrldwagn) !important;
  color: var(--gcid-body-color) !important;
  font-size: 0.8rem !important;
  border-radius: 10px !important;
}
/* end */ 
	
/*** Blog EFabre **/


.et_fixed_nav #main-header {
	display: none;
}
#main-content {
	background-color: var(--gcid-primary-color) !important;
}
.et_post_meta_wrapper {
	margin-top: 2rem;
}
#left-area .post-meta {
	font-size: 0.9rem;
	padding-bottom: 15px;
	color: grey;
	font-style: italic;
}
/* END */

/* Corriger l'image de profil déformée du plugin Google Review */
.grw-img {
  aspect-ratio: 1 !important;
  object-fit: cover !important;
  border-radius: 50% !important;
  width: 50px !important;
  height: 50px !important;
}
/*** breadcrumbs divi5 EFabre */
.et_pb_breadcrumbs--current {
  display: none !important;
}

/*** cacher le reCaptcha EFabre */ 
.grecaptcha-badge { 
	visibility: hidden !important; 
}
/*end*/