viewport and phone workaround