.book-library{background:#f8f7f1}.book-library .section-heading h2{max-width:790px}.book-card{display:grid;grid-template-columns:240px minmax(0,1fr);gap:55px;align-items:center;max-width:1000px;padding:35px;background:white;border:1px solid #e4e1d5}.book-cover{border:0;padding:0;background:transparent;box-shadow:10px 12px 24px #14212229;transition:transform .25s;transform:perspective(1000px) rotateY(-6deg)}.book-cover:hover{transform:translateY(-5px)}.book-cover img{width:100%;height:auto}.book-copy h3{font-family:var(--serif);font-size:40px;margin:0 0 12px;line-height:1.15}.book-copy .eyebrow{color:#90701c;font-size:10px;margin-bottom:15px}.book-subtitle{font-weight:600}.book-copy>p{max-width:530px}.book-copy .button{border:0}#book-reader{width:min(1120px,calc(100vw - 24px));height:94dvh;max-height:94dvh;max-width:none;padding:0;border:0;border-radius:12px;background:#e9e8e2;color:#1b2020;overflow:hidden}#book-reader[open]{display:flex;flex-direction:column}#book-reader::backdrop{background:#0c161ce8;backdrop-filter:blur(5px)}.reader-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#182524;color:white}.reader-header h2{font:500 24px var(--serif);margin:3px 0}.reader-header .eyebrow{color:#e5c568;font-size:9px;margin:0}.reader-header button{background:transparent;border:1px solid #8c998f;border-radius:5px;color:white;font-size:26px;padding:0 12px}.reader-tools{display:flex;flex-wrap:wrap;align-items:center;gap:15px;padding:12px 20px;background:white;font-size:12px}.reader-tools select{font:inherit;padding:7px;border:1px solid #d3d7ce;max-width:250px}.reader-tools a{color:#725819;text-decoration:underline}#reader-stage{flex:1;min-height:0;overflow:auto;padding:20px;overscroll-behavior:contain}#reader-page{max-width:none;height:auto;display:block;margin:0 auto;box-shadow:0 4px 22px #0002}.reader-navigation{position:static;display:flex;align-items:center;justify-content:space-between;padding:12px 20px;margin:0;background:white;font-size:13px}.reader-navigation button{background:#192725;color:white;border:0;border-radius:5px;padding:10px 15px;font:inherit}.reader-navigation button:disabled{opacity:.35;cursor:default}#reader-error{padding:20px}#reader-error[hidden]{display:none}@media(min-width:900px){#reader-stage{padding:25px 120px}}@media(max-width:640px){.book-card{grid-template-columns:1fr;padding:25px;gap:28px}.book-cover{max-width:210px;justify-self:center}.book-copy h3{font-size:32px}.reader-header{padding:12px 15px}.reader-tools{gap:8px;padding:10px}.reader-tools select{max-width:190px}#reader-stage{padding:10px}.reader-navigation{padding:10px}.reader-navigation button{padding:10px}#book-reader{width:100%;height:100dvh;max-height:100dvh;border-radius:0}}@media(prefers-reduced-motion:reduce){.book-cover{transition:none;transform:none}}
@media(max-width:640px){#book-reader .reader-header{position:static;display:flex;min-height:0;width:100%;gap:10px}#book-reader .reader-header h2{font-size:21px}#book-reader .reader-tools{flex-shrink:0}#book-reader .reader-tools label{min-width:0;max-width:100%}#book-reader .reader-tools select{font-size:16px;max-width:210px}#book-reader .reader-navigation{display:flex;flex-direction:row;flex-shrink:0;padding-bottom:calc(10px + env(safe-area-inset-bottom))}#book-reader .reader-navigation button{min-height:44px}.book-library .section-heading{display:block}}
/* Dimensional book cover; the existing button remains the reading entry point. */
.book-cover{position:relative;isolation:isolate;transform-style:preserve-3d;transform:perspective(1100px) rotateY(-23deg) rotateZ(-2deg);transform-origin:center;box-shadow:14px 20px 25px #14212230;border-radius:3px 1px 1px 3px;transition:transform .35s ease,box-shadow .35s ease;margin:12px 8px 16px 4px}
.book-cover img{position:relative;border-radius:3px 1px 1px 3px;box-shadow:inset 2px 0 3px #fff4}
.book-cover::before{content:'';position:absolute;z-index:2;inset:0 auto 0 0;width:15px;border-radius:3px 0 0 3px;background:linear-gradient(90deg,#0007,#ffffff20 30%,#0003 65%,transparent);border-right:1px solid #ffffff15;pointer-events:none}
.book-cover::after{content:'';position:absolute;left:100%;top:3px;bottom:3px;width:22px;transform:rotateY(90deg);transform-origin:left center;background:repeating-linear-gradient(90deg,#f5f0df 0 2px,#cfc9b9 2px 3px);border:1px solid #c6c0ae;border-right:3px solid #10222b;box-shadow:inset 5px 0 7px #0002;pointer-events:none}
.book-cover:hover,.book-cover:focus-visible{transform:perspective(1100px) rotateY(-12deg) rotateZ(-1deg) translateY(-5px);box-shadow:17px 25px 30px #14212235}
@media(max-width:640px){.book-cover{width:190px;max-width:80%;margin:12px 18px 16px 0}.book-card{overflow:visible}}
@media(prefers-reduced-motion:reduce){.book-cover,.book-cover:hover,.book-cover:focus-visible{transition:none;transform:perspective(1100px) rotateY(-23deg) rotateZ(-2deg)}}
.book-cover{isolation:auto}.book-cover::after{transform:rotateY(90deg);backface-visibility:visible}
/* Approved library shelf: warm plaster, architectural niches and oak. */
.book-library{position:relative;isolation:isolate;overflow:hidden;background-color:#eee7d7;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%238b7656' opacity='.11' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E"),linear-gradient(120deg,#fffdf2 0%,#e8ddc6 65%,#faf5e8);color:#19372c}
.book-library::before{content:'';position:absolute;z-index:-1;width:38%;height:90%;right:-7%;top:6%;border-radius:300px 300px 0 0;background:linear-gradient(110deg,#c6b49044,#fff9e955);box-shadow:inset 18px 5px 30px #89734815;border-left:1px solid #fff8;pointer-events:none}
.book-library .section-heading{align-items:flex-end;gap:35px;margin-bottom:55px}.book-library .section-heading h2{font-size:clamp(34px,4vw,58px)}.book-library .section-heading>p{color:#546151}.book-library .eyebrow{color:#536048}
#book-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;align-items:start}
.book-library .book-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0;min-width:0;max-width:none;padding:0 24px 25px;border:0;background:transparent;text-align:center}
.book-library .book-card::after{content:'';position:absolute;top:344px;left:0;right:0;height:23px;background:repeating-linear-gradient(2deg,#96704318 0 1px,transparent 1px 5px),linear-gradient(#d9be91,#ba9765 75%,#9e7b50);box-shadow:0 18px 26px #daa83e30,0 3px 5px #624b3325;border-top:3px solid #e6d2af;z-index:-1}
.book-library .book-cover{width:226px;max-width:85%;height:320px;flex-shrink:0;margin:16px 0 31px;transform:perspective(1100px) rotateY(-18deg);box-shadow:15px 12px 22px #47381f30}.book-library .book-cover img{width:100%;height:100%;object-fit:fill}.book-library .book-cover:hover{transform:perspective(1100px) rotateY(-8deg) translateY(-4px)}
.book-library .book-copy{width:100%;padding-top:10px}.book-library .book-copy h3{font-size:29px;margin-bottom:6px;color:#233329}.book-library .book-author{font-size:13px;letter-spacing:.04em;margin-bottom:14px}.book-library .book-copy .eyebrow{display:none}.book-library .book-subtitle,.book-library .book-copy>p:not(.book-author):not(.eyebrow){display:none}.book-library .book-copy .button{border-radius:7px;background:#193c2e;min-width:175px;justify-content:center;padding:12px 22px}
.book-placeholder .book-cover{display:flex;flex-direction:column;justify-content:center;align-items:center;background:repeating-linear-gradient(0deg,#ffffff18 0 1px,transparent 1px 3px),linear-gradient(100deg,#b5a589,#e0d5be 8%,#cec0a2);color:#79613a;border:1px solid #b8a583;font:500 29px var(--serif);line-height:1.2;pointer-events:none}.book-placeholder .book-cover span{width:65%;padding-bottom:38px}.book-placeholder .book-cover svg{width:76px;height:76px;stroke:#a78a4b;fill:none;stroke-width:1.1}.book-placeholder .book-copy{padding-top:20px}.book-coming{display:inline-block;font-size:13px;border:1px solid #b59a65;border-radius:30px;color:#846c42;padding:3px 22px}
@media(max-width:900px) and (min-width:641px){.book-library .book-card{padding-left:10px;padding-right:10px}.book-library .book-cover{height:270px}.book-library .book-card::after{top:294px}.book-library .book-copy h3{font-size:24px}}
@media(max-width:640px){#book-catalog{grid-template-columns:1fr;gap:35px}.book-library .section-heading{margin-bottom:30px}.book-library .book-card{padding:0 15px 25px}.book-library .book-cover{width:205px;height:290px;margin-bottom:31px}.book-library .book-card::after{top:314px}.book-library::before{width:90%;right:-35%}.book-library .book-placeholder{display:none}}
@media(prefers-reduced-motion:reduce){.book-library .book-cover:hover{transform:perspective(1100px) rotateY(-18deg)}}
#reader-fullscreen{border:1px solid #b8aa7a;background:#f7f4e8;color:#193c2e;border-radius:5px;padding:8px 12px;min-height:40px;font:inherit;font-weight:600;cursor:pointer;margin-left:auto}
#book-reader.reader-expanded{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-radius:0}
@media(max-width:640px){#reader-fullscreen{margin-left:0}}
