En realidad podrías solucionarlo con css sin problemas. Con javascript hay varias posibilidades, pero ya que el formulario está casi al final de la página y seguramente no vas a cambiar su ubicación respecto del pie de la página, podrías usar el final de la página como medida de referencia y posicionarlo con un valor constante respecto de ese punto (en este ejemplo llamé delta a ese valor):
Código PHP:
<script>
function getWindowData(){
var widthViewport,heightViewport,xScroll,yScroll,widthTotal,heightTotal;
if (typeof window.innerWidth != 'undefined'){
widthViewport= window.innerWidth-17;
heightViewport= window.innerHeight-17;
}else if(typeof document.documentElement != 'undefined' && typeof document.documentElement.clientWidth !='undefined' && document.documentElement.clientWidth != 0){
widthViewport=document.documentElement.clientWidth;
heightViewport=document.documentElement.clientHeight;
}else{
widthViewport= document.getElementsByTagName('body')[0].clientWidth;
heightViewport=document.getElementsByTagName('body')[0].clientHeight;
}
xScroll=self.pageXOffset || (document.documentElement.scrollLeft+document.body.scrollLeft);
yScroll=self.pageYOffset || (document.documentElement.scrollTop+document.body.scrollTop);
widthTotal=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth,widthViewport);
heightTotal=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight,heightViewport);
return [widthViewport,heightViewport,xScroll,yScroll,widthTotal,heightTotal];
}
function posicionar(){
var delta='500';
var pos=getWindowData();
document.getElementById('win').style.top=(pos[5]-delta)+'px';
}
</script>
</head>
<body onLoad="iniciar();posicionar()">