/**
 * Theme Name: Underground
 * Description: Custom theme for Underground Productions
 * Author: Mobius
 * Template: blocksy
 * Text Domain: blocksy
 */

/* ----------- GENERAL ----------- */
body {
	background-color: #0B0D17;
	margin: 0;
	color: white;
	font-family: 'Inter', sans-serif;
}
html {
	margin: 0 !important;
}

/* =============================
   HEADER (Mobile First)
   ============================= */

.u-header {
	padding: 0;
	margin: 0;
	transition: background-color 0.3s ease;
	width: 100%;
}

.u-header-black {
	top: 0;
	left: 0;
	width: 100%;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.38) 134.02%) !important;
	background: #0B0D17;
	color: #fff;
	z-index: 1000;
}

.home .u-header-black {
	position: absolute;
}

.u-header-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 60px;
	padding: 5px 24px;
	margin: 0 auto;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.38) 134.02%);
}

.u-nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}

.u-logo-link {
	display: inline-block;
	text-decoration: none;
}

.u-logo-img {
	height: 115px;
	max-width: 100%;
}

.logo-productions {
	width: 325px;
	max-width: 100%;
	height: auto;
}

.stacked-logo {
	display: block;
	margin: 0 auto;
}

.stacked-logo + .stacked-logo {
	margin-top: 14px;
}

.logo-white {
	height: 109px;
}

.logo-color {
	height: 79px;
	display: block;
	margin: 0 auto;
}

.logo-letters {
	height: 21px;
	display: block;
	margin: 14px auto 0 auto;
}

.mobile-logo {
	display: block;
}

.mobile-logo img {
	width: 160px;
	height: auto;
}

#burger-btn {
	display: block;
	background: none;
	border: none;
	cursor: pointer;
	z-index: 1001;
}

#burger-btn span {
	display: block;
	width: 30px;
	height: 3px;
	margin: 5px 0;
	background-color: white;
	transition: 0.3s ease;
}

#burger-btn:hover span:nth-child(2) {
	width: 20px;
}

body.menu-open #burger-btn {
	display: none;
}

#mobile-menu {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #0B0D17;
	z-index: 1000;
	padding: 16px 32px;
	transform: translateX(-100%);
	transition: transform 0.3s ease;
}

#mobile-menu.open {
	transform: translateX(0%);
}

.mobile-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 25px;
}

.mobile-header .mobile-logo {
	display: block;
	height: 25px;
}

#close-mobile {
	font-size: 2rem;
	color: white;
	background: none;
	border: none;
	cursor: pointer;
	z-index: 1002;
	transition: color 0.3s ease, transform 0.3s ease;
}

#close-mobile:hover {
	color: #606BDC;
	transform: scale(1.2);
}

.mobile-menu-list {
	margin-top: 3rem;
	width: 100%;
}

.mobile-menu {
	list-style: none;
	padding: 0;
	margin: 2rem 0;
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.mobile-menu li a {
	font-family: "Smooch Sans", sans-serif;
	font-weight: 700;
	font-size: 2rem;
	text-transform: uppercase;
	color: white;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	transition: color 0.3s ease;
}

.mobile-menu li a:hover {
	color: #606BDC;
}

.mobile-menu li a::after {
	content: '>';
	font-size: 2rem;
	color: white;
	margin-left: 1rem;
	transition: transform 0.3s ease;
}

.mobile-menu li a:hover::after {
	transform: translateX(5px);
	color: #606BDC;
}

.u-left-nav,
.u-right-nav,
.u-logo,
.u-menu {
	display: none;
}
@media (min-width: 769px) {
	.u-header-inner {
		height: 174px;
		max-width: 1512px;
	}

	.u-logo,
	.u-left-nav,
	.u-right-nav {
		display: block !important;
	}

	.u-menu {
		list-style: none;
		display: flex;
		gap: 2rem;
		padding: 0;
		margin: 0;
	}

	.u-header .u-menu a {
		text-decoration: none;
		font-weight: 500;
		text-transform: uppercase;
		font-size: 19px;
		display: inline-block;
		transition: all 0.3s ease-in-out;
		transform-origin: left center;
	}

	.u-header .u-menu a:hover {
		transform: scale(1.05);
		color: #606BDC;
	}

	.u-header .u-menu .current-menu-item a,
	.u-header .u-menu .current_page_item a,
	.u-menu a[aria-current="page"] {
		color: #606BDC !important;
	}

	.u-header-black .u-menu a {
		color: #fff;
	}

	.u-header-white .u-menu a {
		color: #000;
	}

	.mobile-logo,
	#burger-btn,
	#mobile-menu {
		display: none !important;
	}
}

