Another thought for Majoru...
When creating encounters (puzzles, traps, challenges, combats, interactions, etc.) try to keep the "core" as generic and modular as possible, then wrap it in aspects of the session. If your players avoid it, that "core" can be used another time.
Railroads that I...