/*
 Theme Name: Divi Child
 Theme URI: https://www.elegantthemes.com/gallery/divi/
 Description: Divi Child Theme
 Author: Elegant Themes
 Author URI: https://www.elegantthemes.com
 Template: Divi
 Version: 1.0.0
*/
 
/* =Theme customization starts here
------------------------------------------------------- */

@media (max-width: 1024px) {
  h1 {
    font-size: 35px !important;
    letter-spacing: -0.35px !important;
    line-height: 1.3em !important;
  }
  
  h2 {
    font-size: 24px !important;
    letter-spacing: -0.24px !important;
    line-height: 1.3em !important;
  }

  h3 {
    font-size: 18px !important;
    letter-spacing: -0.18px !important;
    line-height: 1.2em !important;
  }
  
  h4 {
    font-size: 16px !important;
    letter-spacing: -0.16px !important;
    line-height: 1.2em !important;
  }
}

@media (max-width: 1024px) {
  span.h1 {
    font-size: 35px !important;
    letter-spacing: -0.35px !important;
    line-height: 1.3em !important;
  }
  
  span.h2 {
    font-size: 24px !important;
    letter-spacing: -0.24px !important;
    line-height: 1.3em !important;
  }

  span.h3 {
    font-size: 18px !important;
    letter-spacing: -0.18px !important;
    line-height: 1.2em !important;
  }
  
  span.h4 {
    font-size: 16px !important;
    letter-spacing: -0.16px !important;
    line-height: 1.2em !important;
  }
}

@media (max-width: 1024px) {
  p.h1 {
    font-size: 35px !important;
    letter-spacing: -0.35px !important;
    line-height: 1.3em !important;
  }
  
  p.h2 {
    font-size: 24px !important;
    letter-spacing: -0.24px !important;
    line-height: 1.3em !important;
  }

  p.h3 {
    font-size: 18px !important;
    letter-spacing: -0.18px !important;
    line-height: 1.2em !important;
  }
  
  p.h4 {
    font-size: 16px !important;
    letter-spacing: -0.16px !important;
    line-height: 1.2em !important;
  }
}


span.h1 {
  font-weight: 600;
  font-size: 40px;
  letter-spacing: -0.4px;
  line-height: 1.3em;
}

span.h2 {
  font-weight: 600;
  font-size: 35px;
  letter-spacing: -0.35px;
  line-height: 1.3em;
}

span.h3 {
  font-weight: 600;
  font-size: 24px;
  letter-spacing: -0.24px;
  line-height: 1.3em;
}

span.h4 {
	font-weight: 600;
  font-size: 18px;
  letter-spacing: -0.18px;
  line-height: 1.2em;
}

span.h5 {
	font-weight: 600;
  font-size: 16px;
  letter-spacing: -0.16px;
  line-height: 1.2em;
}

span.h6 {
	font-weight: 600;
  font-size: 14px;
  letter-spacing: -0.14px;
  line-height: 1.2em;
}

p.h1 {
  font-weight: 600;
  font-size: 40px;
  letter-spacing: -0.4px;
  line-height: 1.3em;
}

p.h2 {
  font-weight: 600;
  font-size: 35px;
  letter-spacing: -0.35px;
  line-height: 1.3em;
}

p.h3 {
  font-weight: 600;
  font-size: 24px;
  letter-spacing: -0.24px;
  line-height: 1.3em;
}

p.h4 {
	font-weight: 600;
  font-size: 18px;
  letter-spacing: -0.18px;
  line-height: 1.2em;
}

p.h5 {
	font-weight: 600;
  font-size: 16px;
  letter-spacing: -0.16px;
  line-height: 1.2em;
}

p.h6 {
	font-weight: 600;
  font-size: 14px;
  letter-spacing: -0.14px;
  line-height: 1.2em;
}

/* Fonctionne sur Firefox */
* {
  scrollbar-width: thin;
  scrollbar-color: #c8a67c #191914;
}

/* Fonctionne sur Chrome, Edge et Safari */
*::-webkit-scrollbar {
  width: 12px;
}

*::-webkit-scrollbar-track {
  background: #191914;
}

*::-webkit-scrollbar-thumb {
  background-color: #c8a67c;
  border-radius: 20px;
  border: 3px solid #191914;
}

