/* Anniversary book: text and authentic spreads retain their own proportions. */
body[data-page="book--metas---visones---acones"] .page-head h1 {
  font-size: clamp(2.35rem, 4.2vw, 3.8rem);
  max-width: 1040px;
}
.book-overview { padding-top: 12px; }
.book-overview-grid, .book-copy-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 48px;
  align-items: start;
}
.book-overview-grid > figure { margin-top: 5px; }
.book-copy-grid h2 { font-size: clamp(1.8rem, 2.6vw, 2.45rem); }
.book-copy-grid p:last-child { margin-bottom: 0; }
.book-spread { margin-top: 38px; }
.book-spread-image { display: block; }
.book-spread img {
  width: 100%;
  height: auto;
  border-radius: 3px;
  box-shadow: 0 10px 32px #0002;
}
.book-spread figcaption {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px 32px;
  padding-top: 14px;
}
.book-spread figcaption > span { max-width: 72ch; }
.book-spread figcaption > a { flex-shrink: 0; }
.book-excerpt { display: block; font-size: .9em; margin-top: 4px; }
.book-closing { max-width: 780px; margin: 0 auto; }
.book-closing > p { margin-bottom: 0; }
.book-viewer {
  width: min(1500px, 96vw);
  max-width: 96vw;
  max-height: 94dvh;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 10px;
  color: var(--ink);
  background: var(--paper);
}
.book-viewer::backdrop { background: #071d14d9; }
.book-viewer-bar { display: flex; align-items: center; gap: 12px; }
.book-viewer-bar h2 { margin: 0 auto 0 0; font-size: 1.5rem; }
.book-viewer-bar form { margin: 0; }
.book-viewer-hint { margin: 14px 0; font-size: .8em; }
.book-viewer-scroll { overflow: auto; max-height: calc(94dvh - 170px); }
.book-viewer-scroll img { display: block; width: 100%; height: auto; }
.book-viewer.is-zoomed .book-viewer-scroll img { width: 2600px; max-width: none; }
@media(max-width:520px) {
  .book-viewer { padding: 14px; }
  .book-viewer-bar { flex-wrap: wrap; gap: 8px; }
  .book-viewer-bar h2 { width: 100%; }
  .book-viewer-bar .button { padding: 8px 12px; font-size: .85em; }
  .book-viewer-scroll { max-height: calc(94dvh - 230px); }
}
@media(max-width:800px) {
  .book-overview-grid, .book-copy-grid { grid-template-columns: 1fr; gap: 30px; }
  .book-overview-grid > figure { width: min(100%, 560px); margin-inline: auto; }
  .book-spread figcaption { flex-direction: column; gap: 10px; }
  .book-spread { margin-top: 28px; }
}
