/* Los tokens --idit-accent y --idit-surface NO existen: la paleta emite
   --idi-*-rgb. Al no resolver, caían a sus respaldos literales —el coral
   #ed7269 de una paleta anterior— y el coral COMO TEXTO sobre blanco da
   2,9 de contraste. Para eso existe --idi-acento-texto-rgb: el acento ya
   acercado al texto hasta cumplir. Medido el 2026-10-08. */
/* idi-tematicas — índice de áreas temáticas. Sobre idi.css; colores por las
   variables de marca --idit-*, nunca literales (ver sistema de 3 tokens). */
.idi-tm-hero { padding: 3.5rem 0 2rem; }
.idi-tm-eyebrow { display: flex; align-items: center; gap: .5rem; margin: 0 0 .75rem;
	font-size: .8125rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase;
	color: rgb(var(--idi-acento-texto-rgb, 45 91 141)); }
.idi-tm-dot { width: .5rem; height: .5rem; border-radius: 50%; background: currentColor; }
.idi-tm-hero__title { margin: 0 0 .5rem; font-size: clamp(2rem, 5vw, 3rem); font-weight: 800; line-height: 1.1; }
.idi-tm-hero__sub { margin: 0; max-width: 46rem; font-size: 1.0625rem; line-height: 1.6; opacity: .78; }
.idi-tm-areas { padding: 0 0 4rem; }
.idi-tm-grid { display: grid; gap: 1.25rem; margin: 0; padding: 0; list-style: none;
	grid-template-columns: repeat(auto-fit, minmax(17rem, 1fr)); }
.idi-tm-card { margin: 0; }
.idi-tm-card__link { position: relative; display: flex; flex-direction: column; gap: .35rem;
	height: 100%; padding: 1.5rem 3rem 1.5rem 1.5rem; border-radius: 1.25rem;
	background: rgb(var(--idi-fondo-rgb, 255 255 255)); border: 1px solid rgba(0, 0, 0, .08);
	text-decoration: none; color: inherit; transition: transform .15s ease, box-shadow .15s ease; }
.idi-tm-card__link:hover,
.idi-tm-card__link:focus-visible { transform: translateY(-2px);
	box-shadow: 0 10px 20px -8px rgba(0, 0, 0, .18); }
.idi-tm-card__title { margin: 0; font-size: 1.125rem; font-weight: 700; line-height: 1.3; }
.idi-tm-card__count { margin: 0; font-size: .8125rem; font-weight: 600; color: rgb(var(--idi-acento-texto-rgb, 45 91 141)); }
.idi-tm-card__desc { margin: .25rem 0 0; font-size: .9375rem; line-height: 1.5; opacity: .72; }
.idi-tm-card__cta { position: absolute; top: 1.5rem; right: 1.5rem; font-size: 1.25rem;
	opacity: .35; transition: opacity .15s ease, transform .15s ease; }
.idi-tm-card__link:hover .idi-tm-card__cta { opacity: 1; transform: translateX(3px); }
.idi-tm-vacio { margin: 0; opacity: .7; }
