/* Hero slider — clon dooplay-child / referencia portada */

.home.home--cinema {
	position: relative;
	width: 100%;
	margin: 0;
	--pelisen-page-bg: #000000;
	background: var(--pelisen-page-bg);
	--pelisen-hero-h: clamp(360px, 64vh, 700px);
}

/* Anular reglas legacy de .home__bg en style.css */
.home.home--cinema .home__bg .item {
	display: block;
	height: auto;
	flex-direction: unset;
	justify-content: unset;
	align-items: unset;
}

.home.home--cinema .home__bg .slider_back:after {
	display: none !important;
	content: none !important;
}

.home.home--cinema .home__bg .slider_back,
.home.home--cinema .home__bg .slider_back img,
.home.home--cinema .home__bg .slider_back figure {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	opacity: 1;
	object-position: center center;
}

.home.home--cinema .home__bg {
	width: 100%;
	margin: 0;
	min-height: var(--pelisen-hero-h);
}

.home.home--cinema .owl-stage-outer,
.home.home--cinema .owl-stage,
.home.home--cinema .owl-item {
	min-height: var(--pelisen-hero-h);
}

.home.home--cinema .item {
	position: relative;
	min-height: var(--pelisen-hero-h);
	max-height: none;
	overflow: hidden;
	background: var(--pelisen-page-bg);
}

.home.home--cinema .slider_back,
.home.home--cinema .backdrop {
	position: absolute;
	inset: 0;
	height: 100%;
}

.home.home--cinema .home__cover {
	width: 100%;
	height: 100%;
	object-fit: cover;
	/* Mostrar más parte superior del backdrop (como referencia) */
	object-position: 50% 16%;
	filter: saturate(1.05);
}

.home.home--cinema .sldr_shade {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		linear-gradient(
			to bottom,
			rgba(0, 0, 0, 0) 0%,
			rgba(0, 0, 0, 0) 45%,
			rgba(0, 0, 0, 0.12) 62%,
			rgba(0, 0, 0, 0.4) 78%,
			rgba(0, 0, 0, 0.72) 92%,
			var(--pelisen-page-bg) 100%
		),
		linear-gradient(
			90deg,
			rgba(0, 0, 0, 0.94) 0%,
			rgba(0, 0, 0, 0.65) 42%,
			rgba(0, 0, 0, 0.15) 100%
		);
}

/* Desvanecido inferior — fusiona slider con el contenido (solo imagen, no tapa texto) */
.home.home--cinema .sldr_bottom-fade {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: clamp(72px, 14vh, 130px);
	z-index: 2;
	pointer-events: none;
	background: linear-gradient(
		to bottom,
		rgba(0, 0, 0, 0) 0%,
		rgba(0, 0, 0, 0.35) 55%,
		rgba(0, 0, 0, 0.85) 100%
	);
}

.home.home--cinema .sldr_align {
	position: relative;
	z-index: 5;
	width: 100%;
	min-height: var(--pelisen-hero-h);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	box-sizing: border-box;
}

.home.home--cinema .sldr_align > .container {
	width: 100%;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	padding-left: 15px;
	padding-right: 15px;
}

.home.home--cinema .sldr_inner {
	position: relative;
	z-index: 6;
	width: 100%;
	max-width: none;
	margin: 0 0 clamp(0.5rem, 1.5vh, 1.25rem);
	padding: clamp(1rem, 2.4vh, 1.75rem) 0 clamp(2rem, 4.4vh, 3.25rem);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-end;
	min-height: 0;
	box-sizing: border-box;
}

/* Panel oscuro detrás del texto para legibilidad */
.home.home--cinema .sldr_meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
	margin: 0 0 0.7rem;
}

.home.home--cinema .sldr_badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.28rem 0.55rem;
	border-radius: 6px;
	font-size: 0.78rem;
	font-weight: 600;
	line-height: 1.2;
	background: rgba(40, 40, 44, 0.95);
	color: #f0f0f0;
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.home.home--cinema .sldr_badge svg {
	width: 12px;
	height: 12px;
	flex-shrink: 0;
}

.home.home--cinema .sldr_badge--rating {
	font-weight: 700;
	color: #f4f4f5;
}

.home.home--cinema .sldr_badge--rating.pelisen-rating-badge--red svg {
	color: #ef4444;
	fill: currentColor;
}

.home.home--cinema .sldr_badge--rating.pelisen-rating-badge--yellow svg {
	color: #eab308;
	fill: currentColor;
}

.home.home--cinema .sldr_badge--rating.pelisen-rating-badge--green svg {
	color: #4ade80;
	fill: currentColor;
}

