/*------->>> TABLE OF CONTENTS <<<-------
	1. TOP NAV STYLES [Main Menu Bar]
	2. FLEXNAV BASE STYLES [Responsive Menu]
	3. SUBNAV STYLES [Sub Navigation on Interior Pages]
	4. BREAD CRUMBS [Secondary navigation at top of interior pages]
	5. MEDIA QUERIES [Full Menu Lives Here]
	6. OLD IE STYLES [Don't Style]
	
/*------->>> COLOR PALETTE <<<-------
	#5a311e - Dark Brown [flevnav level1 link color, menu button color]
	#e7e1df - Light Brown [borders color]
	#655d5a - Gray Brown [flexnav level2 link color]
	#ccbda8 - Tan [tag icon color]
	#d95f43 - Dark Orange [navicon, hover link color]
	#f2eee9 - Tan [subNav bg color]
	#66412f - Brown [subnav header color, breadcrumbs link color]
	#d8dfcf - Lignt Brown [subNav border, subnav level 2 links, subnav navicon]
	
/*------->>> FONT STACKS & TYPOGRAPHY <<<-------
	Font-Family: Rubik, sans-serif [300,400,500,700 & 900]
	Font Family: PT Sans, sans-serif [400 & 700]
	Font Family: FontAwesome [Icon Font - http://fortawesome.github.io/Font-Awesome/cheatsheet/ ]
		SAMPLE USAGE:
		.myDiv {
			font-family:"FontAwesome";
			content:"\f111";
		}
	FlexNav:	Level One - 0.938rem PT Sans 700, 642 and up - 0.8rem, 768 and up - 0.938rem
				Level Two - 0.875rem PT Sans 600, 642 and up - 0.775rem
	SubNav:		Level One - 0.75rem Rubik 500
				Level Two - 0.75 Rubik 400
	BreadCrumbs:0.75rem Rubik 500	
		
*/
/*------->>> 1. TOP NAV STYLES <<<--------*/
nav.top {
	position:relative;
	z-index:1000;
}
/*------->>> 2. FLEXNAV BASE STYLES [Responsive Menu] <<<-------*/
.flexnav, .flexnav ul {
	list-style: none;
} 
.flexnav {
	width:100%;
	margin:0 auto;
	max-height:0;
	padding-left:0;
	overflow:hidden;
	-webkit-transition:none;
	-moz-transition:none;
	-ms-transition:none;
	transition:none;
	-webkit-transform-style:preserve-3d;
}
.flexnav.opacity {
	opacity:0;
}
.flexnav.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 {
	position:relative;
	overflow:hidden;
	font-size:100%;
}
.flexnav li a {
	position:relative;
	display:block;
	padding:0.625rem;
	overflow:hidden;
	background:#fff;
	font-size:0.938rem;
	font-weight:700;
	color:#5a311e;
	border-top:1px solid #e7e1df;
	text-decoration:none;
	z-index:2;
}
.flexnav li ul {
	width:100%;
}
/*
.flexnav > li:nth-child(2) > ul, .flexnav > li:nth-child(2) span.touch-button {
	display: none!important;
}*/
/*- nested UL -*/
.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;
	padding-left:2.375rem;
	background:#fff;
	font-size:0.875rem;
	font-weight:600;
	color:#655d5a;
	border-top:1px dashed #e7e1df;
}
.flexnav li ul li a::before {
	font-family:"FontAwesome";
	/*content:"\f02b";*/
	content:"\f02c";
	font-size:0.688rem;
	font-weight:normal;
	color:#CCBDA8;
	position:absolute;
	left:1.25rem;
	top:0.688rem;
}
.flexnav li ul li:first-child a {
	border-top:1px solid #e7e1df;	
}
/*- drop down arrows -*/
.flexnav .touch-button {
	position:absolute;
	top:0;
	right:0;
	width:50px;
	height:45px;
	display:inline-block;
	background:transparent;
	text-align:center;
	z-index:999;
}
.flexnav .touch-button:hover {
	cursor:pointer;
}
.flexnav .touch-button .navicon {
	position:relative;
	top:0.875em;
	font-size:0.75rem;
	color:#d95f43;
	font-family:Arial;
}
/*- menu button [bars?] -*/
.menu-button {
	position:relative;
	display:block;
	padding:32px 25px 0 0;
	font-family:"Rubik", sans-serif;
	font-weight:500;
	font-size:1.063rem;
	color:#5a311e;
	text-transform:uppercase;
	cursor:pointer;
	text-align:right;
}
.menu-button.one-page {
	position:fixed;
	top:0;
	right:5%;
	padding-right:45px;
}
.menu-button .touch-button {
	position:absolute;
	top:32px;
	right:0;
	width:25px;
	height:25px;
	display:inline-block;
	text-align:right;
	z-index:999;
}
.menu-button .touch-button .navicon {
	position:relative;
	top:0rem;
	font-size:1.5rem;
	color:#5a311e;
}
/*------->>> 3. SUBNAV STYLES <<<-------*/
.subnavBar { /*Fullwidth Subnav*/
	background:#F5ECE0;
	background-image: -ms-linear-gradient(top, #FFFFFF 0%, #F5ECE0 100%); 
	background-image: -moz-linear-gradient(top, #FFFFFF 0%, #F5ECE0 100%); 
	background-image: -o-linear-gradient(top, #FFFFFF 0%, #F5ECE0 100%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #FFFFFF), color-stop(100, #F5ECE0));
	background-image: -webkit-linear-gradient(top, #FFFFFF 0%, #F5ECE0 100%); 
	background-image: linear-gradient(to bottom, #FFFFFF 0%, #F5ECE0 100%);
	margin-bottom:25px;
}
.subnav {
	width:100%;
	max-width:270px;
	margin:0px auto 25px auto;
	padding:10px 25px 50px 25px;
	position:relative;
	z-index:1000;
	background:#f2eee9;
	text-transform:uppercase;
}
.subnavBar .subnav {
	max-width:100%;
	margin:0;
	padding:0;
	background:transparent;
	position:relative;
}
.subnav h2 {
	margin:0 0 50px 0;
	padding:0;
}
.subnav h2 a, .subnav h2 a:active, .subnav h2 a:visited, .subnav h2 a:hover {
	font-weight:500;
	font-size:0.813rem;
	letter-spacing:0.06rem;
	color:#66412f;
}
.subnav ul {
    list-style-type:none;
    margin:0;
    padding-left:0;
}
.subnavBar ul {
	overflow:visible;
	position:relative;
}
.subnav ul li {
	padding:0;
}
.subnavBar ul li {
	display:block;
	float:left;
	position:relative;
	overflow:visible;
}
.subnav ul li a {
	display:block;
	padding:3px 0;
	font-family:"Rubik", sans-serif;
	font-weight:500;
	font-size:0.813rem;
	letter-spacing:0.06rem;
	color:#66412f;
	border-bottom:1px dashed #d8d4cf;
}
.subnavBar .subnav ul li a {
	padding:7px 15px;
	border:0;
	font-weight:400;
	border-right:1px dashed #d8d4cf;
	letter-spacing:0;
	font-size:0.625rem;
}
.subnavBar .subnav ul li:first-child a {
	border-left:1px dashed #d8d4cf;
}
.subnav ul li:last-child a {
	border-bottom:0px;
}
.subnav .hasChildren:after {
    float:right;
    position:relative;
    right:0;
    top:0.438rem;
	content:"\f107";
    font-family:"FontAwesome";		
	background:#CCBDA8;
	width:0.625rem;
	height:0.625rem;
	font-size:0.75rem;
	font-weight:600;
	line-height:0.65rem;
	text-align:center;
	color:#fff;
	-webkit-border-radius:50%;
	-moz-border-radius:50%;
	border-radius:50%;
}
.subnavBar .subnav .hasChildren:after {
	margin-left:5px;
}
.subnav ul li a:hover, .subnav ul li a:active {
	color:#d95f43;
}
.subnav li.active a {
	color:#d95f43;
}
/*- Nested UL -*/
.subnav ul li ul {
	display:none;
	padding:0;
	margin:0;
}
.subnavBar .subnav ul li > ul {
	position:absolute;
	top:auto;
	left:0;
	min-width:155px;
	border:0px;
	background:#F5ECE1;
}
.subnavBar .subnav ul li > ul li {
	width:100%;
	height:auto;
}
.subnav ul li ul li {
	padding:0;
	position:relative;
}
.subnav ul li ul li a {
	display:block;
	padding:3px 0 3px 1.688rem;
	font-weight:500;
	font-size:0.813rem;
	letter-spacing:0.06rem;
	color:#655d5a;
	border-bottom:1px dashed #d8d4cf;
	text-transform:none;
}
.subnavBar .subnav ul li ul li a {
	border-bottom:1px dashed #d8d4cf;
	padding-left:1.688rem;
}
.subnavBar .subnav ul li ul li:first-child a {
	border-top:1px dashed #d8d4cf;
}
.subnav ul li ul li:last-child a {
	border-bottom:1px dashed #d8d4cf;
}
.subnav ul li ul li a::before {
	font-family:"FontAwesome";
	/*content:"\f02b";*/
	content:"\f02c";
	font-size:0.688rem;
	font-weight:normal;
	color:#CCBDA8;
	position:absolute;
	left:0.625rem;
	top:0.188rem;
}
.subnavBar .subnav ul li ul li a::before {
	left:0.625rem;
	top:0.5rem;
}
.subnav ul li ul li a:hover, .subnav ul li ul li a:active, .subnav ul li ul li a:hover::before {
	color:#d95f43;
}
/*------->>> 4. BREAD CRUMBS <<<-------*/
.content-area .bread_crumbs {
	margin:2em 0;
	font-size:0.75rem;
	font-weight:600;
	color:#655d5a;
	text-transform:uppercase;
	letter-spacing:0.06rem;
}
.content-area .bread_crumbs a {
	font-family:"Rubik", sans-serif;
	position:relative;
	font-weight:500;
	color:#66412f;
	text-transform:uppercase;
	letter-spacing:0.06rem;
	line-height:1.3rem;
	border-bottom:none !important;
}
.content-area .bread_crumbs a:hover {
	color:#f57251;
	background:transparent;
}
.content-area .bread_crumbs span {
	background:#d8d4cf;
	margin:0 0.438rem;
	width:0.625rem;
	height:0.625rem;
	font-size:0.625rem;
	font-weight:700;
	line-height:0.625rem;
	text-align:center;
	color:#fff;
	-webkit-border-radius:50%;
	-moz-border-radius:50%;
	border-radius:50%;
}
.content-area .bread_crumbs  a:last-child {
	color:#d95f43;
}
/*------->>> 5. MEDIA QUERIES <<<-------*/
@media all and (min-width:40.125em) { /*- 642px and up -*/
	/*---> Full Menu <---*/
	body.one-page {
		padding-top:70px;
	}
	nav.top {
		position:relative;
		float:right;
		margin-right:7px;
	}
	.flexnav {
		overflow:visible;
		max-height:none;
	}
	.flexnav.opacity {
		opacity:1;
	}
	.flexnav.one-page {
		top:0;
		right:auto;
		max-width:1080px;
	}
	.flexnav li {
		display:block;
		float:left;
		position:relative;
		overflow:visible;
		list-style:none;
		background:none;
	}
	.flexnav > li {
		position:static;
	}
	.flexnav li a {
		padding:1rem 0.28rem 0 0.28rem;
		margin-bottom:1.3rem;
		height:100%;
		background:none;
		font-size:0.75rem;
		border:none;
	}
	.flexnav li:hover > a{
		color:#d95f43;
	}
	/*---> Nested UL <---*/
	.flexnav li ul {
		display:none;
		margin-bottom:0rem;	
		background:#F5ECE0;
		background-image:-moz-linear-gradient(left, #fff 0%, #F5ECE0 10%, #F5ECE0 90%, #fff 100%);
		padding:0;
		-webkit-border-radius:0;
		-moz-border-radius:0;
		border-radius:0;
		box-shadow:none;
	}
	.flexnav li > ul {
		position:absolute;
		top:auto;
		bottom:-7px;
		left:0;
		width:100%;
		min-width:477px;
	}
	.flexnav li > ul li {
		display:block;
		width:auto;
		height:auto;
	}
	.flexnav li ul li a {
		background:transparent;
		padding:.375em;
		font-size:0.57rem;
		font-weight:500;
		text-transform:uppercase;
		color:#66412f;
		margin-bottom:0rem;	
	}
	.flexnav li ul li a:hover {
		color:#d95f43;
	}
	.flexnav li ul li a,
	.flexnav li ul li:first-child a,
	.flexnav li ul li:last-child a	{
		border:0px;
	}
	.flexnav li ul li:last-child a {
		-webkit-border-radius:0;
		-moz-border-radius:0;
		border-radius:0;
	}
	.flexnav li ul li a::before {
		content:"";
	}
	.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 {
		background:#f2eee9;
		background: -webkit-linear-gradient(#fff, #f2eee9 7%); /* For Safari 5.1 to 6.0 */
		background: -o-linear-gradient(#fff, #f2eee9 7%); /* For Opera 11.1 to 12.0 */
		background: -moz-linear-gradient(#fff, #f2eee9 7%); /* For Firefox 3.6 to 15 */
		background: linear-gradient(#fff, #f2eee9 7%); /* Standard syntax (must be last) */
	}
}
@media all and (min-width:48em) { /*- 768px and up -*/
	/*---> Full Menu <---*/
	.flexnav li a {
		padding:1rem 0.5rem 0 0.5rem;
		margin-bottom:2rem;
		font-size:0.8em;
	}
	/*- Nested Menu -*/
	.flexnav li > ul {
		bottom:0;
		min-width:560px;
	}
	.flexnav li ul li a {
		padding:0.125rem .375rem;
		font-size:0.625rem;
	}
	/*- drop down arrows -*/
	.flexnav .touch-button,.touch-button .navicon {
		/*display:inline-block;*/
	}
	.flexnav .touch-button {
		position:absolute;
		top:0.938rem;
		right:-0.3rem;
		width:0.938rem;
		height:0.938rem;
	}
	.flexnav .touch-button .navicon {
		top:0em;
		font-size:0.563rem;
	}
	.flexnav li:first-child a:after,
	.flexnav li:nth-child(2) a:after {
		font-family:"FontAwesome";
		content:"\f0d7";
		font-size:0.688rem;
		font-weight:normal;
		color:#DB5E3D;
		position:absolute;
		right:0rem;
		bottom:-0.125rem;
	}
	/* Remove Arrow for Second Level */
	.flexnav li ul li a:after {
		content:"";
		display:none;
	}
	/*- Subnav -*/
	.subnavBar .subnav ul li a {
		font-size:0.75rem;
	}
}
@media all and (min-width:64em) { /*- 1024px and up -*/
	.flexnav li a {
		padding:2rem 1.25rem 0 1.25rem;
		margin-bottom:2.625rem;
		font-size:1.063rem;
	}
	.flexnav li:last-child a {
		padding-right:0;
	}
	.flexnav li ul li a {
		padding:0.125rem 0.563rem;
		font-size:0.813rem;
	}
	.flexnav li > ul {
		bottom:-1px;
		min-width:735px;
	}
	/*- drop down arrows -*/
/*	.flexnav .touch-button {
		top:1.875rem;
		right:0.313rem;
	}
	.flexnav .touch-button .navicon {
		top:0em;
	}*/
	.flexnav li:first-child a:after,
	.flexnav li:nth-child(2) a:after {
		font-size:1rem;
		right:0.375rem;
		bottom:-0.063rem;
	}
	/*- Subnav -*/
	.subnavBar .subnav ul li a {
		font-size:0.813rem;
	}
}
@media all and (min-width:71.250rem) { /*- 1140px and up -*/
	.flexnav li a {
		padding:2rem 1.25rem 0 1.25rem;
		margin-bottom:3.35rem;
	}
}
/*------->>> 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%;
}