/* ============================================================
   components/author.css
   The author profile header (photo + identity + bio + links) and the
   materials section title. The authors LISTING and the materials grid
   reuse the shared card + .rfi-feed; only the profile header is new.
   Layout only. Every colour is a token, no hardcoded values.
   ============================================================ */
.rfi-author__head { display: flex; gap: 20px; align-items: flex-start; }
.rfi-author__photo {
  width: 120px; height: 120px; flex: none;
  border-radius: var(--rfi-radius); object-fit: cover; background: var(--rfi-border-soft);
}
.rfi-author__id { min-width: 0; }
.rfi-author__staff {
  display: inline-block; margin-top: 8px;
  font-family: var(--rfi-font-ui); font-size: 12px; font-weight: 600;
  letter-spacing: .4px; text-transform: uppercase; color: var(--rfi-text-2);
}
.rfi-author__expertise { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.rfi-author__bio { margin-top: 18px; font-size: 16px; line-height: 1.7; color: var(--rfi-text); }
.rfi-author__bio p { margin: 0 0 12px; }
.rfi-author__bio p:last-child { margin-bottom: 0; }
.rfi-author__links {
  display: flex; flex-wrap: wrap; gap: 16px; margin: 16px 0 0; padding: 0; list-style: none;
}
.rfi-author__links a {
  font-family: var(--rfi-font-ui); font-size: 14px; font-weight: 500; color: var(--rfi-navy);
}
.rfi-author__links a:hover { color: var(--rfi-teal); }

.rfi-author-materials { margin-top: 30px; }
.rfi-author-materials__title {
  font-family: var(--rfi-font-ui); font-size: 18px; font-weight: 600;
  color: var(--rfi-text); margin: 0 0 16px;
}

@media (max-width: 600px) {
  .rfi-author__head { gap: 14px; }
  .rfi-author__photo { width: 88px; height: 88px; }
}