/* =============================
   ABOUT US
   ============================= */

.ct-container-full {
	padding: 0 !important;
	margin: 0 !important;
}

.page-title {
	display: none;
}
.title-page {
	font-family: "Smooch Sans", sans-serif;
	text-transform: uppercase;
	color: #FFF;
	font-weight: bold;
	font-size: 38px;
	padding: 0;
	margin: 24px 0 !important;
}


.title-about {
	display: block;
}

.about-title {
	color: #fff !important;
	font-family: Inter, sans-serif;
	font-size: 29px;
	line-height: 32px;
	font-weight: 600;
	letter-spacing: -1px;
	margin: 0;
	margin-bottom: 24px !important;
	padding: 0;
}

.about-text-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.about-text {
	color: #fff;
	font-family: Inter, sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 28px;
}

.about-highlight {
	color: #fff;
	font-family: Inter, sans-serif;
	font-size: 22px;
	font-weight: 700;
	line-height: 28px;
	letter-spacing: -1px;
	display: block;
	margin-top: 16px;
	word-wrap: break-word;
}

.text-animate {
	visibility: hidden;
}

.text-animate .word {
	display: inline-block;
	white-space: nowrap;
}

.text-animate .word span {
	display: inline-block;
}

@keyframes letterFade {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.column-profiles {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 32px;
	margin-bottom: 1rem !important;
}
.column-profiles .picture-column {
	border: 1px solid rgba(255,255,255,0.5);
}

.picture-column {
	margin: 0 !important;
	width: 100%;
	display: flex;
	justify-content: center;
}

.profile-column {
	margin: 0 !important;
	width: 100%;
}

.profile-name {
	color: #fff;
	font-family: 'Inter', sans-serif;
	font-weight: bold;
	font-size: 22px;
	line-height: 28px;
	margin: 0 !important;
}

.profile-title {
	color: #fff;
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	line-height: 22px;
	margin-bottom: 24px !important;
}

.profile-info {
	color: #fff;
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	line-height: 24px;
}

.ortega,
.cullel {
	margin: 0 !important;
}

@media (min-width: 769px) {
	.title-about {
		display: none;
	}

	.about-title {
		font-size: 48px;
		line-height: 48px;
		letter-spacing: -2.5px;
		margin-top: 112px;
		margin-bottom: 64px !important;
		padding: 0 5%rem;
	}

	.about-text-container {
		flex-direction: row;
		padding: 0 10%;
	}

	.about-text {
		font-size: 24px;
		line-height: 28px;
	}

	.about-highlight {
		font-size: 40px;
		line-height: 44px;
		padding: 0 10%;
		margin-top: 24px;
	}

	.column-profiles {
		flex-direction: row;
		align-items: center !important;
		justify-content: flex-start;
		gap: 48px;
		margin-bottom: 6rem !important;
		padding-right: 10%;
	}

	.column-profiles:nth-of-type(odd) {
		flex-direction: row-reverse;
		padding-right: 0;
		padding-left: 10%;
	}

	.profile-name {
		font-size: 36px;
	}

	.profile-title {
		font-size: 24px;
		line-height: normal;
		margin-top: 12px !important;
		margin-bottom: 32px !important;
	}

	.profile-info {
		font-size: 24px;
		line-height: 28px;
	}
}
@media (min-width: 1000px) {
	.about-title {
		font-size: 64px;
		line-height: 68px;
		letter-spacing: -2.5px;
	}
	
}

/* =============================
   CONTACT (Mobile First)
   ============================= */

.dash {
	color: #C61C1C;
}

.contact-info-grid {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 2rem;
	flex-wrap: wrap;
	font-size: 16px;
}

.contact-info-grid > .wp-block-column.contact-columns {
	flex: 1 1 100%;
	max-width: 100%;
}

.contact-info-grid h3 {
	color: #fff;
	font-family: 'Inter', sans-serif;
	font-size: 1.125em;
	font-weight: 700;
	line-height: 1.25em;
	text-transform: uppercase;
	margin-bottom: 0.25rem;
}

.contact-info-grid p {
	color: #fff;
	font-family: 'Inter', sans-serif;
	font-size: 0.875em;
	font-weight: 400;
	line-height: 1.25em;
	margin: 0;
}

.contact-fullwidth-wrapper {
	width: 100vw;
	margin-left: calc(-1 * ((100vw - 100%) / 2));
	margin-right: calc(-1 * ((100vw - 100%) / 2));
	overflow: hidden;
}

.contact-fullwidth-wrapper figure {
	width: 100%;
	margin: 0;
}

.contact-fullwidth-wrapper img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}

