.page-books .books-main { margin:0; padding:64px 28px 80px; }
.page-books .books-main > .wp-block-post-content { max-width:1120px; }
.books-intro { padding-bottom:44px; max-width:850px; }
.books-eyebrow { color:#776024; font-size:11px; font-weight:700; letter-spacing:2px; }
.books-intro h1 { font:400 clamp(38px,5vw,66px)/1.1 Georgia,serif; letter-spacing:-1.5px; margin:24px 0; color:#20261c; }
.books-intro > p:not(.books-eyebrow) { font-size:18px; color:#5b6254; max-width:620px; line-height:1.7; }
.books-sections { display:flex; gap:24px; flex-wrap:wrap; margin-top:28px; font-size:14px; }
.page-books .books-main a { color:#705617; text-underline-offset:5px; }
.book-section { border-top:1px solid #dcdcd2; padding-top:30px; margin:0 0 64px; scroll-margin-top:24px; }
.book-section > h2 { font-size:26px; margin:0 0 28px; letter-spacing:-.5px; }
.book-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.book-card { display:flex; flex-direction:column; min-width:0; }
.book-cover { display:flex; justify-content:center; align-items:center; background:#eeece4; padding:32px 24px; border-radius:4px; }
.book-cover img { height:270px; width:auto; max-width:100%; object-fit:contain; filter:drop-shadow(6px 8px 6px #0002); }
.book-info { display:flex; flex-direction:column; flex:1; padding:24px 0 0; }
.book-info h3 { font:400 29px/1.2 Georgia,serif; margin:0 0 14px; color:#20261c; }
.book-info p { font-size:16px; line-height:1.75; color:#59604f; margin:0 0 24px; }
.book-link { margin-top:auto; font-size:14px; font-weight:650; }
.books-formats { background:#ede9dd; padding:34px; border-radius:4px; }
.books-formats h2 { font:400 32px/1.2 Georgia,serif; margin:0 0 12px; }
.books-formats p { color:#59604f; }
@media(max-width:800px) { .book-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:520px) { .page-books .books-main { padding:36px 20px 48px; } .book-grid { grid-template-columns:1fr; gap:40px; } .books-sections { gap:16px; } .books-intro h1 { letter-spacing:-1px; } .book-cover img { height:290px; } .books-formats { padding:24px; } }

.book-info .book-language { align-self:flex-start; margin:0 0 12px; padding:4px 9px; border:1px solid #b9ad84; border-radius:3px; color:#705617; font-size:12px; font-weight:650; }
