.shop-posters{padding-top:28px;padding-bottom:45px}
.poster-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.storefront .poster-heading h2{font-size:30px;line-height:1.5;margin:0 0 8px}
.poster-heading p{font-size:13px;color:var(--muted);margin:0;line-height:1.8}
.poster-controls{display:flex;align-items:center;gap:10px;flex-shrink:0}
.poster-controls button{width:44px;height:44px;border:1px solid #c1ccb9;border-radius:50%;background:transparent;color:#183f36;font-size:22px;cursor:pointer}
.poster-controls button:disabled{opacity:.35;cursor:default}
.poster-controls output{font:13px 'DM Sans',sans-serif;color:#526248;min-width:44px;text-align:center}
.poster-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0;overscroll-behavior-x:contain;padding:2px 0 18px;scrollbar-width:thin;scrollbar-color:#728568 #e6eadf}
.poster-track figure{flex:0 0 calc((100% - 40px)/3);min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:normal}
.poster-track figure>a{display:block;position:relative;border:1px solid #d5ddce;background:#f5f5ef;border-radius:12px;overflow:hidden}
.poster-track img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain}
.poster-zoom{position:absolute;right:10px;bottom:10px;background:#f7f6edee;color:#183f36;border-radius:20px;padding:6px 11px;font-size:11px}
.poster-track figcaption{padding:12px 3px;font-size:13px;line-height:1.7;color:#183f36}
.poster-track figcaption span{font-family:'DM Sans',sans-serif;font-size:11px;color:#6a7b5e;margin-right:10px}
.poster-note{font-size:12px!important;color:#596650;line-height:1.9;margin-top:13px!important}
.poster-track:focus-visible,.poster-controls button:focus-visible,.poster-track a:focus-visible{outline:2px solid #456c50;outline-offset:3px}
#poster-dialog{width:min(92vw,760px);max-width:92vw;max-height:92vh;max-height:92dvh;padding:0;border:1px solid #d6dece;border-radius:12px;background:#f8f7f0;color:#183f36;overflow:auto}
#poster-dialog::backdrop{background:#0d241dc9}
.poster-dialog-head{position:sticky;top:0;z-index:1;background:#f8f7f0f5;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;gap:15px;border-bottom:1px solid #d7dfd0}
.poster-dialog-head span{font-size:13px}.poster-dialog-head button{border:1px solid #bccab7;border-radius:24px;padding:8px 13px;background:#fff;color:#183f36;cursor:pointer;min-height:44px}
#poster-dialog img{display:block;width:100%;height:auto;max-width:100%}
.poster-dialog-foot{padding:14px 18px}.poster-dialog-foot p{font-size:13px;line-height:1.7;margin:0 0 8px}.poster-dialog-foot a{font-size:13px;text-decoration:underline;text-underline-offset:3px;color:inherit}
@media(max-width:900px){.poster-track figure{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:700px){.shop-posters{padding-top:15px;padding-bottom:30px}.poster-heading{align-items:start;gap:12px;flex-wrap:wrap;margin-bottom:16px}.storefront .poster-heading h2{font-size:25px}.poster-heading p{font-size:12px}.poster-controls{margin-left:auto}.poster-controls button{width:44px;height:44px}.poster-track{gap:14px}.poster-track figure{flex-basis:84%}.poster-track figcaption{font-size:12px}.poster-note{font-size:11px!important}.poster-zoom{font-size:10px}#poster-dialog{width:94vw;max-width:94vw}.poster-dialog-head{padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.poster-track{scroll-behavior:auto}}

#poster-dialog .poster-dialog-head .close{position:static;inset:auto;width:auto;height:auto;font-size:14px;line-height:1.5}
