/* Gemeinsame Sponsorenhierarchie, eventbezogene Partner/Nummern bleiben Inhalt. */
.sponsor-row-teams > .sponsor-logo { flex-direction:column; gap:8px; min-width:0; min-height:112px; padding:12px 16px; text-decoration:none; }
.sponsor-team-number { display:block; flex-shrink:0; color:var(--mid-gray); font-family:var(--font-display); font-size:.8rem; font-weight:600; line-height:1.2; letter-spacing:.04em; text-transform:uppercase; }
.sponsor-reversed .sponsor-team-number { color:rgba(255,255,255,.72); }
.sponsor-team-art { display:flex; align-items:center; justify-content:center; width:100%; min-width:0; min-height:64px; }
.sponsor-row-teams > .sponsor-logo img { display:block; width:100%; max-width:100%; height:64px; max-height:64px; object-fit:contain; }
.sponsor-row-teams > .sponsor-logo.sponsor-tfp { gap:8px; }
.sponsor-tfp .sponsor-team-art { flex-direction:column; gap:6px; }
.sponsor-row-teams .sponsor-tfp .sponsor-team-art img.sponsor-tfp-signet { width:42px; height:42px; max-height:42px; }
.sponsor-row-teams .sponsor-tfp .sponsor-team-art img.sponsor-tfp-wordmark { width:125px; max-width:100%; height:auto; max-height:12px; }
:is(.sponsor-row-patrons,.sponsor-row-in-kind) > .sponsor-logo img { height:56px; max-height:56px; object-fit:contain; }
@media(min-width:641px) {
 :is(.sponsor-row-patrons,.sponsor-row-in-kind) > .sponsor-logo { flex:0 1 176px; width:176px; max-width:176px; min-width:0; min-height:92px; padding:12px 16px; }
}
@media(min-width:1024px) {
 .sponsor-row-teams { gap:16px; align-items:stretch; }
 .sponsor-row-teams > .sponsor-logo { flex:0 0 calc((100% - 64px)/5); width:calc((100% - 64px)/5); max-width:200px; }
}
@media(max-width:640px) {
 .sponsor-row-in-kind { gap:12px; align-items:stretch; }
 .sponsor-row-in-kind > .sponsor-logo { flex:0 0 calc((100% - 12px)/2); width:calc((100% - 12px)/2); max-width:calc((100% - 12px)/2); min-width:0; padding:12px; }
 .sponsor-row-teams > .sponsor-logo { padding:12px; }
}
