refactor + details page