/* Escopo base */
.ctr-carousel { position: relative; cursor: grab; }
.ctr-carousel:active { cursor: grabbing; }

/* Fallback 25% em telas largas (Swiper já faz via breakpoints) */
@media (min-width: 1202px) {
  .ctr-carousel .swiper-slide { width: 25%; }
}

/* Ajuste de box-sizing para consistência */
.ctr-carousel .swiper-slide { box-sizing: border-box; }

/* Esconde pseudo-setas padrão do Swiper */
.ctr-carousel .swiper-button-prev::after,
.ctr-carousel .swiper-button-next::after {
  display: none !important;
  content: none !important;
}

/* Botões de navegação */
.ctr-carousel .swiper-button-prev,
.ctr-carousel .swiper-button-next {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%);
  width: 35px !important;
  height: 35px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  cursor: pointer !important;
  z-index: 20 !important;
}

.ctr-carousel .swiper-button-prev { left: 10px !important; }
.ctr-carousel .swiper-button-next { right: 10px !important; }

/* SVG */
.ctr-carousel .swiper-button-prev svg,
.ctr-carousel .swiper-button-next svg {
  width: 35px !important;
  height: 35px !important;
  display: block !important;
}

/* Cor das setas */
.ctr-carousel .swiper-button-prev svg path,
.ctr-carousel .swiper-button-next svg path {
  fill: #003e82 !important;
  transition: fill .2s ease;
}

/* Hover das setas */
.ctr-carousel .swiper-button-prev:hover svg path,
.ctr-carousel .swiper-button-next:hover svg path {
  fill: #00afef !important;
}




/* Deixa o Swiper controlar a largura (evita "jump") */
.ctr-carousel.ctr-two-fixed .swiper-slide{
  box-sizing: border-box;
  display: flex; align-items: center; justify-content: center;
  padding: 6px 8px;
  min-width: 0; /* evita overflow por conteúdo largo */
}

/* Garante largura total do contêiner do carrossel */
.ctr-carousel,
.ctr-carousel.swiper {
  width: 100%;
}

/* Zera ruídos dos templates */
.ctr-carousel.ctr-two-fixed .elementor-section,
.ctr-carousel.ctr-two-fixed .elementor-container,
.ctr-carousel.ctr-two-fixed .elementor-column,
.ctr-carousel.ctr-two-fixed .elementor-widget-wrap{
  padding:0!important; margin:0!important; background:transparent!important; box-shadow:none!important;
}

/* Logos */
.ctr-carousel.ctr-two-fixed img,
.ctr-carousel.ctr-two-fixed svg{
  max-width:100%;
  max-height:60px;
  height:auto; width:auto;
  object-fit:contain; display:block;
}

/* --- SETAS PARA FORA (sem vazar clones) --- */
.ctr-carousel.ctr-two-fixed.ctr-arrows-out{
  position: relative;
  overflow: visible;               /* permite ver as setas fora */
}

/* corta somente slides/clones — setas continuam visíveis */
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-wrapper{
  overflow: hidden;
}

/* Setas fora */
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-prev,
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-next{
  display:flex!important; align-items:center; justify-content:center;
  width:28px!important; height:28px!important;
  top:50%!important; transform:translateY(-50%);
  background:transparent!important; z-index:30!important; cursor:pointer;
}
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-prev{ left:-36px!important; }
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-next{ right:-36px!important; }

/* Área clicável maior */
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-prev::before,
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-next::before{
  content:""; position:absolute; inset:-6px;
}

/* Cores das setas */
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-prev svg,
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-next svg{
  width:28px!important; height:28px!important; display:block!important;
}
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-prev svg path,
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-next svg path{
  fill:#00afef!important; transition:fill .2s ease;
}
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-prev:hover svg path,
.ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-next:hover svg path{
  fill:#003e82!important;
}

@media (max-width:480px){
  .ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-prev{ left:-28px!important; }
  .ctr-carousel.ctr-two-fixed.ctr-arrows-out .swiper-button-next{ right:-28px!important; }
}

/* Se o CONTAINER do Elementor estiver cortando: */
.allow-overflow{ overflow:visible!important; position:relative; }