/* Fallbacks for copied Elementor pages running without Elementor's scripts. */
.elementor-invisible { visibility: visible !important; }
.elementor-element.animated, [data-settings*="_animation"] { opacity: 1 !important; animation: none !important; }

/* Sliders become a swipeable row. */
.swiper, .swiper-container, .elementor-image-carousel-wrapper, .elementor-slides-wrapper { overflow: hidden; }
.swiper-wrapper, .elementor-image-carousel, .elementor-slides {
	display: flex !important;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	gap: 12px;
	transform: none !important;
}
.swiper-slide { flex: 0 0 100%; scroll-snap-align: start; height: auto; }
.elementor-image-carousel .swiper-slide { flex-basis: min(100%, 420px); }
.swiper-pagination, .elementor-swiper-button, .swiper-button-next, .swiper-button-prev { display: none !important; }
.swiper-slide-duplicate { display: none !important; }

/* Mobile nav dropdown opens when the toggle is active. */
.elementor-menu-toggle.elementor-active + .elementor-nav-menu__container,
.elementor-menu-toggle.elementor-active + nav.elementor-nav-menu--dropdown { display: block; transform: scaleY(1); max-height: 100vh; }

/* Videos that were waiting for a script. */
.elementor-widget-video .elementor-custom-embed-image-overlay { display: none; }
