/* Kudenix Logos — Scoped under .kudenix-logos
   Origen: kudenixgo.html comp-ma2k4b7q (Partners) y kudenixlab.html comp-mcmdkwug. */

.kudenix-logos {
  --klg-bg: #ffffff;
  --klg-title: #000B2C;
  --klg-height: 70px;

  --klg-font-strong: 'kdx-strong', 'Helvetica Neue', Helvetica, Arial, sans-serif;

  background: var(--klg-bg);
  padding: 50px 0 60px;
}

.kudenix-logos__inner {
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

.kudenix-logos__title {
  margin: 0 0 30px;
  font-family: var(--klg-font-strong);
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 0.24em;
  text-align: center;
  color: var(--klg-title);
}

/* Flex con centrado: la última fila queda centrada aunque no se complete. */
.kudenix-logos__grid {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 28px 40px;
}

.kudenix-logos__item {
  flex: 0 0 auto;
  line-height: 0;
}

.kudenix-logos__item img {
  height: var(--klg-height);
  width: auto;
  max-width: 180px;
  object-fit: contain;
  display: block;
}

.kudenix-logos--gray .kudenix-logos__item img {
  filter: grayscale(1);
  opacity: 0.75;
  transition: filter 0.2s ease, opacity 0.2s ease;
}

.kudenix-logos--gray .kudenix-logos__item:hover img {
  filter: grayscale(0);
  opacity: 1;
}

@media (max-width: 600px) {
  .kudenix-logos { --klg-height: 50px; }
  .kudenix-logos__grid { gap: 20px 26px; }
}
