/* v224 — sponsor size controls the whole card */
.sponsor-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 12px !important;
}

.sponsor-card {
  box-sizing: border-box !important;
  flex: 0 0 calc(((100% - 36px) / 4) * var(--sponsor-card-scale, 1)) !important;
  width: calc(((100% - 36px) / 4) * var(--sponsor-card-scale, 1)) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: calc(168px * var(--sponsor-card-scale, 1)) !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: calc(4px * var(--sponsor-card-scale, 1)) !important;
}

.sponsor-logo {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.sponsor-logo img {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

@media (max-width: 720px) {
  .sponsor-grid {
    gap: 8px !important;
  }

  .sponsor-card {
    flex-basis: calc(((100% - 8px) / 2) * var(--sponsor-card-scale, 1)) !important;
    width: calc(((100% - 8px) / 2) * var(--sponsor-card-scale, 1)) !important;
    height: calc(126px * var(--sponsor-card-scale, 1)) !important;
    padding: calc(3px * var(--sponsor-card-scale, 1)) !important;
  }
}
