/* ===== Carrossel base ===== */
.cir-carousel{ position:relative; width:100%; }
.elementor-widget-html .cir-carousel{ max-width:100%; }

.cir-carousel__track{
  display:flex;
  gap:16px;
  padding:4px;
  overflow-x:auto;                /* permite arrastar/rolar */
  scroll-snap-type:x mandatory;   /* snap suave no mobile */
  -webkit-overflow-scrolling:touch;
}
/* Esconde barra de rolagem */
.cir-carousel__track::-webkit-scrollbar{ display:none; }
.cir-carousel__track{ scrollbar-width:none; -ms-overflow-style:none; }

.cir-slide{
  flex:0 0 100%;                  /* 1 por vez no mobile */
  scroll-snap-align:center;
  scroll-snap-stop:always;
}

/* ===== Desktop: 3 slides visíveis, sem rolagem ===== */
@media (min-width:1024px){
  .cir-carousel__track{
    overflow:visible;             /* volta ao comportamento de antes */
    scroll-snap-type:none;
  }
  .cir-slide{
    /* 3 colunas com 2 gaps (16px): (100% - 32px) / 3 */
    flex:0 0 calc((100% - 32px)/3);
    scroll-snap-align:none;
  }
}

/* ===== Card 4:5 ===== */
.cir-video-45{
  position:relative;
  width:100%;
  padding-top:125%;
  aspect-ratio:4/5;
  overflow:hidden;
  border-radius:16px;
  background:#000;
  cursor:pointer;
}
.cir-video-45__poster{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover; display:block;
  transition:transform .2s ease;
}
.cir-video-45:hover .cir-video-45__poster,
.cir-video-45:focus-visible .cir-video-45__poster{ transform:scale(1.01); }
.cir-video-45:focus-visible{
  outline:3px solid rgba(0,123,255,.6); outline-offset:2px;
}

/* ===== Modal “forte” (sempre no topo) 9:16 ===== */
.cir-modal{ position:fixed !important; inset:0 !important; z-index:2147483646 !important; display:flex !important; align-items:center !important; justify-content:center !important; }
.cir-modal__backdrop{ position:absolute !important; inset:0 !important; background:rgba(0,0,0,.75) !important; }
.cir-modal__dialog{ position:relative !important; z-index:2147483646 !important; width:100% !important; height:100% !important; display:flex !important; align-items:center !important; justify-content:center !important; padding:24px !important; }
.cir-modal__player{ position:relative !important; height:92vh !important; aspect-ratio:9/16 !important; max-width:min(92vw, 52vh) !important; background:#000 !important; border-radius:16px !important; overflow:hidden !important; }
.cir-modal__player iframe{ position:absolute !important; inset:0 !important; width:100% !important; height:100% !important; border:0 !important; display:block !important; }
.cir-modal__close{
  position:fixed !important; top:16px !important; right:16px !important;
  width:44px !important; height:44px !important; border:0 !important; border-radius:12px !important; background:#fff !important;
  font-size:20px !important; line-height:44px !important; text-align:center !important; cursor:pointer !important; z-index:2147483647 !important;
}

/* ===== Desktop: mostrar exatamente 3 cards e esconder o restante ===== */
@media (min-width:1024px){
  .cir-carousel { position: relative; }

  .cir-carousel__track{
    overflow: hidden !important;     /* esconde os demais slides fora da área */
    scroll-snap-type: none !important;
    gap: 16px;                        /* mantenha igual ao seu layout */
    /* opcional: garante que não quebre linha, mas já é o padrão */
    flex-wrap: nowrap;
  }

  /* 3 colunas com 2 gaps de 16px: (100% - 32px) / 3 */
  .cir-slide{
    flex: 0 0 calc((100% - 32px)/3);
    scroll-snap-align: none;
  }
}

