возможно mansory потребуется, он складывает разные блоки в ряд, но ваша задача звучит как - хочу чтобы складывалось, но можно было поломать вручную.
По поводу сетки же, возможно сетка бутстрап подойдет. причем, если отрисовывать средствами php, то можно просто накапливать контент по блокам, например -
идти по элементам, если элемент меньше стандартного (10 наборов косметики), то объединять его в подблоки. например, 1 единица высоты блока - это 1/4, значит собираем блоки меньше стандартного, чтобы набрать нужную нам высоту. и потом отрисовывать элемент. в таком случае, те блоки, что необходимы на первом месте, будут около этого первого места. а потом собраться остальные в зависимости от страницы.