This seems like an overly complex selector. It doesn't really need all of the extra qualifications, so <code>.download-button ~ h1</code> does just as well and still only takes effect when the download button is present (general sibling selector FTW!).

You should probably also apply the same width to the <code>.preamble</code> paragraph. In most cases the title is tall enough to make sure the preamble flows under the button, but there might be situations when it doesn't (e.g, if the title is one line and the font is smaller).