dd89e1bf99
gates / gates (push) Failing after 6m48s
Measured at 390px: the sidebar stayed an in-flow flex child and squeezed the content column to ~208px, so the launcher grid collapsed to ONE column and the front page became 15 597px tall on a phone; the contact page overflowed horizontally (scrollWidth 467 in a 375 viewport). The cause was not missing CSS - the controller's off-canvas rules were all copied. They are gated on a 'js' class that layout.html sets in an inline head script and the mockup shell did not. Copied that hook verbatim, so the drawer engages only where the drawer script can open it, and the no-js path (sidebar static and full width, burger hidden) is the controller's own.