/* Ideia·App · «Exemplos» no menu do cabeçalho: acesso às páginas de solução. */
.nav-drop { position: relative; display: flex; align-items: center; }
.nav-drop-btn {
  display: inline-flex; align-items: center; gap: 4px; padding: 0; border: 0; background: none; cursor: pointer;
  font: inherit; color: var(--text); font-weight: 550; font-size: clamp(11px, .89vw, 13px); white-space: nowrap;
}
.nav-drop-btn:hover, .nav-drop.is-open .nav-drop-btn { color: #4331d8; }
.nav-drop-btn svg { width: 14px; height: 14px; transition: transform .25s; }
.nav-drop.is-open .nav-drop-btn svg { transform: rotate(180deg); }

/* PC: painel por baixo do menu */
.nav-drop-panel {
  position: absolute; top: calc(100% + 18px); left: 50%; transform: translate(-50%, -6px);
  width: 300px; padding: 8px; display: grid; gap: 2px;
  background: var(--nav-bg-solid, var(--bg)); border: 1px solid var(--border); border-radius: 16px;
  box-shadow: 0 18px 44px rgba(14, 24, 52, .16);
  opacity: 0; visibility: hidden; transition: opacity .2s, transform .2s, visibility .2s; z-index: 30;
}
.nav-drop.is-open .nav-drop-panel { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.site-pro-v2 .nav-links .nav-drop-panel a {
  display: grid; gap: 2px; padding: 10px 12px; border-radius: 11px; border: 0;
  color: var(--text); font-size: 14px; white-space: normal; transform: none;
}
.site-pro-v2 .nav-links .nav-drop-panel a::after { display: none; }
.site-pro-v2 .nav-links .nav-drop-panel a:hover { background: rgba(93, 99, 245, .08); color: var(--text); transform: none; }
.nav-drop-panel b { font-weight: 650; font-size: 14px; }
.nav-drop-panel small { color: var(--muted); font-size: 12.5px; line-height: 1.35; }

/* Telemóvel e tablet (menu aberto pelo botão): os três exemplos ficam sempre à vista */
@media (max-width: 980px) {
  .nav-drop { display: block; width: 100%; border-bottom: 1px solid var(--border); padding: 12px 0 8px; }
  .nav-drop-btn { font-size: 15px; cursor: default; pointer-events: none; }
  .nav-drop-btn svg { display: none; }
  .nav-drop-panel {
    position: static; transform: none; width: auto; padding: 4px 0 0 12px; margin: 0;
    background: none; border: 0; box-shadow: none; opacity: 1; visibility: visible;
  }
  .nav-drop.is-open .nav-drop-panel { transform: none; }
  .site-pro-v2 .nav-links .nav-drop-panel a { padding: 8px 10px; border-bottom: 0; font-size: 14px; }
  .nav-drop-panel b { font-size: 14px; }
  .nav-drop-panel small { display: none; }
}
/* Menu aberto em telemóveis baixos: se não couber, desliza por dentro (o «Pedir orçamento» fica sempre alcançável) */
@media (max-width: 980px) {
  .nav-links.open { max-height: calc(100dvh - 72px); overflow-y: auto; overscroll-behavior: contain; }
}
/* Página onde a pessoa já está */
.site-pro-v2 .nav-links .nav-drop-panel a[aria-current="page"] { background: rgba(93, 99, 245, .1); }
.nav-drop-panel a[aria-current="page"] b { color: #4331d8; }
