.chs-carousel {
	position: relative;
	width: 100%;
	min-height: 560px;
	overflow: hidden;
	isolation: isolate;
	background: #101216;
	color: #fff;
}

.chs-carousel,
.chs-carousel * {
	box-sizing: border-box;
}

.chs-carousel:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 3px;
}

.chs-carousel__slides {
	position: absolute;
	inset: 0;
}

.chs-slide {
	position: absolute;
	inset: 0;
	display: flex;
	visibility: hidden;
	opacity: 0;
	transform: translateX(18px);
	transition: opacity 520ms ease, transform 520ms ease, visibility 520ms;
	pointer-events: none;
}

.chs-slide.is-active {
	visibility: visible;
	opacity: 1;
	transform: translateX(0);
	z-index: 1;
	pointer-events: auto;
}

.chs-slide__picture,
.chs-slide__background,
.chs-slide__shade {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.chs-slide__picture {
	display: block;
	background: linear-gradient(120deg, #17191e, #292c32);
}

.chs-slide__background {
	display: block;
	object-fit: cover;
}

.chs-slide__background--empty {
	opacity: 0;
}

.chs-slide__shade {
	background: linear-gradient(90deg, rgba(0, 0, 0, .92) 0%, rgba(0, 0, 0, .62) 47%, rgba(0, 0, 0, .12) 100%);
	 pointer-events: none;
}

.chs-slide__inner {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: inherit;
	padding: clamp(40px, 6vw, 104px) clamp(24px, 7vw, 132px);
}

.chs-slide__content {
	position: relative;
	z-index: 2;
	width: min(62%, 730px);
}

.chs-slide__copy {
	max-width: 100%;
}

.chs-eyebrow {
	margin: 0 0 14px;
	color: #ef1d25;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .055em;
}

.chs-heading {
	margin: 0 0 14px;
	color: #fff;
	font-size: clamp(38px, 4.4vw, 76px);
	font-weight: 800;
	line-height: 1.02;
	letter-spacing: -.025em;
}

.chs-description {
	margin: 0;
	color: #f4f4f4;
	font-size: clamp(19px, 2vw, 32px);
	font-weight: 600;
	line-height: 1.25;
}

.chs-slide__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 26px;
}

.chs-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 15px 28px;
	border: 1px solid transparent;
	border-radius: 3px;
	background-color: #e51b23;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .035em;
	text-align: center;
	text-decoration: none;
	transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.chs-button:hover {
	transform: translateY(-1px);
	color: #fff;
	text-decoration: none;
}

.chs-button:focus-visible,
.chs-arrow:focus-visible,
.chs-dot:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 3px;
}

.chs-button--primary:hover {
	background-color: #c9141c;
}

.chs-button--secondary {
	border-color: rgba(255, 255, 255, .74);
	background-color: rgba(255, 255, 255, .12);
	color: #fff;
}

.chs-button--secondary:hover {
	background-color: rgba(255, 255, 255, .24);
	color: #fff;
}

.chs-slide__product {
	position: absolute;
	z-index: 1;
	right: 6%;
	top: 50%;
	width: min(35%, 520px);
	height: 86%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
}

.chs-slide__product img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	filter: drop-shadow(0 18px 28px rgba(0, 0, 0, .25));
}

.chs-arrow {
	position: absolute;
	z-index: 4;
	top: 50%;
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	padding: 0;
	transform: translateY(-50%);
	border: 0;
	border-radius: 50%;
	background: rgba(0, 0, 0, .35);
	color: #fff;
	font: inherit;
	cursor: pointer;
	transition: background-color 160ms ease, opacity 160ms ease;
}

.chs-arrow:hover {
	background: rgba(0, 0, 0, .68);
}

.chs-arrow span {
	margin-top: -4px;
	font-size: 36px;
	font-weight: 300;
	line-height: 1;
}

.chs-arrow--previous {
	left: 16px;
}

.chs-arrow--next {
	right: 16px;
}

.chs-dots {
	position: absolute;
	z-index: 5;
	bottom: 22px;
	left: 50%;
	display: flex;
	align-items: center;
	gap: 9px;
	transform: translateX(-50%);
}

.chs-dot {
	width: 11px;
	height: 11px;
	padding: 0;
	border: 1px solid #fff;
	border-radius: 999px;
	background: transparent;
	cursor: pointer;
	transition: width 160ms ease, background-color 160ms ease, border-color 160ms ease;
}

.chs-dot[aria-current="true"] {
	width: 27px;
	background: #e51b23;
	border-color: #e51b23;
}

@media (max-width: 767px) {
	.chs-carousel {
		min-height: 580px;
	}

	.chs-slide__inner {
		align-items: flex-start;
		padding: 54px 24px 86px;
	}

	.chs-slide__content {
		width: 100%;
	}

	.chs-slide__product {
		right: 3%;
		top: auto;
		bottom: 32px;
		width: 34%;
		height: 38%;
		transform: none;
		opacity: .7;
	}

	.chs-slide__shade {
		background: linear-gradient(180deg, rgba(0, 0, 0, .82) 0%, rgba(0, 0, 0, .58) 54%, rgba(0, 0, 0, .42) 100%);
	}

	.chs-arrow {
		top: auto;
		bottom: 14px;
		width: 38px;
		height: 38px;
		transform: none;
	}

	.chs-arrow--previous {
		left: 16px;
	}

	.chs-arrow--next {
		right: 16px;
	}

	.chs-arrow span {
		font-size: 31px;
	}

	.chs-dots {
		bottom: 27px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.chs-slide,
	.chs-button,
	.chs-arrow,
	.chs-dot {
		transition-duration: .01ms !important;
	}
}
