I often mentor people who have a 12-hour time difference. It's not so much a formal situation with planned meetings, etc.
But one thing you can do is provide information and links to educational resources. If you see an area where knowledge needs improvement, you could write a Wiki entry on it and then let people know about it.
I also use Code Review as a way to teach them to see beyond the beginner level into more advanced techniques or understandings. I find it especially important to help them learn to relate information on this project to what we did on that project and teach them to understand the business reasons behind decisions and requirements and why those are as important (Often more important) than programming techniques. If there are techniques which are better than what they used, I explain them and explain how to determine which is the better technique for the particular situation. I think it is especially important to code review in a meeting where you can talk rather than just send back comments in some automated system. (For people not in the development world, you can do something similar by reviewing their work and showing them where they could be doing something better)
I prep training on specific topics where I feel some people I mentor need development. Then I may change my hours to overlap on the day I present. I also suggest to people topics they could prepare training on both to benefit others and to develop the person's (the one assigned to that topic) knowledge in an are and ability to make presentations which is a critical skill as you get more senior.
A lot of the mentoring I have done is also to help them understand how to deal with the US business culture.
Part of mentoring people in another physical location is getting to know them as people. Noticing their holidays, asking about their spouses and children, finding out what they did over the weekend, etc. These things all make you more approachable. Making it clear that you are always available for questions and that you won't bite someone's head off for asking is a another key factor. Talk to them about their background and aspirations. You have to pay more attention to these soft skills when you are not co-located because to them you are the person in an IM or an email and not really real if they have not met you. It is easier to mentor remote people if you have met them, so if you have the opportunity to go to their location, take it.
You also need to really get thoughtful about what people need to move from junior to senior or to management. Most of the skills that make a senior more effective are not necessarily syntax oriented which is really the majority of training a junior person has had. They are more about how to analyze a problem, how to push back on a bad requirement, how to set things up so that you have data to analyze two years later when there is a failure in production, how to troubleshoot/debug,etc. One of my favorite things to show people who are just getting to the point of being more senior is how to do a decision analysis to show management which of several options is the better one.
Another way to mentor is to ask people direct questions in meetings to get them to think through what they are doing.
Another way to mentor is to start speaking at conferences. If you do that, then you can share your speech with your coworkers and ask them to help you prep or review your speech before the official presentation.
Another thing is to suggest particular individuals for assignments that will stretch their skills and then provide advice as they run into new challenges. I have also helped some people who were less confident realize that they could apply for a particular promotion. Then I usually make it my business to make sure the hiring official knows that I recommend that particular person.