Help with Welds.c0 and CFrames

Currently Im working towards a Ui that can custom design an avatar.

Im having an issue with the Welds.C0 and C1. The way it works is that the Move tool moves the C0. If I change this to c1, it breaks how it functions and makes a bunch of issues. However, this contradicts with the Rotation tool which rotates around C1, which the Move tool doesn’t move so it stays at my head.

The blue is how it currently moves, next photo will be how I want it to move.

.

I’ve been working on this issue for 2 days now and what I’ve came to is that there has to be some sort of equation that plays right has you grab the handle that seamlessly switch’s the position of the c1 and c0 while keeping the hat there, letting go will resume it back tor normal.

Any help would be greatly appreciated.