transition: width 1.5s linearEvery frame relays out and repaints the page on the main thread, the same thread JavaScript runs on.
transition: transform 1.5s linearThe sidebar is its own layer. Every frame only moves that layer, on the compositor thread, without waiting for JavaScript.