.contact-cta-section {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 3rem 1rem;
	text-align: center;
}

.contact-cta-title {
	font-family: 'Inter', sans-serif;
	font-size: 1.25em;
	font-weight: 700;
	color: #fff;
	line-height: 1.2;
	margin-bottom: 24px;
}

.contact-cta-subtext {
	font-family: 'Inter', sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #fff;
	opacity: 0.8;
	text-transform: uppercase;
	font-size: 14px;
	line-height: 1.4;
	text-align: center;
	margin: 0;
}

.contact-button,
.contact-button-wrapper {
	display: flex;
	justify-content: center;
	margin-bottom: 1.5rem;
	width: 100%;
	margin: 5% 20% !important;
}

.contact-button .wp-block-button__link,
.contact-button-wrapper .wp-block-button__link {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: auto;
	padding: 14px;
	gap: 4px;
	border-radius: 16px;
	background-color: #151515 !important;
	color: #606BDC !important;
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	font-weight: 500;
	text-transform: uppercase;
	text-decoration: none;
	box-shadow: none;
	transition: all 0.3s ease;
	border: 1px solid !important;
}

.contact-button .wp-block-button__link:hover,
.contact-button-wrapper .wp-block-button__link:hover {
	background-color: #606BDC !important;
	color: black !important;
}

.work-column {
	margin-top: 64px;
}

.contact-work {
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: Helvetica, sans-serif;
	font-size: 48px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -1px;
	color: #1B2A72;
	text-align: center;
	margin-top: 48px;
	margin-bottom: 32px !important;
	padding: 0 1rem;
	flex-shrink: 0;
}

@media (min-width: 769px) {
	.title-page {
		font-size: 60px;
		
	}

	.contact-info-grid {
		flex-direction: row;
		align-items: flex-start;
		justify-content: center;
		gap: 6rem;
		padding: 3rem 14rem;
		font-size: 16px;
	}

	.contact-info-grid > .wp-block-column.contact-columns {
		flex: 0 0 350px;
		max-width: 350px;
	}

	.contact-info-grid h3 {
		text-align: left;
	}

	.contact-info-grid p {
		text-align: left;
	}

	.contact-cta-title {
		font-size: 48px;
		margin-bottom: 32px;
	}

	.contact-cta-subtext {
		font-size: 16px;
		line-height: 1.5;
	}
	body .is-layout-flex {
		justify-content: center;
	}
	.contact-button {
		margin: 5% 30% !important;
		max-width: 250px !important;
	}

	.contact-button .wp-block-button__link,
	.contact-button-wrapper .wp-block-button__link {
		width: auto;
		height: 48px;
		padding: 16px;
		font-size: 16px;
	}

	.contact-work {
		font-size: 86px;
		letter-spacing: -1.794px;
		margin-bottom: 59px !important;
		padding: 0;
	}
}
@media (min-width: 1000px) {
	.title-page {
		font-size: 90px;	
	}
	.contact-info-grid {
		font-size: 23px;
	}
	
}/* =============================
   FOOTER (Mobile First)
   ============================= */

.u-footer {
	background-color: #0B0D17;
	color: white;
	padding: 1.5rem 1.5rem 0 1.5rem;
	position: relative;
	overflow: hidden;

}
.u-footer-line {
    height: 1px;
    background-color: #fff;
	margin-bottom: 32px;
}


.u-footer--white {
	background-color: white;
	color: #1B2A72;
}

.u-footer-grid {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	margin-left: 0;
}

.u-footer-left,
.u-footer-right {
	width: 100%;
}

.u-footer-right {
	display: flex;
	justify-content: center;
	height: auto;
	position: relative;
	z-index: 1;
}

.u-footer-logo-wrapper {
	padding: 1rem;
	display: inline-block;
}

.u-footer-right img {
	width: 400px;
	max-width: none;
	height: auto;
}

.u-time-slogan {
	width: 100%;
	display: flex;
	flex-direction: column;
	padding: 0;
}

