.family-directory { margin-top: 2rem; }
.family-directory > .panel { margin-bottom: 1rem; }
.family-person { display: flex; align-items: flex-start; gap: 1rem; overflow-wrap: anywhere; }
.family-people { display: grid; gap: 1rem; grid-template-columns: minmax(0, 1fr); }
.family-person-details { min-width: 0; flex: 1; }
.family-person-details h3 { margin: 0; }
.family-bio { margin: .35rem 0 0; white-space: pre-line; }
.family-avatar { display: block; width: 64px; height: 64px; border-radius: 50%; object-fit: cover; flex: none; }
.family-founder .family-avatar { width: 112px; height: 112px; }
#profile-crop-form canvas { display: block; width: min(100%, 260px); height: auto; border-radius: .5rem; }
#profile-crop-form [data-crop-controls] label { display: block; margin-top: .65rem; }
#profile-crop-form [data-crop-status]:empty { display: none; }
