/* Logos originales y productos con proporciones naturales y nombres legibles. */
.brands { background: #eef1f3; }
.brands h2 { font-size: clamp(1.75rem, 3vw, 2.5rem); }
/* flex + wrap + justify-content:center (no grid): con un número de marcas
   que no es múltiplo de la cantidad de columnas, la fila incompleta queda
   centrada en vez de pegada a la izquierda con un hueco a la derecha. */
.brands__grid { list-style: none; margin: 32px 0 0; padding: 24px 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 28px 36px; align-items: center; }
.brands__grid li { flex: 0 1 calc(20% - 28.8px); min-width: 110px; display: flex; align-items: center; justify-content: center; height: 80px; }
.brands__grid img { width: 100%; max-width: 165px; height: 64px; object-fit: contain; filter: brightness(.6); }
.brands__products-title { margin-top: 64px; font-size: clamp(1.5rem, 2vw, 2rem); }
.brands__products { list-style: none; margin: 32px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 36px 28px; }
.brands__products li { min-width: 0; }
.brands__products img { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; padding: 12px; }
.brands__products-name { display: block; margin-top: 16px; font-size: 1.125rem; font-weight: 600; line-height: 1.35; }
.brands__products-cat { display: block; margin-top: 6px; font-size: .875rem; color: #005c8b; }
.brands__products-note { margin-top: 32px; font-size: .8125rem; color: #536371; }
@media (max-width: 900px) { .brands__grid { gap: 16px; } .brands__grid li { flex-basis: calc(20% - 12.8px); } .brands__products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .brands__grid { padding: 20px; gap: 16px 28px; } .brands__grid li { flex-basis: calc(50% - 14px); } .brands__products { gap: 28px 16px; } .brands__products img { padding: 0; } .brands__products-name { font-size: 1rem; } }
