Ah, right, got it. The margins that the FormLayout applies are set in shadow DOM, whereas the default 0 margin that Lumo applies is set in light DOM. Light DOM has higher priority than shadow DOM, thus it overrides it even though it uses :where to minimize specificity.
There is no test for this as FormLayout is officially only intended to be used with input fields, not with headings or other non-field elements, but I’m sure many are using it headings in it, so would be good to fix somehow.