move mobile conditional into router call and make a bit more accurate