/* BD – Partner Logos Grid
   Erweiterte Version mit Tablet- und Mobile-Steuerung.
   Struktur:
   .bd-partner-logos
     .bd-partner-logos__inner
       .bd-partner-logos__item > (img|a img)
*/

.bd-partner-logos {
    margin-block: 3rem;
}

/* Basis-Grid */
.bd-partner-logos__inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
}

/* Desktop (>= 1025px) – Grid Columns */
.bd-partner-logos.grid-cols-2 .bd-partner-logos__inner { grid-template-columns: repeat(2, 1fr); }
.bd-partner-logos.grid-cols-3 .bd-partner-logos__inner { grid-template-columns: repeat(3, 1fr); }
.bd-partner-logos.grid-cols-4 .bd-partner-logos__inner { grid-template-columns: repeat(4, 1fr); }
.bd-partner-logos.grid-cols-5 .bd-partner-logos__inner { grid-template-columns: repeat(5, 1fr); }
.bd-partner-logos.grid-cols-6 .bd-partner-logos__inner { grid-template-columns: repeat(6, 1fr); }

/* Tablet (769px – 1024px) – Grid Columns */
@media (max-width: 1024px) and (min-width: 769px) {
    .bd-partner-logos.tablet-grid-cols-1 .bd-partner-logos__inner { grid-template-columns: repeat(1, 1fr); }
    .bd-partner-logos.tablet-grid-cols-2 .bd-partner-logos__inner { grid-template-columns: repeat(2, 1fr); }
    .bd-partner-logos.tablet-grid-cols-3 .bd-partner-logos__inner { grid-template-columns: repeat(3, 1fr); }
    .bd-partner-logos.tablet-grid-cols-4 .bd-partner-logos__inner { grid-template-columns: repeat(4, 1fr); }
}

/* Mobile (<= 768px) – Grid Columns */
@media (max-width: 768px) {
    .bd-partner-logos.mobile-grid-cols-1 .bd-partner-logos__inner { grid-template-columns: repeat(1, 1fr); }
    .bd-partner-logos.mobile-grid-cols-2 .bd-partner-logos__inner { grid-template-columns: repeat(2, 1fr); }
    .bd-partner-logos.mobile-grid-cols-3 .bd-partner-logos__inner { grid-template-columns: repeat(3, 1fr); }
}

/* Gap Settings */
.bd-partner-logos.gap-small  .bd-partner-logos__inner { gap: 1rem; }
.bd-partner-logos.gap-medium .bd-partner-logos__inner { gap: 2rem; }
.bd-partner-logos.gap-large  .bd-partner-logos__inner { gap: 3rem; }

/* Logo Item */
.bd-partner-logos__item {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Bild: responsive */
.bd-partner-logos__image {
    max-width: 100%;
    height: auto;
    display: block;
    border: 1px #ccd6cc solid;
}

/* Link-Styling (umfasst das Bild) */
.bd-partner-logos__item a {
    display: block;
    text-align: center;
}

/* Mobile-Schranke für Images (robust) */
@media (max-width: 768px) {
    .bd-partner-logos__image { max-width: 100%; }
}
