/* MundoStores Commerce V192 - conversion, mobile ergonomics and layout stability */
html body.ms-page-product,
html body.ms-page-cart,
html body.ms-page-checkout {
    overflow-x: clip;
}

html body.ms-page-product main,
html body.ms-page-cart main,
html body.ms-page-checkout main,
html body.ms-page-product main *,
html body.ms-page-cart main *,
html body.ms-page-checkout main * {
    min-width: 0;
}

html body.ms-page-product button,
html body.ms-page-product a,
html body.ms-page-cart button,
html body.ms-page-cart a,
html body.ms-page-checkout button,
html body.ms-page-checkout a {
    touch-action: manipulation;
}

/* Product page: preserve readable titles/options and a reliable purchase action. */
html body.ms-page-product .product-title,
html body.ms-page-product .produto-title,
html body.ms-page-product h1,
html body.ms-page-product .product-info h2,
html body.ms-page-product .variant-name,
html body.ms-page-product .variation-name {
    max-width: 100%;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
}

html body.ms-page-product .variation-option,
html body.ms-page-product .variant-option,
html body.ms-page-product [data-variant-option],
html body.ms-page-product .btn-buy,
html body.ms-page-product .btn-add-cart,
html body.ms-page-product #btn-add-cart {
    min-height: 48px;
}

html body.ms-page-product .variation-option,
html body.ms-page-product .variant-option,
html body.ms-page-product [data-variant-option] {
    height: auto !important;
    padding: 10px 12px !important;
    white-space: normal !important;
    line-height: 1.25 !important;
}

html body.ms-page-product .product-image img,
html body.ms-page-product .produto-imagem img,
html body.ms-page-product .main-product-image,
html body.ms-page-product .product-gallery img {
    max-width: 100%;
    height: auto;
}

html body.ms-page-product .mobile-sticky-cta {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
    transition: transform .2s ease, opacity .2s ease !important;
}

html body.ms-page-product .mobile-sticky-cta.is-main-cta-visible {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(calc(100% + 14px)) !important;
}

/* Cart: keep summary persuasive without hiding products or requiring sideways scroll. */
html body.ms-page-cart #cart-page-shell {
    width: 100% !important;
    max-width: 1320px !important;
    margin-inline: auto !important;
}

html body.ms-page-cart #cart-page-shell .card-carrinho,
html body.ms-page-cart #cart-page-shell .cart-summary,
html body.ms-page-cart #cart-page-shell .lead-capture-box,
html body.ms-page-cart #cart-page-shell .coupon-box-cart {
    background: #fff !important;
    opacity: 1 !important;
    backdrop-filter: none !important;
}

html body.ms-page-cart #cart-page-shell .item-details h6,
html body.ms-page-cart #cart-page-shell .lc-upsell-info strong,
html body.ms-page-cart #cart-page-shell .summary-item span:first-child {
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
}

html body.ms-page-cart #cart-page-shell .coupon-form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 8px !important;
}

html body.ms-page-cart #cart-page-shell .coupon-form input,
html body.ms-page-cart #cart-page-shell .coupon-form button,
html body.ms-page-cart #cart-page-shell .lead-capture-box .form-control,
html body.ms-page-cart #cart-page-shell .btn-checkout,
html body.ms-page-cart #cart-page-shell .cart-google-btn {
    min-height: 48px !important;
}

html body.ms-page-cart #cart-page-shell .btn-checkout {
    width: 100% !important;
}

/* Checkout: solid sections, stable two-column composition, and comfortable fields. */
html body.ms-page-checkout .checkout-container {
    width: 100% !important;
    max-width: 1320px !important;
    margin-inline: auto !important;
    align-items: start !important;
}

html body.ms-page-checkout .checkout-content-column,
html body.ms-page-checkout .checkout-summary-column,
html body.ms-page-checkout .checkout-section,
html body.ms-page-checkout .payment-option-card {
    background: #fff !important;
    opacity: 1 !important;
    backdrop-filter: none !important;
}

html body.ms-page-checkout .checkout-content-column,
html body.ms-page-checkout .checkout-summary-column {
    min-width: 0 !important;
}

