/*------->>> TOP NAV STYLES <<<--------*/
.navigation {
	background:rgba(0,0,0,.80);
}
nav.top {
	position:relative;
	z-index:1000;
}
/*------->>> FLEXNAV BASE STYLES [Mobile Menu] <<<-------*/
.flexnav, .flexnav ul {
	list-style: none;
} 
.flexnav {
	overflow:hidden;
	margin:0 auto;
	width:100%;
	max-height:0;
	padding:0;
	position:absolute;
	z-index:99999;
	-webkit-transform-style:preserve-3d;
	-webkit-transition:all .5s cubic-bezier(0.77, 0, 0.175, 1);
	-moz-transition:all .5s cubic-bezier(0.77, 0, 0.175, 1);
	-ms-transition:all .5s cubic-bezier(0.77, 0, 0.175, 1);
	transition:all .5s cubic-bezier(0.77, 0, 0.175, 1);
}
.flexnav.opacity {
	opacity:1;
}
.flexnav.flexnav-show {
	max-height:2000px;
	opacity:1;
	-webkit-transition:all .5s cubic-bezier(0.77, 0, 0.175, 1);
	-moz-transition:all .5s cubic-bezier(0.77, 0, 0.175, 1);
	-ms-transition:all .5s cubic-bezier(0.77, 0, 0.175, 1);
	transition:all .5s cubic-bezier(0.77, 0, 0.175, 1);
}
.flexnav.one-page {
	position:fixed;
	top:50px;
	right:5%;
	max-width:200px;
}
.flexnav ul {
	padding-left:0;
}
.flexnav li {
	position:relative;
	overflow:hidden;
	font-size:100%;
}
.flexnav li a {
	background:rgba(0,0,0,.95);
	position:relative;
	display:block;
	padding:0.75rem 1rem;
	overflow:hidden;
	font-size:1rem;
	font-weight:300;
	color:#fff;
	border-top:1px solid #000;
	text-decoration:none;
	text-transform:uppercase;
	z-index:2;
}
/*- nested UL -*/
.flexnav li ul {
	width:100%;
	border-top:1px solid #000;
	background:rgba(0,0,0,.95);
}
.flexnav li ul li {
	position:relative;
	overflow:hidden;
	font-size:100%;
}
.flexnav li ul.flexnav-show li {
	overflow:visible;
}
.flexnav li ul li a {
	display:block;
	background:transparent;
	font-size:1rem;
	text-transform:none;
	border-top:1px dashed #000;
}
.flexnav li ul li:first-child a {
	border-top:0px;	
}
/*- drop down arrows -*/
.flexnav .touch-button {
	position:absolute;
	z-index:999;
	top:0;
	right:0;
	width:50px;
	height:50px;
	display:inline-block;
	background:transparent;
	text-align:center;
}
.flexnav .touch-button:after {
	font-family:FontAwesome;
	content:"\f0d7";
	color:#FFF;
	font-size:1.5em;
	line-height:2.125em;
	margin:0 auto;
	display:inline-block;
	-webkit-transition:all 0.2s ease-in-out;
	transition:all 0.2s ease-in-out;
}
.flexnav .touch-button.active:after {
	transform:rotate(180deg);
}
.flexnav .touch-button:hover {
	cursor:pointer;
}
.flexnav .touch-button .navicon {
	display:none;
}
/*- menu button [bars?] -*/
.menu-button {
	position:relative;
	display:block;
	padding:0.75rem 1rem;
	font-weight:400;
	font-size:1rem;
	color: #fff;
	text-transform:uppercase;
	cursor:pointer;
	background:rgba(0,0,0,.80);
}
.menu-button.one-page {
	position:fixed;
	top:0;
	right:5%;
	padding-right:45px;
}
.menu-button .touch-button {
	position:absolute;
	top:0;
	right:0;
	width:45px;
	height:45px;
	display:inline-block;
	text-align:center;
	z-index:999;
}
.menu-button .touch-button .navicon {
	display:block;
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	left:12px;
	right:12px;
	height:2px;
	background:#fff;
	-webkit-transition:background 0.2s;
	transition:background.2s;
}
.menu-button .touch-button .navicon:before {
	position:absolute;
	display:block;
	left:0;
	width:100%;
	height:2px;
	background-color:#fff;
	content:"";
	top:-8px;
	-webkit-transition-property:top, -webkit-transform;
	transition-property:top, transform;
	-webkit-transition-duration:.3s, .3s;
	transition-duration:.3s, .3s;
	-webkit-transition-delay:.3s, 0s;
	transition-delay:.3, 0s;
}
.menu-button .touch-button .navicon:after {
	position:absolute;
	display:block;
	left:0;
	width:100%;
	height:2px;
	background-color:#fff;
	content:"";
	bottom:-8px;
	-webkit-transition-property:bottom, -webkit-transform;
	transition-property:bottom, transform;
	-webkit-transition-duration:.3s, .3s;
	transition-duration:.3s, .3s;
	-webkit-transition-delay:.3s, 0s;
	transition-delay:.3s, 0s;
}
.menu-button .touch-button.active .navicon {
	background:transparent;
}
.menu-button .touch-button.active .navicon:before,
.menu-button .touch-button.active .navicon:after {
	-webkit-transition-duration:.3s, .3s;
	transition-duration:.3s, .3s;
	-webkit-transition-delay:.3s, 0s;
	transition-delay:0s, 0.3s;
}
.menu-button .touch-button.active .navicon:before {
	top:0;
	-webkit-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
}
.menu-button .touch-button.active .navicon:after {
	bottom:0;
	-webkit-transform:rotate(-45deg);
	-ms-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
/*------->>> SUBNAV STYLES <<<-------*/
.subnav {
	width:100%;
	max-width:270px;
	margin:0 auto;
	padding:0;
	position:relative;
}
.subnav h2 {
	position:relative;
	margin:0;
	padding:15px 0;
	background:#5E6954;
	font-weight:400;
	font-size:0.95rem;
	color:#fff;
	text-transform:uppercase;
	text-align:center; 
}
.subnav h2 a,
.subnav h2 a:active,
.subnav h2 a:visited,
.subnav h2 a:hover {
	text-decoration:none;
}
.subnav ul {
    list-style-type:none;
    margin:0;
    padding-left:0;
	background-image: -moz-linear-gradient( 90deg, rgb(239,236,217) 0%, rgb(225,223,208) 93%);
	background-image: -webkit-linear-gradient( 90deg, rgb(239,236,217) 0%, rgb(225,223,208) 93%);
	background-image: -ms-linear-gradient( 90deg, rgb(239,236,217) 0%, rgb(225,223,208) 93%);
	padding-bottom:75px;
	margin-bottom:25px;
}
.subnav ul li {
	padding:0;
}
.subnav ul li a {
	display:block;
	padding:10px 0 10px 20px;
	font-size:0.9rem;
	font-weight:500;
	color:#545353;
	text-decoration:none;
	border-bottom:1px solid #d4c8b3;
}
.subnav ul li:first-child a {
}
.subnav ul li:last-child a {
}
.subnav ul li a:hover,
.subnav ul li a.active {
	background:#DFDBC3;
	color:#545353;
}
.subnav .hasChildren:after {
    float:right;
    position:relative;
    right:10px;
    top:1px;
	content:"\f107";
    font-family:"FontAwesome";
    font-size:1em;
	color:#545353;
}
/*- Nested UL -*/
.subnav ul li ul {
	display:none;
	padding:0;
	margin:0;
	border:none;
	border-radius:0;
	-moz-border-radius:0;
	-webkit-border-radius:0;
	-webkit-box-shadow:none;
	-moz-box-shadow:none;
	box-shadow:none;
}
.subnav ul li ul li {
	padding:0;
}
.subnav ul li ul li a {
	display:block;
	padding:10px 0 10px 20px;
	background:#DFDBC3;
    font-size:0.9rem;
	font-weight:300;
	color:#545353;
	text-align:left;
	text-decoration:none;
}
.subnav ul li ul li a:hover,
.subnav ul li ul li a:active {
	background:#859277;
	color:#fff;
}
/*------->>> BREAD CRUMBS <<<-------*/
.bread_crumbs {
	color:#000;
	font-size:0.875rem;
	margin:2em 0 1.5em 0;
}
.bread_crumbs a {
	color:#5e6954 !important;
	text-decoration:none;
	font-weight:400 !important;
}
.bread_crumbs a:hover {
	color:#383E32 !important;
}
.bread_crumbs a:last-of-type {
    font-weight:600 !important;
}
/*------->>> MEDIA QUERIES <<<-------*/
@media all and (min-width:640px) { /*- 640px and up -*/
	/*---> Desktop Menu <---*/
	body.one-page {
		padding-top:70px;
	}
	nav.top {
	}
	.flexnav {
		overflow:visible;
		position:relative;
	}
	.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;
		width:auto;
		overflow:visible;
		text-transform:uppercase;
		width:12.5%; /* 8 Menu items */
/*		width:14.28%; - 7 menu items */
		height:55px;
		text-align:center;
		-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 li a {
		border:none;
		height:100%;
		color:#fff;
		font-size:0.625rem;
		line-height:1rem;
		background:none;
	}
	/*- Padding for Verticle Alignment -*/
	.flexnav li:first-child a,
	.flexnav li:nth-child(2) a,
	.flexnav li:nth-child(6) a,
	.flexnav li:nth-child(8) a	{
		padding-top:20px;
	}
	.flexnav li:hover {
		background:rgba(94,105,84,0.7);
	}
	.flexnav li ul {
		border:none;		
		display:none;
	}
	/*- nested UL -*/
	.flexnav li ul {
		display:none;
	}
	.flexnav li > ul {
		position:absolute;
		top:auto;
		left:0;
		min-width:155px;
		box-shadow:none;
		border:0px;
	}
	.flexnav li > ul li {
		width:100%;
		height:auto;
	}
	.flexnav li ul li > ul {
		margin-left:100%;
		top:0;
	}
	.flexnav li ul li a {
		padding:0.438rem 0.625rem;
		background:#000;
		font-weight:400;
		font-size:0.75rem;
		color:#fff;
		border:0;
		box-shadow:none;
		text-align:left;
		-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;
	}
	/* Reset Verticle padding for Second Level */
	.flexnav li ul li:first-child a,
	.flexnav li ul li:nth-child(2) a,
	.flexnav li ul li:nth-child(3) a,
	.flexnav li ul li:nth-child(4) a,
	.flexnav li ul li:nth-child(5) a,
	.flexnav li ul li:nth-child(6) a,
	.flexnav li ul li:nth-child(7) a,
	.flexnav li ul li:nth-child(8) a,
	.flexnav li ul li:nth-child(9) a,
	.flexnav li ul li:nth-child(10) a	{
		padding:0.438rem 0.625rem;
	}
	.flexnav li ul li:last-child a {
		border-bottom:none;
	}
	.flexnav li ul li:hover a {
		background:#5E6954;
		border:0;
	}
	.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;
	}
	/*- drop down arrows -*/
	.flexnav .touch-button,.touch-button .navicon {
		display:none;
	}
	/*- menu button -*/
	.menu-button {
		display:none;
	}
	/*---> Subnav <---*/
	.subnav {
		margin-top:65px;
		z-index:800;
	}
	.subnav ul li {
		position:relative;
	}
	.subnav ul li ul {
		display:none;
		position:absolute;
		top:-1px;
		margin-left:100%;
		min-width:150px;
	}
	.subnav ul li ul li {
		border:0;
	}
	.subnav ul li ul li a,
	.subnav ul li ul li a:visited {
		border:1px solid #d4c8b3;
		border-width:1px 1px 0 1px;
	}
	.subnav ul li ul li:first-child a {
		border-left:0px;
	}
	.subnav ul li ul li:last-child a {
		border-bottom:1px solid #d4c8b3;
	}
	.subnav .hasChildren:after {
		content:"\f105";
		font-family:"FontAwesome";
	}
}
@media all and (min-width:1024px) {
	.flexnav li a {
		font-size:0.75rem;
	}
	/*- Padding for Verticle Alignment -*/	

}
/*------->>> 6. OLD IE STYLES [Don't Style] <<<-------*/
.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%;
}