.product-grid-wrap{padding-top:var(--spacing-4xl);background:var(--bg)}.product-grid-wrap .page-width{max-width:var(--page-width);margin:0 auto;padding:0 var(--spacing-lg)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);column-gap:var(--spacing-2xl);row-gap:var(--spacing-7xl)}.product-card{display:flex;flex-direction:column}.product-card__link{position:relative;aspect-ratio:var(--aspect-portrait);overflow:hidden;background:rgb(from var(--text) r g b/.02);margin-bottom:var(--spacing-sm);display:block;text-decoration:none}.product-card__media{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.product-card:hover .product-card__media{transform:scale(1.03)}.product-card__badge{font-family:var(--font-detail);font-size:var(--text-2xs);letter-spacing:.22em;text-transform:uppercase;padding:var(--spacing-5xs) var(--spacing-2xs);color:var(--badge-color,var(--text-strong));background:var(--badge-background,var(--bg));--badge-color:var(--text-strong);--badge-background:var(--bg);top:var(--spacing-xs)}.product-card__badge,.product-card__swatches{position:absolute;left:var(--spacing-xs);z-index:var(--z-above-2)}.product-card__swatches{bottom:var(--spacing-xs);display:flex;gap:var(--spacing-4xs)}.product-card__swatch{width:var(--spacing-sm);height:var(--spacing-sm);border-radius:50%;border:1px solid rgba(0,0,0,.06);display:block;background-size:cover;background-position:50%}.product-card__swatch--unavailable{position:relative;overflow:hidden;opacity:.4;border-style:dashed;border-color:rgb(from var(--text) r g b/.5)}.product-card__swatch--unavailable:after{--diagonal-size:calc(var(--spacing-sm)*1.414);--crossed-line-size:0.1rem;content:"";position:absolute;bottom:calc(var(--crossed-line-size)*-.5);left:0;width:var(--diagonal-size);height:var(--crossed-line-size);background-color:var(--text);transform:rotate(-45deg);transform-origin:left}.product-card modal-opener,.product-card__quick{cursor:pointer}.product-card__quick{font-family:var(--font-detail);font-size:var(--text-2xs);letter-spacing:.22em;text-transform:uppercase;padding:var(--spacing-5xs) var(--spacing-2xs);color:var(--badge-color,var(--text-strong));background:var(--badge-background,var(--bg));--badge-color:var(--text-strong);--badge-background:var(--bg);position:absolute;bottom:var(--spacing-xs);right:var(--spacing-xs);border:0;opacity:0;transition:opacity .2s;z-index:var(--z-above-2)}.product-card:hover .product-card__quick{opacity:1}.product-card__category{font-family:var(--font-detail);font-size:var(--text-xs);font-weight:400;letter-spacing:.16em;text-transform:uppercase;letter-spacing:.18em;color:rgb(from var(--text) r g b/.75);margin-bottom:var(--spacing-5xs)}.product-card__title{font-family:var(--font-heading-family);font-size:var(--text-lg);font-weight:600;line-height:1.1;font-style:var(--font-heading-style);color:var(--text);line-height:1.3;margin:0 0 var(--spacing-5xs)}.product-card__title a{color:inherit;text-decoration:none}.product-card__title a:hover{color:rgb(from var(--text) r g b/.7)}.product-card__price{font-family:var(--font-body-family);font-size:var(--text-xs);color:rgb(from var(--text) r g b/.85);font-weight:400}.product-card__price .price__compare{color:rgb(from var(--text) r g b/.5);margin-right:var(--spacing-4xs);font-weight:300}.product-grid-pagination{text-align:center;margin-top:var(--spacing-8xl)}.product-grid-pagination__count{font-family:var(--font-detail);font-size:var(--text-xs);font-weight:400;letter-spacing:.16em;text-transform:uppercase;letter-spacing:.22em;color:rgb(from var(--text) r g b/.75);display:block;margin-bottom:var(--spacing-xs)}.product-grid-pagination__rule{height:2px;width:var(--spacing-9xl);background:var(--text);margin:0 auto}@media (max-width:1023px){.product-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:767px){.product-grid-wrap{padding:var(--spacing-xl) 0 var(--spacing-6xl)}.product-grid{grid-template-columns:1fr 1fr;column-gap:var(--spacing-sm);row-gap:var(--spacing-3xl)}.product-card__quick{display:none}.product-card__title{font-size:var(--text-base)}.product-card__category,.product-card__price{font-size:var(--text-xs)}.product-grid-pagination{margin-top:var(--spacing-4xl)}}