.aura-carousel {
	--aura-carousel-control-size: 42px;
	--aura-carousel-control-offset: 10px;
	--aura-carousel-ink: #4b1c22;
	--aura-carousel-accent: #f4a6a4;
	--aura-carousel-muted: #c39894;
	--aura-carousel-surface: #ffffff;
	--aura-carousel-shadow: 0 12px 30px rgba(75, 28, 34, 0.14);
	position: relative;
	overflow: hidden;
}

.aura-carousel .swiper-wrapper {
	align-items: stretch;
}

.aura-carousel .swiper-slide {
	height: auto;
}

.aura-carousel__button {
	position: absolute;
	top: 50%;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--aura-carousel-control-size);
	height: var(--aura-carousel-control-size);
	padding: 0;
	border: 1px solid rgba(75, 28, 34, 0.12);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.92);
	color: var(--aura-carousel-ink);
	box-shadow: var(--aura-carousel-shadow);
	cursor: pointer;
	transform: translateY(-50%);
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, opacity 180ms ease, transform 180ms ease;
}

.aura-carousel__button::before {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
}

.aura-carousel__button--prev {
	left: var(--aura-carousel-control-offset);
}

.aura-carousel__button--prev::before {
	transform: rotate(-135deg);
	margin-left: 4px;
}

.aura-carousel__button--next {
	right: var(--aura-carousel-control-offset);
}

.aura-carousel__button--next::before {
	transform: rotate(45deg);
	margin-right: 4px;
}

.aura-carousel__button:hover {
	border-color: rgba(75, 28, 34, 0.22);
	background: var(--aura-carousel-ink);
	color: #ffffff;
}

.aura-carousel__button:focus-visible {
	outline: 2px solid var(--aura-carousel-accent);
	outline-offset: 3px;
}

.aura-carousel__button.is-disabled,
.aura-carousel__button.is-locked,
.aura-carousel__button.swiper-button-disabled,
.aura-carousel__button.swiper-button-lock {
	opacity: 0.32;
	pointer-events: none;
}

.aura-carousel__pagination {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 18px;
	margin-top: 18px;
}

.aura-carousel__pagination.swiper-pagination-bullets {
	bottom: auto;
	left: auto;
	width: auto;
}

.aura-carousel__pagination .swiper-pagination-bullet {
	width: 7px;
	height: 7px;
	margin: 0;
	border: 0;
	border-radius: 999px;
	background: var(--aura-carousel-muted);
	opacity: 0.38;
	transition: width 180ms ease, background-color 180ms ease, opacity 180ms ease;
}

.aura-carousel__pagination .swiper-pagination-bullet-active {
	width: 22px;
	background: var(--aura-carousel-ink);
	opacity: 1;
}

.aura-carousel__pagination .swiper-pagination-bullet:focus-visible {
	outline: 2px solid var(--aura-carousel-accent);
	outline-offset: 3px;
}

@media (max-width: 767px) {
	.aura-carousel {
		--aura-carousel-control-size: 38px;
		--aura-carousel-control-offset: 6px;
	}

	.aura-carousel__button {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.aura-carousel,
	.aura-carousel * {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}
