.elementor-kit-7{--e-global-color-primary:#3AA8C1;--e-global-color-secondary:#000000;--e-global-color-text:#738892;--e-global-color-accent:#3AA8C1;--e-global-color-30b7b63:#EBEDEF;--e-global-typography-primary-font-family:"Space Grotesk";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Space Grotesk";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Space Grotesk";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Space Grotesk";--e-global-typography-accent-font-weight:500;font-family:"Space Grotesk", Sans-serif;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{border-radius:20px 0px 20px 0px;}.elementor-kit-7 label{color:var( --e-global-color-secondary );font-size:0.85rem;font-weight:600;line-height:1.5rem;}.elementor-kit-7 input:not([type="button"]):not([type="submit"]),.elementor-kit-7 textarea,.elementor-kit-7 .elementor-field-textual{border-style:solid;border-width:1px 1px 1px 1px;border-color:#C0CCD8;}.elementor-kit-7 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-7 textarea:focus,.elementor-kit-7 .elementor-field-textual:focus{border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1600px;}.e-con{--container-max-width:1600px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.swiper-pagination-bullet-active {
    width: 30px !important;
    border-radius: 5px !important;
}
.swiper-pagination-bullet {
    transition: all 200ms ease;
}

a {
    color: var( --e-global-color-accent );
}

[type=button], [type=submit], button {
    border: 1px solid var( --e-global-color-accent );
    color: var( --e-global-color-accent );
}
[type=button]:focus, [type=button]:hover, [type=submit]:focus, [type=submit]:hover, button:focus, button:hover {
    background-color: var( --e-global-color-accent );
}
a.e-n-menu-title-text.e-link, .e-n-menu-title-container .e-n-menu-title-text {
    cursor: pointer !important;
}
a:active, a:hover {
    color: var( --e-global-color-primary );
}
::marker {
    color:  var( --e-global-color-primary );
}

.light {
    font-weight: 100;
}


.primario {
    color: var( --e-global-color-primary ) !important;
}
.secundario {
    color: var( --e-global-color-secondary ) !important;
}

.sombra {
         box-shadow: 0px 100px 80px rgba(0, 0, 0, 0.08), 0px 41.7776px 33.4221px rgba(0, 0, 0, 0.0575083), 0px 22.3363px 17.869px rgba(0, 0, 0, 0.0476886), 0px 12.5216px 10.0172px rgba(0, 0, 0, 0.04), 0px 6.6501px 5.32008px rgba(0, 0, 0, 0.0323114), 0px 2.76726px 2.21381px rgba(0, 0, 0, 0.0224916);
}


.elementor-button span {
    align-items: center;
}
.elementor-button-icon svg {
    width: 1em;
}
.elementor-button:hover .elementor-button-icon {
  opacity: 0; /* O ícone desaparece ao passar o mouse */
  transform: translateX(-20px); /* O ícone se move para a esquerda ao desaparecer */
}
.banner-imagem {
    background-size: cover !important;
    background-position: center center !important;
}

.elementor-button:hover .elementor-button-icon {
  animation: fadeInFromLeft 0.5s forwards; /* Efeito de fade-in vindo da esquerda */
}

