$(document).ready(function() {

            function megaHoverOver(){
						$(this).find(".sub").stop().fadeTo('fast', 1).show();
						$(this).find(".subright").stop().fadeTo('fast', 1).show();

                        //Calculate width of all ul's
						(function($) { 
								jQuery.fn.calcSubWidth = function() {
										rowWidth = 0;
										//Calculate row
										$(this).find("ul").each(function() {                                                  
												rowWidth += $(this).width(); 
												});         
										};
								})(jQuery); 

                        //Calculate width of all ul's
						(function($) { 
									jQuery.fn.calcSubWidth = function() {
												rowWidth = 0;
												//Calculate row
												$(this).find("ul").each(function() {                                                  
													rowWidth += $(this).width(); 
												});         
									};
								})(jQuery);

                        if ( $(this).find(".row").length > 0 ) { //If row exists...
									var biggestRow = 0;        
									//Calculate each row
									$(this).find(".row").each(function() {                                                                                     
											$(this).calcSubWidth();
												//Find biggest row
												if(rowWidth > biggestRow) {
														biggestRow = rowWidth;
												}
									});
									//Set width
									$(this).find(".sub").css({'width' :biggestRow});
									$(this).find(".subright").css({'width' :biggestRow});
									$(this).find(".row:last").css({'margin':'0'});

                        } else { //If row does not exist...
									$(this).calcSubWidth();
									//Set Width
									$(this).find(".sub").css({'width' : rowWidth});
									$(this).find(".subright").css({'width' : rowWidth});
						}
			}

            function megaHoverOut(){ 
				$(this).find(".sub").stop().fadeTo('fast', 0, function() {
							$(this).hide(); 
				});
				$(this).find(".subright").stop().fadeTo('fast', 0, function() {
							$(this).hide(); 
				});
			}

            var config = {    
						sensitivity: 1, // number = sensitivity threshold (must be 1 or higher)    
						interval: 40, // number = milliseconds for onMouseOver polling interval    
						over: megaHoverOver, // function = onMouseOver callback (REQUIRED)    
						timeout: 1, // number = milliseconds delay before onMouseOut    
						out: megaHoverOut // function = onMouseOut callback (REQUIRED)    
			};

 			$("ul#navMenu li .sub").css({'opacity':'0'});
			$("ul#navMenu li .subright").css({'opacity':'0'});
			$("ul#navMenu li").hoverIntent(config);

});
