Hint:
Suppose p1 is the unit price of sub-item 1, p2 is the unit price of sub-item 2, .... p16 is the unit price of sub-item 16 and those are all variables with unknown values.
Suppose q11 is the quantity of sub-item 1 for product 1, q21 is the quantity of sub-item 2 for product 1,... q161 is the quantity of sub-item 16 for product 1 and those are all known values.
Suppose you could construct p1 * q11+p2 * q21+...+p16 * q161==priceforproduct1. That is one equation with 16 unknown variables, note that == is not just =.
Suppose you could do that for all 84 items.That is 84 equations with 16 unknown variables.
Study this, think about it, see if you can understand what it has to do with your problem.
Only after that then perhaps look at the documentation for Solve.
Usually we think of n equations and n unknowns, but if you are certain there is a unique solution then having more equations than unknowns may not be a problem.
Then you have to think about how to assemble all these calculations. There are lots of ways you might do that. You could write out the whole thing manually. Or you might study the documentation for Part, Take and Table to see if you could let Mathematica extract and assemble the needed information to build the equations. You might also see what result Mathematica gives your for {a,b,c} * {2,3,4} and see whether something like that might be useful or not.
I would recommend not letting someone blurt out the answer to you. Thinking about this until you see how to express the problem will almost certainly help you more in the future unless all you are really trying to do is learn how to type in someone else's answer.
There are almost always multiple different ways to accomplish any task using Mathematica. Choosing one you understand and that is simple enough is a skill.