﻿/***** BEGIN RESET *****/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	background: transparent;
	border: 0;
	margin: 0;
	padding: 0;	
}

ol, ul {
	list-style: none;
}

table{border-collapse:collapse; width:100%;}
td{vertical-align:top;}

/* Make HTML 5 elements display block-level for consistent styling */  
header, nav, article, footer, address {  
    display: block;  
} 
html{scroll-behavior: smooth;}

/*-------- COLORS --------

*/

/***** END RESET *****/
::-moz-selection {
    background: #242424; 
    color: #fff;
    text-shadow: none;
}
::selection {
    background: #242424;
    color: #fff;
    text-shadow: none;
}


/* Clearfix */
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
    *zoom: 1;
}

/*-------- BODY STYLES --------*/

body {

}

a:link, a:visited, a:active {text-decoration:none;}
a:hover {text-decoration:none;}


hr{border:#eee 1px solid;}

/*--- HEADER STYLES ---------------------*/
header {}


.header{padding: 3% 3% 0 3%; font-family: roboto, sans-serif;}
.header a{
	-moz-transition: ease 0.2s all;
	-o-transition: ease 0.2s all;
	-webkit-transition: ease 0.2s all;
	transition: ease 0.2s all;
}
.header a:not(.cta):hover{
	color:#f07b35;
}
.header .flex.hide-sm
{
	padding-left: 4%;
}
.social-grp{
	font-size: 30px;
	letter-spacing: 8px;
}
.header .social-grp a{
	color: #f07b35;
}
.header-contact{display: flex; justify-content: space-between;}
.header-contact a{font-weight: 700; font-family: roboto, sans-serif; color: #000;}
.header-contact p{padding: 0 10px; font-weight: 900; font-family: roboto, sans-serif; color: #000;}
.justify-between{justify-content: space-between;}
.header .justify-between .flex{    
	width: 65%;
	max-width: 700px;
    justify-content: space-between;
	align-content: center;
	align-items: center;
}

.border-top{border-top: solid 1px #eee;}
/*---BODY--------------------------------*/

.breadcrumb{font-size: 14px; text-transform: uppercase;}
.orange{color: #f07b35;}
.flex{display: flex;}
.flex-wrap{flex-wrap: wrap;}

.flex.gallery{justify-content: space-around; margin: -1%;}
.flex.gallery img{width: 98%; margin: 1%;}

.wrapper{padding: 0 5%;}
.bg-white .wrapper{padding: 0 5%; max-width: 1200px; margin: 0 auto;}
.vpad{padding: 5% 0;}

.left{float: left;}
.right{float: right;}
p.right{float: none; text-align: right;}

.col33{width: 33.3333%;}

.col50{width: 47.5%; padding-right: 2.5%;}
#contact-info .col50{width: 50%; padding: 0%;}
#contact-info .col100{width: 100%;}
.col50:nth-child(2){width: 47.5%; padding-left: 2.5%; padding-right: 0;}

.responsive-img{max-width: 100%;}

.hero{
	max-height: 700px;
	background: url("/siteart/hero.jpg") center center fixed;
	-moz-background-size: cover;
	-o-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
}

.hero-img{
	max-height: 700px !important;
	width: 100%;
	height: 100%;
	-moz-background-size: cover !important;
	-o-background-size: cover !important;
	-webkit-background-size: cover !important;
	background-size: cover !important;
}

.hero.team{
	max-height: 700px;
	background: url("/siteart/hero-team.jpg") center top;
	-moz-background-size: cover;
	-o-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
}
.img-subtitle{
	color: #fff;
	font-family: roboto, sans-serif;
	padding: 20px;
	background: #242424;
}

.hero-text{
	font-family: roboto, sans-serif;
	color: #fff;
	text-align: center;
	display: block;
	max-width: 900px;
	margin: 0 auto;
	padding: 15% 5%;
}

.banner{
	background: #f07b35;
	color: #fff;
	font-family: roboto, sans-serif;
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 10px 10px 15px;
	text-align: center;    
	display: block;
}
.banner.top{
	text-transform: none;
	padding: 20px;
    font-size: 14px;
    line-height: 20px;
}

.bg-texture{
	background: url("/siteart/hero-welding.jpg") center center fixed;
	-moz-background-size: cover;
	-o-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
}


.bg-white{
	font-family: roboto, sans-serif;
	color: #000;
}
.bg-white .heading{
	color: #000;
}
.bg-white p{
	font-size: 16px;
	line-height: 24px;
}
.heading{
	font-family: roboto, sans-serif;
	color: #fff;
	font-size: 48px;
	line-height: normal;
	font-weight: 900;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.subheading{
	font-family: roboto, sans-serif;
	color: #fff;
	font-size: 24px;
	line-height: normal;
	font-weight: 900;
	text-transform: uppercase;
}
.heading-small{
	font-family: roboto, sans-serif;
	color: #000;
	font-size: 18px;
	line-height: normal;
	font-weight: 900;
}
.bg-white a:not(.cta){
	color: #f07b35;
}
.bg-white #contact-info{
	line-height: 24px;
}

.cta{
	background: #f07b35;
	color: #fff;
	max-width: 220px;
	line-height: 48px;
	font-size: 16px;
	text-transform: uppercase;
	font-family: roboto, sans-serif;
	display: inline-block;
	padding: 0 20px;
	width: 100%;
	text-align: center;
	font-weight: 700;
	box-sizing: border-box;
}

.cta:hover > .hover-icon {
    opacity: 1;
    margin-left: 10px;
}

.hover-icon {
    vertical-align: top;
    opacity: 0;
    transition: all 0.2s ease;
    margin-left: -2px;
    line-height: 44px;
}


#btns{
	display: flex;
	justify-content: space-around;
	padding: 5% 0;
	max-width: 95%;
	margin: 0 auto;
}
#btns a{
	width: 30%;
	margin: 1%;
	padding: 6% 2%;
	border-radius: 5px;
}
#btns a:hover h3{
	color:#f07b35;
}

#btns a:nth-child(1){
	background: url("/siteart/btn-1.jpg") center center;
	-moz-background-size: cover;
	-o-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
}
#btns a:nth-child(2){
	background: url("/siteart/btn-2.jpg") center center;
	-moz-background-size: cover;
	-o-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
}
#btns a:nth-child(3){
	background: url("/siteart/btn-3.jpg") center center;
	-moz-background-size: cover;
	-o-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
}

