/* Scope all overrides to shop, product categories and product search, not home/detail pages. */
body.allt-catalog-fullwidth #secondary { display: none !important; }
body.allt-catalog-fullwidth #primary {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100%;
    padding-left: 0 !important;
    padding-right: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
}
body.allt-catalog-fullwidth #primary > .site-main { width: 100%; }
/* Remove the oversized visible archive heading, retaining an accessible H1. */
body.allt-catalog-fullwidth #primary .woocommerce-products-header__title {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}
body.allt-catalog-fullwidth #primary .woocommerce-products-header {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    border: 0 !important;
}
body.allt-catalog-fullwidth #primary {
    margin-top: 24px !important;
    padding-top: 0 !important;
}
body.allt-catalog-fullwidth #primary .ast-woocommerce-container { padding-top: 0 !important; }
body.allt-catalog-fullwidth #primary .allt-catalog-tools { margin-top: 0; }
body.allt-catalog-fullwidth #primary ul.products .onsale,
body.allt-catalog-fullwidth #primary ul.products .ast-onsale-card { display: none !important; }
body.allt-catalog-fullwidth #primary ul.products {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    column-gap: 18px;
    row-gap: 32px;
    width: 100%;
}
body.allt-catalog-fullwidth #primary ul.products::before,
body.allt-catalog-fullwidth #primary ul.products::after { display: none !important; }
body.allt-catalog-fullwidth #primary ul.products > li.product {
    float: none !important;
    clear: none !important;
    width: auto !important;
    min-width: 0;
    margin: 0 !important;
    overflow-wrap: anywhere;
}
body.allt-catalog-fullwidth #primary ul.products .woocommerce-loop-product__title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    line-height: 1.45em !important;
    height: 2.9em;
    max-height: 2.9em;
    margin-bottom: 8px;
}
body.allt-catalog-fullwidth #primary ul.products .cfvsw_variations_form,
body.allt-catalog-fullwidth #primary ul.products .variations_form,
body.allt-catalog-fullwidth #primary ul.products .cfvsw-shop-variations,
body.allt-catalog-fullwidth #primary ul.products .cfvsw-shop-container,
body.allt-catalog-fullwidth #primary ul.products .ast-woo-product-category,
body.allt-catalog-fullwidth #primary ul.products .star-rating,
body.allt-catalog-fullwidth #primary ul.products .ast-woo-shop-product-description,
body.allt-catalog-fullwidth #primary ul.products .ast-woo-product-actions,
body.allt-catalog-fullwidth #primary ul.products .button { display: none !important; }
@media (max-width: 921px) {
    body.allt-catalog-fullwidth #primary ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        column-gap: 14px;
    }
}
@media (max-width: 600px) {
    body.allt-catalog-fullwidth #primary ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 12px;
        row-gap: 24px;
    }
}
