Hey @Vlad1907 and welcome to the community!
Utilizing Conditional Visibility is the best way to get around the “one template” limitation:
This allows you to create a template that contains all the necessary pieces used by both your product types and then hide/show the elements that are relevant per type based on something like an Option or Reference custom field on the product itself.
In terms of the “Physical” product type, this relates to whether a product needs to be shipped or not and isn’t really used to differentiate different types of physical products:
For client sites that use a bunch of different product types (whether it’s for different conditional visibility elements or product organization) I create a Reference custom field that points to a separate collection containing items for each of the different product types (or categories). This allows me to have a singular place to put specific details about those products — like descriptions, icons/images, or notices — so that I only need to update a single collection item to change the information used by any product within that “category”.
Hopefully that helps point you in the right direction, but don’t hesitate to reach out (with your read-only link and screenshots if necessary) if you run into issues or have any other questions!