.carousel-container {
	min-height: 100vh;
	background-color: var(--background-secondary-color);
	padding-right: clamp(1em, 4vw, 5em);
	padding-left: clamp(1em, 4vw, 5em);
}

.carousel-title {
	color: var(--primary-color);
}

.carousel-subtitle {
	color: var(--primary-color);
	margin-bottom: 2em;
	margin-top: 1em;
}

.carousel {
	position: relative;
	height: 300px;
}

.carousel-caption {
	background-color: #ffffff;
	color: var(--primary-color);
	padding: 20px;
	text-align: center;
	margin: auto;
	width: 40%;
	position: relative;
	top: -3.2em;
	z-index: 1;

	& p:not(.description) {
		text-transform: uppercase;
	}

	& h3 {
		text-transform: uppercase;
		margin-top: 1em;
		font-size: 2em;
	}
}

.carousel-item {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.carousel-inner {
	display: flex;
	overflow: hidden;
	position: relative;
}

.carousel-item {
	flex: 0 0 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	transform: translateX(100%);
	transition: transform 0.5s ease;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	opacity: 0;
}

.carousel-item.active {
	transform: translateX(0);
	position: relative;
	opacity: 1;
	z-index: 2;
}

.carousel img:not(.chevron) {
	height: 150px;
	width: auto;
	margin: auto;
	position: relative;
	z-index: 2;
}

/* Controls */
.carousel-control-prev,
.carousel-control-next {
	position: absolute;
	top: 60%;
	height: 30px;
	border: none;
	background-color: transparent;
	cursor: pointer;
	z-index: 3;
}

.left {
	transform: rotate(180deg);
}

.carousel-control-prev {
	left: 8em;
}

.carousel-control-next {
	right: 8em;
}

@media screen and (max-width: 1510px) {
	.carousel-caption {
		width: 50%;
	}

	.carousel-control-prev {
		left: 1em;
	}

	.carousel-control-next {
		right: 1em;
	}
}

@media screen and (max-width: 1130px) {
	.carousel-container {
		margin-bottom: 5em;
		min-height: unset;
	}

	.carousel-caption {
		width: 60%;
	}

	.carousel-caption h3 {
		font-size: 1.5em;
	}

	.carousel-control-prev {
		left: 0;
	}

	.carousel-control-next {
		right: 0;
	}
}

@media screen and (max-width: 740px) {
	.carousel-br {
		display: none;
	}
}

@media screen and (max-width: 690px) {
	.carousel-caption {
		width: 80%;
	}

	.carousel-control-prev,
	.carousel-control-next {
		top: 65%;
	}

	.carousel-control-prev {
		left: -0.5em;
	}

	.carousel-control-next {
		right: -0.5em;
	}
}

@media screen and (max-width: 400px) {
	.carousel-control-prev,
	.carousel-control-next {
		top: 80%;
	}
}
