/* Menu "Funcionalidades" (submenu no computador, grupo no menu do telemóvel) e rodapé com 4 colunas */
.nav-dd{position:relative}
.nav-dd-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;color:var(--muted);padding:8px 0;white-space:nowrap;transition:color .2s}
.nav-dd-btn:hover,.nav-dd.open .nav-dd-btn{color:var(--dark)}
.nav-dd-btn svg{width:14px;height:14px;transition:transform .2s}
.nav-dd.open .nav-dd-btn svg{transform:rotate(180deg)}
.nav-dd-btn:focus-visible{outline:2px solid var(--orange);outline-offset:4px;border-radius:4px}
.nav-dd-menu{position:absolute;top:calc(100% + 14px);left:50%;width:600px;max-width:calc(100vw - 32px);transform:translateX(-50%) translateY(6px);background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 24px 60px rgba(11,30,59,.14);padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:2px;opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s;z-index:120}
.nav-dd-menu::before{content:'';position:absolute;top:-18px;left:0;right:0;height:18px}
.nav-dd.open .nav-dd-menu{opacity:1;visibility:visible;transform:translateX(-50%)}
.nav-links .nav-dd-menu a{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:10px;text-decoration:none;white-space:normal;color:var(--dark)}
.nav-links .nav-dd-menu a:hover,.nav-links .nav-dd-menu a:focus-visible{background:#EDF2FB;outline:none}
.dd-ico{width:22px;height:22px;flex-shrink:0;color:var(--orange);margin-top:1px}
.dd-ico svg{width:22px;height:22px;display:block}
.dd-txt b{display:block;font-size:14px;font-weight:600;color:var(--dark);line-height:1.3}
.dd-txt small{display:block;font-size:12.5px;font-weight:400;color:var(--muted);line-height:1.45;margin-top:3px}
.nav-dd-menu a[aria-current="page"] .dd-txt b{color:var(--orange)}
.nav-drawer{max-height:calc(100vh - 68px);overflow-y:auto}
.drawer-label{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:12px 8px 4px}
.nav-drawer a.drawer-sub{padding:9px 8px 9px 20px;font-size:14.5px}
.nav-drawer a.drawer-sub[aria-current="page"]{color:var(--orange)}
.drawer-sep{height:1px;background:var(--border);margin:8px 8px}
footer .footer-cols{grid-template-columns:repeat(4,minmax(130px,1fr));max-width:860px}
@media (max-width:900px){
  footer .footer-cols{grid-template-columns:1fr 1fr}
  .nav-drawer{top:68px}
}
