Но вообще-то лучшие практики для интернет-магазина на сайте - это CMS, в которой вся эта логика уже проработана.
Тема куда глубже и сложнее, чем кажется на первый взгляд.
в обобщенной таблице продуктов - общие характеристики слонов (категория, бренд, что там у вас еще).
В разделенной по вариантам таблице товаров - ключ на продукт и подробности товара (привязка свойств из отдельной таблицы и общие данные конкретного товара типа себестоимости, веса, размеров...).
В окончательной таблице торговых предложений - набор (возможно, нескольких, в отдельной таблице) товаров и данные, которые будут на витрине (картинка, цена, габариты окончательной упаковки...)
По вашей рекомендации получается...
overflow = 11 вариантов.
justify-self = 19 вариантов.
max-width = 11 вариантов.
box-sizing = 7 вариантов.
блоков html = 10.
... получаются тысячи вариантов....