I think what you need here is replacing
make.left.right.greaterThanOrEqualToSuperview().inset(padding).priority(.required)
with
make.left.greaterThanOrEqualToSuperview().inset(padding)
make.right.lessThanOrEqualToSuperview().inset(padding)
For me it works perfectly fine now!