/* Scoped functional layout; final brand styling follows separately. */
.sx-category-nav { clear: both; margin: 18px 0 24px; text-align: left; }
.woocommerce .sx-category-nav .sx-category-heading { margin: 8px 0 12px; font-size: 17px; line-height: 1.4; font-weight: 600; text-transform: none; letter-spacing: normal; }
.sx-category-nav .sx-category-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
.sx-category-nav .sx-category-list li { min-width: 0; margin: 0; padding: 0; list-style: none; }
.sx-category-nav .sx-category-list a { display: flex; align-items: center; box-sizing: border-box; height: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #ddd; border-radius: 5px; background: #fff; color: #333; font-size: 14px; line-height: 1.4; text-decoration: none; overflow-wrap: anywhere; }
.sx-category-nav .sx-category-list a:hover,
.sx-category-nav .sx-category-list a[aria-current="page"] { border-color: #ab185b; background: #fff5f8; color: #861247; }
.sx-category-nav .sx-category-list a[aria-current="page"] { font-weight: 700; }
.sx-category-nav a:focus-visible,
.sx-category-nav summary:focus-visible { outline: 3px solid #861247; outline-offset: 3px; }
.sx-category-nav .sx-category-back { display: inline-flex; align-items: center; min-height: 44px; color: #861247; font-size: 14px; line-height: 1.4; text-decoration: underline; }
.sx-category-nav .sx-category-more { margin-top: 8px; }
.sx-category-nav .sx-category-more summary { display: list-item; width: fit-content; max-width: 100%; box-sizing: border-box; min-height: 44px; padding: 11px 0; color: #861247; font-size: 14px; line-height: 1.5; cursor: pointer; }
.sx-category-nav .sx-category-more[open] summary { margin-bottom: 5px; }
@media (max-width: 600px) {
  .sx-category-nav .sx-category-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 350px) {
  .sx-category-nav .sx-category-list { grid-template-columns: minmax(0, 1fr); }
}

/* Full-width catalogue. The body class is added only on Shop/product categories. */
body.sx-catalog-wide.woocommerce #primary { width: 100% !important; max-width: 100%; float: none; padding-left: 0; padding-right: 0; }
body.sx-catalog-wide.woocommerce .shop-sidebar { display: none; }
body.sx-catalog-wide #primary .wp-store-products { clear: both; width: 100%; }
body.sx-catalog-wide #primary .wp-store-products > ul.products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px 20px; width: 100%; margin: 0 0 28px; padding: 0; }
body.sx-catalog-wide #primary .wp-store-products > ul.products::before,
body.sx-catalog-wide #primary .wp-store-products > ul.products::after { display: none; }
body.sx-catalog-wide #primary .wp-store-products > ul.products > li.product { display: flex; flex-direction: column; position: relative; float: none; clear: none; box-sizing: border-box; width: 100%; min-width: 0; min-height: 0; height: auto; margin: 0 !important; padding: 0 0 12px; }
body.sx-catalog-wide #primary .wp-store-products > ul.products > li.product > .wrap-image-sale { position: relative; height: auto; aspect-ratio: 1; width: 100%; }
body.sx-catalog-wide #primary .wp-store-products > ul.products > li.product .yith-wcwl-add-to-wishlist { left: 0; max-width: 100%; box-sizing: border-box; }
body.sx-catalog-wide #primary .wp-store-products > ul.products > li.product .wrap-image-sale > a { height: 100%; }
body.sx-catalog-wide #primary .wp-store-products > ul.products > li.product .wrap-image-sale img { display: block; width: 100%; height: 100%; max-width: 100%; object-fit: contain; margin: 0; }
body.sx-catalog-wide #primary .wp-store-products > ul.products > li.product > a { height: auto; }
body.sx-catalog-wide #primary .wp-store-products > ul.products > li.product h3.product-title { height: 44px; min-height: 44px; padding: 0; margin: 12px 8px 8px; font-size: 16px; line-height: 22px; }
body.sx-catalog-wide #primary .wp-store-products > ul.products > li.product > .price { position: static; margin: 0 8px 12px; font-size: 20px; line-height: 1.4; }
body.sx-catalog-wide #primary .wp-store-products > ul.products > li.product > a.button { position: static; display: flex; align-items: center; justify-content: center; align-self: center; float: none; transform: none; box-sizing: border-box; width: calc(100% - 16px); max-width: 100%; height: auto; min-height: 44px; margin: auto 8px 0; padding: 10px 8px; white-space: normal; font-size: 14px; line-height: 1.4; }
@media (max-width: 1100px) {
  body.sx-catalog-wide #primary .wp-store-products > ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  body.sx-catalog-wide #primary .wp-store-products > ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 12px; }
  body.sx-catalog-wide #primary .wp-store-products > ul.products > li.product h3.product-title { font-size: 14px; line-height: 20px; height: 40px; min-height: 40px; }
  body.sx-catalog-wide #primary .wp-store-products > ul.products > li.product > .price { font-size: 17px; }
}
