     /// Set this config before calling super.initialSetup!
     var config: Config?
 
+	private lazy var containerView = UIView()
+	private lazy var titleContainer = UIView()
+	private lazy var centerStackView = UIStackView()
     private lazy var continueButton = ReactiveButton()
 
+	private lazy var topConstraint: NSLayoutConstraint = {
+		return self.containerView.topAnchor.constraint(equalTo: self.view.htw.safeAreaLayoutGuide.topAnchor, constant: 0)
+	}()
+	private lazy var bottomConstraint: NSLayoutConstraint = {
+		return self.containerView.bottomAnchor.constraint(equalTo: self.view.htw.safeAreaLayoutGuide.bottomAnchor, constant: 0)
+	}()
+	
+	private lazy var titleTopConstraint: NSLayoutConstraint = {
+		return self.titleContainer.topAnchor.constraint(equalTo: self.containerView.htw.safeAreaLayoutGuide.topAnchor, constant: 60)
+	}()
+	private lazy var continueButtonTopConstraint: NSLayoutConstraint = {
+		return self.continueButton.topAnchor.constraint(equalTo: self.centerStackView.bottomAnchor, constant: 12)
+	}()
+	
     // MARK: - Overwrite functions
 
     @objc func continueBoarding() {


import UIKit

class OnboardDetailViewController<Product>: ViewController, UITextFieldDelegate {

    var onFinish: ((Product?) -> Void)?


        }

        NSLayoutConstraint.activate([
            self.titleTopConstraint,
            self.titleContainer.centerXAnchor.constraint(equalTo: self.containerView.centerXAnchor),
            self.titleContainer.widthAnchor.constraint(equalTo: self.centerStackView.widthAnchor),
			self.titleContainer.heightAnchor.constraint(equalTo: titleLabel.heightAnchor, multiplier: 1),

			titleLabel.centerXAnchor.constraint(equalTo: self.titleContainer.centerXAnchor),
			titleLabel.centerYAnchor.constraint(equalTo: self.titleContainer.centerYAnchor),

			skip.topAnchor.constraint(equalTo: self.containerView.topAnchor, constant: 10),
			skip.trailingAnchor.constraint(equalTo: self.containerView.trailingAnchor, constant: -20),

            self.centerStackView.centerXAnchor.constraint(equalTo: self.containerView.centerXAnchor),
			self.centerStackView.topAnchor.constraint(equalTo: self.titleContainer.bottomAnchor, constant: 40),
            self.centerStackView.widthAnchor.constraint(equalTo: self.containerView.widthAnchor, multiplier: 0.8),

            textFieldStackView.heightAnchor.constraint(equalToConstant: stackViewHeight),

            self.continueButton.heightAnchor.constraint(equalToConstant: 55),
            self.continueButton.centerXAnchor.constraint(equalTo: self.containerView.centerXAnchor),
            self.continueButton.widthAnchor.constraint(equalTo: self.centerStackView.widthAnchor),
            self.continueButton.bottomAnchor.constraint(equalTo: self.containerView.htw.safeAreaLayoutGuide.bottomAnchor, constant: -20)
        ])
		
		self.registerForKeyboardNotifications()
    }

	override var preferredStatusBarStyle: UIStatusBarStyle {
