Index: wp-content/themes/twentythirteen/js/functions.js
===================================================================
--- wp-content/themes/twentythirteen/js/functions.js	(revision 23669)
+++ wp-content/themes/twentythirteen/js/functions.js	(working copy)
@@ -5,17 +5,37 @@
  */
 
 ( function( $ ) {
-	/**
-	 * Repositions the window on jump-to-anchor to account for
-	 * navbar height.
-	 */
-	var twentyThirteenAdjustAnchor = function() {
-		if ( window.location.hash )
-			window.scrollBy( 0, -49 );
+	var twentyThirteen = {
+		/**
+		 * Adds a margin to the footer, if the sidebar widget area is higher
+		 * than the rest of the page.
+		 */
+		adjustFooter : function() {
+			var sidebar   = $('#secondary .widget-area'),
+			    secondary = 0 == sidebar.length ? -40 : sidebar.height(),
+			    margin    = $('#tertiary .widget-area').height() - $('#content').height() - secondary;
+
+			if ( 0 < margin && 999 < window.innerWidth )
+				$( '#colophon' ).css( 'margin-top', margin + 'px' );
+		},
+
+		/**
+		 * Repositions the window on jump-to-anchor to account for navbar
+		 * height.
+		 */
+		adjustAnchor : function() {
+			if ( window.location.hash )
+				window.scrollBy( 0, -49 );
+		}
 	};
 
-	$( document ).on( 'ready',    twentyThirteenAdjustAnchor );
-	$( window ).on( 'hashchange', twentyThirteenAdjustAnchor );
+	$( document ).on( 'ready', function() {
+		twentyThirteen.adjustAnchor();
+
+		if ( body.is( '.sidebar' ) )
+			twentyThirteen.adjustFooter();
+	} );
+	$( window ).on( 'hashchange', twentyThirteen.adjustAnchor );
 
 	/**
 	 * Displays the fixed navbar based on screen position.
