/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: May 11 2026 | 21:09:23 */
html, body {overflow-x: hidden;max-width: 100%;}
.ollie-credits{display:none!important}

/* MEGAMENU */
/* 1. GARANTIR REFERÊNCIA DO PAI */
.elementor-nav-menu .menu-item {
    position: relative !important;
}

/* 2. ESTRUTURA DO MEGA MENU */
.elementor-nav-menu--dropdown.sub-menu {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    position: absolute !important;
    top: 100% !important; 
    left: 0 !important;
    width: 850px !important;
    max-width: 90vw !important;
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 0px !important; /* Removi o gap para o fundo colorido preencher melhor */
    
    padding: 20px !important;
    background: #ffffff !important;
    box-shadow: 0px 15px 40px rgba(0,0,0,0.15) !important;
    border: none !important;
    z-index: 999999 !important;
    height: auto !important;
    max-height: none !important;
}

/* EXIBIÇÃO NO HOVER */
.menu-item:hover > .elementor-nav-menu--dropdown.sub-menu {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 3. ESTILO DOS LINKS (ESTADO PADRÃO) */
.elementor-nav-menu--dropdown.sub-menu li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-nav-menu--dropdown.sub-menu li a {
    display: block !important;
    padding: 12px 15px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    color: #333 !important; /* Cor do texto padrão */
    text-decoration: none !important;
    border-bottom: 1px solid #f0f0f0 !important;
    white-space: normal !important;
    transition: all 0.2s ease-in-out !important;
}

/* 4. HOVER E ACTIVE (FUNDA VERMELHO #D92D20 E TEXTO BRANCO #FFF) */
/* Aplica ao passar o mouse (hover) e quando a classe active do Elementor estiver presente */
.elementor-nav-menu--dropdown.sub-menu li a:hover,
.elementor-nav-menu--dropdown.sub-menu li.current-menu-item a,
.elementor-nav-menu--dropdown.sub-menu li.elementor-item-active a {
    background-color: #D92D20 !important;
    color: #ffffff !important;
    border-bottom-color: transparent !important; /* Esconde a linha divisória no hover */
}

/* 5. LIMPEZA FINAL */
.elementor-nav-menu--dropdown.sub-menu, 
.elementor-nav-menu--dropdown.sub-menu *:focus {
    outline: none !important;
    border-top: none !important;
}

/* Remove indicadores de seta que o Elementor coloca */
.elementor-nav-menu--dropdown.sub-menu::before {
    display: none !important;
}

/*  */
/* Efeito de Preenchimento de Texto (GSAP) */
/*.span-fonte-vermelho {
    display: inline-block;
    position: relative;
    color: #475467; 
    --fill: 0%;
}
.span-fonte-vermelho::after {
    content: attr(data-text);
    position: absolute;
    left: 0;
    top: 0;
    width: var(--fill);
    color: #D92D20; 
    overflow: hidden;
    white-space: nowrap;
    pointer-events: none;
    transition: none;
} ¨/

/* Frase com Linha que cresce */
.frase-linha .elementor-widget-container {
    display: flex;
    width: 100%;
}
.frase-linha p {
    display: flex !important;
    width: 100%;
    align-items: center;
    gap: 12px;
    margin: 0 !important;
    --line: 0;
}
.frase-linha p::after {
    content: "";
    display: inline-block;
    height: 2px;
    background-color: #D92D20;
    flex-grow: var(--line);
    min-width: 0;
}

/* Barra de Progresso com Pontos (Dots) */
.line-wrapper {
    position: relative;
    width: 100%;
    height: 2px;
}
.line-base {
    position: absolute;
    width: 100%;
    height: 100%;
    background: #e0e0e0;
}
.line-active {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    background: linear-gradient(90deg, #D92D20 0%, #D92D20 80%, #920000 100%);    
    width: 0%; 
    border-radius: 2px;
    z-index: 1;
}
.dot {
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    background: white;
    border: 2px solid #e0e0e0;
    border-radius: 50%;
    z-index: 2;
    transition: background 0.3s, border-color 0.3s;
}
.dot.active {
    background: #D92D20;
    border-color: #920000;
}

/* Ícones de Botão */
#icon-play .elementor-button-icon,
#icon-baixar-especificacao .elementor-button-icon {
    font-size: 28px;
}

/* bordas do tolltip */
.e-hotspot--tooltip-position {
    border: solid 1px #D92D20 !important; 
}
.e-hotspot__tooltip {
    transform: none !important;
}

/* Classe para os containers de cada país */
.linha-contato-teee {
    position: relative !important;
    padding-top: 15px !important;
    border: none !important; 
}
.linha-contato-teee::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 2px !important;
    background-color: #D92D20 !important;
    transform: scaleX(var(--progresso-linha, 0)) !important;
    transform-origin: left center !important;
    will-change: transform;
    transition: none !important;
}