.home.home--cinema .sldr_badge--quality {
	text-transform: uppercase;
	font-weight: 700;
	border-color: transparent;
	color: #fff;
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--hd-1080p,
.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--1080p {
	background: rgba(236, 19, 19, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--micro-hd {
	background: rgba(202, 163, 247, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--dvd-rip {
	background: rgba(1, 171, 255, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--bdremux-1080p {
	background: rgba(160, 118, 45, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--4k-ultra-hd,
.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--4k {
	background: rgba(241, 192, 50, 0.95);
	color: #1c1917;
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--dvdrip {
	background: rgba(61, 25, 151, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--hd {
	background: rgba(53, 50, 241, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--ts {
	background: rgba(52, 151, 169, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--cam {
	background: rgba(52, 169, 140, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--hdrip {
	background: rgba(46, 190, 138, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--bluray-1080p,
.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--bluray {
	background: rgba(46, 190, 50, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--web-dl {
	background: rgba(46, 190, 138, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--720p {
	background: rgba(53, 50, 241, 0.92);
}

.home.home--cinema .sldr_badge--quality.pelisen-quality-badge--480p {
	background: rgba(163, 172, 247, 0.92);
}

.home.home--cinema .sldr_badge--type svg {
	color: rgba(255, 255, 255, 0.85);
}

.home.home--cinema .sldr_title {
	margin: 0 0 0.55rem;
	font-size: clamp(1.5rem, 3.2vw, 2.85rem);
	font-weight: 700;
	line-height: 1.12;
	max-width: 52rem;
}

.home.home--cinema .sldr_title a {
	color: #fff;
	text-decoration: none;
}

.home.home--cinema .sldr_title a:hover {
	color: #67e8f9;
}

.home.home--cinema .sldr_title-year {
	font-weight: 500;
	opacity: 0.88;
	color: rgba(255, 255, 255, 0.72);
}

.home.home--cinema .sldr_genres {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin: 0 0 0.55rem;
}

.home.home--cinema .sldr_genre {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.62rem;
	border-radius: 999px;
	font-size: 0.74rem;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: 0.01em;
	color: #5eead4;
	background: rgba(8, 12, 18, 0.55);
	border: 1px solid rgba(45, 212, 191, 0.45);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}

.home.home--cinema .sldr_genre:hover {
	color: #99f6e4;
	border-color: rgba(94, 234, 212, 0.75);
	background: rgba(8, 12, 18, 0.72);
}

.home.home--cinema .sldr_description {
	margin: 0 0 0.85rem;
	max-width: 36rem;
	font-size: 0.86rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.8);
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.home.home--cinema .sldr_button {
	position: relative;
	z-index: 8;
	margin: 0.15rem 0 0;
	isolation: isolate;
}

.home.home--cinema .sldr_button a {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.62rem 1.35rem;
	border-radius: 999px;
	font-weight: 700;
	font-size: 0.9rem;
	text-decoration: none;
	color: #041018 !important;
	background: linear-gradient(180deg, #3de8ff 0%, #22d3ee 45%, #06b6d4 100%) !important;
	border: 1px solid rgba(255, 255, 255, 0.45) !important;
	box-shadow:
		0 0 0 1px rgba(34, 211, 238, 0.35),
		0 6px 22px rgba(6, 182, 212, 0.55),
		0 2px 8px rgba(0, 0, 0, 0.45);
	position: relative;
	z-index: 8;
	opacity: 1 !important;
}

.home.home--cinema .sldr_button a:hover {
	filter: brightness(1.1);
	color: #020a10 !important;
	box-shadow:
		0 0 0 1px rgba(34, 211, 238, 0.5),
		0 8px 26px rgba(6, 182, 212, 0.65),
		0 2px 8px rgba(0, 0, 0, 0.45);
}

.home.home--cinema .sldr_button a svg {
	width: 14px;
	height: 14px;
	flex-shrink: 0;
}

/* Flechas: ocultas hasta hover sobre todo el slider */
.home.home--cinema .sldr_arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 30;
	width: 44px;
	height: 44px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: rgba(255, 255, 255, 0.55);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition:
		opacity 0.22s ease,
		visibility 0.22s ease,
		color 0.2s ease,
		background 0.2s ease;
}

.home.home--cinema:hover .sldr_arrow:not(.is-hidden),
.home.home--cinema.is-slider-hover .sldr_arrow:not(.is-hidden) {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

@media (hover: none), (pointer: coarse) {
	.home.home--cinema .sldr_arrow:not(.is-hidden) {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
}

.home.home--cinema .sldr_arrow svg {
	width: 18px;
	height: 18px;
}

.home.home--cinema .sldr_arrow:hover,
.home.home--cinema .sldr_arrow:focus-visible {
	color: #fff;
	background: rgba(0, 0, 0, 0.35);
}

.home.home--cinema .sldr_arrow--prev {
	left: clamp(0.35rem, 2vw, 1.25rem);
}

.home.home--cinema .sldr_arrow--next {
	right: clamp(0.35rem, 2vw, 1.25rem);
}

.home.home--cinema .sldr_arrow.is-hidden {
	display: none;
}

/* Sin paginación (dots) */
.home.home--cinema .owl-dots,
.home.home--cinema .home__bg .owl-dots {
	display: none !important;
}

@media (max-width: 768px) {
	.home.home--cinema {
		--pelisen-hero-h: clamp(280px, 54vh, 480px);
	}

	.home.home--cinema .sldr_description {
		display: none;
	}

	.home.home--cinema .sldr_arrow {
		width: 36px;
		height: 36px;
	}

	.home.home--cinema .sldr_inner {
		padding-bottom: clamp(2.25rem, 5vh, 3.5rem);
		margin-bottom: 0.5rem;
	}

	.home.home--cinema .sldr_bottom-fade {
		height: clamp(56px, 12vh, 100px);
	}

	.home.home--cinema .sldr_title {
		font-size: clamp(1.35rem, 6vw, 2.1rem);
		line-height: 1.12;
	}
}

/* Sin hueco entre slider y catálogo */
/* Fondo negro puro en toda la portada */
body,
.body,
.catalog,
.footer {
	background-color: #000 !important;
}

.home.home--cinema + .catalog {
	margin-top: 0;
	padding-top: clamp(2rem, 4vh, 3.5rem);
}

.home.home--cinema + .catalog > .container {
	padding-top: 0 !important;
}
