/*
General Style - Available on all screens starting from smallest mobile
================================================== */
/* Note: Add new css to the media query below that you want to only effect the desktop view of your site */

/* Hamburger */
.hamburger-container {
  display: inline-block;
  cursor: pointer;
  margin: auto 0; 
  z-index: 999;
}

.bar1, .bar2, .bar3 {
  width: 35px;
  height: 5px;
  background-color: #333;
  margin: 6px 0;
  transition: 0.4s;
}

.change .bar1 {
  -webkit-transform: rotate(-45deg) translate(-8px, 8px);
  transform: rotate(-45deg) translate(-8px, 8px);
}

.change .bar2 {opacity: 0;}

.change .bar3 {
  -webkit-transform: rotate(45deg) translate(-8px, -8px);
  transform: rotate(45deg) translate(-8px, -8px);
}

/* Mobile Menu */
#mobile-menu {
	position: fixed;
    height: 100vh;
    width: 100vw;
    background: white;
    z-index: 10;
    overflow: hidden;
	display: none;
}




.site-header {
	-moz-box-shadow: 0px 25px 50px rgba(0, 0, 0, 0.05);
    -webkit-box-shadow: 0px 25px 50px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 25px 50px rgba(0, 0, 0, 0.05);
	z-index: 999;
    position: relative;
}

.site-header li {
	list-style: none;
    margin: 0;
    padding: 0;
}

	.site-header .container > div{
		display:flex;
		justify-content: space-between;
	}


	.main-navigation .menu-item a{
		font-family: Calibri;
		font-style: normal;
		font-weight: bold;
		font-size: 18px;
		line-height: 16px;
		text-transform: uppercase;
		color: #231F20;
		margin: auto 15px;
		text-decoration: none;
		position: relative;
	}

	.desktop-menu {
		display: none;
	}
	
	.mobile-menu {
		display: block;
	}


.main-navigation ul, #mobile-menu #primary-menu ul {
	display: none;
}
	.main-navigation ul ul,  #mobile-menu #primary-menu ul ul {
		display: none;
	}

/* 
 * Start css for mobile menu 
 */

#mobile-menu > div {
	display: flex;
    height: 100%;
}

	#mobile-menu #primary-menu {
		margin: auto;
		width: 90%;
		padding: 0;
	}

	.menu-item-has-children a:after {
		content: "";
	}

	#mobile-menu .menu-item {
		padding: 10px;
	}

		#mobile-menu .menu-item-dropdown-icon {
			margin: auto 0 0 20px;
		}

			#mobile-menu .menu-item a{
				font-family: Calibri;
				font-style: normal;
				font-weight: bold;
				font-size: 18px;
				line-height: 22px;
				text-transform: uppercase;
				color: var(--color-tertiary);
				text-decoration: none;
			}


/* Dropdown function */
#mobile-menu .menu .sub-menu{
	margin-left: 0;
}

#mobile-menu .menu .menu-dropdown:not(.active-dropdown) > .sub-menu{
	display: block !important;
    max-height: 0;
    overflow: hidden;
    transition: all 0.5s linear;
}

#mobile-menu .menu .menu-dropdown.active-dropdown > .sub-menu{
	display: block !important;
    transition: all 0.75s linear;
    overflow: hidden;
    max-height: 100vh;
	
}



/* ===================
 * extra-menu-elements
 * ===================*/

.extra-menu-elements {
	display: flex;
    justify-content: center;
    max-width: 360px;
    flex-wrap: wrap;

}

.menu .extra-menu-elements a {
	color: #fff;
    font-weight: 500;
    text-transform: uppercase;
    background: #29b0bf;
    border-radius: 5px;
    display: flex;
    padding: 5px;
    margin: 5px;
    font-size: 15px;
    border-top: 1px solid #50cedb;
    border-bottom: 1px solid #249daa;
    transition: all .2s linear;
    letter-spacing: .5px;
}

.menu .extra-menu-elements a:hover{
	background: #1B767F;
	transform: scale(1.05);
	
}

.menu .extra-menu-elements a .sprite {
	margin: auto 5px auto auto;
}

/* ==============
 * Header Sprites 
 * ============== */

