/* === GPT patch: Mobile nav (drawer + dropdown) === */
@media (max-width: 992px) {
  .navbar { position: relative; z-index: 60; }
  .nav-menu {
    position: fixed; top: 0; right: 0; height: 100dvh; width: min(86vw, 360px);
    transform: translateX(100%); transition: transform .25s ease;
    background: var(--bg, #0b0c10); color: var(--fg, #e5e7eb);
    padding: 20px 16px; display: flex; flex-direction: column; gap: 6px;
    box-shadow: -16px 0 40px rgba(0,0,0,.24);
  }
  .navbar.nav-open .nav-menu { transform: translateX(0); }
  .navbar::after { content:""; position: fixed; inset:0; background: rgba(0,0,0,.35); opacity:0; pointer-events:none; transition: opacity .2s ease; }
  .navbar.nav-open::after { opacity:1; pointer-events:auto; }
  .nav-menu .nav-link, .nav-menu .dropdown-content a { display:block; padding:14px 12px; border-radius:12px; }
  .nav-menu .nav-link:hover, .nav-menu .dropdown-content a:hover { background: rgba(255,255,255,.06); box-shadow: 0 0 0 2px rgba(255,255,255,.08) inset; }
  .nav-dropdown .dropdown-content { display:none; padding-left:10px; border-left:2px solid rgba(255,255,255,.08); margin:4px 0 8px 8px; }
  .nav-dropdown.open .dropdown-content { display:block; }
  .nav-dropdown > .nav-link { position:relative; padding-right:28px; }
  .nav-dropdown > .nav-link::after { content:"▸"; position:absolute; right:10px; top:50%; transform: translateY(-50%) rotate(0deg); transition: transform .2s ease; opacity:.8; }
  .nav-dropdown.open > .nav-link::after { transform: translateY(-50%) rotate(90deg); }
  .nav-dropdown:hover .dropdown-content { display:none; }
}
@media (min-width: 993px) {
  .nav-dropdown { position: relative; }
  .nav-dropdown .dropdown-content { position:absolute; left:0; top:100%; margin-top:0; padding-top:6px; display:none; z-index:1000; }
  .nav-dropdown:hover .dropdown-content { display:block; }
}