/* Nosotros (PROTOTIPO nivel Awwwards): la historia como un gráfico que se dibuja (historia.js) */
.tl-aw { padding-bottom: 0; }
.tl-aw .section-head { margin-bottom: 0; }
/* La lista original queda para lectores de pantalla */
.tl-aw .timeline { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }

.hs { position: relative; height: calc(100vh + (var(--n) - 1) * 75vh); }
.hs-pin {
  position: sticky; top: 0; height: 100vh; height: 100svh; overflow: hidden;
  display: grid; grid-template-rows: minmax(0, 1fr) auto; padding: 96px 0 clamp(20px, 4vh, 44px);
}
.hs-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 4vw, 64px); align-items: center; min-height: 0; }
.hs-texto { display: grid; align-content: center; }
.hs-kicker { font-family: var(--f-data); font-size: .85rem; letter-spacing: .12em; text-transform: uppercase; color: var(--accent); }
.hs-anio {
  font-family: var(--f-display); font-weight: 700; letter-spacing: -0.05em; line-height: .9;
  font-size: clamp(4.5rem, 12vw, 10rem); font-variant-numeric: tabular-nums; margin: 6px 0 4px;
  background: linear-gradient(120deg, var(--ink) 30%, var(--accent)); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.hs-edad { color: var(--muted); font-size: 1rem; }
.hs-edad span:first-child { font-family: var(--f-data); color: var(--teal); font-weight: 700; font-variant-numeric: tabular-nums; }
.hs-hitos { display: grid; margin-top: clamp(18px, 3vh, 32px); }
.hs-hito { grid-area: 1 / 1; opacity: 0; transform: translateY(18px); transition: opacity .45s, transform .6s var(--aw-ease, ease); }
.hs-hito.on { opacity: 1; transform: none; }
.hs-hito h3 { font-size: var(--step-2); letter-spacing: -0.02em; max-width: 22ch; }
.hs-hito p { color: var(--muted); margin-top: 10px; line-height: 1.55; max-width: 44ch; }
.hs-dibujo { width: min(100%, 58vh); aspect-ratio: 1; justify-self: center; }

.hs-graf { position: relative; padding-bottom: 28px; }
.hs-graf svg { display: block; width: 100%; height: clamp(80px, 16vh, 150px); overflow: visible; }
.hs-linea { fill: none; stroke: var(--accent); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.hs-area { fill: color-mix(in srgb, var(--accent) 12%, transparent); }
.hs-nodo { fill: var(--surface); stroke: var(--line); stroke-width: 2; transition: fill .3s, stroke .3s; }
.hs-nodo.on { fill: var(--teal); stroke: var(--teal); }
.hs-cabeza { fill: var(--accent); filter: drop-shadow(0 0 8px color-mix(in srgb, var(--accent) 70%, transparent)); }
.hs-eje { list-style: none; margin: 0; padding: 0; position: absolute; left: var(--gutter); right: var(--gutter); bottom: 0; height: 22px; }
.hs-eje li {
  position: absolute; left: var(--x); transform: translateX(-50%); font-family: var(--f-data); font-size: .85rem;
  color: var(--faint); transition: color .3s, transform .3s;
}
.hs-eje li:first-child { transform: none; }
.hs-eje li:last-child { transform: translateX(-100%); }
.hs-eje li.on { color: var(--muted); }
.hs-eje li.es { color: var(--accent); font-weight: 700; }

@media (max-width: 760px) {
  .hs { height: calc(100vh + (var(--n) - 1) * 65vh); }
  .hs-pin { padding-top: 80px; }
  .hs-grid { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto minmax(0, 1fr); gap: 8px; align-items: start; }
  .hs-anio { font-size: clamp(3.6rem, 20vw, 5rem); }
  .hs-hitos { margin-top: 12px; }
  .hs-hito h3 { font-size: 1.2rem; }
  .hs-hito p { font-size: .92rem; margin-top: 6px; }
  .hs-dibujo { width: 100%; height: 100%; min-height: 0; aspect-ratio: auto; }
  .hs-eje li { font-size: .72rem; }
  .hs-eje li:not(.es):not(:first-child):not(:last-child) { opacity: 0; }
  .hs-graf { padding-right: 64px; }
}

/* Franja de números más discreta (pedido de revisión) */
.stat-row { padding-block: clamp(16px, 2.4vw, 24px); gap: 16px; }
.stat-row li { gap: 4px; }
.stat-row strong { font-size: clamp(1.25rem, 1rem + 1vw, 1.7rem); }
.stat-row span { font-size: 0.82rem; }
.stat-row span::first-letter { text-transform: uppercase; }