.u-footer-slogan {
	font-size: 32px;
	font-family: "Smooch Sans", sans-serif;
	font-weight: 700;
}

.u-footer-links {
	display: flex;
	flex-direction: column-reverse;
	gap: 1rem;
}

.u-social-media {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: 32px;
}

.u-sm-account {
	font-size: 15px;
	color: #fff;
	text-decoration: none;
	padding: 8px 0;
	font-weight: 500;
	margin-left: 0;
	transition: all 0.4s ease;
	display: inline-block;
	transform-origin: left center;
}

.u-sm-account:hover {
	color: #E11827 !important;
	transform: scale(0.95);
}

.u-sm-separator {
	display: none;
	color: #fff;
	font-size: 18px;
	padding: 0 8px;
}

.u-footer-legal {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	flex-wrap: wrap;
}

.legal-links {
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	text-decoration: none;
}
.legal-links:hover {
	color: #606BDC;
}

.u-footer-copy {
	margin-top: 48px;
	margin-bottom: 24px;
	font-size: 14px;
	color: #bbb;
}
@media (min-width: 769px) {
	.u-footer-line {
		margin: 2rem;
		opacity: 0.15;
	}
	.u-footer {
		padding: 3rem 0;
	}

	.u-footer-grid {
		display: grid;
		grid-template-columns: repeat(8, 1fr);
		gap: 2rem;
		align-items: start;
		margin-left: 2rem;
	}

	.u-footer-left {
		grid-column: span 4;
		display: flex;
		flex-direction: column;
		align-self: center;
	}

	.u-footer-right {
		grid-column: span 4;
		justify-content: flex-end;
	}

	.u-footer-right img {
		max-width: 100%;
		margin: 0;
	}

	.u-footer-slogan {
		font-size: 48px;
	}

	.u-footer-links {
		flex-direction: row;
		justify-content: space-between;
		margin-bottom: 50px;
	}

	.u-social-media {
		gap: 12px;
		flex-wrap: nowrap;
		align-items: center;
	}

	.u-sm-account {
		font-size: 16px;
	}

	.u-sm-separator {
		display: inline;
	}

	.u-footer-legal {
		flex-direction: row;
		gap: 2rem;
	}

	.legal-links {
		font-size: 16px;
	}

	.u-footer-copy {
		margin-top: 20px;
	}
}
@media (min-width: 1000px) {
	.u-sm-account {
		font-size: 20px;
	}
	
}








/* =============================
   HOME
   ============================= */
.home-video-wrapper {
	position: relative;
	width: 100%;
	overflow: hidden;
	max-width: 100vw;
	aspect-ratio: 16 / 9;
}

.home-hero-video {
	display: none;
}

.home-hero-video-mobile {
	display: block;
	margin-top: -160px;
	width: 100%;
	object-fit: cover;
}

.u-header-black {
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.38) 134.02%);
}

.home-page {
	background-color: #0B0D17;
	position: relative;
	z-index: 0;
	overflow: hidden;
}

.home-page .home-content {
	padding-top: 0;
	margin-top: 0;
}

/* === MENSAJE === */
.home-message-wrapper {
	position: relative;
	width: 100%;
	padding: 64px 20px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	text-align: left;
	overflow: visible;
}

.home-message {
	color: #fff;
	font-family: Helvetica;
	font-size: clamp(19px, 6vw, 42px);
	font-style: normal;
	font-weight: 300;
	line-height: 1.3;
	letter-spacing: -1.125px;
	position: relative;
	margin: 0 20px !important;
	z-index: 1;
}

