How does mobile first solve Excess DOM? As soon as you extend it to desktop you will have the same amount of DOM elements. Are you not supposed to use media queries?
This way as a developer you still have one HTML page, but smaller devices don't ever get non-visible DOM elements.
Instead of setting `display: none` with CSS media queries, make a function to rip out elements with a class like `onlyBig` from the DOM, or better yet, use client side templates and only inject the DOM elements appropriate for that screen to start with.