/*
 * White Spider Electronics — shared WooCommerce product card presentation.
 * Deliberately does not set grid columns, widths, floats, or display on the
 * product list: WooCommerce and Beaver Builder retain responsibility for them.
 */
.woocommerce ul.products li.product,
.fl-module-woocommerce .woocommerce ul.products li.product,
.related.products ul.products li.product,
.woocommerce-page ul.products li.product {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 445px;
    padding: 0 18px 18px;
    overflow: visible;
    border: 1px solid #2f9ff4;
    border-radius: 15px;
    background: #fff;
    transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.woocommerce ul.products li.product:hover,
.fl-module-woocommerce .woocommerce ul.products li.product:hover,
.related.products ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
    z-index: 2;
    border-color: #1689df;
    box-shadow: 0 9px 24px rgba(20, 26, 34, .12);
    transform: translateY(-3px) scale(1.012);
}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.fl-module-woocommerce .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.related.products ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce-page ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product a.woocommerce-loop-product__link,
.fl-module-woocommerce .woocommerce ul.products li.product a.woocommerce-loop-product__link,
.related.products ul.products li.product a.woocommerce-loop-product__link,
.woocommerce-page ul.products li.product a.woocommerce-loop-product__link {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    flex: 0 0 auto;
    width: 100%;
    min-width: 0;
    color: inherit;
    text-decoration: none;
}
.woocommerce ul.products li.product a img,
.fl-module-woocommerce .woocommerce ul.products li.product a img,
.related.products ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
    display: block;
    width: calc(100% + 36px);
    max-width: none;
    height: 220px;
    margin: 0 -18px 17px;
    padding: 18px;
    box-sizing: border-box;
    object-fit: contain;
    border-radius: 14px 14px 0 0;
    border-bottom: 1px solid #e8e2d9;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.fl-module-woocommerce .woocommerce ul.products li.product .woocommerce-loop-product__title,
.related.products ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
    width: 100%;
    max-width: 100%;
    margin: 0 0 10px;
    padding: 0;
    color: #191c20;
    font-size: 19px;
    font-weight: 650;
    line-height: 1.32;
    letter-spacing: normal;
    text-align: left;
    white-space: normal;
    overflow-wrap: break-word;
    word-break: normal;
}
.wse-product-card-cats {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 7px;
    width: 100%;
    max-width: 100%;
    margin: 0 0 14px;
}
.wse-product-card-tag {
    display: inline-flex;
    flex: 0 1 auto;
    align-items: center;
    max-width: 100%;
    padding: 5px 11px;
    border-radius: 999px;
    background: #f0eee9;
    color: #505760;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.25;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
    text-decoration: none;
}
.wse-product-card-tag:hover,
.wse-product-card-tag:focus {
    background: #e4f2ff;
    color: #147ec0;
    text-decoration: none;
}
.wse-product-card-footer {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    margin-top: auto;
    padding-top: 16px;
}
.wse-product-card-price {
    min-width: 0;
    margin: 0;
    padding: 0;
    color: #171a1e;
    font-size: 25px;
    font-weight: 750;
    line-height: 1.15;
    text-align: left !important;
}
.wse-product-card-price .price {
    display: block;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit;
    font-size: inherit;
    line-height: inherit;
    text-align: left !important;
}
.wse-product-card-price .price del {
    display: block;
    width: fit-content;
    margin: 0 0 2px !important;
    font-size: .62em !important;
    font-weight: 500;
    line-height: 1.15;
    opacity: .58;
}
.wse-product-card-price .price ins {
    display: block;
    width: fit-content;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 1em;
    font-weight: 750;
    line-height: 1.15;
    text-decoration: none;
}
.wse-product-card-view {
    flex: 0 0 auto;
    align-self: center;
    padding: 0 0 4px;
    border-bottom: 3px solid #f5a623;
    color: #171a1e !important;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.15;
    text-decoration: none !important;
    white-space: nowrap;
}
.wse-product-card-view:hover,
.wse-product-card-view:focus {
    color: #147ec0 !important;
    border-bottom-color: #147ec0;
}
@media (max-width: 992px) {
    .woocommerce ul.products li.product,
    .fl-module-woocommerce .woocommerce ul.products li.product,
    .related.products ul.products li.product,
    .woocommerce-page ul.products li.product {
        min-height: 420px;
        padding-right: 14px;
        padding-left: 14px;
    }
    .woocommerce ul.products li.product a img,
    .fl-module-woocommerce .woocommerce ul.products li.product a img,
    .related.products ul.products li.product a img,
    .woocommerce-page ul.products li.product a img {
        width: calc(100% + 28px);
        height: 195px;
        margin-right: -14px;
        margin-left: -14px;
        padding: 14px;
    }
    .wse-product-card-price { font-size: 22px; }
    .wse-product-card-view { font-size: 16px; }
}
@media (max-width: 767px) {
    .woocommerce ul.products li.product,
    .fl-module-woocommerce .woocommerce ul.products li.product,
    .related.products ul.products li.product,
    .woocommerce-page ul.products li.product {
        min-height: 390px;
        padding-right: 12px;
        padding-left: 12px;
    }
    .woocommerce ul.products li.product a img,
    .fl-module-woocommerce .woocommerce ul.products li.product a img,
    .related.products ul.products li.product a img,
    .woocommerce-page ul.products li.product a img {
        width: calc(100% + 24px);
        height: 175px;
        margin-right: -12px;
        margin-left: -12px;
        padding: 12px;
    }
    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .fl-module-woocommerce .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .related.products ul.products li.product .woocommerce-loop-product__title,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title {
        font-size: 16px;
    }
    .wse-product-card-tag { font-size: 12px; padding: 4px 8px; }
    .wse-product-card-footer { gap: 8px; padding-top: 12px; }
    .wse-product-card-price { font-size: 19px; }
    .wse-product-card-view { font-size: 14px; }
}
.wse-product-card-mpn {
    display: inline-flex;
    align-self: flex-start;
    max-width: 100%;
    margin: 0 0 7px;
    padding: 4px 9px;
    border-radius: 999px;
    background: #eaf5ff;
    color: #237fc3;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .035em;
    overflow-wrap: anywhere;
}

/* Beaver Themer shop/category archive cards use the Beaver Builder Posts grid,
   not WooCommerce's standard ul.products markup. Keep its grid columns intact. */
