/*
 * Slots de imagen (logos de clientes, fotos del equipo).
 * Estas clases SOLO existen cuando el usuario sube una imagen; con el contenido aprobado
 * (sin imágenes) este archivo no afecta ningún elemento de la página.
 */
.sle-slot-img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: grayscale(1);
  opacity: 0.85;
  transition: filter 0.3s ease, opacity 0.3s ease;
}
.client-cell:hover .sle-slot-img {
  filter: none;
  opacity: 1;
}
.sle-slot-photo {
  display: block;
  width: 72px;
  height: 72px;
  margin-bottom: 16px;
  border-radius: 50%;
  object-fit: cover;
  background: var(--paper-200, #e8e2d6);
}

/*
 * Muros de logos de clientes (home, Flotas, Automotriz, Industria).
 * Los logos se ajustan a la celda; el logo ya trae su propio margen interno (lienzo 1,6:1).
 */
.sle-wall-img {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  filter: none;
  opacity: 1;
}
.logo-cell.is-logo,
.client-cell.is-logo {
  padding: 12px;
}
.logo-cell[hidden],
.client-cell[hidden] {
  display: none;
}

/* Pestañas por sector: misma tipografía y filete que el resto del sitio */
.sle-wall-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 34px;
  margin: 0 0 28px;
  border-bottom: 1px solid var(--rule);
}
.sle-wall-tab {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-600);
  background: none;
  border: 0;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  padding: 0 0 14px;
  cursor: pointer;
  transition: color 0.3s, border-color 0.3s;
}
.sle-wall-tab:hover {
  color: var(--red);
}
.sle-wall-tab:focus-visible {
  outline: 2px solid var(--red);
  outline-offset: 4px;
}
.sle-wall-tab[aria-selected="true"] {
  color: var(--ink);
  border-bottom-color: var(--red);
}
.sle-wall-tab .n {
  margin-left: 6px;
  font-weight: 400;
  opacity: 0.5;
}
