Strings that you just write in code "foo bar"
do not take any RAM (of which you have 96kB) just flash (where your game is stored, 512kB on all our boards). As you use them, they do not use any more memory. If you dynamically allocate more strings (eg. by doing "foo" + "bar"
or using backtick literals with ${...}
inside them), they do take RAM, for as long as you use them.
Numbers do not take any heap if they are integers less than about 1 billion (between -2^30 and 2^30). Fractional numbers and larger numbers are heap (RAM) allocated (boxed). Also math operations are much slower (like 100x) on boxed numbers than on 30-bit integers which is why the game engine is using that funky fx8 type - fixed point with 8 bit after the decimal dot.
Actually, images (unless you clone them at runtime), also do not take any RAM - they are stored in flash. Similar for hex literals.
I hope this helps!