.home-blur-bg {
	position: absolute;
	top: 30%;
	right: 0;
	transform: translateY(-50%);
	width: 200px !important;
	height: 200px !important;
	opacity: 0.3;
	background: var(--color-azure-50, #0080FF);
	filter: blur(100px);
	z-index: 0;
	pointer-events: none;
	content: "";
	display: block;
}

/* === PRODUCTIONS GRID MOBILE === */
.home-productions {
	padding: 0;
}

.productions-grid {
	display: flex;
	flex-direction: column;
	margin-top: 3rem;
	gap: 0;
}

.slot-1 { grid-area: slot1; }
.slot-2 { grid-area: slot2; }
.slot-3 { grid-area: slot3; }
.slot-4 { grid-area: slot4; }
.slot-5 { grid-area: slot5; }
.slot-6 { grid-area: slot6; }

.slot-2,
.slot-3,
.slot-4 {
	height: 100%;
}

.production-card {
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	overflow: hidden;
	text-decoration: none;
}

.prod-img {
	width: 100%;
	height: auto;
	object-fit: cover;
	display: block;
}

.production-card .overlay {
	position: absolute;
	inset: 0;
	background-color: rgba(0, 0, 0, 0.6);
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	opacity: 0;
	transition: opacity 0.3s ease-in-out;
	text-align: center;
	padding: 16px;
}

.production-card:hover .overlay {
	opacity: 1;
}

.production-card .overlay h3 {
	color: var(--Grayscale-White, #F4F4F4);
	text-align: center;
	font-feature-settings: 'liga' off, 'clig' off;
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.2;
	text-transform: uppercase;
	margin-bottom: 8px;
}

.production-card .overlay p {
	width: auto;
	color: var(--Grayscale-White, #F4F4F4);
	text-align: center;
	font-feature-settings: 'liga' off, 'clig' off;
	font-family: 'Inter', sans-serif;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: 1.3;
	margin: 0;
}

/* === DESKTOP === */
@media (min-width: 769px) {
	.home-hero-video {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		position: absolute;
		top: 0;
		left: 0;
	}

	.home-hero-video-mobile {
		display: none;
	}

	.home-message-wrapper {
		padding: 127px 0;
		justify-content: flex-start;
		text-align: left;
	}

	.home-message {
		font-size: 70px;
		line-height: 80px;
		margin: 0 120px !important;
	}

	.home-blur-bg {
		width: 480px !important;
		height: 480px !important;
	}

	.productions-grid {
		display: grid;
		grid-template-columns: repeat(6, 1fr);
		grid-template-rows: auto auto auto auto;
		grid-template-areas:
			"slot1 slot1 slot1 slot1 slot1 slot1"
			"slot2 slot2 slot4 slot4 slot4 slot4"
			"slot3 slot3 slot4 slot4 slot4 slot4"
			"slot5 slot5 slot5 slot6 slot6 slot6";
		gap: 0;
	}

	.production-card {
		width: 100%;
		height: 100%;
	}

	.prod-img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	.production-card .overlay {
		padding: 20px;
	}

	.production-card .overlay h3 {
		font-size: 33px;
		line-height: 40px;
		margin-bottom: 12px;
	}

	.production-card .overlay p {
		width: 339.782px;
		height: 36.257px;
		font-size: 24.862px;
		line-height: 40.964px;
	}
}


/* =============================
   MAIN: SINGLE-PRODUCTIONS
   ============================= */

.contenido-underground {
	background-color: #0B0D17;
	color: #fff;
	padding: 0;
	margin: 0;
	position: relative;
	overflow: visible;
}

/* --- Video --- */
.hero-video .video-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	z-index: 1;
}

.hero-video .video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
}

.single-blur-bg-blue {
	position: absolute;
	bottom: 400px;
	right: 0;
	width: 320px;
	height: 320px;
	opacity: 0.3;
	background: var(--color-azure-50, #0080FF);
	filter: blur(80px);
	z-index: 0;
	pointer-events: none;
}

.single-blur-bg-red {
	position: absolute;
	bottom: 200px;
	left: -100px;
	width: 420px;
	height: 420px;
	opacity: 0.1;
	background: var(--Colors-Pink, #FF2D55);
	filter: blur(160px);
	z-index: 1;
	pointer-events: none;
	border-radius: 498px;
}

/* --- SINGLE-PRODUCTIONS --- */
.contenido-info {
	padding: 1.5rem;
	gap: 1.5rem;
}

.contenido-info-header {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	gap: 1.5rem;
	flex-wrap: wrap;
}

.contenido-titulo {
	flex: 1;
	max-width: 100%;
}

.contenido-titulo h1 {
	font-size: 28px;
	font-weight: 400;
	line-height: 1.2;
	text-transform: uppercase;
	color: #fff;
	margin: 0;
	font-family: 'Inter', sans-serif;
	text-align: left;
}

.contenido-tv-meta {
	text-transform: uppercase;
	font-family: 'Inter', sans-serif;
	color: #999999;
}

.contenido-sinopsis {
	flex: 1;
	min-width: 100%;
	font-size: 1rem;
	line-height: 1.6;
	color: #fff;
}

.texto-sinopsis {
	padding-left: 0;
	font-family: 'Inter', sans-serif;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	text-align: left;
}

/* --- Metadata tabla --- */
.contenido-metadata {
	max-width: 850px;
	margin-left: auto;
	margin-right: 0;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	padding-top: 1rem;
	font-size: 18px;
	line-height: 20px;
	font-family: 'Inter', sans-serif;
	font-weight: 400;
}

.metadata-row {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	gap: 0.25rem;
}

.metadata-row strong {
	width: 100%;
	text-align: left;
}

.metadata-view-more {
	display: flex;
	flex-direction: column;
}

.toggle-cast,
.toggle-awards {
	display: inline-block;
	margin-top: 8px;
	font-size: 14px;
	font-weight: 400;
	color: #606BDC;
	background: none;
	border: none;
	cursor: pointer;
	padding: 12px 0;
	text-align: left;
	transition: transform 0.3s ease;
	text-transform: uppercase;
}

.expanded {
	color: #606BDC;
}

/* --- VIDEO player --- */
.video-wrapper {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	background: black;
	overflow: hidden;
}

.video-thumbnail {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	cursor: pointer;
}

.custom-play-button {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	cursor: pointer;
	z-index: 2;
	width: 64px;
	height: 64px;
}

.video-iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* --- Botón volver --- */
.volver-producciones {
	padding: 3rem 1.5rem;
	position: relative;
	overflow: hidden;
}

.btn-volver {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	font-size: clamp(3rem, 8vw, 8rem);
	font-weight: 700;
	text-decoration: none;
	line-height: 1.1;
	text-transform: uppercase;
	font-family: "Smooch Sans", sans-serif;
	color: #fff;
}
.btn-volver:hover {
	color: #fff;
}

.back-arrow {
	position: static; 
	width: 70px;      
	height: auto;
	transition: transform 0.3s ease;
}

/* --- DESKTOP OVERRIDES --- */
@media (min-width: 769px) {
	.contenido-info {
		padding: 2rem;
		gap: 2rem;
	}

	.contenido-info-header {
		flex-direction: row;
		align-items: flex-start;
		gap: 2rem;
	}

	.contenido-titulo {
		max-width: 25%;
	}

	.contenido-titulo h1 {
		font-size: 2rem;
		line-height: 1.1;
		text-align: left;
	}

	.contenido-sinopsis {
		min-width: 300px;
		font-size: 1.1rem;
	}

	.texto-sinopsis {
		padding-left: 150px;
		font-size: 32px;
		text-align: right;
	}

	.contenido-metadata {
		padding-top: 2rem;
		font-size: 24px;
		line-height: 28px;
	}

	.metadata-row {
		flex-direction: row;
		align-items: flex-start;
		gap: 2rem;
	}

	.metadata-row strong {
		width: 180px;
		flex-shrink: 0;
		text-align: left;
	}

	.metadata-row span {
		flex: 1;
		display: block;
		text-align: right;
	}

	.toggle-cast,
	.toggle-awards {
		font-size: 16px;
		padding: 20px 0;
		text-align: right;
	}

	.custom-play-button {
		width: 80px;
		height: 80px;
	}

	.single-blur-bg-blue {
		width: 480px;
		height: 480px;
		bottom: 480px;
		filter: blur(100px);
	}

	.single-blur-bg-red {
		width: 630px;
		height: 622px;
		bottom: 300px;
		left: -150px;
		filter: blur(204.75px);
	}

	.volver-producciones {
		padding: 6rem 2rem;
	}

	.btn-volver {
		font-size: clamp(3rem, 8vw, 100px);
	}

	.back-arrow {
		top: 35%;
		right: -90px;
		width: 120px;
	}
}


/* ==================
PRODUCTIONS
================== */
.productions-archive {
	padding: 5px 23px;
	background-color: #0B0D17;
	color: white;
}

.productions-hero-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
}

.productions-title {
	font-family: "Smooch Sans", sans-serif;
	font-size: 40px;
	font-weight: 700;
	font-style: normal;
	text-transform: uppercase;
	line-height: 1;
	color: #fff;
	margin: 47px 0 16px 0;
}

.productions-page-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin-top: 2rem;
}

.production-item {
	width: 100%;
	background: #0B0D17;
	overflow: hidden;
}

.production-thumb {
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 2px;
	position: relative;
}

.production-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.3s ease;
	transform-origin: center center;
}

