Uiua, 9 bytes
This solution was written by Kai Schmidt, the creator of Uiua, not by me, so I'm making this a community wiki.
⊕□⌊ₙ2+1°⊏
This is a very simple solution, and very short: Take the range of 0 to the length of the input, add one to each, take the base-2 logarithm, and floor it. This list has natural numbers repeated doubling in length, so we use this as a group to take each part of the input into a list of boxes.