/* CSS for Navigational Menus */

/* Table of Contents

	- Mobile, Primary and Secondary Navigation Menu
	- Header Navigation Menu
	- Primary Navigation Menu
	- Secondary Navigation Menu
*/

.nav-mobile {
	display: none;
}

@media only screen and (max-width: 768px) {

.nav-mobile {
	display: block;
}
	
.genesis-nav-menu .sub-menu,
.nav-secondary .genesis-nav-menu .sub-menu {
	background: none;
}

/*
Mobile, Primary and Secondary Navigation Menu
---------------------------------------------------------------------------------------------------- */

	/* Menu Icon properties */
	
	#mobile-menu-icon,
	#primary-menu-icon,
	#secondary-menu-icon {
		cursor: pointer;
		display: block;
		padding: 11px 15px;
		padding: 1.1rem 1.5rem;
		text-align: center;
	}

	#mobile-menu-icon::before,
	#primary-menu-icon::before,
	#secondary-menu-icon::before {
		content: 'MENU \2630';
		letter-spacing: 1px;
	}
	
	#mobile-menu-icon:hover::before,
	#primary-menu-icon:hover::before,
	#secondary-menu-icon:hover::before {
		content: 'MENU \2637';
	}
	
	#mobile-menu-icon:active::before,
	#primary-menu-icon:active::before,
	#secondary-menu-icon:active::before {
		content: 'MENU \2637';
	}
	
	/* Hide Menu until it's toggled via script */
	
	.menu-mobile,
	.menu-primary,
	.menu-secondary {
		display: none;
	}
	
	/* Menu misc properties */
	
	.nav-mobile,
	.nav-primary,
	.nav-secondary {
		clear: both;
		color: #ccc;
		line-height: 1.5;
		width: 100%;
		z-index: 9999;
	}
	
	.nav-secondary {
		z-index: 9998;
	}
	
	.nav-mobile ul,
	.nav-primary ul,
	.nav-secondary ul {
		border: 1px solid rgba(0,0,0,0.2);
		border-width: 1px 0 0;
	}

	.nav-mobile .menu-item,
	.nav-primary .menu-item,
	.nav-secondary .menu-item {
		display: block;
		text-align: left;
	}

	.nav-mobile li,
	.nav-primary li,
	.nav-secondary li {
		position: relative;
	}
	
	.nav-mobile a,
	.nav-primary a,
	.nav-secondary a {
		border-bottom: 1px solid rgba(0,0,0,0.2);
		display: block;
		position: relative;
	}
	
	.nav-mobile .sub-menu,
	.nav-primary .sub-menu,
	.nav-secondary .sub-menu {
		border: 0;
		left: 0px;
		opacity: 1;
		position: relative;
		-webkit-transition: opacity .4s ease-in-out;
		-moz-transition:    opacity .4s ease-in-out;
		-ms-transition:     opacity .4s ease-in-out;
		-o-transition:      opacity .4s ease-in-out;
		transition:         opacity .4s ease-in-out;
		width: 100%;
		z-index: 99;
	}

	.nav-mobile .sub-menu a,
	.nav-primary .sub-menu a,
	.nav-secondary .sub-menu a {
		border-width: 0 0 1px;
		padding: 8px 30px;
		padding: 0.8rem 3rem;
		position: relative;
		width: 100%;
	}

	.nav-mobile .sub-menu a::before,
	.nav-primary .sub-menu a::before,
	.nav-secondary .sub-menu a::before {
		content: "- ";
		font-size: 14px;
		font-size: 1.4rem;
	}
		
	.nav-mobile .sub-menu li li a,
	.nav-primary .sub-menu li li a,
	.nav-secondary .sub-menu li li a {
		padding: 8px 40px;
		padding: 0.8rem 4rem;
	}
	
	.nav-mobile .sub-menu .sub-menu,
	.nav-primary .sub-menu .sub-menu,
	.nav-secondary .sub-menu .sub-menu {
		margin: 0;
	}

	.nav-mobile .menu-item:hover,
	.nav-primary .menu-item:hover,
	.nav-secondary .menu-item:hover {
		position: static;
	}

	.nav-mobile .menu-item:hover > .sub-menu,
	.nav-primary .menu-item:hover > .sub-menu,
	.nav-secondary .menu-item:hover > .sub-menu {
		left: auto;
		opacity: 1;
	}
	
/*
Header Navigation Menu
---------------------------------------------------------------------------------------------------- */
	
	/* Header Navigation Menu Icon properties */
	
	#header-menu-icon {
		border-bottom: 1px solid #ddd;
		border-top: 1px solid #ddd;
		cursor: pointer;
		display: block;
		padding: 24px 24px;
		padding: 2.4rem 2.4rem;
		text-align: center;
	}

	#header-menu-icon::before {
		color: #444;
		content: 'HEADER MENU \2630';
		font-weight: bold;
		letter-spacing: 1px;
	}
	
	#header-menu-icon:hover::before {
		color: #444;
		content: 'HEADER MENU \2637';
	}
	
	#header-menu-icon:active::before {
		color: #222;
		content: 'HEADER MENU \2637';
	}
	
	/* Hide Header Navigation Menu until it's toggled via script */
	
	#menu-header-navigation {
		display: none;
	}
	
	/* Header Navigation Menu misc properties */
	
	.nav-header {
		clear: both;
		color: #999;
		line-height: 1.5;
		width: 100%;
		z-index: 9999;
	}

	.nav-header .menu-item {
		display: block;
		text-align: left;
	}

	.nav-header a {
		background-color: #f0f0f0;
		border-bottom: 1px solid #ccc;
		color: #222;
		display: block;
		padding: 20px 24px;
		padding: 2rem 2.4rem;
		position: relative;
	}

	.nav-header a:hover,
	.nav-header .current-menu-item > a,
	.nav-header .sub-menu .current-menu-item > a:hover {
		background-color: #ddd;
		color: #222;
	}

	.nav-header .sub-menu .current-menu-item > a {
		color: #999;
	}

	.nav-header > .menu-item > a {
		text-transform: uppercase;
	}

	.nav-header .sub-menu {
		left: 0px;
		opacity: 1;
		position: relative;
		-webkit-transition: opacity .4s ease-in-out;
		-moz-transition:    opacity .4s ease-in-out;
		-ms-transition:     opacity .4s ease-in-out;
		-o-transition:      opacity .4s ease-in-out;
		transition:         opacity .4s ease-in-out;
		width: 100%;
		z-index: 99;
	}

	.nav-header .sub-menu a {
		background-color: #fff;
		border-bottom: 1px solid #ccc;
		font-size: 14px;
		font-size: 1.4rem;
		padding: 18px 30px;
		padding: 1.8rem 3rem;
		position: relative;
		width: 100%;
	}

	.nav-header .sub-menu a::before {
		content: "- ";
		font-size: 14px;
		font-size: 1.4rem;
	}
	
	.nav-header .sub-menu a:hover {
		background-color: #f7f7f7;
	}
	
	.nav-header .sub-menu li li a {
		padding: 18px 40px;
		padding: 1.8rem 4rem;
	}
	
	.nav-header .sub-menu .sub-menu {
		margin: 0;
	}

	.nav-header .menu-item:hover {
		position: static;
	}

	.nav-header .menu-item:hover > .sub-menu {
		left: auto;
		opacity: 1;
	}

/*
Primary Navigation Menu
---------------------------------------------------------------------------------------------------- */

	#primary-menu-icon {
		border-width: 0;
	}

/*
Secondary Navigation Menu
---------------------------------------------------------------------------------------------------- */

	#secondary-menu-icon {
		border-width: 0;
	}