I’m going to explain Server Side rendering in Part 2. Basically you can run DOM emulation on the server, which will trigger your lifecycle callbacks and tell your custom element to stamp out all of its content. Then you send that down to the browser and your CSS just does its thing.
If you have an h1 inside a Custom Element it will be parsed just fine. No different from it being inside of a div