Seat:Sit() moves seat to player, not the other way around

I recently wrote some code that makes the player sit on the pilot seat after triggering the proximity prompt, but the problem is that it brings the seat (and the helicopter) to the player, instead of bringing the player to the seat, causing the helicopter to teleport to the player. is there a way to prevent this?

Is this an issue related to Seat:Sit() due to the seat not being anchored? If so is there another way to force sit a player?

Here’s the code:

Here’s a video showing the issue:

Teleport the player to the seat then use the Seat:Sit()

issue persists, except now it also teleports both of them into the air around 5 studs

nvm so after switching to PivotTo() instead of MoveTo() it seems that the issue is mostly fixed, the helicopter keeps its rotation and position except for it still teleporting up around 4 studs