/* Elementor hides animated elements until its JS runs. Without our script (html.js-anim) show them. */
html:not(.js-anim) .elementor-invisible{visibility:visible!important}
img[loading=lazy]{content-visibility:auto}

/* CSS-only replacement for Elementor's Swiper image-carousel marquee (see scripts/port-legacy.py) */
.css-marquee{overflow:hidden;container-type:inline-size}
.css-marquee .swiper-wrapper{display:flex!important;flex-wrap:nowrap;width:max-content;animation:css-marquee var(--dur,30s) linear infinite}
.css-marquee .swiper-slide{flex:0 0 auto!important;max-width:none!important;width:calc((100cqw - (var(--n) - 1) * var(--gap)) / var(--n))!important;margin-right:var(--gap)!important;display:flex;align-items:center;justify-content:center}
.css-marquee:hover .swiper-wrapper{animation-play-state:paused}
@keyframes css-marquee{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.css-marquee .swiper-wrapper{animation:none}}

/* No-JS fallback: show the first tab panel (site.js takes over when it runs) */
.elementor-tabs .elementor-tab-content[data-tab="1"]{display:block}

/* Mobile: Elementor's Swiper showed fewer slides per view; keep the marquee readable */
@media (max-width:767px){
  .css-marquee .swiper-slide{width:calc((100cqw - 20px) / 2)!important;margin-right:20px!important}
}

/* Rows set to dir="rtl" in the original scroll the other way; their track grows leftwards, so move it right */
.css-marquee[dir=rtl] .swiper-wrapper{animation-name:css-marquee-rtl}
@keyframes css-marquee-rtl{to{transform:translateX(50%)}}

/* Swiper's lazy spinner is removed by its JS once an image loads; we load images directly */
.swiper-lazy-preloader{display:none!important}

/* Testimonial slider driven by site.js */
.css-slider .elementor-main-swiper{overflow:hidden}
.css-slider .swiper-wrapper{display:flex;flex-wrap:nowrap;transition:transform .5s ease}
.css-slider .swiper-slide{flex:0 0 100%;width:100%;margin-right:10px;box-sizing:border-box}
.css-slider .swiper-pagination{display:flex;gap:8px;justify-content:center;position:relative;margin-top:16px}
.css-slider .swiper-pagination-bullet{width:6px;height:6px;border-radius:50%;background:#000;opacity:.2;cursor:pointer}
.css-slider .swiper-pagination-bullet-active{opacity:1}
.css-slider .elementor-swiper-button{cursor:pointer}
@media (prefers-reduced-motion:reduce){.css-slider .swiper-wrapper{transition:none}}
