/* GM STORES v1.2.2 — mobile viewport and checkout stability */
html,
body,
html.gm-viewport-locked,
body.gm-viewport-locked {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: hidden !important;
    overscroll-behavior-x: none;
}

body.gm-brand-v013,
body.gm-brand-v013 main {
    position: relative;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: hidden !important;
}

body.gm-brand-v013 img,
body.gm-brand-v013 video,
body.gm-brand-v013 canvas,
body.gm-brand-v013 iframe {
    max-width: 100%;
}

input[data-phone-input] {
    direction: ltr;
    text-align: left;
    letter-spacing: normal;
    background-image: none !important;
    -webkit-appearance: none;
    appearance: none;
}

input[data-phone-input]::-webkit-contacts-auto-fill-button,
input[data-phone-input]::-webkit-credentials-auto-fill-button,
input[data-phone-input]::-webkit-textfield-decoration-container,
input[data-phone-input]::-webkit-caps-lock-indicator {
    visibility: hidden !important;
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

input[data-phone-input]::-ms-clear,
input[data-phone-input]::-ms-reveal {
    display: none !important;
}

@media (max-width: 991.98px) {
    body.gm-brand-v013 .brand-header,
    body.gm-brand-v013 .brand-header .premium-header-frame,
    body.gm-brand-v013 .brand-header .premium-header-main,
    body.gm-brand-v013 .brand-navigation,
    body.gm-brand-v013 .premium-hero,
    body.gm-brand-v013 .premium-hero .carousel,
    body.gm-brand-v013 .premium-hero .carousel-inner,
    body.gm-brand-v013 .premium-hero .carousel-item,
    body.gm-brand-v013 .hero-scene,
    body.gm-brand-v013 .home-composer-section,
    body.gm-brand-v013 .store-section,
    body.gm-brand-v013 .product-showcase,
    body.gm-brand-v013 .trust-ribbon,
    body.gm-brand-v013 .commerce-home-intro,
    body.gm-brand-v013 .category-editorial-grid,
    body.gm-brand-v013 .prefooter,
    body.gm-brand-v013 .premium-footer {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box;
    }

    body.gm-brand-v013 .brand-header .premium-header-frame,
    body.gm-brand-v013 .hero-scene > .container,
    body.gm-brand-v013 .home-composer-section > .container,
    body.gm-brand-v013 .store-section > .container,
    body.gm-brand-v013 .product-showcase > .container,
    body.gm-brand-v013 .trust-ribbon > .container,
    body.gm-brand-v013 .commerce-home-intro > .container,
    body.gm-brand-v013 .prefooter > .container,
    body.gm-brand-v013 .premium-footer > .container {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box;
    }

    body.gm-brand-v013 .brand-navigation.show,
    body.gm-brand-v013 .brand-navigation.collapsing {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    body.gm-brand-v013 .premium-hero {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    body.gm-brand-v013 .hero-content,
    body.gm-brand-v013 .hero-content h1,
    body.gm-brand-v013 .hero-content p,
    body.gm-brand-v013 .section-heading,
    body.gm-brand-v013 .section-heading > div,
    body.gm-brand-v013 .section-heading h2,
    body.gm-brand-v013 .section-heading p,
    body.gm-brand-v013 .category-editorial-card,
    body.gm-brand-v013 .category-editorial-card > div,
    body.gm-brand-v013 .category-editorial-card h3,
    body.gm-brand-v013 .category-editorial-card small {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    body.gm-brand-v013 .mobile-commerce-dock {
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: hidden;
    }

    body.gm-brand-v013 .mobile-commerce-dock a,
    body.gm-brand-v013 .mobile-commerce-dock button {
        min-width: 0 !important;
        max-width: 100%;
    }

    body.gm-brand-v013 .checkout-page-section,
    body.gm-brand-v013 .checkout-page-section .container,
    body.gm-brand-v013 .checkout-page-section .row,
    body.gm-brand-v013 .checkout-page-section [class*="col-"],
    body.gm-brand-v013 .checkout-page-section .summary-card,
    body.gm-brand-v013 .checkout-page-section .checkout-summary,
    body.gm-brand-v013 .checkout-page-section .payment-method-grid,
    body.gm-brand-v013 .checkout-page-section .payment-option {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    body.gm-brand-v013 input[data-phone-input] {
        min-height: 54px;
        padding-right: 14px !important;
        font-size: 16px !important;
    }
}

@media (max-width: 380px) {
    body.gm-brand-v013 .brand-header .premium-header-frame {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body.gm-brand-v013 .premium-hero {
        padding-left: 6px !important;
        padding-right: 6px !important;
    }

    body.gm-brand-v013 .mobile-commerce-dock {
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    body.gm-brand-v013 .mobile-commerce-dock small {
        font-size: .52rem !important;
    }
}