@media (min-width: 1041px) {

    .et-db #et-boc .et-l .et-menu-nav li.mega-menu>ul>li>a:first-child {
        width: 100% !important;
        text-transform: uppercase;
    }
	
		.dgwt-wcas-ico-magnifier path {
    fill: #05012d !important;
		}

    .et-db #et-boc .et-l .et-menu-nav li.mega-menu li>a {
        width: 235px !important;
    }
	
		/* Style de base pour la bordure sous le lien */
		nav.et-menu-nav > ul#menu-main-navigation-menu.et-menu > li:not(:last-child) > a::before {
				content: "";
				position: absolute;
				bottom: 4px;
				left: 0;
				height: 2.5px;
				width: 0;
				background-color: #c8a67c;
				transition: width 0.3s ease !important;
		}

		nav.et-menu-nav > ul#menu-main-navigation-menu.et-menu > li > a:hover::before,
		nav.et-menu-nav > ul#menu-main-navigation-menu.et-menu > li.et-show-dropdown > a::before {
				width: 100% !important;
		}
	
		.nav li ul, .et-db #et-boc .et-l .nav li ul {
		border: none;
		}
	
		.menu-item-has-children:hover {
    z-index: 100 !important; 
}
		.menu-item-has-children {
    position: relative;
    z-index: 1; /* Base level */
}
		#menu-desktop > .mega-menu:hover::after,.menu-item-99:hover::after,.menu-item-114:hover::after,.menu-item-103:hover::after,.menu-item-108:hover::after {
				content: "";
				position: fixed; 
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				background-color: rgba(0, 0, 0, 0.2);
				z-index: -1; 
				pointer-events: none;
				opacity: 0;
				transition: opacity 0.5s ease-in-out;
		}

		#menu-desktop > .mega-menu:hover::after,.menu-item-has-children:hover::after {
				opacity: 1; 
		}
		.nav ul li a:hover {
			background-color: transparent !important;
			opacity: .7;
	}
		#heading-menu .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu > nav > ul > li > a {
			padding-bottom: 15px !important;
	}

		.et-db #et-boc .et-l .et_pb_fullwidth_menu--without-logo .et_pb_menu__menu>nav>ul {
				padding: 10px 0 0!important;
		}


		#menu-menu-primaire li a:before {
				font-family: 'ETMODULES';
				text-align: center;
				vertical-align: middle;
				margin-right: 10px;
				margin-left: -10px;
				color: white;
				font-size: 1em;
				transition: all .3s ease;
		}

		#menu-menu-primaire li.menu-item-15 a:before { content: '\e090'; }
		#menu-menu-primaire li.menu-item-16 a:before { content: '\e081'; }
		#menu-menu-primaire li.menu-item-17 a:before { content: '\e060'; }
		#menu-menu-primaire li.menu-item-18 a:before { content: '\e076'; }
		#menu-menu-primaire li.menu-item-19 a:before { content: '\e078'; }

		#menu-menu-primaire li:not(:last-child) a:after {
				content: '|';
				color: white; 
				padding-left: 10px;
				vertical-align: middle;
		}
		.et_pb_menu_0_tb_header.et_pb_menu ul li.menu-cta.popmake-1439.et_pb_menu_page_id-1449.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-1449 a {
    color: white !important;
    background: #c8a67c;
    padding: 0.6em 1em !important;
    transition: all .3s ease;
}

.et_pb_menu_0_tb_header.et_pb_menu ul li.menu-cta.popmake-1439.et_pb_menu_page_id-1449.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-1449 a:hover {
    background: #e9e6ff;
    color: black !important;
}

	#menu-main-navigation-menu.et-menu.nav {
    display: flex !important;
    flex-direction: row; 
    align-items: flex-end !important;
    }
	
	.et_pb_menu--without-logo .et_pb_menu__menu > nav > ul > li.menu-item-138 {
    margin-top: 0;
    }
    .sub-menu {
    width: 280% !important;
    }

    .sub-menu > .menu-item {
        width: 100% !important;
    }
    
    .sub-menu > .menu-item > a {
        width: auto !important;
    }
    
    .mega-menu .sub-menu {
        width: auto !important;
    }
    
    .mega-menu > .sub-menu {
        width: 100% !important;
    }
    .et-db #et-boc .et-l .et-menu-nav li.mega-menu li>a {
        width: auto !important;
    }
    
    .menu-show-all a {
        font-size: 13px !important;
        font-weight: 700 !important;
    }
    
    .et-menu-nav li.mega-menu.mega-menu-parent-2>ul>li {
        width: 50% !important;
}

}



