/* ══════════════════════════════════════════════════════════════════
   v16-nosotros.css — solo lo propio de /nosotros-v16. Prefijo nos16-.
   Se apoya en main.css, home-v16.css y v16-paginas.css.
   ══════════════════════════════════════════════════════════════════ */

/* ── Hero: la foto del equipo, ligeramente más alta que el texto ── */
.nos16-hero .p16-hero-media img { object-position: 40% 30%; }

/* ── Misión ── */
.nos16-mision { margin: 0; max-width: 900px; font-size: 1.75rem; line-height: 1.4; font-weight: 600; letter-spacing: -.02em; color: var(--ink); }
.nos16-mision strong { font-weight: 800; }
.nos16-mensajes { margin: 0; padding: 0; }
.nos16-num { font-size: .8rem; font-weight: 800; letter-spacing: .14em; color: var(--h16-mint-text); }

/* ── Equipo ── */
.nos16-equipo { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; list-style: none; margin: 0; padding: 0; }
.nos16-miembro { background: var(--white); border: 1.5px solid var(--line); border-radius: 24px; overflow: hidden; display: flex; flex-direction: column; height: 100%; }
.nos16-foto { position: relative; padding-bottom: 133.33%; overflow: hidden; background: var(--ink-soft); }
.nos16-foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: top center; filter: grayscale(100%); }
.nos16-miembro-cuerpo { padding: 26px 28px 20px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.nos16-miembro-cuerpo .p16-card-titulo { font-size: 1.45rem; }
.nos16-rol { margin: 0; font-size: .78rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--h16-mint-text); }
.nos16-miembro-cuerpo .h16-p { font-size: .98rem; }
.nos16-miembro-cuerpo .h16-chip { align-self: flex-start; }
.nos16-linkedin { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; align-self: flex-start; font-size: .88rem; font-weight: 700; color: var(--ink); text-decoration: none; border-bottom: 2px solid var(--mint); }
.nos16-linkedin svg { width: 16px; height: 16px; fill: currentColor; flex-shrink: 0; }
.nos16-linkedin:hover { color: var(--h16-mint-text); }

/* ── Lo que no somos ── */
.nos16-nosomos .p16-cita { font-size: 2.3rem; line-height: 1.22; max-width: 960px; color: var(--white); }
.nos16-nosomos .p16-cita p { margin: 0; }
.nos16-nosomos .p16-cita footer { font-size: .9rem; }
.nos16-figura { margin: 0; }

/* ── Bitácora ── */
.nos16-bitacora-cab { align-items: end; }
.nos16-bitacora-cab .h16-foto { padding-bottom: 66.67%; }
.nos16-bitacora-cab .h16-foto img { object-position: 50% 60%; }
.nos16-pie-foto { margin: 10px 0 0; font-size: .82rem; color: var(--mid); }
@media (min-width: 1025px) {
  .nos16-bitacora .p16-hitos { grid-template-columns: repeat(5, 1fr); }
}

/* ── En buena compañía ── */
.nos16-socios { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; list-style: none; margin: 0; padding: 0; }
.nos16-socios .p16-card { padding: 26px; gap: 10px; }
.nos16-socios .p16-card-titulo { font-size: 1.15rem; }
.nos16-socios .h16-p { font-size: .92rem; line-height: 1.55; }
.nos16-socio-ir { margin-top: auto; font-size: .82rem; font-weight: 700; color: var(--h16-mint-text); }

/* ── Responsive ── */
@media (max-width: 1024px) {
  .nos16-socios { grid-template-columns: repeat(2, 1fr); }
  .nos16-nosomos .p16-cita { font-size: 2rem; }
}
@media (max-width: 860px) {
  .nos16-equipo { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .nos16-mision { font-size: 1.3rem; }
  .nos16-equipo { grid-template-columns: 1fr; }
  .nos16-foto { padding-bottom: 110%; }
  .nos16-nosomos .p16-cita { font-size: 1.45rem; }
  .nos16-socios { grid-template-columns: 1fr; }
}

/* Toda la fila del hito es el objetivo táctil (≥ 44 px): el enlace se extiende al <li> */
.nos16-bitacora a.p16-hito::after { content: ""; position: absolute; inset: 0; }
.nos16-bitacora a.p16-hito:focus-visible { outline: none; }
.nos16-bitacora a.p16-hito:focus-visible::after { outline: 2px solid var(--h16-mint-text); outline-offset: 4px; border-radius: 6px; }
