Player Movement component

Hey, everybody. I used a ChracterController to move the player, but I ran into this problem.

I needed the character to be able to lie down, meaning that I needed the player’s height to become very small. Unfortunately, as I realized in Character Controller you can’t make the character’s height smaller than its radius, and you can’t change the Capsule Collider to a Box Collider.

What is the solution to this situation?

I need to have full control over the player’s movement. Do I understand correctly that I need to switch to RigidBody with Kinematic ☑ enabled? Or is it still possible to do something with Character Controller?