/* Native classic shop/taxonomy/search loops only. No custom product query or AJAX cart. */
body.luise-catalog-ux { --luise-purple:#951b81; --luise-ink:#2a252a; }
body.luise-catalog-ux .container-wrap { padding-top:24px!important; }
body.luise-catalog-ux .woocommerce-breadcrumb { margin-bottom:14px; font-size:12px; line-height:1.6; }
.luise-catalog-tools { clear:both; display:flex; align-items:start; flex-wrap:wrap; gap:12px; margin:0 0 18px; }
.luise-catalog-search { display:flex; gap:8px; flex:1 1 280px; margin:0; }
.luise-catalog-search input[type=search] { width:100%; min-width:0; min-height:44px; border:1px solid #d9c6d5; border-radius:12px; background:#fff; padding:10px 13px; font-size:16px; }
.luise-catalog-search button { min-height:44px; border:0; border-radius:12px; padding:10px 17px; background:#951b81; color:#fff; font-size:14px; font-weight:700; }
.luise-catalog-categories { flex:1 1 240px; padding:10px 14px; border:1px solid #c9e5dc; border-radius:12px; background:#edf8f4; }
.luise-catalog-categories summary { color:#006b65; font-weight:700; cursor:pointer; font-size:14px; line-height:24px; }
.luise-catalog-categories nav { display:flex; flex-wrap:wrap; gap:8px; padding-top:12px; }
.luise-catalog-categories nav a { display:inline-flex; align-items:center; min-height:44px; padding:8px 12px; color:#74206b; background:#fff; border:1px solid #dfc7db; border-radius:99px; font-size:13px; text-decoration:none; }
.luise-catalog-categories nav a[aria-current=page],.luise-catalog-categories nav a:hover { background:#951b81; color:#fff; }
body.luise-catalog-ux ul.products { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px 20px; clear:both; margin:16px 0 24px!important; padding:0; }
body.luise-catalog-ux ul.products::before,body.luise-catalog-ux ul.products::after { display:none!important; }
body.luise-catalog-ux ul.products li.product { float:none!important; width:auto!important; margin:0!important; min-width:0; padding:0 0 12px!important; text-align:left; border-radius:14px; background:#fff; overflow:visible; }
body.luise-catalog-ux ul.products li.product .product-wrap { margin-bottom:0; border-radius:14px; overflow:hidden; background:#fcf5ec; }
body.luise-catalog-ux ul.products li.product .product-wrap > a > img,
body.luise-catalog-ux ul.products li.product a.woocommerce-loop-product__link > img { width:100%; height:auto; aspect-ratio:1; object-fit:contain; margin:0; border-radius:14px; background:#fcf5ec; }
body.luise-catalog-ux ul.products li.product .woocommerce-loop-product__title { margin:10px 0 6px!important; padding:0!important; font-size:17px!important; line-height:1.35!important; color:#74206b; text-transform:none; letter-spacing:0; overflow-wrap:anywhere; }
body.luise-catalog-ux ul.products li.product .price { display:block; font-size:16px!important; font-weight:700; color:#2a252a; margin:5px 0 9px!important; line-height:1.5; }
body.luise-catalog-ux ul.products li.product .price del { font-size:.8em; font-weight:400; }
body.luise-catalog-ux ul.products li.product .product-add-to-cart { position:static!important; opacity:1!important; visibility:visible!important; transform:none!important; }
body.luise-catalog-ux ul.products li.product a.button { display:flex!important; justify-content:center; align-items:center; min-height:44px; width:100%; box-sizing:border-box; padding:10px 12px!important; margin:0!important; background:#951b81!important; color:#fff!important; border:0!important; border-radius:0 0 12px 12px!important; font-size:13px!important; line-height:1.35!important; text-transform:none!important; opacity:1!important; transform:none!important; position:relative!important; box-shadow:none!important; white-space:normal; }
body.luise-catalog-ux ul.products li.product a.button i { margin-right:7px; }
body.luise-catalog-ux .woocommerce-result-count { font-size:12px; margin:0 0 12px; }
body.luise-catalog-ux .woocommerce-ordering select { min-height:44px; max-width:100%; font-size:14px; border-radius:10px; }
body.luise-catalog-ux .woocommerce-pagination a,body.luise-catalog-ux .woocommerce-pagination span { min-width:44px; min-height:44px; box-sizing:border-box; border-radius:8px; }
body.luise-catalog-ux :is(a,button,input,select,summary):focus-visible { outline:3px solid #007c77; outline-offset:3px; }
@media(max-width:999px) { body.luise-catalog-ux ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px 14px; } }
@media(max-width:690px) {
 body.luise-catalog-ux .container-wrap { padding-top:12px!important; }
 body.luise-catalog-ux ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 12px; margin-top:10px!important; }
 body.luise-catalog-ux ul.products li.product .woocommerce-loop-product__title { font-size:15px!important; }
 body.luise-catalog-ux ul.products li.product .price { font-size:15px!important; }
 .luise-catalog-tools { gap:8px; margin-bottom:12px; }
 .luise-catalog-search,.luise-catalog-categories { flex-basis:100%; }
 body.luise-catalog-ux .woocommerce-ordering { float:none; width:100%; margin:0 0 8px; }
 body.luise-catalog-ux .woocommerce-result-count { float:none; margin-bottom:8px; }
}
@media(max-width:359px) { body.luise-catalog-ux ul.products { grid-template-columns:minmax(0,1fr); } }
body.luise-catalog-ux ul.products li.product .woocommerce-loop-product__title a { color:inherit; text-decoration:none; }
body.luise-catalog-ux ul.products li.product > .product-add-to-cart { margin-top:10px; }
body.luise-catalog-ux ul.products li.product > .product-add-to-cart a.button { border-radius:99px!important; }
body.luise-catalog-ux ul.products li.product > .product-add-to-cart[data-nectar-quickview=true] { display:flex; gap:4px; }
body.luise-catalog-ux ul.products li.product > .product-add-to-cart[data-nectar-quickview=true] .button { flex:1; width:auto!important; }
body.luise-catalog-ux ul.products li.product > .product-add-to-cart[data-nectar-quickview=true] .nectar_quick_view { flex:0 0 44px; min-height:44px; }
body.luise-catalog-ux ul.products li.product { display:flex; flex-direction:column; }
body.luise-catalog-ux ul.products li.product .woocommerce-loop-product__title { min-height:2.7em; }
body.luise-catalog-ux ul.products li.product > .product-add-to-cart { margin-top:auto; padding-top:8px; }

/* Salient's data-n-*-columns widths use !important. Grid children must fill
   the grid cell, rather than inherit a second percentage-based column width. */
body.woocommerce.luise-catalog-ux:not(.single-product) ul.products[data-n-desktop-columns] > li.product,
body.woocommerce-page.luise-catalog-ux:not(.single-product) ul.products[data-n-desktop-columns] > li.product {
 width:100%!important; max-width:100%!important; min-width:0!important; margin:0!important;
 float:none!important; box-sizing:border-box; justify-self:stretch; flex-basis:auto;
}
body.woocommerce.luise-catalog-ux ul.products > li.product .product-add-to-cart a.button {
 min-height:44px!important; height:auto!important; width:100%!important; max-width:100%;
 padding:11px 14px!important; margin:0!important; box-sizing:border-box;
 font-size:13px!important; line-height:1.4!important; white-space:normal!important;
 border-radius:99px!important; background:#951b81!important; color:#fff!important;
 position:relative!important; transform:none!important; display:flex!important;
 align-items:center; justify-content:center;
}
body.woocommerce.luise-catalog-ux .luise-catalog-search button { background:#951b81!important; color:#fff!important; min-height:44px!important; }
.luise-catalog-categories-title { margin:0!important; color:#006b65; font-size:13px; font-weight:700; line-height:1.5; }
.luise-catalog-categories { flex-basis:100%; }
.luise-catalog-categories nav { padding-top:8px; }
body.woocommerce.luise-catalog-ux:not(.single-product) ul.products[data-n-desktop-columns] {
 width:100%!important; max-width:100%!important; margin-left:0!important; margin-right:0!important; box-sizing:border-box;
}
/* Product selection happens in the product sheet; archive cards contain photo and title only. */
body.woocommerce.luise-catalog-ux ul.products li.product .price,
body.woocommerce.luise-catalog-ux ul.products li.product .product-add-to-cart,
body.woocommerce.luise-catalog-ux ul.products li.product .button,
body.woocommerce.luise-catalog-ux ul.products li.product .star-rating,
body.woocommerce.luise-catalog-ux ul.products li.product .onsale,
body.woocommerce.luise-catalog-ux .woocommerce-pagination,
body.woocommerce.luise-catalog-ux .nectar-shop-pagination,
body.woocommerce.luise-catalog-ux .load-more-wrap { display:none!important; }
/* Cards end at the title; hidden price/cart controls must reserve no space. */
body.woocommerce.luise-catalog-ux:not(.single-product) ul.products { align-items:start!important; }
body.woocommerce.luise-catalog-ux:not(.single-product) ul.products > li.product {
 height:auto!important; min-height:0!important; padding-bottom:0!important; align-self:start!important;
 background:transparent!important; box-shadow:none!important;
}
body.woocommerce.luise-catalog-ux:not(.single-product) ul.products > li.product .product-wrap,
body.woocommerce.luise-catalog-ux:not(.single-product) ul.products > li.product .product-meta,
body.woocommerce.luise-catalog-ux:not(.single-product) ul.products > li.product .product-details { height:auto!important;min-height:0!important;margin-bottom:0!important;padding-bottom:0!important; }
body.woocommerce.luise-catalog-ux:not(.single-product) ul.products > li.product .woocommerce-loop-product__title {
 min-height:0!important;height:auto!important;margin:8px 0 0!important;padding-bottom:0!important;
}
