Fps viewmodel arms, setting leftHand's cframe offsets weirdly from the attachment's position

I am making a fps viewmodel system and using the character arm/hand itself but I’m having trouble using cframes to set it to the attachments position on the gun

setting it to the worldPosition works, but the problem is I wanna be able to make the hand face in the direction of the gun with a certain rotation

leftHand.Position = attachment.WorldPosition

but using cframe offsets it weirdly from the position, how to fix this?

leftHand.CFrame = handle.CFrame * CFrame.new(attachment.Position)

what I want is to have the left hand at the attachments position but facing the direction of the gun