.albany-commerce ul.products { list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);clear:both; }
.albany-commerce .albany-product-card { min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column;background:var(--color-white); }
.product-card-title { color:inherit;text-decoration:none; }
.product-card-title:hover { text-decoration:underline; }
.product-card-image { position:relative;aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--color-soft); }
.product-card-image img { width:100%;height:100%;object-fit:contain;padding:var(--space-3); }
.product-card-image .onsale { position:absolute;top:var(--space-3);left:var(--space-3);padding:var(--space-1) var(--space-2);border-radius:var(--radius-xs);background:var(--color-red-tint);color:var(--color-red-dark);font-size:var(--fs-small); }
.product-card-copy { flex:1;padding:var(--space-4) var(--space-3) var(--space-2); }
.product-card-copy :is(.product-brand,.product-sku) { font-size:var(--fs-micro);margin:0 0 var(--space-2);color:var(--color-muted);overflow-wrap:anywhere; }
.product-card-copy h2 { font:var(--weight-bold) var(--fs-ui)/var(--line-ui) var(--font-body);margin:0 0 var(--space-2);overflow-wrap:anywhere; }
.wholesale-price { font-family:var(--font-body);color:var(--color-red);font-size:var(--fs-price-card);font-weight:var(--weight-display);line-height:1.25; }
.wholesale-price .aps-wholesale-label { display:block;font:var(--weight-bold) var(--fs-micro)/1.5 var(--font-body);color:var(--color-muted);text-transform:uppercase;letter-spacing:.08em; }
.wholesale-price .aps-pricing-block { display:block;font:var(--weight-normal) var(--fs-ui)/var(--line-ui) var(--font-body);color:var(--color-muted); }
.wholesale-price .aps-pricing-row { display:block; }
.product-card-actions { padding:var(--space-2) var(--space-3) var(--space-4); }
.product-card-actions .stock { color:var(--color-success);font-size:var(--fs-small);margin:0 0 var(--space-2); }
.product-card-actions .card-cart { display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center; }
.product-card-actions .card-cart .quantity { flex:1 1 110px;min-width:min(110px,100%); }
.product-card-actions .card-cart input.qty { width:100%;min-width:44px;padding:var(--space-2); }
.product-card-actions .card-cart button { flex:1;padding:var(--space-2);font-size:.75rem; }
/* Size Add to its label; let quantity consume available space or wrap naturally. */
.product-card-actions .card-cart > button.button { flex:0 0 auto;width:auto;padding:var(--button-padding-block) var(--button-card-padding-inline); }
.product-card-actions .card-cart .quantity-enhanced input.qty { flex:1 1 0;width:0;min-width:30px; }
.product-card-actions .card-cart .quantity-step { flex:0 0 auto;width:auto; }
.product-card-actions > .button { width:100%;font-size:var(--fs-small); }
.albany-commerce .star-rating { font-size:var(--fs-small); }
@media(max-width:1023px) { .albany-commerce ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:767px) { .albany-commerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3); }.product-card-actions .card-cart { flex-direction:row;align-items:center; }.wholesale-price { font-size:var(--fs-price-mobile); }.product-card-copy h2 { font-size:var(--fs-ui); }.product-card-copy,.product-card-actions { padding-inline:var(--space-2); } }
.product-card-copy h2 { display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden; }
/* Guest CTAs need enough card space for the full 14px labels on one line. */
.albany-commerce ul.products:has(.product-card-guest-actions) { grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr)); }
.product-card-guest-actions { display:grid;gap:var(--space-2); }
.albany-commerce .woocommerce .product-card-guest-actions > .button { width:100%;min-width:0;min-height:var(--button-min-height);padding:var(--button-padding-block) var(--button-padding-inline);border:1px solid var(--color-red);font-family:var(--font-body);font-size:var(--fs-small);white-space:nowrap; }
.albany-commerce .woocommerce .product-card-guest-actions > .button-secondary { background:var(--color-white);color:var(--color-ink);border-color:var(--color-border-strong); }
.albany-commerce .woocommerce .product-card-guest-actions > .button-secondary:hover { background:var(--color-soft);color:var(--color-ink);border-color:var(--color-muted); }
