/* Founder portraits, roles and social links. */
.team-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px; align-items: start; }
.team-grid > div { grid-column: 1 / span 4; }
.people { grid-column: 5 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 0; list-style: none; }
.portrait { position: relative; aspect-ratio: 1; overflow: hidden; border-radius: 4px; background: var(--surface); }
.portrait img { width: 100%; height: 100%; object-fit: cover; transform-origin: var(--ox, 50%) var(--oy, 50%); transform: scale(var(--zoom, 1)); }
.portrait--alex { --zoom: 1.445; --ox: 50.6%; --oy: 6.2%; }
.people h3 { margin: 16px 0 2px; font-size: 1.125rem; font-weight: 500; }
.people p { margin: 0; font-size: .9375rem; color: var(--muted); }
.follow { display: flex; flex-wrap: wrap; gap: 8px 12px; margin-top: 22px; }
.social { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border: 1px solid var(--edge); border-radius: 999px; color: var(--ink); font-size: .875rem; text-decoration: none; }
.social:hover { border-color: var(--silver); }
.social .icon { width: 16px; height: 16px; }
.person-link { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; margin-top: 4px; color: var(--silver); font-size: .875rem; text-decoration: none; }
.person-link:hover { color: var(--ink); }
.person-link .icon { width: 14px; height: 14px; }
.role-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.role-row .person-link { margin-top: 0; flex: none; }
@media (max-width: 900px) {
  .team-grid > div { grid-column: 1 / -1; }
  .people { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .people { gap: 14px; }
}
