How would you implement a robust offline-first sync strategy for a mobile app with intermittent connectivity?