I am developing a site for a company and I require the ability to have multiple template files for one custom post type. I have three landing pages that all display the same list of services/custom post type posts in a different manner; however, depending on the page the user is on, I want the inner template to change. 

For instance, if the user is on the Gallery landing page and they click on the custom post type, I want the single-gallery template to be loaded. If the user is on the Testimonial landing page I want the single-testimonial template to be loaded and so on...

I have searched through WordPress and have found things like template\_part and endpoints, but as a new user of WordPress I am in need of a bit more help!

Any help would be much appreciated. Thanks!