.horizontal-scroll-container {
    position: relative;
    overflow: hidden;
}

/* Elementor-Transition auf transform deaktivieren - GSAP setzt beim Pin-Ende einen
   transform-Versatz, der sonst 0.4s animiert wird und die Seite springen laesst */
.horizontal-scroll-container.e-con {
    transition-property: background, border, box-shadow;
}

.horizontal-scroll-container > .e-con,
.horizontal-scroll-container > .e-container {
    display: flex;
    height: var(--min-height, 100vh);
    will-change: transform;
    transition: none !important;
}

/* Elementor-Transition auf transform deaktivieren - GSAP setzt beim Pin-Ende einen
   transform-Versatz, der sonst 0.4s animiert wird und die Seite springen laesst */
.horizontal-scroll-container.e-con {
    transition-property: background, border, box-shadow;
}

.horizontal-scroll-container > .e-con > *,
.horizontal-scroll-container > .e-container > * {
    flex-shrink: 0;
    height: var(--min-height, 100vh);
}


/* Fortschrittsbalken am unteren Bildschirmrand */
.horizontal-scroll-progress {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    height: var(--progress-bar-height, 4px);
    background: var(--progress-bar-track-color, rgba(0, 0, 0, 0.08));
    z-index: 9999;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s linear;
}

.horizontal-scroll-progress.is-active {
    opacity: 1;
}

.horizontal-scroll-progress__bar {
    height: 100%;
    width: 100%;
    background: var(--progress-bar-color, #ff0000);
    transform: scaleX(0);
    transform-origin: left;
}

/* Standard-Scrollbar optional ausblenden, gesteuert ueber body { --hide-default-scrollbar: true; } */
html.hide-scrollbar {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

html.hide-scrollbar::-webkit-scrollbar {
    display: none;
}


@media(max-width: 1024px){
	/* Mobiler Fallback: normale vertikale Stapelung statt horizontalem Scroll */
	.horizontal-scroll-container {
		height: auto !important;
	}

	.horizontal-scroll-container > .e-con,
	.horizontal-scroll-container > .e-container {
		flex-direction: column;
		height: auto;
		transform: none !important;
	}

	.horizontal-scroll-container > .e-con > *,
	.horizontal-scroll-container > .e-container > * {
		height: auto;
	}
}