/* SilaVolt Carousel Core — opt-in component. No global .swiper rules. */
.sv-carousel {
  --sv-carousel-accent: #6cb53f;
  --sv-carousel-muted: #bfc3c7;
  --sv-carousel-arrow: 36px;
  --sv-carousel-dot: 9px;
  --sv-carousel-gap: 5px;
  min-width: 0;
  max-width: 100%;
}
.sv-carousel .sv-carousel__viewport {min-width:0;max-width:100%;overflow:hidden}
.sv-carousel .sv-carousel__controls {display:flex;align-items:center;justify-content:center;gap:14px;min-height:44px;margin-top:16px;max-width:100%;box-sizing:border-box}
.sv-carousel .sv-carousel__prev,.sv-carousel .sv-carousel__next {position:static!important;inset:auto!important;transform:none!important;display:flex!important;justify-content:center;align-items:center;margin:0!important;padding:0;flex:0 0 var(--sv-carousel-arrow);width:var(--sv-carousel-arrow);height:var(--sv-carousel-arrow);border:0;border-radius:3px;background:var(--sv-carousel-accent);color:#fff;cursor:pointer;touch-action:manipulation}
.sv-carousel:not(.sv-carousel__controls) .sv-carousel__prev::after,.sv-carousel:not(.sv-carousel__controls) .sv-carousel__next::after{content:'';width:8px;height:13px;display:block;border-right:2px solid #fff;border-top:2px solid #fff;transform:rotate(45deg);box-sizing:border-box}
.sv-carousel:not(.sv-carousel__controls) .sv-carousel__prev::after{transform:rotate(-135deg)}
.sv-carousel .sv-carousel__pagination {position:static!important;inset:auto!important;transform:none!important;width:auto!important;min-width:0;max-width:min(56vw,240px);min-height:24px;display:flex;align-items:center;justify-content:center;gap:var(--sv-carousel-gap);overflow:hidden!important;flex:0 1 auto;margin:0!important}
.sv-carousel .sv-carousel__pagination .swiper-pagination-bullet{display:none!important;position:static!important;transform:none!important;opacity:1!important;margin:0!important;padding:0!important;flex:0 0 var(--sv-carousel-dot);width:var(--sv-carousel-dot)!important;height:var(--sv-carousel-dot)!important;border:0!important;border-radius:50%;background:var(--sv-carousel-muted)}
.sv-carousel .sv-carousel__pagination .swiper-pagination-bullet.sv-carousel__bullet-visible{display:inline-block!important}
.sv-carousel .sv-carousel__pagination .swiper-pagination-bullet-active{background:var(--sv-carousel-accent)!important}
.sv-carousel .swiper-button-disabled{opacity:.35;cursor:default}
.sv-carousel .sv-carousel__prev:focus-visible,.sv-carousel .sv-carousel__next:focus-visible,.sv-carousel .sv-carousel__pagination .swiper-pagination-bullet:focus-visible{outline:2px solid #272727;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.sv-carousel *{scroll-behavior:auto!important}}

/* Scoped legacy controls. Specificity wins over later ACF block styles. */
.sv-carousel.sv-carousel__controls {display:flex;align-items:center;justify-content:center;gap:14px;min-height:44px;margin-top:16px;max-width:100%;box-sizing:border-box}
.sv-carousel.sv-carousel__controls .sv-carousel__prev,
.sv-carousel.sv-carousel__controls .sv-carousel__next {position:static!important;inset:auto!important;transform:none!important;display:flex;justify-content:center;align-items:center;margin:0!important;padding:0;flex:0 0 36px;width:36px;height:36px;min-width:36px;min-height:36px;border:0;border-radius:3px;background:#6cb53f;color:#fff;cursor:pointer;touch-action:manipulation}
.sv-carousel.sv-carousel__controls .sv-carousel__pagination {position:static!important;inset:auto!important;transform:none!important;width:auto!important;min-width:0;max-width:min(56vw,240px);height:auto;min-height:24px;display:flex!important;align-items:center;justify-content:center;gap:5px;overflow:hidden!important;flex:0 1 auto;margin:0!important}
.sv-carousel.sv-carousel__controls .sv-carousel__pagination .swiper-pagination-bullet {display:none!important;position:static!important;transform:none!important;opacity:1!important;margin:0!important;padding:0!important;flex:0 0 9px;width:9px!important;height:9px!important;min-width:9px;border:0!important;border-radius:50%;background:#bfc3c7}
.sv-carousel.sv-carousel__controls .sv-carousel__pagination .swiper-pagination-bullet.sv-carousel__bullet-visible {display:inline-block!important}
.sv-carousel.sv-carousel__controls .sv-carousel__pagination .swiper-pagination-bullet-active {background:#6cb53f!important}
.sv-carousel.sv-carousel__controls .swiper-button-disabled {opacity:.35;cursor:default}

.sv-carousel.sv-carousel__controls .slv-mobile-carousel__prev::after,.sv-carousel.sv-carousel__controls .slv-mobile-carousel__next::after {content:none}

.sv-carousel.sv-carousel__controls[hidden] {display:none!important}
.sv-carousel.sv-carousel__legacy-controls .sv-carousel__prev,
.sv-carousel.sv-carousel__legacy-controls .sv-carousel__next {font-size:28px;line-height:1;background:#6cb53f!important;color:#fff!important}
.sv-carousel.sv-carousel__legacy-controls .sv-carousel__prev::after,
.sv-carousel.sv-carousel__legacy-controls .sv-carousel__next::after {content:none!important}
.sv-carousel.sv-carousel__legacy-controls .sv-carousel__prev svg path,
.sv-carousel.sv-carousel__legacy-controls .sv-carousel__next svg path {stroke:#fff!important}
.sv-carousel.sv-carousel__legacy-controls .sv-carousel__prev.swiper-button-disabled,
.sv-carousel.sv-carousel__legacy-controls .sv-carousel__next.swiper-button-disabled {opacity:.35!important}

/* Shared interaction contract for all ordinary SilaVolt carousels. */
.sv-carousel__slider {cursor:grab}
.sv-carousel__slider:active {cursor:grabbing}
.sv-carousel__slider img {-webkit-user-drag:none;user-select:none}

/* Shared carousel contract: no controls when Swiper has no overflow. */
.sv-carousel.sv-carousel__controls[hidden],.sv-carousel .sv-carousel__controls[hidden] {display:none!important;}
/* The same 16px controls separation for standard desktop and mobile controls. */
.sv-carousel.sv-carousel__controls,.sv-carousel .sv-carousel__controls {margin-top:16px;}
/* Stage 5E3: semantic hidden state outranks legacy flex declarations; no phantom one-dot rows. */
.sv-carousel__controls[hidden],
.sv-product-controls[hidden],
.slv-mobile-carousel__controls[hidden],
.sv-carousel__legacy-controls[hidden],
.clients-controls[hidden] { display:none!important; margin:0!important; min-height:0!important; padding:0!important; }
