/*
 * Main theme catalogue alignment.
 * Desktop: filters remain in the left rail; toolbar, result summary and cards
 * form one uninterrupted right column. Mobile/tablet keep the disclosure UI.
 */
@media (min-width: 901px) {
    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .rr-products-filter-layout {
        display: grid !important;
        grid-template-columns: minmax(240px, 276px) minmax(0, 1fr) !important;
        grid-template-areas: "filters products" !important;
        align-items: start !important;
        column-gap: 22px !important;
        row-gap: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 30px 0 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .rr-products-filter-sidebar {
        grid-area: filters !important;
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        align-self: start !important;
    }

    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .rr-products-listing-main {
        grid-area: products !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    #allProductsMobileSearchSortCard {
        order: 1 !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 0 22px !important;
        box-sizing: border-box !important;
    }

    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .all-products-meta {
        order: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 0 18px !important;
        box-sizing: border-box !important;
    }

    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .all-products-grid,
    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .rr-central-products-grid {
        order: 3 !important;
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        align-items: start !important;
        gap: 22px !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .all-products-grid > *,
    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .rr-central-products-grid > * {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
        align-self: start !important;
        box-sizing: border-box !important;
    }

    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .all-products-pagination,
    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .pagination,
    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .products-pagination {
        order: 4 !important;
    }
}

@media (min-width: 901px) and (max-width: 1280px) {
    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .all-products-grid,
    html body.rr-theme-main:not(.admin)
    section.all-products-page.rr-products-filter-sidebar-v1
    .rr-central-products-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }
}
