/** NEEMROZ photography-first product-card system. Cards are content-sized — no forced aspect-ratio box, no row-stretch, no auto-margin push. */
.ssq-product-card{position:relative;display:flex;min-width:0;flex-direction:column;padding:clamp(9px,1vw,15px);background:var(--ssq-ivory);border:1px solid transparent;border-radius:var(--ssq-radius-card);transition:transform var(--ssq-transition-normal),border-color var(--ssq-transition-fast),box-shadow var(--ssq-transition-normal)}
.ssq-product-card:hover{border-color:var(--ssq-border);box-shadow:var(--ssq-shadow-md);transform:translateY(-3px)}
.ssq-product-card.is-loading{opacity:.62;pointer-events:none}

/* Image: natural aspect ratio, width-driven — the card's height follows the actual photo, never a manufactured box. */
.ssq-card-image-wrap{position:relative;display:block;width:100%;margin:0 0 10px;overflow:hidden;background:var(--ssq-gradient-cream);border-radius:var(--ssq-radius-media)}
.ssq-card-img,.ssq-card-image-wrap img{display:block;width:100%;height:auto;transition:transform var(--ssq-transition-slow),opacity var(--ssq-transition-normal)}
.ssq-product-card:hover .ssq-card-img,.ssq-product-card:hover .ssq-card-image-wrap img{transform:scale(1.025)}
/* Only the no-photo placeholder needs a manufactured box — it has no intrinsic size of its own. */
.ssq-card-image-fallback{display:grid;aspect-ratio:4/5;width:100%;place-items:center;color:var(--ssq-text-muted);background:var(--ssq-gradient-cream);font-family:var(--ssq-font-heading);font-size:clamp(2rem,8vw,4rem);font-weight:600}

.ssq-card-topbar{position:absolute;inset:8px 8px auto;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;pointer-events:none}
.ssq-card-badges{display:flex;flex-wrap:wrap;gap:4px}
.ssq-card-badge{display:inline-flex;min-height:22px;align-items:center;padding:3px 7px;color:var(--ssq-espresso);background:rgba(255,252,247,.94);border:1px solid rgba(216,200,184,.8);border-radius:var(--ssq-radius-badge);font-size:11px;font-weight:800;letter-spacing:.06em;line-height:1;text-transform:uppercase;box-shadow:var(--ssq-shadow-sm)}
.ssq-badge-sale{color:var(--ssq-ivory);background:var(--ssq-terracotta);border-color:var(--ssq-terracotta)}
.ssq-badge-soldout{color:var(--ssq-ivory);background:var(--ssq-espresso);border-color:var(--ssq-espresso)}
.ssq-card-wishlist-btn{pointer-events:auto;display:grid;width:40px;height:40px;padding:0;place-items:center;color:var(--ssq-espresso);background:rgba(255,252,247,.92);border:1px solid rgba(216,200,184,.75);border-radius:50%;box-shadow:var(--ssq-shadow-sm);cursor:pointer;transition:color var(--ssq-transition-fast),background var(--ssq-transition-fast),border-color var(--ssq-transition-fast),transform var(--ssq-transition-fast)}
.ssq-card-wishlist-btn:hover{color:var(--ssq-terracotta);background:var(--ssq-blush);border-color:var(--ssq-gold-soft);transform:translateY(-2px)}
.ssq-card-wishlist-btn.is-active{color:var(--ssq-danger);background:var(--ssq-blush);border-color:rgba(166,62,70,.25)}
.ssq-card-wishlist-btn svg{width:18px;height:18px;stroke-width:1.7}