#btns a h3{
	font-size: 30px;
	line-height: 30px;
	font-weight: 900;
	text-transform: uppercase;
	font-family: roboto, sans-serif;
	color: #000;
	position: relative;
	
	
	-moz-transition: ease 0.2s all;
	-o-transition: ease 0.2s all;
	-webkit-transition: ease 0.2s all;
	transition: ease 0.2s all;
}
#btns a hr{
	border-width: 8px;
	border-color: #f07b35;
}

/* GALLERY */
.featherlight-content{
	font-family: roboto, sans-serif;
	
}
.photo-gallery{
	font-family: roboto, sans-serif;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	padding: 3% 0 5%;
	max-width: 100%;
	margin: 0 auto;
}
.photo-gallery a{
    width: 27%;
    margin: 1%;
    padding: 6% 2%;
    position: relative;
    overflow: hidden;
	border-radius: 5px;
}
.photo-gallery.clickable a{
    padding: 11% 2%;
}
.photo-gallery a img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 130%;
	transition: ease all 0.3s;
}
.photo-gallery a:hover img{
    width: 140%;
	filter: brightness(1.1) contrast(0.9);
}
.photo-gallery a:hover h3{
	color:#f07b35;
}
.photo-gallery a h3{
	font-size: 30px;
	line-height: 30px;
	font-weight: 900;
	text-transform: uppercase;
	font-family: roboto, sans-serif;
	color: #000;
	position: relative;
	
	
	-moz-transition: ease 0.2s all;
	-o-transition: ease 0.2s all;
	-webkit-transition: ease 0.2s all;
	transition: ease 0.2s all;
}
.photo-gallery a hr{
	border-width: 8px;
	border-color: #f07b35;
	position: relative;
}

