﻿.clear{clear:both;}

/***** Start of primary nav ******/
#menu-button{display: none;}
nav.mobile {display:none;}

nav.primary {
	padding:0;
	display:flex;align-items: stretch; justify-content: flex-end; 
	margin:0;
	width:100%;
	position:relative;
}
nav.primary ul {
	margin:0; 
	padding:0;position: relative; 
	display:flex;align-items: stretch; justify-content: flex-end; 
}
nav.primary ul li {
	display:flex;align-items: stretch; 
	margin:0;position: relative; 
	list-style-type:none; 
	width:auto;
}
nav.primary ul li.has-btnclass { padding: 10px 0 10px 8px; }
nav.primary ul li a:not(.btnclass) {
	color:#fff;
	font-size:17px;
	text-decoration:none;
	display:flex; justify-content: center; align-items: center; column-gap: 6px; 
	margin:0;
	text-align:center; position: relative; 
	text-transform:uppercase; letter-spacing: 2px; 
	-webkit-transition:.2s ease-in;  
	-moz-transition:.2s ease-in;  
	-o-transition:.2s ease-in;  
	transition:.2s ease-in;	
	font-weight:500;
	padding:0 20px;
	cursor: pointer; 
}	
nav.primary ul li a:not(.btnclass):hover {
	color:#f49f00;
}
nav.primary ul li a i { font-size: 12px; transition: .2s ease all; }
nav.primary ul li a:hover i, nav.primary ul li:hover a i { color:#f49f00; transform: rotateX(180deg); transition: .3s ease all; }
/* Appearance of the sub-level links */
nav.primary ul li li a, nav.primary ul li li a:not(.btnclass) { 
	font-size:17px;
	line-height:22px;
	padding:6px 12px;
	color:#fff;
	background: #121212;
	text-align:right;display:flex; justify-content: flex-end; align-items: center; column-gap: 6px; min-height: 42px; 
	border-right:none;
	border-left:none;font-weight:400;
	border-bottom: rgba(54, 54, 54, 1) solid 1px;letter-spacing: 1px; 
}
/* Appearance of the sub-level links on hover */
nav.primary ul li li a:hover, nav.primary ul li li a:not(.btnclass):hover { 
	background: #0d0d0d; color:#f49f00;
}

/* 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: 100%; right: 0; 
	width: unset;
}
nav.primary ul ul ul {
    position: absolute; 
    right: 100%;
    top:0; 
}
nav.primary ul li:hover > ul {  
    display: flex; flex-direction: column; align-items: stretch; 
    line-height:18px; 
    z-index: 100;
}
nav.primary ul ul li {
    float: none; 
	min-width: 230px; 
    position: relative;
    margin:0;
	display: block;
}

@media only screen and (max-width: 1600px) {
	nav.primary > ul > li > a:not(.btnclass) { padding: 0 16px; }
}

@media only screen and (max-width: 1500px) {
	nav.primary > ul > li > a:not(.btnclass) { font-weight: 400; padding: 0 14px; }
}

@media only screen and (max-width: 1400px) {
	nav.primary > ul > li > a:not(.btnclass) { font-size: 16px; }
}

@media only screen and (max-width: 1320px) {
	nav.primary ul li.has-btnclass { padding-left: 4px; }
	nav.primary > ul > li > a:not(.btnclass) { padding: 0 10px; }
	nav.primary > ul > li > a.btnclass { padding: 0 16px!important; }
}

/******** End of primary Nav ***************/

@media screen and (min-width: 1250px)  {
		
	.menu-toggle.exit-click{
		display: none !important;
	}
}

@media screen and (max-width: 1249px)  {
	
	.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:#fff;
		font-size: 24px;
		text-decoration: none;
		cursor: pointer; 
		display: flex; justify-content: center; align-items: center; padding: 0 32px; column-gap: 10px; 
		-webkit-transition:.2s ease-in;  
	-moz-transition:.2s ease-in;  
	-o-transition:.2s ease-in;  
	transition:.2s ease-in;	
	}
	#menu-button a span {
	font-size:17px;
	text-decoration:none;
	text-align:center;
	text-transform:uppercase; letter-spacing: 2px; 
	-webkit-transition:.2s ease-in;  
	-moz-transition:.2s ease-in;  
	-o-transition:.2s ease-in;  
	transition:.2s ease-in;	
	font-weight:500; }
	#menu-button a:hover { color: #f49f00; }
	
	nav.mobile {
		display: block;
		position: fixed;
		top: 0;
		left: -380px;
		width: min(100%, 350px);
		height: 100%;
		background: #202020;
		z-index: 500; /* needs to be higher than #menu-button, adjust as needed */
		overflow:auto;
	}

	/* MENU HEADER STYLES */
	nav.mobile .mobile_top {
		position: relative;
		display:block;
		padding: 18px 14px;
		color: #999;
		font-size: 18px;
		font-weight: 400;
	}
	
	.mobilenavlogo {
		position: relative; width: min(60vw, 230px); height: 50px; display: flex; 
	}
	.mobilenavlogo img { width: 100%; max-width: 100%; height: auto; object-fit: contain; object-position: 0% 50%; }

	/* MENU CLOSE 'X' BUTTON */
	nav.mobile .menu-toggle:not(.exit-click) {
		position: absolute;
		font-family: Arial, sans-serif;
		font-size: 36px;
		line-height: 1;
		background: #ddd;
		color: #000;
		text-decoration: none;
		top: 18px;
		right: 14px;
		cursor: pointer; 
		display: flex; justify-content: center; align-items: center; text-align: center; width: 50px; height: 50px; 
		transition: .2s ease all;
	}
	nav.mobile .menu-toggle:not(.exit-click):hover { /* Menu close button on hoveer */
		background: #f49f00;
		color: #000;
	}

	/* MENU LIST STYLE */
	nav.mobile ul {
		list-style: none;
		margin:0;
		padding:0;
	}
	nav.mobile > ul {
		border-top: 1px solid rgba(54, 54, 54, .95);
	}
	nav.mobile ul li {
		border-bottom: 1px solid rgba(54, 54, 54, .95);
		position:relative;
	}
	nav.mobile ul ul {
		background: rgba(0, 0, 0, .3);
		border-top: 1px solid rgba(54, 54, 54, .95);
	}

	/* FIRST LEVEL */
	nav.mobile ul li a {
		position: relative;
		cursor: pointer; 
		display: flex; justify-content: flex-start; align-items: center; column-gap: 8px; min-height: 50px; 
		padding: 10px 12px;
		color: #fff;
		text-decoration: none;
		text-align: left;
		background: rgba(0, 0, 0, 0); 
		font-size:17px;
	text-transform:uppercase; letter-spacing: 2px; 
	-webkit-transition:.2s ease-in;  
	-moz-transition:.2s ease-in;  
	-o-transition:.2s ease-in;  
	transition:.2s ease-in;	
	font-weight:500;
	}
	nav.mobile ul li a:hover {
		color: #f49f00; background: rgba(0, 0, 0, 1); 
	}

	nav.mobile ul li .navmobilelisted { font-size: 15px; font-weight: 400; letter-spacing: 1px; }
	nav.mobile ul li .navmobilelisted.isphone { font-size: 17px; font-weight: 500; }
	nav.mobile ul li a.navmobilelisted i { font-size: 14px; width: 18px; text-align: center; transition: .2s ease all; }
	nav.mobile ul li a i.fa-chevron-down { font-size: 12px; transition: .2s ease all; }
	nav.mobile ul .click.open i.fa-chevron-down { color:#f49f00; transform: rotateX(180deg); transition: .3s ease all; }
	
	/* SECOND LEVEL */
	nav.mobile ul li li a {
		display: flex; justify-content: flex-start; align-items: center; column-gap: 8px; min-height: 50px; 
		position: relative; font-size: 16px; 
		padding: 10px 10px 10px 20px;
		color: #fff;
		text-decoration: none;
	}
	nav.mobile ul li li a:hover {}

	/* THIRD LEVEL */
	nav.mobile ul li li li a {
		position: relative;
		display: flex; justify-content: flex-start; align-items: center; column-gap: 8px; min-height: 50px; 
		padding: 10px 10px 10px 28px;
		color: #fff;
		text-decoration: none;
	}
	nav.mobile ul li li li a:hover {}

	.nav-footer {
		color:#bbb; 
		position:relative; 
		text-align:center; 
		font-size:15px; letter-spacing: 1px; 
		line-height:22px; 
		padding:15px 12px;
	}
}