.ml-portada-ancho {
	width: min(1410px, calc(100% - 30px));
	margin-inline: auto;
}

.ml-portada-sala p {
	margin: 0 0 16px;
	color: #f1ebe2;
	font: 500 clamp(16px, 1.3vw, 18px)/1.45 "DM Sans", Arial, sans-serif;
}

.ml-portada-boton {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 8px 15px;
	border: 1px solid #efb84f;
	border-radius: 6px;
	background: #efb84f;
	color: #151009;
	font: 750 15px/1.25 "DM Sans", Arial, sans-serif;
}

.ml-portada-sala a.ml-portada-boton:is(:hover, :focus, :active) {
	background: #ffcf78;
	color: #151009;
}

.ml-portada-boton-secundario {
	background: transparent;
	color: #f8d991;
}

.ml-portada-sala h2 {
	margin: 0;
	color: #fff5df;
	font: 600 clamp(26px, 3vw, 42px)/1.12 "Playfair Display", Georgia, serif;
}

.ml-portada-enlace,
.ml-portada-visita a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: #f7ce77;
	text-decoration: underline;
	text-underline-offset: .25em;
	font: 700 14px/1.3 "DM Sans", Arial, sans-serif;
}

.ml-portada-sala {
	padding-block: clamp(32px, 5vw, 65px) clamp(30px, 4vw, 54px);
}

.ml-portada-sala-intro {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 8px 24px;
	padding-bottom: clamp(20px, 2.4vw, 34px);
}

.ml-portada-sala-intro p {
	max-width: 48ch;
	margin: 0;
}

.ml-portada-sala-media {
	display: grid;
	gap: 16px;
}

.ml-portada-fotos {
	display: grid;
	grid-template-columns: minmax(0, 16fr) repeat(2, minmax(0, 6.75fr));
	gap: clamp(10px, 1.4vw, 20px);
}

.ml-portada-foto,
.ml-portada-reproducir {
	display: block;
	overflow: hidden;
	border: 0;
	border-radius: 4px;
	background: #0b0b0b;
	color: #fff4df;
	font: 650 14px/1.25 "DM Sans", Arial, sans-serif;
}

.ml-portada-foto img,
.ml-portada-reproducir img {
	display: block;
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: contain;
	background: #080808;
}

.ml-portada-foto-principal img {
	aspect-ratio: 16 / 9;
}

.ml-portada-foto span,
.ml-portada-reproducir > span {
	display: flex;
	align-items: center;
	min-height: 48px;
	padding: 8px clamp(9px, 1vw, 15px);
}

.ml-portada-foto span {
	color: #eadbbf;
	font-size: 15px;
	padding-inline: 2px;
}

.ml-portada-reproducir {
	display: grid;
	grid-template-columns: minmax(120px, 235px) minmax(0, 1fr);
	align-items: stretch;
	border: 1px solid #5c4b2c;
	background: #161410;
}

.ml-portada-reproducir > span {
	gap: 8px;
	color: #f6d18b;
}

.ml-portada-reproducir img {
	aspect-ratio: 16 / 9;
	align-self: center;
}

.ml-portada-video video {
	display: block;
	width: 100%;
	height: clamp(250px, 52svh, 490px);
	background: #080808;
}

.ml-portada-sala-enlaces {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	margin-top: 24px;
}

.ml-portada-visita {
	border-block: 1px solid #433824;
	background: #131211;
}

.ml-portada-visita > div {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 16px;
	padding-block: 10px;
}

.ml-portada-visita h2 {
	flex: 1 0 min(100%, 235px);
	margin: 0;
	color: #fff5df;
	font: 600 clamp(19px, 2vw, 25px)/1.16 "Playfair Display", Georgia, serif;
}

.ml-portada-visor {
	position: fixed;
	max-width: min(96vw, 1350px);
	max-height: 94vh;
	margin: auto;
	padding: 44px 10px 10px;
	border: 1px solid #775d32;
	border-radius: 8px;
	background: #101010;
}

.ml-portada-visor::backdrop {
	background: #000d;
}

.ml-portada-visor img {
	display: block;
	max-width: 100%;
	max-height: calc(94vh - 56px);
	object-fit: contain;
}

.ml-portada-visor button {
	position: absolute;
	top: 0;
	right: 5px;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #fff5df;
	font-size: 30px;
}

.home :is(.ml-portada-sala, .ml-portada-visita) :focus-visible {
	outline: 2px solid #ffda8e;
	outline-offset: 2px;
}

@media (min-width: 1025px) {
	.home .carousel-wrapper-e687922 {
		width: calc(100% - 104px);
		max-width: 1410px;
	}
}

.home .ml-agenda-promotora {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 7px 18px;
	margin-top: 16px;
	padding: 12px 16px;
	border: 1px solid #58482a;
	border-radius: 8px;
	background: #171411;
}

.home .ml-agenda-promotora h2 {
	margin: 0;
	font-size: clamp(20px, 2.1vw, 28px);
}

.home .ml-agenda-promotora .ml-agenda-archivo {
	margin: 0;
}

/* Presentación y servicios originales de Elementor. */
.home .elementor-15 > .elementor-element-25a10124 {
	background: radial-gradient(ellipse 46% 48% at 8% 4%, rgba(181, 120, 41, .23), transparent 75%), #050505;
}

.home .elementor-15 .elementor-element-2270961b > .elementor-widget-wrap {
	background-image: none !important;
}

.home .elementor-15 .elementor-element-25a10124 > .elementor-container {
	align-items: center;
	max-width: 1410px;
	margin-inline: auto;
}

.home .elementor-15 .elementor-element-84f140b {
	color: #fff5e5;
	font-family: "Playfair Display", Georgia, serif !important;
	font-size: clamp(25px, 2.4vw, 38px) !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
}

