/* Fotos completas en las tarjetas del equipo de la portada. */
#equipo .team-grid article {
  min-height: 390px;
  padding: 24px 18px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  isolation: isolate;
  background: #141414;
}
#equipo .team-grid article::before { content: none; }
#equipo .team-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: #141414;
}
#equipo .team-image::after {
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.94), rgba(0,0,0,.65) 18%, rgba(0,0,0,.08) 40%, transparent 58%);
  pointer-events: none;
}
#equipo .team-image img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  padding: 0;
  object-fit: cover;
  object-position: center top;
  opacity: 1;
  filter: none;
  image-rendering: auto;
}
#equipo .team-grid article:hover img { transform: scale(1.025); }
#equipo .team-grid article > p,
#equipo .team-grid article > h3 {
  position: relative;
  margin: 0 !important;
  text-shadow: 0 2px 8px rgba(0,0,0,.6);
}
#equipo .team-grid article > .team-role {
  color: #ff5c62 !important;
  margin-bottom: 9px !important;
  font-size: 9px !important;
}
#equipo .team-grid article > h3 {
  color: #fff;
  font-size: clamp(24px, 2.2vw, 30px);
  line-height: 1.05;
}
#equipo .team-grid article > p:last-child {
  margin-top: 8px !important;
  color: #eee !important;
  font-size: 10px !important;
  line-height: 1.4;
}
@media (max-width: 900px) and (min-width: 601px) {
  #equipo .team-grid { max-width: none; }
}
@media (max-width: 600px) {
  #equipo .team-grid { width: 100%; max-width: 380px; }
  #equipo .team-grid article { min-height: 0; aspect-ratio: 3 / 4; padding: 28px 24px; }
  #equipo .team-grid article > h3 { font-size: 32px; }
}
@media (prefers-reduced-motion: reduce) {
  #equipo .team-grid article, #equipo .team-image img { transition: none; }
  #equipo .team-grid article:hover, #equipo .team-grid article:hover img { transform: none; }
}
