@media (max-width: 780px) {
  .header-inner { position: relative; }
  .menu-toggle {
    position: relative;
    z-index: 1002;
    display: block;
    margin-left: auto;
    cursor: pointer;
    pointer-events: auto;
    touch-action: manipulation;
  }
  .nav {
    z-index: 1001;
    max-height: calc(100dvh - 64px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    pointer-events: none;
    visibility: hidden;
  }
  .nav.open {
    display: flex;
    visibility: visible;
    pointer-events: auto;
  }
  .nav.open a {
    position: relative;
    z-index: 1;
    display: block;
    min-height: 44px;
    pointer-events: auto;
    touch-action: manipulation;
  }
}
