/* Logorials replica: styles that stand in for what the old JavaScript did at runtime. */

/* Sticky header row (The7 set position fixed inline from JS). */
.the7-e-sticky-row-yes.the7-e-sticky-active { position: fixed; top: 0; left: 0; right: 0; width: 100%; }

/* Carousels: a horizontal scroll-snap track instead of Owl's transform stage. */
[data-lg-carousel] .owl-stage-outer { overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
[data-lg-carousel] .owl-stage-outer::-webkit-scrollbar { display: none; }
[data-lg-carousel] .owl-stage { display: flex; gap: var(--lg-gap, 30px); width: auto !important; transform: none !important; }
[data-lg-carousel] .dt-owl-item { flex: 0 0 calc((100% - (var(--lg-cols) - 1) * var(--lg-gap, 30px)) / var(--lg-cols)); width: auto !important; margin: 0 !important; scroll-snap-align: start; }
[data-lg-carousel] { --lg-cols: var(--lg-cols-d, 1); }
@media (max-width: 1024px) { [data-lg-carousel] { --lg-cols: var(--lg-cols-t, var(--lg-cols-d, 1)); } }
@media (max-width: 767px) { [data-lg-carousel] { --lg-cols: var(--lg-cols-m, 1); } }
[data-lg-carousel] .owl-dots, [data-lg-carousel] .owl-nav { display: flex; }
[data-lg-carousel] .owl-dots { justify-content: center; }

/* Mobile menu overlay (was an Elementor popup). */
[data-lg-menu] { position: fixed; inset: 0; z-index: 9999; overflow-y: auto; }
[data-lg-menu][hidden] { display: none !important; }
.lg-menu-open, .lg-menu-open body { overflow: hidden; }

/* Images The7 faded in once loaded: show them immediately. */
.layzr-bg, .lazy-load, .is-loading { opacity: 1 !important; }
.layzr-bg { background: none !important; }
