/* Native page scrolling, bounded by the overview, never a nested scroller. */
body.single-product .vk-product-overview { display: flow-root; }
/* Synchronous measurement only: never shown or interactive, never in flow. */
body.single-product .vk-purchase-bar[hidden].vk-gallery-measure {
    display: block !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
@media (min-width: 991px) {
    /* Legacy off-canvas shells used overflow:hidden, creating non-scrolling
       scroll containers. clip preserves their clipping without trapping sticky. */
    @supports (overflow: clip) {
        body.single-product :is(#off-container, .off-content) { overflow: clip; }
    }
    body.single-product .vk-product-overview {
        display: grid;
        grid-template-columns: minmax(0, 55fr) minmax(0, 45fr);
        align-items: start;
    }
    body.single-product .has-vk-empty-product-sidebar .vk-product-overview {
        grid-template-columns: minmax(0, 58fr) minmax(0, 42fr);
    }
    body.single-product .vk-product-overview > :is(.single-product-images, .image-content, .single-product-infos) {
        float: none !important;
        width: 100% !important;
        min-width: 0;
        margin-top: 0;
    }
    body.single-product .vk-product-overview > .single-product-infos { padding-left: 32px; }
    body.single-product .has-vk-empty-product-sidebar .vk-product-overview > .single-product-infos { padding-left: 42px; }
    body.single-product .vk-product-overview.vk-gallery-sticky-enabled > :is(.single-product-images, .image-content) {
        position: sticky;
        top: var(--vk-gallery-sticky-top, 100px);
        align-self: start;
        z-index: 2;
    }
}
@media (max-width: 990px) {
    body.single-product .vk-product-overview > :is(.single-product-images, .image-content, .single-product-infos) {
        float: none !important;
        width: 100% !important;
    }
    body.single-product .vk-product-overview > .single-product-infos { padding-left: 0; }
}
