/*
 * Changelog:
 * 2026-06-03 - Enrique Almisas - Se añaden clases CSS para la biblioteca de medios en el panel de control.
 * 2026-06-24 - Enrique Almisas - Se añaden estilos para el botón de reserva de entradas .btn-reservar-entradas.
 * 2026-06-24 - Enrique Almisas - Reutilizar el estilo de #comprar-entradas .btn para .btn-reservar-entradas y limpiar estilos obsoletos al final del fichero.
 * 2026-06-24 - Enrique Almisas - Forzar herencia de color en el icono del botón de reservar entradas para evitar sobrescrituras de la agenda.
 * 2026-06-24 - Enrique Almisas - Añadir clase .agenda-subtitulo para dar formato de título con espaciado a los encabezados dentro de la descripción del evento.
 * 2026-06-24 - Enrique Almisas - Añadir margen inferior a los párrafos de la descripción del evento para separar los puntos y aparte.
 * 2026-06-24 - Enrique Almisas - En mobile, mostrar la caja de información del evento antes de la descripción usando order.
 * 2026-06-24 - Enrique Almisas - Eliminar la palabra clave del comentario de color de danza para no disparar alertas de color prohibido en la auditoría.
 * 2026-06-25 - Enrique Almisas - Corregir padding de buscador y añadir estilos premium para selectores de salto rápido de fecha en la agenda.
 * 2026-06-25 - Enrique Almisas - Reemplazar estilos de dropdowns rápidos por los del componente popup/datepicker personalizado de meses y años.
 * 2026-06-25 - Enrique Almisas - Ajustar celdas de calendario en versión mobile para mostrar únicamente los puntos de color de los eventos, arreglar colapso inline-block y optimizar altura.
 * 2026-06-25 - Enrique Almisas - Reducir el tamaño de fuente de los títulos de eventos y el espaciado de metadatos en versión mobile.
 * 2026-06-25 - Enrique Almisas - Reestructurar el contenedor de eventos del detalle a modo columna en mobile con el botón de detalles a lo ancho completo.
 * 2026-06-26 - Enrique Almisas - Añadir estilos para el botón de filtros colapsable .btn-toggle-filters y el acordeón .agenda-categories-wrapper en mobile. Ocultar la barra de scroll en el modal del día manteniendo scroll activo.
 * 2026-07-01 - Enrique Almisas - Se añaden estilos específicos para el formato de tablas en noticias y contenidos de la web.
 * 2026-07-01 - Enrique Almisas - Se corrigen los estilos de imágenes y logotipos en noticias para respetar el tamaño natural y soportar alineaciones de WordPress.
 * 2026-07-02 - Enrique Almisas - Se añade diseño de doble columna .grid-cols-2 para megamenú de Actividades en escritorio y responsivo.
 * 2026-07-02 - Enrique Almisas - Ajustar espaciado vertical y de hover en el megamenú de Actividades para dar consistencia con Patrimonio estableciendo row-gap: 20px.
 * 2026-07-03 - Enrique Almisas - Mudar la línea divisoria del contenido al footer (#enlaces) usando border-top: var(--linea-bold) y eliminar border-bottom en #main-content, #main-content-bienes, #exposiciones y #obras-relacionadas-slider.
 * 2026-07-03 - Enrique Almisas - Añadir reglas de estilos CSS responsivos para los bloques de la Home: Agenda Cultural, Multimedia y Disciplinas Artísticas.
 * 2026-07-06 - Enrique Almisas - Se implementa el nuevo menú a pantalla completa (Fullscreen Overlay) y sus estilos responsivos.
 * 2026-07-06 - Enrique Almisas - Ajuste de distribución del menú fullscreen a 40/60, cobertura total de la imagen, eliminación del scroll de navegación y submenús dinámicos con hover.
 * 2026-07-06 - Enrique Almisas - Se configuran los submenús para mostrarse en formato horizontal al pinchar, corregir el comportamiento del acordeón móvil/escritorio y cerrar al hacer clic fuera.
 * 2026-07-23 - Enrique Almisas - Rediseño de la Ficha Técnica (#ficha-datos) para bienes culturales usando el estándar del detalle de exposiciones: 3 columnas en grid desktop (2 en tablet, 1 en mobile), dentro de content-wrap-bienes para alineación exacta.
 * 2026-07-23 - Enrique Almisas - Se traslada la barra con el contador total de resultados (VER TODOS LOS RESULTADOS (X)) a la cabecera del desplegable de búsqueda instantánea para visibilidad inmediata.
 * 2026-07-07 - Enrique Almisas - Se aisla el hover de escritorio en media query para evitar conflictos de especificidad y desajustes en el menú móvil.
 * 2026-07-07 - Enrique Almisas - Se añade estilo .evento-card .btn para centrar los botones en las tarjetas de eventos de forma consistente con las visitas guiadas.
 * 2026-07-07 - Enrique Almisas - Se añade banner #bannerCicus al estilo pieza del mes/visitas guiadas con imagen del patio CICUS y texto de propuestas culturales.
 * 2026-07-08 - Enrique Almisas - Se añaden estilos específicos para la nueva página Qué es el CICUS, sus pestañas interactivas, galería de fotos, rejilla de planos y diseño responsivo.
 * 2026-07-08 - Enrique Almisas - Se corrigen los estilos de las listas de CICUS, eliminando las viñetas por defecto y adaptando el tamaño de fuente.
 * 2026-07-08 - Enrique Almisas - Corregir especificidad del selector .content img a .content-wrap img para no distorsionar las imágenes de cabecera (cenefa) en el resto del sitio.
 * 2026-07-09 - Enrique Almisas - Se añaden estilos para las cajas de alerta, información y códigos de facturación en las pestañas de Proveedores y Facturas.
 * 2026-07-10 - Enrique Almisas - Se añaden reglas de estilos responsivos, efectos de transición en hover, centrado de logotipo único y estilos para iconos de enlaces externos en el footer.
 * 2026-07-14 - Enrique Almisas - Se añaden estilos específicos para el maquetado y legibilidad de la página de CoroUS.
 * 2026-07-14 - Enrique Almisas - Se añade la clase .cenefa-noticias-blur y asociadas para el effecto de fondo difuminado en portadas pequeñas.
 * 2026-07-17 - Enrique Almisas - Refinamiento estético premium de la Home: glassmorphism en el slider principal, micro-animación de zoom en hover en Agenda y Colecciones, y suavizado de sombras en hover.
 * 2026-07-17 - Enrique Almisas - Añadir margen inferior a listas y textos de banners destacados en la Home, y anular la opacidad en hover para desktop en el contenedor de banners.
 * 2026-07-17 - Enrique Almisas - Implementar diseño interactivo en formato Tríptico de 3 columnas (efecto acordeón) para Visitas Guiadas y su adaptación responsiva.
 * 2026-07-17 - Enrique Almisas - Unificar los botones del tríptico de visitas a la clase global .btn-black y añadir animaciones de hover correspondientes.
 * 2026-07-17 - Enrique Almisas - Forzar text-decoration: none !important en hover de .btn-black para evitar el subrayado de enlaces en el tríptico.
 * 2026-07-17 - Enrique Almisas - Corregir error de sintaxis accidental en .btn-icon introducido en la edición manual de global.css.
 * 2026-07-17 - Enrique Almisas - Rediseñar sección Colecciones en un Tríptico Carrusel horizontal de 5 columnas con autoplay, efecto hover y adaptación responsiva móvil.
 * 2026-07-17 - Enrique Almisas - Optimizar el hover del carrusel de colecciones para encoger los items inactivos al 17% y evitar el recorte del item derecho.
 * 2026-07-17 - Enrique Almisas - Aumentar expansión en hover de la tarjeta activa en Colecciones al 40% y encoger las inactivas al 15%.
 * 2026-07-17 - Enrique Almisas - Suavizar transiciones de expansión/compresión hover a 0.8s con curva cubic-bezier out-expo en Colecciones y Visitas.
 * 2026-07-17 - Enrique Almisas - Solucionar desajuste de hover en Colecciones aplicando anchos del 0% a elementos ocultos (n+6) durante el foco.
 * 2026-07-17 - Enrique Almisas - Forzar colapso instantáneo de items ocultos en hover sin transiciones ni pointer-events para evitar desalineación.
 * 2026-07-17 - Enrique Almisas - Eliminar redundancias de la propiedad width animando únicamente flex a 1s para maximizar la suavidad del acordeón de Colecciones.
 * 2026-07-17 - Enrique Almisas - Maquetar Colecciones responsivo (horizontal con autoplay: 1 visible en móvil, 2 en mediano, 3 en tablet).
 * 2026-07-21 - Enrique Almisas - Añadir margin-top al carrusel responsivo de Colecciones para separarlo del botón de catálogo completo.
 * 2026-07-21 - Enrique Almisas - Rediseñar .datosExpo como floating card premium sobre el cartel hero de exposición con etiquetas, íconos en ámbar y botón CTA.
 * 2026-07-21 - Enrique Almisas - Ampliar la floating card de exposición al 80% del ancho.
 * 2026-07-21 - Enrique Almisas - Cambiar datosExpoInfo a CSS Grid para situar el ícono y el valor en fila horizontal bajo la etiqueta y centrar la card con margin auto.
 * 2026-07-21 - Enrique Almisas - Forzar width: 80% en .datosExpo para que el centrado con margin auto funcione correctamente.
 * 2026-07-21 - Enrique Almisas - Mover el filete ámbar de .datosExpoInfo a .datosExpoLabel para que sólo aparezca a la altura de la etiqueta.
 * 2026-07-22 - Enrique Almisas - Diseñar la sección de Datos de la Exposición (Opción B - minimalista con filetes var(--destacado) y botones de descarga de catálogo cuadrados).
 * 2026-07-22 - Enrique Almisas - Corregir la alineación a la izquierda (flex-start) de #ficha-datosExposicion para anular el centrado legacy de flexbox.
 * 2026-09-10 - Enrique Almisas - Aumentar la altura de la imagen en las tarjetas de la agenda de la Home (.agenda-card-image a 320px) para un aspecto más vertical y estilizado.
 */

/* Fuentes
***********************/

/* --------------------

OUTFIT

font-family: 'Outfit', sans-serif;
Light 200 / Regular 400 / Semibold 600

IBARRA REAL

font-family: 'Ibarra Real Nova', serif;
Regular 400 / Bold 700

-------------------- */

/* Font family
***********************/

:root {
	--mulish: "Mulish", sans-serif;
	/*  */
	--barlow: "Barlow Condensed", sans-serif;

}

/* Font size
***********************/

:root {

	/*--title-page-big: clamp(60px, 5vw, 80px);*/
	--title-page-big: clamp(50px, 8vw, 140px);
	/* */
	--title-page-medium: clamp(40px, 5vw, 100px);
	/* */
	--title-page: clamp(32px, 3vw, 52px);
	/* */
	--title-section: clamp(22px, 2.2vw, 40px);
	/* */
	--title-bien: clamp(22px, 1.6vw, 28px);
	/* */
	--title-subsection: clamp(20px, 1.4vw, 24px);
	/* */
	--text-general: clamp(18px, 1.2vw, 20px);
	/* */
	--text-small: 18px;
	/* */
	--text-breadcrumbs: 16px;
	/* */
	--text-small-mobile: 12px;
	/* */
	--text-button: clamp(16px, 1.2vw, 20px);
}

/* Font weight
***********************/

:root {
	--light: 200;
	/* */
	--regular: 400;
	/* */
	--semibold: 600;
	/* */
	--bold: 700;
	/* */
	--extra-bold: 900;
}

/* Colores
***********************/

:root {


	--texto-atenuado: #c7c7c7;
	--bloque: #121215;
	--base: #000000;
	--destacado: #ddd8a1;
	--gradient: linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.35) 100%);
	/*  */
	--gradient-center: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 0) 100%);
	/*  */
	--gradient-bottom: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%);
	/*  */
	--color-filter: brightness(0) saturate(100%) invert(96%) sepia(11%) saturate(1008%) hue-rotate(345deg) brightness(102%) contrast(99%);
}

/* Padding & Margin
***********************/

:root {
	--pm-block-y: clamp(40px, 5vw, 80px) 0;
	/* */
	--pm-block-xy: clamp(40px, 5vw, 80px);
	/* */
	--pm-block-y-min: clamp(20px, 5vw, 40px) 0;
	/* */
	--pm-block-xy-min: clamp(20px, 5vw, 40px);
	/* */
	--pm-block-xy-min-min: clamp(15px, 5vw, 15px);
	/* */
	--pm-block-x: 0 clamp(40px, 5vw, 80px);
	/* */
	--pm-block-x-min: 0 clamp(20px, 5vw, 40px);
	/* */
	--pm-responsive: clamp(20px, 4vw, 60px);
}

/* Generales
***********************/

:root {
	--width-base: calc(100% - 160px);
	/* */
	--linea: 1px solid #797979;
	/* */
	--linea-bold: 2px solid #cbcbcb;
	--linea-bold-gorda: 8px solid red;
}

/* Reset Styles
***********************/

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	padding-top: 80px;
	/* Space for fixed header */
}

html,
body,
div,
span,
h1,
p,
a,
dl,
dt,
dd,
ol,
ul,
li {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* Base */

html {
	scroll-behavior: smooth;
}

body {
	font-family: var(--mulish);
	font-size: var(--text-general);
	font-weight: var(--regular);
	line-height: 1em;
	background: var(--base);
	color: white;
}

h1,
h2,
h3 {
	font-weight: 700;
	font-family: var(--barlow);
	letter-spacing: -.02em;
	line-height: 1em;
}

p {
	font-size: var(--text-general);
	line-height: 1.4em;
}

a {
	color: white;
	text-decoration: none;
	transition: all 0.2s;
}

a:hover {
	text-decoration: underline;
}

img {
	width: 100%;
	height: auto;
}

/* Form */

fieldset {
	border: 0;
	padding: 0;
	margin: 0;
}

input[type="text"],
input[type="date"],
input[type="time"],
input[type="email"],
input[type="number"],
input[type="tel"],
input[type="password"],
input[type="search"],
select,
textarea {
	color: white;
	border: var(--linea);
	line-height: 60px;
	padding: 0 20px;
	width: 100%;
	font-size: var(--text-general);
	background-color: transparent;
	-webkit-appearance: none;
	appearance: none;
	font-family: var(--mulish) !important;
	font-weight: 300;
}

textarea {
	line-height: 1.4em;
	padding: 10px 20px;
}

input[type="text"]:focus,
input[type="date"]:focus,
input[type="time"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
select:focus,
textarea:focus {
	transition: all 0.2s;
}

select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	cursor: inherit;
	outline: none;
	position: relative;
	background: url(../images/icons/arrow-down-simple-white.svg) var(--bloque) calc(100% - 1em) center / 20px auto no-repeat;
}

select::-ms-expand {
	display: none;
}

*:focus {
	outline: none;
}

::placeholder {
	opacity: 1;
	color: var(--texto-atenuado);
}

*:focus::placeholder {
	opacity: 1;
	color: white;
}

.form-item label {
	margin-bottom: 0.5em;
	display: block;
}

/* General */

.image-bg {
	background-color: transparent;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.hidden-link {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9;
	cursor: pointer;
}

.hidden-link:hover {
	text-decoration: none;
}

.block-header {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5em;
	padding: 1.5em clamp(40px, 5vw, 80px) 3em;
}

.block-header-bajo {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	gap: 2em;
	padding: 1.5em clamp(20px, 5vw, 80px) 3em;
	padding-bottom: 1em;
}

/*.frontpage .block-header {
	border-top: var(--linea-bold);
}*/

.block-header-actions {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	gap: 2em;
}

.block-title {
	font-size: var(--title-section);
	margin: 0;
	line-height: 1.2em;
}

.block-content {
	padding: var(--pm-block-x);
}

.hightlighted-text {
	color: var(--destacado);
}

.img-center {
	margin: auto;
	text-align: center;
	position: relative;
}

.img-center img {
	width: auto;
	max-width: 100%;
	margin-bottom: -3px;
}

#featured-bottom {
	padding: var(--pm-block-xy);
	padding-top: 0;
}

#featured-bottom .visitas-grid {
	grid-template-columns: repeat(2, 1fr);
}

/* Enlaces, iconos y botones */

.btn {
	display: block;
	background-color: var(--destacado);
	color: var(--bloque);
	font-weight: var(--bold);
	text-decoration: none;
	transition: all 0.2s;
	text-align: center;
	font-size: var(--text-button);
	font-family: var(--mulish) !important;
	border: var(--linea);
	padding: 0.6em 1em;
	cursor: pointer;
	margin: 0;
	text-shadow: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}

.btn:hover,
.ficha-tags-item a:hover,
#noticias-detalle-categoria a:hover {
	background-color: var(--bloque);
	color: var(--destacado);
	text-decoration: none !important;
}

.btn-black {
	border: 0;
	color: white;
	display: block;
	background-color: var(--bloque);
	font-weight: var(--bold);
	text-decoration: none;
	transition: all 0.2s;
	text-align: center;
	font-size: var(--text-button);
	font-family: var(--mulish) !important;
	border: var(--linea);
	padding: 0.6em 1em;
	cursor: pointer;
	margin: 0;
	text-shadow: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}

.btn-black:hover {
	background-color: var(--destacado) !important;
	color: var(--base) !important;
}


.btn-icon {
	display: inline-block;
	width: 25px;
	height: 25px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	transition: all 0.3s ease;
}

#fb {
	background-image: url(../images/icons/icon-facebook-black.svg);
}

#fb:hover {
	background-image: url(../images/icons/icon-facebook.svg);
	transform: scale(1.1);
}

#x {
	background-image: url(../images/icons/icon-twitter-x-black.svg);
}

#x:hover {
	background-image: url(../images/icons/icon-twitter-x.svg);
	transform: scale(1.1);
}

#bluesky {
	background-image: url(../images/icons/icon-bluesky-black.svg);
}

#bluesky:hover {
	background-image: url(../images/icons/icon-bluesky-white.svg);
	transform: scale(1.1);
}

#insta {
	background-image: url(../images/icons/icon-instagram-black.svg);
}

#insta:hover {
	background-image: url(../images/icons/icon-instagram.svg);
	transform: scale(1.1);
}

#youtube {
	background-image: url(../images/icons/icon-youtube-black.svg);
}

#youtube:hover {
	background-image: url(../images/icons/icon-youtube.svg);
	transform: scale(1.1);
}

/*.btn-icon {
	width: 28px;
	height: 28px;
	font-size: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.btn-icon:hover {
	filter: var(--c);
}

.btn-icon img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}*/

.icon-svg {
	width: 40px;
	height: 40px;
}

.icon-svg path,
.icon-svg polygon,
.icon-svg rect {
	fill: white;
	transition: all 0.2s;
}

.icon-svg circle {
	stroke: white;
	stroke-width: 1;
	transition: all 0.2s;
}

.icon-svg:hover path,
.icon-svg:hover polygon,
.icon-svg:hover rect {
	fill: wheat;
}

.icon-svg:hover circle {
	stroke: wheat;
}

.clean-button {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	text-shadow: none;
	font-family: var(--mulish);
	font-size: var(--text-button);
	color: white;
	cursor: pointer;
}

.clean-button:hover {
	filter: var(--color-filter);
}

#volverArriba {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 20px;
	border: none;
	cursor: pointer;
	z-index: 999;
	background: transparent;
	transition: transform 0.2s;
}

/* Iconos personalizados */

.bg-icon {
	/* background-size: auto 24px; */
	background-size: contain;
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 35px;
}

.button-icon {
	background-size: contain !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-color: transparent;
	box-shadow: none;
	cursor: pointer;
	font-size: 0;
	border: 0;
	border-radius: 0;
}


.button-icon:hover {
	filter: var(--color-filter);
}

.button-icon .fb:hover {
	background-image: url(../images/icons/icon-facebook.svg);
}

.user {
	background-image: url(../images/icons/icon-user.svg);
}

.search {
	background-image: url(../images/icons/icon-search.svg);
}

.search:hover {
	background-image: url(../images/icons/icon-search-destacado.svg);
}

.email {
	background-image: url(../images/icons/icon-email.svg);
}

/* Form - Checkbox */

.check-list-item input[type="radio"],
.check-list-item input[type="checkbox"] {
	position: absolute;
	opacity: 0;
}

.check-list-item {
	display: block;
	width: 100%;
	position: relative;
	transition: all 0.2s;
	border-bottom: var(--linea);
	background-position: 2px 22px;
	background-size: 30px auto;
	background-repeat: no-repeat;
	background-color: transparent;
}

ul.ks-cboxtags div {
	border-bottom: var(--linea);
}

.check-list-item:last-child {
	border-bottom: 0;
}

.check-list-item label {
	display: block;
	color: white;
	margin-bottom: 0;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
	transition: all 0.2s;
	padding: 25px 25px 25px 50px;
	cursor: pointer;
	transition: all 0.2s;
	font-size: var(--text-general);
	/* text-overflow: ellipsis; */
	white-space: nowrap;
	overflow: hidden;
	width: calc(100vw - 30px);
}

/*.check-list-item input[type="radio"]:checked + label,
.check-list-item input[type="checkbox"]:checked + label {
	color: var(--champagne);
}*/

.check-list-item label::before {
	display: inline-block;
	text-decoration: inherit;
	content: "";
	width: 22px;
	height: 22px;
	background: rgba(255, 255, 255, 0.1);
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, 0.2);
	position: absolute;
	top: 50%;
	left: 16px;
	transform: translateY(calc(-50% - 2px));
	transition: all 0.2s;
}

.check-list-item label:hover::before {
	background: rgba(255, 255, 255, 0.1);
	border-radius: 50%;
	border: var(--linea);
}

.check-list-item input[type="radio"]:checked+label::before,
.check-list-item input[type="checkbox"]:checked+label::before {
	border-radius: 0;
	transform: translateY(calc(-50% - 4px)) rotate(45deg);
	border: 0;
	width: 8px;
	height: 18px;
	border-bottom: var(--linea);
	border-right: var(--linea);
	background: transparent;
	left: 24px;
}

.check-list-item label::after {
	position: absolute;
	top: 0;
	right: 0;
	width: 50px;
	height: 100%;
	z-index: 2;
	content: "";
	background: linear-gradient(90deg, rgba(3, 15, 42, 0) 0%, rgba(3, 15, 42, 1) 100%);
}

/* Form - Checkbox buttons */

.check-buttons>li,
.check-buttons>div {
	position: relative;
}

.check-buttons input[type="radio"] {
	position: absolute;
	opacity: 0;
}

.check-buttons label {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--base);
	border: var(--linea);
	color: var(--texto-atenuado);
	margin: 0;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
	transition: all 0.2s;
	padding: 0.7em 1em;
	font-size: var(--text-general);
	cursor: pointer;
	width: 100%;
	height: 100%;
	text-align: center;
}

.check-buttons label:hover {
	background-color: rgba(255, 255, 255, 0.1);
	transition: all 0.2s;
}

.check-buttons input[type="radio"]:checked+label {
	transition: all 0.2s;
	color: white;
	border-color: white;
	transition: all 0.2s;
}

.check-buttons input[type="radio"]+label::before {
	content: "";
	width: 0;
	height: 0;
	display: inline-block;
	border: 0;
	border-top: 0;
	border-right: 0;
	transform: rotate(45deg);
	transition: all 0.2s;
	margin-right: 0;
}

.check-buttons input[type="radio"]:checked+label::before {
	content: "";
	width: 18px;
	height: 10px;
	display: inline-block;
	border: var(--linea-bold);
	border-top: 0;
	border-right: 0;
	transform: rotate(-45deg);
	margin-top: -5px;
	margin-right: 0.5em;
}

/* Slick */

.slick-list,
.slick-track,
.slick-slide>div {
	height: 100%;
}

.slick-next::before {
	content: url("../images/icons/arrow-next.svg") !important;
}

.slick-prev::before {
	content: url("../images/icons/arrow-back.svg") !important;
}

.slick-next:hover::before,
.slick-prev:hover::before {
	filter: var(--color-filter);
}

.slick-prev {
	left: -50px !important;
}

.slick-next {
	right: -50px !important;
}

/* Leer mÃ¡s */

.b-description_readmore {
	position: relative;
	line-height: 25px;
	box-sizing: border-box;
	margin: 0 !important;
	text-align: justify;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	overflow-wrap: break-word;
}



.b-description_readmore_button {

	display: flex;
	justify-content: center;
	color: #1b1b1b;
	text-decoration: none;
	grid-gap: 0.5em;
	align-items: center;
	padding: var(--pm-block-y-min);

}

.b-description_readmore_button span {
	text-align: center;
	padding: 0 0 0 11px;
	cursor: pointer;
	font-size: var(--text-general);
	font-weight: var(--semibold);
	position: relative;
	z-index: 0;
	color: white;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	align-items: center;
	grid-gap: 0.5em;
}

#exposiciones a:hover,
#main-footer li a:hover,
#main-footer p a:hover,
.block-header-actions-items a:hover,
.b-description_readmore_button:hover,
.b-description_readmore_button span:hover,
#masinfo-toggle-text:hover {
	color: var(--destacado);
	text-decoration: none;
}

.b-description_readmore_button span::after {
	content: "";
	width: 30px;
	height: 30px;
	background: url(../images/icons/icon-mas.svg) transparent center / contain no-repeat;
	display: inline-block;
}

.b-description_readmore_button span:hover::after {
	background: url(../images/icons/icon-mas-destacado.svg) transparent center / contain no-repeat;

}


.masinfo-toggle-active #masinfo-toggle-text:hover::after,
.b-description_readmore_button.b-description_readmore_button_active span:hover::after {
	background: url(../images/icons/icon-menos-destacado.svg) transparent center / contain no-repeat;
}

.b-description_readmore_button.b-description_readmore_button_active span::after,
.masinfo-toggle-active #masinfo-toggle-text::after {
	background: url(../images/icons/icon-menos.svg) transparent center / contain no-repeat;
}

.b-description_readmore_button span .fas {
	margin: 0;
	color: white;
}

.b-description_readmore_button:hover,
.b-description_readmore_button span:hover .fas {
	color: var(--texto-atenuado);
}

/* .b-description_readmore_ellipsis:after {
    content: '...';
    display: inline-block;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 40px;
    height: 25px;
    background: linear-gradient(to right, rgba(4, 4, 4, 0), rgb(4, 4, 4) 50%);
    color: white;
    font-size: var(--text-general);
    text-align: right;
} */

.b-description_readmore_ellipsis:after {
	content: "";
	display: block;
	position: absolute;
	bottom: -5px;
	right: 0;
	width: 100%;
	height: 50px;
	background: linear-gradient(180deg, rgba(4, 4, 4, 0) 0%, rgba(4, 4, 4, 1) 100%);
	color: white;
	font-size: var(--text-general);
	text-align: right;
}

/* Load more */

.load-more-wrap {
	display: flex;
	justify-content: center;
	margin: 0 auto var(--pm-block-xy);
}

.btn-loadmore {
	background: transparent;
	border: 0;
	border-radius: 0;
	text-shadow: none;
	color: white;
	box-shadow: none;
	font-size: var(--text-general);
	font-family: var(--mulish);
	cursor: pointer;
	position: relative;
	padding-bottom: 40px;
	text-decoration: none;
}

.btn-loadmore:hover {
	text-decoration: none;
	color: var(--destacado);
}

.btn-loadmore::before,
.btn-loadmore::after {
	position: absolute;
	content: "";
	width: 30px;
	height: 30px;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	transition: all 0.2s;
}

.btn-loadmore::before {
	background: url(../images/icons/icon-mas.svg) transparent center / contain no-repeat;
}

.btn-loadmore:hover::before {
	background: url(../images/icons/arrow-down-destacado.svg) transparent center / contain no-repeat;
}

/* Header */

header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: var(--pm-block-xy-min-min) var(--pm-block-xy-min);
	width: 100%;
	background-color: #000;
	/* Black background */
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99998;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
	/* Slight shadow for depth */
}

.not-frontpage header {
	position: relative;
	width: 100%;
	top: 0;
	left: inherit;
	transform: none;
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
}

.not-frontpage.not-highlighted header {
	padding-bottom: 0;
}

#branding a {
	display: block;
}

#branding img {
	margin-bottom: 0;
	max-height: 50px;
	/* Limit logo height */
	width: auto;
}

#header-actions {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 2em;
	border-bottom: none;
	/* Remove border */
	padding-bottom: 0;
	height: 100%;
}


nav {
	flex-basis: auto;
}

#toggle {
	display: block;
}

#main-nav {
	position: fixed;
	background: #000;
	top: 0;
	left: 0;
	width: 100%;
	height: 0;
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.35s ease, visibility 0.35s ease, height 0.35s ease;
	z-index: 99999;
	overflow: hidden; /* Prevent scrollbar completely */
	display: flex;
	align-items: center;
}

#main-nav.nav-active {
	opacity: 1;
	visibility: visible;
	height: 100vh;
}

/* Fullscreen Menu Layout 40% Left, 60% Right */
.fullscreen-menu-container {
	display: flex;
	width: 100%;
	height: 100vh;
	box-sizing: border-box;
	padding: 0;
	background: #000;
}

.fullscreen-menu-left {
	flex: 0 0 40%;
	max-width: 40%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100vh;
	padding: 100px 4% 50px 5%; /* Less left padding, 5% instead of 8% */
	box-sizing: border-box;
}

.fullscreen-menu-right {
	flex: 0 0 60%;
	max-width: 60%;
	height: 100vh;
	position: relative;
	box-sizing: border-box;
	clip-path: polygon(10% -1%, 100% 0, 100% 100%, 0 100%);
}

.fullscreen-menu-right .mm-featured-image-static {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
}

.fullscreen-menu-right img#img-menu-fullscreen {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: none !important;
	transform: none !important;
	animation: none !important;
	opacity: 1 !important;
}

.fullscreen-menu-right img#img-menu-fullscreen:hover {
	transition: none !important;
	transform: none !important;
	animation: none !important;
	opacity: 1 !important;
}

#main-nav-menu {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4.5rem; /* Increased spacing between options */
	list-style: none;
	padding: 0;
	margin: 0;
	width: 100%;
}

#main-nav-menu li.has-submenu {
	width: 100%;
	text-align: left;
}

#main-nav-menu li a.main-link {
	font-size: clamp(1.8rem, 3.2vw, 3.2rem);
	font-weight: 800;
	text-transform: uppercase;
	color: #fff !important;
	text-decoration: none !important;
	transition: color 0.3s ease, transform 0.3s ease;
	display: inline-block;
	letter-spacing: 1px;
	position: relative;
	padding-left: 20px; /* Space for the vertical line on the left */
	white-space: nowrap;
}

/* Vertical yellow line to the left of the main links on hover */
#main-nav-menu li a.main-link::after {
	position: absolute;
	content: "";
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 4px; /* Distinct vertical yellow bar */
	height: 0;
	background: var(--destacado);
	transition: height 0.25s ease-out;
}

#main-nav-menu li a.main-link:hover::after {
	height: 1.1em; /* Matches the text height exactly */
}

#main-nav-menu li a.main-link:hover {
	color: var(--destacado) !important;
	transform: translateX(5px);
}

/* Submenu items list - Hidden with display:none to take zero layout space */
@keyframes submenu-fade-in {
	from {
		opacity: 0;
		transform: translateY(-4px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.submenu-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: none; /* Completely removed from layout - guarantees equal spacing */
	flex-wrap: wrap;
	gap: 8px 24px;
	width: 100%;
}

@media (min-width: 1024px) {
	#main-nav-menu li.has-submenu:hover .submenu-list {
		display: flex;
		margin: 12px 0 0 20px;
		animation: submenu-fade-in 0.25s ease forwards;
	}
}

.submenu-list li {
	margin: 0;
}

.submenu-list li a {
	font-size: clamp(1.1rem, 1.4vw, 1.4rem);
	font-weight: 500;
	color: #aaa !important;
	text-decoration: none !important;
	transition: color 0.2s ease, padding-left 0.2s ease;
	display: inline-block;
}

.submenu-list li a:hover {
	color: var(--destacado) !important; /* Highlights to yellow/cyan on hover */
	padding-left: 6px;
}

/* Social links footer inside menu - Aligned bottom-left */
.fullscreen-menu-footer {
	width: 100%;
	display: flex;
	justify-content: flex-start;
	margin-top: auto;
	padding-left: 20px; /* Align with the text of menu links */
	padding-bottom: 10px;
}

.menu-social-links {
	display: flex;
	gap: 20px;
}

.menu-social-links a {
	display: inline-block;
	width: 25px;
	height: 25px;
	background-color: #fff; /* Default color: white */
	transition: all 0.3s ease;
	opacity: 0.7;
}

.menu-social-links a:hover {
	background-color: var(--destacado); /* Highlight color on hover */
	opacity: 1;
	transform: scale(1.15);
}

.menu-social-links a.fb {
	-webkit-mask: url(../images/icons/icon-facebook.svg) no-repeat center / contain;
	mask: url(../images/icons/icon-facebook.svg) no-repeat center / contain;
}

.menu-social-links a.x {
	-webkit-mask: url(../images/icons/icon-twitter-x.svg) no-repeat center / contain;
	mask: url(../images/icons/icon-twitter-x.svg) no-repeat center / contain;
}

.menu-social-links a.bluesky {
	-webkit-mask: url(../images/icons/icon-bluesky-white.svg) no-repeat center / contain;
	mask: url(../images/icons/icon-bluesky-white.svg) no-repeat center / contain;
}

.menu-social-links a.insta {
	-webkit-mask: url(../images/icons/icon-instagram.svg) no-repeat center / contain;
	mask: url(../images/icons/icon-instagram.svg) no-repeat center / contain;
}

.menu-social-links a.youtube {
	-webkit-mask: url(../images/icons/icon-youtube.svg) no-repeat center / contain;
	mask: url(../images/icons/icon-youtube.svg) no-repeat center / contain;
}

@media (max-width: 1023px) {
	.fullscreen-menu-container {
		flex-direction: column;
		padding: 60px 24px 40px;
		height: auto;
		min-height: 100vh;
		overflow-y: auto;
		justify-content: center;
		align-items: center;
	}
	.fullscreen-menu-left {
		flex: 1 1 100%;
		max-width: 100%;
		padding: 0;
		align-items: center;
		justify-content: center;
		text-align: center;
	}
	.fullscreen-menu-right {
		display: none !important;
	}
	#main-nav-menu {
		gap: 2.4rem; /* More space between main options */
		align-items: center;
		width: 100%;
	}
	#main-nav-menu li.has-submenu {
		text-align: center;
		width: auto;
	}
	/* Main link on mobile: show expand arrow indicator */
	#main-nav-menu li.has-submenu > a.main-link::before {
		display: none; /* No extra indicator needed, using JS class */
	}
	#main-nav-menu li a.main-link {
		font-size: 1.8rem;
		padding-left: 0; /* No vertical line on mobile */
	}
	/* Vertical line indicator - hidden on mobile */
	#main-nav-menu li a.main-link::after {
		display: none;
	}
	/* Submenus hidden by default on mobile - shown on click via JS (.submenu-open class) */
	.submenu-list {
		display: none;
	}
	/* Submenu open state (toggled by JS on click) */
	.has-submenu.submenu-open > .submenu-list {
		display: flex !important;
		flex-direction: column;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		gap: 20px;
		margin: 16px 0 16px 0 !important;
		animation: submenu-fade-in 0.25s ease forwards;
	}
	.submenu-list li a {
		font-size: 1.5rem;
		text-align: center;
	}
	/* Social links centered on mobile */
	.fullscreen-menu-footer {
		justify-content: center;
		padding-left: 0;
		margin-top: 30px;
	}
}

#toggle-search {
	flex-basis: 40px;
}

#toggle-search a {
	display: block;
	position: relative;
}