.bg-Careers_menu_icon {
    width: 15px; height: 15px;
    background: url('/wp-content/themes/avenor-child/images/header/Careers-header-icon.svg');
	background-size: contain;
    background-repeat: no-repeat;
}


.bg-Parents_menu_icon {
    width: 15px; height: 15px;
    background: url('/wp-content/themes/avenor-child/images/header/Parents-header-icon.svg');
	background-size: contain;
    background-repeat: no-repeat;
}


.bg-Services_menu_icon {
    width: 15px; height: 15px;
    background: url('/wp-content/themes/avenor-child/images/header/Services-header-icon.svg');
	background-size: contain;
    background-repeat: no-repeat;
}


.bg-Calendar_menu_icon {
    width: 15px; height: 15px;
    background: url('/wp-content/themes/avenor-child/images/header/Calendar-header-icon.svg');
	background-size: contain;
    background-repeat: no-repeat;
}


.bg-Food_menu_icon {
    width: 15px; height: 15px;
    background: url('/wp-content/themes/avenor-child/images/header/Food-header-icon.svg');
	background-size: contain;
    background-repeat: no-repeat;
}

.bg-Contact_menu_icon {
    width: 15px; height: 15px;
    background: url('/wp-content/themes/avenor-child/images/header/Contact-header-icon.svg');
	background-size: contain;
    background-repeat: no-repeat;
}



/* Mobile menu Search */ 

#mobile-menu .mobile-search {
	padding: 10px 20px 10px 0;
    margin: 15px 0;
}

#mobile-menu .mobile-search form {
	display: flex;
    justify-content: space-between;
}


#mobile-menu .mobile-search label {
	width: 72%;
}

#mobile-menu .mobile-search form .search-field{
    width: 100%;
    height: 100%;
}

#mobile-menu .mobile-search .search-submit{
	color: #fff;
    font-weight: 500;
    text-transform: uppercase;
    background: #29b0bf;
    border-radius: 5px;
    display: flex;
    font-size: 15px;
    border-top: 1px solid #50cedb;
    border-bottom: 1px solid #249daa;
    transition: all .2s linear;
    letter-spacing: .5px;
    padding: 10px;
}

/* Desktop menu Search */ 

.desktop-menu .desktop-search {
	padding: 10px 20px 10px 0;
    margin: 15px 0;
}

.desktop-menu .desktop-search form {
	display: flex;
    justify-content: space-between;
}


.desktop-menu .desktop-search label {
	width: 72%;
}

.desktop-menu .desktop-search form .search-field{
    width: 100%;
    height: 100%;
}

.desktop-menu .desktop-search .search-submit{
	color: #fff;
    font-weight: 500;
    text-transform: uppercase;
    background: #29b0bf;
    border-radius: 5px;
    display: flex;
    font-size: 15px;
    border-top: 1px solid #50cedb;
    border-bottom: 1px solid #249daa;
    transition: all .2s linear;
    letter-spacing: .5px;
    padding: 10px;
}

/*
Landscape Phones- 480px and up 
================================================== */
/* Note: Add new css to the media query below that you want to only effect the desktop view of your site */
@media only screen and (min-width: 480px) { 
	
	
	
}

/*
Portrait Tablets- 768px and up 
================================================== */
/* Note: Add new css to the media query below that you want to only effect the desktop view of your site */
@media only screen and (min-width: 768px) {	
	
	
}

/*
Landscape Tablets- 992px and up 
================================================== */
/* Note: Add new css to the media query below that you want to only effect the desktop view of your site */
@media only screen and (min-width: 992px)  {
	
	
	
}





