Answer is: p orbital overlap is responsible for the π bond between carbon and oxygen.
Electron configuration of carbon and oxygen:
₆C 1s² 2s² 2p².
₈O 1s² 2s² 2p⁴.
Carbon atom is sp2 hybridized, it has three sp2 orbitals and one p orbital, they form four bonds.
Oxygen has two p orbitals, that form two bonds (one sigma and one pi bond).
p orbitals from carbon and oxygen overlap and form pi bond.