.sdf-oem-image-carousel { padding: 0 0 48px; }
.sdf-oem-image-carousel__stage { display: grid; position: relative; aspect-ratio: 16 / 5; background: #111; overflow: hidden; touch-action: pan-y; }
.sdf-oem-image-carousel__slide { grid-area: 1 / 1; min-width: 0; min-height: 0; opacity: 0; visibility: hidden; transition: opacity .4s ease, visibility .4s; }
.sdf-oem-image-carousel__slide.is-active { opacity: 1; visibility: visible; }
.sdf-oem-image-carousel__slide img { display: block; width: 100%; height: 100%; object-fit: contain; }
.sdf-oem-image-carousel button { min-height: 44px; cursor: pointer; font: inherit; color: #fff; border: 1px solid #777; background: #141414; border-radius: 3px; padding: 8px 16px; }
.sdf-oem-image-carousel button:hover { border-color: #e8c98a; color: #e8c98a; }
.sdf-oem-image-carousel button:focus-visible { outline: 2px solid #e8c98a; outline-offset: -3px; }
.sdf-oem-image-carousel :is(.sdf-oem-image-carousel__prev, .sdf-oem-image-carousel__next) { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; padding: 0; font-size: 28px; background: rgba(10, 10, 10, .8); z-index: 1; }
.sdf-oem-image-carousel__prev { left: 12px; }
.sdf-oem-image-carousel__next { right: 12px; }
.sdf-oem-image-carousel__controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 20px; padding-top: 10px; }
.sdf-oem-image-carousel__dots { display: flex; flex-wrap: wrap; justify-content: center; }
.sdf-oem-image-carousel__dots button { width: 44px; height: 44px; padding: 0; display: grid; place-items: center; border: 0; background: transparent; }
.sdf-oem-image-carousel__dots span { width: 8px; height: 8px; border-radius: 50%; background: #777; }
.sdf-oem-image-carousel__dots [aria-current="true"] span { background: #e8c98a; }
.sdf-oem-image-carousel [hidden] { display: none; }
@media (max-width: 768px) {
	.sdf-oem-image-carousel { padding-bottom: 32px; }
	.sdf-oem-image-carousel__stage { aspect-ratio: 16 / 9; }
}
@media (prefers-reduced-motion: reduce) {
	.sdf-oem-image-carousel__slide { transition: none; }
}
