/* Product grid component (.gp-product-*) — tokens from common.css :root */
.gp-product-grid{display:grid;gap:24px;margin-top:12px}
.gp-product-grid-1col{grid-template-columns:repeat(1,1fr)}
.gp-product-grid-2col{grid-template-columns:repeat(2,1fr)}
.gp-product-grid-3col{grid-template-columns:repeat(3,1fr)}
.gp-product-grid-4col{grid-template-columns:repeat(4,1fr)}
.gp-product-grid-5col{grid-template-columns:repeat(5,1fr)}
@media(max-width:1024px){.gp-product-grid{grid-template-columns:repeat(3,1fr) !important}}
@media(max-width:768px){.gp-product-grid{grid-template-columns:repeat(2,1fr) !important;gap:16px}}
@media(max-width:480px){.gp-product-grid{grid-template-columns:1fr !important}}
.gp-product-card{background:var(--gp-bg);border:1px solid var(--gp-border);border-radius:20px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;display:flex;flex-direction:column;position:relative}
.gp-product-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(33,69,72,.12);border-color:var(--gp-accent)}
.gp-product-img-wrap{display:block;overflow:hidden;height:240px;position:relative;background:var(--gp-page-bg)}
.gp-product-img-wrap > .gp-fav-btn,
.gp-product-img-wrap > .gp-card-fav-btn{position:absolute;top:12px;right:12px;left:auto;bottom:auto;z-index:8;width:40px;height:40px;min-width:40px;padding:0;border-radius:50%;box-shadow:0 2px 10px rgba(15,23,42,.12)}
.gp-product-img-wrap > .gp-fav-btn .gp-fav-btn__icon,
.gp-product-img-wrap > .gp-card-fav-btn .gp-fav-btn__icon{font-size:20px;line-height:1}
.gp-product-img{width:100%;height:100%;object-fit:contain;transition:transform .5s}
.gp-product-img[src*="no_image.png"]{object-fit:scale-down;padding:24px;opacity:.72;filter:grayscale(.15)}
.gp-product-card:hover .gp-product-img{transform:scale(1.08)}
.gp-product-img-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f1f5f9}
.gp-no-image-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}
.gp-no-image-label{font-size:12px;line-height:1;color:#94a3b8;font-weight:600;letter-spacing:.2px}
.gp-stock-flag{position:absolute;top:12px;left:12px;z-index:3;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:4px 8px;border-radius:6px;line-height:1.2;pointer-events:none}
.gp-stock-flag--in{background:#dcfce7;color:#166534}
.gp-stock-flag--low{background:#ffedd5;color:#9a3412}
.gp-stock-flag--out{background:#fee2e2;color:#b91c1c}
/* Sale ribbon removed — discount shown via struck-through MRP in card body */
.gp-product-badge{display:none !important}
.gp-product-info{padding:20px;display:flex;flex-direction:column;gap:6px;flex:1}
.gp-product-cat{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}
.gp-product-name{font-size:15px;font-weight:700;color:var(--gp-text);text-decoration:none;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:42px}
.gp-product-name:hover{color:var(--gp-accent)}
.gp-product-pricing{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.gp-price-current{font-size:18px;font-weight:800;color:#214548}
.gp-price-old{font-size:14px;color:#94a3b8;text-decoration:line-through}
.gp-stock-status{font-size:13px;font-weight:700;margin:4px 0 0}
.gp-stock-status--unavailable,.gp-product-card--unavailable .gp-stock-status{color:#dc2626}
.gp-product-card--unavailable{opacity:.92;background:#f8fafc;border-color:#e2e8f0}
.gp-product-card--unavailable:hover{transform:none;box-shadow:0 4px 12px rgba(0,0,0,.04)}
.gp-product-card--unavailable .gp-product-name,.gp-product-card--unavailable .gp-price-current{color:#64748b}
.gp-product-card--unavailable .gp-product-img-wrap{filter:grayscale(.45)}
.gp-product-card--unavailable .gp-product-img{opacity:.65}
.gp-add-to-cart-btn{margin-top:auto;background:#214548;color:#fff;text-align:center;padding:12px 16px;border-radius:12px;font-size:14px;font-weight:700;text-decoration:none;display:flex;align-items:center;justify-content:center;transition:background .2s,box-shadow .2s;min-height:44px}
.gp-add-to-cart-btn:hover{background:var(--gp-accent);box-shadow:0 8px 20px rgba(76,175,137,.3)}
.gp-add-to-cart-btn.is-disabled{background:#9ca3af;color:#fff;cursor:not-allowed;pointer-events:none;box-shadow:none}
.gp-add-to-cart-icon{margin-right:6px;vertical-align:middle;display:inline-block}
.gp-product-grid-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px;margin-bottom:20px}
.cms-pg-title{font-size:24px;font-weight:800;color:#214548;margin:0;letter-spacing:-.5px}
.gp-product-grid-count{margin:0;font-size:14px;font-weight:600;color:#64748b;white-space:nowrap}
.gp-product-grid-pagination{display:flex;gap:8px;align-items:center;justify-content:center;margin-top:28px;flex-wrap:wrap}
.gp-pg-btn{padding:8px 14px;border:1px solid var(--gp-border,#e2e8f0);border-radius:10px;font-size:14px;background:var(--gp-bg,#fff);color:var(--gp-text,#214548);font-weight:600;text-decoration:none;transition:background .15s,border-color .15s}
a.gp-pg-btn:hover{background:#f0fdfa;border-color:var(--gp-accent,#4caf89)}
.gp-pg-btn.is-active{background:var(--gp-accent,#4caf89);color:#fff;border-color:var(--gp-accent,#4caf89);pointer-events:none}
.gp-pg-btn.is-disabled{color:#cbd5e1;pointer-events:none;border-color:var(--gp-border,#e2e8f0)}
