html { height: 100%; }

body
{
	background: #fff;
	font-family: 'Sorts Mill Goudy', serif;
	line-height: 1.5;
	color: #000;
	padding: 0;
	margin: 0;
}

/* REGIONS */
header
{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background: #18212b;
	color: #fff;
	font-size: 130%;
	z-index: 2;
}

.header-content
{
	max-width: 40rem;
	background: #18212b;
	margin: 0 auto;
	padding: 0.8em 1em 0.2em;
	position: relative;
	z-index: 2;
}

.header-content a
{
	color: #fff;
	text-decoration: none;
	transition: color 0.12s ease-out;
}

.header-content a:hover, .header-content a:focus, .header-content a:active
{
	color: #fff;
	border-bottom: 1px solid #fff;
}

.header-content p
{
	margin: 0;
	display: inline;
	-webkit-order: 3;
	-ms-flex-order: 3;
	order: 3;
}

main
{
	max-width: 40rem;
	padding: 0 1em;
	margin: 5em auto 2em;
	font-family: 'Sorts Mill Goudy', serif;
	font-size: 120%;
	position: relative;
}

footer
{
	max-width: 28rem;
	margin: 5em auto 2em;
	text-align: center;
	color: #888;
	font-size: 80%;
	padding: 1em;
	padding-bottom: 6em;
}

nav
{
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	background: #18212b;
	color: #fff;
	font-size: 100%;
	z-index: 2;
}

.pagination
{
	max-width: 40rem;
	background: #18212b;
	margin: 0 auto;
	padding: 0.4em 1em;
	position: relative;
	z-index: 2;
	list-style: none;
	display: flex;
	justify-content: space-between;
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 95%;
}

.pagination a
{
	color: #fff;
	text-decoration: none;
	transition: color 0.12s ease-out;
	font-family: 'Source Sans Pro', sans-serif;
}

.pagination a:hover, .pagination a:focus, .pagination a:active
{
	color: #fff;
	border-bottom: 1px solid #fff;
}

/* PAGE ELEMENTS */
hr
{
	border: 0;
	height: 0;
	border-top: 1px solid #888;
}

/* HEADINGS */
h1
{
	font-size: 2.6em;
	line-height: 1;
	font-weight: normal;
	margin: 1.5em 0 0.3em;
	color: #375840;
	font-family: 'Sorts Mill Goudy', serif;
}

.chapter-number
{
	font-size: .48em;
	font-family: 'Source Sans Pro', sans-serif;
	color: #18212b;
}

h2
{
	font-size: 2em;
	font-weight: normal;
	line-height: 1.2;
	margin: 1.3em 0 0.25em;
	color: #375840;
	font-family: 'Sorts Mill Goudy', serif;
}

h3
{
	font-size: 1.4em;
	font-weight: normal;
	line-height: 1.2;
	margin: 1.3em 0 0.5em;
	color: #375840;
	font-family: 'Sorts Mill Goudy', serif;
}

h4
{
	font-size: 1.2em;
	font-weight: normal;
	font-style: italic;
	line-height: 1.2;
	margin: 1.3em 0 0.5em;
	font-family: 'Sorts Mill Goudy', serif;
	color: #375840;
}

h5
{
	font-size: 1em;
	font-weight: normal;
	line-height: 1.2;
	font-family: 'Sorts Mill Goudy', serif;
	color: #375840;
}

/* TEXT */
ul, ol { margin: 0 0 1em 0; }
li { margin: 0 0 .25em 0; }

ul.references
{
	list-style: outside none none;
	padding-left: 0;
}

ul.references li
{
	margin-left: 2em;
	text-indent: -2em;
}

p { margin: 0 0 1em; }

blockquote
{
	font-style: italic;
	color: #333;
	padding-left: 0em;
	margin-left: 0em;
}

pre
{
	background: #272822;
	color: #f6f5de;
	padding: 1em;
	word-wrap: break-word;
	overflow-x: hidden;
}

table
{
	font-family: 'Source Sans Pro', sans-serif;
	width: 100%;
	border-collapse: collapse;
}

tr:nth-child(odd) { background-color: #f2f2f2; }

th, td
{
	vertical-align: top;
	padding: 0.2em;
}

th, caption
{
	text-align: left;
	font-weight: bold;
}

th { width: 30%; }

/* LINKS */
main a
{
	color: #375840;
	transition: all 0.2s ease;
}

a:hover, a:focus, a:active { color: #000; }

/* FIGURES */

figure {
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1.5em;
    margin-inline-start: 0;
    margin-inline-end: 0;
}

figcaption
{
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 90%;
	color: #18212b;
}
