/* =========================
   BASE RESET (SAFE)
========================= */

html,
body {
    width: 100%;
    overflow-x: hidden;
}

/* =========================
   DESKTOP SMOOTH SCROLL ONLY
   (Disable on Mobile)
========================= */

@media (min-width: 1024px) {

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

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

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

}

/* =========================
   MOBILE FIX
   Restore Native Scroll
========================= */

@media (max-width: 1023px) {

    html,
    body {
        overflow: auto !important;
        height: auto !important;
    }

    html.has-scroll-smooth,
    .has-scroll-smooth body {
        overflow: auto !important;
    }

    [data-scroll-container] {
        min-height: auto !important;
    }

}

/* =========================
   HORIZONTAL MODE
========================= */

[data-scroll-direction="horizontal"] [data-scroll-container] {
    height: 100dvh; /* dynamic viewport height */
    display: inline-block;
    white-space: nowrap;
}

[data-scroll-direction="horizontal"] [data-scroll-section] {
    display: inline-block;
    vertical-align: top;
    white-space: nowrap;
    height: 100%;
}

/* =========================
   SCROLLBAR
========================= */

.c-scrollbar {
    position: fixed; /* changed from absolute */
    right: 0;
    top: 0;
    width: 8px;
    height: 100%;
    transform-origin: center right;
    transition: transform .3s, opacity .3s;
    opacity: 0;
    z-index: 9999;
}

.c-scrollbar:hover {
    transform: scaleX(1.2);
}

.c-scrollbar:hover,
.has-scroll-dragging .c-scrollbar,
.has-scroll-scrolling .c-scrollbar {
    opacity: 1;
}

[data-scroll-direction="horizontal"] .c-scrollbar {
    width: 100%;
    height: 8px;
    top: auto;
    bottom: 0;
    transform: scaleY(1);
}

[data-scroll-direction="horizontal"] .c-scrollbar:hover {
    transform: scaleY(1.2);
}

.c-scrollbar_thumb {
    position: absolute;
    top: 0;
    right: 0;
    background-color: #000;
    opacity: .4;
    width: 6px;
    border-radius: 10px;
    margin: 2px;
    cursor: grab;
}

.has-scroll-dragging .c-scrollbar_thumb {
    cursor: grabbing;
}

/* =========================
   MOBILE: Disable Custom Scrollbar
========================= */

@media (max-width: 1023px) {
    .c-scrollbar {
        display: none !important;
    }
}


