/* SAGE Category Products Grid */
.cpg{ width:100%; }
.cpg-grid{ 
  display:grid; gap:var(--gap,18px);
  grid-template-columns:repeat(var(--col-d,4), minmax(0,1fr));
}
@media(max-width:1024px){ .cpg-grid{ grid-template-columns:repeat(var(--col-t,3), minmax(0,1fr)); } }
@media(max-width:767px){ .cpg-grid{ grid-template-columns:repeat(var(--col-m,2), minmax(0,1fr)); } }

.cpg-card{ background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:14px; padding:12px; display:flex; flex-direction:column; gap:8px; }
.cpg-thumb{ display:block; position:relative; overflow:hidden; border-radius:12px; }
.cpg-thumb img, .cpg-ph{ width:100%; height:auto; display:block; aspect-ratio: var(--ratio, 3/2); object-fit:cover; background:#eef2f7; }
.cpg-title{ font-size:16px; line-height:1.35; margin:6px 2px 0; }
.cpg-title a{ color:inherit; text-decoration:none; }
.cpg-rating{ line-height:1; }
.cpg-price{ font-weight:700; color:#111827; }
.cpg-cart .button{ width:100%; border-radius:10px; }
.cpg-pagination ul{ display:flex; gap:8px; justify-content:center; list-style:none; padding:0; }
.cpg-pagination li a, .cpg-pagination li span{ display:block; padding:8px 12px; border:1px solid #e5e7eb; border-radius:10px; text-decoration:none; color:#0b1c3d; }
.cpg-pagination li .current{ background:#0b1c3d; color:#fff; border-color:#0b1c3d; }
