.person-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.directory-person{display:flex;align-items:center;gap:18px;padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);text-decoration:none;min-width:0;transition:border-color .18s,background .18s}
.directory-person:hover{border-color:var(--accent)}
.directory-person:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.directory-person-media{width:76px;height:100px;flex:none;overflow:hidden;border-radius:12px;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#e5091436,transparent 75%),var(--paper);border:1px solid var(--line)}
.directory-person-media img{width:100%;height:100%;object-fit:cover}
.directory-person-initials{color:var(--accent);font-size:1.65rem;letter-spacing:-1px;font-weight:700}
.directory-person-copy{min-width:0;flex:1}.directory-person-label{font-size:.6rem;font-weight:600;letter-spacing:.18em;color:var(--muted)}
.directory-person h3{font-size:1.1rem;line-height:1.3;letter-spacing:-.3px;margin:8px 0;overflow-wrap:anywhere}
.directory-person-copy p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:.8rem;line-height:1.5;color:var(--muted);margin:0 0 12px;overflow-wrap:anywhere}
.directory-person-action{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--accent);font-size:.7rem;margin-top:12px}
@media(max-width:1100px){.person-directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.person-directory{grid-template-columns:1fr;gap:12px}.directory-person{padding:20px;gap:18px}.directory-person-media{width:72px;height:96px}}
@media(prefers-reduced-motion:reduce){.directory-person{transition:none}}
