/* ==========================================================================
   CINV — Hoja principal
   ==========================================================================

   ORDEN DE LAS SECCIONES — respetarlo al editar.
   La especificidad del sitio depende de este orden, no de !important.

     01. TOKENS         Variables de color, tipografía y espaciado.
     02. RESET          Normalización mínima.
     03. BASE           Elementos HTML sin clase.
     04. ACCESIBILIDAD  Foco, skip-link, texto para lectores de pantalla.
     05. LAYOUT         Contenedores y secciones.
     06. TIPOGRAFÍA     Escalas y utilidades de texto.
     07. COMPONENTES    Piezas reutilizables (badge, card, botones, stats...).
     08. CABECERA       Topbar y menú principal.
     09. PIE            Footer global.
     10. WORDPRESS      Clases que genera el editor y que no controlamos.

   REGLA SOBRE !important
   Solo se permite para pelear contra CSS de terceros (WPBakery, plugins). Si
   hace falta contra nuestro propio CSS, el problema es el orden de arriba.
   ========================================================================== */


/* ==========================================================================
   01. TOKENS
   ========================================================================== */

:root {
	/* Paleta — extraída de los HTML de diseño, idéntica en los 7 archivos. */
	--bg:               #0a111f;
	--bg-card:          #0f1a2b;
	--border:           #1e2c40;
	--text:             #e8edf5;
	--text-dim:         #8fa1b8;
	--text-body:        #cbd6e5;
	--accent:           #4ae176;
	--accent-secondary: #4cd7f6;
	--accent-dim:       #1e3a28;

	/* Color del texto sobre fondo de acento. Es un token propio y no un valor
	   suelto porque cambia entre modo claro y oscuro. */
	--on-accent:        #06210f;

	/* Velo de acento para fondos suaves (badges, filtros activos). */
	--accent-veil:      rgba(74, 225, 118, .10);
	--accent-veil-alt:  rgba(76, 215, 246, .12);

	/* Tipografías */
	--mono: 'JetBrains Mono', ui-monospace, 'Courier New', monospace;
	--sans: 'Hanken Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

	/* Escala tipográfica */
	--fs-xs:   .6875rem;  /* 11px — etiquetas mono */
	--fs-sm:   .8125rem;  /* 13px — texto secundario */
	--fs-base:  1rem;     /* 16px — cuerpo */
	--fs-lg:   1.15rem;
	--fs-xl:   1.5rem;
	--fs-2xl:  1.8rem;
	--fs-3xl:  2.2rem;

	/* Espaciado */
	--sp-1:  4px;
	--sp-2:  8px;
	--sp-3: 14px;
	--sp-4: 20px;
	--sp-5: 28px;
	--sp-6: 40px;
	--sp-7: 64px;
	--sp-8: 100px;

	/* Radios */
	--r-sm:  6px;
	--r-md: 10px;
	--r-lg: 14px;
	--r-pill: 999px;

	/* Contenedor — valor único de todo el sitio, fijado por el PRD.
	   Corrige los tres anchos distintos de los HTML de referencia
	   (1280 en Home, 1180 en Investigadores/Ficha, 1100 en Redes). */
	--wrap: 1300px;
	--wrap-pad: var(--sp-6);

	/* Ancho de lectura del artículo. Deliberadamente más angosto que el
	   contenedor: por encima de ~75 caracteres por línea el ojo pierde el
	   renglón al volver. */
	--wrap-lectura: 760px;

	--transicion: .2s ease;
}

/* Modo claro.
   ⚠ PROPUESTA sin aprobar — viene de cinv-guia-estilos.html, donde está
   marcada como derivada de la paleta oscura y pendiente de revisión.
   Los acentos son más oscuros que en modo oscuro porque el verde #4AE176 sobre
   blanco no llega a contraste AA para texto. */
