.author-hero { min-height: 320px; }
.author-hero .hero-image { object-position: center 38%; }
.author-hero .hero-content { width: min(1100px, calc(100% - 3rem)); padding: 3.5rem 0; }
.author-hero h1 { font-size: clamp(2.25rem, 4.6vw, 4.25rem); line-height: 1.1; letter-spacing: .08em; }
.author-hero .divider { margin: 1.5rem auto; background: var(--cream); }
.author-hero .section-label { margin: 0; font-size: .75rem; line-height: 1.7; }

.author-bio { width: min(44rem, calc(100% - 3rem)); margin: auto; padding: 3.5rem 0 4.5rem; }
.author-bio h2 { margin: 0 0 1.25rem; font-family: var(--serif); font-size: clamp(2.25rem, 4.5vw, 3.75rem); font-weight: 400; letter-spacing: -.025em; line-height: 1.12; }
.author-bio p { margin: 0 0 1.25rem; color: var(--muted); }
.author-bio strong { color: var(--ink); }
.author-bio p:last-child { margin-bottom: 0; }
.author-bio a { text-underline-offset: .2em; }
.author-bio a:hover { color: var(--ink); }
.author-bio a:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }

@media (max-width: 600px) {
  .author-hero { min-height: 280px; }
  .author-hero .hero-content { padding: 3rem 0; }
  .author-bio { padding-block: 2.75rem 3.5rem; }
  .author-bio p:not(:last-child) { font-size: .9375rem; }
}
