Sub-Theme (based on Taxonomies)

Yes, you can. In many ways.

One way is to have custom templates based on tag or category slug. So, you just tag your posts appropriately and then WordPress will automatically select appropriate template.

If the template difference are miniscule, you can use php includes or wordpress includes to keep common content in other files.

Or you could do a custom include based on the value of the tag from the main theme file and provide CSS reference that way.

Or have inline CSS again controlled by php code inside the template.