If you're not already, you might use a tool like Ink for the dialogue--Ink is quite good at branching a conversation several layers deep and then looping back to the root node when it finishes.
For difficulty, I think it's about right for the first couple of puzzles in a game like this. Even the first one was nontrivial and required a bit of thought, but I finished the whole thing in maybe 15 minutes. I'd expect them to get harder from here on out, though.