.production-title {
	font-size: 14px;
	margin-top: 0.75rem;
	text-transform: uppercase;
	color: white;
	text-align: center;
	transition: transform 0.3s ease, margin 0.3s ease;
	transform-origin: center center;
}

.production-item:hover .production-thumb img {
	transform: scale(0.99);
}

.production-item:hover .production-title {
	transform: scale(0.95);
}

/* View More Button */
.view-more-button {
	background: var(--Grayscale-Black, #151515);
	color: #606BDC;
	padding: 16px;
	border: 1px solid var(--color-azure-50, #606BDC);
	border-radius: 16px;
	cursor: pointer;
	font-family: Inter;
	font-size: 18px;
	width: 100%;
	margin-top: 2rem;
	transition: all 0.3s ease;
}

.view-more-button:hover {
	background: #606BDC;
	color: var(--Grayscale-Black, #151515);
}

/* --- DESKTOP OVERRIDES --- */
@media (min-width: 769px) {
	.productions-archive {
		padding: 2rem 4rem;
	}

	.productions-hero-inner {
		flex-direction: row;
		align-items: center;
	}

	.productions-title {
		font-size: 90px;
		line-height: 163px;
		margin-bottom: 0;
	}

	.productions-page-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 2rem;
		margin-top: 3rem;
	}

	.production-thumb {
		aspect-ratio: 16 / 9;
		border-radius: 4px;
	}

	.production-title {
		font-size: 16px;
		margin-top: 0.5rem;
		text-align: left;
	}

	.productions-page-grid .production-item:nth-child(odd) .production-thumb img,
	.productions-page-grid .production-item:nth-child(odd) .production-title {
		transform-origin: left center;
	}

	.productions-page-grid .production-item:nth-child(even) .production-thumb img,
	.productions-page-grid .production-item:nth-child(even) .production-title {
		transform-origin: left center;
	}

	.view-more-button {
		font-size: 16px;
		padding: 14px;
		width: auto;
		margin-top: 2rem;
		border-radius: 12px;
	}
}
.language-switcher {
	display: flex;
	gap: 1rem;
	align-items: center;
}

.lang-btn {
	color: #fff;
	font-weight: 600;
	text-decoration: none;
	opacity: 0.6;
	transition: opacity 0.3s ease;
	font-size: 14px;
}

.lang-btn.active {
	opacity: 1;
	text-decoration: underline;
}
.lang-btn:hover {
	color: #606BDC;
	
}

.desktop-lang {
	display: none;
}

.mobile-lang {
	margin-top: 64px;
	justify-content: center;
}

/* Mostrar en desktop */
@media (min-width: 768px) {
	.desktop-lang {
		display: flex;
		position: absolute;
		top: 2rem;
		right: 2rem;
	}
	.mobile-lang {
		display: none;
	}
}
/* =========================
   
PAGE (mobile-first)
   ========================= */

.awards-page {
  --brand: #606BDC;
  --text: #fff;
}

.awards-page .awards-hero {
  padding: 5px 24px;
}
.awards-page .awards-title {
  font-family: "Smooch Sans", sans-serif;
  color: var(--text);
  font-size: 38px;
  margin-top: 40px;
}

/* =========================
   CARRUSEL (últimos 4)
   ========================= */

.awards-page .awards-carousel {
  display: flex;
  gap: 32px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  cursor: grab;
}
.awards-page .awards-carousel::-webkit-scrollbar { display: none; }

.awards-page .awards-carousel.is-dragging {
  cursor: grabbing;
  user-select: none;
  -webkit-user-select: none;
}
.awards-page .awards-carousel.is-dragging .award-card a {
  pointer-events: none;
}

.awards-page .award-card {
  scroll-snap-align: start;
  flex: 0 0 82%;
  min-width: 268px;
/*   padding: 0 24px; */
  margin: 32px 0;
  position: relative;
  transition: transform .18s ease-out;
}

.awards-page .award-card .award-year {
  font-family: 'Inter', sans-serif;
  color: var(--text);
  display: block;
  font-size: 16px;
  margin-bottom: 6px;
}

.awards-page .award-card .award-title {
  font-family: 'Inter', sans-serif;
  color: var(--text);
  font-size: 32px;
  line-height: 1.1;
  margin: 0 0 16px;
  font-weight: 600;
}

.awards-page .award-card .award-subtitle {
	font-family: 'Inter', sans-serif;
	color: var(--text);
	font-size: 24px;
	font-weight: 400;
	margin: 0;
	line-height: 26px;
	
}

/* Estado Article en el carrusel */
.awards-page .award-card.is-article a {
  color: inherit;
  text-decoration: none;
  display: block;
}
.awards-page .award-card.is-article::after {
  content: "";
  position: absolute;
  right: 12px;
  bottom: 12px;
  width: 8px;
  height: 8px;
  border-right: 2px solid var(--brand);
  border-bottom: 2px solid var(--brand);
  transform: rotate(-45deg);
  opacity: .9;
}

/* Hover solo desktop (no molestar en mobile) */
@media (hover:hover) and (pointer:fine) {
  .awards-page .award-card.is-article:hover {
    transform: translateY(-5px);
    color: var(--brand);
  }
}

/* =========================
   LISTA (desde el 5º)
   ========================= */

.awards-page .awards-list-section {
  padding: 8px 24px 48px;
  margin-top: 32px;
}

.awards-page .awards-list {
  max-width: 1200px;
  margin: 0 auto;
}

.awards-page .award-list-item {
  display: grid;
  align-items: baseline;
  column-gap: 10px;
  row-gap: 6px;
  padding: 8px 0;
  border-bottom: 1px solid var(--text);
}

.awards-page .award-list-item .award-year {
  font-size: 16px;
  color: var(--text);
  white-space: nowrap;
}

.awards-page .award-list-item .award-text {
  color: var(--text);
  font-size: 16px;
}

/* Article en lista: el área completa es clickeable */
.awards-page .award-list-item.is-article a {
  color: inherit;
  text-decoration: none;
  display: contents; 
}
.awards-page .award-list-item.is-article .award-text {
  position: relative;
  padding-right: 16px;
}
.awards-page .award-list-item.is-article .award-text::after {
  content: "↗";
  font-size: 12px;
  position: absolute;
  right: 0;
  top: 0;
  opacity: .8;
}

/* =========================
   Accesibilidad / focus
   ========================= */
.awards-page a:focus-visible,
.awards-page .award-card.is-article a:focus-visible {
  outline: 2px solid var(--brand);
  outline-offset: 2px;
  border-radius: 10px;
}

/* =========================
   Desktop / layouts amplios
   ========================= */
@media (min-width: 768px) {
  .awards-page .awards-hero { padding: 40px 32px 12px; }
  .awards-page .awards-title { font-size: 90px; }

  .awards-page .awards-carousel {
    gap: 24px;
    padding: 0 24px 18px;
  }
  .awards-page .award-card {
    flex-basis: 45%;
    min-width: 480px;
/*     padding: 20px; */
  }
  .awards-page .award-card .award-year { font-size: 24px; }
  .awards-page .award-card .award-title { font-size: clamp(32px, 6vw, 40px); }
  .awards-page .award-card .award-subtitle { font-size: 30px; }

  .awards-page .awards-list-section { padding: 8px 24px 72px; }
  .awards-page .award-list-item {
    display: flex;
    justify-content: space-between;
    padding: 8px 32px;
  }
  .awards-page .award-list-item .award-year { font-size: 24px; }
  .awards-page .award-list-item .award-text { font-size: 24px; }


  .awards-page .award-list-item.is-article a:hover .award-year,
  .awards-page .award-list-item.is-article a:hover .award-text,
  .awards-page .award-list-item.is-article a:focus .award-year,
  .awards-page .award-list-item.is-article a:focus .award-text {
    color: var(--brand);
  }
}

/* =========================
   Muy ancho
   ========================= */
@media (min-width: 1200px) {
  .awards-page .awards-hero,
  .awards-page .awards-carousel-section,
  .awards-page .awards-list-section {
  }
}

/* =========================
   Reduced motion
   ========================= */
@media (prefers-reduced-motion: reduce) {
  .awards-page .award-card { transition: none; }
}

/* =========================
   Flecha nudge entre carrusel y lista
   ========================= */
.awards-page .awards-carousel-cta { display: none; }

@media (min-width: 1024px) {
  .awards-page .awards-carousel-cta {
    display: flex;
    justify-content: flex-end;
    padding: 8px 24px 16px;
  }

  .awards-page .awards-carousel-next {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 131px;
    background: #0B0D17;
    cursor: pointer;
    transition: transform .18s ease-out, background .18s ease-out;
  }
  .awards-page .awards-carousel-next:hover {
    transform: translateX(2px);
  }
  .awards-page .awards-carousel-next:disabled {
    opacity: .35;
    cursor: default;
    transform: none;
  }

  .awards-page .awards-carousel-next img {
    display: block;
    width: 100%;
  }
}