/* Classe para os containers de time */
.linha-contato-teee-2 {
    position: relative !important;
    padding-top: 15px !important;
    border: none !important; 
}
.linha-contato-teee-2::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 2px !important;
    background-color: #ffffff !important;
    transform: scaleX(var(--progresso-linha, 0)) !important;
    transform-origin: left center !important;
    will-change: transform;
    transition: none !important;
}

/* secao-com-linha-diagonal SEÇÃO GIGANTE */
.secao-com-linha-diagonal-gigante {
    position: relative !important; 
    overflow: visible !important; 
}
.secao-com-linha-diagonal-gigante::after {
    content: "";
    position: absolute;
    top: 0;
    left: 98%; 
    width: 1px; 
    height: 100%; 
    background-color: #D92D20; 
    transform: skewX(-22deg) translateX(-50%);
    transform-origin: top center;
    z-index: 9999; 
    pointer-events: none;
}
/* secao-com-linha-diagonal ESQUERDA */
.secao-com-linha-diagonal-esquerda {
    position: relative !important; 
    overflow: visible !important; 
}
.secao-com-linha-diagonal-esquerda::after {
    content: "";
    position: absolute;
    top: 0;
    left: 22%; 
    width: 1px; 
    height: 100%; 
    background-color: #D92D20; 
    transform: skewX(-22deg) translateX(-50%);
    transform-origin: top center;
    z-index: 9999; 
    pointer-events: none;
}
/* secao-com-linha-diagonal FORM HOME */
.secao-com-linha-diagonal-form-home {
    position: relative !important;
    overflow: hidden; 
}
.secao-com-linha-diagonal-form-home::after {
    content: "";
    position: absolute;
    top: 0;
    left: 95%; 
    width: 1px; 
    height: 100%; 
    background-color: #D92D20; 
    transform: skewX(-22deg) translateX(-50%);
    transform-origin: top center;
    z-index: 1; 
    pointer-events: none;
}
.secao-com-linha-diagonal-form-home > .elementor-container,
.secao-com-linha-diagonal-form-home > .elementor-widget-wrap,
.secao-com-linha-diagonal-form-home > .elementor-column {
    position: relative;
    z-index: 2; 
}
@media (max-width: 768px) {
    .secao-com-linha-diagonal-gigante::after,
    .secao-com-linha-diagonal-esquerda::after,
    .secao-com-linha-diagonal-form-home::after {
        display: none !important;
    }
}

/* linha vertical esquerda */ 
    .svg-neon-equilibrado {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        pointer-events: none;
        z-index: 50;
    }

    @media (max-width: 768px) {
        .svg-neon-equilibrado { display: none !important; }
    }

    .laser-grande-ajustado {
        stroke-dasharray: 800, 5000;
        stroke-dashoffset: 800;
        animation: descidaEquilibrada 18s linear infinite;
        will-change: stroke-dashoffset;
    }

    @keyframes descidaEquilibrada {
        from { 
            stroke-dashoffset: 1000; 
        }
        to { 
            stroke-dashoffset: -4000; 
        }
    }


@media (max-width: 1024px) {
	.svg-neon-equilibrado {
		display: none !important;
		}
	}

/* tira tooltip no mobile */
@media (max-width:768px){

.e-hotspot__tooltip,
.e-hotspot--fade-in-out,
.elementor-widget-hotspot .e-hotspot__tooltip{
display:none !important;
opacity:0 !important;
visibility:hidden !important;
pointer-events:none !important;
}

}

