Everyone suggested "uau" as a translation for "wow", which is correct but it doesn't sound natural. I mean, you don't say "uau" when talking to someone or even when texting. I think the best translation would be "nossa". There are other options but as I see "nossa" feels less like a regionalism and also it is not super informal (even though it is informal).
"Your hair" means literally "seu cabelo".
Now the verb "look" is quite tricky, because we don't have a literal translation. You could say: é, está, aparenta, parece. The last two don't really fit in the context, so I would say "seu cabelo é" or "seu cabelo está". They are not the same though: "é" is permanent, you are describing a quality of someone's hair; "está" is momentary, you are saying that now or right now someone's hair is pretty.
"So pretty" could be translated as "tão bonito" or "tão lindo". "Lindo" is more intense. Depending on how you built the sentence, "tão" can be exchanged for "muito".
In short (suggestion):
-Nossa seu cabelo é muito lindo
-Nossa seu cabelo está tão bonito
-Nossa seu cabelo é tão lindo
Also there are other ways of saying that, with a different sentence construction, like:
-Que lindo seu cabelo
-Que bonito seu cabelo
-Que cabelo lindo
Feel free to ask me anything if you need :)