/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.1.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/



/* Torna o header fixo e adiciona a transição suave */
#meu-header-personalizado {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 1000;
	transition: top 0.4s ease-in-out, background-color 0.3s ease-in-out;
}

/* Classe que esconde o header movendo-o para cima */
#meu-header-personalizado.header-escondido {
    top: -200px !important;
}

#meu-header-personalizado:has(.elementor-menu-toggle.elementor-active) {
	background-color: #FFF;
}

#meu-header-personalizado:has(.elementor-menu-toggle.elementor-active) .glow {
	box-shadow:none;
}

.glow {
  	-webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
/*     border: 1px solid rgba(255, 255, 255, 0.1); */
}
/* Estilo base para o container do texto (o span) */
.line li span {
  position: relative; /* Essencial para o posicionamento do ::after */
  display: inline-block; /* Garante que o span tenha um bloco para o ::after se basear */
  padding-bottom: 5px; /* Espaço para a linha não ficar colada no texto */
  width: auto;
  margin-bottom: 10px;
}

/* Estado inicial da linha (::after) - ANTES do hover */
.line li span::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0; /* Começa com largura zero, invisível */
  height: 1px;
  background-color: #020202;
  /* A transição é definida aqui, para animar a mudança de largura */
  transition: width 0.4s ease-in-out; 
}

/* Estado da linha (::after) - DURANTE o hover no span */
.line li span:hover::after {
  width: 100%; /* Ao passar o mouse, a largura vai para 100% */
}

/* a sombra fica no pseudo-elemento */
.container-shadow::before {
  content: "";
  position: absolute;
  inset: 0;                       /* ocupa toda a caixa */
  border-radius: inherit;
  pointer-events: none;           /* não interfere no hover/click */

  /* sombras só em baixo e laterais */
  box-shadow:
    0 16px 28px rgba(0,0,0,.06),    /* base */
    10px 0 18px rgba(0,0,0,.06),    /* direita */
    -10px 0 18px rgba(0,0,0,.06);   /* esquerda */

  /* CORTA a parte de cima da sombra (mas não o conteúdo) */
  clip-path: inset(10px -9999px -9999px -9999px);
  /* ↑ aumente/diminua o primeiro valor para cortar mais/menos topo */
}


.menu-mobile .elementor-nav-menu--dropdown {
	height: 100vh;
    padding: 20px;
}

.zoom > .elementor-background-overlay {
  /* Adiciona uma transição suave para o efeito de zoom */
  transition: transform 0.5s ease-out !important;
}

/* 
  Quando você passar o mouse sobre o contêiner .zoom,
  a camada de fundo será escalada.
*/
.zoom:hover > .elementor-background-overlay {
  /* Ajuste o valor do scale para mais ou menos zoom (1.1 = 10% de zoom) */
  transform: scale(1.1);
}

/* Add your custom styles here */
.leaflet-container {
	background-color:#E8E8E8!important;
}

.btn-white {
	background-color: white;
	color: #000;
	border-radius: 4px;
	padding: 7px 25px;
	font-size: 14px;
	text-decoration: none;
	text-transform: uppercase;
	display: inline-block;
	font-weight: bold;
	border: 2px solid white;
	transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.btn-white:hover {
	background-color: #1888ca;
	color: white;
	border-color: #1888ca;
}



/* 
 * A CHAVE PARA CORRIGIR O LAYOUT:
 * Força o <li> que tem o submenu a empilhar seus filhos (o link e o submenu)
 * verticalmente, um embaixo do outro.
*/
.elementor-icon-list-item.menu-item-has-children {
    flex-direction: column !important;
    /* Alinha o link e o submenu à esquerda dentro do espaço do <li> */
    align-items: flex-start !important; 
}

/* 
 * ESTILO DO SUBMENU E ANIMAÇÃO
*/
.elementor-icon-list-item .submenu {
    list-style: none; 
    padding-left: 0; 
    margin: 0;
    width: 100%; 
    
    /* A mágica da animação de expansão */
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.7s ease-out, margin-top 0.7s ease-out; /* Animação suave */
}

/* 
 * ESTADO ATIVO: QUANDO O MOUSE ESTÁ EM CIMA
 * A classe .submenu-active é adicionada pelo JavaScript.
*/
.elementor-icon-list-item.submenu-active .submenu {
    max-height: 400px;
}

/* Estilo dos links dentro do submenu */
.elementor-icon-list-item .submenu .submenu-item a {
    padding: 5px 10px 5px 0;
    display: block;
    color: #333;
    text-decoration: none;
    font-size: 0.9em; /* Deixa a fonte um pouco menor */
}

.elementor-icon-list-item .submenu .submenu-item a:hover {
    color: #000;
    font-weight: bold;
}