Такие перестроения обычно бывают при использовании вот такого вот такой
js либы. На css сделать перемещение блоков плавно нельзя. Ведь элементы не позицию меняют, а просто сваливаются друг под друга при адаптации. transition анимирует css свойства, а не поток элементов на странице.