/* Product catalogue card structure. Responsive sizing is controlled by responsive-overrides.css. */
#products{max-width:1180px}
#products .grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
#products .card{min-width:0;display:flex;flex-direction:column;overflow:hidden;padding:10px;border:1px solid #e1e9e5;border-radius:18px;background:#fff;box-shadow:0 7px 24px rgba(16,43,56,.055);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
#products .card:hover{transform:translateY(-3px);border-color:#c9ddd5;box-shadow:0 14px 32px rgba(16,43,56,.09)}
#products .card:focus-visible{outline:3px solid rgba(11,84,71,.18);outline-offset:2px}
#products .card>img{display:block;width:100%;height:180px;aspect-ratio:auto;padding:0;border-radius:13px;object-fit:contain!important;background:#fff!important}
#products .card-body{flex:1;display:flex;flex-direction:column;min-width:0;padding:7px 3px 3px}
#products .card h3{min-height:46px;margin:7px 0 0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--n);font-size:15px;line-height:22px;font-weight:900}
#products .card p{min-height:42px;margin:3px 0 0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#6c797f;font-size:12px;line-height:19px;font-weight:500}
#products .price{margin-top:5px;color:var(--g);font-size:16px;line-height:24px;font-weight:900}
#products .card-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;color:#51806f;font-size:12px}
#products .favorite-card{flex:0 0 36px;width:36px;height:36px;border:0;border-radius:50%;background:#edf5f2;font-size:1.2rem;cursor:pointer}
#products .favorite-card.active{color:#b42318;background:#fff1f0}
#products .view-product{display:inline-flex;margin-top:7px;color:var(--g);font-size:12px;line-height:20px;font-weight:900}
#products .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:auto;padding-top:9px}
#products .actions button{min-width:0;min-height:40px;padding:7px 5px;border:0;border-radius:9px;font-size:12px;line-height:16px;font-weight:900;text-align:center}
#products .add{background:var(--n);color:#fff}
#products .buy{background:var(--g);color:#fff}
#products .actions button:disabled{opacity:.5;cursor:not-allowed}
