/*
 * GBP Element Spacing — child-theme utility classes for fine spacing
 * adjustments not covered by greyboxpro's default margin presets.
 *
 * .margin-top-zero — removes the top margin from a heading element.
 * Targets h1-h6 only, and only when the class is on the heading itself
 * (Gutenberg's core/heading save already places attributes.className on
 * the <h*> tag). Does NOT match a parent wrapper carrying the class —
 * descendant cascade is intentionally avoided so unrelated headings
 * inside the same wrapper don't collapse their top margin.
 *
 * !important is used because parent-theme heading rules already set a
 * top margin and would otherwise win on specificity.
 */
:is(h1, h2, h3, h4, h5, h6).margin-top-zero {
    margin-top: 0 !important;
}
