/* Home page: six book cards (R133; R140 adds Volume VI in a "New" highlight). Self-contained, no external fonts (CSP). */
body.home-books-page{background:#f1ebde}
.home-books{background:linear-gradient(180deg,#f6f1e6 0,#efe8d8 100%)}
.home-books-wrap{max-width:1080px;margin:0 auto;padding:clamp(1.5rem,4vw,2.75rem) clamp(1rem,3vw,2rem) 3.5rem}
.home-books h1{max-width:none;margin:0 0 clamp(1.25rem,3vw,2rem);font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(1.6rem,3.4vw,2.2rem);letter-spacing:.01em;color:#10233f}

.book-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:36px;margin:0 auto}
.book-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr);row-gap:28px;align-items:center;box-sizing:border-box;padding:32px 24px 28px;background:#fffdf7;border:1px solid #d9cdb0;border-top:3px solid #c17f3e;border-radius:3px;box-shadow:0 1px 2px rgba(16,35,63,.08),0 10px 24px rgba(16,35,63,.10),0 28px 56px rgba(16,35,63,.12);font-family:Georgia,"Times New Roman",serif;transition:transform .25s ease,box-shadow .25s ease}
.book-card:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(16,35,63,.10),0 16px 32px rgba(16,35,63,.13),0 36px 70px rgba(16,35,63,.16)}
.book-plate-link{display:block;justify-self:center;margin:0;text-decoration:none;color:inherit}
.book-plate{position:relative;width:180px;height:270px;background:#10233f;box-shadow:0 2px 4px rgba(16,35,63,.25),0 14px 28px rgba(16,35,63,.30),0 30px 50px rgba(16,35,63,.22);font-family:Georgia,"Times New Roman",serif}
.plate-spine{position:absolute;left:0;top:0;bottom:0;width:9px;background:#0b1a30;border-right:1px solid rgba(193,127,62,.45)}
.plate-frame{position:absolute;left:19px;right:11px;top:11px;bottom:11px;border:1px solid #c17f3e}
.plate-frame-inner{position:absolute;left:24px;right:16px;top:16px;bottom:16px;border:1px solid rgba(193,127,62,.4)}
.plate-body{position:absolute;left:19px;right:11px;top:11px;bottom:11px;box-sizing:border-box;padding:26px 14px 22px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;text-align:center}
.plate-top{font-size:8.5px;letter-spacing:.24em;text-transform:uppercase;color:#c17f3e}
.plate-mid{display:block}
.plate-numeral{display:block;font-size:80px;line-height:1;font-weight:400;color:#c17f3e}
.plate-rule{display:flex;align-items:center;justify-content:center;gap:7px;margin:14px 0}
.plate-rule i{display:block;width:22px;height:1px;background:#c17f3e}
.plate-rule svg{fill:#c17f3e;flex:none}
.plate-title{display:block;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;line-height:1.7;color:#faf7f0}
.plate-author{font-size:8.5px;letter-spacing:.22em;text-transform:uppercase;color:#d9cbb0}

.book-body{display:flex;flex-direction:column;min-width:0}
.book-reader{margin:0;font-size:12.5px;line-height:1.5;letter-spacing:.16em;text-transform:uppercase;color:#9c2b2b}
.book-gold-rule{display:block;width:44px;height:2px;background:#c17f3e;margin:16px 0 20px}
.book-excerpt{margin:0;flex:1 1 auto;font-size:19px;line-height:1.7;color:#1b2432;min-height:calc(var(--excerpt-lines,10)*1.7em);transition:opacity .2s ease}
.book-source{margin:20px 0 0;font-style:italic;font-size:15px;line-height:1.45;color:#5f5240;min-height:1.45em;transition:opacity .2s ease}
.book-card.is-swapping .book-excerpt,.book-card.is-swapping .book-source{opacity:0}
.book-link{display:inline-block;align-self:flex-start;margin-top:14px;padding:12px 0;font-size:17px;color:#10233f;text-decoration:underline;text-decoration-color:#c17f3e;text-decoration-thickness:2px;text-underline-offset:6px}
.nw{white-space:nowrap}
.book-link:hover,.book-link:focus-visible{color:#9c2b2b}
@media (prefers-reduced-motion:reduce){.book-card,.book-excerpt,.book-source{transition:none}.book-card:hover{transform:none}}
@media (min-width:760px){.book-card{grid-template-columns:180px minmax(0,1fr);column-gap:48px;padding:40px 48px}}
/* Reserved excerpt height (lines) per width so swapping text never moves the page. Sized for the longest allowed
   excerpt (80 words) at 19px with headroom for Georgia, which runs wider than the fallback serif. */
@media (max-width:359px){.book-card{--excerpt-lines:22}}
@media (min-width:360px) and (max-width:419px){.book-card{--excerpt-lines:19}}
@media (min-width:420px) and (max-width:479px){.book-card{--excerpt-lines:15}}
@media (min-width:480px) and (max-width:759px){.book-card{--excerpt-lines:12}}
@media (min-width:760px) and (max-width:859px){.book-card{--excerpt-lines:13}}
@media (min-width:860px) and (max-width:959px){.book-card{--excerpt-lines:10}}
@media (min-width:960px) and (max-width:1059px){.book-card{--excerpt-lines:9}}
@media (min-width:1060px){.book-card{--excerpt-lines:8}}

/* R140: the newest volume sits first inside a highlighted "New" box. */
.book-card.is-new{background:#fffaf0;border:2px solid #c17f3e;border-top-width:6px;outline:1px solid rgba(193,127,62,.45);outline-offset:6px;margin:8px 7px 0}
.book-new-flag{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:#10233f}
.book-new-badge{display:inline-block;padding:5px 12px 4px;background:#9c2b2b;color:#fffdf7;font-size:12px;font-weight:700;letter-spacing:.2em;border-radius:2px}
@media (max-width:420px){.book-card.is-new{outline-offset:4px;margin:6px 5px 0}}
