/* Instruments of a shop (shop pages and contact page, filled by shop-stock.js): the same cards as the catalogue,
   photo framed in black with rounded corners, brand, name, category · shop and price. */
.ed-shop-stock-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:34px 22px}
/* Shop page: four cards a row, like the catalogue */
.shop-stock .ed-shop-stock-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1100px){.shop-stock .ed-shop-stock-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ed-shop-stock-grid .stock-card{display:flex;flex-direction:column;min-width:0;color:#20231f;text-decoration:none}
.stock-image{display:block;aspect-ratio:5/4;overflow:hidden;border:2px solid #20231f;border-radius:14px;background:#f5f3ee}
.stock-image img{display:block;width:100%;height:100%;object-fit:contain;background:#f5f3ee;transition:transform .5s}
.stock-card:hover .stock-image img{transform:scale(1.025)}
.stock-brand{margin-top:14px;color:#70766d;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.stock-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.3em;margin:6px 0 12px;font-size:19px;font-weight:700;line-height:1.15;letter-spacing:-.02em}
.stock-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:auto;color:#70766d;font-size:13px}
.stock-meta>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.stock-price{color:#20231f;font-size:16px;font-weight:700;white-space:nowrap}
@media(max-width:700px){.ed-shop-stock-grid,.shop-stock .ed-shop-stock-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.stock-name{font-size:16px}.stock-meta{flex-direction:column;align-items:flex-start;gap:4px}}
/* Shop page: the same width as the home page lists (1360 px at most, centred) */
.shop-stock{padding-left:max(5vw,calc((100% - 1360px) / 2));padding-right:max(5vw,calc((100% - 1360px) / 2))}
