There’s a function to crouch inside character default code and your CharacterMovementComponent has a MaxWalkSpeedCrouched variable to handle the speed.
To do this, you needs to enable bCanCrouch variable inside your movement component.
Or you can add a branch node before set max walk speed (Left Shift func) to verify if is crouching