Since you said in C1 that you wanted to fold at a "node" it will have to be a fold point, thats where folding happens.
Scintilla allows fold points to be set randomly by the application, and by the lexers, but since lexers will overwrite random fold points each time they run it is probably impossible to have both at the same time. I'm not sure Geany allows lexer folding to be turned off and anyway it hasn't anything to define fold points in other places.