.product-shelf{--paper:#e2dfd5;--paper-deep:#d6d3c8;--paper-pale:#f4f2ec;--ink:#1a1a1a;--ink-soft:#5b5750;--walnut:#3a2118;--walnut-deep:#1c0e0a;--rule:#1a1a1a3d;--accent:#c87046;--shelf-serif:var(--font-dm-serif-display), Georgia, serif;--shelf-text:var(--font-playfair-display), Georgia, serif;--shelf-sans:var(--font-inter), Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--ease-out:cubic-bezier(.2, .72, .24, 1);isolation:isolate;background:var(--paper);width:100%;height:100svh;min-height:560px;color:var(--ink);font-family:var(--shelf-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;transition:background-color .72s var(--ease-out), color .52s var(--ease-out);position:relative;overflow:hidden}.dark .product-shelf{--paper:#1c1c1c;--paper-deep:#151515;--paper-pale:#2b2a28;--ink:#e2dfd5;--ink-soft:#a9a59c;--rule:#e6e4dc3d;--accent:#e2dfd5}.product-shelf *,.product-shelf :before,.product-shelf :after{box-sizing:border-box}.product-shelf button{color:inherit;font:inherit}.product-shelf button:focus-visible,.product-shelf a:focus-visible{outline:1px solid var(--ink);outline-offset:4px}.product-shelf__scene{z-index:3;position:absolute;inset:0}.product-shelf__canvas{cursor:default;opacity:0;touch-action:pan-y;width:100%;height:100%;transition:opacity .9s var(--ease-out);display:block}.product-shelf.webgl-ready .product-shelf__canvas{opacity:1}.product-shelf__canvas.has-book-hover{cursor:pointer}.product-shelf__canvas.is-page-dragging{cursor:grabbing}.product-shelf.mode-detail .product-shelf__canvas{cursor:grab;touch-action:none}.product-shelf.mode-detail .product-shelf__canvas.has-closed-book-hover{cursor:pointer}.product-shelf.mode-detail .product-shelf__canvas:active{cursor:grabbing}.product-shelf .editorial-header{top:calc(30px + var(--shelf-header-pin,0px));z-index:8;color:var(--ink);pointer-events:none;transition:color .52s var(--ease-out), opacity .52s var(--ease-out), transform .68s var(--ease-out);justify-content:space-between;align-items:flex-start;gap:24px;display:flex;position:absolute;left:34px;right:34px}.product-shelf .editorial-identity,.product-shelf .editorial-index{gap:3px;display:grid}.product-shelf .editorial-index{text-align:right;justify-items:end}.product-shelf .editorial-identity strong{font-family:var(--shelf-serif);letter-spacing:-.01em;font-size:clamp(1.2rem,1.8vw,1.7rem);font-weight:400;line-height:1}.product-shelf .editorial-identity span,.product-shelf .editorial-index span{color:var(--ink-soft);letter-spacing:.15em;text-transform:uppercase;transition:color .52s var(--ease-out);font-size:.58rem;font-weight:500;line-height:1.5}.product-shelf.mode-detail .editorial-header{opacity:.58;transform:translateY(-6px)}.product-shelf .browse-ui{z-index:7;color:var(--ink);transition:color .52s var(--ease-out), opacity .5s var(--ease-out), transform .7s var(--ease-out);grid-template-columns:minmax(240px,1fr) auto minmax(240px,1fr);align-items:center;gap:26px;display:grid;position:absolute;bottom:26px;left:34px;right:34px}.product-shelf .selection{grid-template-columns:44px minmax(0,1fr);align-items:start;gap:13px;min-width:0;display:grid}.product-shelf .counter,.product-shelf .eyebrow,.product-shelf .microcopy,.product-shelf .meta-list dt,.product-shelf .fallback__kicker{font-family:var(--shelf-sans);letter-spacing:.15em;text-transform:uppercase;font-size:.66rem;font-weight:500;line-height:1.45}.product-shelf .counter{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap;transition:color .52s var(--ease-out);padding:7px 0 0;font-size:.58rem}.product-shelf .selection__copy{min-width:0}.product-shelf .selection__title{font-family:var(--shelf-serif);letter-spacing:-.01em;text-wrap:balance;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:clamp(2rem,3.4vw,3.75rem);font-weight:400;line-height:.95;display:-webkit-box;overflow:hidden}.product-shelf .selection__title.is-long{font-size:clamp(1.6rem,2.5vw,2.6rem)}.product-shelf .selection__note{max-width:420px;color:var(--ink-soft);letter-spacing:.01em;transition:color .52s var(--ease-out);margin:10px 0 0;font-size:.75rem;line-height:1.45;display:block}.product-shelf .browse-actions{justify-content:center;align-self:end;align-items:center;gap:4px;padding-bottom:4px;display:flex}.product-shelf .round-button,.product-shelf .text-button,.product-shelf .close-button{color:var(--ink);cursor:pointer;transition:color .42s var(--ease-out), border-color .42s var(--ease-out), background .18s ease;background:0 0;border:0}.product-shelf .round-button{border-radius:50%;place-items:center;width:40px;height:40px;padding:0;display:grid}.product-shelf .round-button svg,.product-shelf .close-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.25px;width:15px;height:15px}.product-shelf .text-button{border:1px solid color-mix(in srgb, var(--ink) 42%, transparent);min-height:40px;font-family:var(--shelf-sans);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:0 18px;font-size:.65rem}.product-shelf .round-button:hover,.product-shelf .close-button:hover{border-color:var(--ink)}.product-shelf .text-button:hover{border-color:var(--ink);background:var(--ink);color:var(--paper)}.product-shelf .index-nav{align-self:end;justify-items:end;gap:10px;padding-bottom:7px;display:grid}.product-shelf .markers{justify-content:flex-end;align-items:center;gap:5px;display:flex}.product-shelf .marker{cursor:pointer;background:0 0;border:0;width:27px;height:24px;padding:0;position:relative}.product-shelf .marker:before{background:color-mix(in srgb, var(--ink) 35%, transparent);content:"";width:17px;height:1px;transition:width .26s var(--ease-out), background .22s ease;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.product-shelf .marker:hover:before{background:var(--ink)}.product-shelf .marker[aria-current=true]:before{background:var(--ink);width:27px;height:2px}.product-shelf .microcopy{color:var(--ink-soft);letter-spacing:.14em;text-align:right;transition:color .52s var(--ease-out);margin:0;font-size:.53rem;display:block}.product-shelf.mode-detail .browse-ui{opacity:0;pointer-events:none;transform:translateY(26px)}.product-shelf .detail-panel{z-index:9;width:min(34vw,460px);max-height:74%;color:var(--ink);opacity:0;pointer-events:none;transition:color .52s var(--ease-out), opacity .62s var(--ease-out), transform .62s var(--ease-out);padding:0;position:absolute;top:50%;right:clamp(34px,5vw,78px);overflow:auto;transform:translateY(calc(18px - 50%))}.product-shelf.mode-detail .detail-panel{opacity:1;pointer-events:auto;transition-delay:0s,.3s,.3s;transform:translateY(-50%)}.product-shelf.mode-detail.is-opening .detail-panel{pointer-events:none}.product-shelf .close-button{border:1px solid color-mix(in srgb, var(--ink) 38%, transparent);border-radius:50%;place-items:center;width:42px;height:42px;padding:0;display:grid;position:absolute;top:7px;right:7px}.product-shelf .close-button:hover{background:var(--ink);color:var(--paper)}.product-shelf .eyebrow{color:var(--ink-soft);transition:color .52s var(--ease-out);margin:0 46px 12px 0}.product-shelf .detail-title{max-width:calc(100% - 28px);font-family:var(--shelf-serif);letter-spacing:-.01em;text-wrap:balance;margin:0;font-size:clamp(3rem,5.4vw,5.6rem);font-weight:400;line-height:.86}.product-shelf .detail-deck{max-width:38em;color:var(--ink);font-family:var(--shelf-text);transition:color .52s var(--ease-out);margin:24px 0 0;font-size:clamp(1.05rem,1.35vw,1.3rem);line-height:1.5}.product-shelf .meta-list{border-top:1px solid color-mix(in srgb, var(--ink) 26%, transparent);grid-template-columns:1fr 1fr;gap:14px 22px;margin:28px 0 0;padding:18px 0 0;display:grid}.product-shelf .meta-list div{min-width:0}.product-shelf .meta-list dt{color:var(--ink-soft);margin:0 0 6px}.product-shelf .meta-list dd{margin:0;font-size:.75rem;line-height:1.45}.product-shelf .meta-list,.product-shelf .meta-list dt,.product-shelf .meta-list dd{transition:color .52s var(--ease-out), border-color .52s var(--ease-out)}.product-shelf .shop-button{background:var(--ink);min-height:46px;color:var(--paper);letter-spacing:.14em;text-transform:uppercase;transition:background .42s var(--ease-out), color .42s var(--ease-out), opacity .18s ease;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding:0 20px;font-size:.66rem;font-weight:500;text-decoration:none;display:flex}.product-shelf .shop-button span{font-family:var(--shelf-serif);letter-spacing:-.01em;text-transform:none;font-size:1rem}.product-shelf .shop-button:hover{opacity:.86}.product-shelf .affiliate-note{color:var(--ink-soft);letter-spacing:.06em;transition:color .52s var(--ease-out);margin:10px 0 0;font-size:.6rem;line-height:1.5}.product-shelf .affiliate-note a{color:inherit;text-underline-offset:3px;text-decoration:underline}.product-shelf .affiliate-note a:hover{color:var(--ink)}.product-shelf .detail-controls{justify-content:space-between;align-items:end;gap:14px;margin-top:24px;display:flex}.product-shelf .detail-controls .microcopy{text-align:left}.product-shelf .detail-buttons{flex:none;align-items:center;gap:18px;margin-left:auto;display:flex}.product-shelf .reset-button{border:0;border-bottom:1px solid color-mix(in srgb, var(--ink) 52%, transparent);border-radius:0;flex:none;min-height:32px;padding:0}.product-shelf .reset-button:hover{color:var(--ink);background:0 0}.product-shelf .static-fallback{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.product-shelf.is-fallback .static-fallback{z-index:14;clip:auto;white-space:normal;background:var(--paper);width:auto;height:auto;color:var(--ink);grid-template-rows:auto 1fr;gap:28px;padding:48px;display:grid;inset:0;overflow:auto}.product-shelf .fallback__header{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:end;gap:28px;padding-bottom:20px;display:flex}.product-shelf .fallback__title{max-width:760px;font-family:var(--shelf-serif);letter-spacing:-.01em;margin:6px 0 0;font-size:clamp(2.5rem,7vw,6.2rem);line-height:.86}.product-shelf .fallback__kicker{margin:0}.product-shelf .fallback__status{max-width:360px;color:var(--ink-soft);text-align:right;margin:0;line-height:1.5}.product-shelf .fallback__grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));align-items:start;gap:24px 16px;margin:0;padding:0;list-style:none;display:grid}.product-shelf .fallback-product{gap:6px;display:grid}.product-shelf .fallback-product img{aspect-ratio:4/5;object-fit:contain;background:var(--paper-pale);width:100%}.product-shelf .fallback-product span{color:var(--ink-soft);letter-spacing:.13em;text-transform:uppercase;font-size:.58rem}.product-shelf .fallback-product strong{font-family:var(--shelf-serif);letter-spacing:-.01em;font-size:1.35rem;font-weight:400;line-height:1}.product-shelf .fallback-product em{color:var(--ink-soft);font-size:.8rem;font-style:normal;line-height:1.45}.product-shelf .fallback-product a{color:var(--ink);letter-spacing:.14em;text-transform:uppercase;justify-self:start;font-size:.66rem}.product-shelf.is-fallback .browse-ui,.product-shelf.is-fallback .detail-panel,.product-shelf.is-fallback .editorial-header{display:none}.product-shelf .loading{z-index:20;background:var(--paper);color:var(--ink);place-items:center;display:grid;position:absolute;inset:0}.product-shelf .loading__inner{justify-items:center;gap:16px;display:grid}.product-shelf .loading__mark{border:1px solid var(--ink);width:46px;height:58px;animation:product-shelf-bind 1.6s var(--ease-out) infinite alternate;border-radius:2px;position:relative}.product-shelf .loading__mark:before{background:var(--ink);content:"";opacity:.45;height:1px;position:absolute;top:8px;left:-1px;right:-1px}.product-shelf .loading p{letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.63rem}.product-shelf .sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}@keyframes product-shelf-bind{0%{transform:rotateY(-8deg)translateY(2px)}to{transform:rotateY(14deg)translateY(-2px)}}@media (max-width:880px){.product-shelf .editorial-header{top:calc(22px + var(--shelf-header-pin,0px));left:22px;right:22px}.product-shelf .browse-ui{grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;bottom:18px;left:20px;right:20px}.product-shelf .selection{grid-column:1/-1;justify-content:start}.product-shelf .selection__title{font-size:clamp(2rem,9vw,3.5rem)}.product-shelf .selection__note{max-width:min(72vw,430px)}.product-shelf .browse-actions{justify-content:flex-start}.product-shelf .index-nav{align-self:center}.product-shelf .detail-panel{width:auto;max-height:44%;inset:auto 22px 22px;transform:translateY(18px)}.product-shelf.mode-detail .detail-panel{transform:translateY(0)}.product-shelf .detail-title{font-size:clamp(2.6rem,11vw,4.5rem)}.product-shelf .detail-deck{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:1rem;display:-webkit-box;overflow:hidden}.product-shelf .meta-list{display:none}.product-shelf.is-fallback .static-fallback{padding:28px 22px}.product-shelf .fallback__header{display:grid}.product-shelf .fallback__status{text-align:left}}@media (max-width:560px){.product-shelf .editorial-index span:first-child:not(:last-child),.product-shelf .selection__note,.product-shelf .microcopy{display:none}.product-shelf .editorial-identity strong{font-size:1.1rem}.product-shelf .browse-ui{bottom:14px}.product-shelf .selection{grid-template-columns:34px 1fr}.product-shelf .counter{padding-top:4px}.product-shelf .selection__title{font-size:2rem}.product-shelf .marker{width:19px}.product-shelf .marker:before{width:12px}.product-shelf .marker[aria-current=true]:before{width:19px}}@media (prefers-reduced-motion:reduce){.product-shelf *,.product-shelf :before,.product-shelf :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.product-shelf .detail-title.is-long{letter-spacing:-.01em;font-size:clamp(2.2rem,3.6vw,3.6rem);line-height:.92}@media (max-width:639px){.product-shelf .browse-ui{bottom:calc(5.75rem + env(safe-area-inset-bottom))}.product-shelf .detail-panel{bottom:calc(5.75rem + env(safe-area-inset-bottom));max-height:48%}.product-shelf .detail-title,.product-shelf .detail-title.is-long{font-size:clamp(1.9rem,8.5vw,2.6rem)}}
