﻿/***** BEGIN RESET 
font-family: 'Oswald', sans-serif;
font-family: 'Raleway', sans-serif;

*****/

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;  
} 

/*-------- COLORS --------

*/

/***** 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 {font-family: 'Raleway', sans-serif !important;}

h1,h2,h3,h4,h5,h6{font-family: 'Oswald', sans-serif !important;}

p {font-family: 'Raleway', sans-serif !important;line-height: 1.5 !important;}
a:link, a:visited, a:active {text-decoration:none;}
a:hover {text-decoration:none;}


hr{border:#000 1px solid;}

/*--- BUTTON STYLES ---------------------*/
button{transition:.3s all;cursor: pointer;}
.yellow-btn {background:#ffe845 !important;color: #000;letter-spacing: 2px;font-family: 'Oswald', sans-serif !important;font-weight: 500;border-radius: 90px;padding:15px; width: 200px; max-width: 100%;text-transform: uppercase;border:2px solid #ffe845 !important;}

.yellow-btn:hover {background: #000 !important;color: #fff;border-color: #fff !important;}

/* SIDE TABS
------------------------------------------------*/
#fb {
  top: 320px;
  right: -300px;
  z-index: 999999;
}
.side {
  background: #fff;
  width: 300px;
  height: 510px;
  position: fixed;
  z-index: 100;
}
.fb_iframe_widget {
  display: inline-block;
  position: relative;
}
#facebookTab {
	height: 73px;
    width: 55px;
    background: #222;
    position: absolute;
    left: -55px;
    padding-left: 3px;
    top: 0px;
    box-shadow: rgba(0, 0, 0, 0.15) 0px 5px 15px 0px;
    cursor: pointer;
    display: flex;
    align-items: center;
    border-radius: 90px 0 0 90px;
    justify-content: center;
}

#facebookTab img {height: 30px;max-width: 100%;}
.raise:hover, .raise:focus {
  box-shadow: rgba(0, 0, 0, 0.4) 0 0.5em 0.5em -0.4em;
  transform: translateY(-0.5em);
}

/*--- HEADER STYLES ---------------------*/
header {box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;position: relative;}
.flex-head {
    justify-content: space-between;
    align-items: center;
}
.logo-holder{display:flex;align-items: center;gap: 10px;}
.logo-holder span {font-family: 'Oswald', sans-serif !important;text-transform: uppercase;font-weight: 900;font-size: 32px;}
.more-info {
    padding: 8px 0;
    font-size: 15px;
    text-transform: uppercase;
    font-weight: 600;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}
header a {color: #000;}
header form.detailed-search {
        margin-top: 0;
    width: 200px;
    max-width: 100%;
}
header .search-wrap input[type="text"] {
        font-size: 13px !important;
    line-height: 1.75;
}
header .search-wrap {
    padding: 5px 10px;
}

.search-wrap .fa-solid {
    color: #000;
}
/*---BODY--------------------------------*/
#pad-xl {padding-top: clamp(50px, 5%, 70px);padding-bottom: clamp(50px, 5%, 70px);}
#pad-l {padding-top: clamp(40px, 5%, 50px);padding-bottom: clamp(40px, 5%, 50px);}
.wid90 {width:90%;margin: 0 auto;}
.page-wid {max-width: 1450px; margin: 0 auto;width: 90%;}
.small-page-wid {max-width: 1200px; margin: 0 auto;width: 90%;}
.black-bg{background:#000;color: #fff;}

.flex-container {display: flex;}
.grid-container {display: grid;}

.center {text-align: center;}

.yellow-txt {color: #ffe845 !important;}
.relative {position: relative;}

.white-img {filter: brightness(0) invert(1);}
/*--------HERO STYLES--------------------*/
.herosurround {
    position: relative;
}

.herosurround .overlaytext {
    position: absolute;
    z-index: 1;
    text-align: center;
    width: 90%;
    height: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


.herosurround .overlaytext h1 {
   text-transform: uppercase;color:#fff;font-weight: 800;font-size: 54px;letter-spacing: 1.5px;line-height: 1.25;
}

.herosurround #hero {
   height: max(350px, 30vw);
    display: flex;
    align-items: center;
    z-index: -1;
    overflow: hidden;
}

.herosurround #hero:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: #00000085;
}

.player{
  width: 100vw;
  height: 100vh;
}
    
.player iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100vw;
  height: 100vh;
  transform: translate(-50%, -50%);
}

@media (min-aspect-ratio: 16/9) {
  .player iframe {
    height: 56.25vw;
  }
}
    
@media (max-aspect-ratio: 16/9) {
  .player iframe {
    width: 177.78vh;
  }
}

#hero {
    height: 1582px;
    height: max(824px, 82.39583vw);
    position: relative
}