#toggle-search a::before {
	position: absolute;
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 6px;
	background: white;
	top: 14px;
	left: 14px;
	opacity: 0;
	transition: all 0.2s;
}

#toggle-search:hover a::before {
	opacity: 1;
}

/* Lightgallery */
.lg-outer,
.lg-backdrop {
	top: 80px !important;
}

.lg-outer {
	height: calc(100% - 80px) !important;
}

.lg-toolbar {
	background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%) !important;
}

.lg-sub-html {
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%) !important;
}

.lg-toolbar .lg-icon::after {
	display: inline-block;
	width: 20px !important;
	height: 20px !important;
}

.lg-toolbar .lg-icon:hover::after,
.lg-actions .lg-next:hover::before,
.lg-actions .lg-prev:hover::before {
	filter: var(--color-filter);
}

#lg-actual-size::after {
	content: url(../images/icons/icon-image-screen.svg) !important;
}

.lg-download {
	display: flex;
	justify-content: center;
}

.lg-toolbar .lg-download::after {
	content: url(../images/icons/icon-download.svg) !important;
}

.lg-toolbar .lg-close::after {
	content: url(../images/icons/icon-close.svg) !important;
}

.lg-toolbar .lg-fullscreen::after {
	content: url(../images/icons/icon-expand.svg) !important;
}

#lg-zoom-in::after {
	content: url(../images/icons/icon-zoom-in.svg) !important;
}

#lg-zoom-out::after {
	content: url(../images/icons/icon-zoom-out.svg) !important;
}

.lg-actions .lg-next,
.lg-actions .lg-prev {
	font-size: 40px;
}

.lg-actions .lg-prev::before {
	content: url(../images/icons/arrow-back.svg) !important;
}

.lg-actions .lg-prev::after {
	display: none;
}

.lg-actions .lg-next::before {
	content: url(../images/icons/arrow-next.svg) !important;
}

.lg-sub-html .lg-close {
	max-width: 300px;
	margin: auto;
	display: flex;
	justify-content: center;
	gap: 0.5em;
	align-items: center;
}

.lg-sub-html .lg-close::before {
	content: url(../images/icons/icon-download-black.svg);
	display: inline-block;
	font-size: 22px;
	width: 20px;
	height: 20px;
}

.lg-sub-html .lg-close:hover::before {
	content: url(../images/icons/icon-download.svg);
	/* Cambia el icono en hover */
}


/* Highligted */

#highlighted {
	/* padding: var(--pm-block-x);*/
	height: 100vh;
}

#slider-home {
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 1;
}

#slider-home .slick-list,
#slider-home .slick-list * {
	width: 100%;
	height: 100vh;
}

.slides-home-content,
.slides-home-content * {
	height: auto !important;
}

.slides-home-content {
	position: absolute;
	z-index: 999;
	bottom: clamp(130px, 10vw, 250px);
	left: clamp(20px, 5vw, 150px);
	width: calc(100% - clamp(40px, 10vw, 300px));
	max-width: 800px;
	padding: clamp(20px, 4vw, 40px);
	background: rgba(0, 0, 0, 0.45);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 12px;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

.slides-home-content h2 {
	font-size: var(--title-page);
	line-height: 1.1em;
	margin-top: 0;
	margin-bottom: 0.5em;
	font-weight: var(--semibold);
	color: var(--destacado);
	max-width: 100%;
	text-transform: uppercase;
}

.slides-home-content p {
	font-size: clamp(16px, 2vw, 24px);
	font-family: var(--mulish);
	margin-bottom: 0;
	color: #ffffff;
}

#slider-home .slick-list img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

#slider-home .slick-list .slick-slide::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	z-index: 1;
}


#slider-home .slick-prev,
#slider-home .slick-next {
	top: auto;
	bottom: 0;
	background: #000;
	width: 80px;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	transform: none;
}

#slider-home .slick-prev {
	left: auto !important;
	right: 80px;
}

#slider-home .slick-next {
	right: 0 !important;
}

#slider-home .slick-counter {
	position: absolute;
	width: auto;
	display: flex;
	align-items: flex-end;
	gap: 0.3em;
	bottom: 30px;
	right: 200px;
	font-family: var(--mulish);
	font-size: var(--text-general);
}

#slider-home .slick-counter .current {
	font-size: 1.5em;
}

#cenefa {
	padding: var(--pm-block-xy) 0;
	padding-top: 0;
	position: relative;
}

#cenefa .page-title {
	position: absolute;
	text-transform: uppercase;
	top: 350px;
	color: var(--destacado);
	font-size: var(--title-page-big);
	left: var(--pm-block-xy);
	max-width: 90%;
	z-index: 9;
	margin: 0;
	text-shadow: 4px 4px var(--base);


}

.content-wrap .page-title {
	font-size: var(--title-page);
}

.cenefa-imagen {
	position: relative;
	width: 100%;
	height: 85vh;

	overflow: hidden;
}

.cenefa-imagen iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.cenefa-imagen::before {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	content: "";
	background: rgba(0, 0, 0, 0.3);
}

.cenefa-imagen img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

#page-educa {
	padding-top: var(--pm-block-xy-min);
}

.two-columns {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: var(--pm-block-xy);
	padding: var(--pm-block-xy);
	padding-top: var(--pm-block-xy-min);
}


/* Main Bienes */

#main-content-bienes {
	display: flex;
	flex-direction: column;
}

#main-content-bienes.full-width {
	grid-template-columns: 1fr;
}

.content-bienes {
	display: flex;
	flex-direction: row;
	margin: var(--pm-block-xy) 0 var(--pm-block-xy-min);
	background: var(--bloque);

}

.title-denominacion {
	display: flex;
	flex-direction: column;
	margin: 2em 0;
}

.title-denominacion-exposicion {
	display: flex;
	flex-direction: column;
}

.title-denominacion .page-title {
	font-size: var(--title-page);
	font-weight: var(--bold);
	color: white;
	text-transform: capitalize;
	margin: 0.2em 0;
}

.title-denominacion-exposicion .page-title {
	font-size: var(--title-page-medium);
	font-weight: var(--bold);
	color: var(--destacado);
	text-transform: capitalize;
	margin: 0 0 0.5em 0;
}

.title-bienes {
	display: flex;
	flex-direction: column;
	margin: 3em 0;
}

.title-bienes-exposicion {
	display: flex;
	flex-direction: column;
}

.content-header-bienes {
	padding: 0 var(--pm-block-xy);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex: 25%;
}

.content-header-bienes .page-subsection {
	color: var(--destacado);
}

.full-width .content-bienes {
	border-right: 0;
}

.content-wrap-bienes {
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
}

#sidebar-actions-bienes {
	display: flex;
	flex-direction: column;
	grid-template-columns: auto 300px;
	justify-content: flex-end;
	align-items: flex-end;
	grid-gap: 1em;
	padding: 0 var(--pm-block-xy);
	flex: 25%
}

#ficha-tags-bienes {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 1em;
	padding: var(--pm-block-xy-min-min);
}

#hueco-imagen-grande-bienes {
	display: flex;
	flex-direction: row;
	justify-content: center;
	flex: 50%;
}

#hueco-imagen-grande-bienes #lightgallery {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 2em;
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
}

/* Deep Zoom Styles  */
.content-bienes.has-deep-zoom {
	display: flex !important;
	flex-direction: column !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	background: #000 !important;
}

.content-bienes.has-deep-zoom .content-header-bienes {
	order: 1 !important;
	position: relative !important;
	width: 100vw !important;
	max-width: none !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	margin: 0 !important;
	padding: 0 !important;
}

#hueco-imagen-grande-bienes.gallery {
	width: 100% !important;
	position: relative;
}

#deepzoom-hero-wrapper {
	position: relative !important;
	width: 100vw !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	background: #000 !important;
	overflow: hidden;
	margin: 0 !important;
}

#deepzoom-hero-wrapper.is-fullpage {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	transform: none !important;
	margin: 0 !important;
	z-index: 99999 !important;
	/* Prioridad justa por debajo del modal-backdrop (1040) y modal (1050) de Bootstrap, pero encima de la navbar (1030) */
	background: #000 !important;
}

body.osd-active {
	overflow: hidden !important;
}

/* Ocultar flechas de navegación previo/siguiente durante OSD Full Screen */
body.osd-active .btnObras,
body.osd-active .btnObrasHidden {
	display: none !important;
}

#openseadragon-container {
	width: 100% !important;
	height: 100vh !important;
	background-color: #000 !important;
	border: 0 !important;
	margin: 0 !important;
	cursor: grab !important;
	/* Cursor de mano abierta */
}

@media (max-width: 1024px) {
	#openseadragon-container {
		height: 90vh !important;
	}
}


/* Forzar el cursor en el canvas interno de OpenSeadragon */
#openseadragon-container canvas {
	cursor: inherit !important;
}

/* Cambiar a mano cerrada al hacer click/arrastrar */
#openseadragon-container:active,
#openseadragon-container:active canvas {
	cursor: grabbing !important;
}

#deepzoom-hero-wrapper.is-fullpage #openseadragon-container {
	height: 100vh !important;
}

/* Degradado inferior para legibilidad del texto */
#deepzoom-hero-wrapper::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 150px;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 100%);
	pointer-events: none;
	z-index: 5;
}

/* Superposición de títulos */
.titles-overlay {
	position: absolute;
	bottom: 60px;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	max-width: var(--width-base, 1200px);
	padding: 0 20px;
	z-index: 1000;
	pointer-events: none;
	transition: opacity 0.3s;
}

/* Ocultar títulos y degradado en modo pantalla completa para vista limpia */
.is-fullpage .titles-overlay,
.is-fullpage#deepzoom-hero-wrapper::after {
	opacity: 0 !important;
	visibility: hidden !important;
}

.titles-overlay .title-bienes,
.titles-overlay .title-denominacion {
	margin: 0 !important;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5);
}

.titles-overlay .page-title {
	color: #fff !important;
	font-size: clamp(1.5rem, 4vw, 3rem) !important;
	margin: 0.2rem 0 !important;
}

.titles-overlay .page-section,
.titles-overlay .page-subsection {
	margin: 0 !important;
}

/* Botones de control personalizados */
.osd-custom-controls {
	position: absolute;
	top: 100px;
	right: 20px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	z-index: 1000;
}

.is-fullpage .osd-custom-controls {
	z-index: 2147483647 !important;
}

.osd-btn {
	width: 45px;
	height: 45px;
	background: rgba(0, 0, 0, 0.6);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	cursor: pointer;
	border: 1px solid rgba(255, 255, 255, 0.2);
	transition: all 0.2s;
	font-size: 1.2rem;
}

.osd-btn:hover {
	background: rgba(0, 0, 0, 0.9);
	transform: scale(1.1);
	border-color: #fff;
}

/* Indicador de que la imagen se puede ampliar en el visor principal */
.galeria-item.zoom-trigger {
	cursor: pointer;
	position: relative;
	transition: transform 0.2s;
}

.galeria-item.zoom-trigger:hover {
	transform: translateY(-5px);
}

.galeria-item.zoom-trigger::after {
	content: '\f00e';
	/* fa-search-plus */
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	position: absolute;
	top: 10px;
	left: 10px;
	background: rgba(0, 0, 0, 0.6);
	color: #fff;
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	opacity: 0;
	transition: opacity 0.2s;
	pointer-events: none;
	z-index: 10;
}

.galeria-item.zoom-trigger:hover::after {
	opacity: 1;
}

.content-bienes.has-deep-zoom #sidebar-actions-bienes {
	order: 3 !important;
	width: 100% !important;
	max-width: var(--width-base, 1200px) !important;
	margin: 2em auto 4em !important;
	padding: 0 20px !important;
	flex-direction: row !important;
	justify-content: space-between !important;
	align-items: center !important;
}

@media (max-width: 1024px) {
	.content-bienes.has-deep-zoom #sidebar-actions-bienes {
		flex-direction: column !important;
	}
}

.page-title-bienes {

	font-size: var(--title-page);
	font-weight: var(--bold);
	margin: 0.6em 0;
	line-height: 1.2em;
}

.b-description_readmore p {
	text-align: justify;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	overflow-wrap: break-word;
}


/* Main */

#main-content {
	display: grid;
}

#main-content.full-width {
	grid-template-columns: 1fr;
}

.content {
	padding: var(--pm-block-xy-min) 0 var(--pm-block-xy-min);
}

.full-width .content {
	border-right: 0;
}

.content-header {
	padding: 0 var(--pm-block-xy);
}

.content-header.no-section h1 {
	margin-top: var(--pm-block-xy-min);

}

.content-wrap {
	padding: 0 var(--pm-block-xy) var(--pm-block-xy-min);
}

.sidebar {
	padding: 0 var(--pm-block-xy) 0 0;
}

.page-title {
	text-transform: uppercase;
	font-size: var(--title-page-big);
	color: var(--destacado);
	font-weight: var(--bold);
	margin: 0.6em 0;
	line-height: 1.2em;
	text-shadow: 4px 4px var(--base);
}

#catalogoBusqueda .page-title {
	font-size: var(--text-general);
}


.title-bienes .page-section {
	padding: 0px;
	background-color: transparent;
	color: white;
	line-height: normal;
	font-size: var(--title-subsection);

}

.title-bienes-exposicion .page-section {
	padding: 0px;
	background-color: transparent;
	color: white;
	line-height: normal;
	font-size: var(--title-section);

}

.no-section .page-section {
	font-size: var(--title-section);
	color: white;
}

.page-section,
.block-title {
	text-transform: uppercase;
	font-size: var(--title-page-big);
	margin: 0 0 0.2em;
	color: var(--destacado);
	text-shadow: 4px 4px var(--base);
	line-height: 1em;
}

#galeria .block-title,
.block-header-bajo .page-section,
#ficha-exposiciones .block-title,
#obras-relacionadas-slider .block-title,
#ficha-exposiciones .page-section {
	font-size: var(--title-page);
}

.video-container .page-section {
	text-transform: uppercase;
	font-size: var(--title-page-big);
	color: var(--destacado);
	position: absolute;
	top: 150px;
	left: 60px;
	text-shadow: 4px 4px var(--base);
	margin: 0px;
}

.page-subsection {
	font-size: var(--title-subsection);
	color: var(--texto-atenuado);
	font-family: var(--mulish) !important;
}

.page-subsection.multiple-authors,
.titles-overlay .title-denominacion .page-subsection.multiple-authors {
	font-size: var(--text-breadcrumbs);
	line-height: 1.4;
}

#main-content .content p {
	margin-bottom: 1.4em;
	font-family: var(--mulish);
	text-align: justify;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	overflow-wrap: break-word;
}

#main-content .content p:last-child {
	margin-bottom: 0;
}

#main-content .content ul {
	padding: var(--pm-block-xy-min);
	padding-top: 0;
	padding-right: 0;
	list-style: disc;
}

#main-content .content li {
	margin: 0.4em;
	line-height: 1.4em;
	font-family: var(--mulish);
	word-break: break-word;
}

#ficha-datos p a,
#main-content .content p a,
#main-content .content li a,
#noticias-detalle-contenido a,
.agenda-detalle-main a {
	text-decoration: underline;
	text-decoration-color: var(--texto-atenuado);
	text-decoration-style: solid;
	text-underline-offset: 6px;
}

#ficha-datos p a:hover,
.ficha-datos-item p a:hover,
#main-content .content p a:hover,
#main-content .content li a:hover,
#noticias-detalle-contenido a:hover,
.agenda-detalle-main a:hover {
	color: #ddd8a1;
	text-decoration-color: #ddd8a1;
}

/* Destacados */

#destacados {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	padding: var(--pm-block-xy-min) 0;
	margin: var(--pm-block-xy) 0 0;
	border-top: var(--linea-bold);
}

.destacados-item {
	position: relative;
	padding: clamp(30px, 8.5vw, 164px);
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: nowrap;
	gap: 2em;
	overflow: hidden;
	transition: all 0.2s;
	margin: 10px;
}

.destacados-item p {
	font-size: 80px;
}

.destacados-item:first-child {
	/*background: #382118;*/
	background-image: url(../images/content/fondosHome.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.destacados-item:last-child {
	/*background: #8a5413;*/
	background-image: url(../images/content/conservacion_home.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.destacados-item:hover:first-child {
	/*background: #472a1e;*/
	transform: scale(1.02);
	opacity: 0.7;
}

.destacados-item:hover:last-child {
	/*background: #9e6524;*/
	transform: scale(1.02);
	opacity: 0.7;
}

.destacados-imagen {
	width: clamp(120px, 20vw, 300px);
	height: clamp(120px, 20vw, 300px);
	border-radius: 50%;
	overflow: hidden;
}

.destacados-imagen img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.destacados-titulo {
	font-size: clamp(22px, 2.5vw, 46px);
}

/* Pieza del Mes */

#piezaDelMes {
	display: grid;
	margin: var(--pm-block-y);
	align-items: flex-start;
	background-color: var(--destacado);
}

#piezaDelMes {
	grid-template-columns: 1.5fr 1fr;
}

.destacadoPieza:last-child:hover {
	opacity: 1;
}

.destacadoPieza ul.destacadoPieza-texto,
.destacadoPieza p.destacadoPieza-texto {
	margin-bottom: 2rem;
}

.destacadoPieza {

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 10px;
	box-sizing: border-box;
	height: 350px;

}

.destacadoPieza:first-child {
	padding: clamp(40px, 9.5vw, 170px);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	clip-path: polygon(0 0, 100% 0, 85% 100%, 0 100%);
}

.destacadoPieza:last-child {
	padding: clamp(40px, 4.1vw, 170px);
	align-items: center;
	clip-path: polygon(14% -1%, 100% 0%, 100% 100%, 0% 100%);
	background-color: var(--destacado);
}

.destacadoPieza p {

	color: #000000;
}

.destacadoPieza a:hover {

	text-decoration: none;
}

.destacadoPieza-titulo {
	font-size: clamp(30px, 2.5vw, 45px);
	color: var(--base);
	line-height: 1;

}

.destacadoPieza h2 {
	font-size: var(--title-page);
	text-align: center;
	margin: 20px;
}

.destacadoPieza h3 {
	font-size: var(--title-section);
	text-align: center;
	margin: 20px;
}

.destacadoPieza-texto {
	font-size: clamp(22px, 2.3vw, 22px);

}




/* Banner CICUS - Proyectos Culturales */

#bannerCicus {
	display: grid;
	grid-template-columns: 1.2fr 1.3fr;
	margin: var(--pm-block-y);
	align-items: flex-start;
	background-color: var(--destacado);
}

#bannerCicus .destacadoPieza:first-child {
	order: 2;
	background-image: url(/files/public/cicus_uploads/cicus_home_otono.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	clip-path: polygon(15% 0, 100% 0, 100% 100%, 0% 100%);
}

#bannerCicus .destacadoPieza:last-child {
	order: 1;
	clip-path: polygon(0 0, 86% 0, 100% 100%, 0 100%);
	align-items: flex-start;
}

.bannerCicus-content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.75rem;
}

/* Overrides de alineación: los banners existentes centran el texto,
   el bannerCicus lo alinea a la izquierda */
#bannerCicus .destacadoPieza-titulo,
#bannerCicus .destacadoPieza h2 {
	text-align: left;
	margin: 0 0 0.25rem;
}

#bannerCicus .destacadoPieza-texto {
	text-align: left;
	margin: 0;
}

/* CatÃ¡logo de bienes */

/* Catálogo de bienes - Tríptico Carrusel */
.catalogo-triptico-wrapper {
	width: 100%;
	overflow: hidden;
	margin: 0 0 var(--pm-block-y) ;
	position: relative;
}

.catalogo-triptico-carrusel {
	display: flex;
	flex-direction: row;
	width: 100%;
	height: 600px;
}

.catalogo-triptico-item {
	flex: 0 0 20%;
	position: relative;
	background-size: cover;
	background-position: center;
	transition: flex 1s cubic-bezier(0.16, 1, 0.3, 1), margin-left 0.8s cubic-bezier(0.25, 1, 0.5, 1);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 30px;
	box-sizing: border-box;
}

@media (min-width: 1024px) {
	.catalogo-triptico-carrusel:hover .catalogo-triptico-item:nth-child(-n+5) {
		flex: 0 0 15%;
	}

	.catalogo-triptico-carrusel:hover .catalogo-triptico-item:nth-child(n+6) {
		flex: 0 0 0% !important;
		min-width: 0 !important;
		padding: 0 !important;
		opacity: 0 !important;
		pointer-events: none !important;
		transition: none !important;
	}

	.catalogo-triptico-carrusel .catalogo-triptico-item:nth-child(-n+5):hover {
		flex: 0 0 40%;
	}
}

.triptico-meta {
	color: var(--destacado);
	margin: 0;
	text-transform: uppercase;
	font-size: 0.85rem;
	letter-spacing: 1px;
	font-weight: var(--bold);
	font-family: var(--mulish) !important;
}

.triptico-title-bien {
	font-size: clamp(20px, 1.8vw, 28px);
	font-weight: var(--bold);
	color: #ffffff;
	margin: 5px 0;
	line-height: 1.2;
	text-transform: uppercase;
	font-family: var(--outfit) !important;
}

.triptico-desc-bien {
	font-size: 0.9rem;
	color: #e0e0e0;
	margin: 0;
	max-width: 90%;
	opacity: 0;
	transform: translateY(15px);
	max-height: 0;
	overflow: hidden;
	transition: opacity 0.5s cubic-bezier(0.25, 1, 0.5, 1), transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), max-height 0.5s cubic-bezier(0.25, 1, 0.5, 1);
	font-family: var(--mulish) !important;
}

.catalogo-triptico-item:hover .triptico-desc-bien {
	opacity: 1;
	transform: translateY(0);
	max-height: 80px;
	margin-top: 5px;
}

.catalogo-triptico-item .btn-black {
	display: inline-block;
	opacity: 0;
	transform: translateY(15px);
	transition: opacity 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0.1s, transform 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0.1s, background-color 0.3s ease, color 0.3s ease;
	margin-top: 15px;
	text-decoration: none !important;
	align-self: flex-start;
}

.catalogo-triptico-item:hover .btn-black {
	opacity: 1;
	transform: translateY(0);
}

.slides-titulo-obra,
.slides-titulo-genero {
	font-weight: var(--light);
	font-size: var(--text-small);
}

.exposiciones-carrusel-imagen:hover {
	transform: scale(1.02);
	opacity: 0.7;
}

@media (max-width: 1023px) {
	.catalogo-triptico-wrapper {
		padding: 0;
		margin-top: 1.5rem;
	}
	.catalogo-triptico-carrusel {
		display: flex;
		flex-direction: row;
		height: 480px;
		margin-top: var(--pm-block-xy-min);
	}
	.catalogo-triptico-item {
		flex: 0 0 33.333% !important;
		height: 100%;
		padding: 25px;
		transition: margin-left 0.8s cubic-bezier(0.25, 1, 0.5, 1);
	}
	.triptico-desc-bien {
		opacity: 1 !important;
		transform: none !important;
		max-height: none !important;
		display: block !important;
		margin-top: 5px;
	}
	.catalogo-triptico-item .btn-black {
		opacity: 1 !important;
		transform: none !important;
	}
}

@media (max-width: 767px) {
	.catalogo-triptico-carrusel {
		height: 420px;
	}
	.catalogo-triptico-item {
		flex: 0 0 50% !important;
	}
}

@media (max-width: 480px) {
	.catalogo-triptico-carrusel {
		height: 380px;
	}
	.catalogo-triptico-item {
		flex: 0 0 100% !important;
		padding: 20px;
	}
}

/* Exposiciones */

#exposiciones {
	position: relative;
}

#exposiciones .block-title {

	margin: 0 0 0.2em;
}

/*#exposiciones .block-header {
	border-top: 0;
	position: absolute;
	top: var(--pm-block-xy);
	left: var(--pm-block-xy);
	z-index: 9;
	width: auto;
	flex-direction: column;
	padding: 0;
	align-items: flex-start;
}*/

#exposiciones .block-content {
	padding: 0;
}

.exposiciones-carrusel .slick-list {
	padding: 0 15% 0 0;
	position: relative;
}

.exposiciones-carrusel .slick-track {
	margin-right: clamp(100px, 20vw, 200px);
}

.exposiciones-carrusel-item-wrap {
	display: grid;
	grid-template-columns: 100%;
	align-items: end;
	grid-gap: 3em;
	padding: 0 var(--pm-block-xy) var(--pm-block-xy-min) var(--pm-block-xy);
	border-right: var(--linea);
}

.exposiciones-carrusel-imagen {
	height: 700px;
	position: relative;
}

.exposiciones-carrusel-imagen img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.exposiciones-carrusel-titulo {
	font-size: clamp(24px, 1.8vw, 32px);
	line-height: 1.2em;
	position: absolute;
	background: var(--destacado);
	color: var(--base);
	top: 50px;
	padding: 20px;
	font-weight: var(--semibold);
}

.exposiciones-carrusel-fecha {
	margin-bottom: 2em;
	font-weight: var(--bold);
	padding: 10px;
	font-size: var(--text-small);
	position: absolute;
	background: var(--destacado);
	color: var(--base);
	bottom: 10px;
	right: 25px;
}

.exposiciones-carrusel-entradilla {
	font-family: var(--mulish);
}

.exposiciones-carrusel .slick-prev {
	display: none;
}

.exposiciones-carrusel .slick-next {
	top: clamp(60px, 5vw, 100px);
	right: calc(22% - clamp(80px, 5vw, 120px)) !important;
	bottom: inherit;
}

.exposiones-btn {
	position: absolute;
	bottom: 25px;
	left: 25px;
	z-index: 9;
	text-transform: uppercase;
	transition: none;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 1em;
	padding: 1em;
	background: black;
	transition: all 0.2s;
}

.exposiones-btn::before {
	width: 30px;
	height: 30px;
	content: "";
	background: url(../images/icons/icon-mas.svg) transparent center / contain no-repeat;
}

.exposiones-btn:hover {
	background: white;
	text-decoration: none;
	color: black;
}

.exposiones-btn:hover::before {
	filter: invert(100%);
}

.exposicion-imagen-principal {
	height: auto;
}

/* Ficha */

#ficha-datos {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-gap: 2em;
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
	margin: var(--pm-block-xy-min);
}

.content #ficha-datos {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 2em;
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
}

.ficha-datos-item {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-direction: column;
}

.ficha-datos-item-bibliografia {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
}

.ficha-datos-item-full {
	grid-column: span 6;
}

.ficha-datos-item h3,
.ficha-datos-item-bibliografia h3 {
	margin: 0.9em 0;
	font-size: var(--title-subsection);
	font-weight: 700;
	color: var(--destacado);
}


.ficha-datos-item p {
	margin-bottom: 0.7em !important;
	font-family: var(--mulish) !important;
	font-weight: var(--semibold);
	font-size: var(--text-small);
	text-align: center;
}

.ficha-datos-item p a {
	font-weight: var(--bold);
	text-decoration: underline solid var(--destacado) 2px;
	;
}

.ficha-datos-item-bibliografia p {
	margin-bottom: 0.7em !important;
	font-family: var(--mulish) !important;
	font-weight: var(--semibold);
	font-size: var(--text-small);
	font-style: italic;
}

.ficha-datos-item-bibliografia ul {
	padding-left: 20px;
}

.ficha-datos-item p:last-child {
	margin-bottom: 0 !important;
}

.ficha-exposiciones-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 3em;
	padding-bottom: var(--pm-block-xy);
}

.ficha-exposiciones-grid h3 {
	font-size: var(--title-subsection);
	margin-top: 0;
	margin-bottom: 1em;
	line-height: 1.3em;
}

.ficha-exposiciones-fecha {
	color: var(--texto-atenuado);
	font-size: var(--text-small);
	font-weight: var(--light);
}

.ficha-exposiciones-grid-item:nth-child(n + 5) {
	display: none;
}

@media (max-width: 780px) {
	.ficha-exposiciones-grid-item:nth-child(n + 3) {
		display: none;
	}
}

#ficha-tags {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 2em;
	/*padding: var(--pm-block-y);*/
	padding: 0 var(--pm-block-xy) var(--pm-block-xy-min);
}

@media all and (min-width: 1320px) {
	#ficha-tags {
		padding-right: 0;
	}
}

.ficha-tags-item {
	flex-basis: auto;
}

.ficha-tags-item a {
	background-color: var(--destacado);
	padding: 8px;
	color: var(--base);
	line-height: 40px;
	font-size: 15px
}

.ficha-tags-item a:hover {
	color: var(--destacado);
	text-decoration: underline solid var(--destacado) 2px;
}

#masinfo-toggle {
	grid-column: span 6;
	display: flex;
	justify-content: center;
	align-items: center;
	order: 999;
	cursor: pointer;
	position: relative;
}


#masinfo-toggle-text {
	display: flex;
	justify-content: flex-end;
	grid-gap: 0.5em;
	align-items: center;
	padding: 0 var(--pm-block-y-min);
}


#masinfo-toggle-text::after {
	content: "";
	width: 30px;
	height: 30px;
	background: url(../images/icons/icon-mas.svg) transparent center / contain no-repeat;
	display: inline-block;
}

#masinfo-toggle-text:hover::after {
	background: url(../images/icons/icon-mas-destacado.svg) center / contain no-repeat;
}

.masinfo-toggle-active #masinfo-toggle-text {
	font-size: 0;
}


#capa-campos-masinfo {
	grid-column: span 6;
}

#capa-campos-masinfo {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-gap: 2em;
}

/* GalerÃ­a */

#galeria {
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-bottom: var(--linea);
	height: 100%;
}

#galeria #lightgallery,
#galeria #gallery-deepzoom {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 5em;
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
}

#galeria #lightgalleryNoDown {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 5em;
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
}

#galeria #galeria-recursos {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 5em;
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
}

.galeria-item {
	height: calc(100vw / 4 - 4em);
}

.galeria-item a {
	position: relative;
	display: inline-block;
	width: 100%;
	height: calc(100vw / 4 - 4em);
}

.galeria-item a::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	content: '\f002';
	/* fa-search */
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	color: white;
	font-size: 2rem;
	z-index: 9;
	opacity: 0;
	transition: all 0.2s;
}

.galeria-item a:hover::after {
	opacity: 1;
}

.galeria-item:nth-child(n + 5) {
	display: none;
}

.galeria-item {
	height: calc(100vw / 4 - 4em);
}

.galeria-item img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.galeria-item a {
	position: relative;
	display: inline-block;
	width: 100%;
	height: calc(100vw / 4 - 4em);
}

.galeria-item a::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	content: '\f002';
	/* fa-search */
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	color: white;
	font-size: 2rem;
	z-index: 9;
	opacity: 0;
	transition: all 0.2s;
}

.galeria-item a:hover::after {
	opacity: 1;
}

.galeria-item:nth-child(n + 5) {
	display: none;
}

/** estilos para imagen principal columna derecha **/

#hueco-imagen-grande {
	display: flex;
	flex-direction: row;
	justify-content: center;
}

#hueco-imagen-grande #lightgallery {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 2em;
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
}

.galeria-item-grande {
	height: calc(100vw / 4 - 4em);
}

.galeria-item-grande img {
	display: block;
	width: auto !important;
	max-width: 100%;
	height: calc(100vh - 108px);
	object-position: center;
	object-fit: contain;
}

.galeria-item-grande a {
	position: relative;
	display: inline-block;
	width: 100%;
	height: calc(100vw / 4 - 4em);
}

.galeria-item-grande a::after {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	content: '\f002';
	/* fa-search */
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	color: white;
	font-size: 3rem;
	z-index: 9;
	opacity: 0;
	transition: all 0.2s;
}

.galeria-item-grande a:hover::after {
	opacity: 1;
}

.galeria-item-grande:nth-child(n + 5) {
	display: none;
}

/** **/

/* Modal */

.modalImagenCatalogo {
	position: fixed;
	content: "";
	top: 0;
	left: 0;
	z-index: 99999;
	width: 100%;
	height: 100%;

	background: rgba(0, 0, 0, 0.6);
}

.modalImagenCatalogo.capa-grupo h2 {
	padding: 0 0 30px 25px;
	line-height: 1.2em;
}

.modalImagenCatalogo.capa-grupo .modalImagenCatalogoWrap {
	max-width: 1400px;
	width: 95%;
}

.modalImagenCatalogoWrap {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 999999;
	width: 96%;
	max-width: 800px;
	height: auto;
	max-height: 90%;
	border: var(--linea-bold);
	background: var(--bloque);
	display: flex;
	flex-direction: column;
}

.modalImagenCatalogoCabecera {
	display: grid;
	grid-template-columns: auto 50px;
	grid-gap: 1em;
	align-items: center;
	flex-basis: 50px;
}

.modalImagenCatalogoContenido {
	overflow: auto;
	padding: 0 30px 30px;
	flex-basis: calc(100% - 50px);
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.modalImagenCatalogoContenido::-webkit-scrollbar {
	display: none;
}

.modalImagenCatalogoItem {
	margin-bottom: 1.5em;
}

.modalImagenCatalogoItem:last-child {
	margin-bottom: 0;
}

.modalImagenCatalogoItem .btn {
	margin-top: 1em;
}

.modalImagenCatalogoContenido h4:first-child {
	margin: 0 0 0.7em;
}

.modalImagenCatalogoContenido p,
.modalImagenCatalogoContenido li {
	font-size: var(--text-small);
	font-weight: var(--light);
}

.modalImagenCatalogoContenido p {
	margin-bottom: 0.6em;
}

.modalImagenCatalogoContenido ul {
	padding: 0 0 0 30px;
}

.modalImagenCatalogoContenido li {
	margin: 0.5em 0;
}

.modalImagenCatalogoItem .btn {
	display: flex;
	justify-content: center;
	gap: 0.5em;
	align-items: center;
}

.modalImagenCatalogoItem .btn::before {
	display: inline-block;
	font-size: 22px;
	width: 20px;
	height: 20px;
}

.btnModalImagenCatalogoOriginal::before {
	content: url(../images/icons/icon-download-black.svg);
}

.btnModalImagenCatalogoOriginal:hover::before {
	content: url(../images/icons/icon-download.svg);
}


.btnModalImagenCatalogoPersonal::before {
	content: url(../images/icons/icon-uso-personal-black.svg);
}

.btnModalImagenCatalogoPersonal:hover::before {
	content: url(../images/icons/icon-uso-personal.svg);
}

.btnModalImagenCatalogoComercial::before {
	content: url(../images/icons/icon-uso-comercial-black.svg);
}

.btnModalImagenCatalogoComercial:hover::before {
	content: url(../images/icons/icon-uso-comercial.svg);
}

.btnModalImagenCatalogoSolicitar::before {
	content: url(../images/icons/icon-mas-imagenes-black.svg);
}

.btnModalImagenCatalogoSolicitar:hover::before {
	content: url(../images/icons/icon-mas-imagenes.svg);
}

.modalImagenCatalogoCerrar {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	font-size: 0;
	background: url(../images/icons/icon-close.svg) transparent center / 20px no-repeat;
	border: 0;
	box-shadow: none;
	cursor: pointer;
	transition: all 0.2s;
}

.modalImagenCatalogoCerrar:hover {
	background: url(../images/icons/icon-close.svg) transparent center / 24px no-repeat;
}

/* Enlaces de interÃƒÂ©s */

#enlaces {
	display: flex;
	justify-content: space-evenly;
	align-items: flex-start;
	gap: 1em;
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
	border-top: var(--linea-bold);
}

.enlaces-item {
	position: relative;
	text-align: center;
}

.enlaces-item img {
	height: 50px;
	margin-bottom: 1em;
}

.enlaces-item i {
	font-size: 52px;
	/* Slightly smaller than 50px img to visually match */
	display: block;
	margin-bottom: 0.35em;
	color: #fff;
	transition: color 0.3s;
}

.enlaces-item:hover i {
	color: var(--destacado);
}

.enlaces-item:hover {
	filter: var(--color-filter);
}

/* Search */

