/**
 * MWS Smooth Scroll - Main Styles
 * Version: 1.2.0
 * 
 * This stylesheet provides base styles for all smooth scroll engines.
 * Engine-specific styles are included below.
 */

/* Global enable class */
.mws-smooth-scroll-enabled {
	/* Optional: Add global styles here */
}

/* Accessibility: Respect user's motion preferences */
@media (prefers-reduced-motion: reduce) {
	html.mws-no-motion,
	html.mws-no-motion * {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}

/* ============================================
   GSAP ScrollSmoother Specific Styles
   ============================================ */

.mws-ss-engine-gsap #smooth-wrapper {
	overflow: hidden;
	position: fixed;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}

.mws-ss-engine-gsap #smooth-content {
	overflow: visible;
	width: 100%;
	position: relative;
}

/* Fix for WP Admin Bar (GSAP) */
html.mws-ss-engine-gsap body.admin-bar #smooth-wrapper,
body.admin-bar.mws-ss-engine-gsap #smooth-wrapper {
	top: 32px;
	height: calc(100% - 32px);
}

@media screen and (max-width: 782px) {
	html.mws-ss-engine-gsap body.admin-bar #smooth-wrapper,
	body.admin-bar.mws-ss-engine-gsap #smooth-wrapper {
		top: 46px;
		height: calc(100% - 46px);
	}
}

/* ============================================
   Lenis Smooth Scroll Specific Styles
   ============================================ */

html.mws-ss-engine-lenis.lenis {
	height: auto;
}

html.mws-ss-engine-lenis.lenis body {
	height: auto;
}

html.mws-ss-engine-lenis .lenis.lenis-smooth {
	scroll-behavior: auto;
}

html.mws-ss-engine-lenis .lenis.lenis-smooth [data-lenis-prevent] {
	overscroll-behavior: contain;
}

html.mws-ss-engine-lenis .lenis.lenis-stopped {
	overflow: hidden;
}

html.mws-ss-engine-lenis .lenis.lenis-scrolling iframe {
	pointer-events: none;
}

/* ============================================
   Locomotive Scroll Specific Styles
   ============================================ */

html.has-scroll-smooth {
	overflow: hidden;
}

html.has-scroll-dragging {
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}

.has-scroll-smooth body {
	overflow: hidden;
}

.has-scroll-smooth [data-scroll-container] {
	min-height: 100vh;
}

[data-scroll-direction="horizontal"] [data-scroll-container] {
	height: 100vh;
	display: inline-block;
	white-space: nowrap;
}

/* Ensure Locomotive Scrollbar stays above local content without dominating the page */
html.has-scroll-smooth .c-scrollbar {
    z-index: 9999;
}
