Revert 30902: it was (as the style rule clearly said) putting a page break before *every single heading*. This was probably going to be a waste of paper, insofar as my five-line test page got spread out over three or four pages when I checked print preview.
We could add page-break-after: avoid;, but I don't think this is necessary or useful unless someone can demonstrate that it actually changes some browser's behavior. Most browsers don't support the avoid value of page-break-*, and I strongly suspect that those that do already have this rule for h* in their default stylesheets, per the CSS 2.1 suggested default HTML 4 stylesheet: <http://www.w3.org/TR/CSS21/sample.html>