/* Scoped additions retain the companion's typography, colors, and breakpoints. */
.book-clubs { margin-top: 48px; padding-top: 44px; border-top: 1px solid var(--line); scroll-margin-top: 32px; }
.book-clubs h3 { font: 32px/1.2 var(--serif); letter-spacing: -.7px; margin: 0 0 18px; }
.book-clubs p, .book-clubs li { font-size: var(--body-size); line-height: 1.85; color: #5e6457; }
.book-clubs p { margin: 0 0 18px; }
.book-clubs .club-intro { max-width: 900px; }
.book-clubs .club-download { max-width: 100%; white-space: normal; margin: 8px 0 0; }
.book-clubs .club-details { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; margin-top: 44px; }
.book-clubs ul { padding-left: 24px; margin: 0 0 18px; }
.book-clubs li { padding-left: 4px; margin-bottom: 6px; }
.book-clubs .club-contact { color: var(--wine); text-decoration: underline; text-underline-offset: 4px; }
.book-clubs .club-invitation { padding: 26px; margin-top: 26px; background: #eeebe3; border: 1px solid #e4dfd3; border-radius: 3px; }
.book-clubs .club-invitation h3 { font-size: 25px; }
.book-clubs .club-invitation p { margin: 0; }
.book-clubs .club-signoff { margin: 24px 0 0; color: var(--wine); }
@media (max-width: 850px) { .book-clubs .club-details { grid-template-columns: minmax(0, 1fr); gap: 28px; } }
@media (max-width: 620px) { .book-clubs { margin-top: 32px; padding-top: 30px; scroll-margin-top: 20px; } .book-clubs h3 { font-size: 30px; } .book-clubs .club-details { margin-top: 32px; } .book-clubs .club-invitation { padding: 24px; } }
