Well done on identifying the caption is the culprit. Seems to me you are looking for How to make figure caption text have the same width as the figure? - #2 by slowjo which has a working solution:
#show figure: it => layout(sz => {
let w = measure(
it.body,
width: sz.width,
).width
set par(justify: true)
show figure.caption: cap => box(width: w, align(left, emph(cap)))
it
})
== Thermodynamic properties of chemicals
#align(center, rotate(
-90deg,
reflow: true,
[#figure(
kind: table,
rect(width: 95%, height: 100%), //height added for MWE
caption: lorem(65),
) <fig_chems_Gf>],
))
Edit: I’ve updated the code to reflect the fact you are using width: 95%
as per How to make figure caption text have the same width as the figure? - #4 by slowjo.
Thanks for the screenshot and the code snippet, it really helps helping you quickly. If I may, providing a MWE that compiles and doesn’t require helpers to remove citations, code snippets such as flex-caption
, etc. would ensure you get answers much faster.