/* 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) {
    body.single-product .vk-gallery-fit-media #product-images-carousel {
        height: var(--vk-gallery-media-height);
    }
    body.single-product .vk-gallery-fit-media #product-images-carousel :is(.owl-stage-outer, .owl-stage, .owl-item, .owl-item > div, .easyzoom, .easyzoom > a:not(.product_image_zoom_button)) {
        height: 100% !important;
        min-height: 0;
    }
    body.single-product .vk-gallery-fit-media #product-images-carousel img {
        width: 100% !important;
        height: 100% !important;
        max-height: 100%;
        aspect-ratio: auto;
        object-fit: contain;
    }
    /* 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; }
}
