Не буду приводить весь код, переписал пол страницы, скролинг к нужному месту у меня в начале php обработчика:
<script>
var scroll=$('#form').offset().top;
$('html, body').animate({scrollTop: scroll}, 400);
</script>
Но тут получается, что если страница хоть немного прокручена вниз, то при клике сначала бросает наверх страницы, а потом плавно спускает к якорю.
Можно ли как-то offset'у задать, что бы он скролил от текущих координат?