@charset "utf-8";
/* ==========================================================================
   Olga Miranda — base: reset, tipografía y estructura (mobile-first).
   Usa los tokens de variables.css.
   ========================================================================== */

/* ---------- Reset ---------- */
*, *::before, *::after { box-sizing: border-box; }
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, blockquote, th, td { margin: 0; padding: 0; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset, img { border: 0; }
ol, ul { list-style: none; }
caption, th { text-align: left; }
img, video { max-width: 100%; height: auto; }
b, strong { font-weight: 700; }
button, input, textarea, select { font: inherit; color: inherit; }

/* ---------- Tipografía ---------- */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-padding-top: calc(var(--header-h) + var(--space-4)); }
body {
	font-family: var(--font-body);
	font-size: var(--fs-base);
	line-height: var(--lh-base);
	color: var(--text);
	background-color: var(--cream-100);
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-heading);
	font-weight: 800;
	line-height: var(--lh-tight);
	color: var(--text);
}
h1 { font-size: var(--fs-2xl); }
h2 { font-size: var(--fs-xl); }
h3 { font-size: var(--fs-lg); }
h4 { font-size: var(--fs-md); color: var(--olive-700); }
p { margin: 0 0 var(--space-3); }

a { color: var(--olive-700); font-weight: 700; text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:link, a:visited { text-decoration: none; }
a:hover { color: var(--olive-800); text-decoration: underline; }
:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; border-radius: var(--radius-sm); }
::selection { background: var(--lime-200); color: var(--text); }

.skip-link {
	position: absolute; left: var(--space-2); top: -100px; z-index: 1000;
	padding: var(--space-2) var(--space-4);
	border-radius: var(--radius-sm);
	background: var(--olive-900); color: var(--text-on-dark) !important;
}
.skip-link:focus { top: var(--space-2); }
.visually-hidden {
	position: absolute !important; width: 1px; height: 1px; overflow: hidden;
	clip: rect(0 0 0 0); white-space: nowrap; border: 0; padding: 0; margin: -1px;
}

/* Títulos de módulos y artículos del CMS (antes Tahoma coral en minúsculas) */
.moduletable h3, .moduletable-blank h3, .contentheading, .contentpaneopen h1 {
	margin: 0 0 var(--space-3);
	font-family: var(--font-heading);
	font-size: var(--fs-lg);
	font-weight: 800;
	color: var(--coral-600);
	text-transform: lowercase;
}
.contentheading a { color: inherit; }

/* ---------- Estructura ---------- */
.wrap {
	width: 100%;
	max-width: var(--container);
	margin-inline: auto;
	padding-inline: var(--gutter);
}
#main { padding-block: var(--space-5) var(--space-7); }
#contenido {
	display: flex;
	flex-direction: column;
	gap: var(--space-6);
}
#contenido-texto, #contenido-texto690 { order: 1; min-width: 0; overflow-wrap: break-word; }
#contenido-left { order: 2; min-width: 0; }
#slideshow, #menu, #content-modules { margin-top: var(--space-6); }

/* Contenido heredado con anchos fijos: nunca más ancho que la pantalla */
#contenido table { max-width: 100%; }
#contenido iframe, #contenido video { max-width: 100%; }

/* Columnas vacías que dejaron las valoraciones y "Compartir": ya no ocupan espacio */
#yoo-zoo [aria-hidden="true"].pos-infobar, #yoo-zoo [aria-hidden="true"].pos-sidebar { display: none !important; }
.pos-date { display: none; }

/* Imágenes alineadas del contenido antiguo en pantallas pequeñas */
@media (max-width: 47.99em) {
	#contenido img[align] { float: none; display: block; margin: 0 auto var(--space-3); }
	#contenido table[width], #contenido td[width] { width: auto; }
}

@media (min-width: 64em) {
	#contenido.has-sidebar {
		display: grid;
		grid-template-columns: var(--sidebar) minmax(0, 1fr);
		align-items: start;
		gap: var(--space-6);
	}
	#contenido.has-sidebar > #contenido-left { order: 0; }
}

/* ==========================================================================
   PROVISIONAL — reglas heredadas que sustituyen las siguientes secciones
   (cabecera, menú social, pie, botones y formulario).
   ========================================================================== */
.moduletable { margin: 0 0 var(--space-5); }
.hp-field { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
