/* Compact pill-shaped top navigation – overrides legacy #nav styles */
#nav{
  position:fixed!important;
  top:1.1rem!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  width:min(1160px, calc(100% - 2rem))!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:1.25rem!important;
  padding:.5rem .65rem .5rem 1rem!important;
  background:rgba(10,14,11,.78)!important;
  backdrop-filter:saturate(140%) blur(14px)!important;
  -webkit-backdrop-filter:saturate(140%) blur(14px)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:18px!important;
  box-shadow:0 10px 30px -12px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.04)!important;
  z-index:1000!important;
}
#nav .nav-logo{display:flex;align-items:center;flex-shrink:0}
#nav .nav-logo img{height:30px!important;width:auto!important;display:block}
#nav .nav-menu{flex:1;display:flex;justify-content:center}
#nav .nav-links{
  list-style:none;display:flex;align-items:center;gap:.35rem;
  margin:0;padding:0;
}
#nav .nav-links li{margin:0}
#nav .nav-links li a{
  display:inline-flex;align-items:center;
  padding:.55rem .95rem;
  font-family:inherit;
  font-size:.82rem;
  font-weight:500;
  letter-spacing:.02em;
  text-transform:none;
  color:rgba(235,240,236,.78);
  text-decoration:none;
  border-radius:10px;
  transition:color .2s ease, background .2s ease;
}
#nav .nav-links li a:hover{color:#fff;background:rgba(255,255,255,.05)}
#nav .nav-links li a.active{color:#fff;background:rgba(255,255,255,.06)}

/* Right cluster: Ver Cursos + Login */
#nav .nav-cta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}
#nav .nav-cta .btn-cursos{
  display:inline-flex;align-items:center;justify-content:center;
  padding:.6rem 1.1rem;
  background:#39a935;
  color:#0a140a;
  font-weight:700;font-size:.8rem;letter-spacing:.04em;
  text-transform:uppercase;
  text-decoration:none;
  border-radius:10px;
  transition:background .2s ease, transform .2s ease;
}
#nav .nav-cta .btn-cursos:hover{background:#46c441;transform:translateY(-1px)}
#nav .nav-cta .btn-login{
  display:inline-flex;align-items:center;gap:.4rem;
  padding:.55rem 1rem;
  background:transparent;
  color:rgba(235,240,236,.9);
  font-weight:500;font-size:.78rem;letter-spacing:.03em;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.18);
  border-radius:10px;
  transition:border-color .2s ease, color .2s ease, background .2s ease;
}
#nav .nav-cta .btn-login:hover{color:#fff;border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.04)}
#nav .nav-cta .btn-login svg{width:14px;height:14px}

/* Hide legacy login li if still rendered inline */
#nav .nav-links li a.login{display:none!important}

/* Hamburger button (hidden on desktop) */
.nav-burger{
  display:none;
  width:42px;height:42px;
  background:transparent;border:1px solid rgba(255,255,255,.18);
  border-radius:10px;cursor:pointer;
  align-items:center;justify-content:center;flex-direction:column;gap:5px;
  padding:0;flex-shrink:0;
}
.nav-burger span{
  display:block;width:18px;height:2px;background:#fff;border-radius:2px;
  transition:transform .25s ease, opacity .2s ease;
}
body.nav-open .nav-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.nav-open .nav-burger span:nth-child(2){opacity:0}
body.nav-open .nav-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Mobile panel */
.nav-mobile-panel{
  position:fixed;inset:0;z-index:999;
  pointer-events:none;opacity:0;
  transition:opacity .25s ease;
}
body.nav-open .nav-mobile-panel{pointer-events:auto;opacity:1}
.nav-mobile-backdrop{
  position:absolute;inset:0;background:rgba(5,8,5,.65);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.nav-mobile-inner{
  position:absolute;top:0;right:0;bottom:0;
  width:min(360px,86vw);
  background:rgba(10,14,11,.98);
  border-left:1px solid rgba(255,255,255,.08);
  padding:5.5rem 1.75rem 2rem;
  display:flex;flex-direction:column;gap:2rem;
  transform:translateX(100%);transition:transform .3s ease;
  overflow-y:auto;
}
body.nav-open .nav-mobile-inner{transform:translateX(0)}
.nav-mobile-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}
.nav-mobile-links li{margin:0}
.nav-mobile-links a{
  display:block;padding:.85rem .5rem;
  color:rgba(235,240,236,.92);
  font-family:inherit;font-size:1rem;font-weight:500;
  letter-spacing:.02em;text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.nav-mobile-links a:hover,.nav-mobile-links a.active{color:#46c441}
.nav-mobile-cta{display:flex;flex-direction:column;gap:.6rem;margin-top:auto}
.nav-mobile-cta .btn-cursos{
  display:flex;align-items:center;justify-content:center;
  padding:.9rem 1rem;background:#39a935;color:#0a140a;
  font-weight:700;font-size:.85rem;letter-spacing:.05em;
  text-transform:uppercase;text-decoration:none;border-radius:10px;
}
.nav-mobile-cta .btn-login{
  display:flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.85rem 1rem;background:transparent;color:#fff;
  border:1px solid rgba(255,255,255,.2);border-radius:10px;
  text-decoration:none;font-weight:500;font-size:.85rem;
}
.nav-mobile-cta .btn-login span{display:inline!important}
.nav-mobile-cta .btn-login svg{width:16px;height:16px}

/* Mobile */
@media (max-width: 880px){
  #nav{padding:.5rem .55rem .5rem .9rem!important;gap:.5rem!important}
  #nav .nav-menu{display:none!important}
  #nav .nav-cta .btn-login{display:none!important}
  #nav .nav-cta .btn-cursos{padding:.55rem .85rem;font-size:.72rem}
  .nav-burger{display:flex}
  body.nav-open{overflow:hidden}
}

/* Global mobile overflow safeguards */
@media (max-width: 880px){
  html,body{overflow-x:hidden;max-width:100vw}
  img,video,iframe{max-width:100%;height:auto}
  .aut-profs,.cursos-g,.blog-arts,.prova-nums,.comp-tbl,
  .pos-g,.prob-g,.sol-g,.club-g,.met-g,.pq-g{
    grid-template-columns:1fr!important;
  }
}
@media (max-width: 560px){
  .wrap,.cont,.section,.hero-main{
    padding-left:1.1rem!important;padding-right:1.1rem!important;
  }
}