@media only screen and (max-width: 1040px) {
    .divi-mobile-menu {
        z-index: 999999999 !important;
    }
    #dm-menu li a, .et-db #et-boc .et-l #dm-menu.nav li a {
        line-height: 1.3em !important;
    }
    .scroll_section {
        height: 75vh !important;
    }
    .menu-wrap nav a {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }
    
    .line {
      fill: none!important;
      stroke: white!important;
      stroke-width: 6;
      transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1), stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
    }
    .divi-mobile-menu .line1 {
      stroke-dasharray: 60 207;
      stroke-width: 6;
    }
    .divi-mobile-menu .line2 {
      stroke-dasharray: 60 60;
      stroke-width: 6;
    }
    .divi-mobile-menu .line3 {
      stroke-dasharray: 60 207;
      stroke-width: 6;
    }
    .show-menu .divi-mobile-menu .line1 {
      stroke-dasharray: 90 207;
      stroke-dashoffset: -134;
      stroke-width: 6;
    }
    .show-menu .divi-mobile-menu .line2 {
      stroke-dasharray: 1 60;
      stroke-dashoffset: -30;
      stroke-width: 6;
    }
    .show-menu .divi-mobile-menu .line3 {
      stroke-dasharray: 90 207;
      stroke-dashoffset: -134;
      stroke-width: 6;
    }
    
    #centrer-svg-menu {
        position: relative;
    }
    
    /*FIN SVG Hamburger menu animation*/
    
    .dm-fixed-header .hamburger {
      top: 20px;
    }
    
    .hamburger {
      display: flex;
      align-items: center;
      justify-content: center;
    }
    
    .custom-svg svg {
      height: auto;
      width: 30px;
    	z-index: 1000;
    }
    
    .custom-svg {
      display: flex;
      align-items: center;
      justify-content: center;
    }
    
    .hamburger-box {
      height: 40px;
      width: 40px;
    	left: 0px;
    	top: 0px;
    }
    
    .fixed-header .dm-header-cont { 
    	height: 80px!important;
    }
    
    .dm-header-cont {
        height: 80px !important;
    }
        
    .divi-mobile-menu {
            height: 40px !important;
    }
        
    .dm-fixed-header .hamburger {
            top: 0px !important;
    }
        
    .dm-fixed-header #open-button {
            margin-top: 7.5px !important;
    }
        
    #dm_nav .menu-wrap__inner .menu-item-has-children > a:after,.clickthrough {
            font-weight: 500 !important;
            font-size: 20px !important;
    }
		.divi-mobile-menu { 
			height:40px; 
		}
	
  .dm-custom-header #page-container {
    padding-top: 0 !important;
 	 }
	.menu-item-422{
        margin-top: 30px;
    }
	.menu-item-422::before {
        content: "Besoin d'informations ?";
        display: block;
        margin-top: 20px; 
        margin-bottom: 10px;
        font-weight: bold; 
				font-size: 14px;
				color: #5c6d70;
    }
		nav li ul {
    box-shadow: none !important;
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
		}
		#dm_nav .menu-wrap__inner .menu-item-has-children > a:after {
    font-weight: 600;
    font-size: 18px !important;
		}
		li.menu-item-389, li.menu-item-398, li.menu-item-405, li.menu-item-412 {
    border-bottom: 1px solid rgba(128, 128, 128, 0.3);
		}
		li.info-m a::before {
    font-family: 'ETMODULES';
    text-align: center;
    vertical-align: middle;
    margin-right: 10px;
    margin-left: 0px;
    color: black;
    font-size: 1em;
    transition: all 0.3s ease;
		}

		li.info-m.menu-item-422 a::before { 
    content: '\e090'; 
		}
		li.info-m.menu-item-423 a::before { content: '\e081'; }
		li.info-m.menu-item-456 a::before{ content: '\e060'; }
		li.info-m.menu-item-425 a::before{ content: '\e076'; }
		li.info-m.menu-item-426 a::before { content: '\e078'; }
		li.menu-cta.menu-item-1448 a {
		margin-top: 1em !important;
		color: white !important;
		text-align: center !important;
		background-color: #c8a67c;
		transition: 0.3s ease !important;
		}
		li.menu-cta.menu-item-1448 a:hover {
		color: black !important;
		background-color: #e9e6ff !important;
		}
		.cart-contents-count-mobile { 
		height: 16px !important;
    width: 16px!important;
    z-index: 9999999 !important;
    margin-left: 14px;
    margin-top: -37px;
    position: relative;
		}
		/*Back to the top button*/

		#backToTop {
			position: fixed;
			bottom: 5px;
			right: 13.5px;
			width: 40px;
			height: 40px;
			background-color: rgba(205, 133, 44, 0.65);
			border-radius: 50%; /* Pour le rendre rond */
			align-items: center;
			justify-content: center;
			cursor: pointer;
			z-index: 1000;
			opacity: 0;
			pointer-events: none; /* Assurez-vous que le bouton n'est pas cliquable lorsqu'il est transparent */
		}

		#backToTop.fadeIn {
			animation: btnFadeInLeft 0.5s forwards;
			pointer-events: auto; /* Rend le bouton cliquable à nouveau */
		}

		#backToTop.fadeOut {
			animation: btnFadeOutRight 0.5s forwards;
			pointer-events: none; /* Assurez-vous que le bouton n'est pas cliquable lorsqu'il est transparent */
		}

		#backToTop svg {
			display: block;
			margin: auto;
			margin-top: 10px; /* Ajustez cette valeur si nécessaire */

		}

		/*Fin du back to the top button*/
}