div#hero video,
div#hero img {
    width: 100%;
}

div#hero img {
    height: 100%;
}

div#hero video,
div#hero img {
    object-fit: cover
}

.herosurround {
    background: rgb(0 0 0 / 65%);
}

/*----HERO SEARCH----*/
.search-wrap {
    background: #fff;
    border-radius: 90px;
    padding: 10px 15px;display: flex;align-items: center;
}
.search-wrap input[type="text"] {padding: 0 10px;line-height: 2;font-size: 15px;width: 100%;outline: none;font-family: 'Raleway', sans-serif !important;
    border: none !important;
    box-sizing: border-box !important;}

.search-wrap input[type="text"]:focus .search-wrap {
	box-shadow: rgba(0, 0, 0, 0.15) 0px 2px 8px !important;
}
.search-wrap input[type="submit"] {
    display: none;
}
form.detailed-search {
    margin-top: 30px;
	width: 500px;
    max-width: 100%;
}

/*---HOME STYLES--*/
.grey-bar {background: #222;padding: 20px 0;color:#fff;}
.grey-bar a {color: #fff;}
.home-contact {display: flex;gap: 20px;justify-content: center;font-size: 18px; line-height: 1;letter-spacing: 1px;}
.home-txt p {font-size: 22px; line-height: 1.5; margin-bottom: 40px;}
.cat-wrap {gap: 3px;}
span.border {
    opacity: .5;
}
.cat {flex: 1;overflow: hidden;}
a.cat:hover img {-webkit-filter: brightness(75%);transition: 1s ease;}

.cat img {width: 100%;height: 100%;object-fit: cover;object-position: center center;-webkit-filter: brightness(35%);
-webkit-transition: all 1s ease;
-moz-transition: all 1s ease;
-o-transition: all 1s ease;
-ms-transition: all 1s ease;
transition: all 1s ease;}
.cat-overlay {
  position: absolute;
    top: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between !important;
    padding: 40px 0;
	width: 80%;
	margin: 0 auto;
	left: 0;
	right: 0;
    color: #fff;
}

.cat h2 {
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 22px;
    font-weight: 500;
text-shadow: 0px 2px 3px rgba(0,0,0,0.4);
}
.home-about h2 {
    text-transform: uppercase;
    font-size: 38px;
    letter-spacing: 1px;
    font-weight: 800;
    margin-bottom: 20px;
}
.flex-about {
    gap: 20px;
}
.flex-about img {
    height: 100%;
    width: 100%;
    object-fit: cover;-webkit-filter: brightness(35%);
}

.two-section {
    flex-direction: column;
    gap: 20px;
}

.visit-box, .connect-box {
    max-height: 240px;
    min-height: 150px;
    height: 100%;
}

.txt-overlay {
    position: absolute;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #fff;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
}

.info-txt {
    width: 80%;
    margin: 0 auto;
}

.info-txt a {font-weight:900;color: #fff}
.info-txt h3 {
    text-transform: uppercase;
    font-size: 28px;
    font-weight: 500;
    letter-spacing: 2px;
    margin-bottom: 20px;
}

.info-txt p {font-size: 16px;}
.social-wrap {display: flex;justify-content: center;gap: 30px;font-size: 32px;}
.social-wrap a {transition: .3s all;opacity: .75;}
.social-wrap a:hover {opacity: 1;}
.manu-wrap {padding-bottom: clamp(40px, 5%, 50px);}
.flex-manu {justify-content: space-between;    gap: 50px;}
.flex-manu img {max-width: 100%;width: 200px;-webkit-filter: grayscale(100%);filter: grayscale(100%);opacity: .5;transition:.3s all;}
.schedule-box {min-height: 400px;}
.flex-manu a:hover img{filter: none;opacity: 1;}

/*-------- contact page STYLES ----------------*/

.sub-hero {background-color: #333;
background-image: url("/siteart/carbon-fibre-big.png");}
.sub-hero h1 {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 900;
    font-size: 62px;
    padding: 30px 0;
}
.flex-contact {
    gap: 5%;
}

.contact-info, .contact-form {
    flex-basis: 40%;
    flex-grow: 1;
}
p.c-info {
    margin-bottom: 15px;
}

p.c-info a {color: #000;transition: .3s all;}
p.c-info a:hover {letter-spacing: 1px;font-weight: 800;}
/*-------- FOOTER STYLES ----------------*/
footer{}

.flex-foot {justify-content: space-between;}

.foot-col {line-height: 1.5;flex: 1;}

.foot-col a {color: #fff;transition: .3s all;}
.foot-col a:hover {font-weight: 800;letter-spacing: 1px;}

span.foot-title { font-family: 'Oswald', sans-serif; text-transform: uppercase;letter-spacing: 1.5px;font-weight: 600;margin-bottom: 10px;display: block;}
ul.flex-socials {
    display: flex;
    gap: 15px;
    font-size: 22px;
}

ul.flex-socials a {opacity: .5;transition: .3s all;}
ul.flex-socials a:hover {opacity: 1;}
ul.flex-socials li {margin-bottom: 0 !important;}
.foot-col ul li {
    margin-bottom: 10px;
}

/*----INVENTORY STYLES - KEEP AT BOTTOM OF CSS----*/


.listing-top-right a, .lower-detail-data-left button, .send-email-btn, .media-buttons a, .media-buttons button, .faceted-search, .listing-dealer-info a, .view-listing-details-link, .main-detail-data .contact-options a, .fin-calc-btn-mobile, .selected-facet, .page-nav, .apply-button, .back-button, .calculator-btn, .mobile-done-button {
    -moz-border-radius: 90px !important;
    -o-border-radius: 90px !important;
    -webkit-border-radius: 90px !important;
    border-radius: 90px !important;
	font-family: 'Oswald', sans-serif !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
}

.list-content .price-container .price {font-family: 'Oswald', sans-serif !important;}

.faceted-search-content .selected-facets-container .selected-header,.faceted-search-content .faceted-section-head,.list-top-section .list-title .list-title-text{
	font-family: 'Oswald', sans-serif !important;text-transform: uppercase !important;letter-spacing: 1px !important;}
.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:#ffe845 !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:#ffe845 !important;color: #000 !important;}

.selected-facet, .dealer-phone-mobile, .offer-btn, .offer-btn-mobile, .fin-calc-btn-mobile, .send-wholesale-email-btn-mobile, .send-email-btn-mobile, .buy-now-link, .view-listing-details-link, .main-detail-data .contact-options a, button.g-recaptcha.button, .page-nav, .apply-button, .mobile-done-button{border: solid 1px #ffe845 !important; transition: ease all 0.2s !important;}

.selected-facet:hover, .dealer-phone-mobile:hover, .offer-btn:hover, .offer-btn-mobile:hover, .fin-calc-btn-mobile:hover, .send-wholesale-email-btn-mobile:hover, .send-email-btn-mobile:hover, .buy-now-link:hover, .view-listing-details-link:hover, .main-detail-data .contact-options a:hover, button.g-recaptcha.button:hover, .page-nav:hover, .apply-button:hover, .mobile-done-button:hover, .dealer-btns-bottom a:hover {background: #000 !important; color: #ffe845 !important;border-color: #000 !important;}

.check-availability-link, .email-seller-link, .video-chat-link, .faceted-search, .faceted-show-all-btn, .cs-btns a, .calculator-btn {background: #000 !important; border: solid 1px #000 !important; transition: ease all 0.2s !important;}
.check-availability-link:hover, .email-seller-link:hover, .video-chat-link:hover, .faceted-search:hover, .faceted-show-all-btn:hover, .cs-btns a:hover, .calculator-btn:hover {background: #333 !important; color: #fff!important;border-color: #333 !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: #000 !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: #000 !important;}
.detail-content-mobile .detail-contact-bar .contact-bar-btn, .list-page-nav, .contact-options a {background: #000 !important;}
.list-main-section .contact-options a {border: #000 solid 1px !important; transition: ease all 0.2s !important;}
.list-main-section .contact-options a:hover {background: #333 !important; color: #fff!important;border-color: #333 !important;}

.detail-content .dealer-info .phone-and-email .send-email-btn, .list-content .list-listing-mobile .dealer-phone-container a, .back-button {border-color: #000!important; color: #000!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: #000!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;}

.list-content .list-error-container .info .selected-facet{background: transparent !important;border: none !important;border-radius: 0 !important;}
.selected-facet.ts-button .list-content .list-error-container .info .selected-facet button {padding: 5px !important;background: transparent !important;background-color: transparent !important;color: #000 !important;font-size: 14px !important;}

.list-content .list-error-container .info button:not(.login-button) {background: #000 !important;}



/*---------- RESPONSIVE STYLES ----------*/

.mobile-only {display: none;}

@media only screen and (max-width:1200px) {
	.herosurround .overlaytext h1 {font-size: 42px;}
	.home-txt p,.cat h2 {font-size: 18px;}
	.cat-wrap {flex-wrap: wrap;gap: 5px;}
	.info-txt {width: 90%;}
	.info-txt h3 {font-size: 22px;}
	.cat {flex-basis: 40%;min-height: 150px;max-height: 175px;}
}

@media only screen and (max-width: 950px) {
	.flex-about,.flex-foot {flex-wrap:wrap;}
	.flex-foot{ gap: 30px;}
	.home-contact {font-size: 16px;}
	.flex-manu img{width: 150px;}
	.foot-col {line-height: 1.5;flex-basis: 30%;flex-grow: 1;}
	.main-head {padding: 10px 0;}
}


@media only screen and (max-width: 850px) {
	.flex-contact {flex-wrap:wrap;gap: 40px;}
	.contact-info, .contact-form {flex-basis: 100%;}
	.sub-hero h1 {font-size: 42px;}
	#formpage {box-shadow: none !important;padding: 0 !important;}
	
}
@media only screen and (max-width: 690px) {
	.cat {flex-basis: 100%;min-height: 120px;max-height: 150px;}
	.cat-overlay {top: 50%;left: 50%;transform: translate(-50%, -50%);bottom: unset;padding: 0;flex-direction: row;width: 90%;}
	.foot-col {flex-basis: 100%;}
	.home-contact {flex-wrap: wrap;}
}
@media only screen and (max-width: 600px) {
	.mobile-only {display: block;}
	.home-contact a span {display: none;}
	.home-contact {font-size: 22px;}
	.herosurround .overlaytext h1 {font-size: 36px;}
	.logo-holder img {max-width: 100%;width: 45px;}
	.logo-holder span {font-size: 24px;}
	.sub-hero h1 {
    font-size: 34px;
	}}
	
@media only screen and (max-width: 520px) {
	.more-info {flex-wrap:wrap-reverse;gap: 10px;}
	.more-info span {flex-basis: 100%;    text-align: center;}
	header form.detailed-search {width: 100%;}
}
@media only screen and (max-width: 420px) {
	.flex-manu {flex-wrap:wrap;}
	.flex-manu a {flex-basis: 100%;text-align: center;}
	.cat-overlay {gap: 20px;flex-direction: column;}
	.herosurround {background: transparent;display: flex;flex-direction: column;}
	.herosurround .overlaytext {position: unset;transform: unset;order: 1;margin: 0 auto; padding: 30px 0;}
	.herosurround .overlaytext h1 {color: #000;font-size: 28px;}
	.search-wrap {border: 1px solid #e8e8e8;}
	.herosurround #hero {height: auto !important;}
	.player {height: 100%;aspect-ratio: 16 / 9;width: 100%;}
	.player iframe{width: 100%;height: 100%;}
	.search-wrap input[type="text"] {font-size: 14px;}
	.logo-holder span {font-size: 18px;}
}