No me parece bien logrado ese efecto en esa página que has mostrado. Bueno, hacerlo no es tan complicado. Primero que nada se debe programar el evento onscroll de document, así:
document.onscroll = function() {
};
En segundo lugar se debe obtener la posición con respecto al eje Y del elemento al que se le quiere poner el scroll, para eso usaremos la función que de la posición absoluta de un elemento, en esta página está la función esa:
http://www.ahristov.com/tutorial/jav...to%2BHTML.html
Ahora, la idea es esta, cuando el scroll sea igual o mayor a la posición con respecto al eje Y del elemento ese, pues se le cambia el estilo, simplemente se la cambia la clase, en esa clase debe indicar que su posición es fixed, y su top es 0, de este modo quedará pegado en la parte superior de la viewport. Si el scroll es menor que la posición esa, pues se le quita la clase o se le da la clase que antes tenía. Todo esto debe estar programador obviamente en el evento onscroll de document. Nada más, no es tan complicado.