.home .elementor-15 .elementor-element-25a10124 > .elementor-container > .elementor-element-7b4e2a94 {
	order: -1;
}

.home .elementor-15 .elementor-element-84f140b b:last-child {
	display: block;
	color: #efb84f !important;
	font-size: 1.23em;
	line-height: 1.1;
}

.home .elementor-15 .elementor-element-2ab1080 p {
	max-width: 37em;
	margin: 18px 0 0;
	color: #f1ebe2;
	font: 400 clamp(16px, 1.2vw, 19px)/1.55 "DM Sans", Arial, sans-serif;
}

.home .elementor-15 :is(.elementor-element-ee4f411, .elementor-element-1dff8c0) .etheme-headline {
	color: #efb84f;
	font: 600 clamp(27px, 3.2vw, 46px)/1.15 "Playfair Display", Georgia, serif;
}

.home .elementor-15 :is(.elementor-element-d0351a0, .elementor-element-09d0f1c) .etheme-marquee-wrapper {
	padding-block: 10px;
	border-block: 1px solid #bb8d3f;
	background: linear-gradient(90deg, #171008, #080706 22%, #080706 78%, #171008);
	box-shadow: inset 0 1px 8px #d6973828, inset 0 -1px 8px #d6973828;
}

.home .elementor-15 .elementor-element-2a5eec7 > .elementor-container {
	max-width: 1200px !important;
	margin-inline: auto;
}

.home .elementor-15 > .elementor-element-34bb663 {
	background: repeating-radial-gradient(ellipse 120% 95% at 100% 135%,
		transparent 0 11px, rgba(221, 167, 73, .26) 12px 13px, transparent 14px 21px),
		radial-gradient(ellipse 70% 80% at 75% 100%, rgba(179, 116, 32, .18), transparent 70%);
}

.home .elementor-15 :is(.elementor-element-56b0327, .elementor-element-59b65ea) .elementor-widget-container {
	height: 100%;
	padding: clamp(22px, 3vw, 40px) !important;
	border: 1px solid #b58a41;
	border-radius: 3px;
}

.home .elementor-15 :is(.elementor-element-56b0327, .elementor-element-59b65ea) .etheme-icon-box-description {
	max-width: 32em;
	margin-inline: auto;
	color: #fff5e5;
	font: 400 clamp(16px, 1.2vw, 19px)/1.5 "DM Sans", Arial, sans-serif;
}

.home .elementor-15 :is(.elementor-element-56b0327, .elementor-element-59b65ea) .etheme-icon-box {
	padding-block: 8px !important;
}

@media (max-width: 767px) {
	.home .elementor-15 > .elementor-element-34bb663 {
		min-height: 65px;
	}

	.home .elementor-15 :is(.elementor-element-84f140b, .elementor-element-2ab1080) {
		text-align: center;
	}

	.home .elementor-15 .elementor-element-2ab1080 p {
		margin-inline: auto;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.home:has(.ml-portada-sala) .ml-agenda-ficha {
		display: grid;
		grid-template-columns: clamp(86px, 12vw, 116px) minmax(0, 1fr);
	}

	.home:has(.ml-portada-sala) .ml-agenda-cartel {
		position: relative;
		min-height: 146px;
	}

	.home:has(.ml-portada-sala) .ml-agenda-cartel img {
		position: absolute;
		inset: 0;
		height: 100%;
		aspect-ratio: auto;
	}

	.home:has(.ml-portada-sala) .ml-agenda-info {
		padding: 9px 11px;
	}

	.home:has(.ml-portada-sala) .ml-agenda-ficha:not(:has(.ml-agenda-cartel)) .ml-agenda-info {
		grid-column: 1 / -1;
	}
}

@media (max-width: 767px) {
	.ml-portada-fotos {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ml-portada-foto-principal {
		grid-column: 1 / -1;
	}

	.ml-portada-reproducir {
		grid-template-columns: 38% minmax(0, 1fr);
	}

	body.home .elementor-15 > .elementor-element-2bed393 {
		padding-block: 14px 8px !important;
	}

	body.home .elementor-15 > .elementor-element-b6f7368 {
		padding-block: 5px !important;
	}

	body.home .elementor-15 > .elementor-element-4b81122 {
		padding-block: 12px 4px !important;
	}

	body.home .elementor-15 > .elementor-element-ae31b0e {
		padding-block: 12px !important;
	}

	body.home .elementor-15 > .elementor-element-5411d11 {
		padding-block: 8px 10px !important;
	}

	body.home .elementor-15 > :is(.elementor-element-2fdf0e7, .elementor-element-34bb663) {
		padding-block: 10px !important;
	}

	body.home .elementor-15 :is(.elementor-element-4093dff, .elementor-element-73f5d96) {
		margin-block: 7px !important;
	}

	body.home .elementor-15 > :is(
		.elementor-element-25a10124, .elementor-element-c73517b,
		.elementor-element-2a5eec7, .elementor-element-aae8564
	) {
		padding-block: 12px !important;
	}

	body.home .elementor-15 > .elementor-element-8fb6c15 {
		padding-block: 0 !important;
	}

	body.home .elementor-15 > :is(
		.elementor-element-4b81122, .elementor-element-5411d11, .elementor-element-2a5eec7
	) > .elementor-container > .elementor-column > .elementor-widget-wrap {
		padding-block: 7px !important;
	}

	body.home .elementor-15 > :is(.elementor-element-2fdf0e7, .elementor-element-34bb663)
	> .elementor-container > .elementor-column > .elementor-widget-wrap {
		padding-block: 0 !important;
	}
}