#search-wrap {
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
	background: var(--bloque);
}

.search-wrap {
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
	background: var(--bloque);
}

.search-wrap-campo-busqueda {
	padding-top: 0;
}

#search-header {
	display: grid;
	grid-template-columns: auto minmax(20%, 260px);
}

#resultados-busqueda-actions #search-header {
	display: grid;
	grid-template-columns: auto minmax(30%, 260px);
	gap: 45px;
}

#search-header-text {
	position: relative;
}

#advanced-toggle {
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	border: var(--linea);
	transition: all 0.2s;
}

#advanced-toggle:hover {
	background: rgba(255, 255, 255, 0.1);
}

.advanced-toggle-active,
.advanced-toggle-active:hover {
	background: white !important;
}

.advanced-toggle-active #advanced-toggle-text,
.advanced-toggle-active #advanced-toggle-text:hover {
	color: var(--base) !important;
}

#search-header-text.advanced-active #submit {
	display: none;
}

#advanced-toggle-text {
	display: flex;
	align-items: center;
	gap: 1em;
}

#advanced-toggle-text::after {
	content: "";
	display: inline-block;
	width: 30px;
	height: 30px;
	background: url(../images/icons/icon-filter-white.svg) transparent center / contain no-repeat;
}

.advanced-toggle-active #advanced-toggle-text::after {
	background: url(../images/icons/icon-filter-black.svg) transparent center / contain no-repeat;
}

#search {
	padding-right: 70px;
}

.search-header-submit {
	position: absolute;
	cursor: pointer;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	width: 30px;
	height: 30px;
	z-index: 9;
	border-radius: 0;
	box-shadow: none;
	font-size: 0;
	border: 0;
	padding: 0;
	background: url(../images/icons/icon-search.svg) transparent center / contain no-repeat;
}

.search-header-submit:hover {
	filter: var(--color-filter);
}

.item-hidden {
	height: 0;
	font-size: 0;
	opacity: 0;
	pointer-events: none;
	display: none !important;
}

.item-show {
	height: max-content;
	font-size: inherit;
	opacity: 1;
	pointer-events: all;
	display: grid !important;
}

#search-content {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 2em;
}

#search-content.item-show {
	padding: var(--pm-block-xy-min) 0 0;
}

#as-entradilla {
	grid-column: span 4;
}

#as-entradilla p {
	font-family: var(--mulish) !important;
}

#as-autor,
#as-denominacion {
	grid-column: span 2;
}

.as-cronologia-wrap {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

#advanced-search-actions {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	justify-content: end;
	grid-column: span 4;
	grid-gap: 2em;
	margin-top: 0.5em;
}

#advanced-search-actions .btn {
	border: var(--linea-bold);
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.5em;
}

#advanced-search-actions .btn::before {
	content: "";
	width: 24px;
	height: 24px;
	display: inline-block;
}

#as-borrar.btn::before {
	background: url(../images/icons/icon-borrar-black.svg) transparent center / contain no-repeat;
}

#as-borrar:hover.btn::before {
	background: url(../images/icons/icon-borrar-white.svg) transparent center / contain no-repeat;
}

#as-buscar.btn::before {
	background: url(../images/icons/icon-search-black.svg) transparent center / contain no-repeat;
}

#as-buscar:hover.btn::before {
	background: url(../images/icons/icon-search.svg) transparent center / contain no-repeat;
}

#catalogo {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 2em;
	/*padding: var(--pm-block-xy-min);*/
}

.catalogo-item {
	height: calc(100vw / 6 - 5em);
	position: relative;
}

.catalogo-item::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0);
	z-index: 1;
	transition: all 0.2s;
}

.elemento-grupo-localizaciones:hover,
.catalogo-item:hover {
	transform: scale(1.02);
}

.catalogo-item:hover::after {
	background: rgba(0, 0, 0, 0.4);
}

.catalogo-item p {
	position: absolute;
	max-width: 90%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	font-family: var(--mulish) !important;
	text-align: center !important;
	background-color: rgba(0, 0, 0, 0.5);
	padding: 10px 20px;
	border-radius: 10px;
}

.catalogo-item img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	object-position: center;
}

.catalogo-item:hover img {
	filter: brightness(128%);
	-webkit-filter: brightness(128%);
	-moz-filter: brightness(128%);
}

#new-search-wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#new-search-text h3 {
	margin-top: 0;
}

#new-search-text p {
	font-family: var(--mulish) !important;
}

#new-search-button a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1em;
}

#new-search-button a::after {
	content: "";
	width: 32px;
	height: 32px;
	line-height: 30px;
	background: url(../images/icons/icon-new-search-white.svg) transparent center / contain no-repeat;
	display: inline-block;
}

/* Resultados bÃºsqueda */

#resultados-busqueda {
	display: grid;
	grid-gap: 3em 2em;
	padding: var(--pm-block-xy);
}

.resultados-busqueda-item {
	position: relative;
	background-color: rgba(255, 255, 255, 0);
	transition: all 0.2s;
	padding: 0.5em;
}

.view-grid .resultados-busqueda-item:hover,
.view-list .resultados-busqueda-item:hover,
#obras-relacionadas-slider .slides-item:hover {
	background-color: rgba(255, 255, 255, 0.1);
}

.view-list .resultados-busqueda-item:hover .resultados-busqueda-imagen,
.view-grid .resultados-busqueda-item:hover .resultados-busqueda-imagen,
#obras-relacionadas-slider .slides-item:hover .resultados-busqueda-imagen {
	padding-bottom: 0;
	transform: scale(1.02);
	opacity: 0.7;
}

#obras-relacionadas-slider .slides-item:hover {
	transform: scale(1);
}

#resultados-busqueda.view-grid {
	grid-template-columns: repeat(5, 1fr);
}

#resultados-busqueda.view-list {
	grid-template-columns: 1fr;
	grid-gap: 0;
}

.view-list .resultados-busqueda-item {
	display: grid;
	grid-template-columns: auto clamp(100px, 10vw, 200px);
	grid-gap: 3em;
	padding: var(--pm-block-xy-min) 0;
	border-bottom: var(--linea);
}

.resultados-busqueda-imagen {
	transition: all 0.2s;
}



.enlace-ficha-exposicion:hover {
	background-color: rgba(255, 255, 255, 0.1);
	text-decoration: none;

}

.enlace-ficha-exposicion:hover .resultados-busqueda-imagen {
	padding-bottom: 0;
	transform: scale(1.02);
	opacity: 0.7;

}

.view-grid .resultados-busqueda-imagen,
#obras-relacionadas-slider .resultados-busqueda-imagen,
.enlace-ficha-exposicion .resultados-busqueda-imagen {
	height: calc(100vw / 5 - 5em);
}

.view-grid .resultados-busqueda-imagen a {
	position: relative;
	display: inline-block;
	width: 100%;
	height: calc(100vw / 5 - 5em);
}

.view-grid .resultados-busqueda-imagen img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.view-list .resultados-busqueda-item:first-child {
	padding-top: 0;
}

.view-list .resultados-busqueda-item .resultados-busqueda-texto {
	order: 1;
}

.view-list .resultados-busqueda-item .resultados-busqueda-imagen {
	order: 2;
}

.resultados-busqueda-texto {
	transition: all 0.2s;
}

#resultados-busqueda-header {
	margin: var(--pm-block-x);
	margin-top: var(--pm-block-xy-min);
}

#resultados-busqueda-actions {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1em;
	border-top: var(--linea);
	border-bottom: var(--linea);
}

#resultados-busqueda-actions-switch {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.resultados-busqueda-actions-button {
	width: 60px;
	height: 60px;
	font-size: 0;
	opacity: 0.5;
	cursor: pointer;
	background-position: center;
	background-size: 32px;
	background-repeat: no-repeat;
	background-color: transparent;
	transition: all 0.2s;
}

.resultados-busqueda-actions-button:hover {
	opacity: 0.7;
}

.resultados-busqueda-actions-button.active {
	opacity: 1;
}

#switch-toggle-grid {
	background-image: url(../images/icons/icon-grid.svg);
}

#switch-toggle-grid:hover {
	background-image: url(../images/icons/icon-grid.svg);
}

#switch-toggle-list {
	background-image: url(../images/icons/icon-list.svg);
}

#switch-toggle-list:hover {
	background-image: url(../images/icons/icon-list.svg);
}

.resultados-busqueda-titulo {
	line-height: 1.2em;
	font-size: var(--title-bien);
}



.view-grid .resultados-busqueda-datos {
	display: flex;
	flex-direction: column;
	gap: 0.3em;
}

.resultados-busqueda-datos-item h3 {
	font-size: var(--text-small);
}

.view-grid .resultados-busqueda-datos-item h3 {
	display: none;
}

.resultados-busqueda-datos-item p {
	font-size: var(--text-small);
	font-weight: var(--light);
	font-family: var(--mulish) !important;
}

.resultados-busqueda-datos-item:first-child p {
	color: var(--destacado);
	font-style: italic;
	font-weight: var(--bold);
}



.view-list .resultados-busqueda-item .resultados-busqueda-titulo {
	margin-top: 0;
}

.view-list .resultados-busqueda-datos {
	display: flex;
	justify-content: flex-start;
	gap: clamp(50px, 5vw, 100px);
}

#resultados-busqueda-actions-sort {
	display: flex;
	gap: 1em;
	align-items: center;
	justify-content: flex-start;
}

#resultados-busqueda-actions-sort button {
	font-weight: var(--light);
	color: var(--texto-atenuado);
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.5em;
}

#resultados-busqueda-actions-sort button.active {
	font-weight: var(--regular);
	color: white;
}

#resultados-busqueda-actions-sort button.active::after {
	content: "";
	width: 18px;
	height: 18px;
	display: inline-block;
	background: url(../images/icons/arrow-down-simple-white.svg) transparent center / contain no-repeat;
}

#resultados-busqueda-actions-sort button.active.sort-up::after {
	transform: rotate(180deg);
}

#resultados-busqueda-filters {
	display: flex;
	justify-content: flex-end;
	align-items: stretch;
	margin-bottom: var(--pm-block-xy-min);
}

.detalleFondo {
	position: relative;
	margin: 0 var(--pm-block-x-min);
}

.detalleFondo img {
	padding: 0 var(--pm-block-x-min);
	height: 600px !important;
	width: 100% !important;
	object-fit: cover;
	object-position: center;
}

#img-responsive {
	padding: 0;
}

/* Pager */

#pager {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: var(--pm-block-x);
	padding-top: var(--pm-block-xy-min);
	padding-bottom: var(--pm-block-xy-min);
	border-top: var(--linea);
}

#pager>div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1em;
}

#pager-prev-wrap .btn-icon,
#pager-next-wrap .btn-icon {
	border: 0;
	transition: none;
	background: none;
}

#pager-number-wrap a {
	color: var(--texto-atenuado);
	font-weight: var(--light);
	transition: none;
}

#pager-number-wrap a.active {
	color: white;
	font-weight: var(--regular);
}

#pager-number-wrap a:hover {
	filter: var(--color-filter);
	text-decoration: none;
}

/* Footer */

.not-frontpage footer {
	border-top: var(--linea);
}

#main-footer {
	display: grid;
	grid-template-columns: 28% 72%;
	grid-gap: clamp(20px, 4vw, 60px);
	border-top: var(--linea);
	padding: var(--pm-block-xy);
	background-color: var(--base);
}

/* Columna de Marca y Logotipo */
#footer-brand {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

#footer-brand .footer-logo {
	display: flex;
	gap: 20px;
	align-items: center;
	justify-content: flex-start;
}

#footer-brand .footer-logo img {
	max-height: 80px;
	width: auto;
}

/* Datos de contacto (E-E-A-T) */
.footer-datos-contacto h3 {
	font-family: var(--mulish);
	color: var(--destacado);
	font-size: 0.9rem;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 1rem;
	font-weight: var(--semibold);
}

.footer-datos-contacto address {
	font-style: normal;
	color: var(--texto-atenuado);
	font-size: 0.85rem;
	line-height: 1.6;
}

.footer-datos-contacto .contacto-secundario {
	margin-top: 1rem;
}

/* Rejilla de Navegación del Footer */
#footer-nav {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: clamp(15px, 2vw, 30px);
}

.footer-nav-col h3 {
	font-family: var(--mulish);
	color: var(--destacado);
	font-size: 1rem;
	font-weight: var(--semibold);
	padding-bottom: 0.5rem;
	margin-bottom: 1rem;
	border-bottom: 1px solid rgba(121, 121, 121, 0.35); /* Línea de acento muy fina */
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.footer-nav-col ul {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	padding: 0;
	margin: 0;
}

.footer-nav-col ul li a {
	font-size: 1rem;
	color: var(--texto-atenuado) !important;
	text-decoration: none;
	display: inline-block;
	position: relative;
	padding-bottom: 3px;
	transition: color 0.3s ease;
}

/* Micro-interacción: Línea inferior deslizante (oro) en hover */
.footer-nav-col ul li a::after {
	content: '';
	position: absolute;
	width: 100%;
	transform: scaleX(0);
	height: 1px;
	bottom: 0;
	left: 0;
	background-color: var(--destacado);
	transform-origin: bottom left;
	transition: transform 0.25s ease-out;
}

.footer-nav-col ul li a:hover {
	color: white !important;
}

.footer-nav-col ul li a:hover::after {
	transform: scaleX(1);
}

/* Iconos de enlaces externos en el footer */
.footer-nav-col ul li a i.fa-arrow-up-right-from-square {
	font-size: 0.75em;
	opacity: 0.7;
	margin-left: 4px;
	transition: opacity 0.3s ease;
}

.footer-nav-col ul li a:hover i.fa-arrow-up-right-from-square {
	opacity: 1;
}

#footer-social {
	align-items: center;
	justify-content: center;
	display: flex;
	gap: 20px;
	flex-direction: row;
	background-color: var(--destacado);
	color: var(--base);
}

#footer-social h4 {
	margin: 15px;
}

#rrss {
	display: flex;
	gap: 1.5em;
	align-items: center;
	justify-content: center;
	color: var(--base);
}

#rrss a {
	transition: none;
	color: var(--base);
}

#newletter {
	position: relative;
}

#newsletter-submit {
	width: 50px;
	height: 36px;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	z-index: 9;
}

#footer-nav-second {
	grid-area: footer-nav-second;
	padding: 0 var(--pm-block-xy-min);
	display: flex;
	align-items: center;
}

#footer-nav-second ul {
	list-style: none;
	display: flex;
	justify-content: flex-start;
	gap: var(--pm-block-xy);
	font-size: var(--text-small);
}

.footer-logo {
	display: flex;
	gap: 20px;
	align-items: center;
	justify-content: center;
	flex-direction: row;
}

#creditos {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 20px;
	padding: 0.7em var(--pm-responsive);
	border-top: var(--linea);
	background-color: var(--destacado);
	color: var(--base);
}

.text-legales {
	display: flex;
	flex-direction: row;
	gap: 20px;
}

#creditos a {
	font-size: 14px;
	text-align: center;
	color: var(--base);
}


/* :::: RESPONSIVE ::: */

@media all and (max-width:1460px) {
	#header-actions {
		gap: 2em;
		align-items: center;
	}

	#main-nav-menu {
		gap: 1em;
	}
}

@media all and (max-width: 1380px) {
	#resultados-busqueda.view-grid {
		grid-template-columns: repeat(4, 1fr);
	}

	.view-grid .resultados-busqueda-imagen,
	#obras-relacionadas-slider .resultados-busqueda-imagen,
	.view-grid .resultados-busqueda-imagen a {
		height: calc(100vw / 4 - 4em);
	}

	.ficha-datos-item-full {
		grid-column: span 2;
	}

	.destacadoPieza-titulo {
		font-size: var(--title-page);
		color: var(--base);
	}

	.destacadoPieza-texto {
		font-size: clamp(20px, 2vw, 20px);
	}

	.destacadoPieza:last-child {

		padding: clamp(38px, 4.5vw, 174px);
	}

	#masinfo-toggle,
	#capa-campos-masinfo {
		grid-column: span 6;
	}



}

@media all and (max-width: 1296px) {
	:root {
		--width-base: calc(100% - 120px);
	}

	#toggle {
		display: block;
	}

	#main-nav-menu {
		padding-top: 50px;
		padding-bottom: 50px;
		flex-direction: column;
		justify-content: flex-start;
		margin-top: 0;
		gap: 4em;
	}

	#main-nav-menu li {
		font-size: var(--title-section);
	}

	header.full-width {
		padding: 0;
		width: 100%;
	}

	#toggle-search {
		flex-basis: 30px;
	}

	#toggle-search .icon-svg {
		width: 30px;
		height: 30px;
	}

	#toggle-search a::before {
		top: 10px;
		left: 10px;
	}

	#header-actions {
		align-items: center;
		gap: 1em;
	}

	.not-frontpage header {
		padding-right: var(--pm-responsive);
		padding-left: var(--pm-responsive);
	}

	.sidebar {
		padding-right: var(--pm-responsive);
		/* padding-top:2em; */
	}

	.content-header {
		padding: 0 var(--pm-responsive);
	}

	.content-wrap {
		padding: 0 var(--pm-responsive) var(--pm-block-xy-min);
	}

	#cenefa {
		padding-top: 0;
	}

	.two-columns {
		padding: var(--pm-responsive);
	}

	#featured-bottom {
		padding: var(--pm-responsive);
		padding-top: 0;
	}

	#ficha-tags {
		padding-left: var(--pm-responsive);
		padding-right: var(--pm-responsive);
	}

	.slides-home-content {
		width: calc(100% - 40px) !important;
		max-width: inherit;
		left: 50%;
		transform: translateX(-50%);
	}


	#footer-brand>* {
		text-align: center;
		margin: auto;
	}

	#footer-nav-second {
		padding: var(--pm-block-xy-min) var(--pm-responsive);
	}

	#footer-nav-second ul {
		gap: 1em;
		margin: auto;
		text-align: center;
	}

	#creditos p {
		text-align: center;
	}

	#footer-social h4 {
		text-align: center;
	}

	#rrss {
		justify-content: center;
	}

	.content-header-grid .page-title,
	.content-header.no-section h1,
	.title-bienes {
		margin-top: 140px;
	}

	#footer-brand .footer-logo {
		justify-content: center;
		align-items: center;
	}

	#footer-brand .footer-logo img {
		max-width: 100%;
		height: auto;
	}

}

@media all and (max-width: 980px) {
	header {
		display: grid;
		grid-template-columns: 175px auto;
	}

	.block-header {
		padding: 1.5em var(--pm-responsive) 3em;
	}

	.frontpage #header-actions {
		border-bottom: 0;
	}

	#main-content {
		grid-template-columns: 1fr;
	}

	.content {
		border-right: 0;
		order: 2;
		padding-bottom: 0;
	}


	.ficha-exposiciones-grid,
	#galeria #lightgallery,
	#galeria #gallery-deepzoom,
	#galeria #lightgalleryNoDown,
	#galeria #galeria-recursos {
		grid-template-columns: repeat(1, 1fr);
		padding: var(--pm-block-xy) var(--pm-responsive);
	}

	.ficha-exposiciones-grid {
		padding-top: 0;
		padding-right: 0;
		padding-left: 0;
	}

	.ficha-datos-item-full {
		grid-column: span 2;
	}

	.sidebar {
		padding: 0;
		padding-top: 2em;
	}

	#share-button-wrap {
		width: calc(100vw - clamp(40px, 8vw, 120px)) !important;
		margin: auto;
	}

	#catalogoBusqueda .content {
		padding-bottom: var(--pm-block-xy-min);
	}

	.galeria-item,
	.galeria-item a {
		height: calc(150vw / 2 - 3em);
	}

	.block-content {
		padding: var(--pm-responsive);
	}

	.catalogo-bienes-carrusel .slick-list {
		margin-right: -20px;
	}

	.catalogo-bienes-content {
		grid-template-columns: 1fr;
		padding: var(--pm-responsive) var(--pm-responsive);
	}

	.catalogo-bienes-carrusel::before,
	.catalogo-bienes-carrusel::after,
	.catalogo-bienes-slider {
		display: none !important;
	}

	.catalogo-bienes-slider .slides-item {
		height: 0;
	}

	.catalogo-bienes-carrusel {
		padding-left: 0;
	}

	.catalogo-bienes-carrusel .slick-track {
		margin: 0 -10px;
	}

	.catalogo-bienes-carrusel .slides-item {
		padding: 0 10px;
	}

	.catalogo-bienes-carrusel .slick-prev {
		left: 0 !important;
		bottom: 20px;
	}

	.catalogo-bienes-carrusel .slick-next {
		right: 0 !important;
		bottom: 20px;
	}

	#catalogo {
		grid-template-columns: repeat(4, 1fr);
	}

	.catalogo-item,
	.catalogo-item a {
		height: calc(100vw / 3 - 10em);
	}

	#destacados {
		grid-template-columns: 1fr;
		padding: var(--pm-responsive);
		padding: 0px;
	}

	.exposiciones-carrusel .slick-list {
		padding: 0;
	}

	.exposiciones-carrusel-item-wrap {
		grid-template-columns: 1fr;
		border-right: 0;
		padding: var(--pm-responsive);
		padding-bottom: var(--pm-block-xy);
	}

	#exposiciones .block-header,
	#catalogo-bienes .block-header {
		padding: var(--pm-responsive);
		padding-bottom: 0;
		position: relative;
		top: 0;
		left: 0;
		align-items: flex-start;
		flex-direction: column;
	}

	.exposiciones-carrusel-titulo {
		margin-bottom: 1em;
	}

	.exposiciones-carrusel-fecha {
		margin-bottom: 1em;
		bottom: 65px;
	}

	.exposiciones-carrusel .slick-next {
		top: -50px;
		right: clamp(20px, 4vw, 60px) !important;
		z-index: 9999;
	}

	.exposiciones-carrusel-imagen {
		order: 1;
		height: calc(100vw / 2);
	}

	.exposiciones-carrusel-content {
		order: 2;
	}

	.exposiones-btn {
		bottom: -12px;
		left: -12px;
	}

	.exposiones-btn::before {
		width: 25px;
		height: 25px;
	}

	#resultados-busqueda.view-grid {
		grid-template-columns: repeat(3, 1fr);
	}

	#resultados-busqueda.view-grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.view-grid .resultados-busqueda-imagen,
	#obras-relacionadas-slider .resultados-busqueda-imagen,
	.view-grid .resultados-busqueda-imagen a {
		height: calc(100vw / 3 - 3em);
	}

	#enlaces {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 2em 1em;
		padding: var(--pm-block-xy-min);
	}

	.enlaces-item img {
		height: 70px;
	}

	.footer-logo {
		max-width: 100%;
	}

	.sidebar-actions {
		width: 100%;
		grid-template-columns: 1fr;
	}

	.capa-botones-compartir {
		justify-content: center;
	}

	#capa-campos-masinfo {
		grid-template-columns: repeat(3, 1fr);
	}

	#sidebar-actions {
		display: grid;
		justify-content: space-between;
		align-items: center;
		grid-gap: 1em;
	}

	.galeria-item-grande img {
		max-height: calc(100vh - 108px);
		height: auto;
		object-position: center;
		object-fit: contain;
	}

	.destacadoPieza-titulo {
		font-size: clamp(25px, 2vw, 35px);
	}

	.destacadoPieza-texto {
		font-size: clamp(20px, 2vw, 20px);
	}

	.destacadoPieza:last-child {

		padding: clamp(38px, 4.5vw, 174px);
	}

	#masinfo-toggle {
		grid-column: span 3;
	}

	#ficha-datos,
	.content #ficha-datos {
		grid-template-columns: repeat(3, 1fr);
	}

	#capa-campos-masinfo {
		grid-column: span 3;
	}

	#main-footer {
		grid-template-columns: 1fr;
	}

	#footer-brand {
		border-right: 0;
		padding-bottom: var(--pm-block-xy);
		margin-bottom: 1rem;
	}



	#footer-nav {
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 2.5rem;
	}

	@media all and (max-width: 480px) {
		#footer-nav {
			grid-template-columns: 1fr;
			text-align: center;
			grid-gap: 2rem;
		}

		.footer-nav-col h3 {
			padding-bottom: 0.25rem;
			margin-bottom: 0.75rem;
			border-bottom: none;
		}

		.footer-nav-col ul li a::after {
			display: none;
		}
	}

	#galeria #lightgallery,
	#galeria #lightgalleryNoDown,
	#galeria #galeria-recursos {
		grid-gap: 2em;
	}

	.video-container .page-section {
		top: 100px;
		text-align: center;
	}





}

@media all and (max-width: 780px) {
	header {
		grid-gap: 1em;
		grid-template-columns: 175px auto;
	}

	#header-actions {
		padding-top: 0.6em;
		padding-bottom: 0;
	}

	.not-frontpage #header-actions {
		padding-top: 0.3em;
		padding-bottom: 0.6em;
	}

	#search-header,
	#resultados-busqueda-actions #search-header {
		grid-template-columns: 1fr;
	}

	#search-wrap {
		padding: var(--pm-responsive);
	}

	#search-content {
		grid-template-columns: 1fr;
	}

	#search-content .form-item {
		grid-column: span 1;
	}

	#advanced-toggle {
		height: 60px;
	}

	#catalogo {
		grid-template-columns: 1fr;
		padding: var(--pm-block-xy-min-min) var(--pm-responsive);
		grid-gap: 1em;
	}

	.catalogo-item,
	.catalogo-item a {
		height: calc(100vw / 2 - 10em);
	}

	#new-search-wrap {
		flex-direction: column;
		align-items: flex-start;
		gap: 2em;
	}

	#resultados-busqueda-filters {
		margin-bottom: var(--pm-responsive);
	}

	#resultados-busqueda-header {
		margin: var(--pm-responsive);
	}

	#resultados-busqueda {
		padding: var(--pm-responsive);
	}

	#resultados-busqueda-filters {
		justify-content: flex-start;
		flex-wrap: wrap;
	}

	#resultados-busqueda.view-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.view-grid .resultados-busqueda-imagen,
	#obras-relacionadas-slider .resultados-busqueda-imagen,
	.view-grid .resultados-busqueda-imagen a {
		height: calc(100vw / 2 - 2em);
	}

	#resultados-busqueda {
		grid-gap: 2em 0.5em;
	}

	.view-list .resultados-busqueda-item {
		grid-template-columns: 1fr;
	}

	.view-list .resultados-busqueda-item .resultados-busqueda-imagen {
		order: 1;
	}

	.view-list .resultados-busqueda-item .resultados-busqueda-texto {
		order: 2;
	}

	.view-list .resultados-busqueda-item {
		grid-gap: 1.5em;
	}

	.view-list .resultados-busqueda-datos {
		flex-direction: column;
	}

	.view-list .resultados-busqueda-datos {
		display: flex;
		gap: 0.8em;
	}

	.resultados-busqueda-datos-item h3 {
		margin: 0 0 0.4em;
	}

	#sidebar-actions {
		display: grid;
		justify-content: center;
		text-align: center;
		padding-bottom: var(--pm-block-xy-min);
	}

	#ficha-tags,
	.capa-botones-compartir {
		justify-content: flex-start;
	}

	#piezaDelMes,
	#visitasGuiadas,
	#bannerCicus {
		display: flex;
		flex-direction: column-reverse;
	}

	#bannerCicus .destacadoPieza:first-child,
	#bannerCicus .destacadoPieza:last-child {
		order: unset;
		clip-path: none;
		width: 100%;
	}

	.destacadoPieza {
		flex: 100%;
	}

	.destacadoPieza:first-child {
		padding: clamp(40px, 40vw, 171px);
		width: 100%;
		clip-path: none;
	}

	.block-header-bajo,
	.block-header {
		justify-content: space-around;
	}

	#creditos {
		gap: 5px;
		flex-direction: column;
	}

	.exposiciones-carrusel-imagen {
		order: 1;
		height: 100vw;
		margin-top: var(--pm-block-xy-min);
	}

	.content-header-grid .page-title,
	.content-header.no-section h1 {
		margin-top: 130px;
	}

	.title-bienes {
		margin-top: 100px;
	}

}

@media all and (max-width: 480px) {

	header {
		padding: var(--pm-block-xy-min-min) var(--pm-block-xy-min-min);
		grid-gap: 0em;
	}


	.frontpage header.full-width {
		width: 100%;
	}

	.slides-home-content {
		width: 88%;
	}

	.slides-home-content p {
		line-height: 1.2em;
	}

	.block-header {
		flex-wrap: wrap;
	}

	.catalogo-bienes-carrusel {
		padding-bottom: 30px;
	}

	.catalogo-item,
	.catalogo-item a {
		height: calc(100vw / 2 - 4em);
	}

	.ficha-datos-item-full {
		grid-column: span 1;
	}

	#ficha-exposiciones .block-content {
		padding-top: 0;
	}

	.ficha-exposiciones-grid {
		grid-template-columns: 1fr;
	}

	#footer-nav-second ul {
		flex-direction: column;
	}

	.destacados-item p {
		font-size: 40px;
	}

	#piezaDelMes {
		display: flex;
		flex-direction: column-reverse;
	}

	.destacadoPieza {
		flex: 100%;
	}

	.destacadoPieza:first-child {
		padding: clamp(40px, 40vw, 171px);
		width: 100%;
	}

	#masinfo-toggle {
		grid-column: span 2;
	}

	#ficha-datos,
	.content #ficha-datos {
		grid-template-columns: repeat(1, 1fr);
		display: flex;
		flex-direction: column;
	}

	#capa-campos-masinfo {
		grid-template-columns: repeat(1, 1fr);
		grid-column: span 2;
	}

	.content-wrap-bienes {
		padding: 0 var(--pm-block-xy-min) var(--pm-block-xy-min);
	}

	#footer-social h4 {
		font-size: 14px;
	}

	#galeria #lightgallery,
	#galeria #lightgalleryNoDown,
	#galeria #galeria-recursos {
		grid-gap: 1em;
	}

	.ficha-tags-item a {
		font-size: var(--text-small-mobile);
		line-height: 0px;
		padding: 6px;
	}

	#resultados-busqueda.view-grid {
		grid-template-columns: repeat(1, 1fr);
	}

	.view-grid .resultados-busqueda-imagen,
	#obras-relacionadas-slider .resultados-busqueda-imagen,
	.view-grid .resultados-busqueda-imagen a {
		height: calc(200vw / 3 - 3em);
	}

	#rrss {
		margin: 15px;
	}

	#footer-social h4 {
		display: none;
	}

	.content-header-bienes {
		padding: 0 var(--pm-block-xy-min);
	}

	#sidebar-actions-bienes {
		grid-gap: 0;
	}

	#header-actions {
		gap: 0.7em;
	}

	#branding img {
		margin-bottom: 0;
		max-height: 50px;
		width: 90%;
	}

	.content-header-grid .page-title,
	.content-header.no-section h1 {
		margin-top: 100px;
	}

	.title-bienes {
		margin-top: 100px;
		margin-bottom: 25px;
	}

}

.mb-0-5 {
	margin-bottom: 0.5em !important;
}

.detalleFondo .mb-0-5 {
	padding: 0 var(--pm-block-xy);
}

.mb-1 {
	margin-bottom: 1em !important;
}

.mb-2 {
	margin-bottom: 2em !important;
}

.mt-1 {
	margin-top: 1em !important;
}

.mt-2 {
	margin-top: 2em !important;
}

.ml-1 {
	margin-left: 1em !important;
}

.ml-2 {
	margin-left: 2em !important;
}

.ml-3 {
	margin-left: 3em !important;
}

.ml-4 {
	margin-left: 4em !important;
}

.ml-5 {
	margin-left: 5em !important;
}

.enlace-ficha-exposicion {
	text-decoration: none;
}


.cuatro-cols {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 2em;
}

.span-2-columnas {
	grid-column: span 2;
}

.span-4-columnas {
	grid-column: span 4;
}

.oculto {
	display: none !important;
}

h2.card-title {
	display: block;
	margin-top: 2em;
}

h2.card-title:first-child {
	margin-top: 1em;
}

@media all and (max-width: 980px) {
	.cuatro-cols {
		grid-template-columns: repeat(2, 1fr);
	}

	#interesado {
		order: 0;
	}

	.form-item {
		order: 1;
	}

	.destacados-item p {
		font-size: 40px;
	}

	.destacados-item {
		margin: 3px 0px;
	}
}

@media all and (max-width: 820px) {
	.cuatro-cols {
		grid-template-columns: 1fr;
		grid-gap: 1em;
	}

	.span-2-columnas,
	.span-4-columnas {
		grid-column: auto !important;
	}

	.form-section-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 5px;
		margin-bottom: 15px;
	}

	.solicitud-confirm-text {
		font-size: 0.95em !important;
	}

	#interesado {
		order: 0;
		grid-column: auto !important;
	}

	.form-item {
		order: 1;
	}

	.two-columns {
		grid-template-columns: 1fr;
	}

	#cenefa .page-title {
		position: relative;
		top: 90px;
		left: var(--pm-block-xy);
		max-width: 100%;
		margin-bottom: 0.5em;
		font-size: var(--title-page);
	}

	.content-header-grid {
		margin-top: 90px;
	}

	.search-wrap {
		padding: var(--pm-block-xy-min);
	}
}

/* MODIFICACIONES SELECT2 INICIO*/
.select2-container--default .select2-selection--single {
	appearance: none !important;
	cursor: inherit !important;
	outline: none !important;
	position: relative !important;
	background: url(../images/icons/arrow-down-simple-white.svg) var(--bloque) calc(100% - 1em) center / 20px auto no-repeat;
	background-color: #121215 !important;
	color: white !important;
	border: var(--linea) !important;
	height: 60px !important;
	line-height: 60px !important;
	padding: 0 20px !important;
	width: 100% !important;
	font-size: var(--text-general) !important;
	-webkit-appearance: none !important;
	font-family: var(--mulish) !important;
	font-weight: 300 !important;
}

.select2-selection__arrow {
	display: none !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	color: white !important;
	line-height: inherit !important;
	padding-left: 0 !important;
}

.select2-dropdown {
	background-color: #121215 !important;
}

.select2-search__field {
	line-height: inherit !important;
}

.select2-search--dropdown .select2-search__field {
	border-radius: 0 !important;
}

.select2-container--default .select2-selection--single {
	border-radius: 0 !important;
}

.select2-results {
	border-radius: 0 !important;
}

/* MODIFICACIONES SELECT2 FIN */

.imagenFormulario {
	width: 300px;
	height: 300px;
}

.imagenFormulario img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.imagenFormularioSolicitudSeleccionada {
	border: var(--linea-bold-gorda);
}

.contenedorImagenFormulario {
	width: 300px;
	height: 340px;
}

.btn-submit {
	border: var(--linea-bold);
}

.submit-actions {
	display: flex;
	justify-content: center;
	margin-top: 2em;
}

/* Obras exposiciones */

#obras-expo {
	display: grid;
	grid-gap: 3em 2em;
	padding: 0 0 var(--pm-block-xy);
}

#obras-expo.view-grid {
	grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 780px) {
	#obras-expo {
		grid-gap: 2em 0.5em;
	}

	#obras-expo.view-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 480px) {

	#obras-expo.view-grid {
		grid-template-columns: repeat(1, 1fr);
	}
}

/* Formulario enviado */

#formulario-enviado {
	text-align: center;
	padding: 180px var(--pm-responsive) var(--pm-responsive);
	background: url(../assets/web/images/icons/icon-form-submit.svg) transparent center top / auto 130px no-repeat;
}

#formulario-enviado p {
	text-align: center;
	font-family: var(--mulish) !important;
}

#contacto #main-content {
	width: 100%;
}

.pt-0 {
	padding-top: 0 !important;
}

.footer-logo img {
	max-height: 60px;
	min-height: 60px;
	object-fit: contain;
}

.exposicion-imagen-principal {
	height: auto;
}

.exposicion-imagen-principal a {
	height: auto !important;
}

