Make varying slopes and intercepts correlate for one population-level effect but not another

I’ve got a model with one group-level variable g with varying intercepts and varying slopes for population-level effect x_1 which do not correlate with the varying intercepts (the correlation parameter is unnecessary as per elpd_loo, and it greatly complicates the model). Now I’m interested in testing for varying g slopes for another population-level effect x_2, including the possibility that those slopes might correlate with the varying intercepts.

How do use brms to specify a model in which g has varying intercepts which are uncorrelated with its varying x_1 slopes but correlated with its varying x_2 slopes? When I call brms with y ~ (x1||g) + (0+x2|g) + x1 + x2, it fits a model with no correlated slopes and intercepts whatsoever, even for x_2 and g.

Is there a solution?