.elementor-652 .elementor-element.elementor-element-15e0bd3{--display:flex;--min-height:53vh;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-652 .elementor-element.elementor-element-1a12896{--display:flex;--min-height:491px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-652 .elementor-element.elementor-element-1a12896.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-652 .elementor-element.elementor-element-3a95666{--e-image-carousel-slides-to-show:1;width:var( --container-widget-width, 100% );max-width:100%;padding:0px 0px 0px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-652 .elementor-element.elementor-element-3a95666.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-652 .elementor-element.elementor-element-3a95666 .elementor-swiper-button.elementor-swiper-button-prev, .elementor-652 .elementor-element.elementor-element-3a95666 .elementor-swiper-button.elementor-swiper-button-next{font-size:33px;color:#000000;}.elementor-652 .elementor-element.elementor-element-3a95666 .elementor-swiper-button.elementor-swiper-button-prev svg, .elementor-652 .elementor-element.elementor-element-3a95666 .elementor-swiper-button.elementor-swiper-button-next svg{fill:#000000;}.elementor-652 .elementor-element.elementor-element-d219dfe{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:35px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-652 .elementor-element.elementor-element-fb7a3c2 .elementor-heading-title{font-family:"Cormorant", Sans-serif;font-size:26px;font-weight:300;font-style:italic;line-height:34px;color:#000000;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-652 .elementor-element.elementor-element-4eaff2c{width:var( --container-widget-width, 78% );max-width:78%;--container-widget-width:78%;--container-widget-flex-grow:0;font-family:"Roboto", Sans-serif;font-size:15px;font-weight:400;color:#4C4C4C;}#elementor-popup-modal-652{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-652 .dialog-message{width:100rem;height:37rem;align-items:center;}#elementor-popup-modal-652 .dialog-close-button{display:flex;}#elementor-popup-modal-652 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}@media(min-width:768px){.elementor-652 .elementor-element.elementor-element-1a12896{--width:60.804%;}.elementor-652 .elementor-element.elementor-element-d219dfe{--width:50%;}}@media(max-width:767px){.elementor-652 .elementor-element.elementor-element-15e0bd3{--flex-direction:row-reverse;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;--align-items:center;}.elementor-652 .elementor-element.elementor-element-15e0bd3.e-con{--align-self:center;}.elementor-652 .elementor-element.elementor-element-1a12896{--margin-top:0rem;--margin-bottom:-4rem;--margin-left:0rem;--margin-right:0rem;}.elementor-652 .elementor-element.elementor-element-d219dfe{--margin-top:0rem;--margin-bottom:-6rem;--margin-left:02rem;--margin-right:0rem;}}/* Start custom CSS for image-carousel, class: .elementor-element-3a95666 *//* ===== Carrossel: preencher 100% sem distorcer + sem sobrepor setas ===== */
:root{
  --car-h: 80vh;          /* altura do carrossel (desktop) */
  --car-h-m: 48vh;        /* altura mobile (usado só no Slick) */
  --nav-size: 36px;       /* tamanho do botão/seta */
  --nav-gap: 12px;        /* respiro entre imagem e seta */
  --nav-gutter: calc(var(--nav-size) + var(--nav-gap)); /* padding lateral */
}

/* ===================== SWIPER (Elementor Image Carousel) ===================== */
.elementor-widget-image-carousel .swiper,
.elementor-widget-image-carousel .swiper-wrapper,
.elementor-widget-image-carousel .swiper-slide{
  height: var(--car-h) !important;
}

.elementor-widget-image-carousel .swiper-wrapper{
  align-items: center;
}

.elementor-widget-image-carousel .swiper-slide{
  padding-left: var(--nav-gutter) !important;
  padding-right: var(--nav-gutter) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center;
  box-sizing: border-box;
}

.elementor-widget-image-carousel .swiper-slide figure,
.elementor-widget-image-carousel .swiper-slide .swiper-slide-inner{
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}

.elementor-widget-image-carousel .swiper-slide img{
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;   /* cobre LxA sem distorcer */
  object-position: center !important;
  display: block;
}

/* Opcional: não cortar (logos/arte) — adicione .no-crop ao slide */
.elementor-widget-image-carousel .swiper-slide.no-crop img{
  object-fit: contain !important;
  background: #fff; /* opcional */
}

/* Setas (mantém estilo) */
.elementor-widget-image-carousel .swiper-button-prev,
.elementor-widget-image-carousel .swiper-button-next{
  width: var(--nav-size) !important;
  height: var(--nav-size) !important;
  background: transparent !important;
}

/* ===================== Mobile (Swiper) — SLIDE QUADRADO ===================== */
@media (max-width: 768px){
  :root{
    --nav-size: 28px;
    --nav-gap: 8px;
    --nav-gutter: calc(var(--nav-size) + var(--nav-gap));
  }

  /* altura automática, quem manda é o aspect-ratio */
  .elementor-widget-image-carousel .swiper,
  .elementor-widget-image-carousel .swiper-wrapper{
    height: auto !important;
  }

  .elementor-widget-image-carousel .swiper-slide{
    height: auto !important;
    /* calhas menores e setas sobrepostas para liberar largura */
    padding-left: var(--nav-gap) !important;
    padding-right: var(--nav-gap) !important;
    position: relative;
  }

  /* Torna o slide QUADRADO */
  .elementor-widget-image-carousel .swiper-slide figure,
  .elementor-widget-image-carousel .swiper-slide .swiper-slide-inner{
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important; /* quadrado no mobile */
  }

  .elementor-widget-image-carousel .swiper-slide img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  /* Setas sobre a imagem (não consomem largura) */
  .elementor-widget-image-carousel .swiper-button-prev,
  .elementor-widget-image-carousel .swiper-button-next{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: var(--nav-size) !important;
    height: var(--nav-size) !important;
    z-index: 3;
  }
  .elementor-widget-image-carousel .swiper-button-prev{ left: 6px; }
  .elementor-widget-image-carousel .swiper-button-next{ right: 6px; }
}

/* ===================== Slick (fallback) ===================== */
.slick-slider .slick-track{
  display: flex !important;
  align-items: center;
}
.slick-slider .slick-slide{
  height: var(--car-h) !important;
  padding-left: var(--nav-gutter) !important;
  padding-right: var(--nav-gutter) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box;
}
.slick-slider .slick-slide img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block;
}
/* No mobile, aproxima do quadrado aumentando a altura = largura da tela */
@media (max-width: 768px){
  .slick-slider .slick-slide{
    height: 100vw !important; /* quase quadrado */
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  .slick-prev, .slick-next{
    width: 28px !important; height: 28px !important;
    left: 6px !important; right: 6px !important;
    z-index: 3;
  }
}

/* ===================== Ajustes finos opcionais ===================== */
/* Evita “salto” de altura enquanto carrega */
.elementor-widget-image-carousel .swiper-slide img{ backface-visibility: hidden; }

/* Se quiser limitar altura máxima no desktop para telas muito altas */
/*
@media (min-height: 900px){
  .elementor-widget-image-carousel .swiper,
  .elementor-widget-image-carousel .swiper-wrapper,
  .elementor-widget-image-carousel .swiper-slide{
    height: 720px !important;
  }
}
*//* End custom CSS */