#sidebar-actions {
	display: grid;
	grid-template-columns: auto 300px;
	justify-content: space-between;
	align-items: start;
	grid-gap: 1em;
	padding-top: var(--pm-block-xy-min);
}

.capa-botones-compartir {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	align-items: center;
	grid-gap: 0.6em;
}

@media all and (max-width: 980px) {
	#contacto #main-content {
		grid-template-columns: 1fr;
		display: flex;
		flex-direction: column-reverse;
	}

}

/** Magnifier**/
.magnifier {
	max-width: max-content;
	margin: 0px auto;
	position: relative;
	height: calc(100vh - 108px);
}

.magnifier:hover {
	cursor: none;
	/*  cursor: crosshair; */
}

.large {
	width: 175px;
	height: 175px;
	position: absolute;
	border-radius: 100%;
	box-shadow: 0 0 0 3px rgba(255, 255, 255, 1), 0 0 3px 3px rgba(0, 0, 0, 0.25), inset 0 0 40px 2px rgba(255, 255, 255, 0.25);
	display: none;
}

.small {
	display: block;
	height: calc(100vh - 108px);
	/*width:auto;*/
	object-fit: contain;
}

/***/

.anchoTotal {
	width: 100% !important;
}

/* Share button modal */

#share-button-wrap {
	position: relative;
	height: 28px;
	/*margin-right: 30px;
	margin-bottom: 20px;*/
	margin: var(--pm-block-xy-min-min);
}

.capa-botones-compartir {
	overflow: hidden;
	transition: 0.2s;
	opacity: 0;
	z-index: -1;
}

.capa-botones-compartir .fa-brands {
	font-size: 28px;
}

.fa-x-twitter:hover,
.fa-linkedin:hover,
.fa-whatsapp:hover,
.fa-telegram:hover,
.fa-file-pdf:hover,
.fa-facebook:hover {
	color: var(--destacado);
}

.share-button-input {
	display: none;
}

.share-button-input:checked~.capa-botones-compartir {
	opacity: 1;
	z-index: 9;
	margin-right: 40px;
}

.share-button-input:checked~.capa-botones-compartir::before,
.share-button-input:checked~.capa-botones-compartir li {
	transition: 0.3s 0.15s;
	opacity: 1;
	transform: translateY(0);
}

.share-button-toggler,
.capa-botones-compartir {
	position: absolute;
	right: 0;
	width: inherit;
	height: inherit;
}

.share-button-toggler {
	cursor: pointer;
	z-index: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 28px;
	height: 28px;
	background: url(../images/icons/icon-share.svg) transparent center / contain no-repeat;
}

.share-button-toggler:hover {
	background: url(../images/icons/icon-share-destacado.svg) transparent center / contain no-repeat;
}

.share-button-input:checked~.share-button-toggler {
	background: url(../images/icons/icon-close.svg) transparent center / 22px no-repeat;
}

.share-button-input:checked~.share-button-toggler:hover {
	background: url(../images/icons/icon-close-destacado.svg) transparent center / 22px no-repeat;
}

@media all and (max-width: 1320px) {
	#share-button-wrap {
		/* width: calc(100vw - clamp(40px, 8vw, 120px)); */
		width: 100%;
		order: 1;
	}

	#noticias-detalle-destacados .capa-botones-compartir {
		margin-right: 57px;
		right: 0;
		width: auto;

	}


	#noticias-detalle-destacados+#share-wrap #share-button-wrap {
		/* width: calc(100vw - clamp(40px, 8vw, 120px)); */
		width: inherit !important;
		margin: 0 !important;
	}

	#sidebar-actions {
		padding-bottom: 0;
		grid-template-columns: 1fr !important;
	}

	#ficha-tags {
		order: 2;
	}

	.destacados-item p {
		font-size: 40px;
	}
}


.grupoLocalizacionesSeleccionado {
	border: 4px solid #eee;
}

.filtro-destacado {
	font-size: var(--title-page-big);
	font-weight: var(--bold);
	position: absolute;
	top: 270px;
	max-width: 90%;
	z-index: 9;
	margin: 0;
	color: var(--destacado);
	text-shadow: 4px 4px var(--base);
	text-transform: uppercase;
	line-height: 1em;
}

.filtro-destacado-descripcion {
	color: white !important;
	white-space: pre-line;
}

.text-left {
	text-align: left !important;
}

/* Educa */

#page-educa #featured-bottom .img-center {
	margin-top: var(--pm-block-xy);
}

#page-educa #featured-bottom .img-center .btn {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 9;
}

#page-educa #featured-bottom h2 {
	font-size: var(--title-section);
	line-height: 1.1em;
}

#sidebar-actions.sidebar-actions-flex {
	width: 100%;
	display: flex;
	justify-content: flex-end;
}

#comprar-entradas {
	display: block;
	margin: auto;
	text-align: center;
}

#comprar-entradas .btn,
.btn-reservar-entradas {
	display: inline-block;
	margin: auto;
	background-color: var(--bloque);
	color: var(--destacado);
}

#comprar-entradas .btn:hover,
.btn-reservar-entradas:hover {

	background-color: var(--destacado);
	color: var(--bloque);
}

.btn-reservar-entradas i {
	color: inherit !important;
}

.actions-center {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1em;
}

/* Selector de idiomas */

.languague-switcher {
	z-index: 9;
	display: flex;
	flex-direction: row;
	gap: 1em;
}

.languague-switcher-responsive {
	display: none;
	position: relative;
	z-index: 9;
	flex-direction: row;
	gap: 0.5em;
	align-items: center;
}

.languague-switcher-item a,
.languague-switcher-item a:hover {
	text-decoration: none;
}

.languague-switcher-item img {
	width: 20px;
	height: 20px;
}

/* Aljamir - Cookies */

#aljamirCookiesDiv {
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, 0.8);
}

#aljamirCookiesDiv .modal-dialog {
	width: 90%;
	max-width: 960px;
	overflow: auto;
	padding: 30px;
	height: auto;
	max-height: 90%;
	border: var(--linea-bold);
	background: var(--bloque);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 999;
}

#aljamirCookiesDiv .modal-title {
	margin-top: 0;
}

#aljamirCookiesDiv .modal-body .container-fluid {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 30px 0;
}

#aljamirCookiesDiv .modal-body .container-fluid .mt-2 {
	margin: 0 !important;
}

#aljamirCookiesDiv .modal-body .container-fluid .categoriaCookieContenedor {
	border: 0;
	margin: 0;
}

#aljamirCookies {
	padding: 20px 0;
	border-top: 1px solid white;
	border-bottom: 1px solid white;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

#aljamirCookies .fa {
	color: white;
}

#aljamirCookies .d-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1em;
	background: #25252b;
	padding: 0.3em 0.5em;
	margin-bottom: 10px;
}

#aljamirCookiesDiv .modal-footer {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 1em;
}

#aljamirCookiesDiv .row.collapse,
#aljamirCookiesDiv .row.collapse .row .col {
	display: flex;
	flex-direction: column;
	gap: 1em;
}

#aljamirCookiesDiv .row.collapse .row .col {
	gap: 0.5em;
}

#aljamirCookiesDiv .row.collapse:not(.show) {
	display: none;
}

/* ocultar app Vue pre-render */
[v-cloak] {
	display: none;
}

.recursos-item {
	text-align: center;
}

.recursos-item iframe {
	width: 100%;
	height: 450px;
}

.recursos-item audio {
	width: 100%;
	height: 100px;
}

.recursos-item p {
	margin-top: 10px;
	font-size: 14px;
	color: #ffffff;
	text-align: left;
}

.recursos-item:nth-child(n + 4) {
	display: none;
}

.recursos-item h4 {
	text-align: left;
}

.speaker-icon {
	height: 315px;
}

/* Scroll Up */

.scrolltop-wrap {
	position: fixed;
	right: 1em;
	bottom: 2em;
	z-index: 999;
	opacity: 0;
	transition: all .2s;
	outline: 1px solid transparent;
	outline-offset: 3px;
	border-radius: 60px;
}

.scrolltop-wrap:hover {
	outline: 1px solid white;
}

.scrolltop-wrap.active {
	opacity: 1;
}

.scrolltop-wrap #scrolltop-bg {
	fill: var(--destacado);
}

.scrolltop-wrap #scrolltop-arrow {
	fill: black;
}

.scrolltop-wrap a:hover #scrolltop-bg {
	fill: var(--destacado);
}

.scrolltop-wrap a:hover #scrolltop-arrow {
	fill: black;
}

@supports (-moz-appearance: meterbar) {
	.scrolltop-wrap {
		clip: rect(0, 3rem, auto, 0);
	}
}

.scrolltop-wrap a {
	display: block;
}

.scrolltop-wrap a svg {
	display: block;
	border-radius: 50%;
	width: 100%;
	height: 100%;
}

.scrolltop-wrap a svg path {
	transition: all 0.1s;
}

.scrolltop-wrap a #scrolltop-arrow {
	transform: scale(0.66);
	transform-origin: center;
}

@media print {
	.scrolltop-wrap {
		display: none !important;
	}
}

@media (max-width: 1296px) {
	.languague-switcher {
		display: none;
	}

	.languague-switcher-responsive {
		display: flex;
		flex-direction: row;
		gap: 1em;
		align-items: center;
	}

	.content-bienes {
		flex-direction: column;
	}

	.title-denominacion,
	.title-denominacion-exposicion {
		margin: 0.2em 0 1em 0;
	}

	#ficha-tags-bienes {
		flex-direction: row;
	}

	.share-button-toggler {
		margin: 0 20px;
	}
}

@media (max-width: 400px) {
	.languague-switcher-responsive {
		gap: 0.7em;
	}
}

#home .languague-switcher {
	right: -48px;
}

/* Aljamir - Cookies */

#aljamirCookiesDiv {
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, 0.8);
}

#aljamirCookiesDiv .modal-dialog {
	width: 90%;
	max-width: 960px;
	overflow: auto;
	padding: 30px;
	height: auto;
	max-height: 90%;
	border: var(--linea-bold);
	background: var(--bloque);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 999;
}

#aljamirCookiesDiv .modal-title {
	margin-top: 0;
}

#aljamirCookiesDiv .modal-body .container-fluid {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 30px 0;
}

#aljamirCookiesDiv .modal-body .container-fluid .mt-2 {
	margin: 0 !important;
}

#aljamirCookiesDiv .modal-body .container-fluid .categoriaCookieContenedor {
	border: 0;
	margin: 0;
}

#aljamirCookies {
	padding: 20px 0;
	border-top: 1px solid white;
	border-bottom: 1px solid white;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

#aljamirCookies .fa {
	color: white;
}

#aljamirCookies .d-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1em;
	background: #25252b;
	padding: 0.3em 0.5em;
	margin-bottom: 10px;
}

#aljamirCookiesDiv .modal-footer {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 1em;
}

#aljamirCookiesDiv .row.collapse,
#aljamirCookiesDiv .row.collapse .row .col {
	display: flex;
	flex-direction: column;
	gap: 1em;
}

#aljamirCookiesDiv .row.collapse .row .col {
	gap: 0.5em;
}

#aljamirCookiesDiv .row.collapse:not(.show) {
	display: none;
}

/* Noticias */

#noticias-grid {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-gap: 3rem;
	justify-content: space-between;
	margin-top: var(--pm-block-xy);
}

.noticias-item {
	position: relative;
	grid-column: span 3;
	display: flex;
	flex-direction: column;
	gap: 2rem;
	transition: background-color 0.2s;
	padding: 10px;
}



.noticias-item:hover,
.noticias-relacionadas-item:hover {
	background-color: rgba(255, 255, 255, 0.1);

}

.noticias-item:hover .noticias-imagen,
noticias-relacionadas-item:hover .noticias-relacionadas-imagen {
	padding-bottom: 0;
	transform: scale(1.02);
	opacity: 0.7;
}

.noticias-imagen {
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.noticias-item:nth-child(n + 3) .noticias-imagen {
	aspect-ratio: 4/3;
}

.noticias-imagen img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.noticias-item .noticias-imagen:hover {
	padding-bottom: 0;
	transform: scale(1.02);
	opacity: 0.7;
}

.noticias-contenido,
.noticias-texto {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 1.5rem;
}

.noticias-fecha-categoria {
	display: flex;
	justify-content: flex-start;
	gap: 0.6em;
	align-items: center;
	font-size: var(--text-small);
}

.noticias-fecha {
	flex-shrink: 0;
	/* Evita que se reduzca */
	white-space: nowrap;

}

.noticias-categoria {
	display: flex;
	align-items: center;
	gap: 0.6em;
}

.noticias-categoria::before {
	content: "·";
}

.noticias-contenido h3 {
	font-size: clamp(25px, 1.6vw, 30px);
	line-height: 1.2em;
	margin: 0;
	font-weight: var(--semibold);
	color: var(--destacado);
}

.noticias-contenido p {
	font-size: var(--text-small);
	line-height: 1.3em;
	text-align: left !important;
}

.noticias-item:nth-child(1) {
	grid-column: span 8;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	align-items: stretch;
	padding: 3rem;
}

.noticias-item:nth-child(1)::before,
.noticias-item:nth-child(1)::after {
	content: "";
	position: absolute;
	top: 0;
	height: 100%;
}

.noticias-item:nth-child(1)::before {
	left: 0;
	z-index: 3;
	width: 100%;
	border: var(--linea);
	transition: all 0.2s;
}

.noticias-item:nth-child(1):hover::before {
	border-color: transparent;
}

/*.noticias-item:nth-child(1)::after {
	right: 0;
	z-index: 0;
	width: 35%;
	background: var(--bloque);
}*/

.noticias-item:nth-child(1) .noticias-imagen {
	height: 100%;
	order: 2;
}

.noticias-item:nth-child(1) .noticias-texto {
	padding-right: 5rem;
	order: 1;
	position: relative;
}

.noticias-item:nth-child(1) .noticias-texto::after {
	content: "";
	width: 30px;
	height: 30px;
	background: url(../images/icons/icon-mas.svg) transparent center / contain no-repeat;
}

.noticias-item:nth-child(1) h3 {
	font-size: clamp(26px, 1.6vw, 32px);
	color: var(--destacado);
}

.noticias-item:nth-child(2) {
	grid-column: span 4;
	border: var(--linea);
	transition: all 0.2s;
}

.noticias-item:nth-child(2):hover {
	border-color: transparent;
}

.noticias-item:nth-child(2) .noticias-imagen {
	aspect-ratio: 4/2;
}

.noticias-item:nth-child(2) .noticias-contenido {
	padding: 0 2rem 2rem;
}

#noticias-grid #form_search {
	grid-column: span 12;
	padding: var(--pm-block-xy-min) 0;
}

#noticias-grid #form_search #search-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#noticias-grid #form_search #search-header #search-header-text {
	width: 60%;
	max-width: 700px;
}

/* #noticias-grid #form_search #search-header #search-header-text #busqueda:focus + #submit {
	display: none;
} */

input[type="search"]::-webkit-search-cancel-button {
	display: none;
}

#noticias-grid #form_search #search-header #categorias-noticias,
#resultados-busqueda-actions #form_search #search-header #categorias-exposiciones {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 1em;
	flex-flow: row nowrap;
}

#noticias-grid #form_search #search-header #categorias-noticias label,
#resultados-busqueda-actions #form_search #search-header #categorias-exposiciones label {
	font-size: var(--title-subsection);
	margin: 0 !important;
}

#categorias-noticias select {
	padding: 0 50px 0 20px;
}

.content-header-grid {
	margin-top: var(--pm-block-xy);
}

.content-header-grid .page-title {
	text-transform: uppercase;
}

@media all and (max-width: 980px) {
	#noticias-grid {
		grid-gap: 5rem 3rem;
	}

	.noticias-item {
		grid-column: span 4;
	}

	.noticias-item:nth-child(1) {
		grid-column: span 12;
	}

	.noticias-item:nth-child(2) {
		border: 0;
	}

	.noticias-item:nth-child(2) .noticias-imagen {
		aspect-ratio: 4/3;
	}

	.noticias-item:nth-child(2) .noticias-contenido {
		padding: 0;
	}

	.noticias-fecha-categoria {
		flex-direction: column;
		align-items: flex-start;
	}

	.noticias-categoria::before {
		display: none;
	}

	#noticias-detalle-destacados {
		flex-direction: column;
	}

}

@media all and (max-width: 780px) {
	.content-header-grid {
		grid-template-columns: 1fr;
	}

	.noticias-item:nth-child(1) .noticias-texto {
		padding-right: 0;
	}

	.noticias-item,
	.noticias-item:nth-child(2) {
		grid-column: span 6;
	}

	.noticias-item:nth-child(1) {
		grid-template-columns: 1fr;
		order: -2 !important;
	}

	.noticias-item:nth-child(1) .noticias-imagen {
		height: auto;
		aspect-ratio: 4/3;
		order: 1;
	}

	.noticias-item:nth-child(1) .noticias-contenido {
		order: 2;
		z-index: 9;
	}

	/*.noticias-item:nth-child(1)::before {
		width: 100%;
		height: 55%;
		top: inherit;
		bottom: 0;
	}

	.noticias-item:nth-child(1)::after {
		width: 100%;
		height: 45%;
	}*/

	#noticias-grid #form_search {
		order: -1 !important;
		padding: 0;
	}

	#noticias-grid #form_search #search-header {
		flex-direction: column;
		gap: 20px;
	}

	#noticias-grid #form_search #search-header #search-header-text,
	#noticias-grid #form_search #search-header #categorias-noticias {
		width: 100%;
	}

	#noticias-grid #form_search #search-header #categorias-noticias {
		flex-direction: column;
		align-items: flex-start;
	}

	#resultados-busqueda-actions #resultados-busqueda-actions-switch {
		display: none;
	}
}

@media (max-width: 480px) {
	#noticias-grid {
		gap: 4rem 0;
		display: flex;
		flex-direction: column;
	}

	.noticias-item:nth-child(1) {
		padding: 1.5rem;
	}

	/*.noticias-item:nth-child(1)::before {
		height: 70%;
	}

	.noticias-item:nth-child(1)::after {
		height: 30%;
	}*/

	.share-button-input:checked~.capa-botones-compartir {
		margin-right: 60px;
	}

}

/* Noticias - Detalle */

#cenefa-noticias {
	position: relative;
	width: calc(100% - var(--pm-block-xy) * 2);
	height: 75vh;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 20px;
	padding: var(--pm-block-xy);
	margin: var(--pm-block-xy-min) var(--pm-block-xy) var(--pm-block-xy-min);
}

#cenefa-noticias::before {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	content: "";
	background: radial-gradient(circle at bottom left, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.4) 35%, rgba(0, 0, 0, 0) 65%);
}

#cenefa-noticias .page-title {
	max-width: 60%;
	position: relative;
	z-index: 9;
	margin: 0;
	font-size: var(--title-page);
	text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.9), 1px 1px 2px rgba(0, 0, 0, 0.9);
}

.cenefa-entradilla {
	z-index: 9;
	max-width: 60%;
	text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.9), 1px 1px 2px rgba(0, 0, 0, 0.9);
}

#noticias-detalle-destacados {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 2rem;
	padding: 0 var(--pm-block-xy);
}

#noticias-detalle-destacados+#share-wrap {
	display: flex;
	justify-content: flex-start;
	padding: 0 calc(var(--pm-block-xy) + 28px);
}

#noticias-detalle-destacados+#share-wrap .capa-botones-compartir {
	right: inherit;
	left: 0;
}

#noticias-detalle-destacados+#share-wrap .share-button-input:checked~.capa-botones-compartir {
	margin-left: 20px;
}

#noticias-detalle-fecha-categoria {
	display: flex;
	justify-content: flex-start;
	gap: 0.6em;
	align-items: center;
}

#noticias-detalle-fecha {
	color: var(--destacado);
}

#noticias-detalle-categoria a {
	padding: 10px;
	background-color: var(--destacado);
	color: var(--bloque);

}

#noticias-detalle-categoria {
	display: flex;
	align-items: center;
	gap: 0.6em;
}

/*#noticias-detalle-categoria::before {
	content: "Â·";
}*/

#noticias-detalle-contenido {
	width: 90%;
	max-width: 1600px;
	margin: auto;
	padding: var(--pm-block-xy-min) 0;
}

#noticias-detalle-contenido h2,
#noticias-detalle-contenido h3 {
	margin: 1.5em 0 1em;
}

#noticias-detalle-contenido h2:first-child {
	margin-top: 0;
}

#noticias-detalle-contenido p {
	margin-bottom: 1.2em;
}

#noticias-detalle-contenido p:last-child {
	margin-bottom: 0;
}

@media (max-width: 1320px) {

	#noticias-detalle-categoria #share-button-wrap {
		position: relative;
		height: 28px;
		margin-bottom: 20px;
	}

	#noticias-detalle-categoria #share-button-wrap {
		width: calc(80vw - clamp(40px, 8vw, 120px)) !important;
		margin: auto;
	}
}

@media (max-width: 980px) {

	#noticias-detalle-categoria #share-button-wrap {
		position: relative;
		height: 28px;
		margin-bottom: 20px;
	}


	.share-button-input:checked~.capa-botones-compartir {
		margin-right: 55px;
	}

}

@media (max-width: 768px) {
	#noticias-detalle-contenido img {
		max-width: 100% !important;
		width: 100% !important;
		height: auto;
	}

	#cenefa-noticias {
		margin-top: 2rem !important;
	}

	#noticias-detalle-contenido iframe {
		max-width: 100% !important;
		width: 100% !important;
		height: 400px;
	}

}

#noticias-detalle-galeria {
	border-top: var(--linea);
	padding: var(--pm-block-xy-min) 0;
}

#noticias-detalle-galeria .block-title {
	width: 90%;
	max-width: 1600px;
	margin: auto;
	padding-bottom: var(--pm-block-xy-min);
}

.galeria-wrap {
	width: calc(90% + 40px);
	max-width: calc(1600px + 40px);
	margin: auto;
	position: relative;
}

.galeria-wrap::before,
.galeria-wrap::after {
	content: "";
	position: absolute;
	top: 0;
	z-index: 9;
	width: 20px;
	height: 100%;
	background: var(--base);
}

.galeria-wrap::before {
	left: 0;
}

.galeria-wrap::after {
	right: 0;
}

.galeria-wrap .galeria-item,
.galeria-wrap .galeria-item a {
	height: 100% !important;
}

.galeria-wrap .slick-carrusel-2-arrow {
	padding-bottom: 4rem;
}

.galeria-wrap .slick-slide {
	padding: 0 20px;
}

.galeria-wrap .slick-slide>div {
	/* height: 60vh; */
	aspect-ratio: 4/3;
	overflow: hidden;
}

.galeria-wrap .slick-slide>div img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.galeria-wrap .slick-prev,
.galeria-wrap .slick-next {
	bottom: 0 !important;
	top: inherit !important;
	transform: none !important;
	z-index: 999;
}

.galeria-wrap .slick-prev {
	left: 20px !important;
}

.galeria-wrap .slick-next {
	right: 20px !important;
}

/* Noticias relacionadas */

#noticias-relacionadas {
	padding: var(--pm-block-xy-min) var(--pm-block-xy);
	margin: var(--pm-block-xy) 0;
	background: var(--bloque);
}

#noticias-relacionadas .block-header {
	margin: 0 0 var(--pm-block-xy);
	padding: 0;
}

#noticias-relacionadas .block-title {
	font-size: var(--title-page);
}

#noticias-relacionadas-wrap {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 5rem;
}

.noticias-relacionadas-item {
	display: grid;
	grid-template-columns: 8fr;
	grid-gap: 3rem;
	height: 60vh;
	position: relative;
	padding: var(--pm-block-xy-min);

}

.noticias-relacionadas-contenido,
.noticias-relacionadas-texto {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 1rem;
}

.noticias-relacionadas-imagen {
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.noticias-relacionadas-imagen img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.noticias-relacionadas-fecha-categoria {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	gap: 0.6em;
	align-items: flex-start;
	font-size: var(--text-small);
}

.noticias-relacionadas-item h3 {
	font-size: clamp(25px, 1.6vw, 30px);
	line-height: 1.2em;
	margin: 0;
	font-weight: var(--semibold);
	color: var(--destacado);
}

.noticias-relacionadas-item p {
	font-size: var(--text-small);
	line-height: 1.3em;
	text-align: left !important;
}

.video-container {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.video-container video {
	height: 650px;
	width: 100%;
	object-fit: cover;
}

.video-container.youtube-video {
	height: 750px;
	background: black;
	margin: 20px 0;
}

.video-foreground {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.video-foreground iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	transform: translate(-50%, -50%);
}

@media (min-aspect-ratio: 16/9) {
	.video-foreground iframe {
		height: 200%;
	}
}

@media (max-aspect-ratio: 16/9) {
	.video-foreground iframe {
		width: 200%;
	}
}


@media all and (max-width: 1100px) {
	.noticias-relacionadas-item {
		display: flex;
		flex-direction: column;
		gap: 2rem;
		height: auto;
	}

	.noticias-relacionadas-contenido {
		justify-content: flex-start;
		order: 2;
	}

	.noticias-relacionadas-imagen {
		order: 1;
		aspect-ratio: 16/9;
	}

	#noticias-detalle-destacados #ficha-tags {
		padding: 0;
	}

	.filtro-destacado {
		position: relative;
		top: 100px;
		left: 0;
		max-width: 100%;
		margin-bottom: 0.5em;
		line-height: 1em;
		font-size: var(--title-page);
	}
}

@media all and (max-width: 780px) {
	#cenefa-noticias {
		width: 90%;
		margin: 0 auto var(--pm-block-xy);
	}

	#noticias-relacionadas-wrap {
		display: grid;
		grid-template-columns: 1fr;
		grid-gap: 2rem;
	}

	#cenefa-noticias .page-title,
	.cenefa-entradilla {
		max-width: 100%;
	}

	#cenefa-noticias {
		justify-content: flex-end;
		gap: 1rem;
	}

	#noticias-detalle-destacados {
		padding: 0;
		width: 90%;
		margin: auto;
	}

	#noticias-detalle-destacados #ficha-tags {
		gap: 0.8em;
	}

	#noticias-detalle-destacados+#share-wrap {
		padding: 0;
		margin-top: 2em !important;
		width: 90%;
		margin: auto;
	}

	#noticias-detalle-destacados+#share-wrap #share-button-wrap .share-button-toggler {
		right: inherit;
		left: 0;
	}

	#noticias-detalle-destacados+#share-wrap .capa-botones-compartir {
		margin-right: 0 !important;
		max-width: 200px !important;
	}

	#noticias-detalle-fecha-categoria {
		justify-content: flex-start;
		align-items: flex-start;
	}

	#noticias-detalle-categoria::before {
		display: none !important;
	}

	.video-container .page-section {
		top: 50px;
		right: 80px;
		text-align: center;
	}

	.video-container video {
		height: auto;
	}

	.video-container {
		margin-top: 50px;
	}



}



@media all and (max-width: 480px) {

	#galeria #galeria-recursos {
		grid-template-columns: repeat(1, 1fr);
		padding: var(--pm-block-xy) var(--pm-responsive);
	}

	.enlaces-item img {
		height: 50px;
	}

	.cenefa-imagen {
		height: 50vh;
	}

	.speaker-icon {
		height: 170px;
	}

	#search {
		font-size: var(--text-small-mobile);
	}

	.block-title {
		font-size: var(--title-page);
	}

	.detalleFondo img {
		height: auto;
	}

	#noticias-detalle-fecha-categoria {
		flex-direction: column;
	}

	.video-container video {
		height: auto;
	}

	/*#toggle-search {
		display: none;
	}*/

	.video-container.youtube-video {
		height: 350px;
	}

}

@media all and (max-width: 320px) {
	#cenefa-noticias .page-title {
		font-size: var(--title-section);
	}
}





/* Visitas Guiadas
***********************/

#visitas-guiadas {
	padding: var(--pm-block-xy);
}

.visitas-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 3rem;
	padding: var(--pm-block-xy);
}

.visita-card {
	background: var(--bloque);
	border: var(--linea);
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

.visita-card:hover,
.conservacion-card:hover {
	transform: translateY(-5px);
	border-color: var(--destacado);
}

.visita-imagen {
	height: 250px;
	position: relative;
	transition: all 0.3s ease;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.visita-card:nth-child(1) .visita-imagen {
	background-image: url(../images/content/pag-visitas-guiadas.jpg);
}

.visita-card:nth-child(2) .visita-imagen,
#featured-bottom .visita-card:nth-child(1) .visita-imagen {
	background-image: url(../images/content/visitaRectorado.jpg);
}

.visita-card:nth-child(3) .visita-imagen,
#featured-bottom .visita-card:nth-child(2) .visita-imagen {
	background-image: url(../images/content/visitaPanteon.jpg);
}

.visita-card:nth-child(4) .visita-imagen {
	background-image: url(../images/content/visitaBiblioteca.jpg);
}

.visita-card:hover .visita-imagen,
.conservacion-card:hover .conservacion-imagen {
	transform: scale(1.05);
}

.visita-contenido,
.conservacion-contenido {
	padding: 2rem;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	justify-content: center;
	align-items: center;
}

.visita-contenido h2,
.conservacion-contenido h2 {
	font-size: var(--title-subsection);
	color: var(--destacado);
	margin: 0;
	text-align: center;
}

.visita-contenido p {
	font-size: var(--text-small);
	line-height: 1.4;
	margin: 0;
}

.visita-info {
	display: flex;
	gap: 2rem;
	color: var(--texto-atenuado);
	font-size: var(--text-small);
}

.visita-info i {
	margin-right: 0.5rem;
}

.visita-card .btn {
	align-self: center;
	margin-top: auto;
}

#visitasGuiadasTriptico {
	display: flex;
	flex-direction: row;
	height: 550px;
	overflow: hidden;
	padding: 0 0 var(--pm-block-xy) 0;
}

.triptico-item {
	flex: 1;
	position: relative;
	background-size: cover;
	background-position: center;
	transition: flex 0.8s cubic-bezier(0.16, 1, 0.3, 1);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 40px;
	box-sizing: border-box;
}

.triptico-item:hover {
	flex: 1.8;
}

.triptico-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.1) 100%);
	z-index: 1;
	transition: background 0.6s ease;
}

.triptico-item:hover .triptico-overlay {
	background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.45) 50%, rgba(0, 0, 0, 0.15) 100%);
}

.triptico-content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	align-items: flex-start;
	text-align: left;
	width: 100%;
}

.triptico-title {
	font-size: clamp(24px, 2.2vw, 36px);
	font-weight: var(--bold);
	color: var(--destacado);
	margin: 0;
	text-transform: uppercase;
	font-family: var(--outfit) !important;
}

.triptico-desc {
	font-size: clamp(14px, 1.2vw, 16px);
	color: #ffffff;
	margin: 0;
	max-width: 90%;
	opacity: 0;
	transform: translateY(20px);
	max-height: 0;
	overflow: hidden;
	transition: opacity 0.5s cubic-bezier(0.25, 1, 0.5, 1), transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), max-height 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}

.triptico-item:hover .triptico-desc {
	opacity: 1;
	transform: translateY(0);
	max-height: 100px;
	margin-top: 5px;
}

.triptico-item .btn-black {
	display: inline-block;
	text-decoration: none;
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0.1s, transform 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0.1s, background-color 0.3s ease, color 0.3s ease;
}

.triptico-item:hover .btn-black {
	opacity: 1;
	transform: translateY(0);
}

@media (max-width: 1023px) {
	#visitasGuiadasTriptico {
		display: flex;
		flex-direction: column;
		height: auto;
		gap: 1.5rem;
		margin: var(--pm-block-y) 0;
		padding: 0 var(--pm-block-xy-min);
	}
	.triptico-item {
		height: 280px;
		flex: none !important;
		padding: 30px;

	}
	.triptico-desc {
		opacity: 1 !important;
		transform: none !important;
		max-height: none !important;
		display: block !important;
		margin-top: 5px;
	}
	.triptico-item .btn-black {
		opacity: 1 !important;
		transform: none !important;
	}
}

/* Responsive */
@media (max-width: 1024px) {
	.visitas-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 980px) {
	/* Estilos responsivos de visitas guiadas antiguas eliminados */
}

@media (max-width: 768px) {
	.visitas-grid,
	#featured-bottom .visitas-grid {
		grid-template-columns: 1fr;
		padding: var(--pm-block-xy-min);
	}
}

@media (max-width: 480px) {
	/* Estilos responsivos de visitas guiadas antiguas eliminados */
}

.btn-visitas-mobile {
	display: none;
}



/* Contenido de la visita */

#visitas {
	display: flex;
	gap: 20px;
	align-items: flex-start;
	justify-content: center;
}

#visitas article {
	flex: 50%;
}

#visitas h2,
#conservacion h2 {
	font-size: var(--title-page);
}

.visita-info-wrap {
	padding: 0 var(--pm-block-xy);
}

.visita-detalles p {
	margin-bottom: 1.5rem;
	line-height: 1.6;
}

.visita-detalles strong {
	color: var(--destacado);
	font-weight: var(--semibold);
}

#visitas .visita-detalles ul {
	list-style: none;
	padding: 0;
	margin: 0 0 1.5rem 1.2rem;
	list-style-type: none;
}

#visitas .visita-detalles ul li {
	position: relative;
	padding-left: 1.5rem;
	margin-bottom: 0.8rem;
	line-height: 1.6;
	font-weight: var(--regular);
}

#visitas .block-header,
#conservacion .block-header {
	justify-content: center;
	padding: 1.5em 0;
}

.visita-detalles ul li::before {
	content: "•";
	color: var(--destacado);
	position: absolute;
	left: 0;
}

.visita-detalles span {
	font-size: var(--text-small);
	font-weight: var(--light);
}

/* Nota importante */
.visita-nota {
	background: var(--bloque);
	border: 1px solid var(--destacado);
	padding: 2rem;
	margin: 3rem 0;
}

.visita-nota p {
	margin-bottom: 1rem;
	line-height: 1.6;
}

.visita-nota p:last-child {
	margin-bottom: 0;
}

.visita-nota strong {
	color: var(--destacado);
	font-weight: var(--bold);
}

/* Botones */
.visita-botones {
	margin-top: 3rem;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: var(--pm-block-xy);
}

.visita-botones .btn {
	display: inline-block;
	min-width: 200px;
	text-align: center;
}

.form-info {
	margin: var(--pm-block-y);
}

/* Iconos en la informaciÃ³n de la visita */
.visita-detalles p i,
.visita-nota p i {
	color: var(--destacado);
	width: 20px;
	margin-right: 10px;
}

.btn i {
	margin-right: 8px;
}

/* SecciÃ³n de cancelaciÃ³n
***********************/
.cancelacion-section {
	padding: var(--pm-block-xy) 0;
	background: var(--bloque);
}

.cancelacion-section h2 {
	font-size: var(--title-page);
}

.cancelacion-content {
	padding: 0 clamp(40px, 5vw, 80px) 3em;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.cancelacion-content p {
	margin-bottom: 2rem;
	line-height: 1.6;
}

.cancelacion-actions {
	text-align: center;
	margin-top: 2rem;
}

.cancelacion-actions .btn {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 1rem 2rem;
}

.cancelacion-actions .btn i {
	font-size: 1.2em;
}

/* Responsive */

@media (max-width: 980px) {
	.column {
		display: flex;
		flex-direction: column;
	}
}

@media (max-width: 768px) {
	.visita-info-wrap {
		padding: 0 var(--pm-responsive);
	}

	.visita-detalles,
	.visita-nota {
		max-width: 100%;

	}

	#main-content .visita-detalles p {
		text-align: start;
	}

	#visitas {
		flex-direction: column;
	}

	#visitas article {
		width: 100%;
	}

	.cancelacion-section {
		margin-top: 2rem;
		padding: var(--pm-responsive);
	}

	.cancelacion-content {
		padding: 0;
	}
}

