/* All portfolios: a ruled index, one person per row. Tokens only (Pressed Paper / Night Trail). */
.pf-list { list-style: none; margin: 0; padding: 0; border-top: 2px solid var(--rule); }
.pf-entry { display: grid; grid-template-columns: 4.5rem minmax(0, 1.5fr) minmax(0, 1fr) 8.5rem; gap: 0.5rem 2rem; align-items: start; padding: 1.8rem 0; border-bottom: 1px solid var(--hair); }
.pf-entry__no { margin: 0; font: italic 700 1.8rem/1 var(--f-display); color: var(--accent); }
.pf-entry__kick { margin: 0; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink-2); }
.pf-entry__name { margin: 0.35rem 0 0; font: 800 clamp(1.6rem, 1.2rem + 1.4vw, 2.3rem)/1.1 var(--f-display); }
.pf-entry__line { margin: 0.55rem 0 0; max-width: 54ch; color: var(--ink-2); line-height: 1.55; }
.pf-entry__links { list-style: none; margin: 0.4rem 0 0; padding: 0; display: grid; gap: 0.5rem; }
.pf-entry__links a { font-weight: 700; color: var(--ink); text-decoration: underline; text-decoration-color: var(--leader); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.pf-entry__links li:first-child a { color: var(--accent); }
.pf-entry__links a:hover { text-decoration-thickness: 3px; }
.pf-entry__when { margin: 0.45rem 0 0; font-size: 0.86rem; color: var(--ink-2); text-align: right; }
@media (prefers-reduced-motion: no-preference) {
  .pf-entry { transition: background-color .25s var(--ease); }
  .pf-entry:hover { background: color-mix(in srgb, var(--wash) 35%, transparent); }
}
@media (max-width: 860px) {
  .pf-entry { grid-template-columns: 3rem minmax(0, 1fr); }
  .pf-entry__links, .pf-entry__when { grid-column: 2; }
  .pf-entry__when { text-align: left; margin-top: 0; }
}
