/* A compact, personal story with room for the photographs. */
.bio-story { padding-bottom: clamp(64px, 7vw, 104px); }
.bio-story-hero { margin-bottom: clamp(48px, 6vw, 88px); }
.bio-story-hero h1 { font-size: clamp(3rem, 5.7vw, 6.1rem); }
.bio-story-lead { max-width: 740px; }
.bio-story-origins {
  width: min(1200px, 100%);
  margin: 0 auto clamp(52px, 6vw, 88px);
  padding-bottom: clamp(36px, 4vw, 56px);
  border-bottom: 1px solid var(--line);
}
.bio-story-panel {
  width: min(1200px, 100%);
  grid-template-columns: minmax(0, .85fr) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 72px);
  margin-bottom: clamp(52px, 6vw, 88px);
}
.bio-story-panel--reverse { grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); }
.bio-story-origins .bio-story-panel:last-child { margin-bottom: 0; }
.bio-story-panel .bio-story-image {
  width: 100%;
  max-width: 460px;
  background: transparent;
  justify-self: center;
}
.bio-story-panel .bio-story-image--filming,
.bio-story-panel .bio-story-image--night { max-width: 400px; }
.bio-story-panel .bio-story-image img {
  display: block;
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: auto;
  object-fit: contain;
  filter: none;
  transform: none;
}
.bio-story-image::after { display: none; }
.bio-story-image figcaption {
  margin-top: 12px;
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.5;
}
.bio-story-copy h2,
.bio-story-final h2 {
  margin-bottom: 20px;
  font-size: clamp(1.9rem, 3.1vw, 3.3rem);
  line-height: 1.12;
  letter-spacing: .01em;
}
.bio-story-kicker { margin-bottom: 14px; }
.bio-story-copy p + p { margin-top: 18px; }
.bio-story-panel--today {
  display: block;
  width: min(820px, 100%);
  padding: clamp(32px, 4vw, 56px) 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  margin-bottom: clamp(44px, 5vw, 72px);
}
.bio-story-panel--today .bio-story-copy { max-width: none; }
.bio-story-final { max-width: 760px; padding-top: 0; }
.bio-story-signature-wrap { width: clamp(230px, 25vw, 340px); margin-top: 24px; }
.bio-story-actions { margin-top: 26px; }
.bio-story-actions a:first-child { color: var(--ink); }
.bio-story-actions a:last-child { color: var(--muted); }
@media (max-width: 900px) {
  .bio-story-hero h1 { font-size: clamp(2.7rem, 7.6vw, 4.4rem); }
  .bio-story-panel { gap: 24px; align-items: stretch; }
  .bio-story-panel .bio-story-image { align-self: center; }
  .bio-story-copy { max-width: 680px; margin-inline: auto; }
  .bio-story-panel--today { padding-block: 32px; }
}
@media (max-width: 560px) {
  .bio-story-hero h1 { font-size: clamp(2.5rem, 10.6vw, 3.5rem); }
  .bio-story-copy h2, .bio-story-final h2 { font-size: clamp(1.9rem, 7.8vw, 2.5rem); }
}
