/* RESPONSIVE MENU NAVIGATION */
/* IMPORTANT - Keep in mind that when updating styles, to update the correct screen size. */

.menu, .menu-link, nav, head { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

.container {width: 64em; margin: 0 auto; padding: 0;  position:relative;}
#leftHeader { position: relative; z-index: 99; }
#leftHeader, .container { width: 100%; }

nav {
	display:block;
	width: 100%;
	z-index: 1000;
	position:relative;
}

.menu-link {
	display: none;
	float: right;
	text-decoration: none;
	font: bold 1.2em  Tahoma, Arial, Sans-serif;
	text-align: left;
	color: #FFF;
	background: #8A1E04;
    padding: 10px;
    margin: 0;
}
	
.menu-link-bar {
    background-color: #fff;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15);
    display: block;
    height: 2px;
    margin: 4px;
    width: 22px;
}

.menu { 
	float: left;
	margin: 0;
	padding: 0;
	background: #8A1E04;
	-webkit-transition: all 0.3s ease-out;  
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out; 
	z-index: 1000;
}

.menu ul { 
	padding: 0px;
	margin: 0px;
	list-style: none;
	position: relative;
	text-align: left;
}
	
.menu > li > ul.sub-menu {
	padding: 4px 0;
	color: white;
	background-color: #557b85;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
	-webkit-background-clip: padding-box;
	-moz-background-clip: padding;
	background-clip: padding-box;
}

.menu ul:after {
	content: ""; clear: both; display: block;
}

.menu ul li {
	padding: 0px;
	text-align: left;
}
	
.menu > ul > li { 
	display: inline-block;
}

.menu ul li a { 
	display: block;
	text-decoration: none;
	color: #fff;
	font: normal 1em Tahoma, Arial, Sans-serif;
 	padding: 9px 18px;
}

.menu ul li a:hover { 
	display: block;
	text-decoration: none;
	color: #fff;
	background-color: #9d9fa3;
}

.menu ul ul {
	display: none; 
	position: absolute; 
	top:100%;
	font: normal Tahoma, Arial, Sans-serif;
}

.menu ul li:hover > ul {
	display: block;
}

.menu ul ul > li {
	position: relative;
	color: #fff;
	background-color: #557b85;
}

.menu ul ul li:hover > ul {
	/*display: none;*/
}

.menu ul ul > li a {
	font-size: .9em;
	padding: 10px 20px 10px 10px;
	height: auto;
	color: #FFF;
	width: 190px; 
}

.menu ul ul > li a:hover {
   background-color: #199aa0;
   color: #fff;
}

.menu ul ul ul {
	position: absolute; 
	left: 100%; 
	top:0;
}

/* we've added a twitter icon as a menu item */

.menu ul.twitterlist { 
	padding: 0px;
	margin: 0px;
	list-style: none;
	text-align: left;
	position: absolute;
	top: 0;
	left: 660px;
}	

#twitter {
	 padding: 0 3px; 
	 margin: 0 3px -8px 3px;
}	
	
#twitter li {
	padding: 0; 
	margin: 0;
}

#twitter a {
	padding: 2px 0; 
	margin: 0;
}

/* menu for portrait tablets and mobile devices */
@media  (max-width: 1020px) {
	.container {
		width: 100%; 
	}
}

@media  (max-width: 800px) {
	.menu ul li a { 
		padding: 8px 20px;
	}
}

@media  (max-width: 768px) {
	.container {
		margin: 0px auto; 
		padding: 0; 
	}

	a.menu-link {
		width: 100%;
		display: block;
	}
	
	.menu {
		clear: both;
		min-width: inherit;
		float: none;
	}
		
	.menu > ul > li { 
		border-bottom: 1px solid #fff;
	}
	
	.menu > ul ul  > li { 
		border-bottom: 1px solid #eee;
	}

	.menu > ul ul ul > li { 
		border-bottom: 1px solid #ddd;
	}
	
	.menu, .menu > ul ul {
		overflow: hidden;
		max-height: 0;
		background-color: #9d9fa3;
		width: auto;
	}
	
	.menu > li > ul.sub-menu {
		padding: 0px;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
		border-radius: 0px;
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
		-webkit-background-clip: padding-box;
		-moz-background-clip: padding;
		background-clip: padding-box;
	}
	
	.menu.active, .menu > ul ul.active {
		max-height: 85em;
	}
	
	.menu ul {
		display: inline;
	}
	
	.menu ul ul li:hover > ul {
		display: block;
	}
	
	.menu li, .menu > ul > li {
		display: block;
	}
	
	.menu ul li a { 
		display: block;
		text-decoration: none;
		color: #fff;
        padding: 10px;
		background-color: #78797d;
		position: relative;
	}
	
	.menu ul li a:hover { 
		display: block;
		text-decoration: none;
		color: #FFF;
		background-color: #9d9fa3;
	}
	
	.menu li.has-submenu > a:after {
		content: '+';
		position: absolute;
		top: 0;
		right: 0;
		display: block;
		padding: 10px 15px 12px 30px;
	}
	
	.menu li ul li.has-submenu > a:after {
		content: '+';
		position: absolute;
		top: 0;
		right: 0;
		display: block;
		padding: 10px 15px 12px 30px;
	}
	
	.menu li.has-submenu > a.active:after {
		content: "-";
	}

	.menu ul ul > li a {
		padding: 10px 15px 10px 20px;
		background-color: #508492;
		color: #fff;
		border: none;
		width: 100%;
	}

	.menu ul ul ul > li a {
        color: #fff;
		background-color: #5f8c98;
        padding: 10px 15px 10px 35px;
	}

	.menu ul ul, .menu ul ul ul {
		display: inherit;
		position: relative;
		left: auto; top:auto;
		box-shadow: none; 
	}
	
	.menu ul.twitterlist { 
		position: relative;
		left: 0;
	}	
	
	#twitter {
		padding: 0;
		margin: 0;
	}	
	
	#twitter li {
		padding: 0;
	}

	#twitter a {
		padding: 5px 10px;
	}
}
