.wrapper {
	max-width: 90%;
	width: 100%;
	position: relative;
}
.wrapper i {
	top: 50%;
	height: 50px;
	width: 50px;
	cursor: pointer;
	font-size: 1.25rem;
	position: absolute;
	text-align: center;
	line-height: 50px;
	background: #fff;
	border-radius: 50%;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.23);
	transform: translateY(-50%);
	transition: transform 0.1s linear;
}
.wrapper i:active {
	transform: translateY(-50%) scale(0.85);
}
.wrapper i:first-child {
	left: -2rem;
}
.wrapper i:last-child {
	right: -2rem;
}
.wrapper .carousel {
	display: grid;
	width: 100%;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% / 3) - 2rem);
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	gap: 2rem;
	border-radius: 8px;
	scroll-behavior: smooth;
	scrollbar-width: none;
}
.carousel::-webkit-scrollbar {
	display: none;
}
.carousel.no-transition {
	scroll-behavior: auto;
}
.carousel.dragging {
	scroll-snap-type: none;
	scroll-behavior: auto;
}
.carousel.dragging .card {
	cursor: grab;
	user-select: none;
}
.carousel :where(.card, .img) {
	justify-content: center;
	align-items: center;
}
.carousel .card {
	scroll-snap-align: start;
	height: 470px;
	list-style: none;
	background: none;
	cursor: pointer;
	padding-bottom: 15px;
	flex-direction: column;
	border-radius: 8px;
}

.card .img img {
	width: 280px;
	height: 280px;
	
}
.carousel .card h2 {
	color: #FFF;
	font-weight: 500;
	font-size: 1.8rem;
	margin: 30px 0 5px;
}
.carousel .card span {
	color: #FFF;
	font-size: 1.31rem;
}

@media screen and (max-width: 800px) {
	.wrapper .carousel {
		grid-auto-columns: calc((100% / 1) - 9px);
	}
}

@media screen and (max-width: 500px) {
	.wrapper .carousel {
		grid-auto-columns: 100%;
	}
}
