functional, with Auto Layout constraints and dynamic height