/* ==========================================================================
   Author profile page (layout author-v2). Loaded after v2-core.css and
   page-v2.css, which supply the band, the H1 and the breadcrumb.
   ========================================================================== */

.auv2-role {
  margin: 10px 0 0;
  font: 500 12px/1.4 'IBM Plex Mono', monospace;
  letter-spacing: .04em; text-transform: uppercase; color: #5A6478;
}

.auv2-layout { max-width: 760px; margin: 0 auto; padding: 44px 0 64px; }

.auv2-profile { display: grid; grid-template-columns: 128px minmax(0,1fr); gap: 32px; align-items: start; }
.auv2-photo { width: 128px; height: 128px; border-radius: 50%; object-fit: cover; object-position: center top; display: block; }
.auv2-initials {
  width: 128px; height: 128px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: #EEF4FF; font: 500 34px 'IBM Plex Mono', monospace; color: #1257E8;
}
.auv2-profile__copy { min-width: 0; }
.auv2-bio { margin: 0 0 14px; font-size: 18px; line-height: 1.65; color: #414B5E; text-wrap: pretty; }
.auv2-affil { margin: 0 0 16px; font-size: 15px; line-height: 1.6; color: #5A6478; text-wrap: pretty; }
/* Both beat .tv2 a (0,1,1) — house rule. */
.tv2 a.auv2-link { font: 500 14px/1 'IBM Plex Mono', monospace; color: #1257E8; text-decoration: none; }
.tv2 a.auv2-link:hover { text-decoration: underline; }

.auv2-articles { margin-top: 52px; }
.auv2-articles .tv2-h2 { margin-bottom: 20px; }
.auv2-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.auv2-list li {
  display: flex; align-items: baseline; justify-content: space-between; gap: 20px;
  padding: 14px 0; border-bottom: 1px solid #EDEFF4;
}
.auv2-list li:first-child { border-top: 1px solid #EDEFF4; }
.tv2 a.auv2-list__link, .auv2-list li > a { font-size: 17px; line-height: 1.45; color: #14203A; text-decoration: none; }
.auv2-list li > a:hover { color: #1257E8; text-decoration: underline; }
.auv2-list__date {
  flex: none; font: 400 12px/1.4 'IBM Plex Mono', monospace; color: #98A1B2; white-space: nowrap;
}

@media (max-width: 720px) {
  .auv2-profile { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .auv2-list li { flex-direction: column; gap: 4px; }
}

.auv2-credential {
  margin: 0 0 16px; font-size: 15px; line-height: 1.6; color: #414B5E;
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px;
}
.auv2-credential__kind {
  font: 500 11px/1.4 'IBM Plex Mono', monospace;
  letter-spacing: .08em; text-transform: uppercase; color: #98A1B2;
}
.tv2 a.auv2-affil-link, .auv2-affil a, .auv2-credential a { color: #1257E8; text-decoration: none; }
.auv2-affil a:hover, .auv2-credential a:hover { text-decoration: underline; }
