﻿/*===================== 
	Color information
	
	- Yellow: #F4A91C;
	-
	-
	-
		 
=======================*/
/*===================== 
	CSS reset/normalize 
=======================*/

/**Correct `block` display not defined in IE 8/9.**/
article,aside,details,figcaption,figure,footer,header,hgroup,
main,nav,section,summary {display: block;}
pre {white-space: pre-wrap;}
small { font-size: 80%;}


/*===================== 
	@Font-Face 
=======================*/


/*===================== 
	base styles 
=======================*/

html {
    -ms-text-size-adjust: 100%; 
    -webkit-text-size-adjust: 100%; 
	}

body {
	font-family: 'Montserrat', sans-serif;
    margin: 0;
	padding:0;
	}

svg:not(:root) {overflow: hidden;/*reset*/}
	
.clear { clear: both;}

img { border: 0;} 
	
/*===================== 
	typography 
=======================*/

h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
	
	}
	h1 {
		margin-bottom: 10px;
    	font-size: 26px;
    	text-transform: uppercase;
		font-weight: 700;
	}
	h2 {font-size: 20px; font-weight: 500;}
	h3, .heading-2 {
		font-size: 24px;
		font-weight: 400;
	}
	h4, .heading-3, .heading-2-bold {font-size: 21px;
		font-weight: 700;}
	h5 {}
	h6 {}

p {
	margin: 0;
	padding:1% 0;
	font-size: 16px;
	line-height: 1.5em;
	}

.bold {font-weight: bold;}

/*===================== 
	link styles 
=======================*/

a:focus {outline: thin dotted;/*reset*/}	
a,
a:link, 
a:visited, 
a:active {
	outline: 0;/*reset*/
    color: inherit; 
    text-decoration:underline;
	}
	a:hover  {
		outline: 0;/*reset*/
		text-decoration: none;
		}
.btn-flex{
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	align-content: flex-start;
	padding:2% 0;
}
a.white-btn{
	width:22%;
	display: block;
    background: #fff;
    margin: 5px;
    padding: 15px;
    text-align: center;
    border: 2px #FA5F0C solid;
	text-decoration: none;
}
a.white-btn:hover{
	background: #FA5F0C;
    color: #fff;
	text-decoration: none;
}
.job-opening .read-more, .job-app a {
    display: inline-block;
    background: #000;
    padding: 10px 25px;
    text-align: center;
    color: #fff;
	text-decoration: none;
}
.job-opening .read-more:hover, .job-app a:hover {
    color: #FA5F0C;
}

/*===================== 
	header styles 
=======================*/

header {
	width: 100%;
	display: flex;
	flex-direction: row;
	}
img.main_logo{
	width:60%;
	display: block;
	margin: auto;
}
img.year-logo{
	width: 30%;
	display: block;
	margin: auto;
}
.header-contact{
	text-align: right;
}
.header-contact .phone{
	font-size: 30px;
	font-weight: 700;
}
.header-contact .address{
	font-size: 20px;
	font-weight: 700;
}
.header-contact .social{
	font-size: 40px;
}

.search form {
    display: flex;
    justify-content: flex-end;
}
.search input[type="text"] {
    display: block;
    background: url("../siteart/search.png") no-repeat;
    background-position: 8px 4px;
    width: 100%;
    max-width: 200px;
    padding: 7px 35px !important;
    border: 1px #96989B solid;
    transition: all 0.4s ease-in-out;
}
.search input[type="text"]:focus {
    max-width: 250px;
}
/*===================== 
	nav styles 
=======================*/

#menu-button{display: none;}
nav.mobile { display:none;}

