﻿/***** 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;  
} 


/* When the screen is less than 600px wide, stack the links and the search field vertically instead of horizontally */
@media screen and (max-width: 600px) {
  .topnav a, .topnav input[type=text] {
    float: none;
    display: block;
    text-align: left;
    width: 100%;
    margin: 0;
    padding: 14px;
  }
  .topnav input[type=text] {
    border: 1px solid #ccc;
  }
}
/***** END RESET *****/
::-moz-selection {
    background: #000; 
    color: #fff;
    text-shadow: none;
}
::selection {
    background: #000;
    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:#000 1px solid;}

/*--- HEADER STYLES ---------------------*/
.header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 50px 5%;
}
.headerlogo {
    display: flex;
    position: absolute;
    top: 15px;
	z-index: 1;
}
.headerlogo img {
    width: 185px;
}
.navsection {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: end;
    align-items: center;
}
.topnavsect {
    display: flex;
	font-family: "Georama", sans-serif;
	margin-bottom: 25px;
}
.redheadernav a {
    background: #c72030;
    width: 250px;
    display: block;
    color: #eee9de !important;
    font-weight: 600 !important;
	font-size: 18px;
}
.redheadernav a:hover {
    background: #322d29;
}
.topnavphone a {
    font-size: 16px;
    color: #efe9de;
	text-shadow: 0px 3px 5px black;
}
.topnavphone {
    padding: 0px 20px;
    text-transform: uppercase;
    font-weight: 500;
}
.topnavphone i {
    color: #bf1c2c;
    padding-right: 10px;
}
.topnavadd {
    text-transform: uppercase;
    font-weight: 500;
}
.topnavadd a{
    font-size: 16px;
    color: #efe9de;
	text-shadow: 0px 3px 5px black;
}
.topnavadd i{
     color: #bf1c2c;
    padding-right: 10px;
}
.herobkgdsect {
    background: url(/siteart/mastercraft-hero.jpg);
	background-color:#322d29;
    background-size: cover;
    width: 100%;
    height: 1000px;
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
}
.pagebkgdsect {
    background: url("/siteart/page-head-bkgd.jpg");
	background-color:#322d29;
    background-size: cover;
    width: 100%;
    height: 400px;
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
}
.herotextsect {
    display: flex;
    background: url("/siteart/hero-bkgd.png");
	background-position: top;
    width: 100%;
	padding: 4% 5% 2% 5%;
    border-bottom: solid 20px #bf1c2c;
	justify-content: space-between;
}
.herotextleft {
    width: 50%;
}
.herotextright {
    width: 25%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
}
.heroheader {
    font-family: "Georama", sans-serif;
    text-transform: uppercase;
    font-weight: 900;
    color: #eee9de;
    font-size: 55px;
    line-height: 48px;
}
.heroheader span {
    font-family: "Caveat", cursive;
    width: 100%;
    display: block;
    font-size: 40px;
    color: #eee9de;
    text-transform: capitalize;
}
.herobtn {
    width: 100%;
    color: #bf1c2c;
    background: #eee9de;
    font-family: "Georama", sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    padding: 16px 0px;
    text-align: center;
	margin: 5px 0px;
	transition-duration: 0.5s;
}
.herobtn:hover {
    background: #322d29;
	color: #eee9de;
	letter-spacing: 0.8px;
}
.hpctabtnsect {
    padding: 40px 5%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.liststyle {
    font-family: "Georama", sans-serif;
    list-style: circle;
    list-style-position: outside;
    padding-left:4%;
    line-height: 28px;
}
.liststyle li{
    padding: 12px 0px;
	list-style: circle;
}
.liststyle ul li{
    padding: 2px 0px 12px 10px!important;
	list-style: disc;
}
.white{
	color: #fff;
}
.red{
	color:#bf1c2c; 
}
.lttan{
	color:#eee9de; 
}
.dkbrwn{
	color:#322d29; 
	
}
.hpctabtn {
    width: 22%;
}
.hpctaimg{
	width: 100%;

}
.hpctaimg img{
	width: 100%;
	border-radius: 10px;
}
.hpctatext {
    margin-top: -22px;
}
.smscriptheader {
    font-family: "Caveat", cursive;
    font-size: 25px;
}
.hpctatext .smscriptheader {
    background: #bf1c2c;
    padding: 2px 22px;
    border-radius: 20px;
    width: fit-content;
    box-sizing: border-box;
    z-index: 1;
    position: relative;
}
.paratext {
    font-family: "Georama", sans-serif;
    font-weight: 300;
    font-size: 18px;
    line-height: 30px;
    padding: 15px 0px;
}
.hpctatext .paratext{
	padding: 10px 10px 20px 10px;
}
.fullredbtn {
    width: 100%;
    text-align: center;
    display: block;
    background: #b71828;
    color: #ede9de;
    font-family: "Georama", sans-serif;
    text-transform: uppercase;
    padding: 12px;
    box-sizing: border-box;
    font-weight: 600;
    font-size: 16px;
	transition-duration: 0.5s;
}
.fullredbtn:hover {
      background: #322d29;
	color: #eee9de;
	letter-spacing: 0.8px;
}
.redbtn {
    width: 350px;
    text-align: center;
    display: block;
    background: #b71828;
    color: #ede9de;
    font-family: "Georama", sans-serif;
    text-transform: uppercase;
    padding: 12px;
    box-sizing: border-box;
    font-weight: 600;
    font-size: 16px;
	margin-top: 25px;
	transition-duration: 0.5s;
}
.redbtn:hover {
   background: #322d29;
	color: #eee9de;
	letter-spacing: 0.8px;
}
.hpbrandsect {
    padding: 80px 5%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: center;
}
.fullwidthcenter {
    width: 100%;
    justify-content: center;
    display: flex;
    flex-wrap: wrap;
    text-align: center;
}
.fullwidthcenter .headertext{
    width: 100%;
}
.headertext{
    font-family: "Caveat", cursive;
font-size: 45px;	
}
.subheader {
    font-family: "Georama", sans-serif;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 400;
}
.lgsubheader {
      font-family: "Georama", sans-serif;
    font-size: 30px;
    font-weight: 600;
}
.inlinelink{
      font-family: "Georama", sans-serif;
    font-weight: 600;
	color: #322d29;
	transition-duration: 0.5s;
}
.inlinelink:hover{
     text-decoration: underline;
}
.hpbrandlogo {
    width: 18%;
	text-align: center;
	margin-top: 20px;
}
.hpbrandlogo img{
    width: 100%;
	max-width: 225px;
	transition-duration: 0.3s;
}
.hpbrandlogo img:hover{
    opacity: 65%;
}
.treebkgdbreak {
    background: url(/siteart/red-tree-bkgd.png);
    width: 100%;
    height: 150px;
    background-size: cover;
    background-position: center;
}
.hpaboutsect {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 80px 5%;
	align-items: center;
}
.hpaboutleft {
    width: 24%;
}
.hpaboutright {
    width: 65%;
}
.hpaboutright p{
    padding: 20px 0px;
}
.hpwhychoosehead {
    display: flex;
    justify-content: flex-start;
    align-items: center;
	margin-bottom: 5px;
}
.hpwhychoosehead i {
    background: #af1424;
    color: #ede9de;
    padding: 10px;
    margin-right: 10px;
}
.hpwhychoosesect{
	padding: 10px 0px;
}
.redbkdtext {
   	background: #af1424;
    color: #ede9de;
    font-family: 'Georama';
    padding: 20px!important;
    border-radius: 40px;
    font-weight: 500;
    margin: 20px 0px;
	box-sizing: border-box;
}
.reviewbox{
	padding: 1% 5%;
}
.pagination {
  display: flex;
  justify-content: center;
  list-style: none;
  padding: 0px;
	    font-family: 'Georama';
}

.pagination li a {
  display: block;
  padding: 8px 12px;
  text-decoration: none;
  border: 1px solid gray;
  color: black;  
  margin: 0 4px;
  border-radius: 5px;
}

.pagination li a.pageactive {
  background-color: #b71828;
  color: white;
}
.mobileheadcontact{
	display: none;
}
/*---BODY--------------------------------*/

.pageheader {
    padding: 0px 8% 40px 8%;
    font-family: 'Georama';
    font-size: 40px;
    width: 50%;
    display: block;
	color:#ede9de; 
}
.pageheader span {
    width: 100%;
    display: block;
    font-size: 40px;
    font-family: "Caveat", cursive;
}
.pagepadding{
	padding: 40px 8%;
}
.halfsect{
	width: 45%;
}
.lghalfsect{
	width: 49.5%;
}
.flexbox{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 40px 0px;
	align-items: center;
}
.flexboxcenter{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 5px 0px 40px 0px;;
	align-items: center;
	width: 100%;
}
.flexboxtop{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 40px 0px;
	align-items: flex-start;
}
.tablestyle{
	font-family: "Georama", sans-serif;	
	margin: 15px 0px;
}
.tablestyle th{
    background: #eee9de;
    padding: 8px 5px;
}
.tablestyle td{
       padding: 25px 0px 5px 0px;
}
.blogpostbox {
    width: 33%;
    margin: 20px 0px 60px 0px;
    padding: 0px 20px;
    box-sizing: border-box;
}
.accordion {
  background-color: #eee;
  color: #444;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  text-align: left;
  border: none;
  outline: none;
  transition: 0.4s;
	font-size: 16px;
    text-transform: uppercase;
    font-family: 'Georama';
    font-weight: 600;
}

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
.active, .accordion:hover {
  background-color: #ccc;
}

/* Style the accordion panel. Note: hidden by default */
.panel {
  padding: 0 18px;
  background-color: white;
  display: none;
  overflow: hidden;
}
.accordion2 {
  background-color: #eee;
  color: #444;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  text-align: left;
  border: none;
  outline: none;
  transition: 0.4s;
	font-size: 16px;
    text-transform: uppercase;
    font-family: 'Georama';
    font-weight: 600;
}

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
.active, .accordion2:hover {
  background-color: #ccc;
}

/* Style the accordion panel. Note: hidden by default */
.panel {
  padding: 0 18px;
  background-color: white;
  display: none;
  overflow: hidden;
}
/*--------FORM STYLES--------------------*/
.formflex{
	width: 100%;
	box-sizing: border-box;
	padding: 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.fullformfields {
    width: 100%;
    height: 40px;
    box-sizing: border-box;
    padding: 0px 10px;
    margin: 5px 0px;
    font-family: "Georama", sans-serif;
    background: #fff;
    border: solid 1px #767676;
	border-radius: 2px;
	color: #000;
}
.comments {
    width: 100%;
    height: 100px;
    box-sizing: border-box;
    padding: 10px;
    margin: 5px 0px;
    font-family: "Georama", sans-serif;
    background: #fff;
    border: solid 1px #767676;
	border-radius: 2px;
	color: #000;
}
.halfformfields {
    width: 49.5%;
    height: 40px;
    box-sizing: border-box;
    padding: 0px 10px;
    margin: 5px 0px;
    font-family: "Georama", sans-serif;
    background: #fff;
    border: solid 1px #767676;
	border-radius: 2px;
	color: #000;
}
.thirdformfields {
    width: 33%;
    height: 40px;
    box-sizing: border-box;
    padding: 0px 10px;
    margin: 5px 0px;
    font-family: "Georama", sans-serif;
    background: #fff;
    border: solid 1px #767676;
	border-radius: 2px;
	color: #000;
}
.CaptchaPanel{
	width: 100%;
}
.CaptchaMessagePanel{
    font-family: "Georama", sans-serif;
color: #000;	
}
.CaptchaWhatsThisPanel a{
  font-family: "Georama", sans-serif;
color: #af1424;	
}
.submit {
    width: 400px;
    text-align: center;
    display: block;
    background: #b71828;
    color: #ede9de;
    font-family: "Georama", sans-serif;
    text-transform: uppercase;
    padding: 12px;
    box-sizing: border-box;
    font-weight: 600;
    font-size: 16px;
    margin-top: 25px;
	cursor: pointer;
	border: none!important;
}

/*-------- FOOTER STYLES ----------------*/
footer{}
.footer {
    background: #af1424;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
	padding: 40px 60px;
}
.footersect {
    width: 18%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.footersect .subheader{
    width: 100%;
	display: block;
	margin-bottom: 5px;
}
.footertext{
	width: 100%;
	display: block;
	font-family: 'Georama';
	color: #fff; 
	line-height: 22px;
	font-size: 14px;
}
.footersect img {
    width: 180px;
}
.footericonsect {
    width: 100%;
}
.footericon {
    background: #ede9de;
    padding: 8px;
    color: #af1424;
    font-size: 16px;
}


/*----INVENTORY STYLES - KEEP AT BOTTOM OF CSS----*/
.list-container-flexrow .view-listing-details-link, .list-container-flexrow .dealer-phone-call, .list-container-flexrow .dealer-phone-text{
    background-color: #bf1c2c!important;	
}

.list-top-section .list-listings-count{
	color: #bf1c2c!important;
}

.faceted-search-content button.faceted-search{
    background-color: #bf1c2c!important;	
	
}
.faceted-search-content .faceted-section-box .faceted-btn-container .faceted-show-all-btn{
    background-color: #bf1c2c!important;	
	
}
.faceted-search-content .selected-facets-container .selected-facet{
    background-color: #bf1c2c!important;	
	
}
    .list-top-section .list-title .list-title-text {
        font-size: 2.2em!important;
        font-family: "Caveat", cursive!important;
        color: #322d29!important;
    }
.faceted-search-content .mobile-done-button-container .mobile-done-button{
    background-color: #bf1c2c!important;	
	
}
.parts-list-content .parts-title-and-breadcrumbs .parts-listings-count{
	
    color: #af1424!important;
}
/*---------- RESPONSIVE STYLES ----------*/



@media only screen and (max-width: 1660px) {
.herotextleft {
    width: 68%;
}
.herotextright {
	width: 30%;
}	
	.hpaboutleft {
    width: 40%;
}
	.hpaboutright {
    width: 55%;
}
}
@media only screen and (max-width: 1550px) {
.blogpostbox {
	width: 50%;
}
}
@media only screen and (max-width: 1450px) {
	.herobkgdsect{
	    height: 800px;	
	}	
	.hpctatext .paratext {
    padding: 10px 0px 20px 0px;
}
}
@media only screen and (max-width: 1350px) {
	header{
		width: 100%;
	}
	.headerlogo{
		z-index: 500;
	}
	.headerlogo img {
    width: 165px;
}
    .topnavphone a {
        font-size: 15px;
    }
.topnavadd span{
display: none;
}
	.topnavadd i{
		font-size: 20px;
	}
.herotextsect {
	    padding: 8% 2% 2% 2%;
	}
	.hpaboutsect{
	padding: 40px 3%;	
	}
	.herobkgdsect{
		
    height: 700px;
	}
}
@media only screen and (max-width: 1250px) {
.topnavadd a {
    font-size: 13px;
}
.topnavphone a {
	font-size: 13px;
}
	.heroheader{
	    font-size: 45px;
    line-height: 42px;	
	}
	.heroheader span {
		font-size: 32px;
	}
	.hpctabtn {
    width: 24%;
}
	.hpctabtnsect {
		padding: 40px 2%;
	}
	    .hpctabtn {
        width: 45%;
        margin: 2%;
    }
	.halfsect {
    width: 100%;
    margin: 16px 0px;
}
	.flexbox{
		padding:  25px 0px;
	}
}
@media only screen and (max-width: 1120px) {
.footersect {
    width: 50%;
	margin: 15px 0px;
	justify-content: flex-start;
}
	.footer{
	    padding: 20px 18px;	
		
	}
	.redheadernav a{
	    width: 140px;
	}
	.hpaboutleft {
        width: 100%;
    }
	    .hpaboutright {
        width: 100%;
    }
}
@media only screen and (max-width: 950px) {
	.herotextsect{
		flex-wrap: wrap;
		border-bottom: 0px;

	}
	.herotextleft {
        width: 100%;
    }
	 .herotextright {
        width: 80%;
    }
	.herobtn{
	padding: 10px 0px;
    font-size: 14px;
	}
}
@media only screen and (max-width: 850px) {

	.blogpostbox {
	width: 100%;
}
	.pagination {
	flex-wrap: wrap;
	}
	}
@media only screen and (max-width: 760px) {
	
.mobileheadcontact span{
    display: flex;
	color: #ede9de;
    padding-right: 10px;
}	
.mobileheadcontact  {
    padding: 0px 20px;
    text-transform: uppercase;
    font-weight: 500;
	display: flex;
	align-items: center;
	font-size: 18px;
}
.mobileheadcontact  i {
    color: #bf1c2c;
    padding-right: 10px;
}
	.topnavphone{
		display: none;
	}
	.pagebkgdsect{
	height: auto;	
	}
	.pagepadding {
    padding: 10px 8%;
}
    .herobkgdsect {
        height: 320px;
        border-bottom: 275px solid #b71828;
    }
	.herotextsect {
        padding: 8% 2% 2% 2%;
        position: relative;
        top: 90px;
		background: none;
    }
	.hpbrandlogo {
		width: 28%;}
	.halfformfields {
		width: 100%;}
	.thirdformfields{
		width: 100%;
	}
	
	.lghalfsect{
		width: 100%;
	}
}

@media only screen and (max-width: 650px) {
    .heroheader span {
        font-size: 25px;
		line-height: 26px;
    }	
	.heroheader {
        font-size: 32px;
        line-height: 32px;
    }
	.herotextsect{
		top: 115px;
	}
	.headertext{
		font-size: 35px;
		line-height: 34px;
	}
	.subheader{
		font-size: 15px;
	}
	.formflex{
		padding: 5px;
	}
}
@media only screen and (max-width: 550px) {
	.redbtn{
		width: 100%;
	}	
	.liststyle{
	padding-left: 10%;	
	}
	.lgsubheader{
		font-size: 24px;
	}
	.submit{
		width: 100%;
	}
	    .herotextsect {
	top: 150px;
	}
	    .hpctabtn {
        width: 100%;
        margin: 2%;
    }
	.hpbrandlogo {
		width: 47%;}
	.hpbrandsect {
		padding: 40px 5%;}
}
@media only screen and (max-width: 440px) {
	.header{ padding: 30px 2%;}
	.headerlogo img {
        width: 140px;
    }
	.pageheader span {
    font-size: 30px;
		line-height: 26px;
	}
	.pageheader {
	font-size: 32px;	
	padding: 0px 2% 25px 2%;
	}
	.pagepadding {
    padding: 10px 2%;
}
	.footersect{
		width: 100%;
	}
	.footericonsect {
    padding: 20px 0px;
}
	.herotextright {
        width: 100%;
    }
	.topnavsect {
    display: flex;
    font-family: "Georama", sans-serif;
    margin-bottom: 25px;
    width: 100%;
    justify-content: flex-end;
}
}
@media only screen and (max-width: 365px) {
	.mobileheadcontact span{
		display: none;
	}
	
	.mobileheadcontact i{
		font-size: 22px;
	}
	    .herobkgdsect {
        height: 320px;
        border-bottom: 310px solid #b71828;
    }
	.mobileheadcontact {
		padding: 0px 2px;
	}
}
@media only screen and (max-width: 240px) {

.headerlogo img {
  width: 100px;
}
.mobileheadcontact i{
font-size: 16px;
}
.topnavadd i{
font-size: 16px;	
}
.footersect img {
    width: 120px;
}
}
