﻿.clear{clear:both;}

nav.primary * { box-sizing: border-box; }

/***** Start of primary nav ******/
nav.primary {
	position: relative; 
	flex-direction: row; justify-content: flex-end; align-items: center; 
}
nav.primary ul {
	list-style-type:none; 
	position: relative; 
	display: flex; flex-direction: row; justify-content: flex-end; align-items: center; 
}
nav.primary ul li {
	position: relative; 
	display: flex; flex-direction: column; align-items: stretch; 
	margin:0; 
	list-style-type:none; 
}
nav.primary ul li a {
	position: relative; width: 100%; 
	display: flex; flex-direction: row; justify-content: center; align-items: center; 
	font-family: 'Fjalla One', sans-serif; 
	padding: .5rem; 
	color:#fff;
	font-size:1.5rem;
	line-height:1.5;
	text-decoration:none;
	text-align:center;
	text-transform:uppercase;
	font-weight:400;
	cursor: pointer; 
	transition: 0s ease all; 
}	

nav.primary > ul > li { padding: 0 10px; }
nav.primary > ul > li > a { margin-bottom: 1rem; }

nav.primary ul li a.has-dpdown {
	
}	
nav.primary ul li a span.is-down {
	position: relative; color: #f00; padding-left: .5rem; 
	font-weight: 900; font-size: .5em; text-decoration: none!important; 
}

nav.primary ul li a:hover {
	text-decoration: underline; 
	color:#f00;
}
nav.primary ul li a:hover span.is-down {
	text-decoration-color: rgba(0, 0, 0, 0)!important; text-decoration: none!important; 
}

.highlighted-dpdown a {
	background: #2d4462; border-radius: .25rem; transition: .15s ease-in-out all; 
}
.highlighted-dpdown > a:before {
	position: relative; order: 0; content: "|"; margin-right: 5px;  color: #f00; 
}
.highlighted-dpdown ul {
	background: #2d4462!important; left: unset!important; right: 0; 
	padding: .75rem 1rem!important; 
}
.highlighted-dpdown ul li a {
	margin: .5rem 0!important; font-family: 'Work Sans', sans-serif!important; font-weight: 500!important; line-height: 1!important;  
}

nav.primary ul ul {
	display: none; position: absolute; top: 100%; left: 0; 
	padding: .75rem 0 1rem 0; border: 1px solid rgba(0,0,0,.15); border-radius: .25rem;
	flex-direction: column; align-items: stretch; 
	background: #1d2c3f; min-width: 160px; 
}

#locationsDpdown { width: 160px; }
#salesDpdown { width: 160px; }
#partsserviceDpdown { width: 196px; }
#aboutDpdown { width: 160px; }
#careersDpdown { width: 176px; }
#contactDpdown { width: calc(132px + 3rem)!important; }

.dpdown-list:not(.open) { display: none; }
.dpdown-list.open { display: flex!important; }

nav.primary ul li li a { 
	font-size: 1rem;
	padding:.5rem; 
	line-height: 20px; 
	margin-bottom: .25rem; 
	text-align:left;
	justify-content: flex-start; 
}
nav.primary ul li li:first-of-type a { 
	padding-top: 0; 
}

.tabbed-sub { margin-left: .5rem; }

@media only screen and (min-width: 1201px)  {
	nav.primary {
		display: flex!important; 
	}
}

@media only screen and (max-width: 1668px)  {
	nav.primary > ul > li { 
		padding: 0 5px; 
	}
}

@media only screen and (max-width: 1610px)  {
	nav.primary > ul > li { 
		padding: 0 2px; 
	}
}

@media only screen and (max-width: 1600px)  {
	nav.primary > ul > li { 
		padding: 0; 
	}
	nav.primary > ul > li > a {
		font-size: 1.2rem; 
	}
	.highlighted-dpdown > a {
		padding: 0 10px!important; 
	}
}

@media only screen and (max-width: 1393px)  {
	nav.primary > ul > li > a {
		padding-left: .4rem; 
		padding-right: .4rem; 
	}
}

@media only screen and (max-width: 1360px)  {
	nav.primary > ul > li > a {
		font-size: 1.15rem; 
	}
}

@media only screen and (max-width: 1340px)  {
	nav.primary > ul > li > a {
		font-size: 1.1rem; 
	}
}

@media only screen and (max-width: 1300px)  {
	nav.primary > ul > li > a {
		font-size: 1.05rem; 
	}
}

@media only screen and (max-width: 1235px)  {
	nav.primary > ul > li > a {
		font-size: 1rem; 
	}
}

@media only screen and (max-width: 1220px)  {
	nav.primary > ul > li > a {
		padding-left: .29rem; 
		padding-right: .29rem; 
	}
}

/******** End of primary Nav ***************/

@media screen and (min-width: 1201px)  {
	.mobile-only, #menu-button {
		display: none!important; 
	}
}

/*==============================
	Mobile Nav Styles			
================================*/	
@media screen and (max-width: 1200px)  {
	.desktop-only { display: none!important; width: 0px; height: 0px; opacity: 0; pointer-events: none; }
	
	#menu-button { 
		display: inline-block;
		position: relative;
		z-index: 400; /* needs to be lower than nav.mobile, adjust as needed */
		margin: .5rem 1rem; 
	}
	#menu-button a {
		cursor: pointer; padding: .25rem .75rem;
		font-size: 1.25rem; 
		line-height: 1; 
		border-radius: .25rem; 
		color:rgba(255,255,255,.5); 
		border: 1px solid rgba(255, 255, 255, .105);
		text-decoration: none;
		display: flex; justify-content: center; align-items: center; 
	}
	#menu-button a img { 
		width: 30px; height: 30px; 
		object-fit: contain; object-position: center; 
	}
	
	nav.primary { 
		display: none; 
		margin-bottom: .5rem!important; 
		width: 100%;
	}
	
	nav.primary.open { display: flex; }
	
	nav.primary ul { flex-direction: column; }
	nav.primary > ul { margin-top: -.5rem; }
	
	nav.primary ul li { 
		width: 100%;
	}
	
	nav.primary > ul > li { 
		margin-bottom: 1rem;
	}
	
	nav.primary > ul > li > a { 
		width: 100%;
		font-size: 1.2rem;
		padding: .5rem 0!important; 
	}
	
	nav.primary ul ul, #locationsDpdown, #salesDpdown, #partsserviceDpdown, #aboutDpdown, #careersDpdown, #contactDpdown {
		width: 100%!important; position: relative; 
	}
	
	nav.primary ul ul li, nav.primary ul ul li a {
		width: unset; 
		justify-content: center; 
		align-items: center; 
		text-align: center; 
		font-size: 1rem; 
		line-height: 1.5; 
	}
	
	#locationsDpdown { padding-top: 1.5rem; padding-bottom: 0; }
	#locationsDpdown li { margin-bottom: 1.5rem; }
	#locationsDpdown a { margin-bottom: 5px; padding: 0; }
	
	.mobile-padt-sm { padding-top: 0!important; }
}



