#book-title { font-size: clamp(2.7rem, 7vw, 5.25rem); line-height: 1.15; margin-block: .35em .1em; }
.book-stage { position: relative; perspective: 70rem; aspect-ratio: 760 / 1079; }
.book-leaf { position: absolute; inset: 0; transform-style: preserve-3d; transition: transform .75s cubic-bezier(.35, .12, .25, 1); }
.book-leaf img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; background: #191817; box-shadow: -10px 14px 32px #0b0706ba; backface-visibility: hidden; }
.book-back { transform: rotateY(-180deg); }
.book-stage.is-open .book-leaf { transform: rotateY(180deg); }
.book-toggle { margin-block-start: .8rem; width: 100%; min-height: 44px; border: 1px solid var(--line); background: var(--ink); color: var(--paper); font: inherit; cursor: pointer; }
.book-toggle:hover { color: var(--accent); }
.book-visual .back-cover-link { width: auto; margin: .65rem 0 0; text-align: center; text-decoration: underline; }
.book-teaser { max-width: 52rem; margin: 0 auto clamp(2.8rem, 7vw, 5.5rem); }
.book-teaser h2 { font-size: clamp(1.6rem, 3vw, 2.3rem); margin: 0 0 .75rem; }
.book-teaser video { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; background: #000; }
@media (prefers-reduced-motion: reduce) {
  .book-leaf { transition: none; }
}
