use `supportsTouch` instead of `isMobile`