/* =========================================================
   sponsor.css — Sponsor & Media Partner
   Pertamina Foundation style with clean cards
   ========================================================= */

.sponsor__tabs{
  display: inline-flex;
  gap: 4px;
  background: var(--gray-100);
  padding: 6px;
  border-radius: var(--radius-full);
  margin-bottom: 40px;
}
.sponsor__tab{
  border: none;
  background: transparent;
  padding: 10px 24px;
  font-weight: 700;
  font-size: 14px;
  color: var(--gray-500);
  border-radius: var(--radius-full);
  transition: background .25s var(--ease), color .25s var(--ease), box-shadow .25s var(--ease);
}
.sponsor__tab.is-active{ background: var(--pf-blue); color: var(--white); box-shadow: 0 4px 12px rgba(0,59,149,.2); }

.sponsor__panel{ display: none; }
.sponsor__panel.is-active{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media (min-width: 620px){ .sponsor__panel.is-active{ grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 900px){ .sponsor__panel.is-active{ grid-template-columns: repeat(4, 1fr); } }

.sponsor__logo{
  aspect-ratio: 16 / 10;
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-md);
  padding: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease);
  background: var(--white);
}
.sponsor__logo:hover{ transform: translateY(-4px); box-shadow: 0 16px 28px -14px rgba(0,0,0,.12); border-color: var(--gray-300); }
.sponsor__logo .photo-frame{ width: 100%; height: 100%; background: transparent; }
.sponsor__logo .photo-frame img{ object-fit: contain; }
.sponsor__logo .photo-frame.is-empty{ background: var(--gray-50); border-style: dashed; }
.sponsor__logo .photo-frame.is-empty::after{ font-size: 10.5px; }

.sponsor__cta{
  margin-top: 40px;
  padding: 26px 28px;
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-md);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.sponsor__cta p{ font-size: 14.5px; color: var(--gray-600); max-width: 460px; }
.sponsor__cta strong{ color: var(--gray-900); }