/* SUPPLIERS */

.manulogo img{
	transition: ease all 0.3s;
}
.manulogo:hover img{
	transform: scale(1.1);
}

.manu-grid{display: flex; flex-wrap: wrap;}
.manu-grid a{margin: 2%; width: 20%;}
.manu-grid a img{
	margin: 0 auto; 
	-moz-transition: ease all 0.2s;
	-o-transition: ease all 0.2s;
	-webkit-transition: ease all 0.2s;
	transition: ease all 0.2s;
}

/* TEAM */
.team-wrapper{
	padding: 0 5%; max-width: 1600px; margin: 0 auto;
}
.grid-offset{
	margin: -20px;
}
.contact-box{
	padding: 40px;
	width: calc(100% - 40px);
	margin: 20px;
	box-sizing: border-box;
	background: #eee;
	position: relative;
}
.contact-box > div:first-child {
    width: calc(60% - 40px);
}
.contact-box h2{
	color: #000;
}
.contact-box ul li{
	position: relative;	
}
.contact-box ul li:first-of-type{
	font-weight: 400 !important;
	margin:  0 !important;
	text-transform: none !important;
}

.bg-team{
	position: absolute;
	right: 0;
	left: 60%;
    top: 0;
    bottom: 0;
    filter: grayscale(1);
    opacity: 0.8;
}
.bg-team.dan{
	background: url("/siteart/team-dan.jpg") center top;
	-moz-background-size: cover !important;
	-o-background-size: cover !important;
	-webkit-background-size: cover !important;
	background-size: cover !important;
}
.bg-team.andrew{
	background: url("/siteart/team-andrew.jpg") center top;
	-moz-background-size: cover !important;
	-o-background-size: cover !important;
	-webkit-background-size: cover !important;
	background-size: cover !important;
}
.bg-team.jeff{
	background: url("/siteart/team-jeff.jpg") center top;
	-moz-background-size: cover !important;
	-o-background-size: cover !important;
	-webkit-background-size: cover !important;
	background-size: cover !important;
}
.bg-team.jim{
	background: url("/siteart/team-jim.jpg") center top;
	-moz-background-size: cover !important;
	-o-background-size: cover !important;
	-webkit-background-size: cover !important;
	background-size: cover !important;
}
/* LISTS */

.bg-white .flex:not(#hours) ul li:first-of-type{
	font-weight: 900;
	text-transform: uppercase;
	margin-bottom: 12px;
}
.bg-white ul li{
	line-height: 24px;
}

#service-list .col{width: 33.3333%;}
#hours .col{max-width: 200px; border-right: solid 1px #eee; padding-right: 30px; margin-right: 30px;}
#hours .col:last-of-type{border: none; margin: none; padding: none;}


/* MANUBAR */