nav.primary {
	display: block;
    position: relative;
    padding: 0;
    margin: 0;
    width: 100%;
    font-size: 0;
	background: #000;
	}
	nav.primary ul {
		display: flex;
		margin:0; 
		padding:0;
		}
		nav.primary ul li {
			flex: 1;
    		margin: 0;
			}
			nav.primary ul li a {
				display: flex;
				align-items: center;
				justify-content: center;
				padding: 20px 10px;
				margin: 0;
				font-size: 13px;
				font-weight: 700;
				text-align: center;
				text-transform: uppercase;
				color: #f3f3f3;
				transform: perspective(1px) translateZ(0);
				transition: .5s ease-in;
				box-shadow: 0 0 1px transparent;
				text-decoration: none;
				}	
			nav.primary ul li a:before{
				content: ""; 
				position: absolute; 
				top: 0; 
				left: 0; 
				right: 0; 
				bottom: 0; 
				background: rgb(255,210,3); 
				background: -moz-linear-gradient(top, rgba(255,136,51,1) 0%, rgba(250,95,12,1) 100%); 
				background: -webkit-linear-gradient(top, rgba(255,136,51,1) 0%,rgba(250,95,12,1) 100%); 
				background: linear-gradient(to bottom, rgba(255,136,51,1) 0%,rgba(250,95,12,1) 100%); 
				filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffd203', endColorstr='#ffb503',GradientType=0 ); transform: scaleY(0); transform-origin: 50% 100%; transition-property: transform; transition-duration: 0.3s; transition-timing-function: ease-out; z-index: -1;}
				nav.primary ul li a:hover, nav.primary ul li a:focus, nav.primary ul li a:active{color: #fff; text-decoration: none;}
				nav.primary ul li a:hover:before, nav.primary ul li a:focus:before, nav.primary ul li a:active:before{transform: scaleY(1);}

			/* Appearance of the sub-level links */
			nav.primary ul li li a { 
				font-size:16px;
				line-height:16px;
				padding:10px 0;
				color:#fff;
				background: #181818;
				text-align:center;
				border-right:none;
				border-left:none;
				border-bottom: #fff solid 1px;
			}
			/* Appearance of the sub-level links on hover */
			nav.primary ul li li a:hover { 
			}
/* 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 ul li:hover > ul {  
    display: block;
    line-height:18px; 
    z-index: 100;
}
nav.primary ul ul li {
    float: none; 
	width: 230px;
    position: relative;
    margin:0;
}

/*===================== 
	slideshow styles 
=======================*/
.hero{
	position: relative;
    border-bottom: 3px #FA5F0C solid;
}
.hero-box {
    position: absolute;
    top: 0;
    right: 0;
    width: 450px;
    display: flex;
    align-items: center;
    justify-content: center;
	flex-direction: column;
    background: #333;
    padding: 20px;
    font-size: 12px;
    font-weight: 700;
    text-align: center;
    color: #FCB123;
    z-index: 600;
	box-sizing: border-box;
}
.hero-box span{padding: 10px 0;}
.cycle-slideshow img{width:100%;}


/*===================== 
  Rental Table styles 
=======================*/
.title-banner {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}
.title-banner .rental-btns {
    margin-left: auto;
}
.title-banner .rental-btns a {
    display: inline-block;
    background: linear-gradient(to bottom, rgba(255,136,51,1) 0%,rgba(250,95,12,1) 100%);
    padding: 10px 100px;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
    color: #101010;
    border: 1px #B7ADAD solid;
	text-decoration: none;
}
.title-banner .rental-btns a:hover {
    border: 1px #888 solid;
}
.rental-box {
    display: flex;
    flex-wrap: nowrap;
    border: 1px #B7ADAD solid;
}
.rental-box .rental-links {
    background: #cecaca;
    width: 250px;
    padding: 20px;
    text-align: right;
}
.rental-box .rental-links h3 {
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 600;
}
.rental-box .rental-links a {
    display: block;
    padding: 4px 0;
    font-size: 15px;
    color: #535353;
	text-decoration: none;
}
.rental-box .rental-links a:hover {
    color: #000;
}
.rental-box .rental-details {
    background: #fff;
    width: calc(100% - 270px);
}
.rental-box .rental-details .rental-header {
    padding: 20px;
    background: linear-gradient(to bottom, rgba(255,136,51,1) 0%,rgba(250,95,12,1) 100%);
    text-align: right;
}
.rental-box .rental-details .rental-header h2 {
    font-size: 24px;
    text-transform: uppercase;
	font-weight: 700;
}
.rental-box .rental-details .rental-header h3 {
    font-size: 18px;
    font-weight: 500;
}
.rental-box .rental-details table {
    width: 100%;
    font-size: 14px;
}
.rental-box .rental-details table tr:nth-child(odd) {
    background: #f1f1f1;
}
.rental-box .rental-details table tr th {
    padding: 20px;
    font-size: 16px;
	text-align: left;
}
.rental-box .rental-details table tr td {
    padding: 10px 20px;
}
.rental-box .rental-details table tr td:last-child {
    text-align: right;
}
.rental-box .rental-details table a {
    font-weight: 700;
    color: #C14300;
	text-decoration: none;
}
.rental-box .rental-details table a:hover {
    color: #000;
}

/*===================== 
	Inventory styles 
=======================*/

.body-content .body-wrapper {padding:2% 0;}

/*----View Details Button----*/
.view-listing-details-link {background:#FA5F0C !important; color: #000 !important;}
.view-listing-details-link:hover {background:#000 !important; color: #fff !important;}

/*----Price----*/
.listing-main-stats .price {color:#000 !important;}

/*------- Faceted Search------*/
.faceted-search-content .selected-facets-container .selected-facet{background: #FA5F0C !important; color:#000 !important;}

.detail-content-mobile .detail-additional-data .data-row .data-label{
	background:#000 !important; color:#fff !important;
}

/*===================== 
	layout styles 
=======================*/

.qr-code {
	padding-top: 20px;
}

.parts-page-heading {
	padding-bottom: 20px;
}

.wrap {
	width: 100%;
	margin: 0;
	}
.container {
	max-width: 1700px;
	padding: 2%;
	box-sizing: border-box;
	margin: 0 auto;
	}
.black-bg{background:#121212;}
.texture-bg{
	background:url("../siteart/bg.jpg") repeat;
}
.home-btns{
	display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
	padding:2% 1%; 
	box-sizing: border-box;
}
.category {
    position: relative;
    margin: 5px;
    overflow: hidden;
	width:32.5%;
}
.category .category-text {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, .75);
    font-size: 28px;
    font-weight: 400;
    text-align: center;
    text-transform: uppercase;
    text-shadow: 0px 0px 10px rgb(0 0 0 / 50%);
    color: #fff;
    border: 1px #fff solid;
    transition: all .5s ease;
    z-index: 10;
	display:flex;
	flex-direction:column;
	gap:0;
	justify-content:flex-end;
	padding-bottom:30px;
	
}
.category:hover .category-text {
    background: rgba(0, 0, 0, 0.25);
}
.category img {
    display: block;
    width: 100%;
    max-width: 100% !important;
}
.yellow-banner {
    background: #FA5F0C;
    padding: 15px 20px;
    font-size: 30px;
    font-weight: 500;
    font-style: italic;
    text-align: center;
    color: #121212;
}

.yellow-banner h1{
    background: #FA5F0C;
    padding: 15px 20px;
    font-size: 30px;
    font-weight: 500;
    font-style: italic;
    text-align: center;
    color: #121212;
}

.manu{
	padding: 1.5% 0;
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	align-items: center;
}
.manu img{
	width:20%;
}

.scrolling-wrap{
	height: 90px;
	width:100%;
	overflow: hidden;
}
iframe.scrolling{
	height: 90px;
	width:100%;
}

.col-flex{
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
}
.col-1-6 { width: 16%; box-sizing:border-box;}
.col-1-5 { width: 20%; box-sizing:border-box;}
.col-1-4 { width: 24%; box-sizing:border-box;}
.col-1-3 { width: 33%; box-sizing:border-box; padding:1%;}
.col-1-2 { width: 49%; box-sizing:border-box; padding:1% 2% 1% 0;}
.col-2-3 { width: 65%; box-sizing:border-box;}
.col-3-4 { width: 75%; box-sizing:border-box;}

.aside-img{
	display: block;
	float:left;
	padding: 0 8px 8px 0;
}

ul.page-list{
	margin:0;
	padding:1% 0;
}
ul.page-list li{
	margin:0 0 0 15px;
	padding: 3px 0;
	font-size: 16px;
}

.staff-member {
    display: flex;
    flex-wrap: wrap;
    font-size: 15px;
    text-align: left;
}
.staff-member .staff-image {
    width: 200px;
    padding-right: 20px;
}
.staff-member .staff-image img{width:100%;}
.staff-member .staff-details {
    width: calc(100% - 220px);
}

.service-gallery{
	padding:1% 0 3% 0;
}
.thumbs{
	width:18%;
	display: inline-block;
	margin: 1px;
}
.job-opening {
    display: block;
    margin: 10px 0;
    padding: 20px;
    border: 1px #bbb solid;
}

/** Image Button Styles **/
.zoom{
	position: relative;
    margin: 5px;
    overflow: hidden;
	background-color:#000;
}
.zoom .zoom-text {
    width: 100%;
    height: 100%;
    position: absolute;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    text-shadow: 1px 1px 2px rgb(0 0 0 / 75%);
    color: #fff;
    border: 1px #FA5F0C solid;
    transition: all .5s ease;
    z-index: 10;
	box-sizing: border-box;
	display:flex;
	flex-direction:column;
	gap:0;
	justify-content:flex-end;
	padding-bottom:30px;
	display:flex;
	flex-direction:column;
	gap:0;
	justify-content:flex-end;
	padding-bottom:30px;
	
	
}
.zoom .zoom-text-logo {
    width: 100%;
    height: 100%;
    position: absolute;
    padding: 0 0 0 0;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    text-shadow: 1px 1px 2px rgb(0 0 0 / 75%);
    color: #fff;
    border: 1px #FA5F0C solid;
    transition: all .5s ease;
    z-index: 10;
	box-sizing: border-box;
}
.zoom:hover .zoom-text, .zoom:hover .zoom-text-logo{
    background: rgba(250, 95, 12, 0.5);
}

.zoom img {
    display: block;
    width: 100%;
    max-width: 100% !important;
	
	
}

.zoom-2{
	position: relative;
    margin: 5px;
    overflow: hidden;
}
.zoom-2 .zoom-text-2 {
    width: 100%;
    height: 100%;
    position: absolute;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    text-shadow: 1px 1px 2px rgb(0 0 0 / 75%);
    color: #fff;
    border: 1px #FA5F0C solid;
    transition: all .5s ease;
    z-index: 10;
	box-sizing: border-box;
	display:flex;
	flex-direction:column;
	gap:0;
	justify-content:flex-end;
	padding-bottom:30px;
	display:flex;
	flex-direction:column;
	gap:0;
	justify-content:flex-end;
	padding-bottom:30px;
	
	
}
.zoom-2 .zoom-text-logo-2 {
    width: 100%;
    height: 100%;
    position: absolute;
    padding: 0 0 0 0;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    text-shadow: 1px 1px 2px rgb(0 0 0 / 75%);
    color: #fff;
    border: 1px #FA5F0C solid;
    transition: all .5s ease;
    z-index: 10;
	box-sizing: border-box;
}
.zoom-2:hover .zoom-text, .zoom:hover .zoom-text-logo{
    background: rgba(250, 95, 12, 0.5);
}

.zoom-2 img {
    display: block;
    width: 100%;
    max-width: 100% !important;
	
	
}
/*===================== 
	footer styles 
=======================*/

footer {
	margin: 0;
	width: 100%;
	padding-bottom: 2%;
	}


	
/*========================== 
	  Responsive styles 
============================*/
@media screen and (max-width: 1300px){
	.col-1-4 {width: 33%;}
}

@media screen and (max-width: 1239px){
	.category .category-text {}
}

@media screen and (max-width: 1200px){
	nav.primary ul li a{font-size: 11px;}
	.col-1-3 { width: 50%; box-sizing:border-box; padding:1%;}
}
@media screen and (max-width: 1000px){
	.rental-box { flex-direction: column; }
	.rental-box .rental-links { width: 100%; box-sizing: border-box; text-align: center; }
	.rental-box .rental-details { width: 100%; }
}

@media screen and (max-width: 980px)  {
	.header-contact .phone{
		font-size:24px;
		font-weight: 700;
	}
	.header-contact .address{
		font-size: 18px;
	}
	.header-contact .social{
		display: none;
	}
	.col-1-3 { width: 48%;}
	.mobile-hide{display: none;}
	
	.hero-box {
		position: relative;
		width: 100%;
	}
	.col-1-4 {width: 50%;}
	/*==============================
		Mobile Nav Styles			
	================================*/	
	nav.primary{display:none;}
	#menu-button{ 
		display: block;
    	width: 100%;
		z-index: 400; /* needs to be lower than nav.mobile, adjust as needed */
		background: #000;
		}
		#menu-button a{
			display: block;
			padding: 15px 20px;
			font-size: 16px;
			font-weight: 500;
			text-transform: uppercase;
			text-align: center;
			color: #fff;
		  }
	nav.mobile {
		display:block;
		position: fixed;
		top: 0;
		left: -250px;
		width: 250px;
		height: 100%;
		background: #333;
		z-index: 700; /* needs to be higher than #menu-button, adjust as needed */
		overflow:auto;
	}
	/* MENU HEADER SOCIAL MEDIA */
		nav.mobile .social-media {
			position: relative;
			text-decoration: none;
			display: inline-block;
			font-size:16px;
			word-spacing:13px;
			padding:0 0 0 15px;
			color: #ccc !important;
		}

		nav.mobile .social-media a:link, nav.mobile .social-media a:visited {color:#ccc; text-decoration:none;}
		nav.mobile .social-media a:hover, nav.mobile .social-media a:active {color:#fff; text-decoration:underline;}

	/* MENU HEADER STYLES */
	nav.mobile .mobile_top {
		position: relative;
		display:block;
		padding: 0;
		margin:15px 0 10px 0;
		color: #999;
		font-size: 18px;
		font-weight: 400;
	}

	/* 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: #222;
		color: #999;
		text-decoration: none;
		top:-4px;
		right:13px;
	}
	nav.mobile .menu-toggle:hover { /* Menu close button on hoveer */
		color: #fff;
	}

	/* MENU LIST STYLE */
	nav.mobile ul {
		list-style: none;
		font-weight: 300;
		margin:0;
		padding:0;
	}
	nav.mobile ul li {
		border-top: 1px solid #454545;
		border-bottom: 1px solid #151515;
		position:relative;
	}

	/* FIRST LEVEL */
	nav.mobile ul li a {
		position: relative;
		display: block;
		font-size:15px;
		padding: 10px;
		color: #fff;
		text-decoration: none;
		border-left:4px #333 solid;
		text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	}
	nav.mobile ul li a:hover {
		background:rgba(45,45,45,0.5); 
		color: #fa5f0c; 
		border-left:4px #C8102E solid; /* border highlight - Change to fit match site colors */
	}

	/* SECOND LEVEL */
	nav.mobile ul li li:last-child {border:none;}
	nav.mobile ul li li a {
		background: #444;
		position: relative;
		display: block;
		padding: 10px 10px 10px 15px;
		border-left:4px #444 solid;
		color: #ccc;
		text-decoration: none;
	}
	nav.mobile ul li li a:hover {background:rgba(65,65,65,0.5);}

	/* THIRD LEVEL */
	nav.mobile ul li li li:last-child {border:none;}
	nav.mobile ul li li li a {
		background: #555;
		position: relative;
		display: block;
		padding: 10px 10px 10px 25px;
		color: #ccc;
		text-decoration: none;
		border-left:4px #555 solid;
	}
	nav.mobile ul li li li a:hover {background:rgba(85,85,85,0.5);}

	nav.mobile ul li .click{/* dropdown menu idicator arrow be sure to include this image with your image files */ 
		position:absolute;
		display:block;
		cursor:pointer;
		z-index: 12399994;
		top:0;
		right:0;
		width:auto;
		height:auto;
		padding: 17px 20px;
		color:#fff;

	}
	.nav-footer {color:#f3f3f3; position:relative; text-align:center; font-size:14px; line-height:16px; padding:15px 0;}

	/* FONT AWESOME ICONS */
	nav.mobile ul li a i{
		width:25px;
		padding:8px 3px;
		margin:0 6px 0 0;
		text-align:center;
		background:#292929;
		-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
		border-radius: 30px;
		text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	}


	nav.mobile ul li .fa-chevron-down {color:#999;}
}

@media screen and (max-width: 830px){
	.category .category-text {font-size:20px!important;}
}

@media screen and (max-width: 870px){
	.col-1-3 { width: 100%; box-sizing:border-box; padding:1%;}
	.col-1-2 { width: 100%; box-sizing:border-box; padding:1% 0 1% 0;}
}
@media screen and (max-width: 750px){
	.rental-box .rental-details table tr th, .rental-box .rental-details table tr td { padding-left: 10px; padding-right: 10px; }
}
@media screen and (max-width: 620px)  {
	header {flex-direction: column-reverse;}
	.header-contact{text-align: center;}
	.col-1-3 { width: 98%;}
	a.white-btn{width:39%;}
	.col-1-4 {width: 100%;}
	
	.title-banner { flex-wrap: wrap; }
	.title-banner .rental-btns { width: 100%; margin-left: 0; }
	.title-banner .rental-btns a { width: 100%; padding-left: 20px; padding-right: 20px; box-sizing: border-box; }
	.rental-box .rental-details table tr th, .rental-box .rental-details table tr td { padding-left: 6px; padding-right: 6px; }
}

@media screen and (max-width: 588px){
	.category .category-text {font-size:13px!important;}
}

@media screen and (max-width: 430px)  {
	.parts-page-heading {
		text-align: center;
	}
	
	.staff-member {
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
		font-size: 15px;
		text-align: center;
		align-items: center;
	}
	.staff-member .staff-image {
		width: 200px;
		padding-right: 0;
	}
	.staff-member .staff-image img{width:100%;}
	.staff-member .staff-details {
		width: 100%;
	}
	a.white-btn{width:90%;}
}

@media screen and (max-width: 380px){
	.category .category-text {font-size:10px!important;padding-bottom:15px!important;}
}

@media screen and (max-width: 292px){
	.category .category-text {font-size:8px!important;}
}
