/* Catalogue cards: shared card frame/price/button live in store.css; this file owns grid, name clamp, specs and stock. */
.lw-native .lw-store.lw-catalogue { max-width:1560px; }
.lw-native .lw-catalogue ul.products { grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); }
.lw-native .lw-catalogue ul.products li.product .woocommerce-loop-product__title {
    overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3;
}
.lw-card-specs { color:var(--lw-ink-soft); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.lw-card-specs:empty { display:none; }
.lw-card-spec-divider { margin:0 6px; }
.lw-card-stock { display:flex; align-items:center; gap:7px; font-size:12px; line-height:1.5; margin-top:auto; padding-top:14px; color:var(--lw-green-ink); }
.lw-card-stock::before { content:''; width:6px; height:6px; border-radius:50%; background:currentColor; flex:none; }
.lw-card-stock-onbackorder { color:#865a17; }
.lw-card-stock-outofstock { color:#66766f; }
@media(max-width:959px) {
    .lw-native .lw-catalogue ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:480px) {
    .lw-card-spec-divider { margin:0 3px; }
}
