Heading IDs generated by kramdown use dashes, not underscores