This part of the series describes a way to define colours, fonts, and layout such that content is separated from presentation.
https://dave.autonoma.ca/blog/2019/06/23/typesetting-markdown-part-4/
Questions, corrections, and improvements are welcome.