Your 4kB intro... - has a maximum RAM footprint of $1000 bytes at one block, at whatever location you like. Screen RAM counts as used memory. Exclusions are system addresses like VIC (inkl. Color RAM), SID, CIA, Stack, Zero-page, IRQ vectors. This means RAM besides chosen $1000 bytes area and exceptions has to be the same before and after running the intro. What happens during runtime is up to you.
$0200-$02ff and $0334-$0400 will be counted as used memory if not restored.
You seem to be in desperate search for a few bytes of RAM, aren't you?
if we designate $0334 to $1333 as our 4k, we can use $0002-$01ff and $0300-$1333, as well as $fffc-$ffff and all of IO (I'm including $00-$01 in the latter). That's a luxurious 4658 bytes of RAM
Hmm, but the only difference to the conventional $0801-$1801 setup is that the $34 bytes block at $0300 merges with the 4K block at $0334, no? :)
I feel like I've opened Pandora's box. ;-)