.fl-post-grid .fl-post-grid-post.product {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    height: 100%;
    min-height: 445px;
    min-width: 0;
    overflow: hidden;
    position: relative;
    border: 1px solid #2f9ff4;
    border-radius: 15px;
    background: #fff;
    transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.fl-post-grid .fl-post-grid-post.product:hover {
    border-color: #1689df;
    box-shadow: 0 9px 24px rgba(20, 26, 34, .12);
    transform: translateY(-3px) scale(1.012);
    z-index: 2;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-image {
    flex: 0 0 auto;
    margin: 0;
    border-bottom: 1px solid #e8e2d9;
    position: relative;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-image a {
    display: block;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-image img {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 220px;
    max-width: none;
    margin: 0;
    padding: 18px;
    object-fit: contain;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-image .onsale {
    z-index: 2;
    top: 14px;
    left: 14px;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
    position: relative;
    box-sizing: border-box;
    padding: 18px 18px 76px;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-title {
    margin: 0 0 10px;
    padding: 0;
    font-size: 19px;
    font-weight: 650;
    line-height: 1.32;
    letter-spacing: normal;
    text-align: left;
    overflow-wrap: break-word;
    word-break: normal;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-title a {
    color: #191c20;
    text-decoration: none;
}
.fl-post-grid .fl-post-grid-post.product .wse-product-card-cats {
    margin: 0 0 10px;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta {
    display: flex;
    flex-direction: column;
    gap: 7px;
    margin: 0;
    padding: 0;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .star-rating {
    float: none;
    margin: 0;
    color: #f0a51b;
    font-size: 14px;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
    position: absolute;
    left: 18px;
    bottom: 20px;
    margin: 0;
    padding: 0;
    color: #171a1e;
    font-size: 25px;
    font-weight: 750;
    line-height: 1.15;
    text-align: left;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del {
    display: block;
    width: fit-content;
    margin: 0 0 2px;
    font-size: .62em !important;
    font-weight: 500;
    line-height: 1.15;
    opacity: .58;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins {
    display: block;
    width: fit-content;
    margin: 0;
    padding: 0;
    font-size: 1em;
    font-weight: 750;
    text-decoration: none;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button {
    position: absolute;
    right: 18px;
    bottom: 20px;
    margin: 0;
}
.fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button .wse-product-card-view {
    display: inline-block;
    padding: 0 0 4px;
    border-bottom: 3px solid #f5a623;
    color: #171a1e !important;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.15;
    text-decoration: none !important;
    white-space: nowrap;
}
@media (max-width: 992px) {
    .fl-post-grid .fl-post-grid-post.product { min-height: 420px; }
    .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image img {
        height: 195px;
        padding: 14px;
    }
    .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
        padding: 16px 14px 72px;
    }
    .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
        left: 14px;
        font-size: 22px;
    }
    .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button {
        right: 14px;
    }
}
@media (max-width: 767px) {
    .fl-post-grid .fl-post-grid-post.product { min-height: 390px; }
    .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image img {
        height: 175px;
        padding: 12px;
    }
    .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
        padding: 14px 12px 68px;
    }
    .fl-post-grid .fl-post-grid-post.product .fl-post-grid-title {
        font-size: 16px;
    }
    .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
        left: 12px;
        font-size: 19px;
    }
    .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button {
        right: 12px;
    }
    .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button .wse-product-card-view {
        font-size: 14px;
    }
}

.wse-product-card-rating {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    width: 100%;
    margin: 0 0 8px;
    color: #505760;
    font-size: 12px;
    line-height: 1.25;
}
.wse-product-card-rating .star-rating {
    float: none;
    margin: 0;
    color: #f0a51b;
    font-size: 14px;
}
.wse-product-card-review-count {
    color: #59616b;
    font-size: 12px;
}

/* Final shared-card refinements: consistent price alignment, sizing and archive layout. */
.woocommerce ul.products li.product .wse-product-card-footer,
.fl-module-woocommerce .woocommerce ul.products li.product .wse-product-card-footer,
.related.products ul.products li.product .wse-product-card-footer,
.woocommerce-page ul.products li.product .wse-product-card-footer {
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
}
.woocommerce ul.products li.product .wse-product-card-price,
.fl-module-woocommerce .woocommerce ul.products li.product .wse-product-card-price,
.related.products ul.products li.product .wse-product-card-price,
.woocommerce-page ul.products li.product .wse-product-card-price {
    margin-left: 0 !important;
    padding-left: 0 !important;
}
.woocommerce ul.products li.product .wse-product-card-price .price del,
.fl-module-woocommerce .woocommerce ul.products li.product .wse-product-card-price .price del,
.related.products ul.products li.product .wse-product-card-price .price del,
.woocommerce-page ul.products li.product .wse-product-card-price .price del {
    font-size: .5em !important;
}

/* Keep standard WooCommerce widget and related-product cards equal-height too. */
.woocommerce ul.products li.product,
.fl-module-woocommerce .woocommerce ul.products li.product,
.related.products ul.products li.product,
.woocommerce-page ul.products li.product {
    height: 520px !important;
    min-height: 520px !important;
    border: 2px solid #2f9ff4 !important;
    box-sizing: border-box !important;
}
.woocommerce ul.products li.product:hover,
.fl-module-woocommerce .woocommerce ul.products li.product:hover,
.related.products ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
    border-color: #1689df !important;
    box-shadow: 0 9px 24px rgba(20, 26, 34, .15) !important;
}
.woocommerce ul.products li.product .wse-product-card-footer,
.fl-module-woocommerce .woocommerce ul.products li.product .wse-product-card-footer,
.related.products ul.products li.product .wse-product-card-footer,
.woocommerce-page ul.products li.product .wse-product-card-footer {
    flex: 0 0 auto;
    margin-top: auto !important;
}
@media (max-width: 992px) {
    .woocommerce ul.products li.product,
    .fl-module-woocommerce .woocommerce ul.products li.product,
    .related.products ul.products li.product,
    .woocommerce-page ul.products li.product {
        height: 490px !important;
        min-height: 490px !important;
    }
}
@media (max-width: 767px) {
    .woocommerce ul.products li.product,
    .fl-module-woocommerce .woocommerce ul.products li.product,
    .related.products ul.products li.product,
    .woocommerce-page ul.products li.product {
        height: 455px !important;
        min-height: 455px !important;
    }
}

/* Beaver Builder archive markup is different from the standard WooCommerce loop. */
body .fl-post-grid .fl-post-grid-post.product {
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    height: 520px !important;
    min-height: 520px !important;
    overflow: hidden !important;
    position: relative !important;
    border: 2px solid #2f9ff4 !important;
    border-radius: 15px !important;
    background: #fff !important;
    box-shadow: 0 0 0 1px rgba(47,159,244,.08) !important;
    transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease !important;
}
body .fl-post-grid .fl-post-grid-post.product:hover {
    border-color: #1689df !important;
    box-shadow: 0 9px 24px rgba(20, 26, 34, .15) !important;
    transform: translateY(-3px) scale(1.012) !important;
    z-index: 2 !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image {
    flex: 0 0 220px !important;
    height: 220px !important;
    min-height: 220px !important;
    overflow: hidden;
    border-bottom: 1px solid #e8e2d9 !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image img {
    width: 100% !important;
    height: 220px !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 18px !important;
    object-fit: contain !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    height: 296px !important;
    min-height: 0 !important;
    min-width: 0 !important;
    position: relative !important;
    box-sizing: border-box !important;
    padding: 18px 18px 78px !important;
    font-family: inherit !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-title,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-title a {
    font-family: inherit !important;
    font-size: 19px !important;
    font-weight: 650 !important;
    line-height: 1.32 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-meta-terms {
    display: none !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .star-rating,
body .fl-post-grid .fl-post-grid-post.product .wse-product-card-rating {
    display: none !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta {
    display: block !important;
    position: static !important;
    margin: 0 !important;
    padding: 0 !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
    position: absolute !important;
    left: 18px !important;
    right: auto !important;
    bottom: 20px !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 25px !important;
    line-height: 1.15 !important;
    text-align: left !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del {
    display: block !important;
    margin: 0 0 2px !important;
    font-size: .5em !important;
    font-weight: 500 !important;
    line-height: 1.15 !important;
    opacity: .65 !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 1em !important;
    text-decoration: none !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button {
    display: block !important;
    position: absolute !important;
    left: auto !important;
    right: 18px !important;
    bottom: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button .wse-product-card-view {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 0 4px !important;
    font-family: inherit !important;
    font-size: 17px !important;
    line-height: 1.15 !important;
}
@media (max-width: 992px) {
    body .fl-post-grid .fl-post-grid-post.product {
        height: 490px !important;
        min-height: 490px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
        height: 266px !important;
        padding: 16px 14px 72px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
        left: 14px !important;
        font-size: 22px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button {
        right: 14px !important;
    }
}
@media (max-width: 767px) {
    body .fl-post-grid .fl-post-grid-post.product {
        height: 455px !important;
        min-height: 455px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image img {
        height: 175px !important;
        min-height: 175px !important;
        flex-basis: 175px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
        height: 276px !important;
        padding: 14px 12px 68px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-title,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-title a {
        font-size: 16px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
        left: 12px !important;
        font-size: 19px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button {
        right: 12px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button .wse-product-card-view {
        font-size: 14px !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    .woocommerce ul.products li.product,
    .fl-module-woocommerce .woocommerce ul.products li.product,
    .related.products ul.products li.product,
    .woocommerce-page ul.products li.product,
    .fl-post-grid .fl-post-grid-post.product {
        transition: none;
    }
}

/* WooCommerce widget + related product finishing refinements (draft only). */
.woocommerce ul.products li.product,
.fl-module-woocommerce .woocommerce ul.products li.product,
.related.products ul.products li.product,
.woocommerce-page ul.products li.product,
body .fl-post-grid .fl-post-grid-post.product {
    border: 1px solid rgba(47, 159, 244, .48) !important;
}
.woocommerce ul.products li.product:hover,
.fl-module-woocommerce .woocommerce ul.products li.product:hover,
.related.products ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover,
body .fl-post-grid .fl-post-grid-post.product:hover {
    border-color: rgba(47, 159, 244, .8) !important;
    box-shadow: 0 7px 18px rgba(20, 26, 34, .12) !important;
}
.woocommerce ul.products li.product,
.fl-module-woocommerce .woocommerce ul.products li.product,
.related.products ul.products li.product,
.woocommerce-page ul.products li.product {
    height: 480px !important;
    min-height: 480px !important;
}
body .fl-post-grid .fl-post-grid-post.product {
    height: 480px !important;
    min-height: 480px !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image img {
    height: 205px !important;
    flex-basis: 205px !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
    height: 275px !important;
    padding-bottom: 70px !important;
}
.wse-product-card-cats {
    margin-bottom: 6px !important;
}
.wse-product-card-footer {
    padding-top: 6px !important;
}
.wse-product-card-price .price,
.wse-product-card-price .price del,
.wse-product-card-price .price ins,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins {
    text-align: left !important;
}
.wse-product-card-price .price,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 2px !important;
}
.wse-product-card-price .price del,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del {
    display: block !important;
    order: 0 !important;
    width: fit-content !important;
    margin: 0 !important;
    font-size: .5em !important;
    line-height: 1.1 !important;
}
.wse-product-card-price .price ins,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins {
    display: block !important;
    order: 1 !important;
    width: fit-content !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 1em !important;
    line-height: 1.15 !important;
}
.woocommerce ul.products li.product .star-rating,
.fl-module-woocommerce .woocommerce ul.products li.product .star-rating,
.related.products ul.products li.product .star-rating,
.related.products .star-rating,
.related.products .woocommerce-product-rating,
.woocommerce-page ul.products li.product .star-rating,
body .fl-post-grid .fl-post-grid-post.product .star-rating,
body .fl-post-grid .fl-post-grid-post.product .woocommerce-product-rating,
.wse-product-card-rating {
    display: none !important;
}
.fl-module-woocommerce ul.products,
.related.products ul.products,
.woocommerce-page ul.products {
    column-gap: 24px !important;
    row-gap: 24px !important;
}
@media (max-width: 992px) {
    .woocommerce ul.products li.product,
    .fl-module-woocommerce .woocommerce ul.products li.product,
    .related.products ul.products li.product,
    .woocommerce-page ul.products li.product,
    body .fl-post-grid .fl-post-grid-post.product {
        height: 460px !important;
        min-height: 460px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image img {
        height: 190px !important;
        flex-basis: 190px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
        height: 270px !important;
    }
}
@media (max-width: 767px) {
    .woocommerce ul.products li.product,
    .fl-module-woocommerce .woocommerce ul.products li.product,
    .related.products ul.products li.product,
    .woocommerce-page ul.products li.product,
    body .fl-post-grid .fl-post-grid-post.product {
        height: 440px !important;
        min-height: 440px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image img {
        height: 170px !important;
        flex-basis: 170px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
        height: 270px !important;
    }
}

/* Final consistency pass: align archive grids with related-product card spacing. */
body .fl-post-grid .fl-post-grid-post.product {
    border-width: 1px !important;
    border-color: rgba(47, 159, 244, .48) !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price .amount,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins .amount,
.wse-product-card-price .price,
.wse-product-card-price .price .amount,
.wse-product-card-price .price ins,
.wse-product-card-price .price ins .amount,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price .amount,
.woocommerce ul.products li.product .price ins,
.woocommerce ul.products li.product .price ins .amount {
    color: #369cf5 !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del .amount,
.wse-product-card-price .price del,
.wse-product-card-price .price del .amount,
.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price del .amount,
.related.products .price del,
.related.products .price del .amount {
    display: block !important;
    font-size: 0.5em !important;
    line-height: 1.1 !important;
    color: #369cf5 !important;
    opacity: .68 !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins,
.wse-product-card-price .price ins,
.woocommerce ul.products li.product .price ins,
.related.products .price ins {
    font-size: 1em !important;
    color: #369cf5 !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 2px !important;
}
/* Repair Beaver Builder archive layout: each .fl-post-column wraps one card.
   Do not turn the parent .fl-post-grid into CSS Grid, which compounds the
   columns' native widths and collapses cards to narrow slivers. */
body .fl-post-grid {
    display: block !important;
    width: auto !important;
    margin-left: -12px !important;
    margin-right: -12px !important;
}
body .fl-post-grid::after {
    content: "";
    display: table;
    clear: both;
}
body .fl-post-grid > .fl-post-column {
    display: block !important;
    float: left !important;
    box-sizing: border-box !important;
    width: 25% !important;
    padding: 0 12px !important;
    margin: 0 0 24px !important;
}
body .fl-post-grid .fl-post-grid-post.product {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}
.fl-module-woocommerce ul.products,
.related.products ul.products,
.woocommerce-page ul.products {
    column-gap: 24px !important;
    row-gap: 24px !important;
}
/* Keep sale prices legible: the original price should be about 70% of the
   current-price size, matching the earlier homepage treatment. */
.wse-product-card-price .price del,
.wse-product-card-price .price del .amount,
.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price del .amount,
.related.products .price del,
.related.products .price del .amount,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del .amount {
    font-size: .72em !important;
    line-height: 1.15 !important;
}
@media (max-width: 992px) {
    body .fl-post-grid > .fl-post-column {
        width: 50% !important;
    }
}
@media (max-width: 767px) {
    body .fl-post-grid > .fl-post-column {
        float: none !important;
        width: 100% !important;
    }
}

/* Price parity across Beaver Builder archive cards, homepage Woo widgets,
   and related products. Sale and regular prices use the same main size;
   only the crossed-out original price is smaller. */
.wse-product-card-price .price,
.wse-product-card-price .price > .amount,
.wse-product-card-price .price ins,
.wse-product-card-price .price ins .amount,
.fl-module-woocommerce ul.products li.product .price,
.fl-module-woocommerce ul.products li.product .price > .amount,
.fl-module-woocommerce ul.products li.product .price ins,
.fl-module-woocommerce ul.products li.product .price ins .amount,
.related.products ul.products li.product .price,
.related.products ul.products li.product .price > .amount,
.related.products ul.products li.product .price ins,
.related.products ul.products li.product .price ins .amount {
    font-size: 25px !important;
    font-weight: 750 !important;
    line-height: 1.15 !important;
}
.wse-product-card-price .price del,
.wse-product-card-price .price del .amount,
.fl-module-woocommerce ul.products li.product .price del,
.fl-module-woocommerce ul.products li.product .price del .amount,
.related.products ul.products li.product .price del,
.related.products ul.products li.product .price del .amount,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del .amount {
    font-size: 18px !important;
    font-weight: 500 !important;
    line-height: 1.15 !important;
    opacity: .68 !important;
}
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price > .amount,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins .amount {
    font-size: 25px !important;
    font-weight: 750 !important;
    line-height: 1.15 !important;
}
@media (max-width: 992px) {
    .wse-product-card-price .price,
    .wse-product-card-price .price > .amount,
    .wse-product-card-price .price ins,
    .wse-product-card-price .price ins .amount,
    .fl-module-woocommerce ul.products li.product .price,
    .fl-module-woocommerce ul.products li.product .price > .amount,
    .fl-module-woocommerce ul.products li.product .price ins,
    .fl-module-woocommerce ul.products li.product .price ins .amount,
    .related.products ul.products li.product .price,
    .related.products ul.products li.product .price > .amount,
    .related.products ul.products li.product .price ins,
    .related.products ul.products li.product .price ins .amount,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price > .amount,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins .amount {
        font-size: 22px !important;
    }
    .wse-product-card-price .price del,
    .wse-product-card-price .price del .amount,
    .fl-module-woocommerce ul.products li.product .price del,
    .fl-module-woocommerce ul.products li.product .price del .amount,
    .related.products ul.products li.product .price del,
    .related.products ul.products li.product .price del .amount,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del .amount {
        font-size: 16px !important;
    }
}
@media (max-width: 767px) {
    .wse-product-card-price .price,
    .wse-product-card-price .price > .amount,
    .wse-product-card-price .price ins,
    .wse-product-card-price .price ins .amount,
    .fl-module-woocommerce ul.products li.product .price,
    .fl-module-woocommerce ul.products li.product .price > .amount,
    .fl-module-woocommerce ul.products li.product .price ins,
    .fl-module-woocommerce ul.products li.product .price ins .amount,
    .related.products ul.products li.product .price,
    .related.products ul.products li.product .price > .amount,
    .related.products ul.products li.product .price ins,
    .related.products ul.products li.product .price ins .amount,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price > .amount,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins .amount {
        font-size: 19px !important;
    }
    .wse-product-card-price .price del,
    .wse-product-card-price .price del .amount,
    .fl-module-woocommerce ul.products li.product .price del,
    .fl-module-woocommerce ul.products li.product .price del .amount,
    .related.products ul.products li.product .price del,
    .related.products ul.products li.product .price del .amount,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del .amount {
        font-size: 14px !important;
    }
}

/* First archive-only price consistency test.
   Keep the original price readable and independent of older theme overrides. */
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del .amount {
    display: block !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
    font-weight: 500 !important;
    opacity: .68 !important;
}
@media (max-width: 992px) {
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del .amount {
        font-size: 16px !important;
    }
}
@media (max-width: 767px) {
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del .amount {
        font-size: 14px !important;
    }
}

/* Responsive repair pass: tablet grids use two columns; mobile cards collapse
   their fixed-height footer gap and sale prices stay visually secondary. */
@media (max-width: 1100px) and (min-width: 768px) {
    body .fl-post-grid > .fl-post-column {
        width: 50% !important;
    }
    body .fl-post-grid .fl-post-grid-post.product,
    .woocommerce ul.products li.product,
    .fl-module-woocommerce .woocommerce ul.products li.product,
    .related.products ul.products li.product,
    .woocommerce-page ul.products li.product {
        height: auto !important;
        min-height: 0 !important;
    }
}
@media (max-width: 767px) {
    body .fl-post-grid .fl-post-grid-post.product,
    .woocommerce ul.products li.product,
    .fl-module-woocommerce .woocommerce ul.products li.product,
    .related.products ul.products li.product,
    .woocommerce-page ul.products li.product {
        height: auto !important;
        min-height: 0 !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
        display: flex !important;
        flex: 1 1 auto !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 14px 12px 14px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .wse-product-card-cats {
        margin-bottom: 4px !important;
        gap: 6px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta {
        display: flex !important;
        flex-direction: column !important;
        gap: 2px !important;
        margin-top: 4px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
        position: static !important;
        left: auto !important;
        bottom: auto !important;
        margin: 0 !important;
        font-size: 19px !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button {
        position: static !important;
        right: auto !important;
        bottom: auto !important;
        align-self: flex-end !important;
        margin: 8px 0 0 auto !important;
    }
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
        position: relative !important;
    }
    .wse-product-card-cats {
        margin-bottom: 4px !important;
        gap: 6px !important;
    }
    .wse-product-card-footer {
        margin-top: 8px !important;
        padding-top: 0 !important;
        gap: 8px !important;
    }
    .wse-product-card-price {
        font-size: 19px !important;
    }
    .wse-product-card-price .price del,
    .wse-product-card-price .price del .amount,
    .woocommerce ul.products li.product .price del,
    .woocommerce ul.products li.product .price del .amount,
    .related.products .price del,
    .related.products .price del .amount,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del .amount,
    .woocommerce div.product p.price del,
    .woocommerce div.product span.price del,
    .woocommerce .widget .price del {
        font-size: 12px !important;
        line-height: 1.1 !important;
    }
}
@media (min-width: 768px) {
    .wse-product-card-price .price del,
    .wse-product-card-price .price del .amount,
    .woocommerce ul.products li.product .price del,
    .woocommerce ul.products li.product .price del .amount,
    .related.products .price del,
    .related.products .price del .amount,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del .amount,
    .woocommerce div.product p.price del,
    .woocommerce div.product span.price del,
    .woocommerce .widget .price del {
        font-size: 14px !important;
        line-height: 1.1 !important;
    }
}

/* Mobile parity: homepage/related WooCommerce widgets use the same outer
   width and edge spacing as Beaver Builder shop/category archive cards. */
@media (max-width: 767px) {
    .fl-module-woocommerce .woocommerce ul.products,
    .woocommerce .widget ul.products,
    .woocommerce-page .widget ul.products,
    .related.products ul.products {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        column-gap: 0 !important;
        row-gap: 18px !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 12px 24px !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    .fl-module-woocommerce .woocommerce ul.products li.product,
    .woocommerce .widget ul.products li.product,
    .woocommerce-page .widget ul.products li.product,
    .related.products ul.products li.product {
        float: none !important;
        clear: both !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 8px 14px !important;
        box-sizing: border-box !important;
    }

    .fl-module-woocommerce .woocommerce ul.products li.product a img,
    .woocommerce .widget ul.products li.product a img,
    .woocommerce-page .widget ul.products li.product a img,
    .related.products ul.products li.product a img {
        width: calc(100% + 16px) !important;
        max-width: none !important;
        height: 175px !important;
        margin: 0 -8px 14px !important;
        padding: 12px !important;
        box-sizing: border-box !important;
    }

    .fl-module-woocommerce .woocommerce ul.products li.product .wse-product-card-cats,
    .woocommerce .widget ul.products li.product .wse-product-card-cats,
    .woocommerce-page .widget ul.products li.product .wse-product-card-cats,
    .related.products ul.products li.product .wse-product-card-cats {
        margin-bottom: 0 !important;
        gap: 6px !important;
    }

    .fl-module-woocommerce .woocommerce ul.products li.product .wse-product-card-footer,
    .woocommerce .widget ul.products li.product .wse-product-card-footer,
    .woocommerce-page .widget ul.products li.product .wse-product-card-footer,
    .related.products ul.products li.product .wse-product-card-footer {
        margin-top: 0 !important;
        padding-top: 12px !important;
        gap: 8px !important;
    }
}


/* Mobile archive cards use one full-width column; slightly reduce side margins
   across archives and WooCommerce widgets so cards have more usable width. */
@media (max-width: 767px) {
    body .fl-post-grid {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        column-gap: 0 !important;
        row-gap: 18px !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 12px 24px !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    body .fl-post-grid > .fl-post-column {
        display: block !important;
        float: none !important;
        clear: both !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    body .fl-post-grid .fl-post-grid-post.product {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-image img {
        width: 100% !important;
        max-width: 100% !important;
        height: 175px !important;
        min-height: 175px !important;
        flex: 0 0 175px !important;
        margin: 0 !important;
        padding: 12px !important;
        box-sizing: border-box !important;
        object-fit: contain !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
        display: flex !important;
        flex: 1 1 auto !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-content: flex-start !important;
        align-items: center !important;
        column-gap: 8px !important;
        row-gap: 0 !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 14px 12px 14px !important;
        box-sizing: border-box !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-title,
    body .fl-post-grid .fl-post-grid-post.product .wse-product-card-cats {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-title {
        margin: 0 0 10px !important;
        font-size: 16px !important;
        line-height: 1.32 !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .wse-product-card-cats {
        margin: 0 0 4px !important;
        gap: 6px !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-meta-terms,
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .star-rating {
        display: none !important;
    }

    /* Flatten the metadata wrapper so price and View are siblings in one flex row. */
    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta {
        display: contents !important;
        position: static !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
        position: static !important;
        inset: auto !important;
        display: flex !important;
        flex: 0 1 auto !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        width: auto !important;
        max-width: calc(100% - 76px) !important;
        min-width: 0 !important;
        margin: 8px 0 0 !important;
        padding: 0 !important;
        font-size: 19px !important;
        line-height: 1.15 !important;
        text-align: left !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del {
        display: block !important;
        margin: 0 0 2px !important;
        font-size: 12px !important;
        line-height: 1.1 !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 1em !important;
        line-height: 1.15 !important;
        text-decoration: none !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button {
        position: static !important;
        inset: auto !important;
        display: block !important;
        flex: 0 0 auto !important;
        align-self: center !important;
        margin: 8px 0 0 auto !important;
        padding: 0 !important;
    }

    body .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button .wse-product-card-view {
        display: inline-block !important;
        margin: 0 !important;
        font-size: 14px !important;
        white-space: nowrap !important;
    }
}


/* WSE shop filter redesign draft */
.wse-shop-filter-bar{margin:0 0 24px;padding:18px 20px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 4px 16px rgba(20,35,55,.05)}
.wse-shop-filter-top{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:12px}
.wse-shop-filter-toggle{display:none;align-items:center;gap:9px;border:1px solid #d8e4f0;border-radius:10px;background:#f7fbff;color:#17334b;font-weight:700;padding:11px 14px;cursor:pointer}
.wse-filter-toggle-chevron{margin-left:auto}
.wse-filter-count{color:#536477;font-size:14px;margin-right:auto}
.wse-shop-filter-top .woocommerce-ordering{margin:0 0 0 auto;float:none}
.wse-shop-filter-top .woocommerce-ordering select{min-height:42px;border-radius:9px}
.wse-shop-filter-panel{display:block}
.wse-shop-filter-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.wse-filter-dropdown{position:relative;min-width:0}
.wse-filter-dropdown>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:10px 12px;border:1px solid #d8e1ea;border-radius:10px;color:#18334b;background:#fff;font-size:14px;font-weight:650}
.wse-filter-dropdown>summary::-webkit-details-marker{display:none}
.wse-filter-dropdown>summary:after{content:"⌄";color:#1689df;font-size:18px}
.wse-filter-dropdown[open]>summary{border-color:#1689df;border-bottom-left-radius:0;border-bottom-right-radius:0}
.wse-filter-dropdown-content{max-height:300px;overflow:auto;padding:12px;border:1px solid #1689df;border-top:0;border-radius:0 0 10px 10px;background:#fff}
.wse-filter-dropdown-content .fl-module-widget{margin:0!important;width:100%}
.wse-filter-dropdown-content .fl-module-content{margin:0!important}
.wse-filter-dropdown-content ul{list-style:none;margin:0;padding:0}
.wse-filter-dropdown-content li{margin:0 0 9px;font-size:14px;line-height:1.4}
.wse-filter-dropdown-content li:last-child{margin-bottom:0}
.wse-filter-dropdown-content a{text-decoration:none}
.wse-filter-dropdown-content .widgettitle{display:none!important}
.wse-filter-dropdown-content .price_slider_wrapper{min-width:0}
.wse-filter-dropdown-content input[type=text]{width:100%;margin:4px 0}
.wse-filter-dropdown-content .button{margin-top:8px}
.wse-filter-actions{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin-top:14px}
.wse-filter-reset{color:#426176;font-size:14px}
.wse-filter-apply{border:0;border-radius:9px;background:#1689df;color:#fff;font-weight:700;padding:10px 18px;cursor:pointer}
.wse-active-filter-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.wse-active-filter-pills:not(.has-active-filters){display:none}
.wse-active-filter-pill{display:inline-flex;align-items:center;border-radius:999px;padding:7px 11px;background:#eaf5ff;color:#176fb1;text-decoration:none;font-size:13px;font-weight:600}
.wse-shop-filter-source-hidden{display:none!important}
@media(max-width:1024px){.wse-shop-filter-bar{padding:14px}.wse-shop-filter-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){
.wse-shop-filter-bar{margin:0 0 18px;padding:12px;border-radius:12px}
.wse-shop-filter-top{gap:8px;margin-bottom:0}
.wse-shop-filter-toggle{display:flex;flex:1 1 100%}
.wse-filter-count{margin:0 auto 0 0}
.wse-shop-filter-top .woocommerce-ordering{margin:0 0 0 auto;max-width:58%}
.wse-shop-filter-top .woocommerce-ordering select{max-width:100%;min-height:38px;font-size:13px}
.wse-shop-filter-panel{display:none;padding-top:12px}
.wse-shop-filter-bar.is-open .wse-shop-filter-panel{display:block}
.wse-shop-filter-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.wse-filter-dropdown>summary{min-height:42px;padding:9px;font-size:13px}
.wse-filter-dropdown-content{position:static;max-height:220px;padding:10px}
.wse-filter-actions{position:sticky;bottom:0;background:#fff;padding:10px 0 0}
.wse-active-filter-pills{margin-top:10px}
}
@media(prefers-reduced-motion:reduce){.wse-shop-filter-bar *{scroll-behavior:auto!important;transition:none!important}}


/* WSE filter refinement: desktop dropdowns and mobile slide-in drawer */
.wse-shop-filter-bar,
.wse-shop-filter-bar * { box-sizing: border-box; }
.wse-shop-filter-bar { width:100%; max-width:100%; min-width:0; margin:0 0 24px; padding:20px; border:1px solid #e4eaf1; border-radius:16px; background:#fff; box-shadow:0 5px 22px rgba(20,42,66,.06); overflow:visible; }
.wse-shop-filter-top { display:flex; align-items:center; flex-wrap:wrap; gap:14px; margin:0 0 16px; }
.wse-filter-heading { display:flex; flex-direction:column; gap:3px; margin-right:auto; color:#18334b; }
.wse-filter-heading strong { font-size:17px; line-height:1.25; font-weight:700; }
.wse-filter-eyebrow { color:#1689df; font-size:10px; font-weight:800; letter-spacing:.12em; }
.wse-filter-count { margin:0; color:#64748b; font-size:13px; }
.wse-shop-filter-top .woocommerce-ordering { margin:0 0 0 4px; float:none; }
.wse-shop-filter-top .woocommerce-ordering select { min-height:42px; padding:8px 34px 8px 12px; border:1px solid #dbe4ee; border-radius:9px; background-color:#fff; color:#20364a; font-size:13px; }
.wse-shop-filter-controls { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:start; gap:10px; }
.wse-filter-dropdown { min-width:0; }
.wse-filter-dropdown>summary { min-width:0; min-height:46px; padding:12px 13px; border:1px solid #dbe4ee; border-radius:10px; background:#fbfdff; color:#213a50; font-size:14px; font-weight:650; line-height:1.3; }
.wse-filter-dropdown>summary:after { content:"⌄"; margin-left:8px; flex:0 0 auto; }
.wse-filter-dropdown[open]>summary { border-color:#1689df; border-radius:10px 10px 0 0; background:#f4faff; }
.wse-filter-dropdown-content { padding:14px; border-color:#1689df; border-radius:0 0 10px 10px; box-shadow:0 10px 20px rgba(20,42,66,.08); }
.wse-filter-dropdown-content .fl-module-widget { display:block; width:100%; max-width:100%; }
.wse-filter-dropdown-content ul li { display:flex; align-items:flex-start; gap:8px; margin:0 0 11px; }
.wse-filter-dropdown-content input[type=checkbox],
.wse-filter-dropdown-content input[type=radio] { flex:0 0 auto; margin:3px 2px 0 0; accent-color:#1689df; }
.wse-filter-dropdown-content label { line-height:1.4; }
.wse-filter-actions { margin-top:16px; padding-top:14px; border-top:1px solid #edf1f5; }
.wse-filter-apply { min-height:42px; padding:11px 20px; background:#1689df; box-shadow:0 3px 8px rgba(22,137,223,.18); }
.wse-filter-apply:hover { background:#0876c5; }
.wse-active-filter-pills { margin-top:14px; }
.wse-mobile-filter-tab,.wse-filter-backdrop { display:none; }
@media(max-width:1024px) and (min-width:768px) {
 .wse-shop-filter-bar { padding:16px; }
 .wse-filter-heading { flex:1 1 100%; }
 .wse-shop-filter-controls { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:767px) {
 .wse-shop-filter-bar { width:100%; max-width:100%; margin:0 0 18px; padding:12px; border-radius:12px; box-shadow:0 3px 12px rgba(20,42,66,.05); }
 .wse-shop-filter-top { gap:8px; margin-bottom:0; }
 .wse-filter-heading { flex:1 1 100%; }
 .wse-filter-heading strong { font-size:15px; }
 .wse-filter-count { flex:1 1 100%; font-size:12px; }
 .wse-shop-filter-top .woocommerce-ordering { margin:0; max-width:100%; }
 .wse-shop-filter-top .woocommerce-ordering select { min-height:38px; max-width:100%; font-size:12px; }
 .wse-shop-filter-panel { display:none; }
 .wse-shop-filter-bar.is-open .wse-shop-filter-panel { display:block; }
 .wse-shop-filter-controls { display:grid; grid-template-columns:minmax(0,1fr); gap:0; }
 .wse-filter-dropdown { border-bottom:1px solid #edf1f5; }
 .wse-filter-dropdown>summary { display:none!important; }
 .wse-filter-dropdown-content { display:block!important; max-height:none; overflow:visible; padding:14px 2px; border:0; border-radius:0; box-shadow:none; background:transparent; }
 .wse-filter-dropdown-content .fl-module-widget,.wse-filter-dropdown-content .widget { margin:0!important; }
 .wse-filter-dropdown-content .widgettitle { display:block!important; margin:0 0 10px!important; color:#19364f; font-size:15px; font-weight:750; }
 .wse-filter-dropdown-content ul li { margin-bottom:10px; }
 .wse-filter-actions { position:sticky; bottom:0; z-index:3; margin-top:4px; padding:12px 0 0; background:#fff; }
 .wse-filter-apply { flex:1; }
 .wse-filter-reset { padding:10px 0; }
 .wse-active-filter-pills { margin-top:10px; }
 .wse-mobile-filter-tab { display:flex; position:fixed; z-index:99990; top:48%; right:0; transform:translateY(-50%); flex-direction:column; align-items:center; justify-content:center; gap:7px; width:46px; min-height:108px; padding:12px 8px; border:0; border-radius:12px 0 0 12px; background:#1689df; color:#fff; box-shadow:0 5px 18px rgba(10,55,90,.25); font-size:12px; font-weight:750; letter-spacing:.02em; cursor:pointer; writing-mode:vertical-rl; }
 .wse-mobile-filter-tab span:first-child { font-size:20px; line-height:1; writing-mode:horizontal-tb; }
 .wse-filter-backdrop { display:block; position:fixed; inset:0; z-index:99991; width:100%; height:100%; border:0; padding:0; background:rgba(13,31,48,.48); opacity:0; visibility:hidden; pointer-events:none; }
 .wse-shop-filter-bar.is-open { position:fixed; z-index:99992; top:0; right:0; bottom:0; width:min(88vw,420px); max-width:420px; height:100dvh; max-height:100dvh; margin:0; padding:20px 16px calc(18px + env(safe-area-inset-bottom)); border:0; border-radius:16px 0 0 16px; box-shadow:-12px 0 40px rgba(10,35,55,.2); overflow-y:auto; overflow-x:hidden; background:#fff; }
 .wse-shop-filter-bar.is-open .wse-shop-filter-top { margin-bottom:16px; }
 .wse-shop-filter-bar.is-open .wse-shop-filter-panel { display:block; }
 body.wse-filter-drawer-open { overflow:hidden; }
 body.wse-filter-drawer-open .wse-filter-backdrop { opacity:1; visibility:visible; pointer-events:auto; }
 body.wse-filter-drawer-open .wse-mobile-filter-tab { right:min(88vw,420px); z-index:99993; border-radius:12px 0 0 12px; }
 body.wse-filter-drawer-open .wse-shop-filter-bar.is-open .wse-filter-heading { padding-right:42px; }
}
@media(min-width:768px) {
 .wse-mobile-filter-tab,.wse-filter-backdrop { display:none!important; }
 .wse-shop-filter-panel { display:block!important; }
}


/* Final WSE shop filter polish: reclaim hidden sidebar width, single-row desktop filters, checkbox UI, reliable mobile drawer */
.wse-shop-results-row,
.wse-shop-results-layout { width:100%!important; max-width:100%!important; }
.wse-shop-results-layout { display:flex!important; flex-wrap:wrap!important; }
.wse-shop-results-layout > .wse-shop-results-column { flex:0 0 100%!important; width:100%!important; max-width:100%!important; }
.wse-shop-results-column { min-width:0!important; }
.wse-shop-results-column > .fl-col-content { width:100%!important; max-width:100%!important; }
.wse-shop-results-row > .fl-row-content-wrap,
.wse-shop-results-row .fl-row-content { width:100%!important; max-width:none!important; }
.wse-shop-filter-bar { width:100%!important; max-width:none!important; margin:0 0 16px!important; padding:0!important; border:0!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; overflow:visible!important; }
.wse-shop-filter-top { min-height:42px; display:flex!important; align-items:center!important; flex-wrap:nowrap!important; gap:14px!important; margin:0 0 10px!important; }
.wse-filter-heading { display:none!important; }
.wse-filter-count { flex:0 0 auto!important; margin:0 auto 0 0!important; white-space:nowrap; }
.wse-shop-filter-top .woocommerce-ordering { flex:0 0 auto!important; margin:0!important; }
.wse-shop-filter-top .woocommerce-ordering select { min-height:38px!important; }
.wse-shop-filter-panel { display:block!important; }
.wse-shop-filter-controls { display:grid!important; grid-template-columns:repeat(6,minmax(0,1fr))!important; align-items:start!important; gap:8px!important; }
.wse-filter-dropdown>summary { display:flex!important; min-height:42px!important; padding:10px 11px!important; border-radius:8px!important; background:#fff!important; font-size:13px!important; }
.wse-filter-dropdown[open]>summary { border-radius:8px 8px 0 0!important; }
.wse-filter-dropdown-content { padding:12px!important; border-radius:0 0 8px 8px!important; }
.wse-filter-dropdown-content .widgettitle { display:none!important; }
.wse-filter-dropdown-content ul li { display:block!important; margin:0 0 9px!important; }
.wse-filter-checkbox-label { display:flex!important; align-items:flex-start!important; gap:9px!important; width:100%; cursor:pointer; color:#294157!important; font-size:13px!important; line-height:1.4!important; }
.wse-filter-checkbox { appearance:auto!important; -webkit-appearance:checkbox!important; display:inline-block!important; flex:0 0 16px!important; width:16px!important; height:16px!important; min-width:16px!important; margin:1px 0 0!important; padding:0!important; accent-color:#1689df!important; cursor:pointer; }
.wse-filter-checkbox-text { flex:1 1 auto; min-width:0; }
.wse-filter-checkbox-count { color:#8191a2; font-size:12px; margin-left:auto; white-space:nowrap; }
.wse-filter-dropdown-content .price_slider_wrapper input[type=text] { width:100%!important; min-width:0!important; margin:0 0 8px!important; padding:8px 10px!important; border:1px solid #dbe4ee!important; border-radius:7px!important; }
.wse-filter-dropdown-content .price_slider_amount { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.wse-filter-dropdown-content .price_slider_amount button { grid-column:1/-1; width:100%; }
.wse-filter-actions { margin-top:10px!important; padding-top:10px!important; }
.wse-active-filter-pills { margin-top:8px!important; }
.wse-filter-backdrop { z-index:99980!important; }
.wse-mobile-filter-tab { z-index:99995!important; }
@media(min-width:1025px) {
 .wse-shop-filter-controls { grid-template-columns:repeat(6,minmax(0,1fr))!important; }
 .wse-filter-dropdown>summary { white-space:nowrap; }
 .wse-filter-actions { display:none!important; }
}
@media(min-width:768px) and (max-width:1024px) {
 .wse-shop-filter-controls { grid-template-columns:repeat(3,minmax(0,1fr))!important; }
 .wse-shop-filter-top { flex-wrap:wrap!important; }
}
@media(max-width:767px) {
 .wse-shop-results-row,
 .wse-shop-results-layout { width:100%!important; max-width:100%!important; }
 .wse-shop-filter-bar { display:block!important; width:100%!important; max-width:100%!important; margin:0 0 14px!important; padding:0!important; }
 .wse-shop-filter-top { display:flex!important; flex-wrap:wrap!important; gap:8px!important; margin:0 0 8px!important; }
 .wse-filter-count { flex:1 1 100%!important; }
 .wse-shop-filter-top .woocommerce-ordering { flex:1 1 auto!important; max-width:100%!important; }
 .wse-shop-filter-panel { display:none!important; }
 .wse-shop-filter-bar.is-open { display:block!important; position:fixed!important; z-index:99992!important; top:0!important; right:0!important; bottom:0!important; left:auto!important; width:min(88vw,420px)!important; max-width:420px!important; height:100vh!important; height:100dvh!important; max-height:100vh!important; max-height:100dvh!important; margin:0!important; padding:20px 16px calc(18px + env(safe-area-inset-bottom))!important; border:0!important; border-radius:16px 0 0 16px!important; background:#fff!important; box-shadow:-12px 0 40px rgba(10,35,55,.2)!important; overflow-y:auto!important; overflow-x:hidden!important; }
 .wse-shop-filter-bar.is-open .wse-shop-filter-top { margin-bottom:14px!important; }
 .wse-shop-filter-bar.is-open .wse-filter-heading { display:flex!important; flex:1 1 100%!important; padding-right:34px; }
 .wse-shop-filter-bar.is-open .wse-filter-heading strong { font-size:17px!important; }
 .wse-shop-filter-bar.is-open .wse-shop-filter-panel { display:block!important; }
 .wse-shop-filter-bar.is-open .wse-shop-filter-controls { display:block!important; }
 .wse-shop-filter-bar.is-open .wse-filter-dropdown { border-bottom:1px solid #edf1f5!important; }
 .wse-shop-filter-bar.is-open .wse-filter-dropdown>summary { display:none!important; }
 .wse-shop-filter-bar.is-open .wse-filter-dropdown-content { display:block!important; max-height:none!important; overflow:visible!important; padding:13px 2px!important; border:0!important; border-radius:0!important; box-shadow:none!important; background:transparent!important; }
 .wse-shop-filter-bar.is-open .wse-filter-dropdown-content .widgettitle { display:block!important; margin:0 0 9px!important; color:#19364f!important; font-size:14px!important; font-weight:750!important; }
 .wse-shop-filter-bar.is-open .wse-filter-actions { display:flex!important; position:sticky!important; bottom:0!important; z-index:4!important; margin-top:6px!important; padding:12px 0 0!important; background:#fff!important; }
 .wse-shop-filter-bar.is-open .wse-filter-apply { flex:1 1 auto!important; }
 .wse-shop-filter-bar.is-open .wse-active-filter-pills { display:flex!important; }
 .wse-filter-backdrop { z-index:99990!important; }
 .wse-mobile-filter-tab { z-index:99995!important; }
 body.wse-filter-drawer-open .wse-filter-backdrop { opacity:1!important; visibility:visible!important; pointer-events:auto!important; }
 body.wse-filter-drawer-open .wse-mobile-filter-tab { right:min(88vw,420px)!important; }
}


/* Shop filters refinement v2: compact pills, floating dropdowns, single result count, sort below */
.wse-shop-filter-bar { overflow:visible!important; margin:0 0 18px!important; padding:0!important; border:0!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; }
.wse-shop-filter-top { display:flex!important; align-items:center!important; flex-wrap:nowrap!important; gap:10px!important; min-height:0!important; margin:0 0 8px!important; }
.wse-shop-filter-top .wse-filter-heading { display:none!important; }
.wse-filter-count { margin:0!important; color:#718096!important; font-size:13px!important; white-space:nowrap!important; }
.wse-filter-count-copy { display:none!important; }
.wse-shop-filter-panel { display:block!important; padding:0!important; }
.wse-shop-filter-controls { display:flex!important; flex-wrap:wrap!important; justify-content:flex-start!important; align-items:flex-start!important; gap:10px!important; width:100%!important; }
.wse-filter-dropdown { position:relative!important; flex:0 1 190px!important; width:auto!important; min-width:155px!important; max-width:220px!important; }
.wse-filter-dropdown>summary { position:relative!important; display:flex!important; align-items:center!important; justify-content:space-between!important; gap:12px!important; min-height:42px!important; padding:10px 14px!important; border:1px solid #dbe6f0!important; border-radius:999px!important; background:#fff!important; color:#243e54!important; font-size:13px!important; line-height:1.25!important; font-weight:650!important; cursor:pointer!important; list-style:none!important; }
.wse-filter-dropdown>summary::-webkit-details-marker { display:none!important; }
.wse-filter-dropdown>summary:after { content:""!important; display:block!important; flex:0 0 7px!important; width:7px!important; height:7px!important; margin:0 2px 3px 0!important; border-right:2px solid #1689df!important; border-bottom:2px solid #1689df!important; transform:rotate(45deg)!important; transition:transform .15s ease!important; }
.wse-filter-dropdown[open]>summary:after { transform:rotate(225deg)!important; margin-bottom:-3px!important; }
.wse-filter-dropdown[open]>summary { border-color:#1689df!important; background:#f7fbff!important; }
.wse-filter-dropdown-content { position:absolute!important; top:calc(100% + 7px)!important; left:0!important; z-index:10010!important; display:block!important; width:max(100%,260px)!important; max-width:min(340px,calc(100vw - 32px))!important; max-height:min(360px,65vh)!important; overflow:auto!important; padding:14px!important; border:1px solid #dce7f1!important; border-radius:14px!important; background:#fff!important; box-shadow:0 14px 32px rgba(25,49,72,.16)!important; }
.wse-filter-dropdown:not([open])>.wse-filter-dropdown-content { display:none!important; }
.wse-filter-dropdown-content ul { margin:0!important; padding:0!important; list-style:none!important; }
.wse-filter-dropdown-content ul li { display:block!important; margin:0 0 10px!important; padding:0!important; }
.wse-filter-checkbox-label { display:flex!important; align-items:flex-start!important; gap:9px!important; width:100%!important; margin:0!important; color:#294157!important; font-size:13px!important; line-height:1.4!important; cursor:pointer!important; }
.wse-filter-checkbox { appearance:auto!important; -webkit-appearance:checkbox!important; display:inline-block!important; flex:0 0 16px!important; width:16px!important; height:16px!important; min-width:16px!important; margin:2px 0 0!important; padding:0!important; accent-color:#1689df!important; cursor:pointer!important; }
.wse-filter-checkbox-text { flex:1 1 auto!important; min-width:0!important; }
.wse-filter-checkbox-count { flex:0 0 auto!important; margin-left:auto!important; color:#7b8da0!important; font-size:12px!important; white-space:nowrap!important; }
.wse-filter-sort-row { display:flex!important; align-items:center!important; justify-content:flex-end!important; gap:10px!important; margin:12px 0 0!important; padding:0!important; }
.wse-filter-sort-label { color:#718096!important; font-size:13px!important; }
.wse-filter-sort-row .woocommerce-ordering { float:none!important; margin:0!important; }
.wse-filter-sort-row .woocommerce-ordering select { min-height:38px!important; padding:8px 32px 8px 12px!important; border:1px solid #dbe6f0!important; border-radius:10px!important; background-color:#fff!important; font-size:13px!important; }
.wse-filter-actions { display:none!important; }
.wse-price-buckets { list-style:none!important; margin:0!important; padding:0!important; }
.wse-price-buckets li { margin:0 0 12px!important; }
@media (min-width:768px) {
 .wse-shop-filter-top .woocommerce-ordering { display:none!important; }
 .wse-shop-filter-controls { padding-right:0!important; }
 .wse-filter-dropdown[open] { z-index:10011!important; }
}
@media (min-width:768px) and (max-width:1024px) {
 .wse-filter-dropdown { flex-basis:170px!important; min-width:150px!important; max-width:205px!important; }
}
@media (max-width:767px) {
 .wse-shop-filter-bar { margin:0 0 14px!important; padding:0!important; }
 .wse-shop-filter-top { flex-wrap:wrap!important; }
 .wse-shop-filter-top .wse-filter-count { flex:1 1 100%!important; }
 .wse-shop-filter-controls { display:flex!important; flex-direction:column!important; gap:0!important; }
 .wse-filter-dropdown { position:relative!important; flex:1 1 auto!important; width:100%!important; max-width:none!important; min-width:0!important; }
 .wse-shop-filter-bar.is-open .wse-filter-dropdown>summary { display:none!important; }
 .wse-shop-filter-bar.is-open .wse-filter-dropdown-content { position:static!important; display:block!important; width:100%!important; max-width:none!important; max-height:none!important; overflow:visible!important; padding:13px 2px!important; border:0!important; border-bottom:1px solid #edf1f5!important; border-radius:0!important; box-shadow:none!important; background:transparent!important; }
 .wse-shop-filter-bar.is-open .wse-filter-dropdown-content .widgettitle { display:block!important; margin:0 0 9px!important; color:#19364f!important; font-size:14px!important; font-weight:750!important; }
 .wse-shop-filter-bar.is-open .wse-filter-sort-row { display:flex!important; justify-content:space-between!important; position:sticky!important; bottom:0!important; padding:12px 0!important; background:#fff!important; }
 .wse-shop-filter-bar.is-open .wse-filter-actions { display:flex!important; }
}

/* Filter/sort alignment and selected-filter row refinement v3 */
@media (min-width:1200px) {
 .wse-shop-filter-controls { display:flex!important; flex-wrap:nowrap!important; align-items:stretch!important; gap:9px!important; }
 .wse-filter-dropdown { flex:1 1 0!important; min-width:0!important; max-width:240px!important; }
 .wse-filter-dropdown>summary { width:100%!important; white-space:nowrap!important; }
 .wse-filter-sort-row { flex:0 0 205px!important; display:flex!important; flex-direction:column!important; align-items:stretch!important; justify-content:center!important; gap:5px!important; margin:0 0 0 7px!important; padding:0 0 0 16px!important; border-left:1px solid #e1eaf2!important; }
 .wse-filter-sort-label { display:block!important; line-height:1.2!important; }
 .wse-filter-sort-row .woocommerce-ordering { width:100%!important; max-width:100%!important; }
 .wse-filter-sort-row .woocommerce-ordering select { width:100%!important; max-width:100%!important; }
}
@media (min-width:768px) and (max-width:1199px) {
 .wse-shop-filter-controls { display:flex!important; flex-wrap:wrap!important; align-items:flex-start!important; gap:9px!important; }
 .wse-filter-dropdown { flex:0 1 165px!important; min-width:145px!important; max-width:190px!important; }
 .wse-filter-sort-row { flex:0 0 190px!important; display:flex!important; flex-direction:column!important; align-items:stretch!important; gap:5px!important; margin:0 0 0 5px!important; padding:0 0 0 14px!important; border-left:1px solid #e1eaf2!important; }
 .wse-filter-sort-row .woocommerce-ordering,.wse-filter-sort-row .woocommerce-ordering select { width:100%!important; max-width:100%!important; }
}
.wse-active-filter-pills { display:flex!important; align-items:center!important; flex-wrap:wrap!important; gap:8px!important; margin:12px 0 0!important; padding:0!important; }
.wse-active-filter-pills:not(.has-active-filters) { display:none!important; }
.wse-active-filter-heading { flex:0 0 auto!important; margin-right:3px!important; color:#425970!important; font-size:13px!important; font-weight:700!important; }
.wse-active-filter-pill { margin:0!important; padding:6px 10px!important; border:1px solid #dcecf9!important; border-radius:999px!important; background:#eef7ff!important; color:#1679bf!important; line-height:1.25!important; }
@media (max-width:767px) {
 .wse-shop-filter-controls { display:flex!important; flex-direction:column!important; gap:0!important; }
 .wse-filter-sort-row { display:flex!important; flex-direction:column!important; align-items:stretch!important; gap:5px!important; margin:12px 0 0!important; padding:12px 0 0!important; border-left:0!important; border-top:1px solid #e1eaf2!important; }
 .wse-active-filter-pills { align-items:flex-start!important; margin-top:10px!important; }
 .wse-active-filter-heading { flex:0 0 100%!important; }
}

/* Mobile filter drawer correction: keep filters collapsed off-canvas until requested */
.wse-filter-drawer-close { display:none; }
@media (max-width:767px) {
 body .wse-shop-filter-bar:not(.is-open) { display:none!important; }
 body .wse-shop-filter-bar:not(.is-open) .wse-shop-filter-panel { display:none!important; }
 body .wse-shop-filter-bar:not(.is-open) .wse-shop-filter-controls { display:none!important; }
 body .wse-shop-filter-bar.is-open .wse-shop-filter-top { display:flex!important; align-items:flex-start!important; justify-content:space-between!important; gap:12px!important; padding:0 0 14px!important; margin:0 0 4px!important; border-bottom:1px solid #e7eef5!important; }
 body .wse-shop-filter-bar.is-open .wse-filter-heading { display:flex!important; flex:1 1 auto!important; min-width:0!important; flex-direction:column!important; gap:4px!important; padding:0!important; }
 body .wse-shop-filter-bar.is-open .wse-filter-eyebrow { color:#1689df!important; font-size:10px!important; font-weight:800!important; letter-spacing:.09em!important; }
 body .wse-shop-filter-bar.is-open .wse-filter-heading strong { color:#19364f!important; font-size:19px!important; line-height:1.25!important; }
 body .wse-filter-drawer-close { display:none; align-items:center!important; justify-content:center!important; flex:0 0 38px!important; width:38px!important; height:38px!important; margin:0!important; padding:0!important; border:1px solid #dbe7f2!important; border-radius:50%!important; background:#f5f9fd!important; color:#19364f!important; font-size:27px!important; line-height:1!important; cursor:pointer!important; }
 body .wse-shop-filter-bar.is-open .wse-filter-drawer-close { display:flex!important; }
 body .wse-shop-filter-bar.is-open .wse-shop-filter-panel { display:block!important; }
 body .wse-shop-filter-bar.is-open .wse-shop-filter-controls { display:block!important; }
 body .wse-shop-filter-bar.is-open .wse-filter-dropdown { display:block!important; width:100%!important; max-width:none!important; margin:0!important; padding:0!important; }
 body .wse-shop-filter-bar.is-open .wse-filter-dropdown-content { width:100%!important; max-width:none!important; box-sizing:border-box!important; }
 body .wse-shop-filter-bar.is-open .wse-filter-dropdown-content ul { margin:0!important; padding:0!important; list-style:none!important; }
 body .wse-shop-filter-bar.is-open .wse-filter-checkbox-label { display:flex!important; align-items:center!important; min-height:36px!important; gap:10px!important; }
 body .wse-shop-filter-bar.is-open .wse-filter-actions { display:flex!important; gap:12px!important; }
 body .wse-shop-filter-bar.is-open .wse-filter-apply { min-height:44px!important; border-radius:10px!important; }
 body .wse-shop-filter-bar.is-open .wse-filter-reset { display:inline-flex!important; align-items:center!important; }
 body.wse-filter-drawer-open { overflow:hidden!important; }
 body.wse-filter-drawer-open .wse-mobile-filter-tab { display:none!important; }
}

/* WSE catalogue redesign: classic left filter sidebar + full-width bordered product grid */
.wse-catalog-layout {
 display:flex!important; flex-wrap:nowrap!important; align-items:flex-start!important; gap:22px!important;
 width:100%!important; max-width:100%!important; margin-left:0!important; margin-right:0!important;
}
.wse-catalog-layout > .wse-catalog-sidebar-column { float:none!important; flex:0 0 22%!important; width:22%!important; max-width:22%!important; min-width:0!important; margin:0!important; padding:0!important; }
.wse-catalog-layout > .wse-catalog-results-column { float:none!important; flex:1 1 0!important; width:auto!important; max-width:none!important; min-width:0!important; margin:0!important; padding:0!important; }
.wse-catalog-sidebar-column > .fl-col-content,.wse-catalog-results-column > .fl-col-content { width:100%!important; min-width:0!important; }
.wse-catalog-sidebar-column .fl-module-widget,.wse-catalog-sidebar-column .fl-module-widget > .fl-module-content { margin:0!important; }
.wse-catalog-sidebar-column .wse-sidebar-filter-widget { margin:0 0 12px!important; padding:0!important; border:1px solid #dce5ee!important; border-radius:10px!important; overflow:hidden!important; background:#fff!important; }
.wse-catalog-sidebar-column .widgettitle { display:block!important; margin:0!important; padding:13px 14px!important; border-bottom:1px solid #e6edf4!important; background:#f7fafd!important; color:#213d54!important; font-size:14px!important; font-weight:750!important; line-height:1.25!important; }
.wse-sidebar-filter-toggle { display:flex!important; align-items:center!important; justify-content:space-between!important; gap:12px!important; width:100%!important; min-height:0!important; margin:0!important; padding:0!important; border:0!important; background:transparent!important; color:inherit!important; font:inherit!important; text-align:left!important; cursor:pointer!important; }
.wse-sidebar-chevron { display:none; width:8px; height:8px; flex:0 0 8px; border-right:2px solid #1689df; border-bottom:2px solid #1689df; transform:rotate(45deg); }
.wse-sidebar-filter-content { display:block!important; padding:13px 14px!important; }
.wse-catalog-sidebar-column .wse-sidebar-filter-content ul { margin:0!important; padding:0!important; list-style:none!important; }
.wse-catalog-sidebar-column .wse-sidebar-filter-content li { display:block!important; margin:0 0 11px!important; padding:0!important; }
.wse-catalog-sidebar-column .wse-sidebar-filter-content li:last-child { margin-bottom:0!important; }
.wse-filter-checkbox-label { display:flex!important; align-items:flex-start!important; gap:9px!important; width:100%!important; margin:0!important; color:#334b60!important; font-size:13px!important; line-height:1.4!important; cursor:pointer!important; }
.wse-filter-checkbox { appearance:auto!important; -webkit-appearance:checkbox!important; display:inline-block!important; flex:0 0 16px!important; width:16px!important; height:16px!important; min-width:16px!important; margin:2px 0 0!important; padding:0!important; accent-color:#1689df!important; cursor:pointer!important; }
.wse-filter-checkbox-text { flex:1 1 auto!important; min-width:0!important; }
.wse-filter-checkbox-count { flex:0 0 auto!important; margin-left:auto!important; color:#7b8da0!important; font-size:12px!important; white-space:nowrap!important; }
.wse-catalog-sidebar-column .price_slider_wrapper { display:none!important; }
.wse-price-buckets { margin:0!important; padding:0!important; list-style:none!important; }
.wse-price-buckets li { margin:0 0 11px!important; }
.wse-price-buckets li:last-child { margin-bottom:0!important; }
.wse-catalog-sidebar-column .wse-sidebar-filter-content .button { display:none!important; }
.wse-catalog-results-column .fl-post-grid { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; align-items:stretch!important; gap:18px!important; width:100%!important; max-width:100%!important; margin:0!important; padding:0!important; box-sizing:border-box!important; }
.wse-catalog-results-column .fl-post-grid > .fl-post-column { display:block!important; float:none!important; width:auto!important; max-width:none!important; min-width:0!important; margin:0!important; padding:0!important; box-sizing:border-box!important; }
.wse-catalog-results-column .fl-post-grid .fl-post-grid-post.product { width:100%!important; min-width:0!important; min-height:0!important; height:100%!important; margin:0!important; border:1px solid #d8e4ee!important; border-radius:12px!important; overflow:hidden!important; box-shadow:0 2px 8px rgba(24,52,76,.04)!important; }
.wse-catalog-results-column .fl-post-grid .fl-post-grid-post.product:hover { border-color:#1689df!important; box-shadow:0 8px 22px rgba(24,52,76,.12)!important; transform:translateY(-2px)!important; }
.wse-catalog-results-column .wse-product-gallery { position:relative!important; display:flex!important; align-items:center!important; justify-content:center!important; width:100%!important; height:205px!important; overflow:hidden!important; border-bottom:1px solid #e7edf3!important; background:#fff!important; }
.wse-catalog-results-column .wse-product-gallery .onsale { position:absolute!important; top:12px!important; left:12px!important; z-index:4!important; margin:0!important; }
.wse-catalog-results-column .wse-product-gallery-track { display:flex!important; width:100%!important; height:100%!important; overflow-x:auto!important; overflow-y:hidden!important; scroll-snap-type:x mandatory!important; scrollbar-width:none!important; }
.wse-catalog-results-column .wse-product-gallery-track::-webkit-scrollbar { display:none!important; }
.wse-catalog-results-column .wse-product-gallery-slide { display:flex!important; flex:0 0 100%!important; align-items:center!important; justify-content:center!important; width:100%!important; height:100%!important; scroll-snap-align:center!important; }
.wse-catalog-results-column .wse-product-gallery-slide img { display:block!important; width:100%!important; height:100%!important; max-width:none!important; margin:0!important; padding:16px!important; object-fit:contain!important; box-sizing:border-box!important; }
.wse-catalog-results-column .wse-gallery-arrow { position:absolute!important; top:50%!important; z-index:3!important; display:flex!important; align-items:center!important; justify-content:center!important; width:28px!important; height:28px!important; padding:0!important; border:1px solid #dce5ee!important; border-radius:50%!important; background:rgba(255,255,255,.94)!important; color:#28465e!important; font-size:18px!important; line-height:1!important; transform:translateY(-50%)!important; cursor:pointer!important; }
.wse-catalog-results-column .wse-gallery-prev { left:8px!important; } .wse-catalog-results-column .wse-gallery-next { right:8px!important; }
.wse-catalog-results-column .wse-gallery-dots { position:absolute!important; left:0!important; right:0!important; bottom:7px!important; display:flex!important; justify-content:center!important; gap:5px!important; pointer-events:none!important; }
.wse-catalog-results-column .wse-gallery-dot { width:5px!important; height:5px!important; border-radius:50%!important; background:#b7c7d5!important; }
.wse-catalog-results-column .wse-gallery-dot.is-active { width:15px!important; border-radius:5px!important; background:#1689df!important; }
.wse-catalog-results-column .fl-post-grid-text { padding:15px 15px 14px!important; }
.wse-catalog-results-column .fl-post-grid-title { margin:0 0 9px!important; font-size:17px!important; line-height:1.32!important; }
.wse-catalog-results-column .fl-post-grid-meta-terms { display:none!important; }
.wse-catalog-results-column .wse-product-card-cats { margin:0 0 12px!important; }
.wse-catalog-results-column .fl-post-grid-woo-meta { gap:8px!important; }
.wse-catalog-results-column .fl-post-grid-woo-meta .price { position:static!important; margin:0!important; font-size:21px!important; }
.wse-catalog-results-column .fl-post-grid-woo-button { position:static!important; display:flex!important; gap:8px!important; margin:14px 0 0!important; }
.wse-catalog-results-column .wse-product-card-actions { display:flex!important; gap:8px!important; margin-top:12px!important; }
.wse-catalog-results-column .wse-product-card-actions a { display:flex!important; flex:1 1 50%!important; align-items:center!important; justify-content:center!important; min-height:38px!important; margin:0!important; padding:8px 9px!important; border:1px solid #1689df!important; border-radius:7px!important; background:#1689df!important; color:#fff!important; font-size:12px!important; font-weight:700!important; line-height:1.2!important; text-align:center!important; text-decoration:none!important; }
.wse-catalog-results-column .wse-product-card-actions .wse-product-card-view { background:#fff!important; color:#1689df!important; }
.wse-catalog-results-column .fl-post-grid-woo-button .wse-product-card-view { display:none!important; }
.wse-catalog-results-column .wse-product-card-actions .wse-product-card-view { display:flex!important; }
/* Dense, consistent archive cards; preserve equal-height rows. */
@media (min-width:768px) {
 body.woocommerce-shop .fl-post-grid .fl-post-grid-title,
 body.tax-product_cat .fl-post-grid .fl-post-grid-title {
  min-height:2.7em!important; max-height:2.7em!important;
  -webkit-line-clamp:2!important; margin:0 0 8px!important;
 }
 body.woocommerce-shop .fl-post-grid .wse-product-card-cats,
 body.tax-product_cat .fl-post-grid .wse-product-card-cats {
  min-height:32px!important; max-height:32px!important;
  margin:0 0 8px!important;
 }
 body.woocommerce-shop .fl-post-grid .wse-product-card-specs,
 body.tax-product_cat .fl-post-grid .wse-product-card-specs {
  min-height:94px!important; max-height:94px!important;
  margin:0 0 8px!important;
 }
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-text,
body.tax-product_cat .fl-post-grid .fl-post-grid-text {
 padding:12px 14px 0!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-meta,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-meta {
 margin-top:auto!important; padding-top:0!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-meta .price,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-meta .price {
 min-height:0!important; margin:0 0 10px!important; gap:2px!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-button,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-button {
 margin:0 -14px!important; width:calc(100% + 28px)!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions,
body.tax-product_cat .fl-post-grid .wse-product-card-actions {
 display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important;
 align-items:stretch!important; margin:0!important; padding:0!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions--view-only,
body.tax-product_cat .fl-post-grid .wse-product-card-actions--view-only {
 grid-template-columns:minmax(0,1fr)!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions .wse-product-card-view,
body.tax-product_cat .fl-post-grid .wse-product-card-actions .wse-product-card-view {
 display:flex!important; align-items:center!important; justify-content:center!important;
 height:48px!important; min-height:48px!important; width:100%!important;
 margin:0!important; padding:0 10px!important; line-height:1!important;
 position:static!important; transform:none!important;
}
/* Catalogue card rhythm: consistent title, tags, specifications and footer. */
@media (min-width:768px) {
 body.woocommerce-shop .fl-post-grid .fl-post-grid-title,
 body.tax-product_cat .fl-post-grid .fl-post-grid-title {
  min-height:4.05em!important; max-height:4.05em!important;
  overflow:hidden!important; display:-webkit-box!important;
  -webkit-line-clamp:3!important; -webkit-box-orient:vertical!important;
  margin-bottom:10px!important;
 }
 body.woocommerce-shop .fl-post-grid .wse-product-card-cats,
 body.tax-product_cat .fl-post-grid .wse-product-card-cats {
  min-height:48px!important; max-height:48px!important;
  align-content:flex-start!important; overflow:hidden!important;
 }
 body.woocommerce-shop .fl-post-grid .wse-product-card-specs,
 body.tax-product_cat .fl-post-grid .wse-product-card-specs {
  min-height:116px!important; max-height:116px!important;
  overflow:hidden!important; margin:0 0 12px!important;
 }
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-meta .price,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-meta .price {
 display:flex!important; flex-direction:column!important; align-items:flex-start!important;
 justify-content:flex-end!important; gap:4px!important;
 min-height:58px!important; margin:0 0 10px!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-meta .price del,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-meta .price del {
 display:block!important; order:0!important; font-size:13px!important;
 line-height:1.2!important; margin:0!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-meta .price ins,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-meta .price ins {
 display:block!important; order:1!important; font-size:23px!important;
 line-height:1.2!important; margin:0!important; text-decoration:none!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions a,
body.tax-product_cat .fl-post-grid .wse-product-card-actions a {
 display:flex!important; align-items:center!important; justify-content:center!important;
 line-height:1.25!important; min-height:48px!important; padding:10px 8px!important;
 font-size:14px!important; font-weight:700!important; vertical-align:middle!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions .wse-product-card-view,
body.tax-product_cat .fl-post-grid .wse-product-card-actions .wse-product-card-view {
 text-align:center!important; margin:0!important; padding:10px 8px!important;
}

/* Compact, data-backed highlights; never force placeholder bullets. */
body.woocommerce-shop .fl-post-grid .wse-product-card-specs,
body.tax-product_cat .fl-post-grid .wse-product-card-specs {
 display:block!important; list-style:disc outside!important;
 margin:12px 0 14px!important; padding:0 0 0 18px!important;
 color:#4b6174!important; font-size:12px!important; line-height:1.55!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-specs li,
body.tax-product_cat .fl-post-grid .wse-product-card-specs li {
 display:list-item!important; margin:0 0 4px!important; padding:0!important;
 overflow-wrap:anywhere!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-specs strong,
body.tax-product_cat .fl-post-grid .wse-product-card-specs strong {
 font-weight:650!important; color:#233a4e!important;
}
/* HP-style pricing and action order, scoped to catalogue cards. */
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
 display:flex!important; flex-direction:column!important; align-items:flex-start!important;
 gap:3px!important; line-height:1.2!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del {
 display:block!important; order:0!important; margin:0!important;
 font-size:14px!important; font-weight:400!important; color:#8296a7!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins {
 display:block!important; order:1!important; margin:0!important;
 font-size:23px!important; font-weight:800!important; color:#182d41!important;
 text-decoration:none!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions {
 display:grid!important; grid-template-columns:1fr 1fr!important;
 gap:0!important; align-items:stretch!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions .wse-product-card-view,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions .wse-product-card-view {
 order:0!important; grid-column:1!important; background:#fff!important;
 color:#147dd0!important; border:1px solid #d9e2ea!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions .add_to_cart_button,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions .add_to_cart_button {
 order:1!important; grid-column:2!important; background:#1689df!important;
 color:#fff!important; border:1px solid #1689df!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions a,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions a {
 font-size:14px!important; font-weight:700!important; line-height:1.3!important;
 min-height:48px!important; text-transform:none!important;
}
/* Catalogue finishing overrides: keep product pricing visible and actions on the card edge. */
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text {
 display:flex!important; flex-direction:column!important;
 flex:1 1 auto!important; padding:16px 14px 0!important;
 margin:0!important; min-height:0!important; height:auto!important;
 overflow:visible!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta {
 display:flex!important; flex-direction:column!important; flex:0 0 auto!important;
 position:static!important; margin:auto 0 0!important;
 padding:12px 0 10px!important; min-height:0!important; height:auto!important;
 visibility:visible!important; opacity:1!important; overflow:visible!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
 display:block!important; position:static!important; float:none!important;
 left:auto!important; right:auto!important; bottom:auto!important; top:auto!important;
 margin:0!important; padding:0!important; width:auto!important;
 height:auto!important; min-height:0!important; line-height:1.25!important;
 color:#172b3c!important; visibility:visible!important; opacity:1!important;
 font-size:21px!important; font-weight:750!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del {
 display:inline-block!important; margin:0 8px 0 0!important; vertical-align:baseline!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins {
 display:inline-block!important; margin:0!important; vertical-align:baseline!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button {
 display:block!important; position:static!important; flex:0 0 auto!important;
 width:calc(100% + 28px)!important; max-width:none!important;
 margin:0 -14px!important; padding:0!important;
 bottom:auto!important; right:auto!important; height:auto!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions {
 display:grid!important; grid-template-columns:1fr 1fr!important;
 gap:0!important; margin:0!important; padding:0!important; width:100%!important;
}
body.woocommerce-shop .wse-catalog-layout,
body.tax-product_cat .wse-catalog-layout {
 margin-top:0!important; padding-top:0!important; row-gap:0!important;
}
body.woocommerce-shop .wse-catalog-results-column .fl-post-grid,
body.tax-product_cat .wse-catalog-results-column .fl-post-grid {
 gap:0!important; margin:0!important; padding:0!important;
}
.wse-catalog-toolbar .woocommerce-result-count {
 grid-column:2!important; justify-self:center!important; text-align:center!important;
}
.wse-catalog-toolbar .woocommerce-ordering {
 grid-column:3!important; justify-self:end!important; text-align:right!important;
}
.wse-catalog-toolbar .woocommerce-ordering select {
 border:1px solid #d5e1ec!important; border-radius:4px!important;
 padding:10px 34px 10px 14px!important; background-color:#fff!important;
 min-height:44px!important; min-width:215px!important;
}
@media(max-width:767px) {
 .wse-catalog-toolbar { display:flex!important; flex-wrap:wrap!important; justify-content:space-between!important; padding:10px 12px!important; }
 .wse-catalog-toolbar .woocommerce-result-count { text-align:left!important; }
 .wse-catalog-toolbar .woocommerce-ordering select { min-width:155px!important; }
}
/* HP-inspired catalogue refinements: compact toolbar, seamless filters, visible price and flush actions. */
.wse-catalog-toolbar {
 display:grid!important; grid-template-columns:1fr auto 1fr!important; align-items:center!important;
 gap:16px!important; width:100%!important; margin:0!important;
 padding:12px 24px!important; border-top:1px solid #e1e6ec!important;
 border-bottom:1px solid #e1e6ec!important; box-sizing:border-box!important;
}
.wse-catalog-toolbar .woocommerce-result-count,
.wse-catalog-toolbar .woocommerce-ordering {
 float:none!important; width:auto!important; margin:0!important; padding:0!important;
}
.wse-catalog-toolbar .woocommerce-ordering select { margin:0!important; min-width:190px!important; }
.wse-catalog-sidebar-column .wse-sidebar-filter-widget {
 margin:0!important; border-radius:0!important; border-bottom:0!important;
 box-shadow:none!important;
}
.wse-catalog-sidebar-column .wse-sidebar-filter-widget:last-child { border-bottom:1px solid #dce5ee!important; }
.wse-catalog-sidebar-column .widgettitle { border-radius:0!important; }
body.woocommerce-shop .fl-post-grid .fl-post-grid-text,
body.tax-product_cat .fl-post-grid .fl-post-grid-text {
 padding:14px 14px 0!important; min-height:0!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-meta,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-meta {
 display:flex!important; flex-direction:column!important; gap:4px!important;
 position:static!important; visibility:visible!important; opacity:1!important;
 margin-top:auto!important; padding:12px 0!important; height:auto!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-meta .price,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-meta .price {
 display:block!important; position:static!important; visibility:visible!important;
 opacity:1!important; color:#172b3c!important; margin:0!important;
 padding:0!important; line-height:1.2!important; font-size:21px!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-button,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-button {
 display:block!important; position:static!important; visibility:visible!important;
 margin:0 -14px!important; padding:0!important; width:calc(100% + 28px)!important;
 bottom:auto!important; right:auto!important; height:auto!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions,
body.tax-product_cat .fl-post-grid .wse-product-card-actions {
 margin:0!important; padding:0!important; gap:0!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions a,
body.tax-product_cat .fl-post-grid .wse-product-card-actions a {
 min-height:46px!important; border-radius:0!important; margin:0!important;
}
@media(max-width:767px) {
 .wse-catalog-toolbar { flex-wrap:wrap!important; }
 .wse-catalog-sidebar-column .wse-sidebar-filter-widget { border-radius:0!important; margin:0!important; }
}
/* Prevent Beaver Builder clearfix pseudo-elements from consuming the first CSS-grid cell. */
body.woocommerce-shop .fl-post-grid::before,
body.woocommerce-shop .fl-post-grid::after,
body.tax-product_cat .fl-post-grid::before,
body.tax-product_cat .fl-post-grid::after { content:none!important; display:none!important; }
/* Catalogue grid corrective pass: handle both Shop and product-category builder structures. */
body.woocommerce-shop .fl-post-grid,
body.tax-product_cat .fl-post-grid {
 display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:0!important; width:100%!important; max-width:100%!important;
 margin:0!important; padding:0!important; align-items:stretch!important;
}
body.woocommerce-shop .fl-post-grid > .fl-post-column,
body.tax-product_cat .fl-post-grid > .fl-post-column {
 display:block!important; float:none!important; clear:none!important;
 width:auto!important; max-width:none!important; min-width:0!important;
 margin:0!important; padding:0!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product {
 display:flex!important; flex-direction:column!important;
 width:100%!important; max-width:100%!important; min-width:0!important;
 height:100%!important; min-height:0!important; margin:0!important;
 border:1px solid #d9e2ea!important; border-radius:0!important;
 box-shadow:none!important; transform:none!important; overflow:hidden!important;
 box-sizing:border-box!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product:hover,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product:hover {
 border-color:#9abedb!important; border-radius:0!important;
 box-shadow:none!important; transform:none!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-gallery,
body.tax-product_cat .fl-post-grid .wse-product-gallery {
 display:block!important; position:relative!important;
 width:100%!important; max-width:100%!important; height:220px!important;
 min-height:220px!important; margin:0!important; padding:0!important;
 overflow:hidden!important; flex:0 0 220px!important; box-sizing:border-box!important;
 border-bottom:1px solid #e4ebf1!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-gallery-track,
body.tax-product_cat .fl-post-grid .wse-product-gallery-track {
 display:flex!important; width:100%!important; height:100%!important;
 overflow-x:auto!important; overflow-y:hidden!important; scroll-snap-type:x mandatory!important;
 scrollbar-width:none!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-gallery-slide,
body.tax-product_cat .fl-post-grid .wse-product-gallery-slide {
 display:flex!important; flex:0 0 100%!important; width:100%!important;
 height:100%!important; align-items:center!important; justify-content:center!important;
 scroll-snap-align:start!important; overflow:hidden!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-gallery-slide img,
body.tax-product_cat .fl-post-grid .wse-product-gallery-slide img {
 display:block!important; width:100%!important; max-width:100%!important;
 height:100%!important; max-height:100%!important; min-height:0!important;
 margin:0!important; padding:15px!important; object-fit:contain!important;
 box-sizing:border-box!important; flex:0 0 auto!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-text,
body.tax-product_cat .fl-post-grid .fl-post-grid-text {
 display:flex!important; flex-direction:column!important; flex:1 1 auto!important;
 width:100%!important; height:auto!important; min-height:0!important;
 padding:16px!important; margin:0!important; box-sizing:border-box!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-title,
body.tax-product_cat .fl-post-grid .fl-post-grid-title {
 display:block!important; position:static!important; margin:0 0 10px!important;
 font-size:17px!important; line-height:1.35!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-cats,
body.tax-product_cat .fl-post-grid .wse-product-card-cats {
 display:flex!important; flex-wrap:wrap!important; gap:5px!important;
 margin:0 0 12px!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-meta,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-meta {
 display:block!important; margin-top:auto!important; padding-top:15px!important;
 position:static!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-meta .price,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-meta .price {
 display:block!important; position:static!important; width:100%!important;
 margin:0 0 12px!important; font-size:21px!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-button,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-button {
 display:block!important; position:static!important; width:100%!important;
 margin:0!important; padding:0!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions,
body.tax-product_cat .fl-post-grid .wse-product-card-actions {
 display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important;
 width:100%!important; gap:0!important; margin:0!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions a,
body.tax-product_cat .fl-post-grid .wse-product-card-actions a {
 display:flex!important; align-items:center!important; justify-content:center!important;
 width:100%!important; min-width:0!important; min-height:44px!important;
 margin:0!important; padding:10px 6px!important; border-radius:0!important;
 font-size:13px!important; box-sizing:border-box!important; text-align:center!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions .wse-product-card-view,
body.tax-product_cat .fl-post-grid .wse-product-card-actions .wse-product-card-view {
 display:flex!important; background:#fff!important; color:#1689df!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-meta-terms,
body.tax-product_cat .fl-post-grid .fl-post-grid-meta-terms { display:none!important; }
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product > .fl-post-grid-image,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product > .fl-post-grid-image { display:none!important; }
body.woocommerce-shop .fl-post-grid .wse-product-gallery .onsale,
body.tax-product_cat .fl-post-grid .wse-product-gallery .onsale {
 position:absolute!important; z-index:4!important; top:10px!important; left:10px!important;
}
body.woocommerce-shop .fl-post-grid .wse-gallery-arrow,
body.tax-product_cat .fl-post-grid .wse-gallery-arrow {
 display:flex!important; position:absolute!important; top:50%!important;
 transform:translateY(-50%)!important; z-index:5!important;
}
body.woocommerce-shop .fl-post-grid .wse-gallery-prev,
body.tax-product_cat .fl-post-grid .wse-gallery-prev { left:8px!important; }
body.woocommerce-shop .fl-post-grid .wse-gallery-next,
body.tax-product_cat .fl-post-grid .wse-gallery-next { right:8px!important; }
body.woocommerce-shop .fl-post-grid .wse-gallery-dots,
body.tax-product_cat .fl-post-grid .wse-gallery-dots {
 display:flex!important; position:absolute!important; bottom:8px!important; left:0!important;
 right:0!important; justify-content:center!important; z-index:3!important;
}
body.woocommerce-shop .fl-row-content-wrap:has(.wse-catalog-product-grid),
body.tax-product_cat .fl-row-content-wrap:has(.wse-catalog-product-grid) { padding-left:0!important; padding-right:0!important; }
body.woocommerce-shop .wse-catalog-sidebar-column .fl-col-content,
body.tax-product_cat .wse-catalog-sidebar-column .fl-col-content { padding-left:0!important; }
body.woocommerce-shop .wse-catalog-layout,
body.tax-product_cat .wse-catalog-layout { gap:0!important; }
body.woocommerce-shop .wse-catalog-layout > .wse-catalog-sidebar-column,
body.tax-product_cat .wse-catalog-layout > .wse-catalog-sidebar-column {
 flex:0 0 22%!important; width:22%!important; max-width:22%!important;
 padding-left:0!important; padding-right:0!important;
}
body.woocommerce-shop .wse-catalog-layout > .wse-catalog-results-column,
body.tax-product_cat .wse-catalog-layout > .wse-catalog-results-column {
 flex:1 1 0!important; width:auto!important; min-width:0!important; max-width:none!important;
}
@media (min-width:768px) and (max-width:1100px) {
 body.woocommerce-shop .fl-post-grid,body.tax-product_cat .fl-post-grid {
 grid-template-columns:repeat(2,minmax(0,1fr))!important; }
}
@media (max-width:767px) {
 body.woocommerce-shop .fl-post-grid,body.tax-product_cat .fl-post-grid {
 grid-template-columns:minmax(0,1fr)!important; }
 body.woocommerce-shop .wse-catalog-layout > .wse-catalog-sidebar-column,
 body.tax-product_cat .wse-catalog-layout > .wse-catalog-sidebar-column {
 flex:0 0 auto!important; width:100%!important; max-width:100%!important;
 padding:0!important; }
 body.woocommerce-shop .fl-post-grid .wse-product-gallery,
 body.tax-product_cat .fl-post-grid .wse-product-gallery {
 height:195px!important; min-height:195px!important; flex-basis:195px!important; }
}

@media (min-width:768px) and (max-width:1100px) {
 body.woocommerce-shop .wse-catalog-layout,
 body.tax-product_cat .wse-catalog-layout { gap:0!important; }
 .wse-catalog-layout > .wse-catalog-sidebar-column { flex-basis:25%!important; width:25%!important; max-width:25%!important; }
 .wse-catalog-results-column .fl-post-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:0!important; }
 .wse-catalog-results-column .wse-product-gallery { height:185px!important; }
}
/* Archive card compact rhythm and true stacked sale prices. */
@media (min-width:768px) {
 body.woocommerce-shop .fl-post-grid .fl-post-grid-title,
 body.tax-product_cat .fl-post-grid .fl-post-grid-title {
  min-height:2.7em!important; max-height:2.7em!important;
  -webkit-line-clamp:2!important; margin-bottom:8px!important;
 }
 body.woocommerce-shop .fl-post-grid .wse-product-card-cats,
 body.tax-product_cat .fl-post-grid .wse-product-card-cats {
  min-height:34px!important; max-height:34px!important; margin-bottom:8px!important;
 }
 body.woocommerce-shop .fl-post-grid .wse-product-card-specs,
 body.tax-product_cat .fl-post-grid .wse-product-card-specs {
  min-height:96px!important; max-height:96px!important;
 }
}
body.woocommerce-shop .fl-post-grid .wse-product-card-specs,
body.tax-product_cat .fl-post-grid .wse-product-card-specs {
 margin:0 0 10px!important; line-height:1.4!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-specs li,
body.tax-product_cat .fl-post-grid .wse-product-card-specs li { margin-bottom:2px!important; }
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta {
 margin-top:auto!important; padding:10px 0 12px!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price {
 display:flex!important; flex-direction:column!important;
 align-items:flex-start!important; justify-content:center!important;
 gap:2px!important; min-height:0!important; margin:0!important; padding:0!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price del {
 display:block!important; order:0!important; width:100%!important; float:none!important;
 margin:0!important; line-height:1.2!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta .price ins {
 display:block!important; order:1!important; width:100%!important; float:none!important;
 margin:0!important; line-height:1.2!important;
}
body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions > a,
body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions > a {
 display:flex!important; align-items:center!important; justify-content:center!important;
 line-height:1!important; height:48px!important; min-height:48px!important;
 padding:0 8px!important; margin:0!important; font-size:14px!important;
 font-weight:700!important; text-align:center!important;
}
/* HP-inspired applied filter strip, positioned directly above the catalogue. */
.wse-active-filter-bar {
 display:flex!important; flex-wrap:wrap!important; align-items:center!important;
 gap:10px!important; padding:12px 16px!important; border-bottom:1px solid #e1e6ec!important;
 background:#fff!important; margin:0!important; min-height:52px!important;
}
.wse-active-filter-count { font-size:12px!important; color:#586a7d!important; letter-spacing:.02em!important; }
.wse-clear-filters {
 border:0!important; background:transparent!important; color:#0874d1!important;
 font-size:12px!important; font-weight:700!important; cursor:pointer!important; padding:7px!important;
}
.wse-active-filter-chip {
 border:0!important; border-radius:28px!important; background:#292e38!important;
 color:#fff!important; padding:10px 15px!important; font-size:12px!important;
 font-weight:600!important; cursor:pointer!important; min-height:36px!important;
}
.wse-stock-widget { border:1px solid #dce5ee!important; border-radius:0!important; margin:0!important; }
.wse-stock-widget .widgettitle {
 margin:0!important; padding:12px 14px!important; background:#f4f7fa!important;
 font-size:13px!important; font-weight:700!important;
}
.wse-stock-widget .wse-sidebar-filter-content { display:block!important; padding:12px 14px!important; }
@media(max-width:767px) {
 .wse-active-filter-bar { padding:10px 12px!important; gap:7px!important; }
 .wse-active-filter-chip { padding:8px 12px!important; }
}
/* Catalogue toolbar and active filters belong inside the results column. */
.wse-catalog-results-column .wse-catalog-toolbar,
.wse-catalog-results-column .wse-active-filter-bar {
 width:100%!important; max-width:100%!important; box-sizing:border-box!important;
}
.wse-catalog-results-column .wse-active-filter-bar { border-left:1px solid #e1e6ec!important; border-right:1px solid #e1e6ec!important; }
.wse-mobile-filter-trigger,.wse-mobile-filter-header,.wse-mobile-filter-backdrop { display:none!important; }
@media(max-width:767px) {
 body.woocommerce-shop .wse-catalog-layout,
 body.tax-product_cat .wse-catalog-layout {
  display:flex!important; flex-direction:column!important; height:auto!important;
  min-height:0!important; overflow:visible!important; clear:both!important;
 }
 body.woocommerce-shop .wse-catalog-layout > .wse-catalog-results-column,
 body.tax-product_cat .wse-catalog-layout > .wse-catalog-results-column {
  display:block!important; flex:0 0 auto!important; width:100%!important;
  max-width:100%!important; height:auto!important; min-height:0!important;
  position:relative!important; overflow:visible!important; float:none!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid {
  display:grid!important; grid-template-columns:minmax(0,1fr)!important;
  height:auto!important; overflow:visible!important; position:relative!important;
  margin:0!important; padding:0!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid > .fl-post-column,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid > .fl-post-column {
  display:block!important; float:none!important; clear:none!important;
  width:100%!important; max-width:100%!important; height:auto!important;
  min-height:0!important; padding:0!important; margin:0!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid .fl-post-grid-post.product,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid .fl-post-grid-post.product {
  display:flex!important; flex-direction:column!important; height:auto!important;
  min-height:0!important; overflow:visible!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid .fl-post-grid-text,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid .fl-post-grid-text {
  display:flex!important; flex-direction:column!important; flex:0 0 auto!important;
  height:auto!important; min-height:0!important; padding:14px!important;
  overflow:visible!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .wse-product-card-cats,
 body.tax-product_cat .wse-catalog-results-column .wse-product-card-cats,
 body.woocommerce-shop .wse-catalog-results-column .wse-product-card-specs,
 body.tax-product_cat .wse-catalog-results-column .wse-product-card-specs {
  display:flex!important; visibility:visible!important; opacity:1!important;
  height:auto!important; min-height:0!important; max-height:none!important;
  margin:10px 0!important; overflow:visible!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .wse-product-card-specs,
 body.tax-product_cat .wse-catalog-results-column .wse-product-card-specs {
  display:block!important; padding-left:20px!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid-woo-meta,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid-woo-meta {
  display:flex!important; flex-direction:column!important; position:static!important;
  margin:12px 0 0!important; padding:0!important; height:auto!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid-woo-button,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid-woo-button {
  display:block!important; width:calc(100% + 28px)!important; margin:12px -14px -14px!important;
 }
 .wse-catalog-results-column .wse-catalog-toolbar {
  display:flex!important; justify-content:space-between!important; align-items:center!important;
  padding:12px!important; gap:10px!important;
 }
 .wse-catalog-results-column .wse-catalog-toolbar .woocommerce-ordering { display:none!important; }
 .wse-mobile-filter-trigger {
  display:block!important; border:1px solid #283447!important; background:#fff!important;
  color:#172b3c!important; border-radius:4px!important; padding:12px 16px!important;
  font-size:13px!important; font-weight:700!important; cursor:pointer!important;
 }
 .wse-mobile-filter-backdrop { display:none!important; }
 body.wse-filter-drawer-open .wse-mobile-filter-backdrop {
  display:block!important; position:fixed!important; inset:0!important;
  background:rgba(0,0,0,.48)!important; z-index:99998!important;
 }
 body.woocommerce-shop .wse-catalog-layout > .wse-catalog-sidebar-column,
 body.tax-product_cat .wse-catalog-layout > .wse-catalog-sidebar-column {
  display:block!important; position:fixed!important; top:0!important; right:0!important;
  bottom:0!important; left:auto!important; z-index:99999!important;
  width:min(92vw,400px)!important; max-width:400px!important;
  background:#fff!important; overflow-y:auto!important; overflow-x:hidden!important;
  padding:0 14px 24px!important; margin:0!important;
  transform:translateX(110%)!important; visibility:hidden!important;
  transition:transform .2s ease!important;
 }
 body.wse-filter-drawer-open .wse-catalog-layout > .wse-catalog-sidebar-column {
  transform:translateX(0)!important; visibility:visible!important;
 }
 .wse-mobile-filter-header {
  display:flex!important; align-items:center!important; justify-content:space-between!important;
  padding:15px 2px!important; border-bottom:1px solid #e1e6ec!important;
  font-size:19px!important;
 }
 .wse-mobile-filter-close {
  background:transparent!important; border:0!important; font-size:30px!important;
  line-height:1!important; cursor:pointer!important;
 }
 .wse-catalog-results-column .wse-active-filter-bar {
  padding:10px 12px!important; flex-wrap:wrap!important;
 }
}
/* Explicit mobile toolbar/drawer visibility, independent of results-column nesting. */
@media (max-width:767px) {
 body.woocommerce-shop .wse-catalog-toolbar,
 body.tax-product_cat .wse-catalog-toolbar {
  display:flex!important; flex-direction:row!important; align-items:center!important;
  justify-content:space-between!important; width:100%!important; max-width:100%!important;
  position:relative!important; visibility:visible!important; opacity:1!important;
 }
 body.woocommerce-shop .wse-catalog-toolbar .wse-mobile-filter-trigger,
 body.tax-product_cat .wse-catalog-toolbar .wse-mobile-filter-trigger {
  display:inline-flex!important; visibility:visible!important; opacity:1!important;
  flex:0 0 auto!important; position:relative!important; align-items:center!important;
  justify-content:center!important; z-index:5!important;
 }
 body.woocommerce-shop .wse-catalog-layout > .wse-catalog-sidebar-column,
 body.tax-product_cat .wse-catalog-layout > .wse-catalog-sidebar-column {
  position:fixed!important; top:0!important; right:0!important; bottom:0!important;
  left:auto!important; width:min(92vw,400px)!important; max-width:400px!important;
  z-index:99999!important; display:block!important; visibility:hidden!important;
  transform:translateX(110%)!important; overflow-y:auto!important;
 }
 body.wse-filter-drawer-open.woocommerce-shop .wse-catalog-layout > .wse-catalog-sidebar-column,
 body.wse-filter-drawer-open.tax-product_cat .wse-catalog-layout > .wse-catalog-sidebar-column {
  visibility:visible!important; transform:translateX(0)!important;
 }
}
/* Seamless desktop catalogue: eliminate builder module gutters around active filters and grid. */
@media (min-width:768px) {
 body.woocommerce-shop .wse-catalog-layout > .wse-catalog-results-column,
 body.tax-product_cat .wse-catalog-layout > .wse-catalog-results-column {
  padding-left:0!important; padding-right:0!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-col-content,
 body.tax-product_cat .wse-catalog-results-column .fl-col-content,
 body.woocommerce-shop .wse-catalog-results-column .fl-module-content,
 body.tax-product_cat .wse-catalog-results-column .fl-module-content {
  margin:0!important; padding:0!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .wse-active-filter-bar,
 body.tax-product_cat .wse-catalog-results-column .wse-active-filter-bar {
  margin:0!important; border-bottom:1px solid #d9e2ea!important;
 }
}
/* Mobile filter sections: visible checkboxes and headings without accordion steps. */
@media (max-width:767px) {
 body.woocommerce-shop .wse-catalog-sidebar-column .wse-sidebar-filter-widget .wse-sidebar-filter-content,
 body.tax-product_cat .wse-catalog-sidebar-column .wse-sidebar-filter-widget .wse-sidebar-filter-content {
  display:block!important; visibility:visible!important; opacity:1!important;
  height:auto!important; max-height:none!important; overflow:visible!important;
 }
 body.woocommerce-shop .wse-catalog-sidebar-column .wse-sidebar-filter-toggle,
 body.tax-product_cat .wse-catalog-sidebar-column .wse-sidebar-filter-toggle {
  pointer-events:none!important; cursor:default!important;
 }
 body.woocommerce-shop .wse-catalog-sidebar-column .wse-sidebar-chevron,
 body.tax-product_cat .wse-catalog-sidebar-column .wse-sidebar-chevron {
  display:none!important;
 }
}
/* Mobile fixes: keep the results toolbar usable and stop prices collapsing. */
@media(max-width:767px) {
 body.woocommerce-shop .wse-catalog-toolbar,
 body.tax-product_cat .wse-catalog-toolbar {
  display:flex!important; flex-direction:row!important; justify-content:space-between!important;
  align-items:center!important; width:100%!important; min-height:65px!important;
  padding:10px 14px!important; box-sizing:border-box!important; gap:12px!important;
 }
 body.woocommerce-shop .wse-catalog-toolbar .woocommerce-ordering,
 body.tax-product_cat .wse-catalog-toolbar .woocommerce-ordering { display:none!important; }
 body.woocommerce-shop .wse-catalog-toolbar .wse-mobile-filter-trigger,
 body.tax-product_cat .wse-catalog-toolbar .wse-mobile-filter-trigger {
  display:inline-flex!important; flex:0 0 auto!important; align-items:center!important;
  justify-content:center!important; position:relative!important; visibility:visible!important;
  opacity:1!important; width:auto!important; max-width:none!important; min-width:125px!important;
  height:44px!important; margin:0!important; padding:8px 12px!important; z-index:10!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid .fl-post-grid-woo-meta .price,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid .fl-post-grid-woo-meta .price {
  display:flex!important; flex-direction:column!important; align-items:flex-start!important;
  justify-content:flex-start!important; width:100%!important; min-width:0!important;
  max-width:100%!important; height:auto!important; margin:0!important; padding:0!important;
  white-space:nowrap!important; word-break:normal!important; overflow-wrap:normal!important;
  line-height:1.3!important; font-size:23px!important; text-align:left!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid .fl-post-grid-woo-meta .price del,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid .fl-post-grid-woo-meta .price del,
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid .fl-post-grid-woo-meta .price ins,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid .fl-post-grid-woo-meta .price ins {
  display:block!important; width:auto!important; max-width:100%!important;
  white-space:nowrap!important; word-break:normal!important; overflow-wrap:normal!important;
  margin:0!important; float:none!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid .fl-post-grid-woo-meta,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid .fl-post-grid-woo-meta {
  display:block!important; width:100%!important; min-width:0!important;
  margin:12px 0!important; padding:0!important; position:static!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid .fl-post-grid-text,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid .fl-post-grid-text {
  align-items:stretch!important; width:100%!important; min-width:0!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid .fl-post-grid-woo-button,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid .fl-post-grid-woo-button {
  display:block!important; width:calc(100% + 28px)!important; max-width:none!important;
  margin:12px -14px -14px!important; padding:0!important;
 }
}
/* Shop/category desktop spacing: align the product grid to the active-filter strip and inset the sidebar controls. */
@media (min-width: 768px) {
 body.woocommerce-shop .wse-catalog-layout > .wse-catalog-sidebar-column,
 body.tax-product_cat .wse-catalog-layout > .wse-catalog-sidebar-column {
  padding-left: 20px!important;
  box-sizing: border-box!important;
 }
 body.woocommerce-shop .wse-catalog-sidebar-column .fl-col-content,
 body.tax-product_cat .wse-catalog-sidebar-column .fl-col-content {
  padding-left: 0!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-module-post-grid,
 body.tax-product_cat .wse-catalog-results-column .fl-module-post-grid,
 body.woocommerce-shop .wse-catalog-results-column .fl-module-post-grid .fl-module-content,
 body.tax-product_cat .wse-catalog-results-column .fl-module-post-grid .fl-module-content {
  margin-top: 0!important;
  padding-top: 0!important;
 }
 body.woocommerce-shop .wse-catalog-results-column .fl-post-grid,
 body.tax-product_cat .wse-catalog-results-column .fl-post-grid {
  margin-top: 0!important;
  padding-top: 0!important;
 }
}
/* Shared card component in standard WooCommerce loops, homepage modules and related products. */
.woocommerce ul.products li.product > .wse-product-gallery,
.woocommerce-page ul.products li.product > .wse-product-gallery,
.fl-module-woocommerce ul.products li.product > .wse-product-gallery {
  width:100%; flex:0 0 auto; margin:0 0 12px; position:relative;
}
.woocommerce ul.products li.product .wse-product-gallery-track,
.woocommerce-page ul.products li.product .wse-product-gallery-track {
  width:100%; overflow-x:auto; display:flex; scroll-snap-type:x mandatory;
  scrollbar-width:none; scroll-behavior:smooth;
}
.woocommerce ul.products li.product .wse-product-gallery-slide,
.woocommerce-page ul.products li.product .wse-product-gallery-slide {
  display:flex; flex:0 0 100%; width:100%; min-width:100%; scroll-snap-align:start;
  align-items:center; justify-content:center;
}
.woocommerce ul.products li.product .wse-product-gallery-slide img,
.woocommerce-page ul.products li.product .wse-product-gallery-slide img {
  display:block; width:100%; max-width:100%; height:220px; object-fit:contain;
  margin:0; padding:12px; box-sizing:border-box;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title a,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title a {
  color:inherit; text-decoration:none;
}
.woocommerce ul.products li.product > .wse-product-card-footer,
.woocommerce-page ul.products li.product > .wse-product-card-footer { margin-top:auto; }
.woocommerce ul.products li.product > .wse-product-card-actions,
.woocommerce-page ul.products li.product > .wse-product-card-actions {
  display:flex; width:100%; margin-top:10px; overflow:hidden; border-radius:0 0 12px 12px;
}
.woocommerce ul.products li.product > .wse-product-card-actions > a,
.woocommerce-page ul.products li.product > .wse-product-card-actions > a {
  display:flex; flex:1 1 0; align-items:center; justify-content:center;
  min-height:44px; margin:0; padding:8px; box-sizing:border-box; text-align:center;
}
@media (max-width:767px) {
 .woocommerce ul.products li.product .wse-product-gallery-slide img,
 .woocommerce-page ul.products li.product .wse-product-gallery-slide img { height:190px; }
}
/* Standard WooCommerce / Beaver Builder WooCommerce cards: contain all card content. */
.woocommerce ul.products li.product:has(> .wse-product-gallery),
.woocommerce-page ul.products li.product:has(> .wse-product-gallery) {
 position:relative!important; display:flex!important; flex-direction:column!important;
 height:auto!important; min-height:650px!important; overflow:hidden!important;
 padding:0 16px 16px!important; box-sizing:border-box!important;
 text-align:left!important; align-items:stretch!important;
}
.woocommerce ul.products li.product > .wse-product-gallery,
.woocommerce-page ul.products li.product > .wse-product-gallery {
 position:relative!important; display:block!important; flex:none!important;
 width:calc(100% + 32px)!important; max-width:none!important;
 height:245px!important; margin:0 -16px 16px!important; overflow:hidden!important;
}
.woocommerce ul.products li.product .wse-product-gallery-track,
.woocommerce-page ul.products li.product .wse-product-gallery-track {
 display:flex!important; height:100%!important; overflow-x:auto!important;
 scroll-snap-type:x mandatory; scrollbar-width:none;
}
.woocommerce ul.products li.product .wse-product-gallery-slide,
.woocommerce-page ul.products li.product .wse-product-gallery-slide {
 flex:0 0 100%!important; min-width:100%!important; height:100%!important;
 display:flex!important; align-items:center!important; justify-content:center!important;
 margin:0!important; padding:0!important;
}
.woocommerce ul.products li.product .wse-product-gallery-slide img,
.woocommerce-page ul.products li.product .wse-product-gallery-slide img {
 display:block!important; width:100%!important; max-width:100%!important;
 height:100%!important; margin:0!important; padding:12px!important;
 object-fit:contain!important; border:0!important; box-sizing:border-box!important;
}
.woocommerce ul.products li.product .wse-product-gallery .wse-gallery-arrow,
.woocommerce-page ul.products li.product .wse-product-gallery .wse-gallery-arrow {
 position:absolute!important; top:50%!important; z-index:5!important;
 transform:translateY(-50%)!important; width:32px!important; height:38px!important;
 display:flex!important; align-items:center!important; justify-content:center!important;
 margin:0!important; padding:0!important; border-radius:5px!important;
 background:rgba(0,0,0,.76)!important; color:#fff!important; font-size:23px!important;
}
.woocommerce ul.products li.product .wse-gallery-prev,
.woocommerce-page ul.products li.product .wse-gallery-prev { left:8px!important; right:auto!important; }
.woocommerce ul.products li.product .wse-gallery-next,
.woocommerce-page ul.products li.product .wse-gallery-next { right:8px!important; left:auto!important; }
.woocommerce ul.products li.product .wse-gallery-dots,
.woocommerce-page ul.products li.product .wse-gallery-dots {
 position:absolute!important; bottom:7px!important; left:50%!important;
 transform:translateX(-50%)!important; display:flex!important; gap:5px!important;
}
.woocommerce ul.products li.product > .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product > .woocommerce-loop-product__title {
 flex:none!important; margin:0 0 10px!important; padding:0!important;
 font-size:18px!important; line-height:1.35!important; text-align:left!important;
}
.woocommerce ul.products li.product > .wse-product-card-cats,
.woocommerce-page ul.products li.product > .wse-product-card-cats {
 flex:none!important; margin:0 0 10px!important; gap:5px!important;
}
.woocommerce ul.products li.product > .wse-product-card-specs,
.woocommerce-page ul.products li.product > .wse-product-card-specs {
 position:static!important; display:block!important; flex:none!important;
 width:100%!important; max-width:100%!important; height:auto!important;
 margin:0 0 14px!important; padding:0!important; list-style:none!important;
 overflow:hidden!important; text-align:left!important;
 font-size:12px!important; line-height:1.4!important;
}
.woocommerce ul.products li.product > .wse-product-card-specs li,
.woocommerce-page ul.products li.product > .wse-product-card-specs li {
 display:block!important; width:100%!important; max-width:100%!important;
 margin:0 0 4px!important; padding:0!important; text-align:left!important;
 overflow-wrap:anywhere!important; font-size:12px!important; line-height:1.4!important;
}
.woocommerce ul.products li.product > .wse-product-card-specs li strong,
.woocommerce-page ul.products li.product > .wse-product-card-specs li strong {
 display:inline!important; font-size:inherit!important; font-weight:700!important;
}
.woocommerce ul.products li.product > .wse-product-card-footer,
.woocommerce-page ul.products li.product > .wse-product-card-footer {
 position:static!important; display:flex!important; flex:none!important;
 margin:auto 0 0!important; padding:8px 0 0!important; width:100%!important;
}
.woocommerce ul.products li.product > .wse-product-card-actions,
.woocommerce-page ul.products li.product > .wse-product-card-actions {
 position:static!important; flex:none!important; width:100%!important;
 margin:12px 0 0!important; padding:0!important; overflow:visible!important;
 display:flex!important; gap:0!important;
}
.woocommerce ul.products li.product > .wse-product-card-actions > a,
.woocommerce-page ul.products li.product > .wse-product-card-actions > a {
 display:flex!important; position:static!important; flex:1 1 50%!important;
 min-width:0!important; width:auto!important; height:44px!important;
 min-height:44px!important; margin:0!important; padding:6px!important;
 font-size:13px!important; line-height:1.2!important; box-sizing:border-box!important;
}
/* WSE WooCommerce-loop cards: independent visual adapter for homepage and related products.
   Archive post-grid styling remains separate. */
.fl-woocommerce-products ul.products li.product:has(> .wse-product-gallery),
.woocommerce .related.products ul.products li.product:has(> .wse-product-gallery),
.woocommerce .upsells.products ul.products li.product:has(> .wse-product-gallery) {
 border:1px solid rgba(47,159,244,.36)!important;
 border-radius:14px!important;
 box-shadow:none!important;
 overflow:hidden!important;
 padding:0 14px 0!important;
 min-height:610px!important;
 background:#fff!important;
 transition:transform .2s ease,box-shadow .2s ease!important;
}
.fl-woocommerce-products ul.products li.product:has(> .wse-product-gallery):hover,
.woocommerce .related.products ul.products li.product:has(> .wse-product-gallery):hover {
 transform:translateY(-2px)!important;
 box-shadow:0 7px 20px rgba(20,26,34,.1)!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-gallery,
.woocommerce .related.products ul.products li.product > .wse-product-gallery,
.woocommerce .upsells.products ul.products li.product > .wse-product-gallery {
 width:calc(100% + 28px)!important;
 margin:0 -14px 12px!important;
 height:245px!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-card-footer,
.woocommerce .related.products ul.products li.product > .wse-product-card-footer,
.woocommerce .upsells.products ul.products li.product > .wse-product-card-footer {
 margin:auto 0 0!important;
 padding:12px 0 10px!important;
 align-self:stretch!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-card-actions,
.woocommerce .related.products ul.products li.product > .wse-product-card-actions,
.woocommerce .upsells.products ul.products li.product > .wse-product-card-actions {
 display:flex!important;
 flex-flow:row nowrap!important;
 align-self:stretch!important;
 width:calc(100% + 28px)!important;
 margin:0 -14px!important;
 padding:0!important;
 gap:0!important;
 overflow:hidden!important;
 border-radius:0 0 13px 13px!important;
 background:transparent!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-card-actions > a,
.woocommerce .related.products ul.products li.product > .wse-product-card-actions > a,
.woocommerce .upsells.products ul.products li.product > .wse-product-card-actions > a {
 display:flex!important;
 align-items:center!important;
 justify-content:center!important;
 flex:1 1 50%!important;
 width:50%!important;
 min-width:0!important;
 height:48px!important;
 min-height:48px!important;
 margin:0!important;
 padding:8px!important;
 border:0!important;
 border-radius:0!important;
 box-shadow:none!important;
 text-decoration:none!important;
 text-align:center!important;
 font-size:14px!important;
 font-weight:600!important;
 line-height:1.2!important;
 transform:none!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-card-actions > a.wse-product-card-view,
.woocommerce .related.products ul.products li.product > .wse-product-card-actions > a.wse-product-card-view,
.woocommerce .upsells.products ul.products li.product > .wse-product-card-actions > a.wse-product-card-view {
 background:#f3f8fc!important;
 color:#258bd2!important;
 border-top:1px solid #d9e9f5!important;
 border-right:1px solid #d9e9f5!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-card-actions > a.button,
.woocommerce .related.products ul.products li.product > .wse-product-card-actions > a.button,
.woocommerce .upsells.products ul.products li.product > .wse-product-card-actions > a.button {
 background:#299cf0!important;
 color:#fff!important;
 border-top:1px solid #299cf0!important;
}
@media(max-width:767px) {
 .fl-woocommerce-products ul.products li.product:has(> .wse-product-gallery),
 .woocommerce .related.products ul.products li.product:has(> .wse-product-gallery) {
  min-height:530px!important;
 }
}
/* Seamless WooCommerce-module grid: match archive edge-to-edge tiles. */
.fl-woocommerce-products ul.products:has(> li.product > .wse-product-gallery),
.woocommerce .related.products ul.products:has(> li.product > .wse-product-gallery),
.woocommerce .upsells.products ul.products:has(> li.product > .wse-product-gallery) {
 display:grid!important;
 grid-template-columns:repeat(var(--wse-loop-cols,4),minmax(0,1fr))!important;
 gap:0!important;
 margin:0!important;
 padding:0!important;
 width:100%!important;
 align-items:stretch!important;
}
.fl-woocommerce-products .woocommerce.columns-1 { --wse-loop-cols:1; }
.fl-woocommerce-products .woocommerce.columns-2 { --wse-loop-cols:2; }
.fl-woocommerce-products .woocommerce.columns-3 { --wse-loop-cols:3; }
.fl-woocommerce-products .woocommerce.columns-4 { --wse-loop-cols:4; }
.fl-woocommerce-products .woocommerce.columns-5 { --wse-loop-cols:5; }
.fl-woocommerce-products .woocommerce.columns-6 { --wse-loop-cols:6; }
.woocommerce .related.products ul.products.columns-2,
.woocommerce .upsells.products ul.products.columns-2 { --wse-loop-cols:2; }
.woocommerce .related.products ul.products.columns-3,
.woocommerce .upsells.products ul.products.columns-3 { --wse-loop-cols:3; }
.woocommerce .related.products ul.products.columns-4,
.woocommerce .upsells.products ul.products.columns-4 { --wse-loop-cols:4; }
.fl-woocommerce-products ul.products:has(> li.product > .wse-product-gallery)::before,
.fl-woocommerce-products ul.products:has(> li.product > .wse-product-gallery)::after,
.woocommerce .related.products ul.products:has(> li.product > .wse-product-gallery)::before,
.woocommerce .related.products ul.products:has(> li.product > .wse-product-gallery)::after { content:none!important;display:none!important; }
.fl-woocommerce-products ul.products li.product:has(> .wse-product-gallery),
.woocommerce .related.products ul.products li.product:has(> .wse-product-gallery),
.woocommerce .upsells.products ul.products li.product:has(> .wse-product-gallery) {
 float:none!important;clear:none!important;
 width:100%!important;max-width:none!important;min-width:0!important;
 height:100%!important;min-height:0!important;
 margin:0!important;padding:0!important;
 border:1px solid rgba(47,159,244,.3)!important;border-radius:0!important;
 box-shadow:none!important;
 display:flex!important;flex-direction:column!important;
 overflow:hidden!important;box-sizing:border-box!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-gallery,
.woocommerce .related.products ul.products li.product > .wse-product-gallery,
.woocommerce .upsells.products ul.products li.product > .wse-product-gallery {
 flex:none!important;width:100%!important;max-width:100%!important;
 height:230px!important;margin:0 0 12px!important;
 border-bottom:1px solid #e6edf3!important;
}
.fl-woocommerce-products ul.products li.product > .woocommerce-loop-product__title,
.woocommerce .related.products ul.products li.product > .woocommerce-loop-product__title,
.woocommerce .upsells.products ul.products li.product > .woocommerce-loop-product__title {
 margin:0 14px 10px!important;padding:0!important;
 min-height:75px!important;max-height:100px!important;
 overflow:hidden!important;line-height:1.35!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-card-cats,
.woocommerce .related.products ul.products li.product > .wse-product-card-cats,
.woocommerce .upsells.products ul.products li.product > .wse-product-card-cats {
 margin:0 14px 10px!important;padding:0!important;
 min-height:64px!important;align-content:flex-start!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-card-specs,
.woocommerce .related.products ul.products li.product > .wse-product-card-specs,
.woocommerce .upsells.products ul.products li.product > .wse-product-card-specs {
 margin:0 14px 12px!important;width:calc(100% - 28px)!important;
 min-height:100px!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-card-footer,
.woocommerce .related.products ul.products li.product > .wse-product-card-footer,
.woocommerce .upsells.products ul.products li.product > .wse-product-card-footer {
 margin:auto 14px 0!important;width:calc(100% - 28px)!important;
 padding:12px 0!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-card-actions,
.woocommerce .related.products ul.products li.product > .wse-product-card-actions,
.woocommerce .upsells.products ul.products li.product > .wse-product-card-actions {
 width:100%!important;margin:0!important;
 border-radius:0!important;
}
.fl-woocommerce-products ul.products li.product > .wse-product-card-actions > a,
.woocommerce .related.products ul.products li.product > .wse-product-card-actions > a,
.woocommerce .upsells.products ul.products li.product > .wse-product-card-actions > a {
 border-radius:0!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions > a.wse-product-card-view,
body.tax-product_cat .fl-post-grid .wse-product-card-actions > a.wse-product-card-view {
 background:#f3f8fc!important;color:#258bd2!important;
 border-top:1px solid #d9e9f5!important;
 border-right:1px solid #d9e9f5!important;
 border-bottom:0!important;
 text-decoration:none!important;
}
@media(max-width:992px) {
 .fl-woocommerce-products ul.products:has(> li.product > .wse-product-gallery),
 .woocommerce .related.products ul.products:has(> li.product > .wse-product-gallery),
 .woocommerce .upsells.products ul.products:has(> li.product > .wse-product-gallery) {
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
}
@media(max-width:600px) {
 .fl-woocommerce-products ul.products:has(> li.product > .wse-product-gallery),
 .woocommerce .related.products ul.products:has(> li.product > .wse-product-gallery),
 .woocommerce .upsells.products ul.products:has(> li.product > .wse-product-gallery) {
  grid-template-columns:minmax(0,1fr)!important;
 }
}
/* Homepage Beaver Builder WooCommerce module has a nested columns-N wrapper.
   Override its native 22%-width tiles inside our grid tracks. */
.fl-module-woocommerce .fl-woocommerce-products > .woocommerce.columns-4 > ul.products.columns-4 {
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
 gap:0!important;width:100%!important;max-width:100%!important;
}
.fl-module-woocommerce .fl-woocommerce-products > .woocommerce.columns-4 > ul.products.columns-4 > li.product,
.fl-module-woocommerce .fl-woocommerce-products > .woocommerce.columns-4 > ul.products.columns-4 > li.product.first,
.fl-module-woocommerce .fl-woocommerce-products > .woocommerce.columns-4 > ul.products.columns-4 > li.product.last {
 display:flex!important;flex-direction:column!important;
 float:none!important;clear:none!important;
 width:100%!important;min-width:0!important;max-width:100%!important;
 margin:0!important;padding:0!important;
 box-sizing:border-box!important;justify-self:stretch!important;
 border-radius:0!important;
}
@media(max-width:992px) {
 .fl-module-woocommerce .fl-woocommerce-products > .woocommerce.columns-4 > ul.products.columns-4 {
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
}
@media(max-width:600px) {
 .fl-module-woocommerce .fl-woocommerce-products > .woocommerce.columns-4 > ul.products.columns-4 {
 grid-template-columns:minmax(0,1fr)!important;
 }
}
/* Correct selectors on real Beaver Builder card markup. */
body.woocommerce-shop .fl-post-grid .fl-post-grid-text,
body.tax-product_cat .fl-post-grid .fl-post-grid-text { padding:12px 14px 0!important; }
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-meta,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-meta { padding-top:0!important; }
body.woocommerce-shop .fl-post-grid .fl-post-grid-woo-meta .price,
body.tax-product_cat .fl-post-grid .fl-post-grid-woo-meta .price { margin-bottom:8px!important; }
body.woocommerce-shop .fl-post-grid .wse-product-card-actions > a.wse-product-card-view,
body.tax-product_cat .fl-post-grid .wse-product-card-actions > a.wse-product-card-view {
 display:flex!important; position:static!important; inset:auto!important;
 transform:none!important; float:none!important; clear:none!important;
 align-items:center!important; justify-content:center!important;
 width:100%!important; height:48px!important; min-height:48px!important;
 margin:0!important; padding:0 8px!important; line-height:1.2!important;
 text-align:center!important; box-sizing:border-box!important;
}
body.woocommerce-shop .fl-post-grid .wse-product-card-actions > a.button,
body.tax-product_cat .fl-post-grid .wse-product-card-actions > a.button {
 display:flex!important; align-items:center!important; justify-content:center!important;
 height:48px!important; min-height:48px!important; margin:0!important;
}
@media (max-width:767px) {
 .wse-catalog-layout { display:flex!important; flex-direction:column!important; flex-wrap:nowrap!important; gap:14px!important; }
 .wse-catalog-layout > .wse-catalog-sidebar-column,.wse-catalog-layout > .wse-catalog-results-column { flex:0 0 auto!important; width:100%!important; max-width:100%!important; }
 .wse-catalog-sidebar-column .wse-sidebar-filter-widget { margin-bottom:8px!important; border-radius:9px!important; }
 .wse-catalog-sidebar-column .widgettitle { padding:11px 13px!important; border-bottom:0!important; background:#fff!important; font-size:14px!important; }
 .wse-sidebar-chevron { display:block!important; transition:transform .15s ease!important; }
 .wse-sidebar-filter-toggle[aria-expanded="true"] .wse-sidebar-chevron { transform:rotate(225deg)!important; }
 .wse-catalog-sidebar-column .wse-sidebar-filter-content { display:none!important; padding:0 13px 13px!important; }
 .wse-catalog-sidebar-column .wse-sidebar-filter-widget.is-mobile-open .wse-sidebar-filter-content,.wse-catalog-sidebar-column .wse-sidebar-filter-widget.has-active-filter .wse-sidebar-filter-content { display:block!important; }
 .wse-catalog-results-column .fl-post-grid { grid-template-columns:repeat(1,minmax(0,1fr))!important; gap:12px!important; }
 .wse-catalog-results-column .wse-product-gallery { height:190px!important; }
 .wse-catalog-results-column .fl-post-grid .fl-post-grid-post.product { border-radius:10px!important; }
 .wse-catalog-results-column .fl-post-grid-text { padding:13px!important; }
 .wse-catalog-results-column .fl-post-grid-title { font-size:16px!important; }
 .wse-catalog-results-column .fl-post-grid-woo-meta .price { font-size:20px!important; }
}

/* The WSEPF plugin injects a second full-width blue mobile filter trigger on Shop. Keep the theme's compact toolbar trigger. */
@media(max-width:767px){body.woocommerce-shop .wsepf-mobile-filter-trigger{display:none!important}}

/* Category mobile parity: neutralize inherited Beaver column/card fixed heights.
   The Shop's grid wrapper differs on some category archives. */
@media(max-width:767px){
 body.tax-product_cat .fl-post-grid,body.tax-product_cat .fl-post-grid > .fl-post-column{height:auto!important;min-height:0!important;max-height:none!important;align-items:start!important;grid-auto-rows:auto!important;overflow:visible!important}
 body.tax-product_cat .fl-post-grid > .fl-post-column{display:block!important;align-self:start!important}
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product{height:auto!important;min-height:0!important;max-height:none!important;align-self:start!important;justify-content:flex-start!important;overflow:visible!important}
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product > .fl-post-grid-text{display:flex!important;flex-direction:column!important;flex:0 0 auto!important;align-self:stretch!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:13px!important}
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-title{display:block!important;min-height:0!important;max-height:none!important;height:auto!important;margin-bottom:10px!important}
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-cats{display:flex!important;flex-wrap:wrap!important;gap:5px!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0 0 10px!important}
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-specs{display:block!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0 0 10px!important}
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta{display:block!important;margin:0!important;padding:8px 0!important;height:auto!important}
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;height:auto!important}
}
/* Mobile category action row: show both existing WooCommerce actions side by side. */
@media(max-width:767px){
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button{
  display:block!important;width:calc(100% + 26px)!important;max-width:none!important;
  margin:12px -13px -13px!important;padding:0!important;overflow:visible!important;
 }
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:0!important;width:100%!important;max-width:100%!important;
  height:auto!important;min-height:48px!important;overflow:visible!important;
 }
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions > a.wse-product-card-view,
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions > a.button{
  display:flex!important;visibility:visible!important;opacity:1!important;
  position:static!important;float:none!important;clear:none!important;
  width:100%!important;max-width:none!important;min-width:0!important;
  height:48px!important;min-height:48px!important;margin:0!important;
  padding:8px 6px!important;transform:none!important;
  align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;white-space:normal!important;
  text-align:center!important;font-size:14px!important;line-height:1.2!important;
 }
 body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions > a.button{
  background:#1689df!important;color:#fff!important;border-color:#1689df!important;
 }
}
/* Emergency mobile category card visibility: keep card details in normal document flow. */
@media(max-width:767px){body.tax-product_cat .fl-post-grid .fl-post-grid-post.product,body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;display:flex!important;flex-direction:column!important}body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text,body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-text{display:block!important;position:static!important;visibility:visible!important;opacity:1!important;height:auto!important;max-height:none!important;overflow:visible!important;flex:1 1 auto!important}body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-cats,body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-specs,body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta,body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button,body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .wse-product-card-cats,body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .wse-product-card-specs,body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-meta,body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .fl-post-grid-woo-button{display:block!important;visibility:visible!important;opacity:1!important;position:static!important;height:auto!important;max-height:none!important;overflow:visible!important}body.tax-product_cat .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;visibility:visible!important;opacity:1!important}body.woocommerce-shop .fl-post-grid .fl-post-grid-post.product .wse-product-card-actions{display:flex!important;visibility:visible!important;opacity:1!important}}

