.elementor-24 .elementor-element.elementor-element-c2e5b06{--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;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-5a4baee *//* ========================================
   HEADER/MENU - CSS PARA ELEMENTOR 3.30
   Cole este CSS em: Elementor > Site Settings > Custom CSS
   ou em Appearance > Customize > Additional CSS
   ======================================== */
   
   /* REMOVE HOVER VERMELHO - EMERGÊNCIA */

.main-header button:not(.btn-primary):not(.btn-secondary):hover {

  background: transparent !important;

  background-color: transparent !important;

  border: none !important;

  color: #000000 !important;

}

 

.main-header a:hover {

  background: transparent !important;

  background-color: transparent !important;

  color: #000000 !important;

}

 

.nav-dropdown-btn:hover,

.mobile-dropdown-btn:hover,

.mobile-menu-btn:hover {

  background: none !important;

  background-color: transparent !important;

}

/* Reset básico */
* {
  box-sizing: border-box;
}

/* Header fixo */
.main-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background-color: #ffffff;
  border-bottom: 1px solid #e5e7eb;
  z-index: 9999;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

/* Container principal */
.header-container {
  max-width: 1140px;
  margin: 0 auto;
}

/* Wrapper do header */
.header-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 64px;
}

/* Logo */
.header-logo {
  display: flex;
  align-items: center;
  width: 150px;
}

.logo-link {
  display: flex;
  align-items: center;
  text-decoration: none;
}

.logo-image {
  height: 32px;
  width: auto;
}

/* Navegação Desktop */
.header-nav-desktop {
  display: none;
  align-items: center;
  gap: 32px;
}

@media (min-width: 768px) {
  .header-nav-desktop {
    display: flex;
  }
}

@media (max-width: 768px) {
      .header-container {
  margin-right: 16px;
  margin-left: 16px;
}
}

/* Links de navegação */
.nav-link {
  color: #374151;
  text-decoration: none;
  font-size: 16px;
  transition: color 0.3s ease;
  white-space: nowrap;
}

.nav-link:hover {
  color: #000000;
}

/* Dropdown Container */
.nav-dropdown {
  position: relative;
}

/* Botão dropdown */
.nav-dropdown-btn {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #374151;
  background: none;
  border: none;
  font-size: 16px;
  cursor: pointer;
  transition: color 0.3s ease;
  padding: 0;
}

.nav-dropdown-btn:hover {
  color: #000000;
}

/* Ícone dropdown */
.dropdown-icon {
  transition: transform 0.3s ease;
}

.dropdown-icon.rotate {
  transform: rotate(180deg);
}

/* Mega Menu */
.mega-menu {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  margin-top: 16px;
  width: 960px;
  max-width: 90vw;
  background-color: #ffffff;
  border: 1px solid #f3f4f6;
  border-radius: 16px;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  transform: translateX(-50%) translateY(-10px);
  pointer-events: none;
}

.mega-menu.active {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
  pointer-events: auto;
}

/* Grid do mega menu */
.mega-menu-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
}

/* Coluna do mega menu */
.mega-menu-column {
  min-width: 0;
}

/* Título da coluna */
.mega-menu-title {
  font-size: 14px;
  font-weight: 600;
  color: #111827;
  margin-bottom: 16px;
  margin-top: 0;
}

/* Lista do mega menu */
.mega-menu-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* Item do mega menu */
.mega-menu-item {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 14px;
  color: #374151;
  transition: color 0.3s ease;
  text-decoration: none;
  cursor: pointer;
}

.mega-menu-item:hover {
  color: #111827;
}

.mega-menu-item svg {
  flex-shrink: 0;
  color: #6b7280;
}

/* Botões Desktop */
.header-buttons-desktop {
  display: none;
  align-items: center;
  gap: 16px;
}

@media (min-width: 768px) {
  .header-buttons-desktop {
    display: flex;
  }
}

/* Botão primário */
.btn-primary {
  padding: 8px 24px;
  background-color: #414141;
  color: #ffffff;
  border-radius: 8px;
  border: none;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease;
  text-decoration: none;
  display: inline-block;
  text-align: center;
  white-space: nowrap;
}