/* galeria cases */
/* MOBILE PREMIUM GALERIA */
@media (max-width:768px){

/* altura menor no mobile */
.elementor-811 .elementor-element.elementor-element-9fb1ca5{
min-height:520px !important;
padding:25px !important;
justify-content:flex-end !important;
}

/* imagem melhor ajustada */
.elementor-811 .elementor-element.elementor-element-c9bdac5 img{
height:520px !important;
object-fit:cover !important;
}

/* gradiente mais forte mobile
.elementor-811 .elementor-element.elementor-element-d84ae75{
background-image:linear-gradient(
180deg,
rgba(0,0,0,0) 20%,
rgba(0,0,0,0.85) 100%
) !important;
} */

/* container texto */
.elementor-811 .elementor-element.elementor-element-3593120{
width:100% !important;
gap:10px;
}

/* categoria */
.elementor-811 .elementor-element.elementor-element-5410d1f{
font-size:12px !important;
letter-spacing:1px;
}

/* título */
.elementor-811 .elementor-element.elementor-element-42eb099 .elementor-heading-title{
font-size:18px !important;
line-height:1.25 !important;
margin-bottom:5px;
}

/* resumo */
.elementor-811 .elementor-element.elementor-element-4562d3d{
font-size:14px !important;
line-height:1.4 !important;
opacity:.9;
}

/* botão */
.elementor-811 .elementor-element.elementor-element-2133a16 .elementor-button{
padding:12px 20px !important;
font-size:12px !important;
letter-spacing:1px;
margin-top:10px;
}

/* slide largura premium */
.elementor-element-aa0685d .swiper-slide{
width:85% !important;
}

/* espaço lateral premium */
.elementor-element-aa0685d .swiper{
padding-left:20px;
}

/* animação suave */
.elementor-element-aa0685d .swiper-slide{
transition:transform .4s ease, opacity .4s ease;
}

/* slide ativo */
.elementor-element-aa0685d .swiper-slide-active{
transform:scale(1);
opacity:1;
}

/* slides laterais */
.elementor-element-aa0685d .swiper-slide-prev,
.elementor-element-aa0685d .swiper-slide-next{
transform:scale(.92);
opacity:.6;
}

}

/* z-index do popup */
#elementor-popup-modal-2226 {
    z-index: 9999999!important;
}

/* reforçando fonte em ano */
.ano {
  font-family: "IBM Plex Sans Condensed", Sans-serif!important;
}
body .secao-galeria-lando * {
  font-family: "IBM Plex Sans Condensed", Sans-serif !important;
}

/* gradiente geral para imagens 
.gradiente-geral-imgs::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);
    pointer-events: none;
}*/

/* CURSOR COMO MOUSE NO GSAP */
body.has-cursor-ready.has-cursor-active, 
body.has-cursor-ready.has-cursor-active * {
  cursor: none !important;
}

.teee-cursor {
  position: fixed;
  top: 0;
  left: 0;
  width: 20px;
  height: 30px;
  pointer-events: none;
  z-index: 99999;
  opacity: 0;
  will-change: transform;
}

.teee-outline {
  fill: none;
  stroke: #ff3b3b;
  stroke-width: 1.5;
}

.teee-dot {
  fill: #ff3b3b;
}

/* estilo filtros */
search.e-filter {
  display: flex !important;
  gap: 15px !important;
  flex-wrap: wrap !important;
}

search.e-filter .e-filter-item {
  display: inline-block !important;
  padding: 14px 30px !important;
  border: 2px solid #D92D20 !important;
  color: #D92D20 !important;
  background: #fff !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
}

search.e-filter .e-filter-item:hover {
  background: #D92D20 !important;
  color: #fff !important;
}

search.e-filter .e-filter-item[aria-pressed="true"] {
  background: #D92D20 !important;
  color: #fff !important;
}

search.e-filter .e-filter-item[aria-pressed="true"]:hover {
  background: #D92D20 !important;
  color: #fff !important;
}

search.e-filter .e-filter-item[data-filter="__all"] {
  background: #D92D20 !important;
  color: #fff !important;
}

.badge-tag .elementor-post-info__terms-list{
    background-color: #D92D20;
    padding: 7px 17px;
    /* border-radius: 25px; */
	font-size:12px!important;
	font-weight: 400;
}

.badge-cat .elementor-post-info__terms-list{
    background-color: white;
    padding: 7px 17px;
    /* border-radius: 25px; */
	font-size:12px!important;
	font-weight: 400;
}

/* palco dos elementos 3d */
#palco3d{
  position:fixed;
  left:0;
  top:0;
  z-index:99 !important;
  pointer-events:none;
  will-change:left,top,width,height;
  opacity:1;
}
#palco3d canvas{
  width:100% !important;
  height:100% !important;
  display:block !important;
}

#elementor-popup-modal-7332{
	z-index:9999999;
}