﻿
.clear{clear:both;}
@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@100;200;300;400;500;600;700;800&display=swap');
@import url("https://use.typekit.net/aqc4qda.css");
/***** Start of primary nav ******/
#menu-button{display: none;}
nav.mobile { display:none;}
.mobile-menu {display: none;}
.nav-background {background: var(--dark-grey);}

nav.primary {
	display:flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	}
	nav.primary ul {
		margin:0; 
		padding:0;
		float:right;
		}
		nav.primary ul li {
			display:inline-block;
			margin:0;
			list-style-type:none; 
			width:auto;
			}
			nav.primary ul li a {
				color:#fff;
				font-size:20px !important;
				line-height:20px;
				text-decoration:none;
				position:relative;
				display:block;
				margin:0px 2px;
				text-align:center;
				-webkit-transition:.4s ease-in;  
				-moz-transition:.4s ease-in;  
				-o-transition:.4s ease-in;  
				transition:.4s ease-in;	
				font-weight:600;
				padding:20px;
				font-family: 'new-frank', sans-serif;
				cursor: pointer;
				}	
			nav.primary ul li a:hover {
				background: var(--orange);
				color:#fff;
				}
			/* Appearance of the sub-level links */
			nav.primary ul li li a { 
				font-size:17px!important;
				line-height:24px;
				padding:15px 20px;
				color:#fff;
				background-color: var(--dark-grey);
				text-align:left;
				margin: 0;
			}
			/* Appearance of the sub-level links on hover */
			nav.primary ul li li a:hover { 
				color: #fff;
				background-color:var(--orange);
			}
/* This controls the Primary nav dropdowns for sublinks. Should not have to edit this too muuch */
nav.primary ul ul {
    display: none;
    position: absolute; 
}
nav.primary ul ul ul {
    position: absolute; 
    left: 100%;
    top:0; 
}
nav.primary .end-ul {right: 100%; left: auto!important;}
nav.primary ul li:hover > ul {  
    display: block;
    line-height:18px; 
    z-index: 1000;
}
nav.primary ul ul li {
    float: none; 
	width: 225px;
    position: relative;
    margin:0;
	display: block;
}

nav.primary > .flex {align-items: center; gap: 20px;}

