How to draw a vertical line between two grid columns?

I would like to create a two-column grid. There should be a space between the two columns (4em in the example). A vertical line should run through the centre of the free space. In the example, the line is not in the centre but on the right edge of the grid. How do I get the line to run in the centre?

#grid(
  columns: (2fr, 3fr),
  column-gutter: 4em,
  block(width: 100%, height: 3em, stroke: 1pt),
  grid.vline(stroke: 0.5pt, x: 1),
  block(width: 100%, height: 3em, stroke: 1pt),
  v(4em),v(3em),
  block(width: 100%, height: 3em, stroke: 1pt),
  grid.vline(stroke: 3pt, x: 1),
  block(width: 100%, height: 3em, stroke: 1pt),
)

You can halve the gutter and add an empty column between the two:

#grid(
  columns: (2fr, 0pt, 3fr),
  column-gutter: 2em,
  block(width: 100%, height: 3em, stroke: 1pt),
  grid.vline(stroke: 0.5pt),
  [],
  block(width: 100%, height: 3em, stroke: 1pt),
  v(4em),[],v(3em),
  block(width: 100%, height: 3em, stroke: 1pt),
  grid.vline(stroke: 3pt),
  [],
  block(width: 100%, height: 3em, stroke: 1pt),
)

It’s worth mentioning that the first call to grid.vline, with a stroke thickness of 0.5pt, is redundant and can be safely removed, as the second call, with a stroke thickness of 3pt, also goes through the full height of the grid such that the line with less thickness isn’t visible. But it’s possible this was just an artifact of the process of making a minimal example, in which case you can ignore this. :slight_smile: