.books-carousel{border-top:1px solid var(--sjg-line)}.books-carousel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:clamp(32px,5vw,56px)}.books-carousel-heading h2{margin:0;font:400 clamp(32px,4.2vw,56px)/1.1 "Playfair Display",Georgia,serif;letter-spacing:-.035em;color:var(--sjg-ink)}.books-carousel-heading h2 em{color:var(--sjg-green)}.books-carousel-controls{display:flex;flex-shrink:0;gap:8px}.books-carousel-controls button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--sjg-line);background:transparent;color:var(--sjg-ink);cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.books-carousel-controls button:hover{background:var(--sjg-mist);border-color:var(--sjg-green)}.books-carousel-controls button:focus-visible,.books-carousel-track:focus-visible{outline:2px solid var(--sjg-green);outline-offset:4px}.books-carousel-track{--book-gap: 32px;position:relative;display:flex;gap:var(--book-gap);margin:0;padding:0 0 24px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;list-style:none;scrollbar-width:thin;scrollbar-color:var(--sjg-muted) transparent}.books-carousel-item{flex:0 0 calc((100% - 3 * var(--book-gap)) / 4);min-width:0;scroll-snap-align:start}.books-carousel-item figure{margin:0}.book-cover{display:flex;align-items:flex-end;justify-content:center;height:280px}.book-cover img{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center bottom;object-position:center bottom}.books-carousel-item figcaption{padding-top:22px;margin-top:22px;border-top:1px solid var(--sjg-line)}.books-carousel-item h3{margin:0;font:400 clamp(20px,1.8vw,24px)/1.25 "Playfair Display",Georgia,serif;color:var(--sjg-ink);text-wrap:balance}.books-carousel-item p{margin:10px 0 0;font:400 10px/1.6 Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--sjg-muted)}@media(max-width:1099px){.books-carousel-item{flex-basis:calc((100% - 2 * var(--book-gap)) / 3)}}@media(max-width:799px){.books-carousel-item{flex-basis:calc((100% - var(--book-gap)) / 2)}.book-cover{height:260px}}@media(max-width:479px){.books-carousel-heading{align-items:flex-start;flex-direction:column;gap:20px}.books-carousel-track{--book-gap: 24px}.books-carousel-item{flex-basis:78%}.book-cover{height:270px}}@media(prefers-reduced-motion:reduce){.books-carousel-controls button{transition:none}.books-carousel-track{scroll-behavior:auto}}
