/* hamburger + mobile menu */
    .hamburger {
      display: none;
      flex-direction: column;
      justify-content: center;
      gap: 5px;
      width: 40px;
      height: 40px;
      background: none;
      border: none;
      cursor: pointer;
      padding: 7px;
      border-radius: 10px;
      transition: background 0.2s;
      flex-shrink: 0;
    }
    .hamburger:hover { background: rgba(0,0,0,0.05); }
    .hamburger span {
      display: block;
      height: 2px;
      width: 100%;
      background: #333;
      border-radius: 2px;
      transition: transform 0.3s, opacity 0.3s;
      transform-origin: center;
    }
    .hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    .hamburger.open span:nth-child(2) { opacity: 0; }
    .hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
    .mobile-menu {
      display: none;
      position: absolute;
      top: calc(100% + 8px);
      left: 0;
      right: 0;
      background: rgba(255,255,255,0.97);
      backdrop-filter: blur(20px);
      -webkit-backdrop-filter: blur(20px);
      border: 1px solid rgba(255,255,255,0.6);
      box-shadow: 0 8px 32px rgba(0,0,0,0.1);
      border-radius: 1.5rem;
      padding: 0.75rem;
      pointer-events: auto;
      z-index: 100;
      flex-direction: column;
    }
    .mobile-menu.open { display: flex; }
    .mobile-menu ul { list-style: none; display: flex; flex-direction: column; }
    .mobile-menu ul li::before { display: none; }
    .mobile-menu ul a {
      display: block;
      padding: 0.75rem 0.875rem;
      font-size: 0.9375rem;
      font-weight: 600;
      color: #333;
      text-decoration: none;
      border-radius: 0.875rem;
      transition: background 0.15s, color 0.15s;
    }
    .mobile-menu ul a:hover { background: rgba(0,0,0,0.04); }
    .mobile-menu ul a.active { color: #7c3aed; }
    .mobile-menu-actions {
      display: flex;
      padding: 0.75rem 0.25rem 0.25rem;
      border-top: 1px solid rgba(0,0,0,0.07);
      margin-top: 0.5rem;
    }
    .mobile-menu-actions .btn-signup { flex: 1; justify-content: center; }
    @media (max-width: 850px) {
      .hamburger { display: flex; }
      .navbar-nav { display: none !important; }
      .navbar-actions .btn-signup { display: none; }
    }
    @media (min-width: 851px) { .mobile-menu { display: none !important; } }