.btn-primary:hover {
  background-color: #4B5563;
  transform: translateY(-1px);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* Botão secundário */
.btn-secondary {
  padding: 8px 24px;
  background-color: #ffffff;
  color: #374151;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease;
  text-decoration: none;
  display: inline-block;
  text-align: center;
  white-space: nowrap;
}

.btn-secondary:hover {
  background-color: #f9fafb;
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

/* Botão Menu Mobile */
.mobile-menu-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  color: #374151;
  transition: color 0.3s ease;
}

@media (min-width: 768px) {
  .mobile-menu-btn {
    display: none;
  }
}

.mobile-menu-btn:hover {
  color: #000000;
}

/* Ícones do menu mobile */
.menu-icon,
.close-icon {
  width: 24px;
  height: 24px;
}

.hidden {
  display: none !important;
}

/* Menu Mobile */
.mobile-menu {
  padding: 16px 0;
  border-top: 1px solid #e5e7eb;
}

@media (min-width: 768px) {
  .mobile-menu {
    display: none !important;
  }
}

/* Conteúdo do menu mobile */
.mobile-menu-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* Links mobile */
.mobile-nav-link {
  display: block;
  color: #374151;
  text-decoration: none;
  font-size: 16px;
  padding: 8px 0;
  transition: color 0.3s ease;
}

.mobile-nav-link:hover {
  color: #000000;
}

/* Dropdown Mobile */
.mobile-dropdown {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* Botão dropdown mobile */
.mobile-dropdown-btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  color: #374151;
  background: none;
  border: none;
  font-size: 16px;
  cursor: pointer;
  padding: 8px 0;
  text-align: left;
  transition: color 0.3s ease;
}

.mobile-dropdown-btn:hover {
  color: #000000;
}

/* Ícone dropdown mobile */
.mobile-dropdown-icon {
  transition: transform 0.3s ease;
  flex-shrink: 0;
}

.mobile-dropdown-icon.rotate {
  transform: rotate(180deg);
}

/* Conteúdo dropdown mobile */
.mobile-dropdown-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-left: 16px;
  margin-top: 8px;
  font-size: 14px;
}

/* Seção dropdown mobile */
.mobile-dropdown-section {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

/* Título dropdown mobile */
.mobile-dropdown-title {
  font-weight: 600;
  color: #111827;
  margin: 0 0 4px 0;
  font-size: 14px;
}

/* Lista dropdown mobile */
.mobile-dropdown-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

/* Item dropdown mobile */
.mobile-dropdown-item {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #374151;
  font-size: 14px;
  padding: 4px 0;
  transition: color 0.3s ease;
  text-decoration: none;
  cursor: pointer;
}

.mobile-dropdown-item:hover {
  color: #111827;
}

.mobile-dropdown-item svg {
  flex-shrink: 0;
  color: #6b7280;
}

/* Botões mobile */
.mobile-btn {
  width: 100%;
  margin-top: 4px;
}

/* Espaçamento para conteúdo abaixo do header fixo */
body {
  padding-top: 64px;
}

/* Animações suaves */
.mega-menu,
.mobile-menu,
.mobile-dropdown-content {
  transition: all 0.3s ease;
}

/* Responsividade do mega menu em telas menores */
@media (max-width: 1200px) {
  .mega-menu {
    width: 95vw;
  }

  .mega-menu-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}

@media (max-width: 768px) {
  .mega-menu-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

/* Ajustes para altura do logo */
@media (max-width: 480px) {
  .logo-image {
    height: 28px;
  }

  .header-wrapper {
    height: 56px;
  }

  body {
    padding-top: 56px;
  }
}

/* Hover suave nos botões */
.btn-primary:active,
.btn-secondary:active {
  transform: translateY(0);
}

/* Estilo do overlay (opcional - descomente se quiser um overlay escuro) */
/*
.header-overlay {
  position: fixed;
  top: 64px;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  z-index: 9998;
}

.header-overlay.active {
  opacity: 1;
  visibility: visible;
}
*/

/* Garantir que links não tenham decoração */
a.mega-menu-item,
a.mobile-dropdown-item,
a.mobile-nav-link,
a.nav-link {
  text-decoration: none;
}

/* Scroll suave */
html {
  scroll-behavior: smooth;
}

/* Ajuste para evitar overlap com header fixo */
[id] {
  scroll-margin-top: 80px;
}/* End custom CSS */