layout & homepage refactoring