:root[data-theme="light"] {
	--bg:               #f4f6f9;
	--bg-card:          #ffffff;
	--border:           #dde3ec;
	--text:             #0a111f;
	--text-dim:         #5c6b82;
	--text-body:        #24303f;
	--accent:           #12854a;
	--accent-secondary: #0b6f89;
	--accent-dim:       #d5f2e0;
	--on-accent:        #ffffff;
	--accent-veil:      rgba(18, 133, 74, .08);
	--accent-veil-alt:  rgba(11, 111, 137, .10);
}


/* ==========================================================================
   02. RESET
   ========================================================================== */

*,
*::before,
*::after { box-sizing: border-box; }

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd, ul, ol {
	margin: 0;
	padding: 0;
}

ul[class], ol[class] { list-style: none; }

img, svg, video { display: block; max-width: 100%; }
img { height: auto; }

button, input, select, textarea { font: inherit; color: inherit; }
button { background: none; border: none; cursor: pointer; }


/* ==========================================================================
   03. BASE
   ========================================================================== */

html {
	scroll-behavior: smooth;
	/* Deja espacio bajo la cabecera al saltar a un ancla del índice. */
	scroll-padding-top: var(--sp-6);
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after {
		animation-duration: .01ms;
		animation-iteration-count: 1;
		transition-duration: .01ms;
	}
}

body {
	background: var(--bg);
	color: var(--text);
	font-family: var(--sans);
	font-size: var(--fs-base);
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	transition: background var(--transicion), color var(--transicion);
}

a { color: inherit; }

hr {
	border: none;
	border-top: 1px solid var(--border);
	margin: 0;
}


/* ==========================================================================
   04. ACCESIBILIDAD
   ========================================================================== */

.screen-reader-text {
	position: absolute;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.skip-link {
	position: absolute;
	top: -100px;
	left: var(--sp-4);
	z-index: 100;
	background: var(--accent);
	color: var(--on-accent);
	padding: var(--sp-3) var(--sp-4);
	border-radius: 0 0 var(--r-md) var(--r-md);
	font-family: var(--mono);
	font-size: var(--fs-sm);
	text-decoration: none;
}
.skip-link:focus { top: 0; }

/* Foco visible en todo el sitio. No se quita nunca: es la única pista que
   tiene quien navega con teclado de dónde está parado. */
:focus-visible {
	outline: 2px solid var(--accent-secondary);
	outline-offset: 2px;
	border-radius: var(--r-sm);
}


/* ==========================================================================
   05. LAYOUT
   ========================================================================== */

.wrap {
	width: 100%;
	max-width: var(--wrap);
	margin-inline: auto;
	padding-inline: var(--wrap-pad);
}

.section { padding-block: var(--sp-8); }
.section--divider { border-top: 1px solid var(--border); }

.section-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: var(--sp-3);
	margin-bottom: var(--sp-5);
}
.section-head__titulo { font-size: var(--fs-2xl); font-weight: 700; letter-spacing: -.01em; }
.section-head__bajada { color: var(--text-dim); font-size: var(--fs-sm); }


/* ==========================================================================
   06. TIPOGRAFÍA
   ========================================================================== */

h1, h2, h3, h4 { line-height: 1.25; font-weight: 700; }

.h1 { font-size: var(--fs-3xl); }

.lede {
	font-size: var(--fs-lg);
	color: var(--text-dim);
	line-height: 1.55;
}

.is-mono,
.mono-label {
	font-family: var(--mono);
	font-size: var(--fs-xs);
	letter-spacing: .06em;
	color: var(--text-dim);
}
.mono-label { text-transform: uppercase; }


/* ==========================================================================
   07. COMPONENTES
   ========================================================================== */

/* Iconos ------------------------------------------------------------------ */

.icon { width: 1em; height: 1em; }
.icon--fill   { fill: currentColor; }
.icon--stroke {
	fill: none;
	stroke: currentColor;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.icon-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--text-dim);
	text-decoration: none;
	transition: color var(--transicion);
}
.icon-btn:hover { color: var(--accent); }
.icon-btn .icon { width: 14px; height: 14px; }

