Sorry this is frustrating you!
I think the answer is here:
This message is telling you something is wrong with the topic/ConditionTimeout branch, not develop. The first part tells you specifically which branch was rejected from updating by the remote, the second part tells you why. Your “current branch” when you receive this message is topic/ConditionTimeout, so this message is telling you your changes cannot be pushed cleanly to its remote counterpart – the topic/ConditionTimeout branch on the remote origin
repository. This is likely the point of confusion, as you said this is a new branch before pushing – were you aware that you already have a branch with this name? It has commits from 2019, so you might want to choose a different branch name or consider deleting the older branch depending on whether you want to save that work.
One slightly confusing thing about this error message is the use of the word “behind”. This really means the remote branch has commits your local branch does not, and so in the commit graph where commits are vertices and parent relationships are directed edges, the commit you are trying to push is not a direct descendent of the tip of the remote branch. Is this what most people would think when they see “behind”? No, because the “ahead” branch is older both in time-last-updated and in the commit on develop it was branched from. But there is no true, intuitive meaning for behind or ahead in this graph anyway. I would suspect this wording was chosen because it makes sense in what is probably by far a more common case, when the remote branch and local branch start at the same commit, but then the remote branch gains commits the local branch does not. Then the local branch tip is a direct ancestor of the remote branch tip.
Hope this helps.