/* ============================================================
   E-COMMERCE CORE GLOBAL LAYOUT GUARD
   Prevents off-canvas UI, wide tables and transformed panels from creating
   accidental horizontal page scroll on mobile.
============================================================ */
html,
body.eccore-site{
    max-width:100%;
    overflow-x:hidden;
    overflow-x:clip;
}

body.eccore-site #page,
body.eccore-site .site,
body.eccore-site .site-content,
body.eccore-site .elementor,
body.eccore-site .elementor-page,
body.eccore-site .elementor-location-header,
body.eccore-site .elementor-location-footer{
    max-width:100%;
}

body.eccore-site #page,
body.eccore-site .site{
    overflow-x:hidden;
    overflow-x:clip;
}

.seh-header,
.sn-shop,
.snsp,
.snsc-cart,
.snco,
.sn-ma,
.sn-ma-wrap,
.sn-ma-layout,
.sn-ma-login-page,
.snto,
.snpa,
.snpa-auth,
.sn-auth,
.sn-wishlist-page,
.snmfn,
.eccore-catalog-page{
    max-width:100%;
    min-width:0;
}

.seh-header img,
.sn-shop img,
.snsp img,
.snsc-cart img,
.snco img,
.sn-ma img,
.snto img,
.snpa img,
.sn-wishlist-page img,
.snmfn img{
    max-width:100%;
}

/* Off-canvas elements may translate outside the viewport, but must not widen it. */
.seh-mobile-menu,
.sn-sidebar,
.seh-mobile-overlay,
.sn-filter-overlay{
    contain:layout paint;
}

@media(max-width:767px){
    .seh-header,
    .sn-shop,
    .snsp,
    .snsc-cart,
    .snco,
    .sn-ma-wrap,
    .sn-ma-layout,
    .sn-ma-login-page,
    .snto,
    .snpa,
    .snpa-auth,
    .sn-wishlist-page,
    .snmfn,
    .eccore-catalog-page{
        overflow-x:clip;
    }

    .sn-cart-dropdown,
    .sn-wishlist-dropdown{
        max-width:calc(100vw - 24px) !important;
    }
}