/* Badge ------------------------------------------------------------------- */

.badge {
	display: inline-block;
	font-family: var(--mono);
	font-size: 10px;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: 5px 12px;
	border-radius: var(--r-pill);
	background: var(--accent-veil);
	color: var(--accent);
}
.badge.solid-accent { background: var(--accent); color: var(--on-accent); }
.badge.muted        { background: var(--bg-card); color: var(--text-dim); border: 1px solid var(--border); }
.badge.alt          { background: var(--accent-veil-alt); color: var(--accent-secondary); }

/* Enlaces y botones ------------------------------------------------------- */

.btn-link {
	display: inline-flex;
	align-items: center;
	gap: var(--sp-1);
	font-family: var(--mono);
	font-size: 12px;
	letter-spacing: .05em;
	color: var(--accent);
	text-decoration: none;
	transition: opacity var(--transicion);
}
.btn-link:hover { opacity: .75; }

.btn-outline {
	display: inline-flex;
	align-items: center;
	gap: var(--sp-2);
	font-family: var(--mono);
	font-size: 12px;
	letter-spacing: .05em;
	padding: 10px 18px;
	border: 1px solid var(--border);
	border-radius: var(--r-md);
	color: var(--text-dim);
	text-decoration: none;
	transition: border-color var(--transicion), color var(--transicion);
}
.btn-outline:hover { border-color: var(--accent); color: var(--accent); }
.btn-outline--accent { border-color: var(--accent-dim); color: var(--accent); }
.btn-outline--sm { padding: 7px 14px; font-size: 11px; }

/* Tarjeta base ------------------------------------------------------------ */

.card {
	background: var(--bg-card);
	border: 1px solid var(--border);
	border-radius: var(--r-lg);
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	display: block;
	transition: border-color var(--transicion), transform var(--transicion);
}
a.card:hover { border-color: var(--accent-dim); }

/* Filtros ----------------------------------------------------------------- */

.filters {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-2);
	margin-bottom: var(--sp-5);
}
.filter {
	font-family: var(--mono);
	font-size: var(--fs-xs);
	letter-spacing: .05em;
	padding: 8px 16px;
	border-radius: var(--r-pill);
	border: 1px solid var(--border);
	color: var(--text-dim);
	text-decoration: none;
	transition: color var(--transicion), border-color var(--transicion), background var(--transicion);
}
.filter:hover { color: var(--text); }
.filter.is-active {
	background: var(--accent-veil);
	border-color: var(--accent-dim);
	color: var(--accent);
}

/* Cifras ------------------------------------------------------------------ */

.stats {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--sp-6) var(--sp-8);
}
.stat { text-align: center; }
.stat__valor { font-size: var(--fs-3xl); font-weight: 700; margin: 0; line-height: 1.1; }
.stat__etiqueta {
	font-family: var(--mono);
	font-size: 12px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--text-dim);
}

/* Buscador ---------------------------------------------------------------- */

.search-box {
	width: 100%;
	max-width: 680px;
	display: flex;
	align-items: center;
	gap: var(--sp-3);
	background: var(--bg-card);
	border: 1px solid var(--border);
	border-radius: var(--r-lg);
	padding: 10px 10px 10px var(--sp-5);
	transition: border-color var(--transicion);
}
.search-box:focus-within { border-color: var(--accent-dim); }
.search-box__icono { width: 18px; height: 18px; color: var(--text-dim); flex-shrink: 0; }
.search-box__input {
	flex: 1;
	min-width: 0;
	background: transparent;
	border: none;
	outline: none;
	color: var(--text);
	font-size: var(--fs-base);
}
.search-box__input::placeholder { color: var(--text-dim); }
.search-box__submit {
	background: var(--accent);
	color: var(--on-accent);
	font-family: var(--mono);
	font-weight: 700;
	font-size: var(--fs-sm);
	letter-spacing: .05em;
	text-transform: uppercase;
	padding: 14px var(--sp-5);
	border-radius: var(--r-md);
	white-space: nowrap;
}

