html {
  overflow-y: scroll;
}

body {margin: 0px;}
* {font-family: 'Merriweather Sans';}

h1, h2, h3, h4, h5 {font-family: 'Merriweather';}

a {color: #ab5ab9;}

span.heart {color: #ab5ab9;}

.center, .center * {text-align: center;}

/* HEADER */

header.title {text-align: center;}
img.title {height: 120px; margin-top: 10px;}
header.title h1, header.title h2 {display: none;}

/* NAV */

nav ul {margin: 0px; padding: 0px; width:1000px; margin: auto; padding: 0px;}
nav.top li {display: inline-block; width: 24.5%; text-align: center; text-transform: uppercase;}
nav.top li a {
	text-decoration: none;
	width: 100%;
    height: 100%;
    display: block;
    padding: 8px 0px;
    border: solid 2px rgba(171, 90, 185, 0);
    border-bottom: 0px;
}

nav.top li a:hover,
nav.top li a.thispage {
	color: #fff;
	background: #ab5ab9;
	border-color: #000;
}

/* MAIN */
/* MAIN > HEADER */
main header {
	width:100%; 
	background: url("../img/polkadots_bg.png"); 
	text-align: center; 
	padding: 20px 0px; 
	border-top: solid 2px #000; 
	margin-bottom: 2em;
}
main header h1, main header h2 {
	font-size: 32px; 
	display: inline; 
	color: #fff; 
	background: #000; 
	padding: 2px 1px 2px 8px; 
	letter-spacing: 6px; 
	font-weight: normal;
	text-transform: uppercase;
}

main article {width: 1000px; margin: auto;}

/* MAIN > CONTAINER */

div.container {width:1000px; margin:auto;}

/* MAIN > HIGHLIGHT */

/* MAIN > A:LINK */

main a {
	background: #ab5ab9;
    color: #fff;
    text-decoration: none;
    display: inline-block;
    padding: 0 4px;
}

main a:hover { 
	background: none;
	color: #ab5ab9;
}

main ol li {
    margin-bottom: .5em;
}

/* MAIN > NAG */

article.nag {
    width: 275px;
    position: fixed;
    right: 25px;
    bottom: 15px;
    z-index: 1000;
}

article.nag a {
	display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    color: #fff;
    background: #ab5ab9;
    border: solid 2px #ab5ab9;
    text-decoration: none;
    margin-top: 10px;
}

article.nag a:hover {
	border-color: #000;
}
article.nag p {
	padding: 10px;
    margin: 0;
}


/* FOOTER */

footer, .clearfix {clear: both;}
footer.toplevel {
	color: #999; 
	width: 1000px; 
	margin: auto; 
	margin-top: 30px; 
	text-align: right; 
	font-style: italic; 
	padding: 0px;
}

footer.toplevel section {
    width: 30%;
    float: left;
    text-align: left;
}

footer.toplevel section.copyright {
    width: 70%;
    float: right;
    text-align:right;
}
footer.toplevel section.copyright p {
	display: inline-block;
}
footer.toplevel section.copyright p.privacy {
	margin-right:20px;
	font-size: 80%;
}

footer a {text-decoration: none;}

/* BODY:BOOKS >> ARTICLE */

body.books article.book {
	width: 25%; 
	float: left;
}

body.books article.book.feature {
	width: 50%;
}

body.books article.new-line {
	clear: left;
}

body.books article.book a {
	width: 100%;
	padding: 0px 0px 150%;
	position: relative;
	display: block;
	color: #000;
	background: none;
}

body.books article.book .cover,
body.books article.book footer
{
	position: absolute; 
	width: 98%; 
}

body.books article.book.feature .cover,
body.books article.book.feature footer
{
	width: 99%; 
}


body.books article.book footer {
	background: rgba(0, 0, 0, 0.75); 
	position: absolute; 
	top: 0; bottom: 0; left: 0; right: 0;
	width: 98%; 
	height:98%;
	display: none;
}

body.books article.book:hover footer {
	display: block;
}

body.books article.book h1, body.books article.book h2 {
	background: #ac5db6; 
	margin: 0px; 
	text-align: center; 
	padding: 10px 6px;
	position: relative;
	top: 40%;}
body.books article.book h1 {
	font-size: 18px;
	padding-bottom: 2px;
	text-transform: uppercase;
}
body.books article.book h2 {
	padding-top: 2px;
	font-size: 16px;
	font-weight: normal;
	font-family:'Merriweather Sans';
	font-style: italic;
}

body.books article footer.label {display: none;}
/* BODY:BOOKS */

body.books article.copy {
    float: left;
    width: 24.5%;
    height: 368px;
    background: #e8e8e8;
    margin-bottom: 7px;
    margin-right: 5px;
}

body.books article.two-wide {
    width: 49.5%;
}

body.books article.two-high {
	height: 743px;
}

body.books article.half-high {
	height: 184px;
}

body.books article.three-wide {
	width: 74.5%;
}

body.books article.fullwidth {
	width: 100%;
}


body.books article.copy .writeup {
	padding: .5em 1em;
}

body.books article.copy .tags {
	font-weight: bold;
	margin-top:2em;
}

body.books article.copy .tags:before {
	content: "[";
}

body.books article.copy .tags:after {
	content: "]";
}

.note {
	font-style: italic;
}

/* BODY:BIO */

body.bio img.avatar {
	float: left;
	margin-bottom: 1em;
}

body.bio article p.first {
	padding-top: 3em;
}

/* 404 */
.fa-warning:before, .fa-exclamation-triangle:before {
    content: "\f071";
}

/* MEDIA CALLS */

@media screen and (max-width: 1580px) {
	article.nag {
		position: static;
		z-index: 0;
		margin-top: 2em;
	}
}

@media screen and (max-width: 1000px) {
	
	div.container {
		width:99%; 
		height: auto;
	}
	img.title {
		width:90%; 
		height: auto;
	}
	nav ul {
		width:100%; 
		height: auto;
	}
	nav.top li {width: 24%;
	}
	
	main article {
		width:90%;
		margin: auto;
	}
	footer.toplevel {
		width: 99%;
	}
	body.books article.copy  {
		display: none;
	}
	body.books article.book.feature {
		width: 25%;
		clear: none;
	}
	body.books article.book.feature .cover, 
	body.books article.book.feature footer {
		width: 98%;
	}

}

@media screen and (max-width: 700px) {
	body.books article.book:hover footer {display: none;}
	footer.toplevel {
	    background: #f1f1f1;
	    margin-top: 20px;
	    padding-top: 30px;
	}
	footer.toplevel section.copyright,
	footer.toplevel section.social {
		width: 100%;
    	float: none;
    	text-align: center;
	}
}

@media screen and (max-width: 500px) {
	article.nag {width: 90%;}
	section.social a {
    	margin: 0px 6px;
	}
}


@media screen and (max-width: 400px) {
	nav ul {border-top: solid 1px #000; padding-top: 10px;}
	nav.top li {width: 100%;}

}

/* STICKY FOOTER */

html, body {
  height: 100%;
}
body {
  display: flex;
  flex-direction: column;
}
section.nonfooter {
  flex: 1 0 auto;
}