@media (max-width: 1200px) {
    .home-product-row {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .home-product-row-carousel .home-product-card {
        flex-basis: calc((100% - (18px * 3)) / 4);
    }

    .home-brand-directory-card {
        flex-basis: calc((100% - (12px * 3)) / 4);
    }

    .home-brand-directory-section.is-expanded .home-brand-directory-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .home-brand-layout {
        grid-template-columns: 1fr;
    }

    .home-brand-layout.is-logo-right .home-brand-panel,
    .home-brand-layout.is-logo-right .home-product-row {
        order: initial;
    }

    .home-brand-panel {
        min-height: 120px;
        height: 120px;
        justify-content: center;
    }

    .home-brand-panel img {
        max-width: 260px;
    }
}

@media (max-width: 900px) {
    .article-grid {
        grid-template-columns: 1fr;
    }

    .detail-layout {
        grid-template-columns: 1fr;
        gap: 18px;
        margin-top: 24px;
        margin-bottom: 40px;
    }

    .detail-media {
        min-height: 280px;
    }

    .detail-media > img,
    .product-main-image-button img {
        max-height: 240px;
    }

    .detail-content,
    .detail-description-card {
        padding: 22px;
    }

    .spec-grid {
        grid-template-columns: 1fr;
    }

    .home-section-heading {
        justify-content: flex-start;
        text-align: left;
    }

    .home-section-heading h2 {
        font-size: 26px;
    }

    .home-brand-directory-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .home-brand-directory-head h2 {
        font-size: 24px;
    }

    .home-brand-directory-card {
        flex-basis: calc((100% - 12px) / 2);
    }

    .home-brand-directory-section.is-expanded .home-brand-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 10px;
    }

    .home-brand-directory-card {
        height: 78px;
        padding: 10px 12px;
    }

    .home-product-row,
    .home-module-reference-grid {
        grid-template-columns: 1fr;
    }

    .product-filter-head {
        display: grid;
    }

    .product-filter-controls {
        grid-template-columns: 1fr;
    }

    .product-filter-actions {
        justify-content: stretch;
    }

    .product-filter-actions button,
    .product-filter-actions a {
        flex: 1 1 0;
    }

    .nav-mega-menu {
        width: min(820px, calc(100vw - 24px));
        max-height: min(72vh, 640px);
        overflow: auto;
    }

    .nav-mega-layout {
        grid-template-columns: 220px minmax(0, 1fr);
        min-height: 380px;
    }

    .nav-mega-panel {
        inset: 0 0 0 220px;
    }

    .nav-mega-subgroups {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-product-row {
        gap: 16px;
    }

    .home-product-card {
        grid-template-columns: 108px minmax(0, 1fr);
        grid-template-rows: auto auto;
        column-gap: 14px;
        align-items: center;
    }

    .home-product-image {
        grid-row: 1 / span 2;
        min-height: 108px;
        aspect-ratio: 1 / 1;
    }

    .home-product-card h3 {
        min-height: 0;
        max-height: none;
        font-size: 17px;
        -webkit-line-clamp: 2;
    }

    .home-product-row-scroll .home-product-card {
        flex-basis: 240px;
        display: grid;
        grid-template-columns: 1fr;
    }

    .home-product-row-scroll .home-product-image {
        grid-row: auto;
    }

    .checkout-grid,
    .form-grid {
        grid-template-columns: 1fr;
    }

    .payment-panel-heading {
        grid-template-columns: 1fr;
    }

    .payment-fee-button {
        grid-column: 1;
        grid-row: auto;
        justify-self: start;
    }

    .beam-card-form > div,
    .beam-card-form > div:nth-of-type(2),
    .beam-card-form.is-installment > div:nth-of-type(2) {
        grid-template-columns: 1fr;
    }

    .beam-card-amount-summary {
        grid-template-columns: 1fr;
    }

    .beam-card-form > .beam-card-security-note {
        flex-direction: column;
    }

    .order-actions-bar,
    .order-cancel-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .beam-payment-dialog.beam-card-dialog {
        width: min(100%, calc(100vw - 24px));
        padding: 28px 24px;
    }

    .checkout-items-table {
        min-width: 480px;
    }
}

/* Checkout shipping select must visually match the coupon/input controls. */
.checkout-summary .shipping-options-dropdown select[data-shipping-select] {
    box-sizing: border-box;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    padding: 6px 40px 6px 12px !important;
    border-radius: var(--radius);
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    appearance: none;
    background-color: #ffffff;
    background-image:
        linear-gradient(45deg, transparent 50%, var(--color-ink) 50%),
        linear-gradient(135deg, var(--color-ink) 50%, transparent 50%);
    background-position:
        calc(100% - 22px) calc(50% - 3px),
        calc(100% - 15px) calc(50% - 3px);
    background-size: 7px 7px, 7px 7px;
    background-repeat: no-repeat;
}