/* Foto de persona --------------------------------------------------------- */

.person__photo {
	aspect-ratio: 1;
	border-radius: var(--r-md);
	overflow: hidden;
	background: var(--bg);
	border: 1px solid var(--border);
}
.person__photo img { width: 100%; height: 100%; object-fit: cover; }

/* Fallback de iniciales cuando la persona no tiene foto cargada. */
.person__photo--iniciales {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--mono);
	font-size: var(--fs-2xl);
	color: var(--accent);
	background: var(--accent-veil);
}

/* Aviso de administración ------------------------------------------------- */

/* Solo lo ve quien puede editar. Marca un hueco de contenido sin romper la
   página para el visitante, que directamente no ve nada. */
.admin-aviso {
	font-family: var(--mono);
	font-size: var(--fs-sm);
	color: var(--accent-secondary);
	border: 1px dashed var(--border);
	border-radius: var(--r-md);
	padding: var(--sp-4);
	margin-block: var(--sp-4);
}


/* ==========================================================================
   08. CABECERA
   ========================================================================== */

.topbar {
	background: var(--bg-card);
	border-bottom: 1px solid var(--border);
}
.topbar__inner {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--sp-3);
	padding-block: var(--sp-2);
}
.topbar__social { display: flex; gap: var(--sp-3); }
.topbar__link {
	display: inline-flex;
	align-items: center;
	gap: var(--sp-1);
	color: var(--text-dim);
	text-decoration: none;
	font-family: var(--mono);
	font-size: var(--fs-xs);
	letter-spacing: .05em;
	transition: color var(--transicion);
}
.topbar__link:hover { color: var(--accent); }
.topbar__link .icon { width: 11px; height: 11px; }

.divider-v { width: 1px; height: 14px; background: var(--border); }

.theme-switch {
	display: inline-flex;
	align-items: center;
	color: var(--text-dim);
	padding: var(--sp-1);
	transition: color var(--transicion);
}
.theme-switch:hover { color: var(--accent); }
.theme-switch .icon { width: 14px; height: 14px; }

/* Se muestra el icono del modo al que se va a cambiar, no el del actual. */
.theme-switch__icon--light { display: none; }
:root[data-theme="light"] .theme-switch__icon--light { display: block; }
:root[data-theme="light"] .theme-switch__icon--dark  { display: none; }

/* Header ------------------------------------------------------------------ */

.site-header { border-bottom: 1px solid var(--border); }
.site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--sp-5);
	padding-block: 22px;
}

.site-logo { display: block; flex-shrink: 0; }
.site-logo__img { width: 220px; height: auto; }
.site-logo__texto { font-weight: 800; font-size: var(--fs-xl); }

/* El logo alterna según el modo, si hay una segunda versión cargada. */
.site-logo__img--light { display: none; }
:root[data-theme="light"] .site-logo__img--light { display: block; }
:root[data-theme="light"] .site-logo__img--dark  { display: none; }

.main-nav {
	display: flex;
	align-items: center;
	gap: var(--sp-6);
	font-family: var(--mono);
	font-size: var(--fs-sm);
}

.nav-link,
.nav-trigger {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: var(--text-dim);
	text-decoration: none;
	font-family: var(--mono);
	font-size: var(--fs-sm);
	padding: 0;
	transition: color var(--transicion);
}
.nav-link:hover, .nav-trigger:hover { color: var(--accent); }

.nav-link.is-current {
	color: var(--accent);
	border-bottom: 1px solid var(--accent);
	padding-bottom: var(--sp-1);
}

.nav-trigger::after { content: '▾'; font-size: 9px; }

.nav-item { position: relative; }

.nav-dropdown {
	position: absolute;
	top: 100%;
	left: -16px;
	padding-top: 18px;
	min-width: 240px;
	opacity: 0;
	visibility: hidden;
	transition: opacity .15s ease;
	z-index: 20;
}
.nav-dropdown-inner {
	background: var(--bg-card);
	border: 1px solid var(--border);
	border-radius: var(--r-md);
	padding: var(--sp-2);
}

