
@media (max-width: 900px) {
  header:not(.page-header) #siteNav {
    transition:
      opacity 280ms ease,
      transform 280ms cubic-bezier(.22, 1, .36, 1),
      visibility 280ms ease !important;
  }

  header:not(.page-header) #siteNav:not(.open):not(.nav-open) {
    opacity: 0 !important;
    transform: translateY(-14px) !important;
    pointer-events: none !important;
  }

  header:not(.page-header) #siteNav.open {
    opacity: 1 !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
  }

  #menuToggle:focus:not(:focus-visible) {
    outline: none;
    box-shadow: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  header:not(.page-header) #siteNav {
    transition: none !important;
  }
}

/* Unified gentle fade for every closing action */
@media (max-width: 900px) {
  header:not(.page-header) #siteNav.open.tlc-closing,
  header:not(.page-header) #siteNav.nav-open.tlc-closing {
    opacity: 0 !important;
    transform: translateY(-22px) !important;
    pointer-events: none !important;
    visibility: visible !important;
    max-height: 420px !important;

    transition:
      opacity 280ms ease,
      transform 280ms cubic-bezier(.22, 1, .36, 1) !important;
  }
}

/* TLC mobile menu focus and tap polish */
@media (max-width: 900px) {
  #menuToggle,
  #siteNav a {
    -webkit-tap-highlight-color: transparent;
  }

  #menuToggle:focus {
    outline: none !important;
    box-shadow: none !important;
  }

  #menuToggle:focus-visible {
    outline: 2px solid rgba(16, 135, 145, 0.55) !important;
    outline-offset: 3px;
    border-radius: 8px;
    box-shadow: none !important;
  }
}


/* Smooth entrance and subtle focus behavior */
@media (max-width: 900px) {
  header:not(.page-header) #siteNav.tlc-entering {
    opacity: 0 !important;
    transform: translateY(-22px) !important;
    visibility: visible !important;
    pointer-events: none !important;
  }

  #menuToggle.tlc-escape-focus:focus-visible {
    outline: none !important;
    box-shadow: none !important;
  }
}
