/* 
 Theme Name:     AxoneZEN
 Author:         Eklore 
 Author URI:     https://eklore.ca
 Template:       Divi
 Version:        1.0 
*/ 
/* ----------- PUT YOUR CUSTOM CSS BELOW THIS LINE -- DO NOT EDIT ABOVE THIS LINE --------------------------- */ 
/*Corrections DIVI - suat header
body.et-fb header#main-header {display:none;}
:root{ --header-offset: 180px; }
.home{ --header-offset: 215px; }
#main-content .et_pb_section:first-child{padding-top: var(--header-offset) !important;}*/

:root{
--principale:#075859;
--secondaire:#4cd4c6;
--brume:#EFF9F8;
--gris:#D8D8D8;
--offwhite:#FCFBFF;
box-sizing:border-box;
}

::selection {
    color: var(--principale);
	background: var(--brume);}}

sup {font-size: x-small;}

#page-container { 
    font-family: 'Manrope', sans-serif !important; 
}

/* --- TYPOGRAPHIE DES TITRES (Montserrat) --- */
#page-container h1, #page-container h2, #page-container h3, 
#page-container h4, #page-container h5, #page-container h6 {
    font-family: 'Manrope', sans-serif !important;
    text-transform: none; /* Annule d'éventuels styles par défaut du thème */
}
/* --- DÉTAILS DES STYLES --- */
#page-container h1 { font-size: clamp(2rem, 1.25rem + 3.4vw, 3.5rem); font-weight: 800; line-height: 1.1; } /* 32px -> 56px */
#page-container h2 { font-size: clamp(1.75rem, 1.48rem + 1.46vw, 2.5rem); font-weight: 700; line-height: 1.1; } /* 28px -> 40px */
#page-container h3 { font-size: clamp(1.5rem, 1.4rem + 0.5vw, 1.75rem); font-weight: 600; line-height: 1.2; } /* 24px -> 28px */
#page-container h4 { font-size: clamp(1.25rem, 1.16rem + 0.49vw, 1.5rem); font-weight: 600; line-height: 1.2; } /* 20px -> 24px */
#page-container h5 { font-size: clamp(1.125rem, 1.08rem + 0.24vw, 1.25rem); font-weight: 500; line-height: 1.3; } /* 18px -> 20px */
#page-container h6 { font-size: clamp(0.875rem, 0.83rem + 0.24vw, 1rem); font-weight: 600; line-height: 1.3; text-transform: uppercase; letter-spacing: 0.05em; } /* 14px -> 16px */


#page-container p + :is(h2, h3, h4, h5, h6), #page-container :is(h2, h3, h4, h5, h6) + :is(h2, h3, h4, h5, h6) {margin-top: 20px;}
#page-container input:focus:not(.et-search-field), a:focus-visible, a:focus-visible img, select:focus, #et_search_icon:focus {
outline: 3px solid var(--secondaire);}

/** HEADER **/
/** NAV **/

/*Style Vertical Navigation Menu*/ 
.et-vert-menu .et_pb_menu__menu>nav>ul {
  flex-direction: column;
  margin-left: 0px !important;
  margin-right: 0px !important;
  width: 100%;
  }
.et-vert-menu .et_pb_menu__menu>nav>ul>li {
  margin: 10px 0 !important;
  }
.et-vert-menu .et_pb_menu__menu>nav>ul>li>ul li {
  display:block !important;
  padding: 0px !important;
  }

.et_pb_menu .et-menu>li {
  border-bottom: 2px solid color-mix(in srgb, var(--principale), transparent 88%);
  padding-left: 0px !important;
  }

  .et-vert-menu .et_pb_menu__menu>nav>ul ul {
    padding: 0px !important;
    top: 0px !important;
  }
.et-vert-menu .et_pb_menu__menu>nav>ul>li>ul {
  left:calc(100% - 1px) !important;
  top:0px !important;
  }
.et-vert-menu .et-menu .menu-item-has-children>a:first-child:after {
  content: "5" !important; /*change arrow icon for submenu*/
  right: 20px !important;
  }
.et-vert-menu .nav li ul {
    left: calc(100% - 1px) !important; /*align submenu to the right of menu link*/
  }