.ssq-card-body{display:flex;min-width:0;flex-direction:column}
.ssq-card-cat{margin:0 0 4px;color:var(--ssq-text-muted);font-size:11.5px;font-weight:700;letter-spacing:.08em;line-height:1.3;text-transform:uppercase}
.ssq-card-cat a{color:inherit}.ssq-card-cat a:hover{color:var(--ssq-terracotta)}
.ssq-card-title{display:-webkit-box;margin:0 0 6px;overflow:hidden;color:var(--ssq-text);font-size:clamp(.92rem,.95vw,1.02rem);font-weight:650;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.ssq-card-title a{color:inherit}.ssq-card-title a:hover{color:var(--ssq-terracotta-dark)}
.ssq-card-rating{display:flex;align-items:center;gap:6px;margin:0 0 6px;color:var(--ssq-gold);font-size:12px;line-height:1}
.ssq-rating-count{color:var(--ssq-text-muted);font-size:11px}

.ssq-card-pricing{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 8px;margin:0 0 10px}
.ssq-card-price-html{color:var(--ssq-espresso);font-size:clamp(1rem,1vw,1.15rem);font-weight:800;letter-spacing:-.01em;line-height:1.2}
.ssq-card-price-html del{margin-right:3px;color:var(--ssq-text-muted);font-size:.78em;font-weight:500}.ssq-card-price-html ins{color:var(--ssq-terracotta-dark);text-decoration:none}
.ssq-card-save-badge{padding:2px 6px;color:var(--ssq-success);background:rgba(71,113,90,.09);border-radius:var(--ssq-radius-badge);font-size:10.5px;font-weight:800;letter-spacing:.02em}

/* Add to Cart / Buy Now — distinct silhouettes, not two variants of the same rectangle. */
.ssq-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ssq-btn-card-cart,.ssq-btn-card-buy{display:inline-flex;min-width:0;min-height:44px;align-items:center;justify-content:center;gap:6px;padding:9px 10px;overflow:hidden;font-size:12.5px;font-weight:800;letter-spacing:.02em;line-height:1.15;text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;transition:transform var(--ssq-transition-fast),background var(--ssq-transition-fast),border-color var(--ssq-transition-fast),color var(--ssq-transition-fast)}
.ssq-btn-card-cart svg,.ssq-btn-card-buy svg{flex-shrink:0}
.ssq-btn-card-cart{color:var(--ssq-ivory)!important;background:var(--ssq-espresso);border:1px solid var(--ssq-espresso);border-radius:var(--ssq-radius-button)}
.ssq-btn-card-cart:hover{background:var(--ssq-terracotta-dark);border-color:var(--ssq-terracotta-dark);transform:translateY(-1px)}
/* Buy Now: pill silhouette — genuinely different shape from Add to Cart's sharp rectangle, not the same box recolored. */
.ssq-btn-card-buy{justify-content:space-between;padding:9px 14px 9px 12px;color:var(--ssq-terracotta-dark)!important;background:transparent;border:1px solid var(--ssq-terracotta);border-radius:var(--ssq-radius-full)}
.ssq-btn-card-buy svg{order:2}
.ssq-btn-card-buy:hover{color:var(--ssq-ivory)!important;background:var(--ssq-terracotta);border-color:var(--ssq-terracotta);transform:translateY(-1px)}
.ssq-btn-card-cart.loading::after{content:"";width:12px;height:12px;margin-left:5px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:ssqSpin .6s linear infinite}.ssq-btn-card-cart.added::after{content:" \2713";margin-left:4px}
@keyframes ssqSpin{to{transform:rotate(360deg)}}

/* Grid: items are content-sized (align-items:start) — a longer neighbouring title never stretches this card. */
.ssq-products-grid{display:grid;align-items:start;min-width:0;gap:clamp(14px,1.6vw,26px)}
.ssq-grid-5col{grid-template-columns:repeat(5,minmax(0,1fr))}.ssq-grid-4col{grid-template-columns:repeat(4,minmax(0,1fr))}.ssq-grid-3col{grid-template-columns:repeat(3,minmax(0,1fr))}.ssq-grid-2col{grid-template-columns:repeat(2,minmax(0,1fr))}
/* Item-count-aware grids for sparse results (1-3 products): balanced layout instead of blank grid tracks. */
.ssq-grid-count-1{grid-template-columns:minmax(0,1fr);max-width:340px}
.ssq-grid-count-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:620px}
.ssq-grid-count-3{grid-template-columns:repeat(3,minmax(0,1fr));max-width:920px}

@media(max-width:1280px){.ssq-grid-5col{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:980px){.ssq-grid-5col,.ssq-grid-4col{grid-template-columns:repeat(3,minmax(0,1fr))}.ssq-grid-count-3{max-width:none}}
@media(max-width:760px){.ssq-grid-5col,.ssq-grid-4col,.ssq-grid-3col,.ssq-grid-2col,.ssq-grid-count-1,.ssq-grid-count-2,.ssq-grid-count-3{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;gap:12px}.ssq-product-card{padding:8px}.ssq-card-image-wrap{margin-bottom:8px}.ssq-card-topbar{inset:6px 6px auto}.ssq-card-wishlist-btn{width:36px;height:36px}.ssq-card-badge{min-height:19px;padding:2px 5px;font-size:9.5px}.ssq-card-cat{font-size:10px}.ssq-card-title{margin-bottom:4px;font-size:clamp(.82rem,3.2vw,.92rem)}.ssq-card-rating{margin-bottom:4px}.ssq-card-pricing{margin-bottom:8px;gap:4px}.ssq-card-price-html{font-size:clamp(.88rem,3.4vw,1rem)}.ssq-card-save-badge{font-size:9.5px}.ssq-btn-card-cart,.ssq-btn-card-buy{min-height:42px;gap:5px;padding:7px 8px;font-size:11px}}
@media(max-width:430px){.ssq-card-actions{grid-template-columns:1fr;gap:6px}.ssq-btn-card-cart,.ssq-btn-card-buy{min-height:40px;padding:7px}}
@media(max-width:380px){.ssq-products-grid{gap:9px}.ssq-product-card{padding:7px}.ssq-card-cat,.ssq-rating-count{display:none}.ssq-card-title{font-size:.8rem}.ssq-card-wishlist-btn{width:34px;height:34px}}
@media(hover:none){.ssq-product-card:hover{transform:none;box-shadow:none}}
