
/*inherit all*/
.secondary ul.menu_element { margin: 0 0 0 0; padding: 0 0 0 0; 
	font-size: 0; /*needed to patch the space for inline items*/
}
.secondary li.menu-item a.menu-link { font-size: 1rem; }  /*to prevent 0 from making text invisible on clean installs*/






.secondary li.menu-item {
	list-style: none;
	margin: 0 0 0 0;
	padding: 0;
	position: relative;
	line-height: normal;
	vertical-align: middle;
}
.secondary li.menu-item a.menu-link {
	display: block;
	box-sizing: border-box;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
/* [data-level="0"] */
.desktop .secondary li.menu-item[data-level="0"] {
	display: block !important; 
}
.secondary > ul.menu > li.menu-item > a:not(.btn) {
	padding: 0;
}
/*inline block items need a font size of 0 to remove the blank space problem*/
.secondary > ul.menu {
	font-size: 0;
}
/* [data-level="1"]*/
.secondary ul.menu ul.sub-menu {
	top: auto;
	width: 220px;
	position: absolute;
	text-align: left;
	display: none;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	box-sizing: content-box; /*//width of any border or padding will be added to the final rendered width*/
}
.desktop .secondary ul.menu ul.sub-menu { z-index: 99; }
.mobile .secondary ul.menu ul.sub-menu { z-index: 2; }

.secondary li.menu-item li.menu-item {
	display: block;  
}
/* [data-level="2"] */
.secondary ul.menu ul.sub-menu ul.sub-menu {
	top: 0;
	left: 220px;
}
.secondary > ul.menu > li.menu-item:hover > ul.sub-menu > li.menu-item:hover > ul.sub-menu {
	opacity: 1;
	visibility: visible;
	top: 0;
}
/* .from_left */
.secondary > ul.menu > li.menu-item.from_left:hover > ul.sub-menu {
	right: 0;
}
.secondary li.from_left ul.sub-menu ul.sub-menu {
	left: auto;
	right: 220px;
}
.secondary.active {
}
.secondary li.from_left li.has-sub > a:after {
	float: left;
	content: '\f0d9';
	font-family: 'FontAwesome';
	margin-right: 10px;
}
/* core  */
.secondary li.has-sub > a:after {
	content: '\f0d7';
	font-family: 'FontAwesome';
	margin-left: 10px;
	line-height: inherit;
	float: right;
}
.secondary li li.has-sub > a:after {
	content: '\f0da';
	font-family: 'FontAwesome';
	margin-left: 10px;
	line-height: inherit;
	float: right;
}
.secondary.hide-arrows li.has-sub > a:after, .secondary.hide-arrows li li.has-sub > a:after, .secondary.hide-arrows li.from_left li.has-sub > a:after {
	display: none;
}
.secondary .menu-toggle, 
.secondary .close-menu {
	display: none;
	text-transform: uppercase;
	text-decoration: none;
	
}

/*.desktop .secondary .toggle { z-index: 99; }
.mobile .secondary .toggle { z-index: 2; }
*/

.secondary .toggle {
	 display: none;
	top: 0;
	padding: 0;
	width: 48px;
	height: 48px;
	text-align: center;
	border: 0;
	text-decoration: none !important;
}
.mobile .mobile_menu_align_left .secondary .toggle {	right: 0; position: absolute;}
.mobile .mobile_menu_align_right .secondary .toggle {	left: 0; position: absolute;}
.mobile .mobile_menu_align_center .secondary .toggle { margin: 0 auto;}


.secondary .toggle i {
	/*transform-origin: 50% 50% 0;*/
	-webkit-transition: transform .3s ease-out;
	-moz-transition: transform .3s ease-out;
	transition: transform .3s ease-out; display: block; 
	width: 100%; height: 100%;/*this is needed to prevent the element from showing when the menu is closed... chrome bug?*/
	line-height: 20px;
}
.secondary .toggle .fa:before { /*position: absolute;*/}
.secondary li.open .toggle.expanded i {
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	transform: rotate(135deg); 
	/*filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);*/
	text-decoration: none !important;
}


.secondary > ul > li > a.toggle {
	padding: 0;
}


.secondary .sub-menu.expanded {
	clear: both; display: block !important;
}





@media only screen and (min-width: 64.063em) {
/* sticky nav */ 
.secondary.fixed {
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 9999;
}
.secondary.active {
	display: block
}
}

@media only screen and (max-width: 25em) {
/* small patches, 328px - 25em */

}

@media only screen and (max-width: 64em) {
/* BASELINE - covers mobile phones and small devices
	1024 = 64em - covers everything up to the desktop view
	*/

}

@media only screen and (min-width: 46em) and (max-width: 64em) {
/*Tablets / Laptops */
	
}

@media only screen and (min-width: 64em) {
/* GREY AREA for the iPad Pro and Surface Pro, touch enabled */	
	.secondary.open {
		clear: both;
	}

}



.desktop .nav.fixed.v_top_left, .desktop .nav.fixed.v_top_right, .desktop .nav.fixed.v_bottom_left, .desktop .nav.fixed.v_bottom_right {
	width: auto
}
.desktop .nav.full.fixed {
	width: 100%
}
.desktop .nav.fixed.v_normal {
	top: 0;
	left: 0;
}
.desktop .nav.fixed.v_normal.full.unwrap.fixed .area_wrap {
	width: 100% !important;
	margin: 0;
	max-width: 100%;
}
.desktop .nav.fixed.v_normal.wrap.unwrap.fixed, .desktop .nav.fixed.v_normal.inner.unwrap.fixed {
	width: 100% !important;
	margin: 0 auto;
	max-width: 100%;
}
.nav_container.mast_absolute {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 110;
} /*abs pos for the mashead */
/* mobile nav JS activation */




.mobile.nav_container.sticky_menu .nav, 
.mobile.nav_container.toggle_sticky .nav {
	position: fixed;
	z-index: 190;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	top: 0;
}
/* special cases for left */
.mobile.normal.no_breakpoint .nav,
.mobile.nav_container.sticky_menu .nav.v_normal,
.mobile.nav_container.sticky_menu .nav.fixed_on_scroll:not(.fixed) {
	left: 0;
}

.mobile.nav_container.open .nav {
	display: block;
	width: 100%;
}
.mobile.nav_container.include_bg .nav {
	position: static !important;
	padding: 0 0 0 0 !important
}
.mobile.nav_container.sticky_header.fixed .nav, 
.mobile.nav_container.sticky_header.fixed_always .nav, 
.mobile.nav_container.sticky_header.fixed_on_scroll .nav {
	position: absolute;
	left: 0;
} 
/*only allow menu BG*/
.mobile.nav_container.sticky_header.include_bg .nav {
	position: static !important;
} 
/*includes header BG in expansion*/
/*m_area full fixed_always include_bg   nav_container  fixed */
.mobile.nav_container.sticky_header .logo .area_content_wrap, 
.mobile.nav_container.sticky_menu .logo .area_content_wrap {
	position: relative;
}
.mobile .secondary {
	width: 100%;
	z-index: 190;
}
.mobile .nav.fixed {
	z-index: 190;
}
.mobile .nav.colapsed {
	height:0;
	width: 100%;
}
.mobile .nav.colapsed .area_wrap {
	overflow-y: hidden;
	overflow-x: hidden;
}
.mobile .nav .area_wrap {
	overflow-y: scroll;
	overflow-x: hidden;
}
.mobile .nav.full .area_wrap {
	width: 100% !important;
	margin: 0;
	max-width: 100%;
}
.mobile .nav .nav_wrapper {
	max-width: 100%;
}


.mobile.nav,
.mobile.nav.colapsed,
.mobile.nav_container.sticky_menu .nav,
.mobile.nav_container.sticky_menu .nav.colapsed {
	display: block; 
	height: 0;
	overflow:hidden;
} /*min-height: 0;*/

/*-------------------- works on normal header --------------------*/
		.mobile.nav_container .nav.expanded,
		.mobile.normal.no_breakpoint .nav.expanded,
		.mobile.nav_container.sticky_menu .nav.expanded,

		.mobile.sticky_header.expanded .nav
		{
			height: 100vh !important;
			opacity: 1 !important;
			overflow:hidden !important;
		} /*min-height: 100vh;  */

		.mobile.nav_container .nav .area_wrap,
		.mobile.nav_container .nav .area_content_wrap{ 
			height: inherit; 
			opacity: inherit; 
		}



/*switch the logo to act like the masthead  for normal menu with variation in masthead/nav wrapping*/
.mobile.nav_container.normal .logo .area_content_wrap {
	position: relative;
}
/*
 special cases for bottom menu positioning
 
 .mobile.nav_container.nav_container.v_bottom_middle { height:
 auto;}
.mobile.nav_container.nav_container.v_bottom_middle.fixed.open { height:100vh;}*/

.mobile.nav_container.v_bottom_middle.sticky_header.fixed .nav, .mobile.nav_container.v_bottom_middle.sticky_header.fixed_always .nav, .mobile.nav_container.v_bottom_middle.sticky_header.fixed_on_scroll .nav, .mobile.nav_container.v_bottom_left.sticky_header.fixed .nav, .mobile.nav_container.v_bottom_left.sticky_header.fixed_always .nav, .mobile.nav_container.v_bottom_left.sticky_header.fixed_on_scroll .nav, .mobile.nav_container.v_bottom_right.sticky_header.fixed .nav, .mobile.nav_container.v_bottom_right.sticky_header.fixed_always .nav, .mobile.nav_container.v_bottom_right.sticky_header.fixed_on_scroll .nav {
	position: static;
} /*only allow menu BG*/
/*turn off BG, it will be set with javascript*/
.mobile.nav_container.v_bottom_middle.sticky_header.no_bg .area_wrap.in_masthead, 
.mobile.nav_container.v_bottom_left.sticky_header.no_bg .area_wrap.in_masthead, 
.mobile.nav_container.v_bottom_right.sticky_header.no_bg .area_wrap.in_masthead {
	clear: both;
}
.mobile .secondary .menu-toggle {
	color: #777;
	padding: 15px;
}
.mobile .secondary {
	position: static;
}
.mobile .secondary:not(.active) {
	padding: 0 0 0 0 !important;
	margin: 0 0 0 0 !important
}
.mobile .secondary.active {
	padding-bottom: 0;
}
.mobile .secondary.active > ul {
	display: block;
}
.mobile .secondary ul.menu {
	text-align: left;
}
.mobile .secondary li.menu-item[data-level="0"] {
	display: block;
}
.mobile .secondary li.menu-item > a {
	padding: 15px;
}
.mobile .secondary ul.menu {
}
.mobile .secondary ul.menu ul.sub-menu {
	position: relative;
	opacity: 1;
	visibility: visible;
	width: 100%;
	display: none;
	-moz-transition: none;
	-webkit-transition: none;
	-o-transition: color 0 ease-in;
	transition: none;
}
.mobile .secondary ul.menu ul.sub-menu ul.sub-menu {
	left: auto;
	top: auto;
}
.mobile .secondary li.from_left ul.sub-menu ul.sub-menu {
	right: auto;
}
.mobile .secondary li.menu-item a {
	/*border-bottom: 1px solid rgba(255, 255, 255, .15);*/
}
.mobile .nav:not(.menu_align_center) .secondary li.has-sub a {
	/*padding-right: 50px; not needed anymore*/
}
.mobile .secondary li a.toggle {
	border: 0;
}
.mobile .secondary .menu-toggle, .mobile .secondary .toggle, .mobile .secondary .close-menu {
	display: block;
}
.mobile .secondary li.has-sub > a:after, .mobile .secondary li li.has-sub > a:after, .mobile .secondary li.from_left li.has-sub > a:after {
	display: none;
}
