.books-opening { padding: 30px var(--page-gutter) 40px; }
.books-heading { position: relative; isolation: isolate; padding-top: 25px; }
.books-monogram { position: absolute; z-index: -1; top: -17px; left: -7px; font-family: Georgia, 'Times New Roman', serif; font-size: 250px; line-height: 1; color: var(--gold); opacity: .2; pointer-events: none; }
.books-heading h1 { margin: 0 0 24px; font-size: clamp(58px, 6vw, 86px); line-height: 1.1; letter-spacing: -.035em; }
.books-heading .books-author { margin: 0; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--palette-label); }
.books-catalogue { padding: 0 var(--page-gutter) 85px; }
.books-page .book-entry h2 { margin: 0 0 15px; font-size: 32px; line-height: 1.2; }
.books-page .earlier-book-cover img { width: 100%; height: auto; aspect-ratio: 500 / 711; object-fit: contain; }
.books-intro { margin-top: 30px; color: var(--muted); font-size: 15px; line-height: 1.95; }
.books-page .books-intro h3 { color: var(--ink); margin: 0 0 20px; font-size: 24px; line-height: 1.35; letter-spacing: -.02em; text-wrap: balance; }
.books-page .books-intro-lead { font-size: 15px; line-height: 1.95; }
.books-intro-quote { margin-top: 32px; padding-top: 25px; border-top: 1px solid var(--line); }
.books-intro-quote blockquote { margin: 0 0 13px; color: var(--ink); font-size: 24px; line-height: 1.5; }
.books-intro-quote blockquote p { color: inherit; font-size: inherit; line-height: inherit; }
.books-intro-quote figcaption { color: var(--palette-label); font-size: 10px; letter-spacing: .08em; }
.books-author-link { padding: 50px var(--page-gutter); background: var(--navy-soft); color: #fff; text-align: center; border-top: 1px solid var(--gold); }
.books-author-link p { max-width: 550px; margin: 0 auto 10px; font-size: 14px; color: #d0d5dc; }
.books-author-link .text-link { color: #fff; }
.books-page .book-retailer { width: 100%; max-width: 460px; margin: 28px 0 0; padding: 20px 0 0; border-top: 1px solid var(--line); }
.books-page .book-retailer-heading { margin: 0 0 8px; color: var(--palette-label); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.book-retailer-links { display: flex; flex-wrap: wrap; gap: 6px 24px; }
.book-retailer-links .text-link { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; }
.books-page .book-retailer-note { margin: 10px 0 0; color: var(--muted); font-size: 12px; line-height: 1.8; }
@media (max-width: 700px) {
  .books-opening { padding-top: 20px; padding-bottom: 30px; }
  .books-heading { padding-top: 24px; }
  .books-heading h1 { font-size: 58px; }
  .books-monogram { font-size: 220px; top: -13px; }
  .books-catalogue { padding-bottom: 55px; }
  .books-page .book-entry h2 { font-size: 29px; }
  .books-intro-quote blockquote { font-size: 22px; }
  .books-author-link { padding: 45px var(--page-gutter); }
}
@media (max-width: 350px) { .books-page .book-entry h2 { font-size: 27px; } }
