.awd-content-carousel__viewport {
	overflow-x: auto;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.awd-content-carousel__viewport::-webkit-scrollbar { display: none; }
.awd-content-carousel__track { display: flex; }
.awd-content-carousel__slide { scroll-snap-align: start; }

.awd-content-carousel[data-center-mode="true"] .awd-content-carousel__slide {
	transform: scale(.86);
	transition: transform .45s ease;
	scroll-snap-align: center;
}

.awd-content-carousel[data-center-mode="true"] .awd-content-carousel__slide.is-active {
	transform: scale(1);
}

.awd-story-carousel {
	--awd-carousel-accent: var(--ast-global-color-0, #1baed0);
	--awd-carousel-ink: var(--ast-global-color-3, #102333);
}

.awd-story-carousel__slide {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	flex: 0 0 100%;
	overflow: hidden;
	border-radius: 18px;
	background: #fff;
}

.awd-story-carousel[data-center-mode="true"] {
	--awd-carousel-slide-width: 78%;
}

.awd-story-carousel[data-center-mode="true"] .awd-content-carousel__track {
	padding-inline: calc((100% - var(--awd-carousel-slide-width)) / 2);
}

.awd-story-carousel[data-center-mode="true"] .awd-story-carousel__slide {
	flex-basis: var(--awd-carousel-slide-width);
}

.awd-story-carousel[data-show-featured-image="false"] .awd-story-carousel__slide {
	grid-template-columns: 1fr;
}

.awd-story-carousel .awd-story-carousel__slide.awd-story-carousel__slide--no-media {
	grid-template-columns: 1fr;
}

.awd-story-carousel__media img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 320px;
	object-fit: cover;
}

.awd-story-carousel__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	padding: clamp(1.5rem, 4vw, 4rem);
}

.awd-story-carousel__content h3 { margin: 0 0 .75rem; color: var(--awd-carousel-ink); }
.awd-story-carousel__excerpt { margin-bottom: 1.25rem; }
.awd-story-carousel__button,
.awd-event-carousel__button { display: inline-block; padding: .75rem 1.25rem; border-radius: 999px; background: var(--awd-carousel-accent); color: #fff; text-decoration: none; }

.awd-content-carousel__controls { display: flex; justify-content: center; gap: .75rem; margin-top: 1.25rem; }
.awd-content-carousel__controls button { position: relative; display: block; width: 33px; height: 33px; padding: 0; border: 0; border-radius: 50%; background: var(--awd-carousel-accent, #1baed0); color: transparent; font-size: 0; cursor: pointer; }
.awd-content-carousel__controls button::before { position: absolute; top: 10px; left: 8px; width: 13px; height: 13px; border-top: 3px solid #fff; border-right: 3px solid #fff; content: ""; transform: rotate(45deg); }
.awd-content-carousel__controls .awd-content-carousel__previous::before { left: 13px; transform: rotate(-135deg); }
.awd-content-carousel__controls button:focus-visible { outline: 3px solid var(--awd-carousel-ink, #102333); outline-offset: 3px; }

@media (max-width: 767px) {
	.awd-story-carousel__slide { grid-template-columns: 1fr; }
	.awd-story-carousel__media img { min-height: 220px; aspect-ratio: 16 / 10; }
}

@media (prefers-reduced-motion: reduce) {
	.awd-content-carousel__viewport { scroll-behavior: auto; }
	.awd-content-carousel[data-center-mode="true"] .awd-content-carousel__slide { transition: none; }
}
