split WithHovering from WithShadow