Custom Camera Fix for Mobile

Hello, everyone!

I want a simple fixed camera, since the character will only move orthogonally and diagonally.
I managed to make it work on Desktop. But in mobile, the camera has a different behaviour that makes it orbit the character.

Actually, I’m just updating it’s CFrame in Heartbeat, making it look at character’s HumanoidRootPart

RunService.Heartbeat:Connect(function()
	local character = player.Character or player.CharacterAdded:Wait()
	local root = character:WaitForChild("HumanoidRootPart")

	local cameraPosition = CFrame.new(Vector3.new(root.Position.X, zoom - 45, root.Position.Z + zoom), 
		Vector3.new(root.Position.X, 0, root.Position.Z))
	
	Camera.CFrame = cameraPosition
end)

The issue:

Behaviour that I want to achieve:

Any tips on how I can control this camera behavior in the mobile environment?
Thanks in advance.