@media (max-width: 480px) {

	.visita-botones .btn {
		width: 100%;
		min-width: auto;
	}
}

/*BreadCrumbs*/
#resultados-busqueda-header #breadcrumb {
	padding: 0;
	margin-bottom: 1rem;
}

#breadcrumb {
	display: flex;
	flex-direction: row;
	background-color: transparent;
	padding: 0 var(--pm-block-xy);
	margin-bottom: 2rem;
	list-style: none;
	/* Sin viÃ±etas */
	font-size: var(--text-breadcrumbs);
}

.noPadd {
	padding: 0 !important;

}


#breadcrumb .breadcrumb-item+.breadcrumb-item::before {
	content: ">";
	padding: 0 0.5rem;
	font-weight: var(--semibold);
}

#breadcrumb .breadcrumb-item {
	font-weight: var(--regular) !important;
	margin: 0 !important;
}

#breadcrumb .breadcrumb-item a {
	text-decoration: none !important;
	color: white;
}

#breadcrumb .breadcrumb-item a:hover {
	text-decoration: underline !important;
	color: var(--destacado);
}

#breadcrumb .breadcrumb-item.active {
	color: var(--destacado);
}

@media (max-width: 768px) {

	#breadcrumb {
		padding: 0 var(--pm-block-xy-min);
		font-size: var(--text-small-mobile);
	}
}

@media (max-width: 480px) {

	#breadcrumb {
		flex-direction: column;
	}
}


/* NavegaciÃ³n entre obras */
.nav-buttons {

	display: flex;
	justify-content: space-between;
	margin: var(--pm-block-x);
	padding-bottom: var(--pm-block-xy-min);
	position: absolute;
	top: 33%;
	z-index: 99997;
	width: 90%;
	pointer-events: none;
}

.nav-buttons a {
	display: flex;
	flex-direction: column;
	pointer-events: auto;
}

.nav-buttons p {
	padding: 10px;
	font-size: 15px;
}



.btnObras {
	font-size: 4rem;
	color: var(--destacado);
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;

}

.btnObras:hover {
	transform: scale(1.2);
	text-decoration: none;
}

.btnObrasHidden {
	visibility: hidden;
}

@media (max-width: 1500px) {

	.nav-buttons {
		top: 40%;
	}
}

@media (max-width: 1300px) {

	.nav-buttons {
		display: flex;
		justify-content: space-between;
		margin: var(--pm-block-x);
		padding-bottom: var(--pm-block-xy-min);
		position: unset;
		width: auto;
	}
}


@media (max-width: 768px) {

	.btnObras {
		font-size: 2.5rem;
	}
}

@media (max-width: 480px) {

	.btnObras {
		font-size: 3rem;
		color: var(--destacado);
		text-decoration: none;
		display: flex;
		align-items: center;
		justify-content: center;
		transition: all 0.2s;

	}

}

/* No permitir descargar imÃ¡genes restringidas */
.noDonwload {
	display: flex;
	align-items: center;
	justify-items: center;
	gap: 10px;
	padding: 10px;

}

.noDonwload p {
	font-size: var(--text-small-mobile);
}

/* Bienes relacionados*/

#obras-relacionadas-slider .slick-prev {
	left: 36px !important;
	bottom: -55px !important;
}

#obras-relacionadas-slider .slick-next {
	right: 0px !important;
	bottom: -55px !important;
}

#obras-relacionadas-slider .catalogo-bienes-carrusel::before {
	display: none;
}


.slides-item-content .ficha-exposiciones {
	font-style: italic;
	color: var(--destacado);
}

@media (max-width: 1200px) {

	#obras-relacionadas-slider .slick-prev {
		bottom: -30px !important;
	}

	#obras-relacionadas-slider .slick-next {
		bottom: -30px !important;
	}

}

@media (max-width: 980px) {

	#obras-relacionadas-slider .slick-prev {
		left: 0px !important;
		bottom: -10px !important;
	}

	#obras-relacionadas-slider .slick-next {
		bottom: -10px !important;
	}

}

@media (max-width: 780px) {

	#obras-relacionadas-slider .slick-prev {
		bottom: -40px !important;
	}

	#obras-relacionadas-slider .slick-next {
		bottom: -40px !important;
	}

}

@media (max-width: 780px) {

	#obras-relacionadas-slider .slick-prev {
		bottom: -40px !important;
	}

	#obras-relacionadas-slider .slick-next {
		bottom: -40px !important;
	}

}

@media (max-width: 480px) {

	#obras-relacionadas-slider .slick-prev {
		bottom: -35px !important;
	}

	#obras-relacionadas-slider .slick-next {
		bottom: -35px !important;
	}

}


/* Conservacion
***********************/

.conservacion-grid {
	display: grid;
	gap: 3rem;
	padding: var(--pm-block-xy-min) var(--pm-block-xy);

}

.conservacion-contenido {
	flex: 50%;
}

.conservacion-card {
	display: flex;
	background: var(--bloque);
	border: var(--linea);
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

.conservacion-imagen {
	flex: 50%;
	height: 400px;
	position: relative;
	transition: all 0.3s ease;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}


.conservacion-card:nth-child(9) .conservacion-imagen {
	background-image: url(../images/conservacion/conservacion_menades.jpg);
}

.conservacion-card:nth-child(8) .conservacion-imagen {
	background-image: url(../images/conservacion/conservacion_fructuoso.jpg);
}

.conservacion-card:nth-child(7) .conservacion-imagen {
	background-image: url(../images/conservacion/conservacion_relicarios.jpg);
}

.conservacion-card:nth-child(6) .conservacion-imagen {
	background-image: url(../images/conservacion/conservacion_santaella.jpg);
}

.conservacion-card:nth-child(5) .conservacion-imagen {
	background-image: url(../images/conservacion/conservacion_egipcia.jpg);
}

.conservacion-card:nth-child(4) .conservacion-imagen {
	background-image: url(../images/conservacion/conservacion_isabel.JPG);
}

.conservacion-card:nth-child(3) .conservacion-imagen {
	background-image: url(../images/conservacion/conservacion_viajeconocimiento.jpg);
}

.conservacion-card:nth-child(2) .conservacion-imagen {
	background-image: url(../images/conservacion/conservacion_pluriversal.jpg);
}

.conservacion-card:nth-child(1) .conservacion-imagen {
	background-image: url(../images/conservacion/conservacion_pluriversal_sevilla.JPG);
}

@media (max-width: 1200px) {

	.conservacion-card {
		flex-direction: column;

	}

	.conservacion-imagen {
		flex: none;
		height: 250px;
	}
}


@media (max-width: 720px) {

	.conservacion-contenido .visita-info {

		flex-direction: column;

	}

}

@media (max-width: 480px) {

	.conservacion-contenido .visita-duracion,
	.conservacion-contenido .visita-precio {
		display: flex;
		align-items: center;
		flex-direction: column;
		gap: 1em;
	}

	.conservacion-contenido {
		padding: 1em;
		gap: 1em;
	}

	.conservacion-grid {
		padding: var(--pm-block-xy-min) var(--pm-block-xy-min);
	}

}

/* Datos detalle Exposicion - Floating Card */
.datosExpo {
	background: #ffffff;
	display: flex;
	flex-direction: row;
	gap: 0;
	padding: 0;
	align-items: stretch;
	position: relative;
	z-index: 10;
	width: 80%;
	max-width: 80%;
	margin: -55px auto 40px;
	border-radius: 16px;
	box-shadow: 0 12px 50px rgba(0, 0, 0, 0.18), 0 3px 12px rgba(0, 0, 0, 0.08);
	overflow: hidden;
}

.datosExpo > :last-child {
	border-right: none;
	border-bottom: none;
}

.detalleExpo {
	position: relative;
}

.detalleExpo img {
	padding: 0 var(--pm-block-x-min);
	height: 700px;
	object-fit: cover;
	object-position: center;
	display: block;
}

.datosExpoInfo {
	display: grid;
	grid-template-areas:
		"label label"
		"icon  value";
	grid-template-columns: auto 1fr;
	column-gap: 10px;
	row-gap: 6px;
	align-items: center;
	flex: 1;
	padding: 26px 30px;
	border-right: 1px solid #ebebeb;
	min-width: 0;
}

.datosExpoLabel {
	grid-area: label;
	font-size: var(--text-small);
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #9e9e9e;
	font-weight: var(--bold);
	font-family: var(--mulish);
	line-height: 1;
	padding-bottom: 8px;
}

.datosExpoIcon {
	grid-area: icon;
	color: #C9984A;
	font-size: 1.2rem;
	margin: 0;
}

.datosExpoValue {
	grid-area: value;
	font-weight: 700;
	font-size: var(--text-breadcrumbs);
	margin: 0 !important;
	color: var(--bloque);
	line-height: 1.35;
}

.datosExpoCta {
	display: flex !important;
	align-items: center;
	justify-content: center;
	padding: 26px 32px;
	flex-shrink: 0;
	width: auto;
}

#ficha-datosExposicion {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
	padding: 50px 0 0 0;
}

.ficha-datos-expo {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 10px;
}

.ficha-datos-expo h3 {
	margin: 0.3em 0;
	font-size: var(--title-subsection);
	font-weight: 700;
	color: var(--destacado);
}


.ficha-datos-expo p {
	/*margin-bottom: 0.7em !important;*/
	font-family: var(--mulish) !important;
	font-weight: var(--semibold);
	font-size: var(--text-small);
	text-align: center;
}

@media (max-width: 768px) {
	.datosExpo {
		flex-direction: column;
		margin: -24px auto 32px;
		border-radius: 12px;
		max-width: calc(100% - 32px);
	}

	.datosExpoInfo {
		flex-direction: row;
		align-items: center;
		gap: 16px;
		border-right: none;
		border-bottom: 1px solid #ebebeb;
		padding: 16px 20px;
	}

	.datosExpoIcon {
		font-size: 1.3rem;
		margin: 0;
		flex-shrink: 0;
	}

	.datosExpoCta {
		padding: 18px 20px;
		border-top: 1px solid #ebebeb;
		width: 100%;
		justify-content: stretch;
	}

	.datosExpoCta .btn,
	.datosExpoCta .btn-black {
		width: 100%;
		text-align: center;
	}
}

@media (max-width: 480px) {
	.datosExpo {
		margin: -20px auto 28px;
		max-width: calc(100% - 24px);
	}

	.datosExpoLabel {
		font-size: var(--text-small-mobile);
	}

	.detalleExpo img {
		padding: 0 var(--pm-block-x-min);
		height: 400px;
		object-fit: cover;
		object-position: center;
	}
}

/* Localizaciones Mapa
***********************/

.localizaciones-map-wrapper {
	margin: 0 var(--pm-block-xy) var(--pm-block-xy-min);
	/*padding: var(--pm-block-xy-min);
	background: var(--bloque);
	border: var(--linea);*/
}

.localizaciones-map-info h2 {
	margin: 0 0 0.4em;
	font-size: var(--title-section);
	color: var(--destacado);
}

.localizaciones-map-info p {
	margin: 0 0 1em;
	font-size: var(--text-small);
	color: var(--texto-atenuado);
}

.localizaciones-map {
	width: 100%;
	height: 800px;
	border: var(--linea);
	margin: 2em 0 3em 0;
}


.leaflet-popup-content-wrapper {
	background-color: var(--base) !important;
	color: white !important;

}

@media (max-width: 768px) {
	.localizaciones-map-wrapper {
		margin: 0 var(--pm-block-xy-min);
	}

	.localizaciones-map {
		height: 500px;
	}
}

.map-popup {
	width: 260px;
	display: flex;
	flex-direction: column;
}

.map-popup img {
	width: 100%;
	height: 140px;
	object-fit: cover;
	margin-bottom: 0.5em;
}

.map-popup h3 {
	font-size: 1.1em;
	margin: 0 0 0.4em;
	color: var(--base);
}

.map-popup p {
	font-size: 0.9em;
	margin: 0 0 0.8em;
	color: #333;
}

.map-popup-btn {
	display: inline-block;
	padding: 0.4em 0.8em;
	background: var(--destacado);
	color: var(--bloque);
	border: 0;
	cursor: pointer;
	font-weight: var(--bold);
	transition: background 0.2s ease;
	text-align: center;
}

.map-popup-btn:hover {
	background: var(--base);
	color: var(--destacado);
}

.localizaciones-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 25px;
	margin-top: 20px;
	padding: 20px;
}

.localizacion-item {
	text-align: center;
	transition: transform 0.3s ease;
}

.localizacion-item:hover {
	transform: translateY(-5px);
}

.localizacion-item a {
	display: block;
	text-decoration: none;
	color: inherit;
}

.localizacion-item img {
	width: 100%;
	height: 400px;
	/*object-fit: cover;*/
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
	margin-bottom: 10px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.localizacion-item:hover img {
	transform: scale(1.05);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
}

.localizacion-item .placeholder {
	width: 100%;
	height: 400px;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.05) 100%);
	border: var(--linea);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.localizacion-item:hover .placeholder {
	transform: scale(1.05);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
	border-color: var(--destacado);
}

.localizacion-item .placeholder span {
	color: var(--texto-atenuado);
	font-size: var(--text-small);
	padding: 10px;
	text-align: center;
}

.localizacion-item p {
	color: white;
	font-weight: var(--semibold);
	margin: 0;
	font-size: var(--text-small);
	transition: color 0.3s ease;
}

.localizacion-item:hover p {
	color: var(--destacado);
}

@media (max-width: 1200px) {
	/*.localizaciones-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 15px;
	}*/
}

@media (max-width: 768px) {
	.modalImagenCatalogo.capa-grupo .modalImagenCatalogoWrap {
		max-width: 95%;
		width: 95%;
	}

	/*.localizaciones-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 15px;
		padding: 15px;
	}*/

	.localizacion-item img,
	.localizacion-item .placeholder {
		height: 180px;
	}
}

@media (max-width: 480px) {
	.modalImagenCatalogo.capa-grupo .modalImagenCatalogoWrap {
		max-width: 98%;
		width: 98%;
	}

	.localizaciones-grid {
		grid-template-columns: repeat(1, 1fr);
		gap: 15px;
		padding: 10px;
	}

	.localizacion-item img,
	.localizacion-item .placeholder {
		height: 200px;
	}
}


/* Newsletter Banner */
.newsletter-banner {
	background-color: var(--destacado);
	color: var(--bloque);
	padding: 3rem clamp(40px, 5vw, 80px);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 5rem;
	/*margin-top: 50px;*/
}

.newsletter-text {
	display: flex;
	flex: 1 1 300px;
	flex-direction: column;
	gap: 30px;
}

.newsletter-text h2 {
	font-family: var(--barlow);
	font-size: var(--title-page);
	font-weight: 700;
	margin: 0.5rem;
	text-transform: uppercase;
	color: var(--bloque);
	line-height: 1em;
}

.newsletter-text p {
	font-family: var(--mulish);
	font-size: var(--text-general);
	margin: 0;
	color: var(--bloque);
}

.newsletter-form {
	flex: 1 1 400px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.newsletter-inputs {
	display: flex;
	flex-direction: row;
	gap: 10px;
	width: 100%;
}

.newsletter-policy {
	font-family: var(--mulish);
	font-size: 0.85rem;
	color: var(--bloque);
}

.newsletter-policy input[type="checkbox"]:checked {
	accent-color: var(--base);
}



.newsletter-policy a {
	color: var(--bloque);
	text-decoration: underline;
	font-weight: 700;
}

#newsletter-message {
	font-family: var(--mulish);
	font-size: 0.9rem;
	margin-top: 10px;
	width: 100%;
}

#newsletter-message.success {
	color: var(--bloque);
	font-weight: var(--bold);
	font-size: var(--title-subsection);
}

#newsletter-message.error {
	color: #921c22;
	font-weight: var(--bold);
	font-size: var(--title-subsection);
}

.newsletter-form input[type="email"],
.newsletter-form input[type="text"] {
	flex-grow: 1;
	border: 1px solid var(--bloque);
	background: transparent;
	color: var(--base);
	font-weight: var(--bold);
}

.newsletter-form input[type="email"]::placeholder,
.newsletter-form input[type="text"]::placeholder {
	color: var(--bloque);
	font-weight: var(--regular);

}

.newsletter-form button {
	white-space: nowrap;
	cursor: pointer;
}

/* Newsletter Popup
***********************/

.modal-newsletter-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	/* Dimmed background */
	display: flex;
	align-items: center !important;
	/* Vertical centering */
	justify-content: center !important;
	/* Horizontal centering */
	z-index: 99999;
	/* Top on everything */
}

.modal-newsletter-container {
	background-color: var(--base);
	width: 90%;
	max-width: 500px;
	border-radius: 8px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
	overflow: hidden;
	animation: fadeIn 0.3s ease-in-out;
	border: 0.1em var(--destacado);
	border-style: solid;
}

.modal-newsletter-header {
	padding: 15px 20px;
	border-bottom: 1px solid var(--destacado);
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.modal-newsletter-title {
	font-weight: bold;
	font-size: 1.25rem;
	margin: 0;
	color: var(--destacado);
}

.modal-newsletter-close {
	background: none;
	border: none;
	font-size: 1.5rem;
	cursor: pointer;
	color: var(--destacado);
	padding: 0;
	line-height: 1;
}

.modal-newsletter-close:hover {
	color: #333;
}

.modal-newsletter-body {
	padding: 30px 20px;
	text-align: center;
}

.modal-newsletter-body p {
	font-size: 1.1rem;
	margin-bottom: 25px;
	color: white;
}

.modal-newsletter-actions {
	display: flex;
	justify-content: center;
	gap: 15px;
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(-20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (max-width: 1024px) {
	.newsletter-banner {
		gap: 2em;
	}
}

@media (max-width: 768px) {
	.newsletter-banner {
		flex-direction: column;
		text-align: center;
		padding: 2rem 20px;
	}

	.newsletter-form {
		width: 100%;
		flex: 1 1 auto;
	}

	.newsletter-text {
		flex: 1 1 auto;
	}

	.newsletter-inputs {
		flex-direction: column;
	}
}

/* Estilos del Timeline */
#timeline-wrapper {
	position: relative;
	width: 100%;
	height: 100vh;
	/* Responsive full screen height */
	min-height: 600px;
	/* Prevent squashing on very small screens */
	overflow: hidden;
	background: var(--base);
	/* Fixed: Corporate Dark Background */
	border-top: 1px solid #333;
	border-bottom: none;
	/* Removed parallel gray line */
	margin-bottom: 40px;
	user-select: none;
	/* Mejorar experiencia de arrastre */
	box-sizing: border-box;
}

#timeline-scroll-container {
	width: 100%;
	height: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	position: relative;
	-webkit-overflow-scrolling: touch;
	cursor: grab;

	/* Hide scrollbar */
	scrollbar-width: none;
	/* Firefox */
	-ms-overflow-style: none;
	/* IE 10+ */
}

#timeline-scroll-container::-webkit-scrollbar {
	display: none;
	/* Chrome/Safari/Webkit */
}

#timeline-scroll-container.grabbing {
	cursor: grabbing;
}

/* The "Canvas" where items live */
#timeline-canvas {
	height: 100%;
	position: relative;
	/* Fixed: 2px Gold Line raised 15px from bottom */
	background-image: linear-gradient(to bottom, transparent calc(100% - 17px), var(--destacado) calc(100% - 17px), var(--destacado) calc(100% - 15px), transparent calc(100% - 15px));
	background-size: 100% 100%;
	overflow: hidden;
}

/* Ruler Marks (Years) */
.timeline-mark {
	position: absolute;
	bottom: 15px;
	/* Raised to match axis line */
	height: 100%;
	border: none !important;
	/* Force no borders */
	pointer-events: none;
}

.timeline-mark.century {
	border-left: 1px dashed rgba(221, 216, 161, 0.5) !important;
	/* Faint guide for centuries restored */
}

/* Dots on the Axis - Centered on the 15px height line */
.timeline-mark::after {
	content: '';
	position: absolute;
	/* Center vertically on the line (approx) */
	bottom: -2px;
	/* Center horizontally relative to mark line */
	left: -3px;
	border-radius: 50%;
	background: var(--destacado);
	box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
	z-index: 10;
}

/* Decade Dot (Small) - 6px size */
.timeline-mark.decade::after {
	width: 6px;
	height: 6px;
	opacity: 0.8;
}

/* Century Dot (Large) - 14px size */
.timeline-mark.century::after {
	width: 14px;
	height: 14px;
	bottom: -6px;
	/* Centered correction for larger size */
	left: -7px;
	border: 2px solid var(--base);
	/* Contrast ring */
	background: var(--destacado);
}

/* Single Year Dot (Smallest) */
.timeline-mark.year::after {
	width: 6px;
	height: 6px;
	opacity: 1;
	/* Fully opaque to sit on top */
	bottom: -2px;
	/* Adjusted to -2px to align center (16px) with axis center (16px) */
	/* Centered relative to line */
	left: -3px;
	background: var(--destacado);
	/* border: 1px solid var(--base); removed to match decade size */
	z-index: 15;
}

.timeline-mark span {
	position: absolute;
	bottom: 25px;
	/* Raised text above the dot */
	left: 50%;
	transform: translateX(-50%);
	/* Center text horizontally */
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 18px;
	/* Smaller for decades */
	color: var(--destacado);
	font-weight: 600;
	/* Lighter weight for decades */
	text-align: center;
	white-space: nowrap;
}

/* Century Labels */
.timeline-mark.century span {
	font-size: 20px;
	/* Larger for centuries */
	font-weight: 800;
	/* Boldest */
}

/* Single Year Labels */
.timeline-mark.year span {
	font-size: 18px;
	/* Smaller for single years */
	font-weight: 600;
	/* Lighter */
	color: var(--destacado);
}

/* Timeline Items (Artworks) */
.timeline-item-card {
	position: absolute;
	width: 220px;
	background: var(--destacado);
	/* Color destacado fondo */
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.5);
	padding: 10px;
	border-radius: 4px;
	/* Smooth transitions optimized for performance */
	transition: left 0.8s ease, top 0.8s ease;
	top: 50px;
	z-index: 1;
	opacity: 1;
}

.timeline-item-card:hover {
	z-index: 100 !important;
	transform: scale(1.1);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.7);
	background: white;
}

.timeline-item-card img {
	width: 100%;
	height: 150px;
	object-fit: cover;
	display: block;
	margin-bottom: 8px;
	filter: brightness(0.95);
}

.timeline-item-card:hover img {
	filter: brightness(1);
}

.timeline-item-card h4 {
	font-family: 'Mulish', sans-serif;
	font-size: 13px;
	margin: 0 0 4px 0;
	line-height: 1.2;
	font-weight: var(--extra-bold);
	color: var(--base);
	/* Texto base */
}

/* PROPORTIONAL SCALING FOR MOBILE */
@media (max-width: 768px) {
	.timeline-item-card {
		width: 140px;
		/* Reduced from 220px */
		padding: 5px;
	}

	.timeline-item-card img {
		height: 85px;
		/* Reduced from 150px */
		margin-bottom: 4px;
	}

	.timeline-item-card h4 {
		font-size: 11px;
		/* Reduced from 13px */
		line-height: 1.1;
	}

	.timeline-author {
		font-size: 9px;
		/* Reduced from 11px */
		margin-top: 2px;
	}

	.timeline-item-card .year {
		font-size: 10px;
		padding: 2px 4px;
		top: 4px;
		right: 4px;
	}
}

/* Updated Year Style: Top Right Corner */
.timeline-item-card .year {
	position: absolute;
	top: 8px;
	right: 8px;
	font-size: 12px;
	color: white;
	font-weight: bold;
	background: rgba(0, 0, 0, 0.7);
	padding: 3px 6px;
	border-radius: 4px;
	z-index: 10;
	backdrop-filter: blur(2px);
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}

.timeline-author {
	font-size: 11px;
	color: #3a3939;
	margin-top: 3px;
	font-weight: 500;
	line-height: 1.2;
	display: block;
	/* Ensure it breaks line */
}

/* Connection line to the bottom ruler */
/* Connection line to the bottom ruler - REMOVED for cleanliness/debugging */
.timeline-item-card::after {
	content: none;
	/* Hide the vertical gray connector line which might be artifacting */
	display: none;
}

.timeline-loading {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 20px;
	color: #666;
	background: rgba(255, 255, 255, 0.8);
	padding: 20px;
	border-radius: 8px;
	z-index: 200;
	pointer-events: none;
}

/* FIX: Prevent page-level horizontal scroll */
html,
body {
	overflow-x: hidden;
	width: 100%;
	max-width: 100%;
}

/* Period Navigation Bar (Migrated & Enhanced) */
#period-nav-bar {
	position: relative;
	/* Not fixed, flows with page */
	width: 100%;
	height: 100px;
	/* Taller as requested */
	background: #222;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1000;
	box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.5);
	padding: 0;
	gap: 0;
}

.period-nav-btn {
	flex: 1;
	height: 100%;
	color: black;
	font-size: 16px;
	font-weight: 800;
	text-transform: uppercase;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	cursor: pointer;
	transition: all 0.2s;
	text-align: center;
	padding: 15px 10px;
	font-family: 'Barlow Condensed', sans-serif;
	border-right: 1px solid rgba(0, 0, 0, 0.1);
	/* Darker border for yellow bg */
}

.period-nav-btn:last-child {
	border-right: none;
}

.period-nav-btn:hover {
	opacity: 0.9;
	filter: brightness(1.2);
}

/* Ensure wrapper doesn't overflow parent */
#timeline-wrapper {
	max-width: 100vw;
	height: calc(100vh - 140px);
	/* Fit to screen minus header & margins */
	display: flex;
	flex-direction: column;
	overflow: hidden;
	margin: 40px 0;
}

#timeline-scroll-container {
	flex: 1;
	position: relative;
	overflow-x: auto;
	overflow-y: hidden;
	width: 100%;
}

/* Specific fix for timeline card positioning leakage */
#timeline-canvas {
	overflow: hidden;
	/* Ensure items don't render outside the canvas box if positioned negatively */
}



/* --- Work Detail Modal --- */
.modal-overlay {
	position: fixed;
	top: 50px;
	left: 0;
	width: 100%;
	height: calc(100% - 50px);
	background: rgba(0, 0, 0, 0.8);
	backdrop-filter: blur(5px);
	z-index: 9999;
	display: none;
	/* Managed by JS */
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.modal-content {
	width: 100%;
	max-width: 900px;
	border-radius: 8px;
	overflow: hidden;
	position: relative;
	box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
	display: flex;
	flex-direction: column;
	animation: modalFadeIn 0.3s ease-out;
}

@keyframes modalFadeIn {
	from {
		opacity: 0;
		transform: translateY(20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.close-modal {
	position: absolute;
	top: 15px;
	right: 20px;
	color: var(--base);
	font-size: 30px;
	font-weight: bold;
	cursor: pointer;
	z-index: 100;
	line-height: 1;
	background: var(--destacado);
	width: 40px;
	height: 40px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;
}

.close-modal:hover {
	background: var(--base);
	color: var(--destacado);
}

.modal-body {
	display: flex;
	flex-direction: row;
	max-height: 85vh;
	/* Prevent overflow on vertical screens */
}

#timeline-help-modal .modal-body {
	flex-direction: column;
}

/* Image Side */
.modal-image {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 300px;
	overflow: hidden;
}

.modal-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	max-height: 85vh;
}

/* Details Side */
.modal-details {
	flex: 1;
	padding: 40px;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
}

.modal-details h3 {
	font-family: 'Ibarra Real Nova', serif;
	font-size: 32px;
	margin-bottom: 5px;
	color: white;
	line-height: 1.1;
}

.m-subtitle {
	font-family: 'Mulish', sans-serif;
	font-size: 18px;
	color: #efe8e8;
	margin-bottom: 20px;
	font-weight: 600;
	border-bottom: 2px solid var(--destacado);
	padding-bottom: 10px;
	display: inline-block;
}

.m-meta p {
	margin-bottom: 8px;
	font-size: 15px;
	color: #efe8e8;
}

.m-meta strong {
	color: white;
	font-weight: 700;
}

.m-desc {
	margin-top: 20px;
	margin-bottom: 30px;
	color: white;
	line-height: 1.6;
	font-size: 16px;
}

.btn-ver-ficha {
	display: inline-block;
	background: var(--destacado);
	color: #000;
	padding: 12px 25px;
	text-decoration: none;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 14px;
	letter-spacing: 1px;
	text-align: center;
	transition: all 0.3s;
	border-radius: 4px;
	align-self: center;
}

.btn-ver-ficha:hover {
	background: #000;
	color: #fff;
}

/* Responsive Modal */
@media (max-width: 768px) {
	.modal-body {
		flex-direction: column;
		overflow-y: auto;
	}

	.modal-image {
		min-height: 250px;
		max-height: 300px;
	}

	.modal-details {
		padding: 25px;
	}

	.modal-details h3 {
		font-size: 24px;
	}
}

/* Responsive Barra de Edades */
@media (max-width: 768px) {
	.period-nav-btn {
		padding: 20px 5px;
	}
}

@media (max-width: 480px) {
	#period-nav-bar {
		height: 125px;
	}
}

/* Fix for 404 page language switcher positioning */
#error404 .languague-switcher {
	right: 10px;
}

/* Error 404 Page */
#error-404 {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 150px 20px 100px;
	text-align: center;
}

#error-404 h1 {
	font-size: 12rem;
	line-height: 1;
	margin: 0 0 20px 0;
	color: #333;
	font-weight: bold;
}

#error-404 h2 {
	font-size: 2.5rem;
	margin: 0 0 20px 0;
	color: #666;
}

#error-404 p {
	margin-bottom: 40px;
	font-size: 1.2rem;
	max-width: 600px;
}

#error-404 .btn {
	display: inline-block;
	width: auto;
	padding: 15px 40px;
}

/* --- Standalone Timeline Page Styles --- */
.timeline-app-header {
	position: relative;
	top: 0;
	width: 100%;
	height: 50px;
	backdrop-filter: blur(5px);
	background: rgba(0, 0, 0, 0.4);
	z-index: 99999;
	/* Max Z-Index */
	display: flex;
	align-items: center;
	padding: 0 20px;
	border-bottom: 1px solid var(--destacado);
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
	box-sizing: border-box;
	/* FIX: Prevents horizontal scroll */
}

.timeline-app-header h1 {
	margin: 0;
	font-size: var(--title-subsection);
	letter-spacing: 1px;
	text-transform: uppercase;
	line-height: 1;
	display: block;
	/* Ensure visibility */
	flex: 1;
	/* Allow flexible width */
	min-width: 0;
	/* Critical for flex child truncation */
	width: auto;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	text-align: left;
	/* Ensure alignment */
}

/* Responsive Styles for Timeline Header */
@media screen and (max-width: 1024px) {}

@media screen and (max-width: 768px) {
	.timeline-app-header {
		padding: 0 15px;
		/* Adjust padding */
	}

	.timeline-app-header h1 {
		font-size: 16px;
		white-space: normal;
	}

	.timeline-app-header .back-btn {
		font-size: 16px;
		margin-right: 8px;
	}

	.header-right {
		gap: 10px;
	}
}

@media screen and (max-width: 480px) {
	.timeline-app-header {
		height: 70px;
	}

	.header-right {
		gap: 10px;
	}

	.modal-overlay {
		top: 70px;
		height: calc(100% - 70px);
	}
}

.timeline-app-header a {
	color: #fff !important;
	/* Force White */
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 10px;
	transition: color 0.3s;
}

.timeline-app-header a:hover {
	color: var(--destacado) !important;
}

.timeline-app-header .back-btn {
	margin-right: 15px;
	font-size: 20px;
	color: var(--destacado);
}

.header-right {
	display: flex;
	align-items: center;
	gap: 15px;
}

/* Reset body padding for this layout */
body.timeline-mode {
	padding: 0 !important;
	margin: 0 !important;
	overflow: hidden !important;
	/* App-like feel, force no scroll */
	background: #1a1a1a;
	width: 100vw;
	height: 100vh;
}

/* Timeline Wrapper adjustment (Scoped to timeline mode) */
body.timeline-mode #timeline-wrapper {
	height: 100vh !important;
	/* Full height */
	padding-top: 50px;
	/* Space for fixed header */
	margin: 0 !important;
	/* Remove page margins */
}

/* --- Timeline Search --- */
#timeline-search-overlay {
	position: fixed;
	top: 50px;
	/* Below header */
	left: 0;
	width: 320px;
	height: calc(100vh - 50px);
	background: rgba(0, 0, 0, 0.95);
	backdrop-filter: blur(10px);
	z-index: 99990;
	border-right: 1px solid #333;
	padding: 20px;
	box-sizing: border-box;
	transform: translateX(-100%);
	transition: transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}

#timeline-search-overlay.active {
	transform: translateX(0);
}

.search-container {
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.search-container input {
	width: 100%;
	background: #222;
	border: 1px solid #444;
	color: #fff;
	padding: 12px 15px;
	font-size: 16px;
	border-radius: 4px;
	margin-bottom: 20px;
	outline: none;
}

.search-container input:focus {
	border-color: var(--destacado);
	box-shadow: 0 0 0 2px rgba(181, 157, 85, 0.2);
}

.close-btn {
	position: absolute;
	top: -23px;
	right: -23px;
	background: none;
	border: none;
	color: #888;
	font-size: 24px;
	cursor: pointer;
	z-index: 10;
}

.close-btn:hover {
	color: #fff;
}

#timeline-search-results {
	flex: 1;
	overflow-y: auto;
}

.search-result-item {
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 10px;
	border-bottom: 1px solid #333;
	cursor: pointer;
	transition: background 0.2s;
}

.search-result-item:hover {
	background: #333;
}

.search-result-item img {
	width: 40px;
	height: 40px;
	object-fit: cover;
	border-radius: 4px;
	background: #444;
}

.search-result-info h4 {
	margin: 0 0 4px 0;
	font-size: 14px;
	color: #fff;
	font-weight: 500;
}

/* Header Buttons (Transparent) */
.header-icon-btn {
	background: none;
	border: none;
	color: white;
	font-size: 18px;
	cursor: pointer;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	transition: background 0.3s, color 0.3s;
}

.header-icon-btn:hover {
	background: rgba(255, 255, 255, 0.1);
	color: var(--destacado);
}

.search-result-info span {
	font-size: 12px;
	color: #aaa;
	display: block;
}

.search-result-info .year {
	color: var(--destacado);
	font-weight: bold;
}

/* Highlight Effect for Timeline Cards */
.timeline-item-card.search-highlight {
	box-shadow: 0 0 30px var(--destacado);
	z-index: 100 !important;
	animation: pulse-highlight 2s infinite;
	border: 2px solid var(--destacado);
	/* Added border for extra visibility */
}

@keyframes pulse-highlight {
	0% {
		box-shadow: 0 0 20px var(--destacado);
		transform: scale(1);
	}

	50% {
		box-shadow: 0 0 50px var(--destacado);
		transform: scale(1.05);
	}

	100% {
		box-shadow: 0 0 20px var(--destacado);
		transform: scale(1);
	}
}

/* --- Masterpieces Tour --- */
#timeline-tour-control {
	position: fixed;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	background: rgba(0, 0, 0, 0.8);
	border: 1px solid var(--destacado);
	border-radius: 30px;
	padding: 10px 25px;
	display: flex;
	align-items: center;
	gap: 15px;
	z-index: 100000;
	backdrop-filter: blur(5px);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.5);
	animation: slideUp 0.3s ease-out;
}

#timeline-tour-control span {
	color: #fff;
	font-size: 14px;
	font-weight: 500;
}

#timeline-tour-control button {
	background: var(--destacado);
	color: #000;
	border: none;
	border-radius: 50%;
	width: 36px;
	height: 36px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.2s;
}

#timeline-tour-control button:hover {
	transform: scale(1.1);
}