html body.ms-page-checkout .checkout-section h2,
html body.ms-page-checkout .checkout-section h3,
html body.ms-page-checkout .checkout-summary-column h2,
html body.ms-page-checkout .checkout-summary-column h3,
html body.ms-page-checkout .summary-item-name,
html body.ms-page-checkout .product-name {
    max-width: 100%;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
}

html body.ms-page-checkout input:not([type="checkbox"]):not([type="radio"]),
html body.ms-page-checkout select,
html body.ms-page-checkout textarea,
html body.ms-page-checkout .payment-option-card,
html body.ms-page-checkout button[type="submit"] {
    min-height: 50px !important;
}

html body.ms-page-checkout button[type="submit"],
html body.ms-page-checkout .btn-finalizar,
html body.ms-page-checkout #btn-finalizar-pedido,
html body.ms-page-checkout #btn-pagar {
    width: 100% !important;
}

@media (min-width: 992px) and (min-height: 780px) {
    html body.ms-page-cart #cart-page-shell .cart-summary,
    html body.ms-page-checkout .checkout-summary-column {
        position: sticky !important;
        top: calc(var(--ms-topbar-h, 32px) + var(--lc-header-h-small, 68px) + 14px) !important;
    }
}

@media (min-width: 992px) and (max-height: 779px) {
    html body.ms-page-cart #cart-page-shell .cart-summary,
    html body.ms-page-checkout .checkout-summary-column {
        position: static !important;
        top: auto !important;
    }
}

@media (max-width: 991.98px) {
    html body.ms-page-product main,
    html body.ms-page-cart #cart-page-shell,
    html body.ms-page-checkout main {
        width: 100% !important;
        max-width: 100% !important;
    }

    html body.ms-page-product input,
    html body.ms-page-product select,
    html body.ms-page-product textarea,
    html body.ms-page-cart input,
    html body.ms-page-cart select,
    html body.ms-page-cart textarea,
    html body.ms-page-checkout input,
    html body.ms-page-checkout select,
    html body.ms-page-checkout textarea {
        font-size: 16px !important;
    }

    html body.ms-page-cart #cart-page-shell .cart-summary,
    html body.ms-page-checkout .checkout-summary-column {
        position: static !important;
        top: auto !important;
    }

    html body.ms-page-checkout .checkout-container {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
    }

    html body.ms-page-checkout .checkout-content-column,
    html body.ms-page-checkout .checkout-summary-column {
        width: 100% !important;
        border-radius: 20px !important;
        padding: 13px !important;
        overflow: visible !important;
    }

    html body.ms-page-checkout .checkout-summary-column {
        order: 2 !important;
    }
}

@media (max-width: 575.98px) {
    html body.ms-page-product main,
    html body.ms-page-cart #cart-page-shell,
    html body.ms-page-checkout main {
        padding-right: 8px !important;
        padding-left: 8px !important;
    }

    html body.ms-page-product .product-card,
    html body.ms-page-product .product-info,
    html body.ms-page-product .produto-info,
    html body.ms-page-cart #cart-page-shell .card-carrinho,
    html body.ms-page-cart #cart-page-shell .cart-summary,
    html body.ms-page-checkout .checkout-content-column,
    html body.ms-page-checkout .checkout-summary-column {
        border-radius: 16px !important;
    }

    html body.ms-page-cart #cart-page-shell .coupon-form {
        grid-template-columns: 1fr !important;
    }

    html body.ms-page-cart #cart-page-shell .coupon-form button {
        width: 100% !important;
    }

    html body.ms-page-cart #cart-page-shell .cart-item-img {
        width: 64px !important;
        min-width: 64px !important;
        height: 64px !important;
        object-fit: cover !important;
    }

    html body.ms-page-checkout .checkout-section {
        padding: 10px !important;
    }

    html body.ms-page-checkout .payment-method-grid,
    html body.ms-page-checkout .form-row,
    html body.ms-page-checkout .form-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html body.ms-page-product .mobile-sticky-cta {
        transition: none !important;
    }
}
