/* Only product grids opted into the home/catalog view controls. */
html body.moto-native .moto-product-grid > .w-grid-list {
    grid-template-columns: repeat(var(--moto-catalog-columns, 3), minmax(0, 1fr)) !important;
}
html[data-moto-grid-desktop="1"] { --moto-catalog-columns: 1; }
html[data-moto-grid-desktop="2"] { --moto-catalog-columns: 2; }
html[data-moto-grid-desktop="3"] { --moto-catalog-columns: 3; }
body.moto-native .moto-catalog-view {
    display: none;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 12px;
    color: var(--st-ink, #111720);
    font-size: var(--moto-font-ui, 14px);
}
html[data-moto-grid-ready] body.moto-native .moto-catalog-view { display: flex; }
body.moto-native .moto-catalog-view__label { color: #596372; }
body.moto-native .moto-catalog-view__choices { display: inline-flex; gap: 4px; }
body.moto-native .moto-catalog-view__choices--mobile { display: none; }
body.moto-native .moto-catalog-view button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 54px;
    min-height: 44px;
    margin: 0;
    padding: 7px 9px;
    border: 1px solid #dce1e9;
    border-radius: 6px;
    background: #fff;
    box-shadow: none;
    color: #111720;
    font: inherit;
    font-weight: 650;
    line-height: 1;
    cursor: pointer;
}
body.moto-native .moto-catalog-view button svg {
    display: block;
    width: 24px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
}
body.moto-native .moto-catalog-view button:focus-visible { outline: 2px solid #087bfa; outline-offset: 2px; }
@media (hover: hover) {
    body.moto-native .moto-catalog-view button:hover { border-color: #ff5a14; }
}
html[data-moto-grid-desktop="1"] body.moto-native [data-moto-grid-context="desktop"] [data-moto-grid-columns="1"],
html[data-moto-grid-desktop="2"] body.moto-native [data-moto-grid-context="desktop"] [data-moto-grid-columns="2"],
html[data-moto-grid-desktop="3"] body.moto-native [data-moto-grid-context="desktop"] [data-moto-grid-columns="3"],
html[data-moto-grid-mobile="1"] body.moto-native [data-moto-grid-context="mobile"] [data-moto-grid-columns="1"],
html[data-moto-grid-mobile="2"] body.moto-native [data-moto-grid-context="mobile"] [data-moto-grid-columns="2"] {
    border-color: #ff5a14;
    background: #ff5a14;
    color: #111720;
}
@media (max-width: 767px) {
    html { --moto-catalog-columns: 2; }
    html[data-moto-grid-mobile="1"] { --moto-catalog-columns: 1; }
    html[data-moto-grid-mobile="2"] { --moto-catalog-columns: 2; }
    body.moto-native .moto-catalog-view__choices--desktop { display: none; }
    body.moto-native .moto-catalog-view__choices--mobile { display: inline-flex; }
}

/* Keep view choices beside the existing heading/sorting controls. */
body.moto-native .moto-catalog-view__label { display: none; }
body.moto-native .moto-catalog-view button {
    width: 44px;
    min-width: 44px;
    padding: 0;
    gap: 3px;
}
body.moto-native .moto-catalog-view button svg { width: 18px; height: 18px; }
body.moto-native .moto-catalog-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    max-width: 100%;
    margin-inline-start: auto;
}
body.moto-native .moto-catalog-actions .woocommerce-ordering {
    flex: 1 1 auto;
    width: clamp(136px, 16vw, 230px);
    min-width: 0;
    margin: 0;
}
body.moto-native .moto-catalog-actions .woocommerce-ordering select {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    height: 44px;
    padding: 8px 32px 8px 12px;
}
body.moto-native .moto-catalog-actions .moto-catalog-view { flex: none; margin: 0; }
@media (min-width: 701px) {
    body.moto-native .moto-catalog-heading { flex-direction: row; align-items: center; }
}
body.home.moto-native .wpb_wrapper > h2:has(+ .moto-catalog-view) {
    float: left;
    display: flex;
    align-items: center;
    max-width: calc(100% - 152px);
    min-height: 44px;
    margin: 0;
}
body.home.moto-native .moto-catalog-view { float: right; margin: 0; }
body.home.moto-native .moto-product-grid { clear: both; padding-top: 12px; }
@media (max-width: 767px) {
    body.home.moto-native .wpb_wrapper > h2:has(+ .moto-catalog-view) { max-width: calc(100% - 104px); }
}
@media (max-width: 700px) {
    body.moto-native .moto-catalog-page .moto-catalog-layout {
        grid-template-columns: minmax(78px, 1fr) minmax(0, 1.3fr) 92px;
        container-type: inline-size;
    }
    body.moto-native .moto-catalog-page .moto-catalog-actions { display: contents; }
    body.moto-native .moto-catalog-page .moto-catalog-view {
        grid-column: 3;
        grid-row: 2;
        float: none;
        margin: 0;
    }
    body.moto-native .moto-catalog-page .moto-catalog-actions .woocommerce-ordering { width: 100%; }
    body.moto-native .moto-catalog-page .moto-filter-content { width: 100cqw; }
}
@media (max-width: 420px) {
    body.moto-native .moto-catalog-page .moto-catalog-layout { grid-template-columns: 44px minmax(0, 1fr) 92px; }
    body.moto-native .moto-catalog-page .moto-filter-drawer > summary {
        justify-content: center;
        padding: 0;
        background-image: none;
    }
    body.moto-native .moto-catalog-page .moto-filter-label-mobile {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
    }
    body.moto-native .moto-catalog-page .moto-filter-drawer > summary::before {
        content: '';
        width: 18px;
        height: 18px;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111820' stroke-width='1.7' stroke-linejoin='round'%3E%3Cpath d='M3 4h18l-7 8v7l-4 2V12L3 4Z'/%3E%3C/svg%3E") center / contain no-repeat;
    }
}
