.product-grid{grid-template-columns:repeat(2,1fr);gap:8px 6px;display:grid}@media (min-width:990px){.product-grid{grid-template-columns:repeat(4,1fr);gap:16px 12px}}.product-card{height:100%;color:var(--color-text);flex-direction:column;text-decoration:none;display:flex}.product-card__media{aspect-ratio:1;background:var(--color-bg);border:1px solid var(--color-border);width:100%;position:relative;overflow:hidden}.product-card__media img{object-fit:cover;width:100%;height:100%;transition:opacity .2s;display:block}.product-card:hover .product-card__media img{opacity:.88}.product-card:hover .product-card__media{border-color:var(--color-primary)}.product-card__placeholder{background:var(--color-border);width:100%;height:100%}.product-card__badge{z-index:1;background:var(--color-accent);color:var(--color-primary);font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.02em;border-radius:var(--radius);padding:.3rem .55rem;font-size:.7rem;font-weight:700;position:absolute;top:.5rem;left:.5rem}.product-card__body{flex-direction:column;flex:1;gap:.3rem;padding:.6rem 0 0;display:flex}.product-card__name{color:var(--color-text);font-size:.95rem;line-height:1.3}.product-card__price-row{flex-wrap:wrap;align-items:baseline;gap:.4rem;display:flex}.product-card__price{font-family:var(--font-heading);color:var(--color-text);font-size:.85rem;font-weight:700}.product-card__compare-price{color:var(--color-text-muted);font-size:.78rem;text-decoration:line-through}.product-card__swatches{align-items:center;gap:.3rem;display:flex}.product-card__swatch{border:1px solid var(--color-border);border-radius:50%;width:10px;height:10px}.product-card__swatch-more{color:var(--color-text-muted);font-size:.7rem}.product-card__cta{text-align:center;border:1px solid var(--color-primary);border-radius:var(--radius);color:var(--color-primary);background:var(--color-bg);font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.02em;margin-top:auto;padding:.6rem 1rem;font-size:.8rem;font-weight:700;transition:background-color .15s,color .15s;display:block}.product-card:hover .product-card__cta,.product-card:focus-visible .product-card__cta{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-primary)}.catalog-page{max-width:var(--max-width);flex-direction:column;gap:1.5rem;margin:0 auto;padding:2rem 1rem 4rem;display:flex}.catalog-page__header{flex-direction:column;gap:.35rem;display:flex}.catalog-page__title{color:var(--color-text);font-family:var(--font-heading);margin:0;font-size:clamp(1.6rem,3vw,2.1rem);font-weight:700}.catalog-page__count{color:var(--color-text-muted);margin:0;font-size:.9rem}.catalog-page__search-results{color:var(--color-primary);margin:0;font-size:.9rem;font-weight:600}.catalog-filters{border:1px solid var(--color-border);border-radius:var(--radius);flex-wrap:wrap;align-items:end;gap:1rem;padding:1rem;display:flex}.catalog-filters__field{flex-direction:column;gap:.3rem;min-width:7.5rem;display:flex}.catalog-filters__field label{color:var(--color-text-muted);font-size:.8rem}.catalog-filters__field select,.catalog-filters__field input{border:1px solid var(--color-border);border-radius:var(--radius);font-size:.9rem;font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);padding:.5rem .75rem}.catalog-filters__field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23221f1b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right .85rem center;background-repeat:no-repeat;background-size:14px 14px;padding-right:2.4rem}.catalog-filters__actions{align-items:center;gap:1rem;margin-left:auto;display:flex}.catalog-filters__submit{border-radius:var(--radius);background:var(--color-primary);color:var(--color-bg);cursor:pointer;border:none;padding:.6rem 1.3rem;font-size:.9rem;font-weight:700}.catalog-filters__clear{color:var(--color-text-muted);font-size:.85rem;text-decoration:underline}.catalog-empty{text-align:center;color:var(--color-text-muted);padding:3rem 1rem;font-size:1rem}.catalog-pagination{justify-content:space-between;gap:1rem;display:flex}.catalog-pagination__link{border:1px solid var(--color-primary);border-radius:var(--radius);color:var(--color-primary);padding:.5rem 1rem;font-size:.85rem;font-weight:700;text-decoration:none}.product-card__cta--want{color:#fff;background:#5f5b57;border-color:#5f5b57;justify-content:center;align-items:center;gap:.4rem;display:inline-flex}.product-card__cta--want svg{width:16px;height:16px}.product-card__preorder{color:var(--color-preorder);align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;display:inline-flex}
