﻿.clear{clear:both;}

/***** Start of primary nav ******/
#menu-button{display: none;}
nav.mobile {display:none;}

nav.primary { padding:0; display:flex; justify-content: stretch; align-items: stretch; margin:0; width:100%; position:relative; }
nav.primary ul { margin:0; padding:0;width:100%; position: relative; display:flex; justify-content: stretch; align-items: stretch; }
nav.primary ul li { position: relative; display:flex; justify-content: stretch; align-items: stretch; flex-grow: 1; margin:0; list-style-type:none; width:auto; }
nav.primary ul li a {
	color:#2b241d;
	font-size:17px;
	text-decoration:none; width: 100%; 
	position: relative; display:flex; justify-content: center; align-items: center; 
	margin:0;font-family: 'museo-sans', sans-serif!important; 
	text-align:center;
	text-transform:uppercase;
	-webkit-transition:.2s ease-in;  
	-moz-transition:.2s ease-in;  
	-o-transition:.2s ease-in;  
	transition:.2s ease-in;	
	font-weight:500; letter-spacing: .3px; 
	padding:0 16px;
	cursor: pointer; 
}	
nav.primary ul li a:hover { color:#384f99; }

nav.primary > ul > li > a:before, nav.primary > ul > li > a:after { position: absolute; content: ""; background-color: #384f99; transition: transform 0.4s ease; height: 1px; left: 12px; right: 12px; transform: scaleX(0); }

nav.primary > ul > li > a:after { bottom: 22px; transform-origin: bottom right; }

nav.primary > ul > li > a:hover:after { transform-origin: bottom left; transform: scaleX(1); }

nav.primary > ul > li > a:before { top: 22px; transform-origin: top left; }

nav.primary > ul > li > a:hover:before, nav.primary > ul > li:hover > a:before { transform-origin: top right; transform: scaleX(1); }

/* Appearance of the sub-level links */
nav.primary ul li li a { 
	font-size:16px;
	line-height:1.4;
	padding:10px;
	color:#fff;display:flex; justify-content: center; align-items: center; 
	background: #2b241d;
	text-align:center;
	border-right:none;
	border-left:none;
	border-bottom: #5a4d3c solid 1px;
}
/* Appearance of the sub-level links on hover */
nav.primary ul li li a:hover { background: #5a4d3c; color: #fff; }

nav.primary ul li li:last-child a { border-bottom: none; border-bottom-left-radius: 12px; border-bottom-right-radius: 12px; }

/* This controls the Primary nav dropdowns for sublinks. Should not have to edit this too muuch */
nav.primary ul ul {
    display: none;
    position: absolute; top: calc(100% - 12px); left: 50%; transform: translateX(-50%); 
	width: unset;
}
nav.primary ul ul ul { position: absolute; left: 100%; top:0; }
nav.primary ul li:hover > ul { display: block; line-height:18px; z-index: 100; }
nav.primary ul ul li { float: none; width: 200px; position: relative; margin:0; display: block; }

@media only screen and (max-width: 1508px) {
	nav.primary ul li a {font-size: 16px;padding: 0 3px;}
}

@media only screen and (max-width: 1380px) {
	nav.primary ul li a { font-size: 16px; }
	nav.primary > ul > li > a:before, nav.primary > ul > li > a:after { left: 6px; right: 6px; }
}

@media only screen and (max-width: 1320px) {
	nav.primary ul li a { font-size: 15px; }
	nav.primary > ul > li > a:before { top: 16px; }
	nav.primary > ul > li > a:after { bottom: 16px; }
}

@media only screen and (max-width: 1214px) {
	nav.primary ul li a { padding: 0 0px; }
}

/*

@media only screen and (max-width: 1200px) {
	nav.primary ul li a { padding: 0 14px; }
}
*/

@media only screen and (max-width: 1020px) {
	nav.primary > ul > li > a:before { top: 12px; }
	nav.primary > ul > li > a:after { bottom: 12px; }
}

/******** End of primary Nav ***************/

@media screen and (min-width: 881px)  {
	.menu-toggle.exit-click{
		display: none !important;
	}
}

@media screen and (max-width: 880px)  {
	.mobile + .menu-toggle.exit-click{
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		z-index: 499;
		pointer-events: none;
		background: rgba(36,32,33,0.33);
		opacity: 0;	
		transition: ease opacity 0.3s;
	}
	.mobile.open + .menu-toggle.exit-click{
		pointer-events: auto;
		opacity: 1;
		-webkit-backdrop-filter: blur(4px);
		backdrop-filter: blur(4px);
	}
/*==============================
	Mobile Nav Styles			
================================*/	
	nav.primary{display:none;} 
	
	#menu-button { 
		display: flex; justify-content: flex-end; align-items: stretch; 
		position: relative;
		z-index: 400; /* needs to be lower than nav.mobile, adjust as needed */
	}
	#menu-button a {
		color:#2b241d; transition: .25s ease all; padding: 0 min(5vw, 24px);
		font-size: 24px;
		text-decoration: none;
		cursor: pointer; display: flex; justify-content: center; align-items: center; column-gap: 12px; 
	}
	#menu-button a span { font-size: 16px; font-family: 'museo-sans', sans-serif!important; }
	#menu-button a:hover { color: #384f99; } 
	
	#menu-button a:before, #menu-button a:after { position: absolute; content: ""; background-color: #384f99; transition: transform 0.4s ease; height: 1px; left: 8px; right: 8px; transform: scaleX(0); }

	#menu-button a:after { bottom: 12px; transform-origin: bottom right; }

	#menu-button a:hover:after { transform-origin: bottom left; transform: scaleX(1); }

	#menu-button a:before { top: 12px; transform-origin: top left; }

	#menu-button a:hover:before, nav.primary > ul > li:hover > a:before { transform-origin: top right; transform: scaleX(1); }
	
	nav.mobile {
		position: fixed; z-index: 500; /* needs to be higher than #menu-button, adjust as needed */
		top: 0; left: -340px; display: block; overflow: auto; height: 100%; 
		width: min(100%, 320px); 
		background: #d9d1c7;
	}
	/* MENU HEADER STYLES */
	nav.mobile .mobile_top {
		position: relative; padding: 0; display: flex; height: 20px; margin: 50px 0 10px 0; 
	}

	/* MENU CLOSE 'X' BUTTON */
	nav.mobile .menu-toggle:not(.exit-click) {
		position: absolute; display: flex; justify-content: center; align-items: center; 
		font-family: Arial, sans-serif; text-decoration: none; cursor: pointer; 
		width: 50px; height: 50px; top: -38px; right: 13px; 
		font-size: 32px; font-weight: bold; 
		background: #384f99; color: #fff;
		transition: .25s ease all; 
	}
	nav.mobile .menu-toggle:not(.exit-click):hover { /* Menu close button on hover */
		background: #1d284e; color: #fff;
	}

	/* MENU LIST STYLE */
	nav.mobile ul {list-style:none;padding:0;margin:0;}
	nav.mobile ul ul {background: rgba(255, 255, 255, .5);}
	nav.mobile ul li {
		position:relative;
		/*border-top: 1px solid #454545;*/
		border-bottom: 1px solid #777;
	}
	nav.mobile ul li:first-child { border-top: 1px solid #777; }
	nav.mobile ul ul li:last-child {border-bottom:none;}

	/* FIRST LEVEL */
	nav.mobile ul li a {
		position: relative; padding: 12px;
		display: flex; justify-content: flex-start; align-items: center; column-gap: 12px; min-height: 50px; 
		font-size: 17px;font-family: 'museo-sans', sans-serif!important; 
		color: #2b241d;
		border-left: 4px #d9d1c7 solid;
		text-align: left; text-decoration: none; cursor: pointer; transition: .25s ease all; 
	}
	nav.mobile ul li a:hover {
		color: #384f99; background: #fff; 
		border-left: 4px #384f99 solid; /* border highlight - Change to fit match site colors */
	}

	/* SECOND LEVEL */
	nav.mobile ul li li a {
		/*background: #444;*/
		border-left: 4px rgba(0, 0, 0, 0) solid;
		position: relative;
		display: flex; justify-content: flex-start; align-items: center; column-gap: 12px; min-height: 50px; 
		padding: 12px 12px 12px 15px;
		color: #2b241d;
		text-decoration: none;
	}
	nav.mobile ul li li a:hover { background: rgba(255, 255, 255, .5); color: #384f99; }

	/* THIRD LEVEL */
	nav.mobile ul li li li a {
		position: relative; text-decoration: none;
		color: #fff;
		/*background: #555;*/
		border-left: 4px rgba(0, 0, 0, 0) solid;
		display: flex; justify-content: flex-start; align-items: center; column-gap: 12px; min-height: 50px; 
		padding: 12px 12px 12px 25px;
	}
	nav.mobile ul li li li a:hover { background: rgba(255, 255, 255, .5); color: #384f99; }

	nav.mobile ul li .click.open i:before { content: "\f068"; }

	.nav-footer {
		position:relative; text-align:center; 
		color:#2b241d; 
		font-size:15px; 
		padding:24px 12px;
	}
}

@media only screen and (max-width: 450px) {
	#menu-button a span { display: none!important; }
}