@keyframes btnFadeInLeft {
			0% {
				transform: translateY(-50%) translateX(100%);
				opacity: 0;
			}
			100% {
				transform: translateY(-50%) translateX(0);
				opacity: 1;
			}
		}

		@keyframes btnFadeOutRight {
			0% {
				transform: translateY(-50%) translateX(0);
				opacity: 1;
			}
			100% {
				transform: translateY(-50%) translateX(100%);
				opacity: 0;
			}
		}

/*Fin Divi mobile header + back to top*/

/*Ajouter une ombre au menu sur mobile et bureau */
#dm-header.fixed-header {
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1) !important;
}

.line { 
	stroke: #05012d !important; 
	fill: none; 
}

#footer-section ul, #footer-section ol {
    list-style-type: none;
    padding: 0; 
    margin: 0; 
    padding-left: 0; 
}

/* subfooter css */

#footer-info {
    color: white; /* Couleur du texte */
}


#subfooter-info ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
}

#subfooter-info li {
    margin: 0 3.5px; 
}

#subfooter-info li:not(:first-child)::before {
    content: '|';
    color: white;
    margin-right: 7px;
}

@media (max-width: 960px) {
    #subfooter-info ul {
        flex-direction: column;
        align-items: center;
    }

    #subfooter-info li:not(:first-child)::before {
        content: none; 
    }

    #subfooter-info ul li {
        margin-bottom: 5px;
    }
} 

.entry-title-footer {
  padding-bottom: 0;
}

.post-meta-footer {
  padding-bottom: 0.2em !important;
}

.section-title-discover-also {
  text-align: center;
  padding-bottom: 0.5em !important;
}

ul.discover-also-links {
  list-style-type: none !important;
  padding: 0;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

ul.discover-also-links li {
  list-style-type: none !important;
}

.discover-link {
  display: inline-block;
  padding: 4px 16px;
  border-radius: 30px;
  text-decoration: none;
  margin: 10px;
  background-color: #C8A67C;
  color: #FFFFFF !important;
  transition: background-color 0.3s, color 0.3s;
  font-size: 10px !important;
}

.discover-link:hover {
  background-color: #E9E6FF;
  color: black !important;
}

.pum-theme-1431 .pum-container, .pum-theme-lightbox .pum-container {
    padding: 18px !important;
    border-radius: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background-color: transparent !important;
}

.pum-theme-1431 .pum-content + .pum-close, 
.pum-theme-lightbox .pum-content + .pum-close {
    right: 25px !important;
    top: 34px !important;
    border: none !important;
    box-shadow: none !important; 
    background-color: transparent !important;
    color: #222725 !important;
    border-radius: 0 !important;
    font-size: 30px;

}