.camino--legal .camino__fondo { object-position: top center; }

.firma--legal .firma__quien { grid-template-columns: 88px minmax(0, 1fr); align-items: center; gap: 1.25rem; }
.firma--legal .firma__quien--sin-foto { grid-template-columns: minmax(0, 1fr); }
.firma--legal .firma__foto { display: block; width: 88px; height: 88px; object-position: top center; border-radius: var(--r-glass); }
.firma--legal .firma__n { display: inline-block; text-decoration: none; line-height: 1.25; }
.firma--legal .firma__n:hover { color: var(--purple); }
.firma--legal .firma__perfil { color: var(--purple); font-size: .92rem; text-underline-offset: .2em; }
.firma--legal .firma__revision { margin-top: 1.5rem; }
.firma--legal .firma__fecha { max-width: none; }
.firma--legal .firma__fecha + .firma__fecha { margin-top: .6rem; }
.firma--legal .firma__nota { max-width: none; }
.firma--legal a:focus-visible { outline: 2px solid var(--purple); outline-offset: 4px; }

/* Resalte editorial a todo el ancho, compacto y adaptable. */
.firma--legal .firma__in { padding-block: clamp(2rem, 5vh, 3rem); }
.firma--legal .firma__t { margin-bottom: 1.25rem; }
.firma--legal .firma__resalte {
  width: 100%;
  display: grid;
  gap: 1.25rem;
  padding: clamp(1rem, 2.5vw, 1.5rem);
  border-inline-start: 3px solid var(--purple);
  border-radius: var(--r-glass);
  background: var(--pale);
}
.firma--legal .firma__resalte .firma__quien { padding: 0; border: 0; }
.firma--legal .firma__resalte .firma__revision { margin-top: 0; }
@media (min-width: 45rem) {
  .firma--legal .firma__resalte { grid-template-columns: minmax(0, 22rem) minmax(0, 1fr); align-items: center; gap: 2rem; }
  .firma--legal .firma__resalte--solo { grid-template-columns: minmax(0, 1fr); }
}
