.sponsor-grid { align-items: stretch; }
.sponsor-grid article { display: flex; min-width: 0; flex-direction: column; }
.sponsor-grid article > a { margin-top: auto; }
.sponsor-brand-image, .sponsor-placeholder { width: 100%; height: auto; aspect-ratio: 1; margin-bottom: 24px; object-fit: contain; }
.sponsor-placeholder { display: grid; place-items: center; }
.sponsor-profile { align-items: stretch; }
.sponsor-visual { min-height: 0; aspect-ratio: 1; padding: 46px; }
.profile-square-logo { display: block; width: 100%; height: 100%; object-fit: contain; }
.logos-card-logo { background: #031a3d; }
.logos-visual { background: radial-gradient(circle at 50% 42%, #0b376c, #02132f 72%); }
.logos-strip { position: absolute; right: 0; bottom: 0; left: 0; padding: 18px; background: #d5ad43; color: #041936; text-align: center; font-size: 10px; font-weight: 900; letter-spacing: .15em; }
@media (max-width: 800px) {
  .sponsor-grid { grid-template-columns: 1fr; }
  .sponsor-grid article { width: 100%; padding: 18px; }
  .sponsor-brand-image, .sponsor-placeholder { max-height: none; }
  .sponsor-profile { margin: 18px 16px 52px; grid-template-columns: 1fr; border-radius: 8px; overflow: hidden; }
  .sponsor-visual { width: 100%; min-height: 0; padding: 28px; aspect-ratio: 1; }
  .sponsor-story { padding: 36px 22px; }
  .sponsor-story h2 { font-size: 40px; }
  .sponsor-contact a { display: block; line-height: 1.35; }
}
