/* Keep the daily recommendation compact at every desktop zoom level. */
.hero-grid{align-items:center}.hero-grid>*{min-width:0}.hero-copy{min-width:0}.daily-card{width:100%;max-width:620px;min-height:370px;justify-self:end;grid-template-columns:164px minmax(0,1fr);gap:24px;padding:54px 30px 28px}.daily-cover{height:235px}.daily-info h2{font-size:24px}.daily-summary{-webkit-line-clamp:2}.daily-actions{margin-top:16px}
@media (min-width:761px) and (max-width:1050px){.hero-grid{grid-template-columns:minmax(280px,.86fr) minmax(390px,1.14fr);gap:28px;padding:52px 0}.hero-copy{padding:18px 0}.hero h1{font-size:clamp(38px,5vw,48px)}.daily-card{max-width:none;min-height:350px;grid-template-columns:132px minmax(0,1fr);gap:19px;padding:52px 22px 24px}.daily-cover{height:210px}.daily-info h2{font-size:20px}.daily-stats{gap:13px}.daily-actions{gap:10px}.daily-actions>.button{padding:0 11px}}
@media (max-width:760px){.daily-card{max-width:none;justify-self:stretch;min-height:0}.hero-copy{padding-top:18px}}

/* Accessible, server-rendered featured-book carousel. */
.featured-carousel{width:100%;max-width:620px;justify-self:end;min-width:0}.featured-track{display:grid}.featured-slide{grid-area:1/1;visibility:hidden;opacity:0;pointer-events:none;transform:translateX(18px);transition:opacity .38s ease,transform .38s ease,visibility 0s linear .38s}.featured-slide.is-active{visibility:visible;opacity:1;pointer-events:auto;transform:none;transition-delay:0s}.featured-controls{display:flex;align-items:center;justify-content:space-between;padding:14px 10px 0}.featured-dots{display:flex;align-items:center;gap:8px}.featured-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#d8c7b8;cursor:pointer;transition:.2s}.featured-dots button.is-active{width:25px;border-radius:8px;background:var(--orange)}.featured-arrows{display:flex;gap:8px}.featured-arrows button{width:34px;height:30px;border:1px solid #e6d6c7;border-radius:8px;background:#fffdf9;color:#6e6258;font-size:16px;cursor:pointer}.featured-arrows button:hover,.featured-arrows button:focus-visible{border-color:var(--orange);color:var(--orange)}
@media (min-width:761px) and (max-width:1050px){.featured-carousel{max-width:none}}
@media (max-width:760px){.featured-carousel{max-width:none;justify-self:stretch}.featured-controls{padding-inline:4px}.featured-slide{transform:translateX(12px)}}
@media (prefers-reduced-motion:reduce){.featured-slide,.featured-dots button{transition:none}}
