/* Universal Slider Manager frontend */
.usm-slider {
	position: relative;
	width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
}

.usm-slider *,
.usm-slider *::before,
.usm-slider *::after {
	box-sizing: border-box;
}

.usm-swiper {
	width: 100%;
	overflow: hidden;
}

.usm-slide {
	position: relative;
	overflow: hidden;
}

.usm-slide__link,
.usm-slide__picture {
	display: block;
	width: 100%;
	height: 100%;
}

.usm-slide__picture {
	position: relative;
	overflow: hidden;
}

.usm-slide__picture img {
	display: block;
	width: 100%;
	max-width: none;
	border: 0;
	object-fit: cover;
	object-position: center center;
}

/* Main Home: 1920 x 420 desktop */
.usm-slider-main .swiper-slide,
.usm-slider-main .usm-slide__picture,
.usm-slider-main .usm-slide__picture img {
	aspect-ratio: 1920 / 420;
}

.usm-slider-main .usm-slide__picture img {
	height: 100%;
}

/* Header: 900 x 180 desktop */
.usm-slider-header {
	width: 100%;
	max-width: 900px;
	margin-left: auto;
}

.usm-slider-header .swiper-slide,
.usm-slider-header .usm-slide__picture,
.usm-slider-header .usm-slide__picture img {
	aspect-ratio: 900 / 180;
}

.usm-slider-header .usm-slide__picture img {
	height: 100%;
}

.usm-slider .swiper-button-prev,
.usm-slider .swiper-button-next {
	width: 34px;
	height: 34px;
	margin-top: -17px;
	border-radius: 50%;
	background: rgba(0, 0, 0, .45);
	color: #fff;
	transition: opacity 180ms ease, background 180ms ease;
}

.usm-slider .swiper-button-prev::after,
.usm-slider .swiper-button-next::after {
	font-size: 15px;
	font-weight: 700;
}

.usm-slider .swiper-button-prev:hover,
.usm-slider .swiper-button-next:hover,
.usm-slider .swiper-button-prev:focus-visible,
.usm-slider .swiper-button-next:focus-visible {
	background: rgba(0, 0, 0, .75);
}

.usm-slider .swiper-pagination-bullet {
	width: 9px;
	height: 9px;
	opacity: .7;
}

.usm-slider .swiper-pagination-bullet-active {
	opacity: 1;
}

.usm-slider-main {
	margin-bottom: 30px;
}

.usm-slider-header .swiper-button-prev,
.usm-slider-header .swiper-button-next {
	width: 28px;
	height: 28px;
	margin-top: -14px;
}

.usm-slider-header .swiper-button-prev::after,
.usm-slider-header .swiper-button-next::after {
	font-size: 12px;
}

.usm-slider-header .swiper-pagination {
	bottom: 5px;
}

.usm-slider-header .swiper-pagination-bullet {
	width: 7px;
	height: 7px;
}

@media (max-width: 767px) {
	/* Home mobile: recommended 768 x 500 artwork. */
	.usm-slider-main .swiper-slide,
	.usm-slider-main .usm-slide__picture,
	.usm-slider-main .usm-slide__picture img {
		aspect-ratio: 768 / 500;
	}

	/* Header mobile: shorter responsive banner area. */
	.usm-slider-header {
		max-width: 100%;
	}

	.usm-slider-header .swiper-slide,
	.usm-slider-header .usm-slide__picture,
	.usm-slider-header .usm-slide__picture img {
		aspect-ratio: 768 / 240;
	}

	.usm-slider .swiper-button-prev,
	.usm-slider .swiper-button-next {
		width: 30px;
		height: 30px;
		margin-top: -15px;
	}

	.usm-slider .swiper-button-prev::after,
	.usm-slider .swiper-button-next::after {
		font-size: 12px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.usm-slider .swiper-wrapper {
		transition-duration: 0.01ms !important;
	}
}