/*
Laptops and Desktops - 1200px and up 
================================================== */
/* Note: Add new css to the media query below that you want to only effect the desktop view of your site */
@media only screen and (min-width: 1200px)  {
	
	
	
	
	.desktop-menu {
		display: block;
	}
	
	.mobile-menu {
		display: none;
	}
	
	.hamburger-container {
		display: none;
	}
	
	.site-branding {
		margin: 10px 0 5px;
	}
	
	.desktop-menu #primary-menu {
		display: flex;
		height: 100%;
	}
	
		.main-navigation .desktop-menu, .desktop-menu > div, .desktop-menu > div > div {
			height: 100%;
		}
	
		.desktop-menu .menu > .menu-item {
			display: flex;
		}
	
	.main-navigation .menu-item:hover > ul {
		display: block;
	}
	
	/*.main-navigation > div, .main-navigation #primary-menu {
		height: 100%;
	}
	
	.main-navigation #primary-menu > .menu-item {
		display: flex;
	}
	
	
	
	.desktop-menu > div {
		height: 100%;
	}
	 */
	
	.site-header .level-1 > .sub-menu {
		display: block;
		opacity: 0;
		visibility: hidden;
		position: absolute;
		transition: all 0s linear;
	}
	.site-header .main-navigation #primary-menu > .menu-item:hover > .sub-menu{
		width: 100%;
		position: absolute;
		display: block;
		opacity: 1;
		visibility: visible;
		background: #16BECF;
		min-height: 70vh;
		height: fit-content;
		left: 0;
		padding: 35px 49px;
		z-index: 10;
		margin: 0;
		top: 100%;
		transition: all 0.5s linear;
	}
	
	.main-navigation .menu .level-1:hover > a {
		color: #16BECF;
	}
	
	.main-navigation .menu .level-2:hover > a ,.main-navigation .menu .level-2 .sub-menu .menu-item:hover > a ,.main-navigation .menu .current-menu-parent.level-2 > a,.main-navigation .menu .current_page_item.level-2 > a,.main-navigation .menu .level-2 > .sub-menu > .current_page_item a   {
		color: #FFDE17 !important
	}
	
	.main-navigation .menu .level-1:hover > a:after, .main-navigation .current-menu-ancestor.level-1 > a:after {
    content: "";
    position: absolute;
    bottom: -10px;
    height: 2px;
    width: 100%;
    background-color: #FFDE17;
	left: -5px;
	}
	
		.site-header .main-navigation #primary-menu .menu-item:hover > .sub-menu > .menu-item {

			padding: 15px 5px;
			/*position: relative;*/
		}
	
			.site-header .main-navigation #primary-menu .menu-item:hover > .sub-menu > .menu-item > a{
				font-family: Calibri;
				font-style: normal;
				font-weight: bold;
				font-size: 18px;
				line-height: 22px;
				text-transform: uppercase;
				color: #FFFFFF;
				padding: 10px 0;
			}
	
					.site-header .main-navigation #primary-menu > .menu-item:hover > .sub-menu > .menu-item > a {
						padding: 10px 0;
						min-width: 250px;
						max-width: 300px;
						position:relative;
					}
	
					.site-header .main-navigation #primary-menu .level-2 > a::after, .site-header .main-navigation #primary-menu .level-2 .sub-menu .menu-item > a::after {
						content: "";
						position: absolute;
						background: #4FD8E5;
						height: 1px;
						width: 35%;
						min-width: 250px;
						max-width: 330px;
						bottom: 0;
						left: 0;
					}
	
				#primary-menu > .menu-item-has-children .menu-item-has-children .sub-menu {
					display: block;
					opacity: 0;
					visibility: hidden;
					position: absolute;
					transition: all 0s linear;
				}
	
				#primary-menu > .menu-item-has-children .menu-item-has-children:hover .sub-menu {
					position: absolute;
					left: 330px;
					border-left: 1px solid #4fd8e5;
					top: 35px;
					z-index: 50;	
					opacity: 1;
					visibility: visible;
					transition: all 0.5s linear;
	}

	
	
	.extra-menu {
		display: block;
		position: absolute;
		z-index: 9999;
		right: 1vw;
		top: 5vh; 
		max-width: 450px; 
		width:35vw;
	}
	
}



/* ============================ CUSTOM CSS RULES THAT DO NOT FIT THE MEDIA QUERIES ABOVE */

/*
Laptops and Desktops - 1200px and down
================================================== */
/* Note: Add new css to the media query below that you want to only effect the desktop view of your site */
@media only screen and (max-width: 1200px)  {
	.extra-menu {
		max-width: 600px;
	}
	
	.extra-menu .extra-menu-elements {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	#mobile-menu .menu .extra-menu-elements a{
		padding: 5px 10px;
    	margin: 10px 10px 0 0;
	}
	
	.desktop-search {
		display: none;
	}
}