$(document).ready(prepColumnHeights);

function prepColumnHeights() {
   var bestHeight = 550;

   //equalize main columns
   $('.subnavigation')
   .each(function () {
      bestHeight = Math.max(bestHeight, $(this).height());
   })
   .each(function () {
      $(this).height(bestHeight
         - getStyleValue(this, 'padding-top',NOUNIT)
         - getStyleValue(this, 'padding-bottom',NOUNIT)
      );
   });

   //drop text columns to container .text
   $('.text>*').each(function () {
      $(this).css({
         'min-height':
         $('.text').height()
            - getStyleValue(this, 'padding-top',NOUNIT)
            - getStyleValue(this, 'padding-bottom',NOUNIT)
      });
   });

   // re-apply [bottom] for the IE's, which don't like to update [bottom] when JS sets heights that
   // should influence a positioned element's position.
   $('.side_bottom').each(function () {
      this.style.bottom = getStyleValue(this, 'bottom');
   });
}