Nobody decides to become a document-layout department.
It starts well. One document, written in code, by the person who owns the data. It works, it ships, it is
fine for a year.
Then a customer asks for their logo in the other corner. Another wants an extra column. A third wants the
summary before the table rather than after it, and the fourth has a legal department with opinions about a
footer. Each one is twenty minutes. Each one is also a branch, a review, a release and a regression test on
a document you cannot easily test.
A year later there is a folder of near-identical templates with customer names in them, a conditional that
nobody can safely delete, and a standing item in every sprint called “report changes”. The layout has
quietly become application state, and it is the only state in your product you cannot change without a
deployment.