/* Cover gallery experiment */
.books { min-height:100dvh; display:grid; grid-template-rows:auto 1fr; place-items:center; align-content:start; gap:42px; padding:64px 7vw 100px; overflow:hidden; background:radial-gradient(circle at 50% 45%,#2b2a24 0,#20211d 48%,#191a17 100%); }
.books-title { width:min(1060px,86vw); margin:0; color:#ebe5d8; font:600 clamp(48px,6vw,82px)/1 var(--display); text-align:center; }
.books .book-shelf { width:min(1060px,86vw); display:grid; grid-template-columns:repeat(2,minmax(0,380px)); justify-content:center; align-items:center; gap:clamp(70px,10vw,150px); perspective:1500px; }
.books .book-card { appearance:none; display:flex; justify-content:center; align-items:center; width:100%; margin:0; padding:0; border:0; background:transparent; cursor:pointer; transform-style:preserve-3d; transition:transform .5s cubic-bezier(.16,1,.3,1),filter .5s; }
.books .book-card:last-child { border-bottom:0; }
.books .book-card:first-child { aspect-ratio:5/7; transform:rotateY(5deg); }
.books .book-card:last-child { aspect-ratio:1510/2433; transform:rotateY(-5deg); }
.books .book-card:hover:first-child,.books .book-card:focus-visible:first-child { transform:translateY(-14px) scale(1.075) rotateY(-9deg) rotateX(2deg); }
.books .book-card:hover:last-child,.books .book-card:focus-visible:last-child { transform:translateY(-14px) scale(1.075) rotateY(9deg) rotateX(2deg); }
.books .book-card:focus-visible { outline:2px solid #b98b62; outline-offset:12px; }
.books .cover { display:block; width:100%; max-width:none; height:100%; aspect-ratio:inherit; object-fit:cover; box-shadow:0 35px 80px rgba(0,0,0,.55),-10px 8px 0 #11130f; transition:box-shadow .5s; }
.books .book-card:hover .cover { box-shadow:0 48px 100px rgba(0,0,0,.7),-14px 10px 0 #11130f; }
.book-dialog { width:min(1120px,calc(100% - 32px)); max-height:min(820px,calc(100dvh - 32px)); padding:0; overflow-y:auto; overflow-x:hidden; border:1px solid #594738; background:#1c1d19; color:#ebe5d8; }
.book-dialog[open] { display:grid; grid-template-columns:minmax(320px,420px) minmax(0,1fr); align-items:center; }
.book-dialog .dialog-cover { display:block; width:100%; height:auto; max-height:calc(100dvh - 64px); object-fit:contain; align-self:center; background:#11130f; }
.book-dialog .dialog-book-copy { align-self:center; padding:clamp(34px,6vw,70px); }
.book-dialog .dialog-book-copy h2 { margin:14px 0 24px; font-size:clamp(44px,6vw,76px); }
.book-dialog .dialog-book-copy p { max-width:52ch; color:#bbb5aa; font-size:17px; }
.book-dialog .dialog-book-copy h3 { margin:34px 0 12px; color:#d7b28f; font-size:13px; font-weight:500; letter-spacing:.12em; text-transform:uppercase; }
.book-dialog .dialog-close { z-index:2; color:#ebe5d8; background:rgba(15,17,15,.8); width:42px; height:42px; line-height:1; }
@media(max-width:767px){.books{min-height:auto;width:100%;padding:80px 0 70px;gap:28px;place-items:stretch}.books-title{width:auto;margin:0 20px;font-size:52px}.books .book-shelf{width:100%;display:flex;overflow-x:auto;justify-content:flex-start;gap:24px;padding:18px 12vw 42px;}.books .book-card{min-width:68vw;transform:none!important}.books .cover{width:100%;height:100%;max-width:100%;box-shadow:0 24px 55px rgba(0,0,0,.55),-7px 6px 0 #11130f}.book-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.book-dialog[open]{display:block}.book-dialog .dialog-cover{width:min(76vw,320px);height:auto;max-height:none;margin:58px auto 0;object-fit:contain}.book-dialog .dialog-book-copy{padding:30px 24px 42px}.book-dialog .dialog-book-copy h2{font-size:42px;overflow-wrap:anywhere}.book-dialog .dialog-close{position:fixed;right:18px;top:18px}.book-dialog .shop-links{gap:8px}body footer{min-height:80px;padding:18px 16px;gap:14px}body footer .socials{gap:8px}.social-link{width:36px;height:36px}.social-link img{width:18px;height:18px}}
@media(prefers-reduced-motion:reduce){.books .book-card{transition:none}.books .book-card:hover,.books .book-card:focus-visible{transform:none!important}}
