// Typst version 14.0.2 outputs a block quote as a
followed by // a

for the attribution. This makes it difficult to target the // attribution for styling. This snippet instead uses a

and // a
wrapped in a
block. #show quote.where(block: true): it => { let inner = html.elem("blockquote", it.body) if it.attribution != none { html.elem("figure", { inner html.elem("figcaption", it.attribution) }) } else { inner } }