.elementor-14 .elementor-element.elementor-element-2a2d5d0{--display:flex;--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;--z-index:999;}.elementor-14 .elementor-element.elementor-element-47d2adf{--display:flex;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-14 .elementor-element.elementor-element-47d2adf.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-14 .elementor-element.elementor-element-13efa6b .elementor-icon-wrapper{text-align:start;}.elementor-14 .elementor-element.elementor-element-13efa6b .elementor-icon{font-size:64px;}.elementor-14 .elementor-element.elementor-element-13efa6b .elementor-icon svg{height:64px;}.elementor-14 .elementor-element.elementor-element-13efa6b .elementor-icon-wrapper svg{width:auto;}.elementor-14 .elementor-element.elementor-element-2a7611a{--display:flex;--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;--justify-content:center;}.elementor-14 .elementor-element.elementor-element-045448b .elementor-menu-toggle{margin-left:auto;}.elementor-14 .elementor-element.elementor-element-045448b .elementor-nav-menu .elementor-item{font-weight:600;}.elementor-14 .elementor-element.elementor-element-045448b .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-14 .elementor-element.elementor-element-045448b .elementor-nav-menu--main .elementor-item:hover,
					.elementor-14 .elementor-element.elementor-element-045448b .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-14 .elementor-element.elementor-element-045448b .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-14 .elementor-element.elementor-element-045448b .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-f54b712 );fill:var( --e-global-color-f54b712 );}.elementor-14 .elementor-element.elementor-element-045448b div.elementor-menu-toggle{color:#FFFFFF;}.elementor-14 .elementor-element.elementor-element-045448b div.elementor-menu-toggle svg{fill:#FFFFFF;}.elementor-14 .elementor-element.elementor-element-26fa143{--grid-template-columns:repeat(0, auto);text-align:left;--icon-size:18px;--grid-column-gap:15px;--grid-row-gap:0px;}.elementor-14 .elementor-element.elementor-element-26fa143 .elementor-social-icon{background-color:#FFFFFF;--icon-padding:10px;}.elementor-14 .elementor-element.elementor-element-26fa143 .elementor-social-icon i{color:var( --e-global-color-1bbbec6 );}.elementor-14 .elementor-element.elementor-element-26fa143 .elementor-social-icon svg{fill:var( --e-global-color-1bbbec6 );}.elementor-14 .elementor-element.elementor-element-26fa143 .elementor-social-icon:hover{background-color:var( --e-global-color-f54b712 );}.elementor-14 .elementor-element.elementor-element-26fa143 .elementor-social-icon:hover i{color:#FFFFFF;}.elementor-14 .elementor-element.elementor-element-26fa143 .elementor-social-icon:hover svg{fill:#FFFFFF;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-14 .elementor-element.elementor-element-47d2adf{--width:29.994%;}}@media(max-width:767px){.elementor-14 .elementor-element.elementor-element-2a2d5d0{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-14 .elementor-element.elementor-element-47d2adf{--width:50%;}.elementor-14 .elementor-element.elementor-element-13efa6b .elementor-icon{font-size:38px;}.elementor-14 .elementor-element.elementor-element-13efa6b .elementor-icon svg{height:38px;}.elementor-14 .elementor-element.elementor-element-2a7611a{--width:50%;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-14 .elementor-element.elementor-element-2a7611a.e-con{--align-self:flex-end;}.elementor-14 .elementor-element.elementor-element-045448b.elementor-element{--align-self:flex-end;}.elementor-14 .elementor-element.elementor-element-045448b{--nav-menu-icon-size:30px;}}/* Start custom CSS for nav-menu, class: .elementor-element-045448b *//* =========================================================
   CUSTOMIZAÇÃO DO MENU MOBILE - ELEMENTOR (nav-menu widget)

   IMPORTANTE: cole este código no CSS GLOBAL, não no CSS
   Personalizado de um widget específico:
   Elementor (ícone ☰ no editor) → Site Settings → Custom CSS

   O CSS Personalizado de um widget só enxerga elementos DENTRO
   dele. Como este código também precisa alcançar o cabeçalho
   (pra alinhar o menu à direita), ele precisa estar no CSS
   global do site.
   ========================================================= */

/* =========================================================
   FORÇAR O MENU/HAMBÚRGUER PARA A BORDA DIREITA DO HEADER
   Baseado na estrutura real do header (containers do Elementor):
   .elementor-element-2a2d5d0 = linha do header (logo + menu)
   .elementor-element-47d2adf = container da logo (esquerda)
   .elementor-element-2a7611a = container do menu (direita)
   .elementor-element-045448b = widget do menu/hambúrguer
   ========================================================= */

/* Garante que a linha do header empurre logo pra esquerda e
   menu pra direita, ocupando toda a largura disponível */
.elementor-element-2a2d5d0 > .e-con-inner {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100%;
}

/* Container do menu: alinha seu conteúdo (widget do menu) à direita */
.elementor-element-2a7611a {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  margin-left: auto !important;
  flex: 0 0 auto;
}

/* O próprio widget do menu, colado na ponta direita */
.elementor-element-045448b {
  margin-left: auto !important;
}

/* Dentro do widget, garante que o botão hambúrguer fique
   na extremidade direita (não centralizado/deslocado) */
@media (max-width: 1024px) {
  .elementor-element-045448b {
    display: flex;
    justify-content: flex-end;
    width: 100%;
  }

  .elementor-element-045448b .elementor-menu-toggle {
    margin-left: auto;
  }
}

/* Ajuste as variáveis abaixo para combinar com a identidade visual */
:root {
  --menu-bg: #ffffff;
  --menu-text: #1a1a1a;
  --menu-accent: #c0392b; /* cor de destaque - ajuste para a cor do partido/campanha */
  --menu-border: #eaeaea;
}

/* Breakpoint mobile do Elementor (ajuste se seu breakpoint for diferente,
   ex: elementor-nav-menu--dropdown-mobile) */
@media (max-width: 1024px) {

  /* Botão hamburguer / fechar
     IMPORTANTE: precisa ficar ACIMA do painel do menu (que também é
     fixed e cobre a tela toda), senão o X fica escondido atrás dele. */
  .elementor-menu-toggle {
    position: relative;
    z-index: 10001; /* maior que o z-index do painel abaixo */
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: transparent;
    transition: background-color 0.25s ease;
  }

  .elementor-menu-toggle:hover,
  .elementor-menu-toggle:focus {
    background-color: rgba(0, 0, 0, 0.05);
  }

  .elementor-menu-toggle svg {
    width: 26px;
    height: 26px;
    color: var(--menu-text);
  }

  /* Controle explícito de qual ícone aparece (hambúrguer x fechar).
     Por padrão só o ícone de abrir fica visível; quando o toggle
     recebe aria-expanded="true" (feito pelo próprio Elementor ao
     clicar), trocamos para o X. */
  .elementor-menu-toggle__icon--close {
    display: none;
  }

  .elementor-menu-toggle[aria-expanded="true"] .elementor-menu-toggle__icon--open {
    display: none;
  }

  .elementor-menu-toggle[aria-expanded="true"] .elementor-menu-toggle__icon--close {
    display: block;
    color: var(--menu-text);
  }

  /* Ancora o painel do menu no próprio header, que já é sticky
     (classe "lytbox-header" no seu tema). Um elemento sticky serve
     de referência de posicionamento pros filhos absolute, então o
     painel vai seguir o header automaticamente — rolado ou não —
     sem precisar de um valor fixo de "top" em pixels (que só
     funciona pra uma das duas posições). */
  .elementor-element-2a7611a {
    position: static !important;
  }

  /* Painel do menu mobile (dropdown abaixo do header)
     ATENÇÃO: a classe .elementor-nav-menu--dropdown também existe no
     <ul class="sub-menu"> do submenu "Notícias" — por isso o seletor
     abaixo é combinado com .elementor-nav-menu__container, que só o
     <nav> principal possui. Isso evita que o submenu vire tela cheia. */
  nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position: absolute !important;
    top: 100% !important;
    left: 50% !important;
    right: auto !important;
    width: 100vw !important;
    transform: translateX(-50%) translateY(-8px);
    height: auto !important;
    max-height: calc(100vh - 90px);
    background: var(--menu-bg);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: 16px 24px 32px;
    box-sizing: border-box;
    opacity: 0;
    visibility: hidden;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.12);
    transition: transform 0.3s ease, opacity 0.3s ease, visibility 0.3s;
    z-index: 9999;
    overflow-y: auto;
  }

  /* Estado aberto (Elementor alterna aria-hidden / classe ativa) */
  nav.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"],
  .elementor-menu-toggle[aria-expanded="true"] ~ nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
  body.elementor-nav-menu--dropdown-open nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    transform: translateX(-74%) translateY(0);
    opacity: 1;
    visibility: visible;
  }

  /* Lista principal */
  nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu {
    display: flex;
    flex-direction: column;
    width: 100%;
  }

  nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .menu-item {
    border-bottom: 1px solid var(--menu-border);
  }

  /* Submenu ("Notícias") — precisa ficar estático dentro do fluxo,
     NUNCA fixed/tela cheia. Sobrescreve qualquer herança indevida. */
  .sub-menu.elementor-nav-menu--dropdown {
    position: static !important;
    inset: auto !important;
    height: auto !important;
    width: 100% !important;
    z-index: auto !important;
    background: transparent !important;
    padding: 0 0 0 12px !important;
    transform: none !important;
    opacity: 1 !important;
  }

  .elementor-nav-menu--dropdown .elementor-item,
  .elementor-nav-menu--dropdown .elementor-sub-item,
  .elementor-nav-menu--dropdown .elementor-item.elementor-item-active,
  .elementor-nav-menu--dropdown .elementor-item.highlighted,
  .elementor-nav-menu--dropdown a.elementor-item {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 4px !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    color: var(--menu-text) !important;
    background: transparent !important;
    background-color: transparent !important;
    text-decoration: none !important;
    border: none !important;
    box-shadow: none !important;
    white-space: nowrap !important;
    transition: color 0.2s ease !important;
  }

  .elementor-nav-menu--dropdown .elementor-item:hover,
  .elementor-nav-menu--dropdown .elementor-item:focus,
  .elementor-nav-menu--dropdown .elementor-item.highlighted,
  .elementor-nav-menu--dropdown .elementor-item.elementor-item-active {
    color: var(--menu-accent) !important;
  }

  /* Seta de submenu — tamanho fixo e forçado, o ícone que aparece
     gigante é herança do tema; isso trava o tamanho real. */
  .elementor-nav-menu--dropdown .sub-arrow,
  .elementor-nav-menu--dropdown .sub-arrow svg {
    display: inline-flex !important;
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    max-width: 14px !important;
    flex-shrink: 0 !important;
    transition: transform 0.25s ease !important;
  }

  .elementor-nav-menu--dropdown .elementor-item[aria-expanded="true"] .sub-arrow svg {
    transform: rotate(180deg) !important;
    color: var(--menu-accent) !important;
  }

  /* Submenu (acordeão) */
  .elementor-nav-menu--dropdown .sub-menu {
    max-height: 0;
    overflow: hidden;
    padding-left: 12px;
    transition: max-height 0.3s ease;
  }

  .elementor-nav-menu--dropdown .sub-menu[aria-expanded="true"],
  .elementor-nav-menu--dropdown .sub-menu[aria-hidden="false"] {
    max-height: 500px; /* alto o suficiente para caber os itens */
  }

  .elementor-nav-menu--dropdown .elementor-sub-item {
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #555 !important;
    background: transparent !important;
  }

  .elementor-nav-menu--dropdown .elementor-sub-item:hover {
    color: var(--menu-accent) !important;
  }

  /* Ícone de fechar (X) fica visível quando o menu está aberto */
  .elementor-menu-toggle__icon--close {
    color: var(--menu-text);
  }

  /* Bloqueia o scroll do fundo quando o menu está aberto
     (requer a classe abaixo aplicada via JS - veja observação no final) */
  body.menu-open {
    overflow: hidden;
  }
}

/* Telas bem pequenas (opcional: reduzir ainda mais o padding) */
@media (max-width: 400px) {
  nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    padding: 12px 18px 24px;
  }

  .elementor-nav-menu--dropdown .elementor-item,
  .elementor-nav-menu--dropdown .elementor-sub-item {
    font-size: 16px;
  }
}/* End custom CSS */