.diary-subscribe-title { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:.18em; }
.editorial-footer__bio { max-width:44ch; margin:12px 0 0; font:italic 16px/1.5 var(--serif); }
.lv-guide-preview { margin-top:12px !important; font-size:14px; line-height:1.6; }
.library-gallery { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr)); gap:32px 24px; padding:0; margin:28px 0; list-style:none; }
.library-book { display:block; min-width:0; overflow-wrap:anywhere; }
.library-book__cover { display:flex; align-items:center; justify-content:center; aspect-ratio:2/3; padding:12px; background:#ede7dc; }
.library-book__cover img { width:100%; height:100%; object-fit:contain; }
.library-book h3 { margin:14px 0 6px; font:400 22px/1.15 var(--serif); }
.library-book p { font-size:13px; line-height:1.5; }
.library-rail { overflow-x:auto; margin-inline:-28px; padding-inline:28px; scroll-snap-type:x mandatory; }
.links-v2 .library-gallery--rail { display:flex; gap:12px; width:max-content; }
.library-gallery--rail > li { flex:none; width:132px; scroll-snap-align:start; }
.library-rail:focus-visible { outline:2px solid #873f30; outline-offset:-3px; }
@container links (max-width:430px) { .library-rail { margin-inline:-18px; padding-inline:18px; } }
.links-v2 .library-book h3 { margin-top:12px; font-size:20px; }
.links-v2 .library-book p { margin-top:6px; }
.library-book:focus-visible { outline:2px solid #873f30; outline-offset:5px; }
.lv-product img { height:auto; object-fit:contain; }
@media(max-width:430px) { .library-gallery { gap:24px 14px; } }

.editorial-footer__top > .editorial-footer__identity { display:block; }
.editorial-footer__bio { text-transform:none; letter-spacing:normal; }

/* Keep the optional language control from squeezing the email field to zero. */
.newsletter-section--light .newsletter-form:has(select) { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; }
.newsletter-section--light .newsletter-form:has(select) > .newsletter-form__field,
.newsletter-section--light .newsletter-form:has(select) > [role=alert] { grid-column:1/-1; }
.newsletter-section--light .newsletter-form > .field { min-width:0; margin:0; }
.newsletter-section--light .newsletter-form select { width:100%; min-width:0; }
@media (max-width:760px) {
  .newsletter-section--light .newsletter-form:has(select) { grid-template-columns:minmax(0,1fr); }
}
