/*------->>> TABLE OF CONTENTS <<<-------
	1. TOP NAV STYLES [Main Menu Bar]
	2. FLEXNAV BASE STYLES [Mobile Menu]
	3. SUBNAV STYLES [Sub Navigation on Interior Pages]
	4. MEDIA QUERIES [Desktop Menu Lives Here]
	5. OLD IE STYLES [Don't Style]
	
/*------->>> FONT STACKS & TYPOGRAPHY <<<-------
	Font Family: Lato, sans-serif; [Google Font | 300 400 700 & 900]
	Font Family: Fjalla One, sans-serif; [Google Font | 400]
	Font Family: FontAwesome [Icon Font]
		SAMPLE CSS USAGE: fortawesome.github.io/Font-Awesome/cheatsheet/
		.myDiv {
			font-family:"FontAwesome";
			content:"\f111";
		}
		SAMPLE HTML USAGE: fortawesome.github.io/Font-Awesome/examples/
		<span class="fa-stack fa-lg">
			<i class="fa fa-square-o fa-stack-2x"></i>
			<i class="fa fa-twitter fa-stack-1x"></i>
		</span>

*/

/*------->>> 1. TOP NAV STYLES <<<-------*/
nav.top {
	position:relative;
	z-index:1000;
	width:100%;
}
/*------->>> 2. FLEXNAV BASE STYLES <<<-------*/
.flexnav, 
.flexnav ul {
	list-style:none;
}
.flexnav {
	-webkit-transition:none;
	-moz-transition:none;
	-ms-transition:none;
	transition:none;
	-webkit-transform-style:preserve-3d;
	overflow:hidden;
	margin:0 auto;
	width:100%;
	max-height:0;
	padding-left:0;
}
.flexnav.opacity {
	opacity:0;
}
.flexnav.show {
	max-height:2000px;
	opacity:1;
	-webkit-transition:all .5s ease-in-out;
	-moz-transition:all .5s ease-in-out;
	-ms-transition:all .5s ease-in-out;
	transition:all .5s ease-in-out;
}
.flexnav.one-page {
	position:fixed;
	top:50px;
	right:5%;
	max-width:200px;
}
.flexnav ul {
	padding-left:0;
}
.flexnav li {
	font-size:100%;
	position:relative;
	overflow:hidden;
	list-style-type:none;
	line-height:1;
	margin:0;
}
.flexnav li a {
	position:relative;
	display:block;
	padding:.96em;
	z-index:2;
	overflow:hidden;
	color:#6d6e71;
	font-weight:400;
	background: #fff;
	text-decoration:none;
}
.flexnav li ul {
	width:100%;
}
.flexnav li ul li {
	font-size:14px;
	position:relative;
	overflow:hidden;
}
.flexnav li ul.show li {
	overflow:visible;
}
.flexnav li ul li a {
	display:block;
	background-color:#003D6C;
	color:#fff;
	position:relative;
	z-index:1000;
	text-align:left;
}
.flexnav ul li ul li a {
	background:#bfbfbc;
}
.flexnav ul li ul li ul li a {
	background:#cbcbc9;
}
.flexnav .touch-button {
	position:absolute;
	z-index:999;
	top:0;
	right:0;
	width:50px;
	height:50px;
	display:inline-block;
	background:#acaca1;
	background:rgba(0, 0, 0, 0.075);
	text-align: center;
}
.flexnav .touch-button:hover {
	cursor:pointer;
}
.flexnav .touch-button .navicon {
	position:relative;
	top:1.4em;
	font-size:12px;
	color:#666;
}
.menu-button {
	position:relative;
	display:block;
	padding:1em;
	background:none;
	color:#003D6C;
	font-weight:700;
	cursor:pointer;
}
.menu-button.one-page {
	position:fixed;
	top:0;
	right:5%;
	padding-right:45px;
}
.menu-button .touch-button {
	background:transparent;
	position:absolute;
	z-index:999;
	bottom:0;
	right:0;
	width:50px;
	height:50px;
	display:inline-block;
	text-align:center;
}
.menu-button .touch-button .navicon {
	font-size:16px;
	position:relative;
	top:1em;
	color:#003D6C;
}
/*------->>> 3. SUBNAV STYLES <<<-------*/
.subnav h2 {
}
.subnav ul {
	list-style-type:none;
	padding-left:0;
	text-transform:uppercase;
	font-family: "Fjalla One",sans-serif;
}
.subnav ul li ul {
	display:none;
	padding-left:10px;
}
.subnav ul li {
	border-bottom:1px solid #ababad;
	padding:5px;
	display:block;
	margin:0;
}
.subnav ul li a {
	color:#00457C;
	font-weight:400;
	text-decoration:none;
	font-size:0.875rem;
	display:block;
	-webkit-transition:all 0.3s ease-in-out;
	-moz-transition:all 0.3s ease-in-out;
	-ms-transition:all 0.3s ease-in-out;
	-o-transition:all 0.3s ease-in-out;
	transition:all 0.3s ease-in-out;
}
.subnav ul li a:hover {
	color:#6f6f6f;
	display:block;
	line-height:1.4rem;
	width:100%;
}
.subnav ul li ul li a {
	text-transform:none;
	color:#6f6f6f;
}
.subnav ul li ul li:last-child {
	border-bottom:0;
}
.subnav ul li ul li a:hover {
	color:#00457C;
}
/*------->>> 4. MEDIA QUERIES <<<-------*/
@media only screen and (min-width:40.063em) { /*- 641px and up -*/
	nav.top {
		width:auto;
		float:right;
		margin-right:0.625rem;
	}
	body.one-page {
		padding-top:70px;
	}
	.flexnav {
		overflow: visible;
	}
	.flexnav.opacity {
		opacity:1;
	}
	.flexnav.one-page {
		top:0;
		right:auto;
		max-width:1080px;
	}
	.flexnav li {
		position:relative;
		list-style:none;
		float:left;
		display:block;
		background:none;
		overflow:visible;
	}
	.flexnav li a {
		border-top:3px solid transparent;
		font-size:0.688rem;
		font-weight:bold;
		color:#000;
		background:none;
		padding:.7rem 0.5rem;
	}
	.flexnav li:hover > a {
		border-top:3px solid #00457F;
		color:#00457F;
	}
	.flexnav li > ul {
		position:absolute;
		top:calc(100% + 13px);
		left:0;
		width:175px;
	}
	.flexnav li > ul li {
		width:100%;
	}
	.flexnav li ul li > ul {
		margin-left:100%;
		top:0;
	}
	.flexnav li ul li a {
		border-top:0;
		background-color:#003D6C;
		color:#fff;
		font-weight:normal;
		border-bottom:1px dashed rgba(255,255,255,0.5);
	}
	.flexnav li ul li:last-child a {
		border-bottom:0;
	}
	.flexnav li ul li:hover a {
		border-top:0;
		background-color:#fff;
		color:#00457b;
	}
	.flexnav li ul.open {
		display:block;
		opacity:1;
		visibility:visible;
		z-index: 1;
	}
	.flexnav li ul.open li {
		overflow:visible;
		max-height:100px;
	}
	.flexnav li ul.open ul.open {
		margin-left:100%;
		top:0;
	}
	.no-touch .flexnav .touch-button,.touch-button .navicon {
		display:none;
	}
	.flexnav .touch-button,
	.flexnav .touch-button .navicon,
	.menu-button {
		display:none;
	} 
}
@media only screen and (min-width:48em) { /*- 768px and up -*/
	.flexnav li a {
		font-size:0.813rem;
		padding:.7rem 0.625rem;
	}
	.flexnav li > ul {
		top:calc(100% + 14px);
	}
}
@media all and (min-width:64em) { /*- 1024px and up -*/
	.flexnav li a {
		font-size:0.938rem;
		padding:.7rem 1rem;
	}
	.flexnav li > ul {
		top:calc(100% + 19px);
	}
}
/*------->>> 5. OLD IE STYLES <<<-------*/
.oldie body.one-page {
	padding-top:70px;
}
.oldie .flexnav {
	overflow:visible;
}
.oldie .flexnav.one-page {
	top:0;
	right:auto;
	max-width:1080px;
}
.oldie .flexnav li {
	position:relative;
	list-style:none;
	float:left;
	display:block;
	background-color:#a6a6a2;
	width:20%;
	min-height:50px;
	overflow:visible;
}
.oldie .flexnav li:hover > ul {
	display:block;
	width: 100%;
	overflow:visible;
}
.oldie .flexnav li:hover > ul li {
	width:100%;
	float:none;
}
.oldie .flexnav li a {
	border-left:1px solid #acaca1;
	border-bottom:none;
	overflow:visible;
}
.oldie .flexnav li > ul {
	background:#acaca1;
	position:absolute;
	top:auto;
	left:0;
	display:none;
	z-index:1;
	overflow:visible;
}
.oldie .flexnav li ul li ul {
	top:0;
}
.oldie .flexnav li ul li a {
	border-bottom:none;
}
.oldie .flexnav li ul.open {
	display:block;
	width:100%;
	overflow:visible;
}
.oldie .flexnav li ul.open li {
	width:100%;
}
.oldie .flexnav li ul.open ul.open {
	margin-left:100%;
	top:0;
	display:block;
	width:100%;
	overflow: visible;
}
.oldie .flexnav ul li:hover ul {
	margin-left:100%;
	top:0;
}
.oldie .menu-button {
	display:none;
}
.oldie.ie7 .flexnav li {
	width:19.9%;
}