Well I feel stupid, I figured it out and it's now working.
I used lastpass to auto-gen the elastic password, and apparently you can't have certain characters when creating a k8s secret and using "from-literal". It stripped characters out without me knowing and I was using the password in lastpass when logging in from the browser. Lesson learned!
Sorry for wasting you guys time @michael.russell, @tiagocosta. Your help was really appreciated.
Thanks!