better mobile and touchscreen detection