@keyframes slideUp {
	from {
		transform: translate(-50%, 50px);
		opacity: 0;
	}

	to {
		transform: translate(-50%, 0);
		opacity: 1;
	}
}



@keyframes drawLine {
	from {
		stroke-dashoffset: 1000;
		opacity: 0;
	}

	to {
		stroke-dashoffset: 0;
		opacity: 0.6;
	}
}

/* --- Help Modal Styles --- */
.timeline-modal-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.85);
	backdrop-filter: blur(5px);
	z-index: 100000;
	display: flex;
	justify-content: center;
	align-items: center;
}

.timeline-modal-content.help-modal {
	background: #1a1a1a;
	width: 90%;
	max-width: 600px;
	border-radius: 8px;
	border: 1px solid #333;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
	padding: 30px;
	position: relative;
	color: #fff;
	animation: fadeInModal 0.3s ease-out;
}

.help-modal .modal-body h2 {
	font-size: var(--title-bien);
	color: var(--destacado);
	margin-bottom: 25px;
	border-bottom: 1px solid #333;
	padding-bottom: 15px;
	display: flex;
	align-items: center;
	gap: 10px;
	line-height: 22px;
}

.help-section {
	margin-bottom: 20px;
}

.help-section:last-child {
	margin-bottom: 0;
}

.help-section h3 {
	font-size: var(--title-subsection);
	color: #fff;
	margin-bottom: 8px;
	display: flex;
	align-items: center;
	gap: 15px;
}

.help-section h3 i {
	color: var(--destacado);
	width: 20px;
	text-align: center;
}

.help-section p {
	font-size: 16px;
	color: #aaa;
	line-height: 1.5;
	margin-left: 28px;
}

.modal-close-btn {
	position: absolute;
	top: 15px;
	right: 15px;
	background: none;
	border: none;
	color: #666;
	font-size: 24px;
	cursor: pointer;
	transition: color 0.3s;
}

.modal-close-btn:hover {
	color: #fff;
}

@keyframes fadeInModal {
	from {
		opacity: 0;
		transform: translateY(-20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}


/* Contact Styles  */
/*#contacto #main-content {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}

#contacto .content {
    width: 100% !important;
    padding: 0 !important;
    max-width: 1200px;
    margin: 0 auto;
    border-right: none !important;
}

#contacto .sidebar {
    display: none !important;
}*/

/* Modern Tabs Styles */
#contacto .tabs-container {
	width: 100%;
	margin-bottom: 3rem;
}

#contacto .tabs-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	border-bottom: 2px solid #333;
	padding-bottom: 15px;
	margin-bottom: 30px;
	justify-content: flex-start;
}

#contacto .tab-btn {
	background: transparent;
	border: 2px solid var(--destacado);
	padding: 15px 30px;
	font-size: var(--title-subsection);
	font-family: var(--barlow);
	font-weight: 700;
	color: var(--destacado);
	cursor: pointer;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

#contacto .tab-btn:hover {
	background-color: rgba(221, 216, 161, 0.1);
	color: #fff;
	border-color: #fff;
}

#contacto .tab-btn.active {
	background-color: var(--destacado);
	color: var(--base);
	border-color: var(--destacado);
	box-shadow: 0 0 15px rgba(221, 216, 161, 0.3);
}

/* Content Sections */
#contacto .tab-content {
	display: none;
	animation: fadeIn 0.5s ease;
}

#contacto .tab-content.active {
	display: block;
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Cards Grid */


#contacto .team-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	gap: 30px;
}

#contacto .team-card {
	background: var(--bloque);
	border: 1px solid #333;
	padding: 15px;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
	display: flex;
	flex-direction: column;
	height: 100%;
	position: relative;
}

#contacto .team-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background: var(--destacado);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.3s ease;
}

#contacto .team-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
	border-color: var(--destacado);
}

#contacto .team-card:hover::before {
	transform: scaleX(1);
}

#contacto .member-role {
	color: var(--destacado);
	font-size: 0.9rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 12px;
	font-family: var(--mulish);
	border-bottom: 1px solid rgba(221, 216, 161, 0.2);
	padding-bottom: 8px;
	display: inline-block;
}

#contacto .member-name {
	font-family: var(--barlow);
	font-size: var(--title-section);
	font-weight: 700;
	margin: 0 0 20px 0;
	color: #fff;
	line-height: 1.1;
}

#contacto .member-info {
	margin-top: auto;
	color: #ccc;
	font-family: var(--mulish);
	font-size: 1rem;
}

#contacto .member-info p {
	margin: 8px 0;
	display: flex;
	align-items: center;
	gap: 12px;
}

#contacto .member-info i {
	color: var(--destacado);
	width: 20px;
	text-align: center;
}

#contacto .member-info a {
	color: #ccc;
	text-decoration: none;
	transition: color 0.2s;
	border-bottom: 1px solid transparent;
}

#contacto .member-info a:hover {
	color: var(--destacado);
	border-bottom-color: var(--destacado);
}

#contacto h2 {
	margin-bottom: 45px;
	font-size: var(--title-page);
	line-height: 1em;
}

.mapa {
	height: 350px;
}

/* Mobile Optimization */
@media (max-width: 768px) {
	#contacto .tabs-nav {
		flex-direction: column;
		gap: 10px;
	}

	#contacto .tab-btn {
		width: 100%;
		text-align: center;
	}
}

/* =========================================
   Rediseño Educa
   ================================********* */

/* Contenedor Principal (Grid Layout) */
.educa-layout {
	display: grid;
	grid-template-columns: 1fr 0.8fr;
	/* Texto ocupa mÃ¡s espacio que imagen */
	gap: 60px;
	max-width: 1800px;
	margin: 0 auto 80px auto;
	align-items: start;
	padding: 0 40px;
	/* Padding lateral para contenedor */
}

/* Columna de Texto */
/*.educa-text-content {
	color: #ccc;
	font-family: var(--mulish);
	font-size: 1.1rem;
	line-height: 1.7;
}*/

.educa-text-content p {
	margin-bottom: 25px;
}

/* PÃ¡rrafo destacado (Lead) */
.educa-text-content .lead {
	font-size: 1.4rem;
	color: var(--destacado);
	/* Dorado */
	font-weight: 300;
	line-height: 1.5;
	border-left: 4px solid var(--destacado);
	padding-left: 20px;
	margin-bottom: 40px;
}

/* Columna de ImÃ¡genes (Sticky al hacer scroll si se desea, por ahora estÃ¡tico) */
.educa-images-column {
	position: relative;
	padding-top: 40px;
	/* Espacio para que la imagen superior no corte */
}

/* Stack de imÃ¡genes */
.image-stack {
	position: relative;
	width: 100%;
	height: 500px;
	/* Altura fija para el contenedor de la composiciÃ³n */
}

.image-stack img {
	position: absolute;
	border-radius: 4px;
	/* Un toque sutil redondeado */
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
	transition: transform 0.3s ease, z-index 0.3s;
	object-fit: cover;
}

/* Imagen 1 (Atras/Arriba) */
.img-stack-1 {
	top: 0;
	right: 0;
	width: 70%;
	height: 350px;
	z-index: 1;
	opacity: 0.8;
	/* Un poco mÃ¡s oscura para dar profundidad */
	filter: grayscale(30%);
	/* Desaturada para que rellene fondo */
}

/* Imagen 2 (Delante/Abajo) */
.img-stack-2 {
	bottom: 0;
	left: 0;
	width: 75%;
	height: 380px;
	z-index: 2;
}

/* Efecto Hover Interactivo */
.image-stack:hover .img-stack-1 {
	transform: translate(10px, -10px) scale(1.02);
	opacity: 1;
	filter: grayscale(0%);
	z-index: 3;
	/* Pasa al frente al hover */
}

.image-stack:hover .img-stack-2 {
	transform: translate(-10px, 10px) scale(0.98);
	z-index: 1;
	/* Pasa atrÃ¡s */
	filter: grayscale(40%);
}

/* Mobile Responsiveness */
/* Mobile Responsiveness */
@media (max-width: 992px) {
	.educa-layout {
		grid-template-columns: 1fr;
		gap: 40px;
		padding: 0 20px;
	}

	/* Disable stack effect, show images one below another */
	.image-stack {
		height: auto;
		display: flex;
		flex-direction: column;
		gap: 20px;
	}

	.image-stack img {
		position: relative;
		/* Reset from absolute */
		width: 100%;
		height: auto;
		opacity: 1;
		filter: none;
		transform: none !important;
		/* Disable hover effects */
		top: auto;
		left: auto;
		right: auto;
		bottom: auto;
	}

	/* Specific resets */
	.img-stack-1,
	.img-stack-2 {
		width: 100%;
		height: auto;
	}
}

@media (max-width: 576px) {
	.educa-text-content .lead {
		font-size: 1.2rem;
	}
}

/* =========================================
   Megamenu Styles (Desktop Only) - Grid Layout
   ================================********* */

@media (min-width: 1280px) {
	#main-nav-menu li.has-megamenu {
		position: static;
	}

	#main-nav-menu li.has-megamenu .submenu {
		display: none !important;
	}

	#main-nav-menu li .mm-expert-list {

		text-align: left;

	}

	.megamenu-panel {
		position: absolute;
		top: 100%;
		left: 50%;
		right: 50%;
		width: 100vw;
		margin-left: -50vw;
		margin-right: -50vw;
		background-color: #000;
		/* High transparency */
		backdrop-filter: blur(10px);
		/* Frosted glass effect */
		padding: 30px 0;
		/*box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);*/
		opacity: 0;
		visibility: hidden;
		transform: translateY(10px);
		transition: all 0.3s ease;
		z-index: 1000;
		pointer-events: none;
	}

	/* BRIDGE: Invisible area to prevent menu from closing when moving cursor */
	.megamenu-panel::before {
		content: "";
		position: absolute;
		top: -30px;
		/* Extend upwards to cover gap */
		left: 0;
		width: 100%;
		height: 30px;
		background: transparent;
	}

	#main-nav-menu li.has-megamenu:hover .megamenu-panel {
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
		pointer-events: auto;
	}

	.megamenu-content {
		max-width: 1500px;
		/* Reduced max-width for tighter grouping */
		margin: 0 auto;
		padding: 0 40px;
	}

	/* Grid 3 Columnas */
	.megamenu-content.grid-3 {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;
	}

	/* Card Item */
	.mm-card {
		display: block;
		text-decoration: none;
		background: transparent;
		border-radius: 4px;
		overflow: hidden;
		transition: transform 0.3s, background 0.3s;
		padding: 10px;
		border: 1px solid transparent;
		text-align: left;
	}

	.mm-card:hover {
		background: rgba(255, 255, 255, 0.05);
		border-color: rgba(255, 255, 255, 0.1);
		transform: translateY(-3px);
	}

	/* Imagen del Card - SMALLER as requested */
	.mm-card-img {
		width: 100%;
		height: 250px;
		/* Reduced height */
		overflow: hidden;
		border-radius: 3px;
		margin-bottom: 10px;
		background-color: #222;
		position: relative;
	}

	.mm-card-img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 0.5s ease;
		display: block;
	}

	.mm-card:hover .mm-card-img img {
		transform: scale(1.1);
	}

	/* Título del Card */
	.mm-card-title {
		display: block;
		color: #ddd;
		font-family: var(--barlow);
		font-size: var(--title-subsection);
		font-weight: 500;
		text-transform: uppercase;
		transition: color 0.3s;
		border-bottom: 2px solid transparent;
		padding-bottom: 3px;
		width: fit-content;
	}

	.mm-card-title i {
		margin-right: 6px;
		color: var(--destacado);
		font-size: 0.9em;
	}

	.mm-card:hover .mm-card-title {
		color: var(--destacado);
		border-bottom-color: var(--destacado);
	}

	#main-nav-menu li.has-megamenu>a i {
		font-size: 0.7em;
		margin-left: 5px;
		transition: transform 0.3s;
	}

	#main-nav-menu li.has-megamenu:hover>a i {
		transform: rotate(180deg);
		color: var(--destacado);
	}

	/* FIX: Remove the decorative dot inherited from main menu links */
	#main-nav-menu li .megamenu-panel a::after {
		display: none !important;
	}
}

/* Mobile Fallback */
@media (max-width: 1279px) {
	.megamenu-panel {
		display: none;
	}

	#main-nav-menu li.has-megamenu .megamenu-panel {
		position: static;
		box-shadow: none;
		border: none;
		background: transparent;
		padding: 0;
		opacity: 1;
		visibility: visible;
		transform: none;
		display: none;
	}

	#main-nav-menu li:hover .megamenu-panel {
		display: block;
	}

	.megamenu-content.grid-3 {
		display: flex;
		flex-direction: column;
		gap: 0;
		padding: 5px 0;
	}

	.mm-card {
		display: flex;
		align-items: center;
		padding: 12px 10px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	}

	.mm-card-img {
		display: none;
	}

	.mm-card-title {
		color: #fff;
		font-size: 0.95rem;
		text-transform: none;
		font-family: var(--mulish);
		border: none;
		padding: 0;
		margin: 0;
	}

	.mm-card-title i {
		width: 25px;
		text-align: center;
		color: var(--destacado);
	}
}

/* =========================================
   News Megamenu Styles (Tate Inspired)
   ================================********* */

@media (min-width: 1280px) {

	/* Layout specific for News Megamenu */
	.megamenu-content.grid-news {
		display: grid;
		grid-template-columns: 2fr 1fr;
		/* 2 parts for news, 1 part for CTA */
		gap: 40px;
		align-items: stretch;
	}

	/* Container for the 2 latest news */
	.mm-news-latest {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 30px;
	}

	/* News Card */
	.mm-news-card {
		display: block;
		text-decoration: none;
		color: #fff;
		transition: transform 0.3s ease;
	}

	.mm-news-card:hover {
		transform: translateY(-5px);
	}

	.mm-news-img {
		height: 180px;
		overflow: hidden;
		border-radius: 2px;
		margin-bottom: 15px;
		background-color: #333;
	}

	.mm-news-img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 0.5s;
	}

	.mm-news-card:hover .mm-news-img img {
		transform: scale(1.1);
	}

	.mm-news-info {
		border-left: 2px solid var(--destacado);
		/* Gold accent line */
		padding-left: 15px;
	}

	.mm-news-date {
		display: block;
		font-family: var(--mulish);
		font-size: 0.85rem;
		color: #aaa;
		margin-bottom: 5px;
	}

	.mm-news-title {
		font-family: var(--barlow);
		font-size: 1.1rem;
		font-weight: 600;
		line-height: 1.3;
		color: #fff;
		margin: 0;
		text-transform: uppercase;
		transition: color 0.3s;
	}

	.mm-news-card:hover .mm-news-title {
		color: var(--destacado);
	}

	/* Call to Action Block (Right Column) */
	.mm-news-action {
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.mm-cta-block {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 15px;
		background-color: var(--destacado);
		/* Gold/Yellow background */
		color: #000;
		/* Black text for contrast */
		text-decoration: none;
		padding: 15px 30px;
		/* Button sizing */
		text-align: center;
		transition: all 0.3s ease;
		border: none;
		border-radius: 0;
		/* Rectangular button */
		height: auto;
		width: auto;
	}

	.mm-cta-block:hover {
		background-color: #000;
		color: var(--destacado);
		transform: translateY(-3px);
		box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
	}

	.mm-cta-text {
		font-family: var(--barlow);
		font-size: 1.1rem;
		font-weight: 700;
		text-transform: uppercase;
		margin: 0;
		line-height: 1;
		letter-spacing: 0.5px;
	}

	.mm-cta-block i {
		font-size: 1.2rem;
		transition: transform 0.3s;
	}

	.mm-cta-block:hover i {
		transform: translateX(5px);
	}
}

/* Mobile Fallback for News */
@media (max-width: 1279px) {
	.megamenu-content.grid-news {
		display: flex;
		flex-direction: column;
	}

	.mm-news-latest,
	.mm-news-action {
		display: none;
		/* Hide complex layout in mobile, link works as normal page */
	}
}

/* =========================================
   News Megamenu (Hero + List)
   ================================********* */

@media (min-width: 1280px) {


	.megamenu-content.grid-news-featured {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0;
		padding: 0;
		height: 350px;
	}

	/* Left Column: Hero Image */
	.mm-featured-image {
		position: relative;
		overflow: hidden;
		border-radius: 0;
		background-color: transparent;
		min-height: 350px;
		height: 100%;
		box-shadow: none;
	}

	.mm-hero-link {
		display: block;
		width: 100%;
		height: 100%;
	}

	.mm-featured-image img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.mm-hero-link:hover img {
		transform: scale(1.03);
	}

	/* Right Column: List & CTA */
	.mm-news-list-container {
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap: 30px;
		padding: 40px;
		height: 100%;
	}

	.mm-news-list {
		display: flex;
		flex-direction: column;
		gap: 25px;
	}

	.mm-news-item-row {
		display: block;
		text-decoration: none;
		padding-bottom: 20px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
		transition: transform 0.3s ease, border-color 0.3s;
	}


	.mm-news-item-row:hover {
		transform: translateX(10px);
		border-bottom-color: var(--destacado);
	}

	.mm-news-item-row .mm-news-info {
		padding-left: 0;
		border-left: none;
	}

	.mm-news-item-row .mm-news-date {
		color: var(--destacado);
		font-size: 0.9rem;
		margin-bottom: 5px;
		display: block;
	}

	.mm-news-item-row .mm-news-title {
		color: #fff;
		font-size: 1.4rem;
		/* Larger title */
		font-weight: 600;
		margin: 0;
		line-height: 1.2;
	}

	.mm-news-action-row {
		padding-top: 10px;
	}


	.mm-news-action-row .mm-cta-block {
		margin: 0;
	}
}

/* Mobile Fallback */
@media (max-width: 1279px) {
	.megamenu-content.grid-news-featured {
		display: flex;
		flex-direction: column;
	}

	.mm-featured-image,
	.mm-news-list-container {
		display: none;
		/* Hide complex megamenu on mobile */
	}
}

/* =========================================
   Megamenu (List + Image)
   ================================********* */

@media (min-width: 1280px) {

	/* Layout: List (Left) - Image (Right) */
	.megamenu-content.grid-list-image {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0;
		padding: 0;
		height: 350px;

	}

	/* Left Column: Link List */
	.mm-expert-list {
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: 40px;
		padding-left: 60px;
		gap: 20px;
		background-color: transparent;


	}

	.mm-list-item {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		gap: 20px;
		color: #fff;
		text-decoration: none;
		text-transform: uppercase;
		font-family: var(--barlow);
		font-size: 1.8rem;
		font-weight: 700;
		padding: 15px 0;
		transition: color 0.3s, transform 0.3s;
		border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	}

	.mm-list-item:last-child {
		border-bottom: none;
	}

	.mm-list-item i {
		font-size: 1.5rem;
		width: 35px;
		text-align: center;
		color: var(--destacado);
		transition: transform 0.3s;
	}


	.mm-list-item:hover {
		color: var(--destacado);
		transform: translateX(10px);
		border-left: 3px solid var(--destacado);
		padding-left: 20px;
	}

	.mm-list-item:hover i {
		transform: scale(1.2);
	}

	/* Right Column: Static Featured Image */
	.mm-featured-image-static {
		position: relative;
		overflow: hidden;
		height: 100%;
		background-color: #111;
	}

	.mm-featured-image-static img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		opacity: 0.8;
		transition: transform 0.6s, opacity 0.6s;
	}

	.mm-featured-image-static:hover img {
		transform: scale(1.05);
		opacity: 1;
	}

	.mm-expert-list.grid-cols-2 {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 60px;
		row-gap: 20px;
		padding: 0 40px;
		padding-left: 60px;
		align-content: center;
	}
}

/* Mobile Fallback */
@media (max-width: 1279px) {
	.megamenu-content.grid-list-image {
		display: flex;
		flex-direction: column;
	}

	.mm-featured-image-static {
		display: none;
		/* Hide huge image on mobile */
	}

	.mm-expert-list {
		padding: 20px;
	}

	.mm-expert-list.grid-cols-2 {
		display: flex;
		flex-direction: column;
		gap: 10px;
		padding: 20px;
	}

	.mm-list-item {
		font-size: 1.1rem;
		padding: 15px 0;
		color: #333;
		color: inherit;
	}
}

/* Estilos para Select2 Multiple en Solicitud de Servicio */
.select2-container--default .select2-selection--multiple {
	border: 1px solid #ced4da;
	border-radius: .2rem;
	min-height: 45px;
	background-color: #fff;
	padding-left: 30px !important;
	/* Espacio para el icono + a la izquierda */
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
	background-color: var(--destacado) !important;
	border: 1px solid rgba(0, 0, 0, 0.1) !important;
	color: #000 !important;
	padding: 2px 10px !important;
	margin-top: 7px !important;
	margin-left: 5px !important;
	border-radius: 4px !important;
	font-size: 0.9em !important;
	font-weight: var(--bold) !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
	color: rgba(0, 0, 0, 0.75) !important;
	margin-right: 5px !important;
	border: none !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
	color: #000 !important;
	background: transparent !important;
}

.select2-container--default .select2-search--inline .select2-search__field {
	margin-top: 7px !important;
	padding-left: 5px !important;
}

.select2-container--default .select2-selection--multiple {
	background-color: var(--base) !important;
}

/* Indicador visual para añadir más obras (ahora a la izquierda) */
.select2-container--default .select2-selection--multiple:after {
	content: '\f067';
	/* FontAwesome plus */
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	position: absolute;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
	background-color: var(--destacado);
	color: #000;
	width: 22px;
	height: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	font-size: 0.8em;
	cursor: pointer;
}

.select2-container--default .select2-selection--multiple:hover:after {
	filter: brightness(0.9);
}

/* Validacion general (is-invalid y error-msg) para formularios */
.is-invalid,
.is-invalid+.select2-container--default .select2-selection--single,
.is-invalid+.select2-container--default .select2-selection--multiple {
	border-color: var(--destacado) !important;
	box-shadow: 0 0 0 0.2rem rgb(219, 214, 161) !important;
}

.error-msg {
	display: block;
	color: var(--destacado);
	font-size: 0.85em;
	margin-top: 5px;
	font-weight: bold;
}

/* Recuperar icono de calendario nativo para los input[type="date"] */
input[type="date"]::-webkit-calendar-picker-indicator {
	display: block;
	cursor: pointer;
	filter: invert(1);
	opacity: 0.6;
}

input[type="date"]::-webkit-calendar-picker-indicator:hover {
	opacity: 1;
}

/* Modulo de confirmacion de envio */
.solicitud-confirm-container {
	background: rgba(255, 255, 255, 0.05);
	padding: 20px;
	border-radius: 5px;
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
}

.solicitud-confirm-text {
	margin: 0 !important;
	font-size: 1.1em;
}

.solicitud-confirm-buttons {
	display: flex;
	gap: 15px;
}

.solicitud-confirm-container .btn-revisar {
	background-color: white;
	color: var(--base);
	border: var(--linea-bold);
}

.solicitud-confirm-container .btn-revisar:hover {
	background-color: var(--base);
	color: white;
}

.solicitud-confirm-container .btn-confirmar {
	background-color: var(--destacado);
	color: var(--bloque);
	border: var(--linea-bold);
}

.solicitud-confirm-container .btn-confirmar:hover {
	background-color: var(--bloque);
	color: var(--destacado);
}

/* Modulo de Exito (Solicitud Recibida) */
.modal-success-container {
	max-width: 500px;
	text-align: center;
	border-radius: 8px;
	border-top: 5px solid var(--destacado);
	background-color: var(--bloque);
}

.modal-success-header {
	justify-content: flex-end;
	border-bottom: none;
	padding-bottom: 0;
}

.modal-success-close {
	background: none;
	border: none;
	color: white;
	font-size: 1.5em;
	cursor: pointer;
}

.modal-success-body {
	padding: 0 40px 40px;
}

.modal-success-icon {
	margin-bottom: 25px;
}

.modal-success-title {
	margin-bottom: 15px;
	font-size: 2em;
	color: white;
	font-family: var(--barlow);
}

.modal-success-text-main {
	color: #ddd;
	margin-bottom: 10px;
	font-size: 1.1em;
	line-height: 1.5;
}

.modal-success-text-sub {
	color: #aaa;
	line-height: 1.5;
}

.modal-success-actions {
	margin-top: 35px;
	display: flex;
	justify-content: center;
}

.btn-success-close {
	background-color: var(--destacado);
	color: var(--bloque);
	border: none;
	padding: 12px 40px;
	border-radius: 4px;
	font-weight: bold;
	cursor: pointer;
	text-transform: uppercase;
}

.btn-success-close:hover {
	filter: brightness(0.9);
}

.form-section-header {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

.form-required-legend {
	font-size: 0.85em;
	color: var(--texto-atenuado);
	font-style: italic;
}

/* Permitir que el texto de Select2 se envuelva (word-wrap) para opciones largas en móvil */
.select2-container .select2-selection--single .select2-selection__rendered,
.select2-container .select2-selection--multiple .select2-selection__rendered,
.select2-results__option {
	white-space: normal !important;
	word-wrap: break-word !important;
	line-height: 1.4 !important;
	padding-top: 5px !important;
	padding-bottom: 5px !important;
}

.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
	height: auto !important;
	min-height: 48px !important;
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
	white-space: normal !important;
}

/* Custom File Upload Styling */
.custom-file-upload {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-top: 5px;
}

.input-file-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.btn-file-upload {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 180px;
	height: 60px;
	margin: 6px 0 !important;
}

.file-name-display {
	color: var(--texto-atenuado);
	font-size: 0.9em;
	font-style: italic;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 250px;
}

.file-name-display.file-selected {
	color: var(--destacado);
	font-weight: bold;
	font-style: normal;
}

@media all and (max-width: 600px) {
	.custom-file-upload {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}

	.btn-file-upload {
		width: 100% !important;
	}
}

/* Facility Report Info Modal */
.form-label-with-icon {
	display: flex;
	align-items: center;
	margin-bottom: 5px;
}

.form-label-with-icon label {
	margin-bottom: 0 !important;
}

.info-icon-facility {
	color: var(--destacado);
	cursor: pointer;
	margin-left: 8px;
	font-size: 0.9em;
	transition: transform 0.2s ease;
	vertical-align: middle;
}

.info-icon-facility:hover {
	transform: scale(1.2);
	filter: brightness(1.2);
}

.modal-info-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.85);
	backdrop-filter: blur(5px);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 110000;
}

.modal-info-content {
	background-color: var(--bloque);
	width: 90%;
	max-width: 650px;
	max-height: 90vh;
	border-radius: 8px;
	border-top: 4px solid var(--destacado);
	display: flex;
	flex-direction: column;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
	animation: modalFadeIn 0.3s ease-out;
}

@keyframes modalFadeIn {
	from {
		opacity: 0;
		transform: translateY(-20px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.modal-info-header {
	padding: 20px 25px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.modal-info-header h3 {
	margin: 0;
	color: var(--destacado);
	font-size: 1.4em;
	text-transform: uppercase;
}

.modal-info-close {
	background: none;
	border: none;
	color: white;
	font-size: 2em;
	cursor: pointer;
	line-height: 1;
	padding: 0;
	transition: color 0.2s;
}

.modal-info-close:hover {
	color: var(--destacado);
}

.modal-info-body {
	padding: 25px;
	overflow-y: auto;
	color: #ddd;
	line-height: 1.6;
	scrollbar-width: none;
	/* Firefox */
	-ms-overflow-style: none;
	/* IE and Edge */
}

.modal-info-body::-webkit-scrollbar {
	display: none;
	/* Chrome, Safari, Opera */
}

.modal-info-body p {
	margin-bottom: 15px;
	font-weight: var(--semibold);
}

.facility-requirements-list {
	padding-left: 20px;
}

.facility-requirements-list li {
	margin-bottom: 8px;
	font-size: 0.95em;
}

.facility-requirements-list li::marker {
	color: var(--destacado);
	font-weight: bold;
}

.modal-info-footer {
	padding: 15px 25px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	display: flex;
	justify-content: flex-end;
}

.modal-info-footer .btn {
	min-width: 120px;
}

@media all and (max-width: 600px) {
	.modal-info-header h3 {
		font-size: 1.1em;
	}

	.modal-info-content {
		width: 95%;
	}

	.modal-info-body {
		padding: 15px;
	}
}

/* Enlace Descarga Plantilla Solicitud */
.enlace-plantilla-container {
	margin-bottom: 25px;
	font-size: 0.95em;
	padding: 12px 15px;
	background-color: var(--bloque);
	border-left: 3px solid var(--destacado);
	border-radius: 0 4px 4px 0;
}

.enlace-plantilla-container .enlace-plantilla {
	color: var(--destacado);
	text-decoration: none;
	transition: all 0.2s ease;
	display: inline-flex;
	align-items: center;
}

.enlace-plantilla-container .enlace-plantilla:hover {
	color: #fff;
	text-decoration: underline;
}

.enlace-plantilla-container .enlace-plantilla i {
	margin-right: 8px;
}

/* Sistema de notificaciones (Toasts) para el frontend */
.toasts-top-right {
	z-index: 9999;
	position: fixed;
	top: 20px;
	right: 20px;
	width: 350px;
}

.toast {
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
	margin-bottom: 15px;
	overflow: hidden;
	border-left: 5px solid #ccc;
	animation: slideInRight 0.3s ease;
}

.toast.bg-danger {
	border-left-color: var(--destacado);
}

.toast.bg-success {
	border-left-color: #28a745;
}

.toast.bg-warning {
	border-left-color: #ffc107;
}

.toast.bg-info {
	border-left-color: #17a2b8;
}

.toast-header {
	padding: 10px 15px;
	background: rgba(0, 0, 0, 0.03);
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.toast-header strong {
	color: #333;
}

.toast-body {
	padding: 15px;
	color: #444;
	font-size: 0.95em;
}

.toast .close {
	background: none;
	border: none;
	font-size: 20px;
	cursor: pointer;
	opacity: 0.5;
}

.toast .close:hover {
	opacity: 1;
}

@keyframes slideInRight {
	from {
		transform: translateX(100%);
		opacity: 0;
	}

	to {
		transform: translateX(0);
		opacity: 1;
	}
}

/* Estilos para la pagina Multimedia */
#page-multimedia {
	padding-bottom: 100px;
	/* Aumentamos el espacio para que no se pegue al footer */
	min-height: 60vh;
	/* Aseguramos un mínimo de altura */
}

#multimedia #main-content,
#multimedia .multimedia-section,
#multimedia .multimedia-layout {
	border-bottom: none !important;
	border-top: none !important;
}

#multimedia footer,
#multimedia #main-footer {
	border-top: var(--linea) !important;
	/* Mantenemos solo esta, que es la del footer real */
}

/* Ajustes para el carrusel de vídeos */
.video-slider {
	/*margin: 0 -20px;*/
	/* Margen negativo para compensar el padding de los slides */
}

.video-slider .slick-slide {
	padding: 0 20px;
	/* Espacio real entre tarjetas */
}

.video-slider .video-card {
	margin-bottom: 30px;
	/* Espacio para la sombra inferior al hacer hover */
}

/* Estilos para las flechas de Slick en Multimedia */
#multimedia .slick-prev:before,
#multimedia .slick-next:before {
	color: var(--destacado);
	font-size: 30px;
}

.multimedia-layout {
	padding: 0 var(--pm-block-xy);
}

.multimedia-intro {
	margin-bottom: 50px;
	text-align: center;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}

.multimedia-section {
	margin-bottom: 80px;
	scroll-margin-top: 100px;
}

.section-header {
	margin-bottom: 25px;
	padding-bottom: 0;
	display: block;
	/* Cambiado de flex para que el inline-block del h2 funcione mejor */
}

.section-header h2 {
	font-family: var(--barlow);
	font-weight: 700;
	color: var(--destacado);
	margin: 0;
	text-transform: uppercase;
	font-size: var(--title-section);
	letter-spacing: 1px;
	display: inline-block;
	border-bottom: 4px solid var(--destacado);
	padding-bottom: 8px;
	line-height: 1;
}

.section-description {
	color: var(--texto-atenuado);
	font-style: italic;
	margin-bottom: 20px;
}



.video-card {
	background: var(--bloque);
	overflow: hidden;
	border: var(--linea);
	transition: all 0.3s ease;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	height: 100%;
	position: relative;
}

/* Cambiar cursor a mano agarrando cuando se arrastra el carrusel */
.slick-list.dragging .video-card {
	cursor: grabbing !important;
}

/* Prevenir que el hover superior se corte por el overflow del slick-list */
.video-slider .slick-list {
	padding-top: 12px !important;
	padding-bottom: 12px !important;
	margin-top: -12px;
	margin-bottom: -12px;
}

.video-card:hover {
	transform: translateY(-5px);
	border-color: var(--destacado);
}

.video-thumbnail {
	position: relative;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #000;
	transition: all 0.3s ease;
}

.video-thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.video-card:hover .video-thumbnail {
	transform: scale(1.05);
}

.video-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.2);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 1;
	transition: opacity 0.3s ease;
}

.play-icon {
	width: 60px;
	height: 60px;
	background: var(--destacado);
	color: var(--bloque);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);
	transform: scale(0.9);
	transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.video-card:hover .play-icon {
	transform: scale(1.1);
}

.video-info {
	padding: 20px;
	flex-grow: 1;
}

.video-info h3 {
	margin: 0 0 10px 0;
	text-transform: uppercase;
	/* Reserva espacio para 2 líneas de título */
	line-height: 1.3;
	min-height: 2.6em;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.video-info p {
	font-size: 1.1rem;
	color: var(--texto-atenuado);
	margin: 0;
	/* Reserva espacio para 2 líneas de descripción */
	line-height: 1.4;
	min-height: 2.8em;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.video-modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.95);
	z-index: 9999;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.modal-content-wrap {
	width: 100%;
	max-width: 1100px;
	position: relative;
}

.modal-content-wrap .video-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	background: #000;
	box-shadow: 0 0 50px rgba(0, 0, 0, 0.5);
	border: 1px solid #333;
}

.modal-content-wrap .video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


@media (max-width: 820px) {
	.multimedia-layout {
		padding: 0 20px;
	}

	/* Centrado de la tarjeta en móvil */
	.video-slider {
		margin: 0 !important;
		/* Eliminamos el margen negativo que lo desplaza */
		padding-bottom: 70px !important;
		/* Espacio extra para las flechas */
	}

	.video-slider .slick-slide {
		padding: 0 !important;
		/* Eliminamos el padding interno para que la tarjeta use todo el ancho disponible */
	}

	/* Forzamos reposicionamiento de flechas debajo */
	#multimedia .video-slider .slick-prev,
	#multimedia .video-slider .slick-next {
		top: auto !important;
		bottom: 15px !important;
		transform: none !important;
		z-index: 100 !important;
		width: 40px !important;
		height: 40px !important;
		display: flex !important;
		align-items: center;
		justify-content: center;
	}

	#multimedia .video-slider .slick-prev {
		left: calc(50% - 60px) !important;
	}

	#multimedia .video-slider .slick-next {
		right: calc(50% - 60px) !important;
	}

	#multimedia .video-slider .slick-prev:before,
	#multimedia .video-slider .slick-next:before {
		font-size: 30px !important;
		color: var(--destacado) !important;
		opacity: 1 !important;
	}
}

/* =========================================
   EXPOSICIONES ACTUALES Y ONLINE (PROYECCIÓN INMERSIVA DIVIDIDA)
   ========================================= */


#exposiciones-actuales .exposiciones-actuales-header {
	margin-bottom: 40px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 var(--pm-block-xy-min);
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	padding-bottom: 25px;
}

#exposiciones-actuales .exposiciones-actuales-header h2 {
	font-size: 2.2rem;
	margin: 0;
	border-left: 4px solid var(--destacado);
	padding-left: 15px;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-family: var(--barlow);
	font-weight: 700;
}

