.btn {
	text-transform: uppercase;
}

/* header  */
@media (max-width: 992px) {
	.header .navbar .container {
		max-width: 100%;
	}
}

header {
	border-bottom: 1px solid #e1e1e1;
}

.header .navbar-nav .nav-link {
	font-weight: 700;
	text-transform: uppercase;
}

.cw-header {
	position: relative;
}

.cw-header .cw-header-logo-wrap {
	background-color: var(--header-primary);
	position: relative;
	text-align: center;
}

.cw-header-logo-wrap .cw-logo-box {
	padding: 10px;
	display: inline-block;
}

.cw-header-logo-wrap .cw-logo-box img {
	width: 250px;
}

.cw-header .cw-header-contact {
	background-color: var(--header-background);
	color: var(--header-text);
	padding: 0.5rem 0;
}

.cw-header-contact a:hover {
	color: var(--color-theme-highlight);
}

.cw-header-contact .cw-address,
.cw-header-contact .cw-phone,
.cw-header-contact .cw-hours {
	position: relative;
	margin: 0.25rem;
	color: inherit;
	font-size: 0.9rem;
	text-transform: uppercase;
	font-weight: 700;
	display: block;
}

.cw-header-contact .cw-address:before,
.cw-header-contact .cw-phone:before,
.cw-header-contact .cw-hours:before {
	font-family: FontAwesome;
	content: "\f3c5";
	left: 0;
	padding-right: 0.5rem;
	color: inherit;
}

.cw-header-contact .cw-address:before {
	font-family: FontAwesome;
	content: "\f3c5";
}

.cw-header-contact .cw-phone:before {
	font-family: FontAwesome;
	content: "\f2a0";
}

.cw-header-contact .cw-hours:before {
	font-family: FontAwesome;
	content: "\f017";
}

/* Navbar */
.header .navbar .nav-link {
	transition: all 150ms 50ms ease-in-out;
}

.header .navbar .active>.nav-link,
.header .navbar .dropdown-item.active,
.header .navbar .dropdown-item:active,
.header .navbar .show>.nav-link {
	background-color: var(--color-theme-primary);
	color: var(--color-theme-text-btn);
}

.header .navbar-nav .nav-link:focus,
.header .navbar-nav .nav-link:hover {
	background-color: var(--color-theme-highlight);
}

.header .nav-link-cart::after,
.header .navbar .nav-link::before {
	border-width: 0px;
}

@media (min-width: 576px) {

	.cw-header-contact .cw-address,
	.cw-header-contact .cw-phone,
	.cw-header-contact .cw-hours {
		display: inline-block;
		margin: 0.25rem 1rem;
	}
}

