/* ==========================================================================
   Quién lo atiende + equipo completo v0.5 — variantes (19-oct-2026). Retroalimentación de Freddy:
   «me preocupa que la persona no entienda que, haciendo scroll, van cambiando las imágenes y sienta que hasta
   ahí llega el sitio web» y «la foto del equipo simplemente sale ahí, sin ninguna animación».
   Medido (qa/equipo-v05/diagnostico/): el pin dura 4,5 pantallas = 42 % del recorrido del Home a 1920, con el
   texto quieto y solo el 27 % de la ventana cambiando; el avance se indicaba con una línea de 2 px.
   Hallazgo: los siete retratos son personas que están en la foto grupal → la foto grupal es el desenlace.
   Se carga después de home-v2.css; solo actúa con .equipo--a / .equipo--b ([data-equipo-propio]).
   ========================================================================== */

/* La foto grupal en alta densidad (escalones 1600/2400/3200): sin el 112 % del parallax anterior */
.equipo--a .equipo__completo-foto img, .equipo--b .equipo__completo-foto img { height: 100%; object-position: 50% 12%; }

/* ======================= A · «Del rostro al equipo» (pin corto con desenlace) =======================
   7 rostros en 1,8 pantallas (antes 4,5), contador legible y, al final, el marco se abre a la foto grupal:
   arranca encuadrada en el médico (el último retrato, a la misma línea de ojos) y se aleja hasta el equipo. */
.equipo--a .equipo__pin { position: relative; }
.equipo--a.is-secuencia .progreso { grid-template-columns: 58px repeat(7, 1fr); align-items: center; bottom: -34px; gap: 6px; }
.equipo--a .progreso i { height: 3px; }
.progreso__n { font-size: 13px; letter-spacing: .02em; color: var(--muted); font-variant-numeric: tabular-nums; white-space: nowrap; }
.progreso__n b { color: var(--navy); font-weight: 700; }
.equipo--a .progreso__n { display: none; }
.equipo--a.is-secuencia .progreso__n { display: block; }
.apertura { position: absolute; left: 0; right: 0; top: 68px; bottom: 0; z-index: 5; overflow: hidden; visibility: hidden; pointer-events: none; }
.apertura img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 50% 12%; will-change: transform; }
.equipo--a.is-secuencia .equipo__completo { margin-top: 0; }
.equipo--a.is-secuencia .equipo__completo figcaption { border-top: 0; }

/* ======================= B · «Retratos en fila» (sin pin) =======================
   La página nunca se detiene: los siete rostros forman una fila que se desliza de lado mientras se baja,
   y la foto grupal se abre del ancho del contenedor a sangre al llegar. */
.equipo--b { padding: var(--seccion) 0 0; }
.equipo-b__cab { display: grid; grid-template-columns: 6fr 5fr; gap: 32px 80px; align-items: end; margin-bottom: 64px; }
.equipo-b__intro { display: grid; gap: 28px; }
.equipo-b__intro .lead { font-size: 19px; max-width: 40ch; }
.equipo-b__voz { display: grid; gap: 32px; }
.fila { overflow: clip; }
.fila__pista { display: flex; gap: 12px; width: max-content; padding-inline: max(var(--gutter), calc((100vw - var(--cont)) / 2 + var(--gutter))); will-change: transform; }
.fila .retrato { flex: none; width: clamp(260px, 24vw, 440px); aspect-ratio: 4 / 4.4; margin: 0; }
.fila .retrato img { object-position: 50% 0%; }
.equipo--b .equipo__completo { margin-top: 12px; }

@media (max-width: 900px) {
  .equipo-b__cab { grid-template-columns: 1fr; gap: 36px; margin-bottom: 40px; }
  /* En el celular la fila es nativa: se desliza con el dedo y el rostro siguiente asoma como pista */
  .fila { overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .fila::-webkit-scrollbar { display: none; }
  .fila__pista { gap: 8px; }
  .fila .retrato { width: 72vw; scroll-snap-align: start; scroll-margin-left: var(--gutter); }
  .equipo--b .equipo__completo { margin-top: 8px; }
}
