/* ================================================================
   SCROLL FIX - Universal Scroll Restoration
   Kingsland Holiday Theme - Fixes scroll blocking issues
   Version: 2026-01-31 - Patch 4 (Final Clean)
   ================================================================ */

/* Base scroll behavior - html and body */
html {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scroll-behavior: smooth !important;
}

body {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    min-height: 100% !important;
    height: auto !important;
    position: relative !important;
    -webkit-overflow-scrolling: touch !important;
}

/* Mobile menu open state - ONLY lock scroll when menu is open */
html.mobile-menu-open,
body.mobile-menu-open {
    overflow: hidden !important;
    height: 100vh !important;
    position: fixed !important;
    width: 100% !important;
}

/* Allow vertical scrolling on main containers */
.site,
.site-content,
.content-area,
.site-main,
main,
.page-content,
.home-page,
.heritage-home-page {
    overflow: visible !important;
}

/* Mobile specific fixes */
@media (max-width: 768px) {
    html,
    body {
        overscroll-behavior-y: contain !important;
    }

    body:not(.mobile-menu-open) {
        position: relative !important;
    }
}

/* Desktop - force scrollbar visibility */
@media (min-width: 769px) {
    html {
        overflow-y: scroll !important;
    }
}

/* Sliders/carousels - allow vertical scroll while horizontal swipe */
.slider,
.carousel,
.swiper,
.slick-slider,
.reviews-slider,
.gallery-slider {
    touch-action: pan-y !important;
}

/* Modal/Lightbox - lock scroll when open */
.lightbox-open body,
.gallery-open body,
.modal-open body {
    overflow: hidden !important;
}

/* Print styles */
@media print {
    html,
    body {
        overflow: visible !important;
        height: auto !important;
    }
}