         public let presentationInsideSafeArea: Bool
         public let backgroundColor: UIColor
         public let shouldAnimateNewVCAlpha: Bool
-        public let overridenVerticalSizeClass: UIUserInterfaceSizeClass?
-        public let overridenHorizontalSizeClass: UIUserInterfaceSizeClass?
+        public let overridenTraits: UITraitCollection?
         
         public enum CardHeight { // swiftlint:disable:this nesting
             case fixed(CGFloat)

            case presentation(cardHeight: CardHeight = .intrinsicHeight, position: Position = .bottom)
        }

        public init(kind: Kind, animationDuration: TimeInterval = 0.6, presentationInsideSafeArea: Bool = false, backgroundColor: UIColor = UIColor.black.withAlphaComponent(0.7), shouldAnimateNewVCAlpha: Bool = true, overridenVerticalSizeClass: UIUserInterfaceSizeClass? = nil, overridenHorizontalSizeClass: UIUserInterfaceSizeClass? = nil) {
            self.kind = kind
            self.animationDuration = animationDuration
            self.presentationInsideSafeArea = presentationInsideSafeArea
            self.backgroundColor = backgroundColor
            self.shouldAnimateNewVCAlpha = shouldAnimateNewVCAlpha
            self.overridenVerticalSizeClass = overridenVerticalSizeClass
            self.overridenHorizontalSizeClass = overridenHorizontalSizeClass
        }
    }


        containerView.addAutolayoutSubview(toViewController.view)

        /// Override size classes if required
        toViewController.presentationController?.overrideTraitCollection = properties.overridenTraits
        
        /// Calculate the height of the new VC to prepare animate it
        let toVCHeight: CGFloat = {
