display:flex from the body. It isn't doing anything for you (the page already flows down in a column. ).
Instead, restructure your
header css to something like this:
padding: 2rem; /* give it a little space */
display:flex only applies to immediate children of the tag
flex is attached to. It doesn't cascade and inherit.