/* Lenis compatibility fallback. The same recommended rules are also loaded
   from the pinned official CDN stylesheet when the CDN is available. */
html.lenis,html.lenis body{height:auto}
.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}
.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}
.lenis.lenis-smooth iframe{pointer-events:none}
.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}

/* =========================================================
   PIXOCORE Advanced Smooth Scroll Enhancements
   Lenis handles smooth motion; these styles preserve native
   accessibility, fixed UI and a minimal scroll progress bar.
========================================================= */

html {
    scroll-padding-top: 104px;
}

/* Lenis' official stylesheet is loaded from CDN in each page.
   These project-specific rules only extend the experience. */
body.no-scroll {
    overscroll-behavior: none;
}

[id] {
    scroll-margin-top: 104px;
}

.scroll-progress {
    position: fixed;
    inset: 0 0 auto 0;
    z-index: 10000;
    height: 3px;
    pointer-events: none;
    overflow: hidden;
    background: transparent;
}

.scroll-progress > span {
    display: block;
    width: 100%;
    height: 100%;
    background: #212C62;
    transform: scaleX(0);
    transform-origin: 0 50%;
    will-change: transform;
}

@media (max-width: 767px) {
    html,
    [id] {
        scroll-padding-top: 88px;
        scroll-margin-top: 88px;
    }

    .scroll-progress {
        height: 2px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto !important;
    }

    .scroll-progress > span {
        transition: none !important;
    }
}
