Blizzard is very custom-tech driven. I don't have links to the articles, but I remember seeing that they develop thousands of custom shaders per game for both multiplatform compatibility and backwards compatibility.
Multiplatform support isn't something new. Plenty of software supports Linux, Mac OS, and Windows. As was mentioned above, the important part is abstracting away from platform specifics.
Any contemporary game engine handles multiplatform and many can switch between OpenGL and DirectX depending on the platform.
Blizzard is a C++ house, like most professional large scale developers. But, as was mentioned by S.gfx, if you're looking for an easy solution, there are plenty of non-C++ solutions -- including jMonkeyEngine or LWJGL.
From the C++ side, you can utilize Glut and Glu to easily handle different operating systems while using OpenGL, or write your own abstraction for specific OS calls.
To more specifically answer your bullets:
what technologies are they using for their game engines?
Blizzard probably wouldn't say; but, you can be sure the engine is written in C++ and utilizes OpenGL or OpenGL and DirectX. Remember, OpenGL runs on Windows.
are they using one engine for both games (Starcraft 2 and Diablo 3)? Or develop custom for each game?
Blizzard has been known to maintain multiple engines. Diablo 3, from the onset, was a fork of WoW's code, I believe. But, you can be sure it will be nothing like WoW once they've finished the project. Blizzard isn't a company afraid of writing plenty of code per project.
what are they paying in terms of time and money for Mac OS support?
If done correctly, Mac OS support shouldn't be "too" significant of a cost. Anyone can guess. Blizzard, as I said, has a tendency to write custom shaders so everything looks "just right"; so, it could be more than other houses pay.