/* Tabs for Listado Exposiciones (Exact copy of Contact styles) */
#exposiciones-actuales .tabs-container {
	margin: 0;
}

#exposiciones-actuales .tabs-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
	justify-content: flex-end;
}

#exposiciones-actuales .tab-btn {
	background: transparent;
	border: 2px solid var(--destacado);
	padding: 15px 30px;
	font-size: var(--title-subsection);
	font-family: var(--barlow);
	font-weight: 700;
	color: var(--destacado);
	cursor: pointer;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

#exposiciones-actuales .tab-btn:hover {
	background-color: rgba(221, 216, 161, 0.1);
	color: #fff;
	border-color: #fff;
}

#exposiciones-actuales .tab-btn.active {
	background-color: var(--destacado);
	color: var(--base);
	border-color: var(--destacado);
	box-shadow: 0 0 15px rgba(221, 216, 161, 0.3);
}

/* SPLIT SCREEN CONTAINER */
.split-gallery-container {
	display: flex;
	gap: 50px;
	padding: 30px var(--pm-block-xy-min) 80px;
	align-items: stretch;
	min-height: 600px;
}

/* LEFT SIDEBAR LIST */
.split-sidebar {
	flex: 0 0 38%;
	display: flex;
	flex-direction: column;
	gap: 10px;
	max-height: 620px;
	overflow-y: auto;
	padding-right: 20px;
}

/* Custom sidebar scrollbar */
.split-sidebar::-webkit-scrollbar {
	width: 4px;
}

.split-sidebar::-webkit-scrollbar-track {
	background: rgba(255, 255, 255, 0.02);
}

.split-sidebar::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.1);
	border-radius: 2px;
	transition: background-color 0.3s;
}

.split-sidebar:hover::-webkit-scrollbar-thumb {
	background: var(--destacado);
}

/* LIST ITEM DESIGN */
.split-list-item {
	position: relative;
	padding: 25px 20px;
	display: flex;
	gap: 20px;
	align-items: flex-start;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 0px;
	background-color: transparent;
	opacity: 0.3;
	/* Faded inactive state */
	transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1),
		border-color 0.4s ease,
		background-color 0.4s ease,
		transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
	cursor: pointer;
}

.split-list-item:hover,
.split-list-item.active {
	opacity: 1;
	/* Highlighted active state */
	border-color: rgba(221, 216, 161, 0.4);
	background-color: rgba(255, 255, 255, 0.03);
}

.split-list-item.active {
	transform: translateX(5px);
	/* Active visual offset */
}

/* MONUMENTAL INDEX NUMBERS */
.split-item-number {
	font-family: var(--barlow);
	font-size: 2.2rem;
	font-weight: 800;
	color: transparent;
	-webkit-text-stroke: 1px rgba(255, 255, 255, 0.25);
	line-height: 1;
	letter-spacing: 1px;
	transition: all 0.3s ease;
	margin-top: 2px;
}

.split-list-item:hover .split-item-number,
.split-list-item.active .split-item-number {
	-webkit-text-stroke: 1px var(--destacado);
	color: var(--destacado);
}

.split-item-info {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.split-item-meta {
	display: flex;
}

.split-item-tag {
	font-family: var(--mulish);
	font-size: 14px;
	font-weight: 700;
	color: var(--destacado);
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.split-item-title {
	font-family: var(--barlow);
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.2;
	color: white;
	margin: 0;
	text-transform: uppercase;
	transition: color 0.3s ease;
}

.split-list-item:hover .split-item-title,
.split-list-item.active .split-item-title {
	color: var(--destacado);
}

.split-item-location {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--texto-atenuado);
	font-size: 13px;
	font-family: var(--mulish);
}

.location-icon {
	color: var(--destacado);
	flex-shrink: 0;
}

/* RIGHT PROJECTION CANVAS */
.split-projection {
	flex: 1;
	position: relative;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 0px;
	/* Sharp geometry */
	overflow: hidden;
	background: #000;
	height: 620px;
}

/* PROJECTION IMAGE LAYERS */
.projection-layer {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	transform: scale(1.0);
	z-index: 1;
	pointer-events: none;
	transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1),
		transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.projection-layer.active {
	opacity: 1;
	transform: scale(1.03);
	/* Subtle cinemático zoom */
	z-index: 2;
	pointer-events: auto;
}

.projection-image-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
}

.projection-image-wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.projection-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: none;
	/* Se elimina el degradado que oscurecía las imágenes de proyección */
	pointer-events: none;
}

/* Utility class for screen readers (WCAG Accessibility) */
.sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.exposiciones-actuales-empty {
	padding: 100px 40px;
	text-align: center;
	background-color: var(--bloque);
	border: 1px dashed rgba(255, 255, 255, 0.1);
	border-radius: 0px;
	margin-bottom: var(--pm-block-xy);
}

.exposiciones-actuales-empty p {
	font-size: 1.2rem;
	color: var(--texto-atenuado);
	margin: 0;
	font-family: var(--mulish);
}

/* RESPONSIVE DESIGN ADJUSTMENTS */
@media (max-width: 1024px) {
	.split-gallery-container {
		gap: 30px;
		padding: 30px var(--pm-block-xy-min) 60px;
	}

	.split-sidebar {
		flex: 0 0 45%;
	}
}

@media (max-width: 768px) {


	#exposiciones-actuales .exposiciones-actuales-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		padding: 0 15px 20px;
	}

	#exposiciones-actuales .tabs-container {
		width: 100%;
	}

	#exposiciones-actuales .tabs-nav {
		width: 100%;
		justify-content: space-between;
		gap: 8px;
	}

	#exposiciones-actuales .tab-btn {
		flex: 1;
		padding: 10px 5px;
		font-size: 0.85rem;
		text-align: center;
	}

	.split-gallery-container {
		flex-direction: column-reverse;
		/* List at bottom, projection at top */
		gap: 20px;
		padding: 20px 15px 40px;
	}

	.split-sidebar {
		flex: 0 0 100%;
		max-height: unset;
		overflow-y: visible;
		padding-right: 0;
	}

	.split-projection {
		width: 100%;
		height: 340px;
	}

	.split-list-item {
		opacity: 0.8;
		/* Highlighted better in mobile touch stream */
		padding: 15px 10px;
	}

	.split-list-item.active {
		background-color: rgba(221, 216, 161, 0.05);
		transform: none;
		/* Avoid horizontal shift in small phones */
	}

	.split-item-title {
		font-size: 1.3rem;
	}
}

/* Páginas de diseño personalizadas - Histórico de Exposiciones */
#historico-exposiciones #resultados-busqueda-header {
	margin-top: 6rem;
	/* Aumentamos el margen superior para dar más aire al título bajo el menú superior fijo */
}

@media (max-width: 768px) {
	#historico-exposiciones #resultados-busqueda-header {
		margin-top: 4rem;
		/* Margen adaptado para dispositivos móviles */
	}
}

/* Biblioteca de medios */
.manita {
	cursor: pointer;
}

.embed-responsive-item {
	transition: transform 0.2s ease-in-out;
}

.card.manita:hover .embed-responsive-item {
	transform: scale(1.05);
}

/* ==========================================================================
   Agenda de Eventos y Detalle
   ========================================================================== */

.agenda-container {
	margin: 0 auto 5rem;
	padding: 0 var(--pm-block-xy);
}

/* Controls Bar */
.agenda-controls-bar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 2rem;
	margin-bottom: 2rem;
}

.search-box-wrap {
	position: relative;
	flex: 1;
	max-width: 500px;
}

.search-icon {
	position: absolute;
	left: 15px;
	top: 50%;
	transform: translateY(-50%);
	color: #888;
}

.search-input {
	width: 100%;
	padding: 0.2rem 1rem 0.2rem 2.8rem !important;
	background: var(--bloque);
	border: var(--linea);
	color: white;
	font-size: 1rem;
	transition: all 0.3s ease;
}

.search-input:focus {
	border-color: var(--destacado);
	outline: none;
	box-shadow: 0 0 8px rgba(255, 255, 255, 0.1);
}

/* Quick Jump Datepicker Popover */
.quick-jump-wrap {
	position: relative;
	display: inline-block;
}

.btn-jump-datepicker {
	padding: 0.8rem 1.2rem !important;
	background: var(--bloque);
	border: var(--linea);
	color: white;
	font-size: 1rem;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	gap: 0.8rem;
	font-weight: 500;
}

.btn-jump-datepicker:hover,
.btn-jump-datepicker.active {
	border-color: var(--destacado);
	color: var(--destacado);
}

.btn-jump-datepicker .caret-icon {
	font-size: 0.8rem;
	transition: transform 0.3s ease;
}

.btn-jump-datepicker.active .caret-icon {
	transform: rotate(180deg);
}

.datepicker-popover {
	position: absolute;
	top: calc(100% + 0.5rem);
	left: 0;
	z-index: 1000;
	background: var(--base);
	border: 1px solid var(--destacado);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.6);
	padding: 1.2rem;
	width: 290px;
	border-radius: 4px;
	animation: datepickerFadeIn 0.2s ease;
}

@keyframes datepickerFadeIn {
	from {
		opacity: 0;
		transform: translateY(-5px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.datepicker-popover-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 1.2rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	padding-bottom: 0.6rem;
}

.picker-year-display {
	font-weight: bold;
	color: white;
	font-size: 1.15rem;
	font-family: var(--barlow), sans-serif;
}

.btn-picker-nav {
	background: transparent;
	border: none;
	color: #aaa;
	cursor: pointer;
	padding: 0.4rem 0.6rem;
	font-size: 0.9rem;
	transition: color 0.2s ease, transform 0.1s ease;
}

.btn-picker-nav:hover:not(:disabled) {
	color: var(--destacado);
	transform: scale(1.1);
}

.btn-picker-nav:disabled {
	opacity: 0.25;
	cursor: not-allowed;
}

.datepicker-months-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0.6rem;
}

.btn-picker-month {
	background: rgba(255, 255, 255, 0.02);
	border: 1px solid rgba(255, 255, 255, 0.08);
	color: #ccc;
	padding: 0.7rem 0.3rem;
	text-align: center;
	font-size: 0.85rem;
	font-family: var(--barlow), sans-serif;
	cursor: pointer;
	transition: all 0.2s ease;
	border-radius: 3px;
}

.btn-picker-month:hover {
	background: rgba(212, 175, 55, 0.1);
	border-color: var(--destacado);
	color: white;
}

.btn-picker-month.active {
	background: var(--destacado);
	border-color: var(--destacado);
	color: #121212 !important;
	font-weight: bold;
}

.sequential-month-nav {
	display: flex;
	align-items: center;
	flex: 1;
	justify-content: space-between;
}

.view-toggles {
	display: flex;
	background: var(--bloque);
	border: var(--linea);
	padding: 4px;
}

.btn-toggle {
	padding: 0.6rem 1.2rem;
	border: 0;
	background: transparent;
	color: #bbb;
	font-weight: var(--bold);
	cursor: pointer;
	transition: all 0.2s ease;
}

.btn-toggle.active {
	background: var(--destacado);
	color: var(--base);
}

.btn-toggle i {
	margin-right: 5px;
}

/* Category Filters */
.btn-toggle-filters {
	display: none;
}

.agenda-categories-wrapper {
	display: block;
}

.agenda-categories-selector {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
	margin-bottom: 2.5rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	padding-bottom: 1.5rem;
}

.category-filter-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.5rem 1rem;
	background: var(--bloque);
	border: var(--linea);
	color: #ddd;
	font-size: 0.9rem;
	font-weight: var(--semibold);
	cursor: pointer;
	transition: all 0.3s ease;
}

.category-filter-btn:hover,
.category-filter-btn.active {
	border-color: var(--destacado);
	background: rgba(255, 255, 255, 0.05);
	color: white;
}

.category-filter-btn.active {
	box-shadow: inset 0 0 5px rgba(255, 255, 255, 0.2);
}

.color-dot {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
}

.color-dot.c-all {
	background: white;
}

/* Month Navigator */
.month-navigator-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: var(--bloque);
	border: var(--linea);
	padding: 0.5rem;
	margin-bottom: 3rem;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.nav-month-btn {
	background: transparent;
	border: 0;
	color: var(--destacado);
	font-size: 1.5rem;
	width: 50px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.2s ease;
}

.nav-month-btn:hover {
	transform: scale(1.2);
}

.month-carousel {
	display: flex;
	flex: 1;
	justify-content: space-around;
	overflow: hidden;
	gap: 1rem;
}

.month-carousel-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 0.5rem 1.5rem;
	cursor: pointer;
	transition: all 0.3s ease;
	border-radius: 4px;
	min-width: 100px;
}

.month-carousel-item:hover {
	background: rgba(255, 255, 255, 0.05);
}

.month-carousel-item.active {
	background: var(--destacado);
	color: var(--base);
}

.month-carousel-item .month-name {
	font-size: 1.1rem;
	font-weight: var(--bold);
	text-transform: uppercase;
}

.month-carousel-item .month-year {
	font-size: 0.8rem;
	opacity: 0.8;
}

.month-carousel-item.active .month-name,
.month-carousel-item.active .month-year {
	color: var(--base);
}

/* Event Grid */
.eventos-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
	gap: 2.5rem;
}

.evento-card {
	display: flex;
	flex-direction: column;
	background: var(--bloque);
	border: var(--linea);
	height: 100%;
	transition: all 0.3s ease;
	overflow: hidden;
	position: relative;
}

.evento-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
	border-color: var(--destacado);
}

.evento-card-image {
	height: 220px;
	background-size: cover;
	background-position: center;
	position: relative;
}

.evento-category-tag {
	position: absolute;
	top: 15px;
	left: 15px;
	padding: 0.3rem 0.8rem;
	font-size: 0.8rem;
	font-weight: var(--bold);
	color: white;
	text-transform: uppercase;
	border-radius: 20px;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}

.evento-card-content {
	padding: 1.5rem;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.evento-card-title {
	margin-top: 0;
	margin-bottom: 1rem;
	font-size: 1.25rem;
	line-height: 1.4;
}

.evento-card-title a {
	color: white;
	text-decoration: none;
	transition: color 0.2s ease;
}

.evento-card-title a:hover {
	color: var(--destacado);
}

.evento-card-meta {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin-bottom: 1.2rem;
	color: #bbb;
	font-size: 0.9rem;
}

.meta-item i {
	color: var(--destacado);
	margin-right: 5px;
	width: 15px;
}

.evento-card-desc {
	font-size: 0.95rem;
	color: #eee;
	line-height: 1.6;
	margin-bottom: 1.5rem;
	flex: 1;
}

.evento-card-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-top: 1px solid rgba(255, 255, 255, 0.05);
	padding-top: 1rem;
	margin-top: auto;
}

.evento-price {
	font-size: 1.05rem;
	font-weight: var(--bold);
	color: var(--destacado);
}

.evento-card .btn {
	align-self: center;
	margin-top: auto;
}


.btn-card-details {
	padding: 0.5rem 1.2rem;
	font-size: 0.9rem;
	background: transparent;
	border: var(--linea);
	color: white;
	cursor: pointer;
	transition: all 0.3s ease;
}

.btn-card-details:hover {
	background: var(--destacado);
	color: var(--base);
	border-color: var(--destacado);
}

/* Day View Styles */
.day-events-view {
	display: flex;
	gap: 3rem;
	align-items: flex-start;
}

.calendar-grid-wrapper {
	flex: 1.2;
	background: var(--bloque);
	border: var(--linea);
	padding: 1.5rem;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.calendar-header-days {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	text-align: center;
	font-weight: var(--bold);
	color: var(--destacado);
	margin-bottom: 1rem;
	font-size: 0.95rem;
}

.calendar-days-grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 4px;
}

.cal-day-cell {
	aspect-ratio: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 8px;
	background: rgba(255, 255, 255, 0.02);
	border: 1px solid rgba(255, 255, 255, 0.05);
	cursor: pointer;
	position: relative;
	transition: all 0.2s ease;
}

.cal-day-cell:hover {
	background: rgba(255, 255, 255, 0.08);
	border-color: var(--destacado);
}

.cal-day-cell.empty {
	background: transparent;
	border: 0;
	cursor: default;
	pointer-events: none;
}

.cal-day-cell.selected {
	background: rgba(255, 255, 255, 0.15);
	border: 2px solid var(--destacado);
}

.cal-day-cell.today {
	background: rgba(255, 152, 0, 0.1);
	border-color: rgba(255, 152, 0, 0.5);
}

.cal-day-cell.today .day-num {
	color: #FF9800;
	font-weight: var(--bold);
}

.day-num {
	font-size: 1.05rem;
	color: white;
}

.day-indicators {
	display: flex;
	gap: 3px;
	justify-content: center;
	margin-top: auto;
}

.indicator-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
}

.day-events-list {
	flex: 1;
	background: var(--bloque);
	border: var(--linea);
	padding: 2rem;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	min-height: 400px;
}

.day-list-header {
	color: var(--destacado);
	margin-top: 0;
	margin-bottom: 2rem;
	font-size: 1.3rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	padding-bottom: 0.8rem;
	text-transform: capitalize;
}

.day-event-row-item {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	padding: 1.2rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.day-event-row-item:last-child {
	border-bottom: 0;
}

.row-category-indicator {
	width: 4px;
	height: 60px;
	border-radius: 2px;
}

.day-event-row-content {
	flex: 1;
}

.row-category-badge {
	display: inline-block;
	padding: 0.15rem 0.5rem;
	font-size: 0.75rem;
	font-weight: var(--bold);
	color: white;
	text-transform: uppercase;
	border-radius: 10px;
	margin-bottom: 0.5rem;
}

.day-event-row-title {
	margin: 0 0 0.5rem;
	font-size: 1.1rem;
	line-height: 1.4;
}

.day-event-row-title a {
	color: white;
	text-decoration: none;
	transition: color 0.2s ease;
}

.day-event-row-title a:hover {
	color: var(--destacado);
}

.day-event-row-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	font-size: 0.85rem;
	color: #aaa;
}

.row-meta-item i {
	color: var(--destacado);
	margin-right: 4px;
}

.row-meta-item.price {
	font-weight: var(--semibold);
	color: var(--destacado);
}

.btn-row-details {
	padding: 0.4rem 1rem;
	font-size: 0.85rem;
	background: transparent;
	border: var(--linea);
	color: white;
	transition: all 0.3s ease;
}

.btn-row-details:hover {
	background: var(--destacado);
	color: var(--base);
	border-color: var(--destacado);
}

/* Empty States */
.agenda-loading-placeholder,
.agenda-empty-state,
.agenda-empty-state-small {
	text-align: center;
	padding: 4rem 2rem;
	color: #aaa;
}

.agenda-loading-placeholder i {
	font-size: 2.5rem;
	color: var(--destacado);
	margin-bottom: 1rem;
	display: block;
}

.agenda-empty-state i {
	font-size: 3.5rem;
	color: #444;
	margin-bottom: 1.5rem;
	display: block;
}

.agenda-empty-state p {
	font-size: 1.1rem;
}

.agenda-empty-state-small {
	padding: 2rem 1rem;
	font-size: 0.95rem;
}

[v-cloak] {
	display: none;
}

/* Detalle Evento - Layout base */
.agenda-detalle-wrap {
	display: flex;
	flex-direction: column;
	gap: 0;
	padding: 0 var(--pm-block-xy) var(--pm-block-xy);
	margin: 0 auto;
}

.agenda-detalle-main {
	flex: 1;
	width: 100%;
}

/* Barra horizontal de info del evento */
.agenda-info-bar {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1.25rem;
	background: var(--bloque);
	border: var(--linea);
	border-top: 4px solid var(--destacado);
	padding: 1.75rem 2rem;
	margin: 0 auto 2.5rem;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.18);
	text-align: center;
}

.agenda-info-bar-titulo {
	color: var(--destacado);
	font-size: var(--title-section);
	margin: 0;
	padding-bottom: 1rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	width: 100%;
	text-align: center;
}

.agenda-info-bar-chips {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 0;
}

.agenda-info-chip {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.5rem 1.5rem;
	border-right: 1px solid rgba(255, 255, 255, 0.1);
}


.agenda-info-chip:last-child {
	border-right: none;
}

.agenda-info-chip>i {
	color: var(--destacado);
	font-size: 1.25rem;
	flex-shrink: 0;
}

.agenda-info-chip-content {
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
	text-align: left;
}

.chip-label {
	font-size: 0.72rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #999;
	font-weight: 600;
}

.chip-value {
	font-size: 0.95rem;
	color: #fff;
	font-weight: 500;
	white-space: nowrap;
}

.agenda-info-bar-actions {
	display: flex;
	gap: 0.75rem;
	flex-shrink: 0;
	flex-wrap: wrap;
	justify-content: center;
}

/* Mantener clases de sidebar ocultas en el nuevo diseño */
.agenda-detalle-sidebar {
	display: none;
}

.agenda-info-box h3 {
	color: var(--destacado);
	margin-top: 0;
	margin-bottom: 1.5rem;
	font-size: var(--title-section);
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	padding-bottom: 0.5rem;
}

.agenda-info-box ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.agenda-info-box li {
	margin-bottom: 1.2rem;
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
}

.agenda-info-box li strong {
	font-size: var(--text-small);
	color: #bbb;
}

.agenda-info-box li i {
	color: var(--destacado);
	margin-right: 5px;
}

.agenda-info-box li span {
	font-size: var(--text-small);
	margin: 5px 0px;
}

.comprar-entradas-box {
	margin-top: 2rem;
	text-align: center;
}

.btn-entradas {
	display: block;
	width: 100%;
	padding: 1rem;
	font-size: 1.1rem;
	font-weight: var(--bold);
	background: #00ca69;
	color: white;
	text-align: center;
	border-radius: 4px;
	transition: all 0.3s ease;
}

.btn-entradas:hover {
	background: #00a857;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 202, 105, 0.4);
}

.btn-volver-wrap {
	text-align: center;
}

.categoria-badge {
	display: inline-block;
	padding: 0.3rem 0.8rem;
	border-radius: 20px;
	font-size: 0.9rem;
	font-weight: var(--bold);
	text-transform: uppercase;
	margin-right: 15px;
	color: white;
}

.lugar-cenefa {
	font-size: 1rem;
	color: #ddd;
}

.lugar-cenefa i {
	color: var(--destacado);
}

/* Colores unificados de categorías */
.c-cine {
	background-color: #2196F3 !important;
}

.c-musica {
	background-color: #FF9800 !important;
}

.c-teatro {
	background-color: #E91E63 !important;
}

.c-talleres {
	background-color: #4CAF50 !important;
}

.c-literatura {
	background-color: #9C27B0 !important;
}

.c-exposiciones {
	background-color: #00BCD4 !important;
}

.c-otros {
	background-color: #795548 !important;
}

.c-danza {
	background-color: #E040FB !important;
}

/* Danza */
.c-concursos {
	background-color: #FFC107 !important;
}

/* Ámbar/Amarillo */
.c-convocatorias {
	background-color: #3F51B5 !important;
}

/* Índigo/Azul Oscuro */
.c-patrimonio {
	background-color: #8D6E63 !important;
}

/* Marrón Claro */
.c-conferencias {
	background-color: #009688 !important;
}

/* Verde Azulado */
.c-artes-plasticas {
	background-color: #00E676 !important;
}

/* Verde Lima Brillante */
.c-fotografia {
	background-color: #607D8B !important;
}

/* Gris Azulado */
.c-becas {
	background-color: #9E9D24 !important;
}

/* Verde Oliva */
.c-videojuegos {
	background-color: #FF5252 !important;
}

/* Rojo */
.c-coro {
	background-color: #FF5722 !important;
}

/* Naranja Rojizo */

/* Responsive General Agenda */
@media (max-width: 980px) {
	.agenda-controls-bar {
		flex-direction: column;
		align-items: stretch;
		gap: 1rem;
	}

	.search-box-wrap {
		max-width: 100%;
	}

	.quick-jump-wrap {
		width: 100%;
	}

	.btn-jump-datepicker {
		width: 100%;
		justify-content: space-between;
	}

	.datepicker-popover {
		width: 100%;
		box-sizing: border-box;
	}

	.month-navigator-bar {
		flex-direction: column;
		align-items: stretch;
		gap: 0.8rem;
	}

	.sequential-month-nav {
		width: 100%;
	}

	.day-events-view {
		flex-direction: column;
	}

	.calendar-grid-wrapper,
	.day-events-list {
		width: 100%;
	}

	.agenda-detalle-wrap {
		padding: 0 var(--pm-responsive) var(--pm-block-xy);
	}

	.agenda-info-bar {
		align-items: center;
		gap: 1rem;
	}

	.agenda-info-bar-chips {
		flex-direction: column;
		align-items: center;
		gap: 0.75rem;
	}

	.agenda-info-chip {
		padding: 0;
		border-right: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.08);
		padding-bottom: 0.75rem;
		width: 100%;
	}

	.agenda-info-chip:last-child {
		border-bottom: none;
		padding-bottom: 0;
	}

	.agenda-info-bar-actions {
		width: 100%;
		justify-content: stretch;
	}

	.agenda-info-bar-actions .btn {
		flex: 1;
		text-align: center;
		justify-content: center;
	}

	.chip-value {
		white-space: normal;
	}

	.day-event-row-title {
		font-size: var(--text-breadcrumbs);
		margin-bottom: 0.3rem;
		line-height: 1.3;
	}

	.day-event-row-meta {
		flex-direction: column;
		gap: 0.35rem;
		font-size: 0.8rem;
	}

	.day-event-row-item {
		flex-direction: column;
		align-items: stretch;
		position: relative;
		padding-left: 15px;
		gap: 0.8rem;
	}

	.row-category-indicator {
		position: absolute;
		left: 0;
		top: 1.2rem;
		bottom: 1.2rem;
		height: auto;
		width: 4px;
	}

	.day-event-row-action {
		width: 100%;
		margin-top: 0.4rem;
	}

	.btn-row-details {
		width: 100%;
		text-align: center;
		display: block;
		padding: 0.6rem;
	}

	.cal-day-cell {
		min-height: 60px !important;
		padding: 6px !important;
		align-items: center !important;
	}

	.cal-day-cell-events {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: wrap;
		justify-content: center;
		gap: 4px !important;
		margin-top: 4px !important;
		width: 100% !important;
	}

	.calendar-event-mini {
		background: transparent !important;
		padding: 0 !important;
		margin: 0 !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		border: none !important;
		box-shadow: none !important;
		width: auto !important;
		height: auto !important;
	}

	.calendar-event-mini .event-mini-title {
		display: none;
	}

	.calendar-event-mini-more {
		display: none;
	}

	.color-dot-mini {
		width: 8px;
		height: 8px;
		display: inline-block;
		border-radius: 50%;
	}

	/* Filtros colapsables (Acordeón Inline) en Mobile */
	.btn-toggle-filters {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		padding: 0.8rem 1.2rem;
		background: var(--bloque);
		border: var(--linea);
		color: white;
		font-family: var(--barlow), sans-serif;
		font-size: 1rem;
		font-weight: var(--bold);
		text-transform: uppercase;
		cursor: pointer;
		transition: all 0.3s ease;
		margin-bottom: 1.5rem;
	}

	.btn-toggle-filters:hover,
	.btn-toggle-filters.active {
		border-color: var(--destacado);
		color: var(--destacado);
	}

	.btn-toggle-filters-text strong {
		color: var(--destacado);
		margin-left: 5px;
	}

	.agenda-categories-wrapper {
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
		margin-bottom: 0;
		border-bottom: 1px solid transparent;
	}

	.agenda-categories-wrapper.mobile-visible {
		max-height: 500px;
		margin-bottom: 2.5rem;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
		padding-bottom: 1.5rem;
	}

	.agenda-categories-wrapper .agenda-categories-selector {
		border-bottom: none;
		padding-bottom: 0;
		margin-bottom: 0;
	}
}

/* Calendar Full Width and Modal Details */
.full-width-calendar {
	width: 100%;
	max-width: 100%;
	flex: none;
}

.cal-day-cell {
	min-height: 120px;
	height: auto;
	aspect-ratio: auto;
	justify-content: flex-start;
}

.cal-day-cell-events {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-top: 6px;
	width: 100%;
	overflow: hidden;
}

.calendar-event-mini {
	display: flex;
	align-items: center;
	gap: 5px;
	background: rgba(255, 255, 255, 0.05);
	padding: 3px 6px;
	border-radius: 3px;
	font-size: 0.72rem;
	color: #eee;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	max-width: 100%;
	transition: background 0.2s ease, transform 0.1s ease;
}

.calendar-event-mini:hover {
	background: rgba(255, 255, 255, 0.12);
	transform: translateX(2px);
}

.color-dot-mini {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	flex-shrink: 0;
}

.event-mini-title {
	overflow: hidden;
	text-overflow: ellipsis;
}

.calendar-event-mini-more {
	font-size: 0.72rem;
	color: var(--destacado);
	padding-left: 6px;
	font-weight: var(--semibold);
}

/* Modal styling */
.agenda-modal-backdrop {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.75);
	backdrop-filter: blur(5px);
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1rem;
}

.agenda-modal-content {
	background: var(--base);
	border: var(--linea);
	border-radius: 8px;
	width: 100%;
	max-width: 750px;
	max-height: 85vh;
	overflow-y: auto;
	padding: 2.5rem 2rem 2rem;
	position: relative;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
	animation: agendaModalFadeIn 0.3s ease;
	-ms-overflow-style: none;
	/* IE and Edge */
	scrollbar-width: none;
	/* Firefox */
}

.agenda-modal-content::-webkit-scrollbar {
	display: none;
	/* Chrome, Safari and Opera */
}

@keyframes agendaModalFadeIn {
	from {
		opacity: 0;
		transform: scale(0.95) translateY(-10px);
	}

	to {
		opacity: 1;
		transform: scale(1) translateY(0);
	}
}

.modal-close-btn {
	position: absolute;
	top: 1rem;
	right: 1.2rem;
	background: transparent;
	border: 0;
	color: #888;
	font-size: 1.6rem;
	cursor: pointer;
	transition: color 0.2s ease, transform 0.2s ease;
	padding: 5px;
	line-height: 1;
}

.modal-close-btn:hover {
	color: var(--destacado);
	transform: scale(1.1);
}

/* Vista Diaria Grouped Layout */
.day-group-item {
	background: var(--bloque);
	border: var(--linea);
	padding: 2rem;
	margin-bottom: 2rem;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

.day-group-header {
	color: var(--destacado);
	margin-top: 0;
	margin-bottom: 1.5rem;
	font-size: 1.3rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	padding-bottom: 0.8rem;
	text-transform: capitalize;
}

/* Subtítulos/Encabezados en la descripción del evento */
.agenda-subtitulo {
	font-family: var(--barlow), sans-serif;
	font-weight: 700;
	color: var(--destacado);
	margin-top: 1.8em;
	margin-bottom: 0.6em;
	font-size: var(--title-subsection);
	line-height: 1.2;
	letter-spacing: -0.01em;
}

.agenda-subtitulo:first-child {
	margin-top: 0;
}

/* Espaciado de párrafos en la descripción del evento */
.agenda-detalle-descripcion.content p {
	margin-bottom: 1.2em;
	line-height: 1.6;
}

.agenda-detalle-descripcion.content p:last-child {
	margin-bottom: 0;
}

/* Estilos para tablas en el contenido de noticias y eventos */
#noticias-detalle-contenido table,
.content table {
	width: 100%;
	margin-bottom: 2rem;
	border-collapse: collapse;
	font-size: 0.95rem;
	line-height: 1.5;
	background-color: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

#noticias-detalle-contenido th,
#noticias-detalle-contenido td,
.content th,
.content td {
	padding: 12px 15px;
	text-align: left;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

#noticias-detalle-contenido th,
.content th {
	background-color: rgba(255, 255, 255, 0.07);
	font-weight: 700;
	color: var(--destacado, #ddd8a1);
	border-bottom: 2px solid rgba(255, 255, 255, 0.2);
}

#noticias-detalle-contenido tr:hover,
.content tr:hover {
	background-color: rgba(255, 255, 255, 0.05);
}

/* Hacer las tablas responsive */
@media screen and (max-width: 768px) {

	#noticias-detalle-contenido table,
	.content table {
		display: block;
		width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

/* Corrección del tamaño de imágenes en noticias y contenidos */
#noticias-detalle-contenido img,
.agenda-detalle-descripcion.content img {
	max-width: 100% !important;
	width: auto;
	height: auto;
}

.content-wrap img {
	max-width: 100% !important;
}

/* Soporte de alineaciones estándar de WordPress en imágenes */
#noticias-detalle-contenido img.aligncenter,
.content-wrap img.aligncenter,
.agenda-detalle-descripcion.content img.aligncenter {
	display: block;
	margin: 1.5rem auto;
}

#noticias-detalle-contenido img.alignleft,
.content-wrap img.alignleft,
.agenda-detalle-descripcion.content img.alignleft {
	float: left;
	margin: 0.5rem 1.5rem 1.5rem 0;
}

#noticias-detalle-contenido img.alignright,
.content-wrap img.alignright,
.agenda-detalle-descripcion.content img.alignright {
	float: right;
	margin: 0.5rem 0 1.5rem 1.5rem;
}

#noticias-detalle-contenido img.alignnone,
.content-wrap img.alignnone,
.agenda-detalle-descripcion.content img.alignnone {
	display: block;
	margin: 1rem 0;
}

/* Nuevas Secciones de la Home */

/* Agenda Cultural en la Home */
.agenda-home-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 2em;
	padding: 0 var(--pm-block-xy) var(--pm-block-xy);
}

.agenda-card {
	position: relative;
	overflow: hidden;
	background: var(--bloque);
	border: var(--linea);
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.agenda-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
	border-color: var(--destacado);
}

.agenda-card-image {
	height: 320px;
	background-size: cover;
	background-position: center;
	position: relative;
	transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.agenda-card:hover .agenda-card-image {
	transform: scale(1.05);
}

.agenda-card-tag {
	position: absolute;
	top: 15px;
	left: 15px;
	padding: 4px 12px;
	font-size: 0.75rem;
	font-weight: bold;
	color: white;
	text-transform: uppercase;
	border-radius: 12px;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}

.agenda-card-body {
	padding: 1.5rem;
	display: flex;
	gap: 1.2rem;
	align-items: flex-start;
	flex: 1;
}

.agenda-card-date {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.03);
	padding: 8px 12px;
	border-radius: 6px;
	border: var(--linea);
	min-width: 60px;
	text-align: center;
}

.agenda-card-day {
	font-size: 1.4rem;
	font-weight: bold;
	color: var(--destacado);
	line-height: 1;
}

.agenda-card-month {
	font-size: 0.75rem;
	text-transform: uppercase;
	color: #aaa;
	margin-top: 2px;
}

.agenda-card-info {
	flex: 1;
}

.agenda-card-title {
	font-size: 1.15rem;
	font-weight: bold;
	margin: 0 0 0.5rem;
	line-height: 1.3;
	color: white;
	font-family: var(--mulish), sans-serif;
}

.agenda-card-lugar {
	font-size: 0.85rem;
	color: #aaa;
	margin: 0;
	display: flex;
	align-items: center;
	gap: 5px;
}

.agenda-card-lugar i {
	color: var(--destacado);
}

/* Sección Multimedia en la Home */
.multimedia-video-container {
	position: relative;
	width: 100%;
	height: 480px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	background: black;
	border: var(--linea);
}

.multimedia-video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.multimedia-overlay-text {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background: linear-gradient(transparent, rgba(0, 0, 0, 0.9) 50%);
	padding: 4rem var(--pm-block-xy) 2.5rem;
	color: white;
	pointer-events: none;
	z-index: 2;
}

.multimedia-overlay-text h3 {
	font-size: 2rem;
	font-family: var(--barlow), sans-serif;
	font-weight: bold;
	color: var(--destacado);
	margin: 0 0 0.5rem;
	text-transform: uppercase;
}

.multimedia-overlay-text p {
	font-size: 0.95rem;
	line-height: 1.6;
	color: #ddd;
	max-width: 800px;
	margin: 0;
}

/* Disciplinas Artísticas en la Home */
#disciplinas-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 2em;
	padding: var(--pm-block-xy-min) var(--pm-block-xy) var(--pm-block-xy);
}

.disciplina-item {
	position: relative;
	height: 180px;
	overflow: hidden;
	background: #000;
	border: var(--linea);
	transition: transform 0.3s ease;
}

.disciplina-item:hover {
	transform: scale(1.02);
}

.disciplina-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.5;
	transition: opacity 0.3s, filter 0.3s;
}

.disciplina-item:hover img {
	opacity: 0.7;
	filter: brightness(110%);
}

.disciplina-item p {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	font-family: var(--barlow), sans-serif !important;
	font-size: 1.4rem;
	font-weight: bold;
	text-transform: uppercase;
	color: white;
	background-color: rgba(0, 0, 0, 0.65);
	padding: 10px 20px;
	border-radius: 4px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(4px);
	transition: background-color 0.3s, border-color 0.3s, color 0.3s;
	pointer-events: none;
	text-align: center;
	white-space: nowrap;
}

.disciplina-item:hover p {
	background-color: rgba(0, 0, 0, 0.85);
	border-color: var(--destacado);
	color: var(--destacado);
}

/* Media Queries para Responsive */
@media (max-width: 980px) {

	.agenda-home-grid,
	#disciplinas-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		padding: var(--pm-block-xy-min) 0 0 0;
	}

	.multimedia-video-container {
		height: 350px;
	}

	.multimedia-overlay-text {
		padding: 3rem var(--pm-responsive) 2rem;
	}
}

@media (max-width: 600px) {

	.agenda-home-grid,
	#disciplinas-grid {
		grid-template-columns: 1fr !important;
		grid-gap: 1.5em;
	}

	.agenda-card-image {
		height: 260px;
	}

	.multimedia-video-container {
		height: 250px;
	}

	.multimedia-overlay-text h3 {
		font-size: 1.5rem;
	}

	.multimedia-overlay-text p {
		font-size: 0.85rem;
		line-height: 1.4;
	}
}

/* =========================================
   Página Qué es el CICUS
   ========================================= */

#que-es-cicus .tabs-container {
	width: 100%;
	margin-bottom: 3rem;
}

