I have question in VerticalStackView(arrangedSubviews:[nameLabel, UIStackView(arrangedSubviews: [priceButton, UIView()], UIView(), spacing: 12])], customSpacing: 20) which is what you did in very end.
We haven't set any height constrain to nameLabel, but how come adding UIView() will push nameLabel and StackView to top and rest of the area is assigned to UIView()?