Essentially, you want the labels for the inputs/selects to change based on the intended wearer of the product. The only way of knowing that (short of installing a telepathy module) is to have the user select an overall category to then view the products available for it.
It would be possible but very code-intensive to swap out label text based on the category the product is being displayed in, but far easier would be to copy/duplicate the products into the alternate categories, and make a new set of option names with associated option values to replace the originals.
There is one case where the options you want to present are different, not just the label: School Colors vs. Birthstone. This reinforces the duplicate products track as opposed to one product differently presented (unless you are intending for the user to type in birthstone colors).
Bookmarks