.book-page { --book-gold: #e8c783; }
.book-read-link { display: inline-flex; align-items: center; gap: .55em; padding-block: 10px; color: var(--accent); font-weight: 700; }
.book-read-link:hover { text-decoration: underline; text-underline-offset: .23em; }
.book-wrap { width: min(1070px, calc(100% - clamp(34px, 8vw, 120px))); margin-inline: auto; }
.book-intro { background: radial-gradient(ellipse at 79% 48%, #284440 0, #112730 29%, transparent 56%), linear-gradient(115deg, #08121f 15%, #10202b 90%); border-bottom: 1px solid var(--line); }
.book-intro-inner { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, .8fr); gap: clamp(24px, 7vw, 96px); align-items: center; padding-block: clamp(36px, 5vw, 70px); }
.book-intro .eyebrow { color: var(--book-gold); }
.book-intro .eyebrow::before { background: var(--book-gold); }
.book-text h1 { max-width: 11ch; margin: .22em 0 .14em; font: 800 clamp(56px, 6.7vw, 96px)/.98 var(--display); letter-spacing: -.025em; text-wrap: balance; }
.book-subtitle { margin: .12em 0 .65em; color: var(--book-gold); font: 600 clamp(23px, 2.55vw, 36px)/1.12 var(--display); }
.book-byline { margin: 0 0 1.45em; color: #c8d6df; }
.book-description { max-width: 54ch; margin: 0; font-size: clamp(16px, 1.3vw, 19px); line-height: 1.55; color: #d7dfe5; }
.book-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.book-art { justify-self: center; width: min(100%, 287px); }
.book-cover { display: block; width: 100%; height: auto; border-radius: 2px 5px 5px 2px; box-shadow: 0 18px 44px #0009, 0 0 0 1px #ffeac450; }
.book-reading { display: grid; grid-template-columns: minmax(0,.73fr) minmax(0,1.6fr); align-items: start; gap: clamp(28px, 6vw, 85px); padding-block: clamp(40px, 6vw, 86px); scroll-margin-top: 16px; }
.book-reading h2 { margin: 5px 0 0; font: 700 clamp(34px, 4vw, 56px)/1.05 var(--display); }
.book-excerpt blockquote { margin: 0; font: 400 clamp(18px, 1.55vw, 22px)/1.62 Georgia, serif; color: #e4e9e8; }
.book-excerpt p { margin: 0 0 .9em; }
@media (max-width: 680px) {
  .book-intro-inner { grid-template-columns: minmax(0, 1fr) minmax(0, .58fr); gap: 14px 16px; }
  .book-text { display: contents; }
  .book-text > .eyebrow, .book-text > h1, .book-subtitle, .book-byline { grid-column: 1; margin: 0; }
  .book-text h1 { font-size: clamp(37px, 7vw, 56px); }
  .book-subtitle { font-size: 22px; }
  .book-byline { font-size: 14px; }
  .book-art { grid-column: 2; grid-row: 1 / 5; width: min(100%, 155px); }
  .book-description, .book-actions { grid-column: 1 / -1; }
  .book-description { margin-top: 8px; }
  .book-actions { margin-top: 3px; }
  .book-reading { grid-template-columns: 1fr; gap: 20px; }
}
