/* ==========================================================================
   Page layout
   ========================================================================== */

/*
   Masthead
   ========================================================================== */

#masthead {
	padding: $gutter;
	z-index: 5;
	@include transform(translate(0,0));
	@include transition(500ms cubic-bezier(.645,.045,.355,1.000));
	&.slide {
		@include transform(translate(-1600px,0));
	}
	.inner-wrap {
		@include outer-container;
	}
}
.site-title {
	@include row;
	@include media($large) {
		@include span-columns(4);
	}
	padding: (.25 * $masthead-height) 0; // fourth the height to center vertically
	height: $masthead-height;
	text-decoration: none;
	color: $black;
	font-family: $alt-font;
	font-weight: 700;
	@include font-size(20,no);
	line-height: .5 * $masthead-height; // half the height to center vertically
	text-transform: uppercase;
}


/*
   Menus
   ========================================================================== */

.menu {
	li {
		float: left;
		&:last-child a {
			@include media($medium) {
				margin-right: 0; // remove spacing from last menu link
			}
		}
		a {
			// line hover effect
			position: relative;
			display: block;
			margin-right: $gutter;
			padding: (.25 * $masthead-height) 0 (.25 * $masthead-height) ;
			height: $masthead-height;
			font-family: $alt-font;
			&:before,
			&:after {
				content: '';
				display: block;
				position: absolute;
				top: 0;
				left: 0;
				height: 2px;
				@include transition(width 0.3s);
			}
			&:before {
				width: 100%;
				background: transparent;
			}
			&:after {
				width: 0;
				background: $black;
			}
			&:active:after,
			&:hover:after {
				width: 100%;
			}
		}
	}
}

/* Top menu navigation */

.top-menu {
	display: none;
	position: relative;
	@include media($medium) {
		@include span-columns(12);
	}
	@include media($large) {
		@include span-columns(7);
		ul {
			position: absolute;
			right: 0;
		}
	}
	.home,
	.sub-menu-item {
		display: none;
	}
	li {
		a {
			font-weight: 700;
			@include font-size(16,no);
			line-height: .5 * $masthead-height; // half the height to center vertically
			color: $black;
			text-transform: uppercase;
		}
	}
}

/* Bottom menu navigation */

.bottom-menu {
	@include clearfix;
	font-weight: 700;
	a {
		color: lighten($black,60);
	}
}


/*
   Page wrapper
   ========================================================================== */

#page-wrapper {
	padding: 0 $gutter; // add white space for smaller screens
	@include size(100% 100%);
	-webkit-overflow-scrolling: touch;
	z-index: 2;
	@include transform(translate(0,0));
	@include transition(500ms cubic-bezier(.645,.045,.355,1.000));
	&.slide {
		@include transform(translate(-60rem,0));
	}
}

/*
   Main content
   ========================================================================== */

#main {
	.inner-wrap {
		@include media($medium) {
			@include span-columns(9);
		}
	}
	.page-title {
		@include fill-parent;
	}
	@at-root {
		.page-content {
			@include fill-parent;
			// larger font for intro paragraph
			> p {
				&:first-child {
					@include font-size(20,yes,30);
				}
			}
			// cleaner underlines for links
			a { text-decoration: none; }
			p a,
			li a {
				border-bottom: 1px dotted lighten($link-color, 50);
				&:hover {
					border-bottom-style: solid;
				}
			}
			p > a.reversefootnote {
				border-bottom-width: 0;
			}
      .toc li > a {
        border-bottom-width: 0;
      }
			.page-footer,
			.pagination {
				@include fill-parent;
			}
			.page-meta {
				p{
					@include font-size(14,no);
					font-family: $alt-font;
					color: lighten($black,60);
				}
			}
		}
	}
	@at-root {
		.archive-wrap {
			@include fill-parent;
			.page-content {
				@include reset-all;
				@include fill-parent;
			}
		}
	}
  /* advertisements */
	.ads {
		position: relative;
		text-align: center;
		margin-top: $gutter;
		margin-left: -$gutter;
		margin-right: -$gutter;
		padding: 10px 0 20px;
		background: lighten($border-color,5);
		@include media($medium) {
			@include span-columns(3);
			margin-left: 0;
			margin-right: 0;
		}
		&:after {
			content: 'Advertisement';
			position: absolute;
			bottom: 0;
			width: 100%;
			text-align: center;
			display: block;
			@include font-size(9,no);
			font-family: $alt-font;
		}
		ins {
			border-width: 0;
		}
	}
}
// page lead
.page-lead {
	background-position: center top;
	background-repeat: no-repeat;
	background-attachment: fixed;
	text-align: center;
	color: $white;
	@include media($large) {
		background-size: cover;
	}
}
.page-lead-content {
	padding: 1em;
	@include media($medium) {
		padding: 2em;
	}
	@include media($large) {
		padding: 3em;
	}
	h1 {
		@include font-size(48);
		@include media($medium) {
			@include font-size(60);
		}
		@include media($large) {
			@include font-size(72);
		}
	}
	h2 {
		@include font-size(20);
		@include media($medium) {
			@include font-size(24);
		}
		@include media($large) {
			@include font-size(32);
		}
	}
}
// page header
.page-feature {
	@include fill-parent;
	// expand image to cover full width of header
	img {
		width: 100%;
	}
}
// make image flush with edges on small screens
.page-image {
	position: relative;
	margin-left: -1 * $gutter;
	margin-right: -1 * $gutter;
	// feature image caption
	.image-credit {
		position: absolute;
		bottom: 0;
		right: 0;
		margin: 0 auto;
		padding: 10px 15px;
		background-color: rgba($black,.5);
		color: $white;
		font-family: $alt-font;
		@include font-size(12,no);
		text-align: right;
		z-index: 10;
		a {
			color: $white;
			text-decoration: none;
		}
	}
}

/*
   Page footer
   ========================================================================== */

.page-footer {
	position: relative;
}

/* Author block */

.author-image {
	position: absolute;
	left: 0;
	img {
		width: 80px;
		height: 80px;
		border-radius: $border-radius;
	}
}
.author-content {
	word-wrap: break-word;
	padding-left: 100px; //avatar width + 20px padding
	min-height: 80px; //mirrors avatar height
}
.author-name {
	@include font-size(20,no);
}
.author-bio {
	margin-top: 0;
	@include font-size(16);
}

/*
   Site footer
   ========================================================================== */

#site-footer {
	@include outer-container;
	margin-top: (3 * (0px + $doc-line-height));
	margin-top: (3 * (0rem + ($doc-line-height / $doc-font-size)));
	padding-bottom: $gutter;
	font-family: $alt-font;
  /* Copyright text */
	.copyright {
		@include font-size(12);
		color: lighten($black,60);
		a {
			color: lighten($black,60);
			text-decoration: none;
		}
	}
}