/* =================================================================
   Header & Menu Styles
   ================================================================= */

/* Header Background */
#header,
#header.transparent-header,
#header.sticky-header,
#header.sticky-header-shrink,
#header.transparent-header.sticky-header,
#header.transparent-header.sticky-header-shrink {
  background-color: #072F0E !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}

#header.sticky-header,
#header.sticky-header-shrink {
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

#header #header-wrap {
  background-color: #072F0E !important;
}

/* Header font & links */
#header,
#header a,
#header .menu-link div {
  color: #ffffff;
}

/* Menu link hover */
#header .primary-menu .menu-container .menu-item .menu-link:hover div {
  color: #FFD200 !important;
}

/* Hamburger icon */
#header .cnvs-hamburger .cnvs-hamburger-inner,
#header .cnvs-hamburger .cnvs-hamburger-inner::before,
#header .cnvs-hamburger .cnvs-hamburger-inner::after {
  background-color: #FFD200 !important;
}

#header .cnvs-hamburger:hover .cnvs-hamburger-inner,
#header .cnvs-hamburger:hover .cnvs-hamburger-inner::before,
#header .cnvs-hamburger:hover .cnvs-hamburger-inner::after {
  background-color: #FFD200 !important;
}

/* Mobile logo positioning */
.header-row.position-relative { position: relative; }
.mobile-logo {
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1000;
}
.canvas-active .mobile-logo { display: none !important; }

#logo.logo-left {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.header-row {
  display: flex;
  justify-content: center;
  align-items: center;
}

#logo img { max-height: 120px; }

/* Posicionamento dos ícones à direita */
.header-misc {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 100;
}

.header-extras {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 15px;
}

.header-extras .menu-item {
  display: flex;
  align-items: center;
}

.header-extras .menu-item--whatsapp .menu-link {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff !important;
  text-decoration: none;
  transition: all 0.3s ease;
  padding: 0.5rem;
  cursor: pointer !important;
}

.header-extras .menu-item--whatsapp .menu-link:hover {
  color: #25D366 !important;
}

.header-extras .menu-item--whatsapp .menu-link:hover i {
  color: #25D366 !important;
}

.header-extras .menu-item--whatsapp i {
  font-size: 1.6rem;
  transition: color 0.3s ease;
}

/* =================================================================
   Primary Menu & Sub‑menus
   ================================================================= */
.primary-menu .one-page-menu .menu-link div {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500 !important;
  font-size: 15.17pt !important;
  line-height: 23.33pt !important;
  letter-spacing: 0 !important;
  color: #ffffff !important;
  text-transform: none !important;
  transition: color 0.3s ease !important;
}

.primary-menu .one-page-menu .menu-link:hover div {
  color: #FFD200 !important;
  text-transform: none !important;
}

/* Sub-menu background - usando o mesmo estilo do menu principal */
.primary-menu .sub-menu-container {
  background-color: #072F0E !important;
  border: none !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
  min-width: 14rem;
  width: 320px !important;
  max-width: 22rem;
  padding: 10px 0;
}

/* Links do submenu - mesmo estilo do menu principal */
.primary-menu .sub-menu-container .menu-link div { 
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 500 !important;
  font-size: 15.17pt !important;
  line-height: 23.33pt !important;
  letter-spacing: 0 !important;
  color: #ffffff !important;
  text-transform: none !important;
  transition: color 0.3s ease !important;
}

.primary-menu .sub-menu-container .menu-link:hover div { 
  color: #FFD200 !important;
  text-transform: none !important;
}

.primary-menu .sub-menu-container .menu-item { 
  margin: 0; 
  padding: 8px 20px;
  background-color: transparent !important;
}


/* Submenus aninhados - mesmo estilo */
.primary-menu .sub-menu-container .sub-menu-container {
  left: 100%;
  top: 0;
  background-color: #072F0E !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}

/* Transições suaves para todos os links do menu */
.primary-menu .menu-link {
  transition: all 0.3s ease !important;
  cursor: pointer !important;
}

/* Cursor pointer para todos os itens do menu */
.primary-menu .menu-container .menu-link,
.primary-menu .menu-container .menu-link div,
.primary-menu .menu-container .menu-item a {
  cursor: pointer !important;
}

/* Cursor pointer específico para submenus */
.primary-menu .sub-menu-container .menu-link,
.primary-menu .sub-menu-container .menu-link div,
.primary-menu .sub-menu-container .menu-item a {
  cursor: pointer !important;
}

/* Sub‑menu trigger icon */
.sub-menu-trigger i,
.sub-menu-trigger .fa-chevron-right { 
  color: #ffffff !important; 
}

.sub-menu-trigger.fa-solid:before { 
  color: #ffffff !important; 
}

.sub-menu-trigger { 
  position: relative; 
  top: 15px !important; 
}

/* Sub‑menu border highlight */
.is-expanded-menu .sub-menu-container,
.is-expanded-menu .mega-menu-content {
  border-top: 2px solid #FFD200 !important;
}

/* Current menu item highlight */
.menu-item.current > .menu-link div,
.menu-item.current > .menu-link.non-clickable div { 
  color: #FFD200 !important; 
}

/* Current submenu item highlight */
.primary-menu .sub-menu-container .menu-item.current > .menu-link div {
  color: #FFD200 !important;
}

/* Parent item highlight when child is current */
.menu-item-has-children .sub-menu-container .menu-item.current {
  background-color: rgba(255, 210, 0, 0.1) !important;
}

.primary-menu .sub-menu-container .menu-link > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
  white-space: nowrap;
}

.primary-menu .sub-menu-indicator { 
  flex-shrink: 0; 
}

/* WhatsApp menu item */
.menu-item--whatsapp .bi-whatsapp {
  font-size: 2rem;
  transition: color 0.3s ease;
}

.menu-item--whatsapp .menu-link { 
  padding: 0.5rem 1rem; 
  transition: color 0.3s ease !important;
}

@media (hover: hover) {
  .menu-item--whatsapp .menu-link:hover,
  .menu-item--whatsapp .menu-link:focus { 
    color: #25D366; 
  }
}

@media (min-width: 992px) {
  .menu-item--whatsapp .bi-whatsapp { 
    font-size: 1.6rem; 
  }
}

/* Mobile Menu Adjustments */
@media (max-width: 991px) {
  .primary-menu .sub-menu-container .sub-menu-container {
    position: static;
    left: auto;
    top: auto;
    width: 100%;
    padding-left: 20px;
    box-shadow: none;
  }
  
  .primary-menu .sub-menu-container .menu-item { 
    padding: 12px 15px; 
  }
}

/* =================================================================
   Social Icons Styles
   ================================================================= */
.social-icons-list {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}

.social-link img {
  transition: filter 0.6s cubic-bezier(0.4, 0, 0.2, 1), transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  filter: brightness(0) invert(1); /* Branco puro */
}

.social-link:hover img,
.social-link:focus img {
  color: var(--hover-color, #FFD200) !important;
  transform: scale(1.08) rotate(-3deg);
}

@media (max-width: 991.98px) {
  .header-extras.social-icons-list {
    justify-content: center !important;
    width: 100%;
    padding: 0.5rem 0;
  }
}