refactored grid but it is currently buggy on mobile.