/*
 * Shared visual shell for editorial hero slides.
 * Text stays in the existing left column; imagery occupies the right side and
 * dissolves into the white Elix background without a visible poster frame.
 */
.carousel-img .slick-slide > div:has(> .carousel-soft-strip),
.carousel-soft-strip {
	height: 100%;
}

.carousel-soft-strip {
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	background:
		linear-gradient(112deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 42%, rgba(235,249,247,.46) 69%, rgba(250,238,234,.42) 100%);
}

.carousel-soft-strip img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	display: block;
	width: 62%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center center;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	filter: saturate(.9) contrast(.96) brightness(1.035);
	-webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.48) 10%, #000 28%, #000 88%, rgba(0,0,0,.62) 96%, transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.48) 10%, #000 28%, #000 88%, rgba(0,0,0,.62) 96%, transparent 100%);
}

.carousel-soft-strip::before,
.carousel-soft-strip::after {
	position: absolute;
	inset: 0;
	z-index: 2;
	content: '';
	pointer-events: none;
}

.carousel-soft-strip::before {
	background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,.98) 40%, rgba(255,255,255,.72) 50%, rgba(255,255,255,.12) 67%, rgba(255,255,255,0) 78%);
}

.carousel-soft-strip::after {
	background: radial-gradient(ellipse 58% 112% at 78% 52%, transparent 54%, rgba(255,255,255,.28) 75%, rgba(255,255,255,.9) 100%);
}

.carousel-soft-strip--focus-center img { object-position: center center; }
.carousel-soft-strip--focus-top img { object-position: center top; }
.carousel-soft-strip--focus-bottom img { object-position: center bottom; }
.carousel-soft-strip--focus-left img { object-position: left center; }
.carousel-soft-strip--focus-right img { object-position: right center; }

.carousel-soft-strip--doctor img {
	object-position: center 34%;
}

.carousel-soft-strip--article img {
	right: clamp(18px, 4vw, 72px);
	object-position: center center;
}

@media screen and (max-width: 1024px) {
	.carousel-soft-strip img {
		width: 64%;
	}

	.carousel-soft-strip::before {
		background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,.97) 43%, rgba(255,255,255,.66) 54%, rgba(255,255,255,.08) 73%, transparent 84%);
	}
}

@media screen and (max-width: 767px) {
	.carousel-soft-strip {
		background: linear-gradient(120deg, rgba(255,255,255,0) 38%, rgba(235,249,247,.6) 70%, rgba(250,238,234,.52) 100%);
	}

	.carousel-soft-strip img {
		width: 64%;
		filter: saturate(.9) contrast(.95) brightness(1.04);
		-webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.48) 10%, #000 28%, #000 94%, rgba(0,0,0,.72) 100%);
		mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.48) 10%, #000 28%, #000 94%, rgba(0,0,0,.72) 100%);
	}

	.carousel-soft-strip::before {
		background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,.98) 44%, rgba(255,255,255,.62) 56%, rgba(255,255,255,.06) 76%, transparent 88%);
	}

	.carousel-soft-strip::after {
		background: radial-gradient(ellipse 67% 112% at 82% 52%, transparent 55%, rgba(255,255,255,.18) 78%, rgba(255,255,255,.68) 100%);
	}

	.carousel-soft-strip--doctor img {
		object-position: center 29%;
	}

	.carousel-soft-strip--article img {
		object-position: 58% center;
	}
}
