/* ================================================================
   PARTNERS PAGE — CATEGORY TABS + LOGO WALL
   ================================================================ */

/* ── CATEGORY TABS ── */
.partners-tabbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 0 auto 52px;
  position: relative;
  z-index: 1;
}
.partners-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 22px;
  border-radius: 100px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.1);
  color: rgba(255,255,255,.55);
  font-family: 'Inter', sans-serif;
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .3px;
  cursor: pointer;
  white-space: nowrap;
  transition: background .22s, border-color .22s, color .22s, transform .2s var(--ease-back);
}
.partners-tab i { font-size: .72rem; }
.partners-tab:hover {
  background: rgba(255,255,255,.08);
  color: #ffffff;
  border-color: rgba(255,255,255,.22);
  transform: translateY(-1px);
}
.partners-tab.active {
  background: var(--primary);
  border-color: var(--primary);
  color: #ffffff;
  box-shadow: 0 4px 20px rgba(44,76,253,.4);
}

/* ── LOGO WALL ── */
.pw-wall {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 20px;
}
.pw-tile {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 18px;
  padding: 26px 18px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  text-align: center;
  transition: transform .35s cubic-bezier(.34,1.56,.64,1), border-color .3s, background .3s, box-shadow .3s;
}
.pw-tile:hover {
  transform: translateY(-8px);
  border-color: rgba(44,76,253,.3);
  background: rgba(255,255,255,.07);
  box-shadow: 0 20px 50px rgba(0,0,0,.25);
}
.pw-logo {
  height: 52px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  filter: brightness(.92) grayscale(.3);
  transition: filter .3s;
}
.pw-tile:hover .pw-logo { filter: none; }
.pw-logo img { max-height: 52px; max-width: 100%; object-fit: contain; }
.pw-name {
  font-size: .72rem;
  font-weight: 700;
  color: rgba(255,255,255,.6);
  letter-spacing: .2px;
  line-height: 1.4;
}
.pw-tile:hover .pw-name { color: #ffffff; }

@media (max-width: 1100px) { .pw-wall { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 760px) {
  .pw-wall { grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .partners-tab span { display: none; }
  .partners-tab { padding: 12px 16px; }
}
@media (max-width: 480px) { .pw-wall { grid-template-columns: repeat(2, 1fr); gap: 12px; } }

/* ── LIGHT MODE (site runs with data-theme="light") ── */
[data-theme="light"] .partners-tab {
  background: #ffffff;
  border-color: rgba(15,23,42,.09);
  color: #64748b;
}
[data-theme="light"] .partners-tab:hover {
  background: rgba(44,76,253,.06);
  color: var(--primary);
  border-color: rgba(44,76,253,.2);
}
[data-theme="light"] .partners-tab.active {
  background: var(--primary);
  border-color: var(--primary);
  color: #ffffff;
}
[data-theme="light"] .pw-tile {
  background: #ffffff;
  border-color: rgba(15,23,42,.08);
  box-shadow: 0 2px 14px rgba(15,23,42,.04);
}
[data-theme="light"] .pw-tile:hover {
  border-color: rgba(44,76,253,.25);
  box-shadow: 0 20px 48px rgba(44,76,253,.12);
  background: #ffffff;
}
[data-theme="light"] .pw-name { color: #475569; }
[data-theme="light"] .pw-tile:hover .pw-name { color: #0f172a; }
