/* Betheme + JetWooBuilder: keep catalog controls inside their mobile card.
   Elementor gives the quantity 100% width and the button 70%, inside a nowrap
   flex row. The overrides are limited to this catalog component and breakpoint. */
@media (max-width: 1024px) {
    body .elementor .jet-woo-products .jet-woo-products__item,
    body .elementor .jet-woo-products .jet-woo-products__inner-box {
        min-width: 0;
        box-sizing: border-box;
    }
    body .elementor .jet-woo-products .jet-woo-products__inner-box {
        padding: 20px !important;
    }
    body .elementor .jet-woo-products .jet-woo-product-thumbnail img {
        display: block;
        width: 100%;
        height: auto;
    }
    body .elementor .jet-woo-products .jet-woo-product-title {
        font-size: 22px !important;
        line-height: 1.3 !important;
        letter-spacing: -.3px;
        margin: 12px 0 !important;
        overflow-wrap: anywhere;
    }
    body .elementor .jet-woo-products .jet-woo-product-title a {
        display: block;
        line-height: inherit;
    }
    body .elementor .jet-woo-products .jet-woo-product-button {
        width: 100%;
        min-width: 0;
        margin: 16px 0 0 !important;
    }
    body .elementor .jet-woo-products .jet-woo-product-button form.cart {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
        width: 100%;
        min-width: 0;
        margin: 0;
    }
    body .elementor .jet-woo-products .jet-woo-product-button form.cart > .quantity {
        width: 100% !important;
        max-width: 100%;
        min-width: 0;
        margin: 0 !important;
        float: none;
        box-sizing: border-box;
    }
    body .elementor .jet-woo-products .jet-woo-product-button .quantity .qty {
        width: 100% !important;
        min-width: 0;
        min-height: 48px;
        font-size: 16px !important;
        line-height: 20px;
        text-align: center;
        letter-spacing: normal !important;
        word-spacing: normal !important;
        box-sizing: border-box;
    }
    body .elementor .jet-woo-products .jet-woo-product-button .quantity-change {
        top: 2px;
        width: 44px;
        height: calc(100% - 4px);
        min-height: 44px;
    }
    body .elementor .jet-woo-products .jet-woo-product-button form.cart > .button {
        display: flex !important;
        align-items: center;
        justify-content: center;
        gap: 8px;
        width: 100% !important;
        max-width: 100%;
        min-width: 0 !important;
        min-height: 50px;
        margin: 0 !important;
        padding: 12px 16px !important;
        font-size: 15px !important;
        line-height: 1.35 !important;
        white-space: normal !important;
        box-sizing: border-box;
        float: none;
    }
    body .elementor .jet-woo-products .jet-woo-product-button__label {
        white-space: normal;
        overflow-wrap: anywhere;
    }
}

@media (max-width: 767px) {
    /* Betheme's sticky shop menu is 70px tall. Leave a 12px gap above it,
       including the device's safe area, instead of covering its cart link. */
    body.footer-menu-sticky .tks-float {
        right: 12px;
        bottom: calc(82px + env(safe-area-inset-bottom, 0px));
        min-height: 48px;
    }
}
