
/* =========================================================
   HABENT_SERVICES_NAV_V1_0_0
   CSS consolidado oficial do menu + dropdown de Serviços
   Substitui:
   - habent-nav-dropdown-v1013.css
   - habent-nav-dropdown-v1014.css
   - habent-services-dropdown-v1015.css
   - habent-menu-underline-arrow-v1016.css
   ========================================================= */

/* ---------- Navegação principal / underline ---------- */
.main-nav > a,
.main-nav .nav-services-link{
  background-image:linear-gradient(#24a8ff,#24a8ff) !important;
  background-repeat:no-repeat !important;
  background-position:left bottom !important;
  background-size:0 2px !important;
  transition:
    background-size .18s ease,
    color .18s ease !important;
}

.main-nav > a:hover,
.main-nav > a:focus-visible,
.main-nav > a.active,
.main-nav > a[aria-current="page"],
.main-nav .nav-services-link:hover,
.main-nav .nav-services-link:focus-visible,
.main-nav .nav-services:hover > .nav-services-link,
.main-nav .nav-services:focus-within > .nav-services-link,
.main-nav .nav-services.is-open > .nav-services-link{
  background-size:100% 2px !important;
}

/* Remove pseudo-indicadores antigos dos links */
.main-nav > a::before,
.main-nav > a::after,
.main-nav .nav-services-link::before,
.main-nav .nav-services-link::after,
.main-nav .nav-services::before{
  content:none !important;
  display:none !important;
}

/* ---------- Container Serviços ---------- */
.nav-services{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
}

/* ponte invisível para evitar fechamento acidental */
.nav-services::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:-22px !important;
  right:-22px !important;
  top:100% !important;
  height:18px !important;
  background:transparent !important;
  pointer-events:auto !important;
  z-index:1198 !important;
}

/* ---------- Mega menu Serviços ---------- */
.nav-services > .services-dropdown{
  position:absolute !important;
  left:0 !important;
  right:auto !important;
  top:calc(100% + 14px) !important;

  width:720px !important;
  max-width:min(720px,calc(100vw - 40px)) !important;

  padding:16px !important;
  margin:0 !important;

  background:rgba(7,20,34,.985) !important;
  border:1px solid rgba(88,145,197,.25) !important;
  border-radius:18px !important;
  box-shadow:
    0 26px 70px rgba(0,0,0,.34),
    0 6px 18px rgba(0,0,0,.18) !important;

  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;

  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(10px) scale(.992) !important;
  transform-origin:top left !important;

  transition:
    opacity .18s ease,
    transform .18s ease,
    visibility .18s ease !important;

  z-index:1200 !important;
  overflow:visible !important;
}

/* única seta integrada ao painel */
.nav-services > .services-dropdown::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:26px !important;
  top:-7px !important;
  width:13px !important;
  height:13px !important;
  background:rgba(7,20,34,.985) !important;
  border-left:1px solid rgba(88,145,197,.25) !important;
  border-top:1px solid rgba(88,145,197,.25) !important;
  border-right:0 !important;
  border-bottom:0 !important;
  transform:rotate(45deg) !important;
  border-radius:2px 0 0 0 !important;
  box-shadow:none !important;
  z-index:1 !important;
}

/* aberto */
.nav-services:hover > .services-dropdown,
.nav-services:focus-within > .services-dropdown,
.nav-services.is-open > .services-dropdown,
.nav-services > .services-dropdown:hover{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) scale(1) !important;
}

/* ---------- Grid dos serviços ---------- */
.services-dropdown .services-dropdown-inner{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:8px !important;
  width:100% !important;
  padding:0 !important;
  margin:0 !important;
}

.services-dropdown .services-dropdown-inner > a{
  display:grid !important;
  grid-template-columns:42px minmax(0,1fr) !important;
  align-items:center !important;
  gap:12px !important;

  min-height:68px !important;
  padding:11px 12px !important;
  margin:0 !important;

  background:rgba(255,255,255,.018) !important;
  border:1px solid rgba(255,255,255,.035) !important;
  border-radius:13px !important;

  text-decoration:none !important;
  color:#eef6ff !important;

  box-shadow:none !important;
  transform:none !important;

  transition:
    background .16s ease,
    border-color .16s ease,
    transform .16s ease !important;
}

/* Habent Platform igual aos demais */
.services-dropdown .services-dropdown-inner > a[href="/habent-platform/"]{
  background:rgba(255,255,255,.018) !important;
  border-color:rgba(255,255,255,.035) !important;
  box-shadow:none !important;
  color:#eef6ff !important;
}

.services-dropdown .services-dropdown-inner > a:hover,
.services-dropdown .services-dropdown-inner > a:focus-visible{
  background:rgba(30,139,226,.10) !important;
  border-color:rgba(65,173,255,.26) !important;
  transform:translateY(-1px) !important;
  outline:none !important;
}

.services-dropdown .sd-icon,
.services-dropdown .services-dropdown-inner > a[href="/habent-platform/"] .sd-icon{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  padding:0 !important;
  margin:0 !important;

  border-radius:12px !important;
  border:1px solid rgba(54,166,247,.34) !important;
  background:linear-gradient(145deg,#0b2c49,#0c3659) !important;
  color:#72c9ff !important;

  font-size:11px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;

  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}

.services-dropdown .services-dropdown-inner > a > span:last-child{
  display:block !important;
  min-width:0 !important;
}

.services-dropdown .services-dropdown-inner > a b{
  display:block !important;
  margin:0 0 4px !important;
  padding:0 !important;

  color:#f7fbff !important;
  font-size:14px !important;
  line-height:1.15 !important;
  font-weight:750 !important;

  background:none !important;
  box-shadow:none !important;
  text-decoration:none !important;
}

.services-dropdown .services-dropdown-inner > a small{
  display:block !important;
  margin:0 !important;
  padding:0 !important;

  color:#91a8bf !important;
  font-size:11.5px !important;
  line-height:1.28 !important;
  font-weight:500 !important;

  background:none !important;
  box-shadow:none !important;
  text-decoration:none !important;
}

/* ---------- Rodapé do dropdown ---------- */
.services-dropdown .services-dropdown-all{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;

  width:100% !important;
  min-height:48px !important;

  margin:12px 0 0 !important;
  padding:0 14px !important;

  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.04) !important;
  background:rgba(255,255,255,.045) !important;

  color:#eef7ff !important;
  font-size:12px !important;
  font-weight:750 !important;
  text-decoration:none !important;

  transition:background .16s ease,border-color .16s ease !important;
}

.services-dropdown .services-dropdown-all:hover{
  background:rgba(31,140,225,.11) !important;
  border-color:rgba(65,173,255,.19) !important;
}

/* ---------- Responsivo ---------- */
@media (max-width:980px){
  .nav-services > .services-dropdown{
    width:650px !important;
    max-width:min(650px,calc(100vw - 30px)) !important;
  }
}

@media (max-width:760px){
  .nav-services{
    display:block !important;
  }

  .nav-services > .services-dropdown{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;

    width:100% !important;
    max-width:100% !important;

    margin:10px 0 0 !important;
    padding:10px !important;

    border-radius:14px !important;

    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;

    display:none !important;
  }

  .nav-services.is-open > .services-dropdown,
  .nav-services:focus-within > .services-dropdown{
    display:block !important;
    pointer-events:auto !important;
  }

  .nav-services > .services-dropdown::before,
  .nav-services::after{
    display:none !important;
  }

  .services-dropdown .services-dropdown-inner{
    grid-template-columns:1fr !important;
  }
}