/*Search Form (from plpequipment.com)*/
@keyframes dropIn {
  from {
    transform: translateY(-10px);
	  opacity: 0;
  }

  to {
    transform: translateY(0px);
	  opacity: 1;
  }
}
@keyframes dropOut {
  from {
    transform: translateY(0px);
	  opacity: 1;
  }

  to {
    transform: translateY(10px);
	  opacity: 0;
  }
}
.search-form{
	display: block;
	padding: 5px 60px 30px;
	background: var(--dark-grey);
}
.search-form form{
	position: relative;
	margin: 0 !important;
}
.search-form input{
	display: block!important;
	background: #fff;
	width: 100%!important;
	padding: 20px !important;
	font-family: 'figtree', sans-serif!important;
	border: none !important;
	line-height: 24px !important;
	font-size: 20px !important;
	box-sizing: border-box!important;
	height: auto !important;
}
.search-form button{
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	padding: 20px 24px !important;
	background: var(--orange) !important;
	border: none !important;
	outline: none !important;
	line-height: 24px !important;
	font-size: 25px !important;
	transition:.4s ease-in;
	cursor: pointer;
	color: #fff;
}
.search-form button:hover {background: #4E4C4B!important;}
.search-square {
	font-size: 25px;
	font-weight: 700;
	background: var(--orange);
	color: #fff;
	padding: 15px 20px;
	transition:.4s ease-in;	
	cursor: pointer;
}

.search-square:hover {background: #fff; color: var(--dark-grey);}

/** header styles **/
.my-site-header {justify-content: space-between; gap: 30px; padding-top: 20px; padding-bottom: 20px; flex-wrap: wrap;}
.my-site-header .mobile-link {display: none;}
.my-site-header .location-box > a {font-size: 20px; font-family: 'new-frank', sans-serif; color: var(--dark-grey); text-transform: uppercase; font-weight: 700;}
.my-site-header .location-box .flex {margin-top: 10px; gap: 15px;}
.my-site-header .location-box .flex a:first-child {color: var(--dark-grey)!important; font-size: 17px; font-family: 'figtree', sans-serif;}
.my-site-header .location-box .flex a {color: var(--orange);}
.my-site-header .location-box-2 > a {font-size: 20px; font-family: 'new-frank', sans-serif; color: var(--dark-grey); text-transform: uppercase; font-weight: 700;}
.my-site-header .location-box-2 .flex {margin-top: 10px; gap: 15px;}
.my-site-header .location-box-2 .flex a:first-child {color: var(--dark-grey)!important; font-size: 17px; font-family: 'figtree', sans-serif;}
.my-site-header .location-box-2 .flex a {color: var(--orange);}
.my-site-header a:hover, .my-site-header i:hover {text-decoration: underline;}

@media screen and (max-width: 600px)  {
    .my-site-header .location-box-2 > a {font-size: 15px !important;}
}

.social-icon {padding: 20px 0;}
.social-icon a {color: #fff; background: var(--orange); padding: 20px; font-size: 20px; transition: all .4s ease-out;}
.social-icon:hover a {background: var(--dark-grey);}

.logo-mobile img, .logo-desktop img{max-width: 300px; width: 100%;}
.logo-mobile, .logo-desktop {
	padding-top: 20px; padding-bottom: 20px;
}
.logo-mobile {display: flex; flex-direction: column; align-items: center; justify-content: center;}
.logo-mobile > a:last-child {display: flex; flex-direction: row; justify-content: center; gap: 15px; color: var(--dark-grey); background-color: var(--white); width: 100%; padding: 15px 0; font-family: 'figtree', sans-serif; font-weight: 700; text-transform: uppercase;transition: all .4s ease-out;} 
.logo-mobile a:last-child > i {color: var(--orange);transition: all .4s ease-out;}

.logo-mobile a:last-child:hover {background-color: var(--orange); color: var(--white) !important; transition: all .4s ease-out;}
.logo-mobile a:last-child:hover > i {color: var(--white) !important; transition: all .4s ease-out;}

.logo-mobile-xs {display: flex; flex-direction: column; align-items: center; justify-content: center;}
.logo-mobile-xs > a:last-child {display: flex; flex-direction: row; justify-content: center; gap: 15px; color: var(--dark-grey); background-color: var(--white); width: 100%; padding: 15px 0; font-family: 'figtree', sans-serif; font-weight: 700; text-transform: uppercase;transition: all .4s ease-out;} 
.logo-mobile-xs a:last-child > i {color: var(--orange);transition: all .4s ease-out;}

.logo-mobile-xs a:last-child:hover {background-color: var(--orange); color: var(--white) !important; transition: all .4s ease-out;}
.logo-mobile-xs a:last-child:hover > i {color: var(--white) !important; transition: all .4s ease-out;}

@media screen and (max-width: 600px)  {
    .logo-mobile-xs {display: block;}
    .logo-mobile > a:last-child {display: none;}
}
@media screen and (min-width: 601px)  {
    .logo-mobile-xs {display: none;}
    .logo-mobile {display: flex;}
}

.logo-desktop {display: flex; flex-direction: column; align-items: center; justify-content: center;}
.logo-desktop > a:last-child {display: flex; flex-direction: row; justify-content: center; gap: 15px; color: var(--dark-grey); background-color: var(--white); width: 100%; padding: 15px 0; font-family: 'figtree', sans-serif; font-weight: 700; text-transform: uppercase;transition: all .4s ease-out;} 
.logo-desktop a:last-child > i {color: var(--orange);transition: all .4s ease-out;}

.logo-desktop a:last-child:hover {background-color: var(--orange); color: var(--white) !important; transition: all .4s ease-out;}
.logo-desktop a:last-child:hover > i {color: var(--white) !important; transition: all .4s ease-out;}

@media screen and (max-width: 1450px)  {
	nav.primary ul li a {padding: 20px 10px; font-size: 17px!important;}
}

/******** End of primary Nav ***************/

@media screen and (max-width: 1240px)  {
	.mobile-menu {display: flex; justify-content: space-between; align-items: center; gap: 30px;}
	.mobile-menu > .flex {align-items: center; gap: 20px;}
/*==============================
	Mobile Nav Styles			
================================*/	
nav.primary{display:none;}
#menu-button{ 
	display: inline-block;
	font-size: 24px;
	position: relative;
	z-index: 400; /* needs to be lower than nav.mobile, adjust as needed */
	text-align: right;
	}
	#menu-button a{
		 color:#fff;
		 text-decoration: none;
		 font-weight:700;
		font-size: 40px;
	  }
nav.mobile {
	display:block;
	position: fixed;
	top: 0;
	left: -250px;
	width: 250px;
	height: 100%;
	background: var(--dark-grey);
	z-index: 500; /* needs to be higher than #menu-button, adjust as needed */
	overflow:auto;
}

/* MENU CLOSE 'X' BUTTON */
nav.mobile .menu-toggle {
	position: absolute;
	padding: 3px 8px 3px;
	font-family: Arial, sans-serif;
	font-size:24px;
	font-weight: bold;
	line-height: 1;
	background: transparent;
	color: #fff;
	text-decoration: none;
	top: 38px;
	right:13px;
	cursor: pointer;
}
nav.mobile .menu-toggle:hover { /* Menu close button on hoveer */
	color: #EC4023;
}

/* MENU LIST STYLE */
nav.mobile ul {
	list-style: none;
	font-weight: 300;
	margin:0;
	padding:0;
}
nav.mobile ul li {
	position:relative;
}
	
	.top-ul {margin-top: 100px!important;}

/* FIRST LEVEL */
nav.mobile ul li a {
	position: relative;
	display: block;
	font-size:17px;
	padding: 15px;
	color: #fff;
	text-decoration: none;
	text-align: left;
	cursor: pointer;
	font-family: 'new-frank', sans-serif;
}
nav.mobile ul li a:hover {
	background:var(--orange); 
}

/* SECOND LEVEL */
nav.mobile ul li li:last-child {border:none;}
nav.mobile ul li li a {
	background: #4E4C4B;
	position: relative;
	display: block;
	padding: 15px;
	color: #fff;
	text-decoration: none;
}
nav.mobile ul li li a:hover {background:var(--orange);}

/* THIRD LEVEL */
nav.mobile ul li li li:last-child {border:none;}
nav.mobile ul li li li a {
	background: var(--grey);
	position: relative;
	display: block;
	padding: 15px;
	color: var(--dark-grey);
	text-decoration: none;
}
nav.mobile ul li li li a:hover {background:rgba(85,85,85,0.5); background:var(--orange); color: #fff;}

	nav.mobile ul li .fa-chevron-down{color:#fff!important; margin-left: 15px;}
}

@media screen and (max-width: 750px)  {
	.my-site-header .location-box {display: none;}
	.my-site-header {justify-content: flex-start; align-items: center;}
	.my-site-header .mobile-link {display: block;}
	.my-site-header .mobile-link a {font-size: 20px; font-family: 'new-frank', sans-serif; color: var(--dark-grey); text-transform: uppercase; font-weight: 700;}
	.my-site-header .mobile-link i {margin-right: 15px; color: var(--orange);}
}

@media only screen and (max-width: 400px) {
	.search-form {padding: 5px 15px 30px;}
}

@media only screen and (max-width: 340px) {
	.social-icon {padding: 10px 0;}
	.social-icon a {padding: 10px;}
}