Sulfur Trioxide - Ionic Character

I am told that the sulfur trioxide molecule exhibits charge separation because of poor p-orbital overlap. Sulfur's 3p orbitals are much bigger than oxygen's 3p orbitals, and thus the $\ce{S=O}$ bond is best described as $\ce{S+ - O-}$. So is the author's argument suggesting that sulfur trioxide is unhybridized, and that it uses pure s orbitals to form sigma bonds and pure p orbitals to form pi bonds? Because that's the only way I can see sulfur as having three empty p orbitals to utilize. If we were to assign hybridization through counting the number of sigma pairs of electrons (3) we would arrive at sp2 hybridization, and there aren't enough p-orbitals to go around.

Also while we're on this topic, Wikipedia says that sulfur trioxide is best represented as having one $\ce{S=O}$ bond and two $\ce{S+ - O-}$ bonds. Now, does bond length differ between an $\ce{S+ - O-}$ and an $\ce{S=O}$ bond? Wikipedia suggests not, as only one bond length is given. If bond length is equivalent between the two, why?

Sulfur trioxide is planar with 120 degree O-S-O bond angles. If the molecule were unhybridized and we used the 3 orthogonal p-orbitals for our sigma bonds, then we would expect the O-S-O angle to be 90 degrees. Further, in the unhybridized scheme, there are not enough s orbitals to form 3 sigma bonds that are pure s. Just considering s and p orbital involvement, we could say that the sulfur is $\ce{sp^2}$ hybridized. This would produce 3 $\ce{sp^2}$ orbitals for sigma bonds from sulfur to oxygen and leave one p orbital for one pi bond. We can draw 3 resonance structures for this arrangement, so we would expect all bond lengths to be equivalent. 