.product-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
#product-grid .product-image-button { height:194px; min-height:0; overflow:hidden; padding:20px; }
#product-grid .product-image-button img { display:block; width:100%; height:100%; max-height:100%; object-fit:contain; object-position:center; }
#product-grid .product-title { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.catalogue-pagination { margin-top:28px; padding:23px 0 5px; border-top:1px solid #dfe6d7; }
.catalogue-pagination[hidden] { display:none; }
.catalogue-page-controls { display:flex; align-items:center; justify-content:center; gap:6px; }
.catalogue-page-controls button { display:grid; place-items:center; width:40px; min-width:40px; height:42px; padding:0; border:1px solid #dce5d2; border-radius:7px; background:#fff; color:#31583d; font-size:14px; line-height:1; font-weight:650; cursor:pointer; }
.catalogue-page-controls button:hover:not(:disabled) { border-color:#6f8a58; background:#edf3e4; }
.catalogue-page-controls button[aria-current=page],.catalogue-page-controls button[aria-current=page]:hover { background:#285339; color:#fff; border-color:#285339; }
.catalogue-page-controls button:disabled { opacity:.35; cursor:default; }
.catalogue-page-controls button:focus-visible { outline:2px solid #315b3e; outline-offset:3px; }
.catalogue-page-arrow svg { width:18px; height:18px; }
.catalogue-page-previous svg { transform:rotate(180deg); }
.page-ellipsis { display:grid; place-items:center; min-width:17px; color:#829176; }
.catalogue-page-summary { text-align:center; margin:13px 0 0; font-size:12px; color:#718164; }
.results-meta { scroll-margin-top:115px; }
#results-count:focus { outline:none; }
@media(min-width:801px) and (max-width:1023px) { .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:800px) {
 .product-grid { grid-template-columns:minmax(0,1fr); }
 .product-grid .product-card { grid-template-columns:96px minmax(0,1fr); align-items:center; min-height:162px; }
 #product-grid .product-image-button { height:126px; max-height:126px; min-height:0; align-self:center; padding:8px; }
 #product-grid .product-title { min-height:0; }
 #product-grid .product-bottom { margin-top:10px; }
 #product-grid .price { font-size:20px; }
 .catalogue-pagination { margin-top:20px; padding-top:20px; }
 .catalogue-page-controls { gap:4px; }
 .catalogue-page-controls button { width:36px; min-width:36px; height:42px; font-size:13px; }
 .page-ellipsis { min-width:12px; font-size:13px; }
 .catalogue-page-summary { font-size:11px; }
 .results-meta { scroll-margin-top:84px; }
}
@media(max-width:380px) {
 .product-grid .product-card { grid-template-columns:76px minmax(0,1fr); gap:10px; padding:12px; }
 #product-grid .product-image-button { height:120px; max-height:120px; padding:7px; }
 #product-grid .price { font-size:18px; }
 #product-grid .product-bottom { gap:6px; }
 #product-grid .product-bottom .add-button { padding:0 8px; font-size:11px; }
 .catalogue-page-controls { gap:2px; }
 .catalogue-page-controls button { width:30px; min-width:30px; height:40px; font-size:12px; }
 .catalogue-page-controls .catalogue-page-arrow { width:32px; min-width:32px; }
 .page-ellipsis { min-width:10px; }
}