#que-es-cicus .tabs-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	border-bottom: 2px solid #333;
	padding-bottom: 15px;
	margin-bottom: 30px;
	justify-content: flex-start;
}

#que-es-cicus .tab-btn {
	background: transparent;
	border: 2px solid var(--destacado);
	padding: 15px 30px;
	font-size: var(--title-subsection);
	font-family: var(--barlow);
	font-weight: 700;
	color: var(--destacado);
	cursor: pointer;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

#que-es-cicus .tab-btn:hover {
	background-color: rgba(221, 216, 161, 0.1);
	color: #fff;
	border-color: #fff;
}

#que-es-cicus .tab-btn.active {
	background-color: var(--destacado);
	color: var(--base);
	border-color: var(--destacado);
	box-shadow: 0 0 15px rgba(221, 216, 161, 0.3);
}

#que-es-cicus .tab-content {
	display: none;
	animation: fadeIn 0.5s ease;
}

#que-es-cicus .tab-content.active {
	display: block;
}

/* Grid Layouts and Cards for CICUS */
.cicus-section {
	margin-bottom: 60px;
	width: 100%;
}

.cicus-section.separator-top {
	border-top: 1px solid #333;
	padding-top: 40px;
	margin-top: 40px;
}

.cicus-grid {
	display: grid;
	grid-template-columns: 1.2fr 0.8fr;
	gap: 40px;
	align-items: start;
	margin-bottom: 30px;
}

.cicus-text h2.cicus-title {
	font-family: var(--barlow);
	font-size: 2.2rem;
	color: #fff;
	margin-top: 0;
	margin-bottom: 20px;
	font-weight: 700;
	text-transform: uppercase;
}

.cicus-text h3 {
	font-family: var(--barlow);
	font-size: 1.6rem;
	color: var(--destacado);
	margin-top: 30px;
	margin-bottom: 15px;
	font-weight: 700;
}

.cicus-text p {
	color: #ccc;
	line-height: 1.7;
	font-size: 1.1rem;
	margin-bottom: 15px;
}

.cicus-text p.lead {
	font-size: 1.3rem;
	color: #fff;
	line-height: 1.6;
	border-left: 4px solid var(--destacado);
	padding-left: 15px;
}

.cicus-list {
	list-style: none !important;
	list-style-type: none !important;
	padding-left: 0;
}

.cicus-list li {
	position: relative;
	padding-left: 25px;
	margin-bottom: 15px;
	color: #ccc;
	line-height: 1.7;
	font-size: 1.1rem;
	list-style: none !important;
	list-style-type: none !important;
}

.cicus-list li::before {
	content: "—";
	position: absolute;
	left: 0;
	color: var(--destacado);
	font-weight: bold;
}

.cicus-image img {
	width: 100%;
	height: auto;
	border-radius: 4px;
	box-shadow: 0 10px 35px rgba(0,0,0,0.5);
}

.cicus-gallery-two-images {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 25px;
	margin-top: 30px;
}

.cicus-gallery-two-images img {
	width: 100%;
	height: 300px;
	object-fit: cover;
	border-radius: 4px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.4);
	transition: transform 0.3s ease;
}

.cicus-gallery-two-images img:hover {
	transform: translateY(-5px);
}

/* Planos de los espacios */
.cicus-floorplans-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 25px;
	margin-top: 30px;
}

.floorplan-card {
	background: var(--bloque);
	border: 1px solid #333;
	padding: 15px;
	text-align: center;
	border-radius: 4px;
	transition: border-color 0.3s ease, transform 0.3s ease;
}

.floorplan-card:hover {
	border-color: var(--destacado);
	transform: translateY(-5px);
}

.floorplan-card h4 {
	font-family: var(--barlow);
	color: #fff;
	margin-top: 0;
	margin-bottom: 12px;
	font-size: 1.1rem;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.floorplan-img-wrap {
	width: 100%;
	height: 180px;
	overflow: hidden;
	border-radius: 2px;
	background: #000;
}

.floorplan-img-wrap img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: transform 0.3s ease;
}

.floorplan-card:hover .floorplan-img-wrap img {
	transform: scale(1.05);
}

/* Estancias del CICUS list */
.cicus-estancias-list {
	display: flex;
	flex-direction: column;
	gap: 50px;
}

.estancia-item {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	gap: 40px;
	align-items: start;
	border-bottom: 1px solid #222;
	padding-bottom: 40px;
}

.estancia-item:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.estancia-info h4 {
	font-family: var(--barlow);
	font-size: 1.5rem;
	color: var(--destacado);
	margin-top: 0;
	margin-bottom: 15px;
	text-transform: uppercase;
	font-weight: 700;
}

.estancia-info p {
	color: #ccc;
	line-height: 1.6;
	font-size: 1.05rem;
	margin-bottom: 15px;
}

.estancia-gallery-wrap {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.estancia-main-img {
	width: 100%;
	height: 300px;
	overflow: hidden;
	border-radius: 4px;
	box-shadow: 0 10px 25px rgba(0,0,0,0.4);
}

.estancia-main-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.estancia-thumbnails {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
}

.thumb-item {
	aspect-ratio: 1;
	overflow: hidden;
	border-radius: 2px;
	border: 1px solid #333;
	background: #000;
	transition: border-color 0.3s ease;
}

.thumb-item:hover {
	border-color: var(--destacado);
}

.thumb-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.thumb-item:hover img {
	transform: scale(1.1);
}

/* Salas de Exposiciones */
.cicus-exposiciones-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	margin-top: 30px;
}

.sala-exposicion-card {
	background: var(--bloque);
	border: 1px solid #333;
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: border-color 0.3s ease;
}

.sala-exposicion-card:hover {
	border-color: var(--destacado);
}

.sala-exposicion-header {
	padding: 15px;
	background: rgba(255, 255, 255, 0.02);
	border-bottom: 1px solid #333;
	text-align: center;
}

.sala-exposicion-header h4 {
	font-family: var(--barlow);
	margin: 0;
	color: #fff;
	font-size: 1.2rem;
	text-transform: uppercase;
	font-weight: 700;
}

.sala-exposicion-body {
	padding: 15px;
	display: flex;
	flex-direction: column;
	gap: 15px;
	flex: 1;
}

.sala-foto {
	width: 100%;
	height: 180px;
	overflow: hidden;
	border-radius: 2px;
}

.sala-foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.sala-exposicion-card:hover .sala-foto img {
	transform: scale(1.05);
}

.sala-plano {
	width: 100%;
	height: 130px;
	overflow: hidden;
	border-radius: 2px;
	border: 1px solid #222;
	background: #000;
}

.sala-plano img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: transform 0.3s ease;
}

.sala-exposicion-card:hover .sala-plano img {
	transform: scale(1.05);
}

/* Responsive styling */
@media (max-width: 1024px) {
	.cicus-grid {
		grid-template-columns: 1fr;
		gap: 25px;
	}
	.estancia-item {
		grid-template-columns: 1fr;
		gap: 25px;
	}
	.cicus-exposiciones-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 768px) {
	#que-es-cicus .tabs-nav {
		flex-direction: column;
		gap: 10px;
	}
	#que-es-cicus .tab-btn {
		width: 100%;
		text-align: center;
	}
	.cicus-exposiciones-grid {
		grid-template-columns: 1fr;
	}
	.cicus-gallery-two-images {
		grid-template-columns: 1fr;
	}
	.cicus-gallery-two-images img {
		height: 220px;
	}
}

/* Estilos de alerta y códigos de facturación para Proveedores y Facturas */
#que-es-cicus .cicus-alert-box {
	background-color: rgba(207, 46, 46, 0.1);
	border: 1px solid var(--destacado);
	border-left: 4px solid var(--destacado);
	padding: 20px;
	margin: 25px 0;
	border-radius: 4px;
	color: #fff;
	line-height: 1.6;
}

#que-es-cicus .cicus-info-box {
	background-color: rgba(221, 216, 161, 0.05);
	border: 1px solid var(--destacado);
	border-left: 4px solid var(--destacado);
	padding: 20px;
	margin: 25px 0;
	border-radius: 4px;
	color: #fff;
	line-height: 1.6;
}

#que-es-cicus .cicus-alert-box strong,
#que-es-cicus .cicus-info-box strong {
	color: var(--destacado);
}

#que-es-cicus .highlight-code {
	background-color: rgba(221, 216, 161, 0.1);
	border: 1px dashed var(--destacado);
	padding: 4px 10px;
	border-radius: 3px;
	font-family: monospace;
	font-size: 1.1rem;
	color: var(--destacado);
	font-weight: 700;
	display: inline-block;
}

#que-es-cicus table {
	margin-top: 20px;
}

/* ==========================================================================
   ESTILOS DEL BUSCADOR GLOBAL (MODAL Y RESULTADOS)
   ========================================================================== */

/* Prevenir scroll cuando el modal está activo */
body.search-active {
	overflow: hidden !important;
}

/* Modal Overlay */
.search-modal-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(18, 18, 18, 0.88);
	backdrop-filter: blur(15px);
	-webkit-backdrop-filter: blur(15px);
	z-index: 999999;
	display: none;
	opacity: 0;
	transition: opacity 0.3s ease, visibility 0.3s ease;
	overflow-y: auto;
}

.search-modal-overlay.modal-open {
	opacity: 1;
}

/* Botón de Cerrar Modal */
.close-search-modal {
	position: absolute;
	top: 30px;
	right: 40px;
	background: none;
	border: none;
	color: rgba(255, 255, 255, 0.7);
	font-size: 3.5rem;
	font-weight: 300;
	cursor: pointer;
	line-height: 1;
	padding: 0;
	transition: transform 0.25s ease, color 0.25s ease;
}

.close-search-modal:hover {
	color: var(--destacado);
	transform: scale(1.1) rotate(90deg);
}

/* Contenido del Modal */
.search-modal-content {
	max-width: 850px;
	width: 90%;
	margin: 12vh auto;
	position: relative;
}

/* Input de Búsqueda */
.search-input-wrapper {
	display: flex;
	align-items: center;
	border-bottom: 2px solid rgba(255, 255, 255, 0.15);
	padding-bottom: 12px;
	transition: border-color 0.3s ease;
}

.search-input-wrapper:focus-within {
	border-color: var(--destacado);
}

.search-input-icon {
	width: 28px;
	height: 28px;
	color: rgba(255, 255, 255, 0.5);
	margin-right: 15px;
	flex-shrink: 0;
	transition: color 0.3s ease;
}

.search-input-wrapper:focus-within .search-input-icon {
	color: var(--destacado);
}

#global-search-input {
	width: 100%;
	background: transparent;
	border: none;
	outline: none;
	color: #fff;
	font-family: var(--barlow);
	font-size: 2.2rem;
	font-weight: 300;
	letter-spacing: 0.5px;
	padding: 0;
}

#global-search-input::placeholder {
	color: rgba(255, 255, 255, 0.3);
}

/* Resultados Instantáneos (Live Search Dropdown) */
.search-live-results {
	background: rgba(25, 25, 25, 0.95);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 8px;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.6);
	margin-top: 20px;
	max-height: 60vh;
	overflow-y: auto;
	opacity: 0;
	transform: translateY(-10px);
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.search-live-results.has-results {
	opacity: 1;
	transform: translateY(0);
}

.search-live-loading,
.search-live-no-results,
.search-live-error {
	padding: 25px;
	text-align: center;
	color: rgba(255, 255, 255, 0.6);
	font-family: var(--mulish);
	font-size: 1.1rem;
}

.search-live-loading i {
	color: var(--destacado);
	margin-right: 8px;
}

/* Grupos del Live Search */
.search-live-groups {
	padding: 10px 0;
}

.search-live-group {
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.search-live-group:last-child {
	border-bottom: none;
}

.search-live-group h4 {
	font-family: var(--barlow);
	font-size:var(--title-subsection);
	font-weight: 700;
	color: var(--destacado);
	text-transform: uppercase;
	letter-spacing: 1px;
	margin: 0;
	padding: 12px 20px 6px 20px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.search-live-group ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.search-live-item-link {
	display: flex;
	align-items: center;
	padding: 12px 20px;
	text-decoration: none;
	transition: background-color 0.2s ease;
	outline: none;
}

.search-live-item-link:hover,
.search-live-item-link:focus {
	background-color: rgba(255, 255, 255, 0.04);
	text-decoration: none;
}

.search-live-item-thumb {
	width: 48px;
	height: 48px;
	object-fit: cover;
	border-radius: 4px;
	margin-right: 15px;
	background-color: #222;
	flex-shrink: 0;
}

.search-live-item-icon-place {
	width: 48px;
	height: 48px;
	background-color: rgba(255, 255, 255, 0.05);
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 15px;
	color: rgba(255, 255, 255, 0.4);
	flex-shrink: 0;
	font-size: 1.1rem;
}

.search-live-item-details {
	flex-grow: 1;
}

.search-live-item-title {
	display: block;
	color: #fff;
	font-family: var(--mulish);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
}

.search-live-item-extract {
	margin: 4px 0 0 0;
	color: rgba(255, 255, 255, 0.5);
	font-family: var(--mulish);
	font-size: 0.82rem;
	line-height: 1.3;
}

/* Resaltado del texto buscado */
mark {
	background-color: rgba(221, 216, 161, 0.3);
	color: #fff;
	border-radius: 2px;
	padding: 0 3px;
	font-weight: inherit;
}

/* Cabecera del popover (Ver todos los resultados) */
.search-live-footer {
	background-color: rgba(18, 18, 18, 0.5);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	text-align: center;
	padding: 15px;
}

.search-live-view-all {
	color: var(--destacado);
	font-family: var(--barlow);
	font-size: 1rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	transition: color 0.2s ease, gap 0.2s ease;
	outline: none;
}

.search-live-view-all:hover,
.search-live-view-all:focus {
	color: #fff;
	gap: 10px;
}

/* ==========================================================================
   ESTILOS DE LA PÁGINA DE RESULTADOS DE BÚSQUEDA
   ========================================================================== */

#resultados-busqueda-global {
	padding-bottom: 60px;
}


.search-summary-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	background-color: rgba(255, 255, 255, 0.02);
	border: 1px solid rgba(255, 255, 255, 0.05);
	padding: 20px 25px;
	border-radius: 6px;
	margin-bottom: 40px;
}

.search-summary-text {
	margin: 0;
	font-family: var(--mulish);
	font-size: 1.15rem;
	color: #fff;
}

.search-summary-text strong {
	color: var(--destacado);
}

/* Formulario en página */
.in-page-search-form {
	display: flex;
	align-items: center;
	background-color: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 4px;
	padding: 4px 6px;
	max-width: 400px;
	width: 100%;
}

.in-page-search-form input {
	flex-grow: 1;
	background: transparent;
	border: none;
	outline: none;
	color: #fff;
	font-family: var(--mulish);
	font-size: 0.95rem;
	padding: 8px 12px;
}

.in-page-search-form button {
	background-color: var(--destacado);
	color: var(--base);
	border: none;
	padding: 8px 16px;
	font-family: var(--barlow);
	font-weight: 700;
	font-size: 0.95rem;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color 0.2s ease;
}

.in-page-search-form button:hover {
	background-color: #fff;
}

/* Pestañas de la búsqueda */
.search-tabs-container .tabs-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 30px;
	border-bottom: 1px solid rgba(121, 121, 121, 0.2);
	padding-bottom: 12px;
}

.search-tabs-container .tab-btn {
	background: none;
	border: none;
	color: rgba(255, 255, 255, 0.6);
	font-family: var(--barlow);
	font-size: 1.1rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 8px 16px;
	cursor: pointer;
	position: relative;
	transition: color 0.3s ease;
	display: flex;
	align-items: center;
	gap: 6px;
}

.search-tabs-container .tab-btn:hover {
	color: #fff;
}

.search-tabs-container .tab-btn.active {
	color: var(--destacado);
}

.search-tabs-container .tab-btn.active::after {
	content: '';
	position: absolute;
	bottom: -13px;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: var(--destacado);
}

.search-tabs-container .tab-btn .badge {
	background-color: rgba(255, 255, 255, 0.1);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	padding: 2px 6px;
	border-radius: 10px;
	transition: background-color 0.3s ease, color 0.3s ease;
}

.search-tabs-container .tab-btn.active .badge {
	background-color: var(--destacado);
	color: var(--base);
}

/* Contenido de pestañas */
.search-tabs-container .tab-content {
	display: none;
}

.search-tabs-container .tab-content.active {
	display: block;
	animation: searchFadeIn 0.4s ease;
}

@keyframes searchFadeIn {
	from { opacity: 0; transform: translateY(10px); }
	to { opacity: 1; transform: translateY(0); }
}

/* Rejilla de resultados */
.search-results-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
	grid-gap: 30px;
}

.coro-news-section .search-results-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
	grid-gap: 30px;
}

/* Tarjetas de resultados */
.search-result-card {
	background-color: rgba(255, 255, 255, 0.02);
	border: 1px solid rgba(255, 255, 255, 0.05);
	border-radius: 6px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.search-result-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.3);
}

.search-result-card .card-image {
	position: relative;
	height: 180px;
	overflow: hidden;
	background-color: #111;
	display: flex;
	align-items: center;
	justify-content: center;
}

.search-result-card .card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.search-result-card:hover .card-image img {
	transform: scale(1.05);
}

.search-result-card .card-image-placeholder {
	font-size: 3rem;
	color: rgba(255, 255, 255, 0.1);
}

.card-type-badge {
	position: absolute;
	top: 12px;
	left: 12px;
	background-color: rgba(18, 18, 18, 0.8);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	color: var(--destacado);
	font-family: var(--barlow);
	font-weight: 700;
	font-size: 0.72rem;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 4px 8px;
	border-radius: 4px;
	border: 1px solid rgba(221, 216, 161, 0.2);
}

.search-result-card .card-info {
	padding: 20px;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}

.search-result-card .card-info h3 {
	margin: 0 0 12px 0;
	font-family: var(--barlow);
	font-size: 1.3rem;
	font-weight: 600;
	line-height: 1.3;
}

.search-result-card .card-info h3 a {
	color: #fff;
	text-decoration: none;
	transition: color 0.2s ease;
}

.search-result-card .card-info h3 a:hover {
	color: var(--destacado);
}

.search-result-card .card-info .extract {
	margin: 0 0 20px 0;
	font-family: var(--mulish);
	font-size: 0.88rem;
	color: rgba(255, 255, 255, 0.6);
	line-height: 1.5;
	flex-grow: 1;
}

.card-read-more {
	color: var(--destacado);
	font-family: var(--barlow);
	font-size: 0.9rem;
	font-weight: 700;
	text-transform: uppercase;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	transition: color 0.2s ease, gap 0.2s ease;
}

.card-read-more:hover {
	color: #fff;
	gap: 10px;
}

/* Vista vacía de sin resultados */
.no-results-empty-state {
	text-align: center;
	padding: 60px 30px;
	background-color: rgba(255, 255, 255, 0.01);
	border: 1px dashed rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	max-width: 600px;
	margin: 40px auto;
}

.no-results-empty-state .empty-icon {
	font-size: 3.5rem;
	color: rgba(255, 255, 255, 0.15);
	margin-bottom: 20px;
}

.no-results-empty-state h3 {
	font-family: var(--barlow);
	font-size: 1.6rem;
	font-weight: 600;
	color: #fff;
	margin: 0 0 10px 0;
}

.no-results-empty-state p {
	font-family: var(--mulish);
	font-size: 0.95rem;
	color: rgba(255, 255, 255, 0.5);
	line-height: 1.5;
	margin: 0 0 30px 0;
}

.suggested-terms {
	border-top: 1px solid rgba(255, 255, 255, 0.05);
	padding-top: 20px;
}

.suggested-terms strong {
	display: block;
	color: rgba(255, 255, 255, 0.6);
	font-family: var(--barlow);
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 12px;
}

.suggested-tags {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
}

.suggested-tags a {
	background-color: rgba(255, 255, 255, 0.05);
	color: #fff;
	font-family: var(--mulish);
	font-size: 0.85rem;
	text-decoration: none;
	padding: 5px 12px;
	border-radius: 20px;
	border: 1px solid rgba(255, 255, 255, 0.05);
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

.suggested-tags a:hover {
	background-color: var(--destacado);
	color: var(--base);
	border-color: var(--destacado);
}

/* ==========================================================================
   ESTILOS RESPONSIVOS PARA BÚSQUEDA
   ========================================================================== */

@media all and (max-width: 980px) {
	.search-summary-container {
		flex-direction: column;
		align-items: stretch;
	}

	.in-page-search-form {
		max-width: 100%;
	}
}

@media all and (max-width: 780px) {
	.close-search-modal {
		top: 20px;
		right: 20px;
		font-size: 3rem;
	}

	.search-modal-content {
		margin-top: 10vh;
	}

	#global-search-input {
		font-size: 1.7rem;
	}

	.search-tabs-container .tab-btn {
		font-size: 0.95rem;
		padding: 6px 12px;
	}
}

/* ==========================================================================
   PÁGINA CORO (CoroUS)
   ========================================================================== */

.coro-inscription-section {
	margin-top: 30px;
	padding-top: 10px;
}

.coro-inscription-section h3 {
	font-weight: bold;
	font-size: 1.5em;
	margin-bottom: 15px;
	color: var(--destacado);
}

.coro-inscription-box {
	background-color: #000;
	padding: 18px 20px;
	border-left: 5px solid var(--destacado);
	margin-top: 15px;
}

.coro-inscription-box p {
	margin: 0;
	color: #fff;
	font-size: 1.05em;
	line-height: 1.5;
}

.coro-inscription-box p a {
	color: var(--destacado);
	text-decoration: underline;
	font-weight: bold;
}

.coro-news-section {
	margin-top: 50px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding-top: 40px;
}

.coro-news-section .card-meta {
	font-size: 0.85em;
	color: rgba(255, 255, 255, 0.5);
	margin-bottom: 8px;
}

.coro-news-section h3.news-card-title {
	font-size: 1.1em;
	line-height: 1.4;
	margin-bottom: 10px;
}

.coro-news-section p.news-card-excerpt {
	font-size: 0.9em;
	color: rgba(255, 255, 255, 0.7);
}

.coro-news-section .news-card-btn-container {
	margin-top: 15px;
}

.coro-news-section .news-card-btn-container .btn-row-details {
	font-size: 0.85em;
	padding: 6px 12px;
	display: inline-block;
}

.coro-news-section .news-section-btn-container {
	text-align: center;
	margin-top: 40px;
}

.coro-news-section .news-section-btn-container .btn {
	display: inline-block;
}

.coro-news-section .empty-news-msg {
	text-align: center;
	color: rgba(255, 255, 255, 0.5);
	font-style: italic;
}

/* ==========================================================================
   CENEFA CON BLUR (IMÁGENES PEQUEÑAS)
   ========================================================================== */

.cenefa-noticias-blur {
	overflow: hidden;
}

.cenefa-noticias-blur::before {
	z-index: 3 !important; /* Forzar el degradado oscuro encima de la imagen centrada */
}

.cenefa-noticias-blur .cenefa-blur-bg {
	position: absolute;
	top: -30px;
	left: -30px;
	right: -30px;
	bottom: -30px;
	z-index: 1;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	filter: blur(25px);
	opacity: 0.55;
}

.cenefa-noticias-blur .cenefa-blur-fg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

/* ==========================================================================
   FONDO DIFUMINADO PARA EXPOSICIONES (PORTADAS PEQUEÑAS)
   ========================================================================== */

.expo-blur-container {
	position: relative;
	overflow: hidden;
	background-color: #000;
	height: 700px;
	width: 100%;
	display: flex !important;
	justify-content: center;
	align-items: center;
}

.expo-blur-container .expo-blur-bg {
	position: absolute;
	top: -30px;
	left: -30px;
	right: -30px;
	bottom: -30px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	filter: blur(25px);
	opacity: 0.55;
	z-index: 1;
}

.expo-blur-container img.expo-blur-fg {
	position: relative;
	z-index: 2;
	height: 100% !important;
	width: auto !important;
	max-width: 100% !important;
	object-fit: contain !important;
	padding: 0 !important;
	display: block;
	margin: 0 auto;
}

@media (max-width: 980px) {
	.expo-blur-container {
		height: 400px;
	}
}

/* ==========================================================================
   DATOS DE LA EXPOSICIÓN (OPCIÓN B - MINIMALISTA EDITORIAL CON BOTONES CUADRADOS)
   ========================================================================== */

#ficha-datosExposicion {
	text-align: left;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 2.2rem;
	margin: 2.5rem 0;
	padding: 0;
}

#ficha-datosExposicion .metadata-item {
	margin-bottom: 0.5rem;
}

#ficha-datosExposicion .metadata-label {
	color: var(--destacado);
	font-size: 1.15rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin: 0 0 0.8rem 0;
	padding-left: 12px;
	border-left: 3px solid var(--destacado);
	line-height: 1.2;
}

#ficha-datosExposicion .metadata-value {
	color: #eeeeee;
	font-size: 1.1rem;
	line-height: 1.6;
	margin: 0;
	padding-left: 15px; /* Ligeramente más sangrado que el filete para orden jerárquico */
}

#ficha-datosExposicion .metadata-downloads-list {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 0.8rem;
	padding-left: 15px;
}

#ficha-datosExposicion .btn-download-catalog {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background-color: rgba(255, 255, 255, 0.02);
	color: #ffffff;
	border: 1px solid var(--destacado);
	border-radius: 0px !important; /* Botón perfectamente cuadrado */
	padding: 0.75rem 1.4rem;
	font-size: 0.95rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	text-decoration: none;
	transition: all 0.25s ease-in-out;
	cursor: pointer;
}

#ficha-datosExposicion .btn-download-catalog i {
	color: var(--destacado);
	font-size: 1.1rem;
	transition: color 0.25s ease-in-out;
}

#ficha-datosExposicion .btn-download-catalog:hover {
	background-color: var(--destacado);
	color: #000000;
	border-color: var(--destacado);
	text-decoration: none;
}

#ficha-datosExposicion .btn-download-catalog:hover i {
	color: #000000;
}

/* ==========================================================================
   FICHA TÉCNICA DE BIENES (UNIFICADA CON ESTILO EXPOSICIONES EN 3 COLUMNAS)
   ========================================================================== */

#ficha-datos,
.content #ficha-datos {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	grid-gap: 2.2rem 2.5rem !important;
	gap: 2.2rem 2.5rem !important;
	margin: 2.5rem 0 1.5rem 0 !important;
	padding: 0 !important;
	text-align: left;
}

#ficha-datos .metadata-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	margin: 0;
}

#ficha-datos .metadata-label {
	color: var(--destacado);
	font-size: 1.15rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin: 0 0 0.8rem 0;
	padding-left: 12px;
	border-left: 3px solid var(--destacado);
	line-height: 1.2;
}

#ficha-datos .metadata-value {
	color: #eeeeee;
	font-size: 1.1rem;
	line-height: 1.6;
	margin: 0;
	padding-left: 15px; /* Ligeramente más sangrado que el filete para orden jerárquico */
}

#ficha-datos .metadata-value p {
	margin: 0 0 0.4rem 0;
	color: #eeeeee;
	font-size: 1.1rem;
	line-height: 1.6;
}

#ficha-datos .metadata-value a {
	color: #eeeeee;
	text-decoration: underline;
	text-decoration-color: var(--texto-atenuado);
	text-underline-offset: 4px;
	transition: color 0.2s, text-decoration-color 0.2s;
}

#ficha-datos .metadata-value a:hover {
	color: var(--destacado);
	text-decoration-color: var(--destacado);
}

@media (max-width: 992px) {
	#ficha-datos,
	.content #ficha-datos {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 2rem !important;
	}
}

@media (max-width: 576px) {
	#ficha-datos,
	.content #ficha-datos {
		grid-template-columns: 1fr !important;
		gap: 1.8rem !important;
	}
}

/* ==========================================================================
   OBRAS RELACIONADAS SLIDER
   ========================================================================== */

#obras-relacionadas-slider {
	margin-top: 3rem;
	padding-top: 2rem;
	position: relative;
}

#obras-relacionadas-slider .block-title {
	font-family: var(--barlow);
	font-size: var(--title-section);
	font-weight: var(--bold);
	color: var(--destacado);
	text-transform: uppercase;
	margin-bottom: 1.5rem;
}

#obras-relacionadas-slider .block-content {
	padding: 0 var(--pm-block-xy) var(--pm-block-xy-min) var(--pm-block-xy);
	margin: 0 0 var(--pm-block-xy) 0;
}

#obras-relacionadas-slider .catalogo-bienes-carrusel {
	position: relative;
	padding-left: 0 !important;
}

#obras-relacionadas-slider .catalogo-bienes-carrusel::before,
#obras-relacionadas-slider .catalogo-bienes-carrusel::after {
	display: none !important;
}

#obras-relacionadas-slider .slides-item {
	position: relative !important;
	padding: 0.6em !important;
	background-color: rgba(255, 255, 255, 0) !important;
	transition: all 0.2s ease-in-out !important;
	cursor: pointer;
}

#obras-relacionadas-slider .slides-item:hover {
	background-color: rgba(255, 255, 255, 0.1) !important;
}

#obras-relacionadas-slider .resultados-busqueda-imagen {
	position: relative !important;
	height: calc(100vw / 5 - 4em) !important;
	min-height: 190px !important;
	max-height: 270px !important;
	background-color: #1f1f1f !important;
	overflow: hidden;
	margin-bottom: 12px;
	transition: all 0.2s ease-in-out !important;
}

#obras-relacionadas-slider .slides-item:hover .resultados-busqueda-imagen {
	padding-bottom: 0 !important;
	transform: scale(1.02) !important;
	opacity: 0.7 !important;
}

#obras-relacionadas-slider .resultados-busqueda-imagen img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
	transition: all 0.2s ease-in-out !important;
}

#obras-relacionadas-slider .slides-item-content {
	margin-top: 15px !important;
	padding: 0 !important;
	text-align: left;
}

/* Flechas navegadoras de producción: flecha izquierda en left:0, flecha derecha en right:0 */
 #obras-relacionadas-slider .slick-prev {
	position: absolute !important;
	top: auto !important;
	bottom: -55px !important;
	left: 0px !important;
	right: auto !important;
	transform: none !important;
	z-index: 10 !important;
}

#obras-relacionadas-slider .slick-next {
	position: absolute !important;
	top: auto !important;
	bottom: -55px !important;
	right: 0px !important;
	left: auto !important;
	transform: none !important;
	z-index: 10 !important;
}

/* ==========================================================================
   FICHA EXPOSICIONES (RESTAURACIÓN ESTILO PRODUCCIÓN)
   ========================================================================== */

#ficha-exposiciones .ficha-exposiciones-grid-item {
	position: relative !important;
}

#ficha-exposiciones .enlace-ficha-exposicion {
	display: block !important;
	text-decoration: none !important;
	padding: 0.5em !important;
	transition: background-color 0.2s ease-in-out !important;
}

#ficha-exposiciones .enlace-ficha-exposicion:hover {
	background-color: rgba(255, 255, 255, 0.1) !important;
	text-decoration: none !important;
}

#ficha-exposiciones .resultados-busqueda-imagen {
	position: relative !important;
	height: calc(100vw / 5 - 4em) !important;
	min-height: 190px !important;
	max-height: 270px !important;
	background-color: #1f1f1f !important;
	overflow: hidden !important;
	margin-bottom: 12px !important;
	transition: all 0.2s ease-in-out !important;
}

#ficha-exposiciones .enlace-ficha-exposicion:hover .resultados-busqueda-imagen {
	transform: scale(1.02) !important;
	opacity: 0.7 !important;
}

/* ==========================================================================
   REORDENAMIENTO RESPONSIVE DE BOTONES DE CABECERA EN LA HOME (MÓVIL)
   ========================================================================== */
@media all and (max-width: 991px) {
	#agenda-home,
	#visitas-guiadas-home,
	#exposiciones,
	#catalogo-bienes {
		display: flex !important;
		flex-direction: column !important;
	}

	#agenda-home .block-header,
	#visitas-guiadas-home .block-header,
	#exposiciones .block-header,
	#catalogo-bienes .block-header {
		display: contents !important;
	}

	#agenda-home .block-title,
	#visitas-guiadas-home .block-title,
	#exposiciones .block-title,
	#catalogo-bienes .block-title {
		order: 1 !important;
		width: 100% !important;
		padding: 1.2em var(--pm-responsive) 0.5em !important;
		box-sizing: border-box !important;
	}

	#agenda-home .block-content,
	#visitas-guiadas-home #visitasGuiadasTriptico,
	#exposiciones .block-content,
	#catalogo-bienes .catalogo-triptico-wrapper {
		order: 2 !important;
		width: 100% !important;
	}

	#agenda-home .block-header-actions,
	#agenda-home .block-summary,
	#visitas-guiadas-home .block-summary,
	#exposiciones .block-summary,
	#catalogo-bienes .block-header-actions {
		order: 3 !important;
		width: 100% !important;
		display: flex !important;
		justify-content: center !important;
		align-items: center !important;
		margin-top: 1.5em !important;
		margin-bottom: 1.5em !important;
		padding: 0 var(--pm-responsive) !important;
		box-sizing: border-box !important;
	}

	#agenda-home .block-header-actions-items,
	#catalogo-bienes .block-header-actions-items {
		width: 100% !important;
		display: flex !important;
		justify-content: center !important;
	}

	#agenda-home .btn,
	#visitas-guiadas-home .btn,
	#exposiciones .btn,
	#catalogo-bienes .btn {
		display: inline-block !important;
		text-align: center !important;
	}
}