/* Se abre con el puntero y también con el teclado (aria-expanded lo pone el
   JS). Las dos vías, no una sola. */
.nav-item:hover .nav-dropdown,
.nav-item:focus-within .nav-dropdown,
.nav-trigger[aria-expanded="true"] + .nav-dropdown {
	opacity: 1;
	visibility: visible;
}

/* El último desplegable se alinea a la derecha para no salirse de pantalla. */
.nav-item:last-child .nav-dropdown { left: auto; right: -16px; }

.nav-dropdown-link {
	display: block;
	padding: 9px var(--sp-3);
	border-radius: var(--r-sm);
	font-size: 12.5px;
	color: var(--text-dim);
	text-decoration: none;
	transition: background var(--transicion), color var(--transicion);
}
.nav-dropdown-link:hover { background: var(--accent-veil); color: var(--accent); }

/* Botón de menú móvil. Oculto en escritorio. */
.nav-burger { display: none; }


/* ==========================================================================
   09. PIE
   ========================================================================== */

.site-footer {
	border-top: 1px solid var(--border);
	margin-top: var(--sp-4);
	padding-top: 48px;
}

.site-footer__top {
	display: flex;
	justify-content: space-between;
	gap: var(--sp-7);
	flex-wrap: wrap;
	padding-bottom: 36px;
}

.footer-brand { max-width: 340px; }
.footer-brand__logo { width: 220px; margin-bottom: 18px; }
.footer-brand__texto {
	font-size: var(--fs-sm);
	color: var(--text-dim);
	margin-bottom: 22px;
}

.footer-social { display: flex; gap: var(--sp-2); }
.footer-social a {
	width: 34px; height: 34px;
	border-radius: var(--r-sm);
	background: var(--bg-card);
	border: 1px solid var(--border);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--text-dim);
	transition: color var(--transicion), border-color var(--transicion);
}
.footer-social a:hover { color: var(--accent); border-color: var(--accent-dim); }
.footer-social .icon { width: 15px; height: 15px; }

.footer-instituciones { display: flex; gap: var(--sp-7); flex-wrap: wrap; }

.inst-group { min-width: 200px; }
.inst-group__titulo {
	font-family: var(--mono);
	font-size: 12px;
	font-weight: 400;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: var(--text-dim);
	padding-bottom: var(--sp-3);
	border-bottom: 1px solid var(--border);
	margin-bottom: var(--sp-3);
}
.inst-group__lista { display: flex; flex-direction: column; gap: var(--sp-3); }

/* Contenedor fijo del logo.
   Los archivos llegan con fondos distintos (transparente, blanco, negro) y con
   proporciones muy dispares. El marco blanco los iguala sin tener que retocar
   cada archivo a mano.

   ⚠ PENDIENTE del PRD: "corregir tamaño (deben ser más grandes)". El alto de
   abajo ya sube respecto de los 28px de los HTML de referencia; queda sujeto a
   revisión visual de ustedes. */
.inst-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 150px;
	height: 60px;
	padding: var(--sp-2) var(--sp-3);
	background: #fff;
	border-radius: var(--r-sm);
}
.inst-logo img { max-height: 100%; width: auto; object-fit: contain; }

.inst-logo--texto {
	width: auto;
	min-height: 60px;
	background: var(--bg-card);
	border: 1px solid var(--border);
	color: var(--text-dim);
	font-size: var(--fs-sm);
	text-align: center;
	line-height: 1.3;
}

.inst-item a { display: block; text-decoration: none; }

.site-footer__bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--sp-3);
	padding-block: var(--sp-4) var(--sp-5);
	border-top: 1px solid var(--border);
	margin-top: var(--sp-5);
	font-family: var(--mono);
	font-size: var(--fs-xs);
	color: var(--text-dim);
}
.legal-links { display: flex; flex-wrap: wrap; gap: var(--sp-5); }
.legal-links__item {
	color: var(--text-dim);
	text-decoration: none;
	font-family: var(--mono);
	font-size: var(--fs-xs);
	transition: color var(--transicion);
}
.legal-links__item:hover { color: var(--accent); }


