I believe the issue is that the markdown rendering in a shortcode via
{{ .Inner | markdownify }}
only renders the markdown with local context, i.e., without the full document containing all the footnotes.
What worked for me is to define the shortcode as follows without markdownify and with the linebreaks:
<div class="callout">
{{ .Inner }}
</div>
and then use the shortcode as follows (see Shortcodes | Hugo)
{{% callout %}}
This is my content
{{% /callout %}}
Because of the %
delimiters markdownify is not needed and the content is rendered with global context. The new lines in the shortcode somehow have an impact on what is rendered as markdown and what left as html.
Additionally, I use the configuration
markup:
goldmark:
renderer:
unsafe: true
I am quite new to Hugo so I don’t have full understanding here, but still hope it is helpful.