/* Correção definitiva para menu responsivo */
/* Mobile First - Mostrar menu hambúrguer e ocultar menu desktop */
@media screen and (max-width: 768px) {
/* Ocultar completamente o menu desktop */
.nav-list {
display: none !important;
}
/* Forçar exibição do botão hambúrguer */
.nav-toggle {
display: flex !important;
flex-direction: column !important;
cursor: pointer !important;
z-index: 9999 !important;
padding: 8px !important;
position: absolute !important;
right: 20px !important;
top: 50% !important;
transform: translateY(-50%) !important;
background: rgba(255, 255, 255, 0.1) !important;
border-radius: 4px !important;
visibility: visible !important;
opacity: 1 !important;
pointer-events: auto !important;
width: 40px !important;
height: 40px !important;
justify-content: center !important;
align-items: center !important;
}
/* Barras do hambúrguer */
.nav-toggle .bar {
width: 25px !important;
height: 3px !important;
background: white !important;
margin: 2px 0 !important;
transition: 0.3s !important;
display: block !important;
border-radius: 2px !important;
}
/* Menu mobile overlay - inicialmente oculto */
.nav-menu {
position: fixed !important;
top: 70px !important;
left: -100% !important;
width: 100% !important;
height: calc(100vh - 70px) !important;
background: rgba(45, 90, 74, 0.98) !important;
backdrop-filter: blur(10px) !important;
display: flex !important;
flex-direction: column !important;
justify-content: flex-start !important;
align-items: center !important;
padding-top: 2rem !important;
transition: left 0.3s ease !important;
z-index: 998 !important;
overflow-y: auto !important;
}
/* Menu mobile ativo */
.nav-menu.active {
left: 0 !important;
display: flex !important;
}
/* Lista do menu mobile */
.nav-menu .nav-list {
display: flex !important;
flex-direction: column !important;
gap: 1.5rem !important;
width: 100% !important;
text-align: center !important;
list-style: none !important;
margin: 0 !important;
padding: 0 !important;
}
.nav-menu .nav-item {
width: 100% !important;
}
.nav-menu .nav-link {
display: block !important;
padding: 1rem 2rem !important;
font-size: 1.1rem !important;
color: white !important;
text-decoration: none !important;
transition: all 0.3s ease !important;
border-radius: 8px !important;
margin: 0 1rem !important;
}
.nav-menu .nav-link:hover {
background: rgba(244, 185, 66, 0.2) !important;
color: #f4b942 !important;
}
/* Animação do hambúrguer quando ativo */
.nav-toggle.active .bar:nth-child(1) {
transform: translateY(7px) rotate(45deg) !important;
}
.nav-toggle.active .bar:nth-child(2) {
opacity: 0 !important;
}
.nav-toggle.active .bar:nth-child(3) {
transform: translateY(-7px) rotate(-45deg) !important;
}
}
/* Ajustes para tablets */
@media screen and (min-width: 769px) and (max-width: 1024px) {
.nav-list {
gap: 1.5rem !important;
}
.nav-link {
font-size: 0.9rem !important;
}
}
/* Desktop - Ocultar menu hambúrguer completamente */
@media screen and (min-width: 769px) {
.nav-toggle {
display: none !important;
visibility: hidden !important;
opacity: 0 !important;
pointer-events: none !important;
}
.nav-menu {
display: block !important;
position: static !important;
background: transparent !important;
height: auto !important;
width: auto !important;
left: auto !important;
top: auto !important;
transform: none !important;
}
.nav-list {
display: flex !important;
flex-direction: row !important;
gap: 2rem !important;
width: auto !important;
text-align: left !important;
padding: 0 !important;
margin: 0 !important;
list-style: none !important;
}
.nav-item {
width: auto !important;
}
.nav-link {
display: inline-block !important;
padding: 0 !important;
font-size: 1rem !important;
color: white !important;
text-decoration: none !important;
}
}