/* product page: minimal grid, image tiles only */
.shop{max-width:1040px;margin:0 auto;padding:clamp(110px,16vh,150px) var(--px) clamp(64px,12vh,128px)}
.shop-title{font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;margin:0 0 16px;text-wrap:balance}
.items{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.item{display:block;width:100%;padding:0;border:0;background:none;text-align:left;font:inherit;color:inherit;cursor:pointer}
.item-img{position:relative;display:block;aspect-ratio:4/5;background:#e2e2e2;overflow:hidden}
.item-img img{position:absolute;inset:12% 8%;width:84%;height:76%;object-fit:contain;mix-blend-mode:multiply}
.item-tag{position:absolute;top:12px;left:12px;writing-mode:vertical-rl;font-size:12px;color:#fff;z-index:1}
.item-name{display:block;margin-top:14px;font-size:15px;font-weight:400;text-wrap:pretty}
.item-sub{display:block;margin-top:2px;font-size:13px;opacity:.5}
.item:hover .item-name{text-decoration:underline;text-underline-offset:4px}
.item:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
@media(max-width:600px){.items{grid-template-columns:1fr;gap:32px}}
/* colour version revealed on hover / keyboard focus */
.item-img .alt{opacity:0;transition:opacity .2s ease-out}
.item:hover .alt,.item:focus-visible .alt{opacity:1}
@media(prefers-reduced-motion:reduce){.item-img .alt{transition:none}}
.item-img.photo img{inset:0;width:100%;height:100%;object-fit:cover;mix-blend-mode:normal}
