/* Scoped to two source service widgets. Tablet default is one, not base-carousel two. */
[data-oasis-service-carousel] { --service-count:4; --service-gap:20px; }
[data-oasis-service-carousel] .swiper-wrapper { gap:var(--service-gap); }
[data-oasis-service-carousel] .swiper-slide {
    flex:0 0 calc((100% - (var(--service-count) - 1)*var(--service-gap))/var(--service-count));
    min-width:0;
}
[data-oasis-service-carousel].is-service-ready .swiper-wrapper { overflow:visible; scroll-snap-type:none; will-change:transform; }
[data-oasis-service-carousel].is-service-ready [data-service-viewport] { touch-action:pan-y; }
[data-service-viewport]:focus-visible { outline-offset:-3px; }
[data-oasis-service-carousel] .swiper-pagination { display:flex; justify-content:center; gap:0; margin-top:10px; }
.oasis-service-dot { display:grid; place-items:center; width:24px; height:24px; padding:0; border:0; background:transparent; cursor:pointer; }
.oasis-service-dot::before { content:''; width:6px; height:6px; border-radius:50%; background:#000; opacity:.2; }
.oasis-service-dot[aria-current="true"]::before { opacity:1; }
.oasis-service-pause { display:block; margin:5px 0 0 auto; padding:2px 6px; border:1px solid currentColor; border-radius:3px; color:#344583; background:white; font-size:11px; line-height:1.5; cursor:pointer; }
.oasis-service-pause:disabled { cursor:default; }
@media(max-width:1024px) { [data-oasis-service-carousel] { --service-count:1; --service-gap:10px; } }
@media(prefers-reduced-motion:reduce) { [data-oasis-service-carousel] .swiper-wrapper { transition:none!important; scroll-behavior:auto; } }
