.rooms {
	background: #fff; padding-block: clamp(40px, 5vw, 72px);
	position: relative;
}

.clinics .rooms .container {position: relative; border-radius: 28px; overflow: hidden;}
.clinics .rooms .container > img {
	position: absolute; inset: 0;
	width: 100%; height: 100%; object-fit: cover;
	background: #1a5f5f; z-index: 0; pointer-events: none;
}

.clinics .rooms .container .rooms-bg-gradient {
	position: absolute; inset: 0; z-index: 0;
	 background: linear-gradient(to right, rgba(90,193,185,0), rgba(12,150,124,0.6) 55%);
}

.rooms-panel {
	position: relative;
	border-radius: 28px;
	overflow: hidden;
	padding: clamp(28px, 3vw, 48px) clamp(26px, 3vw, 52px) clamp(34px, 4vw, 34px);
}

.rooms-stage {display: flex; grid-template-columns: minmax(320px, .82fr) 1.12fr; gap: clamp(28px, 4vw, 64px);}

/* Info */
.rooms-info {width: 45%;}
.rooms-badge {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 11px 40px;
	border-radius: 999px;
	background: #fff;
	color: #000;
	font-weight: 500;
	font-size: 18px;
	box-shadow: var(--shadow-soft);
}

.rooms-title {
	margin-top: 16px;
	font-weight: 700;
	font-size: clamp(2rem, 3vw, 2.9rem);
	color: #fff;
}

.rooms-specs {
	list-style: none;
	margin: 22px 0 0;
	padding: clamp(20px, 2vw, 30px) clamp(22px, 2.2vw, 22px);
	border-radius: 20px;
	background: rgba(255, 255, 255, .16);
	border: 1px solid rgba(255, 255, 255, .38);
	backdrop-filter: blur(3px);
	-webkit-backdrop-filter: blur(3px);
	display: grid;
	grid-template-rows: repeat(6, 1fr);
	grid-auto-flow: column;
	gap: 14px;
}
.rooms-specs li {
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
	font-size: 20px;
	font-weight: 500;
}
.spec-check {
	flex: none;
	font-weight: 700;
	color: #eafff9;
}

/* Viewer */
.rooms-viewer {width: 55%; flex-shrink: 0;}
.rooms-photo {
	width: 100%;
	aspect-ratio: 16 / 9.6;
	border-radius: 16px;
	box-shadow: 0 22px 44px -24px rgba(20, 50, 44, .55);
	outline: 6px solid rgba(255, 255, 255, .35);
	outline-offset: 0;
}

.rooms-photo .slick-list {border-radius: 16px; overflow: hidden;}
.rooms-photo .slick-dots {top: unset; bottom: -30px; margin: 0;}

.rooms-photo .slide {width: 100%;}
.rooms-photo img {float: right; width: 100%; height: 100%; object-fit: cover; aspect-ratio: 16 / 9.6;}
.rooms-photo:not(.slick-initialized) img {border-radius: 16px;}
.rooms-photo:not(.slick-initialized) img + img {display: none;}

.rooms-strip {margin-top: 52px;}
.rooms-nav {
	flex: none;
	width: 42px; height: 42px;
	display: grid; place-items: center;
	border: none;
	border-radius: 50%;
	background: rgba(255, 255, 255, .55);
	color: var(--teal);
	cursor: pointer;
	transition: background .18s ease, transform .18s ease;
}
.rooms-nav:hover { background: #fff; transform: scale(1.05); }
.rooms-nav svg { width: 20px; height: 20px; }

.rooms-thumbs {width: 92%; margin: 0 auto; padding-top: 1rem;}
.rooms-thumbs .slide {width: 25%; float: right; padding: 2px 0 18px;}
.rooms-thumbs .thumb {
	direction: rtl;
	display: flex;
	width: 96%; margin: 0 auto;
	flex-direction: row-reverse;
	align-items: center;
	justify-content: start;
	gap: 2rem;
	padding: 10px 16px;
	border-radius: 14px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 12px 26px -18px rgba(20, 50, 44, .5);
	cursor: pointer;
	transition: transform .18s ease, background .18s ease;
}
.rooms-thumbs:not(.slick-initialized) .slide:nth-child(n + 5) {display: none;}


.thumb:hover { transform: translateY(-2px); background: #fff; }
.thumb-label { font-weight: 500; color: #000; font-size: 24px; }
.thumb-img {
	flex: none;
	width: 94px; height: 94px;
	border-radius: 10px; overflow: hidden;
}
.thumb-img img {height: 100%; object-fit: cover;}

.rooms-thumbs .slick-prev,
.rooms-thumbs .slick-next {
	position: absolute; top: 50%; z-index: 1; display: block; width: 42px; height: 42px; padding: 0;
	transform: translate(0, -50%); line-height: 0; font-size: 0; outline: none; cursor: pointer;
	background: rgba(255, 255, 255, .55); border-radius: 50%;
}
.rooms-thumbs .slick-prev:before,
.rooms-thumbs .slick-next:before {
	line-height: 1; font-family: monospace; font-size: 2rem; color: var(--blue-main);
}
.rooms-thumbs .slick-prev:hover:before,
.rooms-thumbs .slick-next:hover:before {font-weight: bold;}
.rooms-thumbs .slick-prev {right: -3.5rem;}
.rooms-thumbs .slick-prev:before {content: '<';}
.rooms-thumbs .slick-next {left: -3.5rem;}
.rooms-thumbs .slick-next:before {content: '>';}

.rooms-thumbs .slick-list {border-radius: 14px; overflow: hidden;}

@media screen and (max-width: 40em) {
	.clinics .rooms .container {border-radius: 0;}
	.rooms-stage {display: flex; flex-direction: column;}
	.rooms-info {width: 100%;}
	.rooms-specs {margin: 0; display: flex; flex-direction: column;}
	.rooms-viewer {width: 100%;}
	.rooms-thumbs .slide {width: 100%;}
	.rooms-thumbs:not(.slick-initialized) .slide + .slide {display: none;}

	.rooms-thumbs .slick-prev,
	.rooms-thumbs .slick-next {width: 32px; height: 32px;}
	.rooms-thumbs .slick-prev:before,
	.rooms-thumbs .slick-next:before {font-size: 1.5rem;}
	.rooms-thumbs .slick-prev {right: -2.1rem;}
	.rooms-thumbs .slick-next {left: -2.1rem;}
}
