/* Approved full-size B card. Compact remains an inactive second option. */
.lodge-bookshelf { padding: 0 var(--lodge-gutter) 4rem; }
.bookshelf-card { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(0,1fr); align-items: center; gap: clamp(2rem,4vw,4rem); padding: clamp(2rem,4vw,4rem); background: var(--soft); border-radius: 1.5rem; color: var(--ink); max-width: 76rem; margin-inline: auto; }
.bookshelf-display { min-width: 0; margin: 0; }
.bookshelf-books { display: flex; align-items: center; justify-content: center; padding: 1rem .75rem 1.5rem; isolation: isolate; }
.bookshelf-cover { position: relative; display: block; flex: 0 1 34%; min-width: 0; aspect-ratio: 270 / 368; overflow: hidden; border-radius: .15rem; background: var(--paper); box-shadow: 0 .5rem 1rem rgb(41 40 32 / .18); }
/* Viewport crops keep the supplied cover photographs unchanged. */
.bookshelf-cover img { position: absolute; display: block; max-width: none; object-fit: fill; }
.bookshelf-cover--hunt { transform: rotate(-7deg) translateY(.4rem); z-index: 1; }
.bookshelf-cover--hunt img { width: 298.889%; height: 247.011%; left: -39.259%; top: -29.62%; }
.bookshelf-cover--shamanism { aspect-ratio: 410 / 625; transform: scale(1.08); margin-inline: -1rem; z-index: 3; }
.bookshelf-cover--shamanism img { width: 200.488%; height: 122.08%; left: -53.415%; top: -8.96%; }
.bookshelf-cover--shaman { aspect-ratio: 394 / 597; transform: rotate(5deg) translateY(.5rem); z-index: 2; }
.bookshelf-cover--shaman img { width: 225.635%; height: 142.211%; left: -34.772%; top: -9.715%; }
.bookshelf-display figcaption { margin-top: 1rem; text-align: center; color: var(--ink-soft); font: italic 1rem/1.5 var(--sc-font-display); overflow-wrap: anywhere; }
.bookshelf-copy { min-width: 0; }
.bookshelf-handwritten { width: fit-content; max-width: 100%; margin: 0 0 1.75rem; padding-bottom: .35rem; border-bottom: 2px solid var(--accent); color: var(--accent); font: italic clamp(1.6rem,2.5vw,2.5rem)/1.35 'Segoe Print','Bradley Hand',cursive; transform: rotate(-2deg); overflow-wrap: anywhere; }
.bookshelf-copy h2 { font-size: clamp(2.75rem,4.6vw,4.5rem); line-height: 1.06; letter-spacing: -.035em; overflow-wrap: anywhere; }
.bookshelf-message { max-width: 34ch; margin: 1.75rem 0 0; font-size: clamp(1rem,1.5vw,1.25rem); line-height: 1.65; color: var(--ink); overflow-wrap: anywhere; }
@media (max-width: 760px) {
  .lodge-bookshelf { padding-bottom: 3rem; }
  .bookshelf-card { grid-template-columns: minmax(0,1fr); gap: 2rem; padding: 1.75rem 1.25rem 2rem; border-radius: 1rem; }
  .bookshelf-display { width: 100%; max-width: 29rem; justify-self: center; }
  .bookshelf-books { padding: .75rem .5rem 1rem; }
  .bookshelf-cover--shamanism { margin-inline: -.75rem; }
  .bookshelf-display figcaption { margin-top: .75rem; }
  .bookshelf-handwritten { margin-bottom: 1.25rem; }
  .bookshelf-copy h2 { font-size: clamp(2.5rem,9vw,3.5rem); }
  .bookshelf-message { max-width: none; margin-top: 1.25rem; }
}
/* Not enabled in production: add this modifier only if option 2 is approved. */
.lodge-bookshelf--compact .bookshelf-card { max-width: 58rem; padding: 1.5rem; gap: 2rem; }
.lodge-bookshelf--compact .bookshelf-copy h2 { font-size: 2.5rem; }
.lodge-bookshelf--compact .bookshelf-display { max-width: 20rem; justify-self: center; }
