/* Partners directory — right column of /partners/ (bashkortrights.com)
 * Rendered by [solidarity_partners] (ops/51-partners.php). Scoped to .pdir;
 * shares the --sr-* token family with solidarity.css (warm neutrals, palette-1
 * blue accent, Georgia for names) so the two columns on page 430 read as one.
 * Sits in a ~38% Kadence column, so the grid is effectively single-file. */

.pdir {
  --sr-panel: #ffffff;
  --sr-panel-2: #f5f2ec;
  --sr-ink: #1d1c18;
  --sr-ink-2: #57534a;
  --sr-ink-3: #8a8578;
  --sr-line: #ded8ca;
  --sr-line-strong: #c8c0af;
  --sr-accent: #1f5c8f;

  color: var(--sr-ink);
  font-size: 15px;
  line-height: 1.55;
}

.pdir * {
  box-sizing: border-box;
}

.pdir-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 0.8rem;
}

.pdir-card {
  display: flex;
  gap: 0.8rem;
  padding: 0.95rem;
  background: var(--sr-panel);
  border: 1px solid var(--sr-line);
  border-radius: 0.6rem;
}

.pdir-logo {
  flex: 0 0 auto;
  width: 46px;
  height: 46px;
  border-radius: 0.5rem;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--sr-panel-2);
  border: 1px solid var(--sr-line);
}
.pdir-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.pdir-monogram {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--sr-ink-3);
}

.pdir-body {
  min-width: 0;
}
.pdir-people {
  margin: 0 0 0.15rem;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--sr-ink-3);
}
.pdir-name {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.12rem;
  font-weight: 600;
  line-height: 1.25;
  color: var(--sr-ink);
  text-wrap: balance;
}
.pdir-native {
  margin: 0.2rem 0 0;
  font-size: 0.85rem;
  color: var(--sr-ink-2);
}
.pdir-mandate {
  margin: 0.55rem 0 0;
  font-size: 0.88rem;
  color: var(--sr-ink-2);
}
.pdir-meta {
  margin: 0.7rem 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0.9rem;
  font-size: 0.83rem;
}
.pdir-rep {
  color: var(--sr-ink-2);
}
.pdir .pdir-meta a,
.pdir .pdir-rep a,
.pdir .pdir-site a {
  color: var(--sr-accent);
  text-decoration: none;
  font-weight: 500;
}
.pdir .pdir-meta a:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pdir-empty {
  padding: 1.4rem 0.25rem;
  color: var(--sr-ink-3);
}

/* ---- A-Z rail: only present at >=30 entries (see PDIR_AZ_MIN). ---- */
.pdir--az {
  display: grid;
  grid-template-columns: 1fr 1.75rem;
  gap: 1.4rem;
}
.pdir-az {
  grid-column: 2;
  grid-row: 1;
  position: sticky;
  top: 5rem;
  align-self: start;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.1rem;
  font-size: 0.78rem;
  font-variant-numeric: tabular-nums;
}
.pdir-az a {
  color: var(--sr-ink-3);
  text-decoration: none;
  padding: 0.05rem 0.2rem;
  border-radius: 0.25rem;
  line-height: 1.2;
}
.pdir-az a:hover,
.pdir-az a[aria-current="true"] {
  color: var(--sr-accent);
  font-weight: 700;
}
.pdir--az .pdir-main {
  grid-column: 1;
  grid-row: 1;
}

@media (max-width: 640px) {
  .pdir--az {
    grid-template-columns: 1fr;
  }
  .pdir-az {
    grid-column: 1;
    grid-row: 1;
    position: static;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.1rem 0.35rem;
    margin-bottom: 1rem;
  }
  .pdir--az .pdir-main {
    grid-row: 2;
  }
}

/* Page 430 two-column row (register | directory): Kadence emits
   `grid-template-columns: repeat(2, minmax(0,1fr))` for this left-golden row at
   <=767px instead of stacking, so both columns get crushed on phones. Force a
   single column below 900px — the register reads fine full-width and the cards
   need room. Row id is stable (ops/21-partners-layout.php). */
@media (max-width: 900px) {
  .kb-row-layout-id430_15e357-cb > .kt-row-column-wrap {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