/* ==========================================================================
   10. WORDPRESS
   ========================================================================== */

/* Clases que genera el editor y que el theme no controla. */
.alignleft  { float: left;  margin: 0 var(--sp-4) var(--sp-3) 0; }
.alignright { float: right; margin: 0 0 var(--sp-3) var(--sp-4); }
.aligncenter { margin-inline: auto; }
.wp-caption-text,
.wp-element-caption {
	font-size: var(--fs-sm);
	color: var(--text-dim);
	margin-top: var(--sp-2);
}

.pagination,
.navigation.pagination {
	display: flex;
	justify-content: center;
	gap: var(--sp-2);
	margin-top: var(--sp-7);
	font-family: var(--mono);
	font-size: var(--fs-sm);
}
.page-numbers {
	padding: var(--sp-2) var(--sp-3);
	border: 1px solid var(--border);
	border-radius: var(--r-sm);
	color: var(--text-dim);
	text-decoration: none;
}
.page-numbers.current { background: var(--accent-veil); border-color: var(--accent-dim); color: var(--accent); }

.listado-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: var(--sp-4);
}

.estado-vacio {
	padding-block: var(--sp-7);
	display: grid;
	gap: var(--sp-4);
	justify-items: start;
}


/* ==========================================================================
   RESPONSIVE — PROVISORIO
   ==========================================================================
   ⚠ El PRD difiere el responsive detallado: "a la espera de instrucciones por
   plantilla", y deja constancia de que los HTML de referencia traen
   breakpoints inconsistentes entre sí (768 / 860 / 900 px).

   Lo que sigue es el mínimo para que el sitio no se rompa en móvil, con un
   único breakpoint. NO es el responsive definitivo: el PRD anticipa una hoja
   separada para móvil con cambios de tipografía y estilos, no solo de grilla.
   ========================================================================== */

@media (max-width: 860px) {
	:root {
		--wrap-pad: var(--sp-4);
		--sp-8: 56px;
		--fs-3xl: 1.75rem;
		--fs-2xl: 1.4rem;
	}

	.site-header__inner { flex-wrap: wrap; }

	.nav-burger {
		display: inline-flex;
		flex-direction: column;
		justify-content: center;
		width: 40px;
		height: 40px;
		border: 1px solid var(--border);
		border-radius: var(--r-sm);
		align-items: center;
		gap: 5px;
	}
	.nav-burger__linea,
	.nav-burger__linea::before,
	.nav-burger__linea::after {
		content: '';
		display: block;
		width: 18px;
		height: 1.5px;
		background: var(--text);
	}
	.nav-burger__linea { position: relative; }
	.nav-burger__linea::before { position: absolute; top: -6px; }
	.nav-burger__linea::after  { position: absolute; top: 6px; }

	.main-nav {
		display: none;
		flex-direction: column;
		align-items: flex-start;
		gap: var(--sp-4);
		width: 100%;
		padding-block: var(--sp-4);
		border-top: 1px solid var(--border);
	}
	.main-nav.is-open { display: flex; }

	/* En móvil el desplegable no puede flotar: ocupa el flujo. */
	.nav-dropdown {
		position: static;
		padding-top: var(--sp-2);
		min-width: 0;
		width: 100%;
		display: none;
		opacity: 1;
		visibility: visible;
	}
	.nav-trigger[aria-expanded="true"] + .nav-dropdown { display: block; }
	.nav-item { width: 100%; }
	.nav-item:last-child .nav-dropdown { right: auto; }

	.site-footer__top { flex-direction: column; gap: var(--sp-6); }
	.footer-instituciones { gap: var(--sp-5); }
	.stats { gap: var(--sp-5); }
	.search-box { flex-wrap: wrap; padding-inline: var(--sp-4); }
}
