Quote:
$"{_configuration["PayPal:clientId"]} : {_configuration["PayPal:secret"]}"
You're adding a space to the end of your client ID, and a space at the start of your secret.
Instead of sending:
xxx:xxx
you're sending:
xxx : xxx
Remove the spaces from your interpolated string:
byte[] bytes = Encoding.GetEncoding("iso-8859-1")
.GetBytes($"{_configuration["PayPal:clientId"]}:{_configuration["PayPal:secret"]}");