1 is easily done in Blocs. You won't even need 6.
Making use of position sticky and the top edge. It’s almost NoCode, with the small exception of having to unset the overflow on the page container that Blocs adds. This breaks sticky positioning. I have posted about this more than once on the forum. But its easy to solve.
Experiment, and get a feel for how position sticky works, best way to learn. I used 2 columns here.
2… more complex.
Much easier using another app ![]()