@keyframes fadeInFromLeft {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

/* fade */

@keyframes fadeInUpp {
  0% {
    transform: translate3d(0,40px,0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0,0px,0);
    opacity: 1;
  }
}

.fadeInUp-animation {
  animation: 1s fadeInUpp;
}







 /* Improved Animations Stylesheet from https://element.how/elementor-improve-entrance-animations/ , works for the 'fade' animations */

@keyframes fadeDown {
    from {
        opacity: 0;
        transform: translate3d(0,-30px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInDown {
    animation-name: fadeDown
}

@keyframes fadeLeft {
    from {
        opacity: 0;
        transform: translate3d(-30px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInLeft {
    animation-name: fadeLeft
}

@keyframes fadeRight {
    from {
        opacity: 0;
        transform: translate3d(30px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInRight {
    animation-name: fadeRight
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translate3d(0,30px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInUp {
    animation-name: fadeUp
}



.elementor-widget-video:hover svg {
    transform: scale(1.2);
}
.elementor-custom-embed-play i, .elementor-custom-embed-play svg {
    opacity: .8;
    transition: all .5s;
}

.elementor-nav-menu li {
    display: flex !important;
}


.imagem-post-blog img {
    aspect-ratio: 4/3;
    object-fit: cover;
}



.rotacionar {
  display: inline-block; /* garante que o elemento respeite o tamanho */
  animation: girar 33s linear infinite;
    transform-origin: center center; /* ponto de rotação centralizado */


}

@keyframes girar {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}



.icon-azul .elementor-button-icon svg {
    fill: var(--e-global-color-primary);
    color: var(--e-global-color-primary);
}


.azulclaro, .azulescuro {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

.azulclaro::before, .azulescuro::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  z-index: 0; /* O pseudo-elemento fica por baixo */
  transition: width 1.5s ease-in-out;
}

.azulclaro.animate::before {
  background-color: var(--e-global-color-primary);
  width: 100%;
  border-radius: 10px;
}

.azulescuro.animate::before {
  background-color: var(--e-global-color-secondary);
  width: 100%;
  border-radius: 10px;
}

.azulclaro h1, .azulescuro h1 { /* Seletores mais diretos para o h1 */
  position: relative;
  color: #fff;
  z-index: 2; /* O texto fica por cima */
  margin: 0;
}

.persona img {
    max-height: 66dvh;
    object-fit: contain;
}


.item-segmento {
    transition: 2500ms cubic-bezier(0.34, 1.56, 0.64, 1) all;
    box-shadow: 0px 0px 0px rgba(0,0,0,.024);
    min-height: max(340px, 50dvh);

}
.item-segmento:hover {
    box-shadow: rgba(0,0,0,.08) 0 100px 80px,rgba(0,0,0,.06) 0 41.7776px 33.4221px,rgba(0,0,0,.047) 0 22.3363px 17.869px,rgba(0,0,0,.04) 0 12.5216px 10.0172px,rgba(0,0,0,.03) 0 6.6501px 5.32008px,rgba(0,0,0,.024) 0 2.76726px 2.21381px!important;
    transform: scale(1.02);
     transition: 900ms cubic-bezier(0.34, 1.56, 0.64, 1) all;
}
.item-segmento:before {
    transition: 0ms ease all;
    border-radius: 0px;
    
}
.item-segmento:hover:before {
    background-image: linear-gradient(3deg,rgba(2, 148, 222, 1) 0%, rgba(20, 47, 101, 1) 29%, rgba(20, 47, 101, 0) 58%) !important;
    opacity: .8;
}

.item-segmento .descricao-cat {
    bottom: -50px;
    opacity: 0;
    transition: all 300ms ease;
}
.item-segmento:hover .descricao-cat {
    bottom: 0px;
    opacity: 1;
}

/*.container-carrossel .e-con-inner {*/
/*    overflow: hidden;*/
/*}*/

.elementor-swiper-button {
    box-shadow: rgba(0,0,0,.08) 0 100px 80px,rgba(0,0,0,.06) 0 41.7776px 33.4221px,rgba(0,0,0,.047) 0 22.3363px 17.869px,rgba(0,0,0,.04) 0 12.5216px 10.0172px,rgba(0,0,0,.03) 0 6.6501px 5.32008px,rgba(0,0,0,.024) 0 2.76726px 2.21381px!important;
    
}
.carrossel-categorias .swiper {
    overflow: visible !important
}

.secao-categorias {
  position: relative;
  overflow: hidden;
}

.secao-categorias::before,
.secao-categorias::after {
  content: "";
  position: absolute;
  top: 0;
  width: 17vw; 
  height: 100%;
  pointer-events: none; 
  z-index: 2; 
}

/* Gradiente na esquerda */
.secao-categorias::before {
  left: 0;
  background: linear-gradient(to right, white, transparent);
}

/* Gradiente na direita */
.secao-categorias::after {
  right: 0;
  background: linear-gradient(to left, white, transparent);
}




.logo-cliente {
    filter: brightness(500%) saturate(0%);
    opacity: .9;
    transition: 300ms ease all !important;
}
.logo-cliente:hover {
    filter: none !important;
    opacity: 1;
}

.parceiros .swiper-wrapper{
  transition-timing-function: linear !important; 
}
.parceiros {
    position: relative;
}


.carrossel-clientes img {
    aspect-ratio: 3 / 1;
    object-fit: contain;
    transition: 1000ms ease all;
    max-height: 35px;
}
.carrossel-clientes img:hover {
    transform: scale(1.06)
}




.titulo-produto {
        line-height: 1em;
}
.item-produto {
    transition: 500ms ease all !important;
}
.item-produto:hover .titulo-produto {
       background: var( --e-global-color-secondary ) !important;

}
.item-produto:hover .titulo-produto span {
    color: white !important;
}
.item-produto:hover .elementor-icon {
    background-color: var( --e-global-color-primary ) !important;
}
.item-produto:hover, .post-blog:hover {
    transform: scale(1.03);
     box-shadow: 0px 100px 80px rgba(0, 0, 0, 0.08), 0px 41.7776px 33.4221px rgba(0, 0, 0, 0.0575083), 0px 22.3363px 17.869px rgba(0, 0, 0, 0.0476886), 0px 12.5216px 10.0172px rgba(0, 0, 0, 0.04), 0px 6.6501px 5.32008px rgba(0, 0, 0, 0.0323114), 0px 2.76726px 2.21381px rgba(0, 0, 0, 0.0224916);
     z-index: 20;
}
.swiper-slide:hover {
    z-index: 30 !important;
}


.imagem-produto img {
    aspect-ratio: 1/1;
    object-fit: contain;
}
   





.menu-categorias-produto {
    font-family: inherit;
}

.menu-categorias-produto .categoria-bloco {
    margin-bottom: 2em;
}

.menu-categorias-produto .categoria-pai a {
    font-weight: bold;
    color: var(--e-global-color-primary);
    text-decoration: none;
    display: inline-block;
    margin-bottom: 0.6em;
    font-size: 1.2rem;
}

.menu-categorias-produto .categoria-filhos {
    list-style: none;
    margin: 0;
    padding: 0;
}

.menu-categorias-produto .categoria-filho {
    margin: 0.5em 0;
    border-bottom: 1px solid #142f6524;
    padding-bottom: 0.3em;
}

.menu-categorias-produto .categoria-filho a {
    color: var(--e-global-color-secondary);
    text-decoration: none;
    transition: color 0.2s ease-in-out;
}

/* Hover */
.menu-categorias-produto .categoria-filho a:hover {
    color: var(--e-global-color-primary);
}

/* Destaque para item filho ativo */
.menu-categorias-produto .categoria-filho.atual a {
    color: var(--e-global-color-primary);
    font-weight: bold;
    position: relative;

    /* espaço para a flecha */
    padding-left: 1.2em;
    text-indent: 0.6em; /* empurra também a segunda linha */
}

/* Flecha só nos filhos ativos */
.menu-categorias-produto .categoria-filho.atual a::before {
    content: "›"; /* flecha sutil */
    position: absolute;
    left: 0;
    top: 0;
    line-height: 1.4em; /* acompanha a altura da linha */
    color: var(--e-global-color-primary);
    font-size: 0.9em;
}



.parceiros {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.parceiros .parceiro-item {
    flex: 0 1 150px; /* largura base de cada logo */
    text-align: center;
}

.parceiros img {
    width: 100%;
    height: auto;
    aspect-ratio: 5/3;
    object-fit: contain;
    display: block;
}






.img-wrap {
  position: relative;
  overflow: visible !important;
      border-radius: 15px;

}

.img-wrap img {
  width: 160% !important;
  max-width: none; /* importante para poder crescer */
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  transition: 300ms ease all;
}
.card-produto:hover .img-wrap img {
    transform: scale(1.07) translateX(-47%) translateY(-15px);
    filter: brightness(1.4);
}
.card-produto:hover .img-wrap {
    transform: scale(0.97);
     background-color: #2ac6ea !important;
     box-shadow: 0px 0px 100px  #2ac6ea;
}
/*.card-produto:hover .medio {*/
  
/*     background-color: #2ac6ea !important;*/
/*}*/


.card-produto:hover  .produto-titulo {
    transform: scale(1.1);

}
 .produto-titulo span {
     transition: all 1000ms ease;
 }
/*.card-produto:hover  .produto-titulo span {*/
/*        letter-spacing: 5px !important;*/
/*}*//* End custom CSS */