As it's now working , clearly you are right to say it's not a problem! But, I suspect, not for the reason you think...
If you ran this code on an 8-bit MCU, it would not work, I suspect. The reason that it does work ok is not because you are writing the results to a 32-bit variable, it's because you are running it on a 32-bit MCU. Sounds like a subtle distinction, I realise, but a potentially important one. On an 8-bit MCU, the result of "adcSample1 << 16" would be treated as a 16-bit value and bits would be lost. But on a 32-bit MCU, the result of "adcSample1 << 16" would be treated as a 32-bit value and no bits are lost.
Can anyone confirm my theory?