+1 on what has been said: HTML and CSS are not programming languages. They are "structure and format" languages (but generally referred to as 'markup'). Programming languages center around flow of control (decisions, looping, data structures), whereas markup center around [static] organization and presentation.
But that doesn't matter.
So you're going to learn programming. Congratulations! If you happen to like it, it will be the most rewarding decision you have ever made. I have taught several programming classes and I can tell you what separates the winners from the losers is love, and little else. Unfortunately, you don't get to decide if you'll love it, you can only find out.
As for languages... Python sucks, C# rocks.
Why? Because I don't know the former, but I am expert at the latter (along with Java, C++, and others).
So this is a great introduction into the world of programmers, where you will find that we all discuss technologies with an almost religious zeal (or hatred). You cannot ask programmers which language is "better" unless you are an absolute genius at filtering out such zeal and finding a nugget of truth. Even if you are, you might meet your match when a clever zealot simply lists 10 ways one language is better than another, and it is all factually correct save for the fact that it does not mention the 10 ways the other language excels.
I don't know Python, and that's for a reason. I've been a consultant most of my life, and I've never found use for it. I am comfortable saying it's not as popular as others, and to some degree that matters--language support, online community, availability of tutorials and other help, even things like performance--the most used languages are often the best built and optimized simply because they have more minds on the job.
Having said all that... if my son were a bit older and wanted to learn to program, I would recommend Java. Java dev's make terrific money, you can build anything with it, it runs on almost every platform, and it's a solid, clean language. If you know Java, C# and C++ are just a hop (for the former) or a leap (for the latter) away, so you can rest knowing your skills are useful even when you're nowehre near Java.
Having said that, if you want to build a game and have decided to use something like Unity, you can't use Java. In this case, C# will be the best bet, and did I mention, the two are so similar you get all the benefits of Java by learning C#, except for the fact that you won't know Java. Languages are very similar, feature libraries are not.
In the end your choice of first language isn't that important. If you love programming, you will go on to learn others as and when necessary, and life will be good. I started on TRS 80 model 3 Basic, and although I do nothing like that now, starting there didn't hurt me a bit--save for the fact that when I mention it, it is fairly easy to guess my age :-)
It is a "scripting language," not a "programming language." I often discuss this distinction with others and it seems it is fuzzy, but I would say the following:
* Scripting languages are intended to give the scripter some level of control over a document or environment.
* Programming languages are intended to give the programmer control of a machine, either directly or through some intermediate, such as the Jave Virtual Machine.
The former is slow but usually easy to use for it's narrow focus; the latter is fast but generally harder to use.
Now that I've written a book, let me wish you good luck. I hope you love programming!