.elementor-404 .elementor-element.elementor-element-1a732d0{--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:space-between;}.elementor-404 .elementor-element.elementor-element-f9dc7c0{--divider-style:solid;--subtotal-divider-style:solid;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--toggle-button-icon-color:var( --e-global-color-accent );--cart-border-style:none;--cart-footer-layout:1fr 1fr;--products-max-height-sidecart:calc(100vh - 240px);--products-max-height-minicart:calc(100vh - 385px);}.elementor-404 .elementor-element.elementor-element-f9dc7c0 .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-404 .elementor-element.elementor-element-d22aff2.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-404 .elementor-element.elementor-element-d22aff2 .elementor-menu-toggle{margin:0 auto;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-404 .elementor-element.elementor-element-1a732d0{--justify-content:space-around;}}@media(min-width:768px){.elementor-404 .elementor-element.elementor-element-1a732d0{--content-width:1600px;}}@media(max-width:767px){.elementor-404 .elementor-element.elementor-element-1a732d0{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:stretch;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-404 .elementor-element.elementor-element-f9dc7c0{--main-alignment:center;}.elementor-404 .elementor-element.elementor-element-d22aff2{width:var( --container-widget-width, 331.963px );max-width:331.963px;--container-widget-width:331.963px;--container-widget-flex-grow:0;}}/* Start custom CSS for container, class: .elementor-element-1a732d0 *//* =====================================
MENU INSTITUCIONAL IBRATEP
===================================== */

.ib-menu{
background:#2A3B4C;
border-bottom:1px solid rgba(255,255,255,0.08);
padding:10px 0;
}

/* UL do menu */
.ib-menu .elementor-nav-menu{
display:flex;
align-items:center;
gap:28px;
}

/* links */
.ib-menu .elementor-item{
color:#F9FAFB !important;
font-size:15px;
font-weight:600;
padding:10px 14px;
border-radius:6px;
transition:all .25s ease;
position:relative;
}

/* linha dourada animada */
.ib-menu .elementor-item:after{
content:"";
position:absolute;
left:0;
bottom:-6px;
width:0;
height:2px;
background:#C5A365;
transition:all .25s ease;
}

/* hover */
.ib-menu .elementor-item:hover{
color:#C5A365 !important;
}

.ib-menu .elementor-item:hover:after{
width:100%;
}

/* item ativo */
.ib-menu .elementor-item.elementor-item-active{
color:#C5A365 !important;
}

/* dropdown */
.ib-menu .sub-menu{
background:#1F2D3A;
border-radius:10px;
border:1px solid rgba(255,255,255,.08);
padding:8px;
box-shadow:0 10px 30px rgba(0,0,0,.25);
}

.ib-menu .sub-menu a{
color:#E5E7EB !important;
padding:10px 14px;
border-radius:6px;
}

.ib-menu .sub-menu a:hover{
background:rgba(197,163,101,.10);
color:#C5A365 !important;
}

/* menu mobile */
@media(max-width:768px){

.ib-menu .elementor-nav-menu{
flex-direction:column;
gap:6px;
}

.ib-menu .elementor-item{
width:100%;
text-align:left;
padding:12px;
}

}
/* =====================================
   FIX MOBILE – MENU IBRATEP (Elementor Nav Menu)
   Cola abaixo do CSS atual
===================================== */
@media (max-width: 768px){

  /* Barra do header no mobile (altura e respiro) */
  .ib-menu{
    padding: 8px 12px !important;
  }

  /* Botão hambúrguer (toggle) – fica claro e visível */
  .ib-menu .elementor-menu-toggle{
    width: 44px !important;
    height: 44px !important;
    border-radius: 12px !important;
    background: rgba(197,163,101,.14) !important;
    border: 1px solid rgba(197,163,101,.55) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  /* Ícone do hambúrguer */
  .ib-menu .elementor-menu-toggle i,
  .ib-menu .elementor-menu-toggle svg{
    color: #F9FAFB !important;
    fill: #F9FAFB !important;
    font-size: 18px !important;
  }

  /* Quando está aberto (aria-expanded=true) */
  .ib-menu .elementor-menu-toggle[aria-expanded="true"]{
    background: rgba(197,163,101,.22) !important;
    border-color: #C5A365 !important;
  }

  /* Container do menu aberto (dropdown/painel) */
  .ib-menu .elementor-nav-menu--dropdown{
    background: #1F2D3A !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 14px !important;
    margin-top: 10px !important;
    padding: 10px !important;
    box-shadow: 0 16px 40px rgba(0,0,0,.35) !important;
    overflow: hidden !important;
  }

  /* Itens do menu (mobile) */
  .ib-menu .elementor-nav-menu--dropdown a.elementor-item{
    background: rgba(255,255,255,.04) !important;
    color: #F9FAFB !important;
    border: 1px solid rgba(255,255,255,.06) !important;
    border-radius: 12px !important;
    padding: 14px 14px !important;
    margin: 6px 0 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    width: 100% !important;
  }

  /* Hover/ativo (mobile) – bem visível */
  .ib-menu .elementor-nav-menu--dropdown a.elementor-item:hover,
  .ib-menu .elementor-nav-menu--dropdown a.elementor-item.elementor-item-active{
    background: rgba(197,163,101,.14) !important;
    border-color: rgba(197,163,101,.60) !important;
    color: #C5A365 !important;
  }

  /* Remove a “linha dourada animada” no mobile pra não ficar torto */
  .ib-menu .elementor-nav-menu--dropdown a.elementor-item:after{
    display: none !important;
  }

  /* Submenu no mobile (se tiver) */
  .ib-menu .elementor-nav-menu--dropdown .sub-menu{
    background: transparent !important;
    border: 0 !important;
    padding: 6px 0 0 !important;
    box-shadow: none !important;
  }

  .ib-menu .elementor-nav-menu--dropdown .sub-menu a{
    background: rgba(255,255,255,.03) !important;
    color: #E5E7EB !important;
    border: 1px solid rgba(255,255,255,.06) !important;
    border-radius: 12px !important;
    margin: 6px 0 !important;
    padding: 12px 14px !important;
  }

  .ib-menu .elementor-nav-menu--dropdown .sub-menu a:hover{
    background: rgba(197,163,101,.10) !important;
    color: #C5A365 !important;
    border-color: rgba(197,163,101,.55) !important;
  }
}
/* =========================================================
   FIX RESPONSIVO IBRATEP – MENU (Elementor Nav Menu / Menu WP)
   - Mobile/Tablet não empurra coluna (dropdown overlay)
   - Texto do tablet sempre claro
   Cole abaixo do CSS atual
========================================================= */

/* garante que o header/container do menu seja referência p/ dropdown absoluto */
.ib-menu{
  position: relative !important;
}

/* TABLET + MOBILE */
@media (max-width: 1024px){

  /* Toggle/hambúrguer visível e proporcional */
  .ib-menu .elementor-menu-toggle{
    width: 44px !important;
    height: 44px !important;
    border-radius: 12px !important;
    background: rgba(197,163,101,.14) !important;
    border: 1px solid rgba(197,163,101,.55) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  .ib-menu .elementor-menu-toggle i,
  .ib-menu .elementor-menu-toggle svg,
  .ib-menu .elementor-menu-toggle .eicon-menu-bar,
  .ib-menu .elementor-menu-toggle .eicon-close{
    color: #F9FAFB !important;
    fill: #F9FAFB !important;
    font-size: 18px !important;
  }

  .ib-menu .elementor-menu-toggle[aria-expanded="true"]{
    background: rgba(197,163,101,.22) !important;
    border-color: #C5A365 !important;
  }

  /* ===== DROPDOWN OVERLAY (não empurra a coluna) ===== */
  .ib-menu .elementor-nav-menu--dropdown{
    position: absolute !important;
    right: 12px !important;
    top: calc(100% + 10px) !important;
    left: auto !important;

    width: min(320px, calc(100vw - 24px)) !important;
    z-index: 9999 !important;

    background: #1F2D3A !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 14px !important;
    padding: 10px !important;
    box-shadow: 0 16px 40px rgba(0,0,0,.35) !important;
    overflow: hidden !important;
  }

  /* Itens do menu no dropdown (tablet/mobile) */
  .ib-menu .elementor-nav-menu--dropdown a.elementor-item{
    background: rgba(255,255,255,.04) !important;
    color: #F9FAFB !important;              /* FORÇA CLARO (corrige tablet escuro) */
    border: 1px solid rgba(255,255,255,.06) !important;
    border-radius: 12px !important;
    padding: 14px 14px !important;
    margin: 6px 0 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    width: 100% !important;
  }

  /* Hover/ativo bem visível */
  .ib-menu .elementor-nav-menu--dropdown a.elementor-item:hover,
  .ib-menu .elementor-nav-menu--dropdown a.elementor-item.elementor-item-active{
    background: rgba(197,163,101,.14) !important;
    border-color: rgba(197,163,101,.60) !important;
    color: #C5A365 !important;
  }

  /* Remove a linha dourada do desktop no dropdown */
  .ib-menu .elementor-nav-menu--dropdown a.elementor-item:after{
    display: none !important;
  }

  /* Submenus no dropdown */
  .ib-menu .elementor-nav-menu--dropdown .sub-menu{
    background: transparent !important;
    border: 0 !important;
    padding: 6px 0 0 !important;
    box-shadow: none !important;
  }

  .ib-menu .elementor-nav-menu--dropdown .sub-menu a{
    background: rgba(255,255,255,.03) !important;
    color: #E5E7EB !important;
    border: 1px solid rgba(255,255,255,.06) !important;
    border-radius: 12px !important;
    margin: 6px 0 !important;
    padding: 12px 14px !important;
  }

  .ib-menu .elementor-nav-menu--dropdown .sub-menu a:hover{
    background: rgba(197,163,101,.10) !important;
    color: #C5A365 !important;
    border-color: rgba(197,163,101,.55) !important;
  }
}

/* MOBILE: dropdown ocupa a largura e fica alinhado certinho */
@media (max-width: 768px){
  .ib-menu .elementor-nav-menu--dropdown{
    right: 12px !important;
    width: calc(100vw - 24px) !important;
  }
}/* End custom CSS */