@media all and (min-width: 981px) {
.et-vert-menu .et_pb_menu__menu, .et-vert-menu .et_pb_menu__menu>nav {
    width: 100%; /*width of the vertical navigation menu*/
  }

}


/*Mobile Menu Collapse*/ 
/*change hamburger icon to x when mobile menu is open*/
#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,
.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
	content: '\4d';
}
/*adjust the new toggle element which is added via jQuery*/
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
ul.et_mobile_menu li.page_item_has_children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.page_item_has_children .mobile-toggle {
	width: 44px;
	height: 100%;
	padding: 0px !important;
	max-height: 44px;
	border: none;
	position: absolute;
	right: 0px;
	top: 0px;
	z-index: 999;
	background-color: transparent;
}
/*some code to keep everyting positioned properly*/
ul.et_mobile_menu>li.menu-item-has-children,
ul.et_mobile_menu>li.page_item_has_children,
ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.page_item_has_children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children {
	position: relative;
}
/*remove default background color from menu items that have children*/
.et_mobile_menu .menu-item-has-children>a,
.et-db #et-boc .et-l .et_mobile_menu .menu-item-has-children>a {
	background-color: transparent;
}
/*hide the submenu by default*/
ul.et_mobile_menu .menu-item-has-children .sub-menu,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu {
	display: none !important;
	visibility: hidden !important;
}
/*show the submenu when toggled open*/
ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible {
	display: block !important;
	visibility: visible !important;
}
/*adjust the toggle icon position and transparency*/
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle {
	text-align: center;
	opacity: 1;
}
/*submenu toggle icon when closed*/
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after {
	top: 10px;
	position: relative;
	font-family: "ETModules";
	content: '\33';
	color: #1c203f;
	background: #f0f3f6;
	border-radius: 50%;
	padding: 3px;
}
/*submenu toggle icon when open*/
ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after {
	content: '\32';
}
/*add point on top of the menu submenu dropdown*/
.et_pb_menu_0.et_pb_menu .et_mobile_menu:after {
	position: absolute;
	right: 5%;
	margin-left: -20px;
	top: -14px;
	width: 0;
	height: 0;
	content: '';
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-bottom: 20px solid #ffffff;
}
/*adjust the position of the hamburger menu*/
.mobile_menu_bar {
	position: relative;
	display: block;
	/*bottom: 10px;*/
	line-height: 0;
}
/*force the background color and add a rounded border*/
.et_pb_menu_0.et_pb_menu .et_mobile_menu,
.et_pb_menu_0.et_pb_menu .et_mobile_menu ul {
	background-color: #ffffff!important;
	border-radius: 10px;
}
/*** BODY ***/
.liste_forfaits li {padding-bottom:15px;}

/*** MODULES ***/


/*** FOOTER ***/

/*** DIVERS ***/
/** Contenu sans DIVI **/
#contenu-page .et_pb_row_1_tb_body:not(:has(.et-l--post)){width:85%; max-width: 1600px;}
body.single-actualites:not(.et_pb_pagebuilder_layout) #contenu-page .et_pb_row_1_tb_body { width: 85%; max-width: 1600px;}
body.single-actualites:not(.et_pb_pagebuilder_layout) #contenu-page .et_pb_row_1_tb_body .et_pb_post_content, body.single:not(.et_pb_pagebuilder_layout) #contenu-page .et_pb_row_1_tb_body .et_pb_post_content{padding-top:50px;padding-bottom:50px;}

/** Contenu avec DIVI - retrait padding premiere section **/
#contenu-page .et_pb_row .et_pb_row {width: 85%;max-width: 1600px;}
#contenu-page .et_pb_row #carte.et_pb_row {width: 100%;max-width: 100%;}
#contenu-page .et_pb_row .et_pb_row .et_pb_row {width: initial;}

/***ACCESSIBILITE***/
.sr-only {
    position: absolute !important;
    height: 1px; width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    white-space: nowrap;
}

/**** Bordure page Conditions ***/
.Conditions h2 {
  border-top: 2px solid color-mix(in srgb, var(--secondaire), transparent 88%);
  padding-top: 60px; 
  margin-top: 30px;  
}

/* On retire la bordure uniquement pour le tout premier h2 rencontré */
.Conditions h2:first-of-type {
    border-top: none;
    padding-top: 0;
    margin-top: 0;
}

.text-wrap {
	text-wrap:balance;
}
