.product-grid{gap:32px var(--card-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.product-card{width:100%;min-width:0;color:var(--color-text);scroll-margin-top:calc(var(--header-height) + 72px)}.tile-visual{min-width:0;position:relative}.tile-media{background:var(--color-media-placeholder);position:relative}.tile-photo-link{aspect-ratio:3/4;display:block;position:relative;overflow:hidden}.tile-image{object-fit:cover;object-position:center 20%;width:100%;height:100%;transition:opacity .2s;position:absolute;inset:0}.tile-image-alt{opacity:0}.card-add{inset-inline:8px;z-index:2;min-height:var(--control-height);border-radius:var(--radius);background:var(--color-text);color:var(--color-on-dark);font:var(--weight-strong) var(--text-body)/var(--leading-ui) var(--font-body);transition:opacity .2s var(--motion-soft),transform .2s var(--motion-soft),background-color .16s ease-out;border:0;justify-content:center;align-items:center;padding:8px 10px;display:none;position:absolute;bottom:8px}.card-add:hover{background:var(--color-brand)}@media (width>=1024px) and (hover:hover) and (pointer:fine){.card-add{opacity:0;pointer-events:none;display:flex;transform:translateY(6px)}.product-card:hover .card-add,.product-card:focus-within .card-add{opacity:1;pointer-events:auto;transform:translateY(0)}}.tile-swatches{flex-wrap:wrap;align-items:center;gap:4px;min-height:52px;margin-top:8px;display:flex}.tile-swatch{border:1px solid var(--color-border);background:var(--color-surface);flex:0 0 44px;place-items:center;width:44px;height:52px;display:grid;position:relative}.tile-swatch img{object-fit:cover;width:36px;height:48px;display:block}.tile-swatch:hover,.tile-swatch:focus-visible{border-color:var(--color-brand)}.tile-colour-more{min-width:44px;min-height:52px;font:var(--weight-body) var(--text-body)/var(--leading-ui) var(--font-body);color:var(--color-muted);justify-content:center;align-items:center;display:inline-flex}@media (width<=719px){.tile-swatches{inset-inline:6px;z-index:3;overscroll-behavior-x:contain;flex-wrap:nowrap;margin:0;position:absolute;bottom:6px;overflow-x:auto}.tile-colour-more{background:var(--color-background);flex:none}}.tile-info{margin-top:8px;text-decoration:none;display:block}.tile-info h3{font:var(--weight-medium) var(--text-body)/var(--leading-ui) var(--font-body);letter-spacing:0;margin:0 0 4px}.tile-price{font:var(--weight-medium) var(--text-body)/var(--leading-ui) var(--font-body);margin:0}.catalog-progress{text-align:center;margin:32px auto 0}.catalog-progress p{color:var(--color-muted);font-size:var(--text-body);margin:0 0 12px}.catalog-progress .button{min-height:44px}.catalog-load-sentinel{width:100%;height:1px;display:block}.catalog-progress[data-load-state=loading]:before{content:"";background:var(--color-brand);width:32px;height:2px;margin:0 auto 12px;animation:.7s ease-in-out infinite alternate catalog-loading;display:block}@keyframes catalog-loading{0%{opacity:.3;transform:scaleX(.35)}to{opacity:1;transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.catalog-progress[data-load-state=loading]:before{animation:none}}@media (width>=720px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1024px){.product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (hover:hover) and (pointer:fine){.product-card:hover .tile-image-alt,.product-card:focus-within .tile-image-alt{opacity:1}}@media (prefers-reduced-motion:reduce){.tile-image,.card-add{transition:none}.card-add{transform:none!important}}
