NormalBot.process() gains suppressFallback param. When true, steps 7-8 (greeting menu fallback, static fallback text) return null instead of responding, letting BotRouter hand off to NLU/AI. BotRouter.runHybridBot() passes suppressFallback=$nluEnabled so that: - NLU on: unrecognized text → NLU → route to flow or AI chat - NLU off: existing fallback behavior unchanged - Commands, active flows, first-session greeting: always unaffected Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>