@media (min-width: 992px) {
	.cw-header .cw-header-logo-wrap {
		text-align: left;
	}

	.cw-header-logo-wrap .container {
		/* max-width: 1140px; */
	}

	.cw-header-logo-wrap .cw-logo-box {
		position: absolute;
		z-index: 1031;
		top: 2px;
		left: 50px;
	}

	/* Navbar */
	nav.navbar .container {
		min-height: 95px;
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.header.has-cart .collapse.justify-content-center,
	.header .navbar-collapse.justify-content-center {
		-webkit-box-pack: flex-end !important;
		-ms-flex-pack: flex-end !important;
		justify-content: flex-end !important;
	}

	.cw-header-logo-wrap .cw-logo-box img {
		width: 180px;
	}

	.header .navbar-nav:not(.navbar-cart) {
		max-width: calc(100% - 200px);
		justify-content: center;
	}
}

@media (min-width: 1400px) {

	.header .container {
		max-width: 1400px;
	}
}

@media (min-width: 1650px) {
	.header .navbar-nav:not(.navbar-cart) {
		max-width: 100%;
	}
}

/* hero */

/*-- Hero --*/


:root {
	--white: #ffffff;
	--black: #000000;
}

/* -------------------- Hero / Slideshow ---------------------- */

.cw-slider {
	width: 100%;
	height: 500px;
}

.slide-overlay h1 {
	margin-bottom: 0;
	font-size: 1.3rem;
	text-align: center;
	color: rgba(255, 255, 255, 0.7);
}

@media(min-width:1200px) {
	.slide-overlay h1 {
		font-size: 1.7rem;
	}

}

.slide-overlay h3 {
	position: relative;
	z-index: 1;
	max-width: 95%;
	margin: 0 auto 1.5rem;
	color: #fff;
	font-size: 1.5rem;
	text-shadow: 0 0 2px #000;
	text-transform: uppercase;
}

.slide-title span {
	white-space: pre-wrap;
	display: inline-block;
	opacity: 0;
}

.cw-slider .slideshow {
	position: relative;
}

.cw-slider .slideshow-pagination {
	position: absolute;
	bottom: 4rem;
	left: 0;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	transition: .2s opacity;
	z-index: 10;
}

.slideshow-pagination-item {
	display: flex;
	align-items: center;
}

.slideshow-pagination-item .pagination-number {
	opacity: .5;
}

.slideshow-pagination-item:hover,
.slideshow-pagination-item:focus {
	cursor: pointer;
}

.slideshow-pagination-item:last-of-type .pagination-separator {
	width: 0;
}

.slideshow-pagination-item.active .pagination-number {
	opacity: 1;
}

.slideshow-pagination-item.active .pagination-separator {
	width: 10vw;
}

.slideshow-navigation-button {
	position: absolute;
	top: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	width: 5rem;
	z-index: 1000;
	transition: all .2s ease;
	color: #fff;
}

.slideshow-navigation-button:hover,
.slideshow-navigation-button:focus {
	cursor: pointer;
	background: rgba(0, 0, 0, .5);
}

.slideshow-navigation-button.prev {
	left: 0;
}

.slideshow-navigation-button.next {
	right: 0;
}

.pagination-number {
	font-size: 1.8rem;
	color: #fff;
	font-family: montserrat, sans-serif;
	padding: 0 .5rem;
}

.pagination-separator {
	display: none;
	position: relative;
	width: 40px;
	height: 2px;
	background: rgba(255, 255, 255, .25);
	transition: all .2s ease;
}

@media(min-width:720px) {
	.pagination-separator {
		display: block
	}
}

.pagination-separator-loader {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	transform-origin: 0 0;
}

.cw-slider .swiper-container {
	width: 100%;
	height: 100%;
}

.cw-slider .slide {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	text-align: center;
	font-size: 18px;
	background: #000;
	overflow: hidden;
}

.slide-image {
	position: absolute;
	top: -100px;
	left: -100px;
	opacity: .7;
	width: calc(100% + 200px);
	height: calc(100% + 200px);
	background-position: 50% 50%;
	background-size: cover;
}

.slide-overlay {
	position: relative;
	z-index: 50;
	opacity: 1;
	max-width: 100%;
}

.slide-title {
	display: block;
	margin: 0 auto 1rem;
	font-size: clamp(1.02rem, 4vw + 1rem, 4.2rem) !important;
	line-height: 1;
	white-space: normal;
	word-break: break-word;
	color: #fff;
	z-index: 100;
	font-family: montserrat, sans-serif;
	text-transform: uppercase;
	font-weight: 700;
	text-shadow: 1px 1px 0 #000;
}


@media(min-width:1400px) {
	.cw-slider {
		height: 36vw
	}

	.slide-overlay h3 {
		font-size: 2rem
	}
}

@media(max-width:992px) {
	.search__section {
		padding: 1rem !important
	}
}

/* -------------------- Fancy Buttons ---------------------- */
/* Used somewhat globally on site. Try not to keep repeated declarations if you grab multiple snippets that contain this */
.cw-primary-button,
.cw-secondary-button {
	/* font-family: montserrat, sans-serif; */
	cursor: pointer;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .05rem;
	padding: .8rem 2.1rem;
	background-image: linear-gradient(135deg, var(--color-theme-primary) 0%, var(--color-theme-primary) 50%, transparent 51%, transparent 100%);
	background-size: 230%;
	background-position: 130%;
	background-repeat: no-repeat;
	transition: .3s ease-in-out;
	transition-property: background-position, border, color;
	position: relative;
	z-index: 1;
	text-align: center;
}

.cw-primary-button {
	color: #000;
	border: 1px solid var(--color-theme-primary);
	background-color: var(--color-theme-primary);
}

.cw-secondary-button {
	color: #000;
	border: 1px solid #fff;
	background-color: #fff;
}

.cw-primary-button:hover,
.cw-secondary-button:hover {
	border: 1px solid var(--color-theme-primary);
	color: #000;
	background-position: 0%;
}

.cw-primary-button:hover:before {
	background-color: #fff;
}

.cw-primary-button:hover:after {
	background-color: #fff;
}

.cw-button-borders {
	position: relative;
	width: fit-content;
	height: fit-content;
}

.cw-button-borders:before {
	content: "";
	position: absolute;
	width: calc(100% + 0.5em);
	height: 50%;
	left: -.3em;
	top: -.3em;
	border: 1px solid #fff;
	border-bottom: 0;
}

.cw-button-borders:after {
	content: "";
	position: absolute;
	width: calc(100% + 0.5em);
	height: 50%;
	left: -.3em;
	bottom: -.3em;
	border: 1px solid #fff;
	border-top: 0;
	z-index: 0;
}

.cw-button-borders.cw-invert:before {
	border-color: var(--color-theme-primary);
}

.cw-button-borders.cw-invert:after {
	border-color: var(--color-theme-primary);
}

.btn-right {
	background-color: var(--color-theme-primary);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .05rem;
	padding: .8rem 2.1rem;
	float: right !important;
}

.btn-left {
	background-color: var(--color-theme-primary);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .05rem;
	padding: .8rem 2.1rem;
	float: left !important;
}

/* End buttons */


/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {}

/* Large devices (desktops, 992px and up) The navbar toggle appears at this breakpoint */
@media (min-width: 992px) {}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {}


/* 
.cw-hero .carousel-item {
	height: 500px;
	background-size: cover;
	background-position: center center;
}

.cw-hero:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgb(0 0 0 / 40%);
}

.cw-hero .carousel-control-prev,
.cw-hero .carousel-control-next {
	width: 10%;
	text-align: center;
	opacity: 0.7;
	z-index: 3;
}

.cw-hero .carousel-control-prev:hover,
.cw-hero .carousel-control-next:hover {
	opacity: 1;
}

.cw-hero .cw-overlay {
	position: absolute;
	z-index: 1;
	top: 20%;
	width: 100%;
	text-align: center;
	color: #fff;
}

.cw-hero .cw-overlay h1 {
	font-size: 2.5rem;
	text-transform: uppercase;
	line-height: 1;
}

.cw-hero .cw-overlay h1 span {
	display: block;
	margin: 1rem 0 0.75rem;
	text-transform: uppercase;
	font-weight: normal;
	font-size: 40%;
}

.cw-hero .cw-overlay .cw-button-container {
	justify-content: center;
	max-width: 580px;
	margin: 22rem auto 0;
}

.cw-hero .cw-overlay .cw-button-container .btn {
	margin: 0.25rem;
	font-weight: 400;
}

@media (min-width: 768px) {
	.cw-hero .cw-overlay h1 {
		font-size: 4rem;
	}
}

@media (min-width: 1400px) {
	.cw-hero .carousel-item {
		height: 580px;
	}

	.cw-hero .cw-overlay h1 {
		font-size: 5rem;
	}

	.cw-hero .cw-overlay h1 span {
		font-size: 30%;
	}

	.cw-hero .cw-overlay .cw-button-container {
		max-width: 700px;
	}

	.cw-hero .cw-overlay .cw-button-container .btn {
		font-size: 1.25rem;
	}
} */

/* Service Cards */

.cw-box .card-footer {
	border-top: 1px solid var(--color-theme-highlight);
}

.cw-box h2::after {
	content: "";
	display: block;
	height: 3px;
	width: 80px;
	margin: 0.5rem 0 1.5rem;
	background-color: var(--color-theme-highlight);
}

.cw-boxPart {
	background: rgba(0, 0, 0, 0.75);
	padding: 2em;
	margin-top: 3em;
	margin-bottom: 3em;
	color: #ffffff;
	min-height: 19em;
}

.cw-boxText {
	margin: 20px 0px;
}

.cw-box {
	height: auto !important;
	background: url(https://cdn.powersports.com/cdn-cgi/image/h=1440,w=1920/68DDA4D43C7D9D14E801650B0124295E.png);
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
}

/* -------------------- SECTIONTITLE ---------------------- */
/* Keep button text color in modules */
.text a.btn-primary,
.text a.btn-secondary,
.textwithimage a.btn-primary,
.textwithimage a.btn-secondary {
	color: var(--color-theme-text-btn);
}


/* -------------------- Testimonial slider ---------------------- */
.cw-testimonial-slideshow {
	text-align: left;
	position: relative;
	margin: 1rem 0;
	padding: 2rem 0;
}

.cw-testimonial-slideshow {
	height: auto !important;
	background: url(https://cdn.powersports.com/cdn-cgi/image/h=1440,w=1920/CB6DA27076E2B28C174AE6EF3F21AAD7.jpg);
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	padding: 2em;
}

.cw-testimonial-slideshow .cw-avatar {
	border-radius: 50%;
	width: 58px;
	height: 58px;
	overflow: hidden;
}

.cw-testimonial-slideshow .cw-avatar img {
	object-fit: cover;
}

.cw-testimonial-slideshow .cw-avatar .cw-letter {
	font-size: 1.7rem;
	text-align: center;
	height: 100%;
	padding-top: 0.55rem;
	background: var(--color-theme-primary);
	color: var(--color-theme-text-btn);
}

.cw-testimonial-slideshow .cw-stars i {
	font-size: 1.1rem;
	color: #ddaf0d;
}

.cw-testimonial-slideshow p {
	font-size: 1rem;
	font-style: italic;
	margin: 1rem auto 2rem;
	padding-left: 2rem;
	padding-right: 2rem;
}

/* These arrows are created by that javascript code */
.cw-testimonial-slideshow .cw-slick-slider .cw-arrow {
	top: 50%;
}

.cw-testimonial-slideshow .cw-slick-slider .cw-arrow-prev {
	left: -1em;
}

.cw-testimonial-slideshow .cw-slick-slider .cw-arrow-next {
	right: -1em;
}

@media (min-width: 576px) {
	.cw-testimonial-slideshow p {
		font-size: 1.5rem;
	}
}

/* This fix is mostly for dark background sites, but could be useful when you want to change the hard-coded colors on the Vehicle Details Page  */

.inventorydetails .vdp-module-canvas-razor-wrapper a {
	color: var(--color-theme-text);
}

.inventorydetails .vdp-module-canvas-razor-wrapper a:hover {
	color: var(--color-theme-highlight);
}

.inventorydetails .section__title,
.inventorydetails .section__subtitle,
.inventorydetails .section__callout__title {
	color: var(--color-theme-text);
}

.inventorydetails p {
	color: var(--color-theme-text);
}

.inventorydetails .vdp-module-canvas-razor-wrapper .btn-primary {
	color: var(--color-theme-text-btn) !important;
}

.inventorydetails .vdp-module-canvas-razor-wrapper .btn-outline-secondary {
	border-color: var(--color-theme-primary);
	color: #fff;
}

.inventorydetails [LoanCalculatorWidgetCssScope] .loan__calc__content .calc__totals__wrapper {
	background-color: transparent;
}

.inventorydetails .vdp-module-canvas-razor-wrapper .btn-outline-secondary:hover,
.inventorydetails .vdp-module-canvas-razor-wrapper .btn-outline-secondary:before {
	background-color: var(--color-theme-primary);
	border-color: #000;
}

.inventorydetails .vdp-module-canvas-razor-wrapper .btn-check:checked+.btn-outline-secondary {
	color: var(--color-theme-text-btn);
	background-color: var(--color-theme-primary);
	border-color: var(--color-theme-primary);
}

.inventorydetails .vdp-module-canvas-razor-wrapper .btn-secondary,
.inventorydetails .vdp-module-canvas-razor-wrapper .btn-secondary:focus {
	background-color: var(--color-theme-primary);
	color: var(--color-theme-text-btn);
	border-color: var(--color-theme-primary);
}

.inventorydetails .vdp-module-canvas-razor-wrapper .btn-secondary:before {
	background: var(--color-theme-highlight);
}

.inventorydetails label {
	color: var(--color-theme-text);
}

.inventorydetails .disclaimerText {
	color: var(--color-theme-highlight);
	opacity: 0.9;
}

/* this is normally hard-coded as a white background. If you want to keep that, you'll probably need to customize all the colors inside the .vdp__message__wrapper so it works on the light background*/
.inventorydetails .vdp__message__mod.module .vdp__message__wrapper {
	background-color: transparent;
}

.card-header.d-flex.align-items-center.justify-content-between {
	background: #f5df69 !important;
	color: black !important;
}

.inventory .btn-link.btn-clear-filter {
	color: black !important;
}

.inventorydetails .vdp-module-canvas-razor-wrapper .btn-outline-secondary {
	border-color: var(--color-theme-primary);
	color: #fff;
	background-color: black !important;
}

.vdp__veh__info__mod .veh__info__item:nth-child(even)[VehicleInfoWidgetCssScope] {
	background-color: #1a1a1a !important;
}

.page-inventory-details .modal-body label {
	color: #000000 !important;
}

.vdp-module-canvas-razor-wrapper a:not(.text-decoration-underline),
.vdp-module-canvas-razor-wrapper a:hover,
.vdp-module-canvas-razor-wrapper a:active,
.vdp-module-canvas-razor-wrapper a:focus,
.vdp-module-canvas-razor-wrapper .btn-link,
.vdp-module-canvas-razor-wrapper .btn-link:hover,
.vdp-module-canvas-razor-wrapper .btn:focus,
.vdp-module-canvas-razor-wrapper .btn:hover {
	color: black !important;
}

.inventorydetails .vdp-module-canvas-razor-wrapper a {
	color: var(--color-theme-text) !important;
}

.loan-app-module .btn-primary.disabled,
.loan-app-module .btn-primary:disabled {
	color: #ffffff !important;
}

.dealership__call.d-none.d-md-block a {
	color: white !important;
}

.dealership__text.d-none.d-md-block a {
	color: white !important;
}

.hours__status.hours__status__open[DealershipInfoWidgetCssScope] {
	background-color: var(--inventorydetails-primary);
	color: black !important;
}

.modal-body p {
	color: black !important;
}

.inventorydetails .vdp-module-canvas-razor-wrapper .btn-check:checked+.btn-outline-secondary {
	color: var(--color-theme-text-btn);
	background-color: var(--color-theme-primary) !important;
	border-color: var(--color-theme-primary);
}

a.btn.btn-secondary.px-5 {
	color: black !important;
}

.vdp__message__mod.module a.text-link.mb-2 {
	color: var(--color-theme-higlight) !important;
}

.inventory .card-header {
	color: var(--color-theme-primary) !important;
}