.profile {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  grid-template-areas: 'heading portrait' 'story portrait';
  column-gap: clamp(45px, 7vw, 120px);
  padding: 65px var(--page-gutter) 85px;
  background: var(--paper);
}
.profile-heading { grid-area: heading; position: relative; isolation: isolate; align-self: end; padding: 45px 0 20px; }
.profile-monogram { position: absolute; z-index: -1; top: -16px; left: -12px; color: var(--gold); opacity: .2; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(260px, 31vw, 470px); line-height: .9; pointer-events: none; }
.profile h1 { margin: 0 0 24px; font-size: clamp(52px, 5.4vw, 84px); line-height: 1.08; letter-spacing: -.035em; }
.profile-role { margin-bottom: 0; font-size: 11px; letter-spacing: .09em; text-transform: uppercase; }
.profile-portrait { grid-area: portrait; align-self: start; }
.profile-portrait img { width: 100%; height: auto; aspect-ratio: 957 / 1280; }
.profile-portrait figcaption { margin-top: 13px; color: var(--muted); font-size: 10px; letter-spacing: .08em; }
.profile-story { grid-area: story; align-self: start; max-width: 550px; padding-top: 22px; font-size: 15px; line-height: 1.95; color: var(--muted); }
.profile-story .lead { color: var(--ink); font-size: 17px; }
.profile-story .text-link { margin-top: 4px; }
.profile-breadcrumb { display: flex; gap: 10px; padding: 20px var(--page-gutter) 0; margin: 0; color: var(--muted); font-size: 10px; }
.profile-breadcrumb a { text-decoration: none; }
.profile-breadcrumb a:hover { text-decoration: underline; }
.book-feature {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  grid-template-areas: 'title image' 'copy image';
  column-gap: clamp(45px, 6vw, 100px);
  padding: 85px var(--page-gutter);
  background: var(--navy);
  color: #fff;
}
.book-heading { grid-area: title; align-self: end; padding-top: 12px; }
.book-heading .eyebrow { color: #c5b480; }
.book-heading h2 { margin: 0 0 25px; font-size: clamp(52px, 5vw, 76px); line-height: 1.1; letter-spacing: -.03em; }
.book-image { grid-area: image; align-self: center; background: var(--paper); padding: 10px; }
.book-image picture, .book-image img { display: block; width: 100%; }
.book-image img { height: auto; object-fit: contain; }
.book-copy { grid-area: copy; max-width: 480px; align-self: start; color: #d0d5dc; font-size: 15px; line-height: 1.95; }
.book-copy .book-author { margin-bottom: 22px; color: #c5b480; font-size: 11px; letter-spacing: .13em; text-transform: uppercase; }
.book-copy .text-link { color: #fff; margin-top: 0; }
.book-copy .text-link:hover { color: #c5b480; }
.earlier-books { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: clamp(45px, 7vw, 120px); padding: 85px var(--page-gutter); }
.earlier-heading h2 { margin: 0 0 25px; font-size: clamp(36px, 3.5vw, 54px); line-height: 1.18; letter-spacing: -.025em; }
.earlier-heading p:last-child { max-width: 420px; color: var(--muted); font-size: 14px; line-height: 1.9; }
.book-entry { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 26px; align-items: start; border-top: 1px solid var(--line); padding: 28px 0; }
.book-entry:last-child { border-bottom: 1px solid var(--line); }
.book-entry .book-year { margin-bottom: 10px; color: var(--palette-label); font-size: 10px; letter-spacing: .15em; }
.book-entry h3 { margin-bottom: 15px; font-size: 32px; line-height: 1.2; }
.book-entry p { color: var(--muted); font-size: 14px; line-height: 1.85; }
.book-entry .text-link { margin-top: 0; }
.earlier-book-cover { margin: 0; }
.earlier-book-cover img { width: 100%; height: auto; object-fit: contain; }
.earlier-books-detailed { display: block; }
.earlier-books-detailed .earlier-heading { max-width: 680px; margin-bottom: 45px; }
.earlier-books-detailed .book-entry { grid-template-columns: minmax(170px, 230px) minmax(0, 1fr); gap: clamp(36px, 7vw, 110px); padding: 48px 0; scroll-margin-top: 20px; }
.earlier-books-detailed .book-entry-copy { max-width: 700px; }
.earlier-books-detailed .book-subtitle { color: var(--ink); font-family: Georgia, 'Times New Roman', serif; font-size: 22px; line-height: 1.5; margin-bottom: 26px; }
.book-entry-description blockquote { margin: 0; font-family: inherit; }
.book-entry-description p { font-size: 15px; line-height: 1.95; }
.book-entry-description .book-description-label { color: var(--palette-label); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.book-entry-description footer { color: var(--ink); font-size: 12px; margin-top: 25px; }
.personal-note { border-top: 1px solid var(--gold); background: var(--navy-soft); color: #fff; padding: 65px var(--page-gutter); text-align: center; }
.personal-note h2 { margin-bottom: 22px; font-size: clamp(35px, 3.5vw, 52px); line-height: 1.2; }
.personal-note p { max-width: 620px; margin: 0 auto 20px; color: #d0d5dc; font-size: 14px; line-height: 1.9; }
.personal-note .text-link { color: #fff; }
@media (max-width: 900px) {
  .profile { column-gap: 40px; padding-top: 40px; }
  .profile h1 { font-size: 56px; }
  .profile-monogram { font-size: 300px; }
  .book-feature { column-gap: 35px; }
}
@media (max-width: 700px) {
  .profile-breadcrumb { padding-top: 18px; font-size: 9px; }
  .profile { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'heading' 'portrait' 'story'; gap: 28px; padding: 30px var(--page-gutter) 55px; }
  .profile-heading { padding: 30px 0 5px; }
  .profile-monogram { top: -4px; left: -4px; font-size: 240px; }
  .profile h1 { font-size: clamp(46px, 10vw, 65px); margin-bottom: 22px; }
  .profile-role { font-size: 10px; }
  .profile-story { padding-top: 3px; font-size: 14px; }
  .profile-story .lead { font-size: 16px; }
  .book-feature { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'title' 'image' 'copy'; gap: 28px; padding: 55px var(--page-gutter); }
  .book-heading h2 { font-size: 53px; margin-bottom: 0; }
  .book-image { max-width: 360px; width: 100%; justify-self: center; padding: 18px; }
  .book-image img { aspect-ratio: 908 / 1280; }
  .book-copy { font-size: 14px; }
  .book-copy .book-author { font-size: 10px; }
  .earlier-books { grid-template-columns: minmax(0, 1fr); gap: 28px; padding: 55px var(--page-gutter); }
  .earlier-books-detailed .book-entry { grid-template-columns: minmax(0, 1fr); gap: 28px; padding: 36px 0; }
  .earlier-books-detailed .earlier-book-cover { max-width: 210px; width: 100%; justify-self: center; }
  .earlier-heading h2 { font-size: 37px; }
  .book-entry h3 { font-size: 29px; }
  .personal-note { padding: 55px var(--page-gutter); }
}
@media (max-width: 500px) {
  .book-entry { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .earlier-book-cover { max-width: 140px; width: 100%; justify-self: center; }
}
@media (max-width: 350px) {
  .profile h1 { font-size: 44px; }
  .book-heading h2 { font-size: 47px; }
  .book-entry h3 { font-size: 27px; }
}