.manuslider {
background:#fff;
width:calc(90% - 45px);
margin: 0 auto;
padding: 30px 0;
text-align:center;
}
.manuslider img{margin: 0 auto; width: 75%;}
.slick-prev:before, .slick-next:before{color: #000 !important;}
/*--------FORM STYLES--------------------*/

.custom-form{
	font-family: roboto, sans-serif;
}
.custom-form .flex{
	justify-content: space-between;
	flex-wrap: wrap;
}
.custom-form input, .custom-form select{
	width: calc(50% - 10px);
	padding: 10px;
	box-sizing: border-box;
	margin-bottom: 20px;
	font-family: roboto, sans-serif;
	outline: none !important;
}
.custom-form textarea{
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
	resize: vertical;
	height: 240px;
	font-family: roboto, sans-serif;
	outline: none !important;
}
button.cta{
	border: none !important;
	appearance: none;
	cursor: pointer;
}
.CaptchaPanel{padding: 10px 0 !important; text-align: left !important;}
.CaptchaImagePanel, .CaptchaAnswerPanel, .CaptchaMessagePanel, .CaptchaWhatsThisPanel{
	padding-left: 0 !important; padding-right: 0 !important;
}
.CaptchaWhatsThisPanel a{
	color: #f07b35;
}
/*-------- FOOTER STYLES ----------------*/
footer{}


.footer {background: #242424; padding: 5% 3%; font-family: roboto, sans-serif; color: #fff; font-size: 14px; line-height: 30px; overflow: hidden;}

.footer .col33:nth-of-type(2) ul li {
	position: relative;
	left: 30px;
}
.footer ul li i {
	position: absolute;
	left: -30px;
	line-height: 30px;
}
.footer ul li a {
	text-transform: uppercase;
}
.footer a {
	color: #fff; 
	-moz-transition: ease 0.2s all;
	-o-transition: ease 0.2s all;
	-webkit-transition: ease 0.2s all;
	transition: ease 0.2s all;
}
.footer a:hover {color: #f07b35;}

.footer p.right{text-transform: uppercase; color: #fff;}
.footer .left.flex > a{
	padding-right: 50px;
}

/*----INVENTORY STYLES - KEEP AT BOTTOM OF CSS----*/

#inv{padding: 5% 0;}
#inv *:not(.loading-spinner):not(.loader){border-radius: 0!important;}
#inv *:not(.fa):not(.far):not(.fas):not(.fab):not(.material-icons){font-family: roboto, sans-serif!important;} /* Reset font, ignore icons */


.faceted-search-content .faceted-section-box .faceted-option-checkbox-container label input {margin: 2px 3px 3px 4px;}
.faceted-text-input-searchType .search-type input[type=checkbox], .faceted-text-input-searchType .search-type  input[type=radio] {margin: 0px 3px 0px 6px;}


.bread-crumbs-heading .return-links .return-links-link span, #no-compare-listings, .bread-crumbs-heading .return-links .return-links-link i {color:#f07b35 !important;}


.hosted-content .attachment-search .search-checkboxes label .row {margin-left:0 !important;margin-right:0 !important;margin-bottom:0px !important;}

.view-listing-details-link, .selected-facet, .view-listing-details-link, .buy-now-link, .check-availability-link, .email-seller-link, .offer-btn, .buy-btn, .dealer-phone-mobile, .offer-btn-mobile, .send-email-btn-mobile, .send-wholesale-email-btn-mobile, .fin-calc-btn-mobile, .mobile-breadcrumb, .main-detail-data .contact-options a, button.g-recaptcha.button, .page-nav, .apply-button, .mobile-done-button, .dealer-btns-bottom a {background:#f07b35 !important;}


.list-content .list-title .list-listings-count, .list-content .list-main-section .list-container .list-listing .listing-top .listing-top-left .listing-main-stats .price, #parts-content .parts-top-section .parts-title-and-breadcrumbs .parts-title .parts-listings-count, #inv .error-message, #inv .info, .detail-content .detail-main-body .main-detail-data .detail-price, .detail-content .search-results, .list-content .list-top-section .listing-option-bar .list-listings-count, .detail-price, .compare-price, .compare-title {color: #242424 !important;}
 
/* heading */
.list-content .list-title .list-title-text, .detail-content-mobile .detail-main-body .detail-mobile-top .detail-title, .main-detail-data .detail-title, .parts-title-text {
	padding-left: 4px; 
}

.detail-content .detail-additional-data .data-row .data-label, .detail-content-mobile .detail-additional-data .data-row .data-label, .part-detail-additional-data .data-label, .part-detail-content .detail-contact-bar {background: #242424 !important;}
.detail-content-mobile .detail-contact-bar .contact-bar-btn, .list-page-nav, .contact-options a {background: #242424 !important;}

.detail-content .dealer-info .phone-and-email .send-email-btn, .list-content .list-listing-mobile .dealer-phone-container a, .back-button {border-color: #242424!important; color: #242424!important;}

.material-icons, .collapsible-content a {color:#fff!important;}

#parts-content .parts-bottom-section .parts-list-view .parts-list-content .parts-listing-container .parts-listing-column .parts-button.view-details {background-color: #242424!important;}

.detail-content-mobile .detail-main-body .main-detail-data .dealer-phone-mobile-container .dealer-phone-mobile{margin-right:0!important;}

.detail-content .detail-main-body .main-detail-data .details-fin-calc .detail-btn-calc{height: 48px !important; box-sizing: border-box;}


.heroslider .slick-next, .heroslider1 .slick-next{
	right: 10px;	z-index: 10;
}
.heroslider .slick-prev, .heroslider1 .slick-prev{
	left: 10px;	z-index: 10;
}
.heroslider .slick-prev:before, .heroslider .slick-next:before, .heroslider1 .slick-prev:before, .heroslider1 .slick-next:before{
	color: #777 !important;
}

/*---------- RESPONSIVE STYLES ----------*/
@media only screen and (min-width: 768px) {
	.show-mobile{
		display: none !important;
	}
}
@media only screen and (max-width: 767px) {
	.hide-mobile{
		display: none !important;
	}
}

@media only screen and (min-width: 1440px) {

	#btns a h3 {
		font-size: 40px;
		line-height: 40px;
	}
}

@media only screen and (max-width: 1100px) {

	#btns a h3{
		font-size: 24px;
		line-height: 24px;
	}
	.header-contact{font-size: 14px;}
}

@media only screen and (min-width: 1200px) {

	.contact-box{
		width: calc(50% - 60px);
	}

}
@media only screen and (max-width: 1199px) and (min-width: 1024px) {

	.contact-box{
		width: 100%;
	}

}

@media only screen and (max-width: 1023px) {

	#service-list .col{width: 50%;}
	.hide-md{display: none;}
	.header .justify-between .flex{
		width: 50%;
	}
	.header-contact{font-size: 16px;}
	
	
	.col50{width: 100%; padding: 0;}
	.col50:nth-child(2){width: 100%; padding: 0; margin-top: 90px;}
	.col50:nth-child(2) iframe{height: 300px;}
	#contact-info .col50{margin: 0;}
	.footer .col33{
		width: 50%;
		margin-bottom: 60px;
	}
	.footer .col33:nth-of-type(3){
		width: 100%;
	}
	#btns{
		flex-direction: column; justify-content: center;
	}
	#btns a h3{
		font-size: 48px;
		line-height: 48px;
	}
	#btns a{
		width: 86%;
		padding: 10% 5%;
		margin: 2%;
	}
	
	.photo-gallery a{
		width: 42%;
		padding: 9% 3%;
	}
	
}

@media only screen and (max-width: 800px) {
	.header{padding: 20px 3% 0 3%;}
	.header .logo{display: block; margin: 0 auto;}
	.header .logo img{max-width: 100%;}
	.hide-sm{display: none !important;}
	.mobile-column-reverse{
		flex-direction: column-reverse;
	}
	.col33{
		width: 100%;
	}
	.footer .col33{
		width: 100%;
		margin-bottom: 60px;
	}
	#btns a h3, .heading{
		font-size: 30px;
		line-height: 30px;
	}
	.banner, .hero-text{text-align: left;}
	.banner{padding: 5%;}
	.vpad{padding: 60px 0;}
	
	#contact-info .col50{width: 100%;}
	.footer{padding: 60px 5%;}
	
	.footer .right{
		float: none;
		text-align: left;
	}
	.footer .left.flex{
		width: 100%;
	}
	#service-list{flex-wrap: wrap;}
	#service-list .col:first-of-type{margin-bottom: 24px;}
	#service-list .col{width: 100%;}
	
	.photo-gallery a{
		width: 94%;
		padding: 15% 6%;
	}
	

}
@media only screen and (max-width: 600px) {
	
	.bg-team{
		left: 40%;
		opacity: 0.15;
	}
	.contact-box > div:first-child {
		width: calc(100% - 40px);
	}

}






