Why does adding class .h1 to a <p> tag not make it behave exactly like an <h1>?
The .h1 class changes font size and weight but does not add semantic meaning or default margins of an <h1> tag. So visually it looks similar but screen readers and spacing differ.
💡 Use heading tags for meaning; classes only style appearance (see render_steps 1).
Why do all heading classes have the same font-weight even though sizes differ?
Bootstrap uses consistent medium font weight (500) for all heading classes to keep uniform boldness while only changing size for hierarchy.
💡 Size changes create hierarchy, weight stays consistent (see property_table).
Why does the spacing between headings differ even if they have the same class?
Default margins come from the HTML heading tags themselves, not the Bootstrap classes. So spacing depends on the tag, not just the class.
💡 Classes style font; tags control spacing (see render_steps).