/*
 * This is the primary site style sheet, used on each page to help lay out the overall page structure. At the start of
 * this file are all rules pertaining to site-wide font sizes (for easy access). Any rules that warrant descriptions
 * have them included, otherwise only a simple title describing the affected elements is provided. The only rules
 * pertaining to font size not included in this file can be found in the following secondary CSS files:
 *		home.css
 *		timeline.css
 */

/* Master Font Size
 *
 * adjust this to change the root font size off of which all other fonts are based. 100% is approximately
 * 16px for browsers with default settings. All other font sizes in 'em' units are relative to this.
 */
html, body{
	font-size: 95%;
}

/* Default Browser Font Size Override
 *
 * this override is necessary to reset default browser styling of elements like h1, h2, etc. that by default have larger
 * or smaller font sizes when using relative units such as 'em'. Using a 1em value is essentially defaulting everything
 * to this size unless explicitly stated otherwise.
 */
main > * {
	font-size: 1em;
}

/* Main Navbar Font Size  */
header > nav > ul > li > a {
	font-size: 1.3em;
}

/* Main Navbar: Active/Hover Link Font Size
 *
 * This rule uses a media query, so as to only affect the font size of the active link in the main nav when the viewport
 * width is greater than 530px. The effect of this can be observed by slowly decreasing the width of the browser window,
 * which will eventually cause this rule to no longer operate on the active link, thus decreasing the font size to the
 * default size for main navbar links, set in the rule preceeding this one (see "Main Navbar Font Size").
 */
@media all and (min-width: 530px) {
	header > nav > ul > li > a:hover, header > nav li.active a {
		font-size: 1.7em;
	}
}

/* Article Subheader Font Size
 *
 * this rule affects subheadings like the questions on the FAQ
 */
main > article > h2 {
	font-size: 1em;
}

/* Image Caption Font Size */
main > article > figure > figcaption {
	font-size: 0.9em;
}

/* Footer Text Font Size */
footer {
	font-size: 0.9em;
}

/****** END FONT SIZES ******/

body, body *{
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
	text-decoration: none;
	font-weight: normal;
	font-family: sans-serif;
	-ms-overflow-style: none;
}

*::-webkit-scrollbar{
	display: none;
}

body{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: column nowrap;
	-moz-flex-flow: column nowrap;
	-ms-flex-flow: column nowrap;
	-o-flex-flow: column nowrap;
	flex-flow: column nowrap;
	height: 100%;

}

*:focus{
	outline: none;
}

html{
	height: 100%;
	padding-bottom: 0;
}

body{
	max-width: 1000px;
	height: 100%;
	padding: 0 10px;
	margin: auto;
}

header > nav * {
	color: #3c7fab;
}


header {
	margin-top: 10px;
	-webkit-flex: none;
	-moz-flex: none;
	-ms-flex: none;
	-o-flex: none;
	flex: none;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: column nowrap;
	-moz-flex-flow: column nowrap;
	-ms-flex-flow: column nowrap;
	-o-flex-flow: column nowrap;
	flex-flow: column nowrap;
	-webkit-justify-content: flex-end;
	-moz-justify-content: flex-end;
	-o-justify-content: flex-end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	height: 110px;
}

code{
	font-family: "Courier New", Courier, monospace;
}

header > a{
	-webkit-align-self: flex-end;
	-moz-align-self: flex-end;
	-ms-flex-item-align: end;
	-o-align-self: flex-end;
	align-self: flex-end;
	-webkit-flex: 0 1 100px;
	-moz-flex: 0 1 100px;
	-ms-flex: 0 1 100px;
	-o-flex: 0 1 100px;
	flex: 0 1 100px;
}



header > nav{
	-webkit-flex: 0 0 25px;
	-moz-flex: 0 0 25px;
	-ms-flex: 0 0 25px;
	-o-flex: 0 0 25px;
	flex: 0 0 25px;
}


header > nav > ul{
	width: 100%;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex: 0 0;
	-moz-flex: 0 0;
	-ms-flex: 0 0;
	-o-flex: 0 0;
	flex: 0 0 ;
	-webkit-flex-flow: row nowrap;
	-moz-flex-flow: row nowrap;
	-ms-flex-flow: row nowrap;
	-o-flex-flow: row nowrap;
	flex-flow: row nowrap;
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-flex-pack: center;
	-o-justify-content: center;
	justify-content: center;
	-webkit-align-items: flex-end;
	-moz-align-items: flex-end;
	-ms-flex-align: end;
	-o-align-items: flex-end;
	align-items: flex-end;
	height: 20px;
}


header > nav > ul > li{
	-webkit-flex: 1 1 14%;
	-moz-flex: 1 1 14%;
	-ms-flex: 1 1 14%;
	-o-flex: 1 1 14%;
	flex: 1 1 14%;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

header > nav > ul > li > a {
	-webkit-flex: 1 1 100%;
	-moz-flex: 1 1 100%;
	-ms-flex: 1 1 100%;
	-o-flex: 1 1 100%;
	flex: 1 1 100%;
	text-align: center;
}

@media all and (max-width: 450px) {

	header{
		margin-top: 5px;
		-webkit-flex-flow: row nowrap;
		-moz-flex-flow: row nowrap;
		-ms-flex-flow: row nowrap;
		-o-flex-flow: row nowrap;
		flex-flow: row nowrap;
		-webkit-justify-content: space-between;
		-moz-justify-content: space-between;
		-ms-justify-content: space-between;
		-o-justify-content: space-between;
		justify-content: space-between;
		height: 117px;
		padding: 0 10px 0 5px;
	}

	header > nav{
		-webkit-order: -1;
		-moz-order: -1;
		-ms-order: -1;
		-o-order: -1;
		order: -1;
		-webkit-flex-flow: column nowrap;
		-moz-flex-flow: column nowrap;
		-ms-flex-flow: column nowrap;
		-o-flex-flow: column nowrap;
		flex-flow: column nowrap;
		-webkit-flex: 0 0 150px;
		-moz-flex: 0 0 150px;
		-ms-flex: 0 0 150px;
		-o-flex: 0 0 150px;
		flex: 0 0 150px;
		margin-right: auto;
	}

	header > nav > ul{
		height: 115px;
		-webkit-flex-flow: column wrap;
		-moz-flex-flow: column wrap;
		-ms-flex-flow: column wrap;
		-o-flex-flow: column wrap;
		flex-flow: column wrap;
		-webkit-justify-content: flex-end;
		-moz-justify-content: flex-end;
		-ms-justify-content: flex-end;
		-o-justify-content: flex-end;
		justify-content: flex-end;
		-webkit-align-items: flex-start;
		-moz-align-items: flex-start;
		-ms-align-items: flex-start;
		-o-align-items: flex-start;
		align-items: flex-start;
	}

	header > nav > ul > li{
		-webkit-flex: 0 1 25px;
		-moz-flex: 0 1 25px;
		-ms-flex: 0 1 25px;
		-o-flex: 0 1 25px;
		flex: 0 1 25px;
	}

	header > nav > ul > li > a {
		text-align: left;
	}

	header > a {
		margin-right: 15px;
		-webkit-align-self: center;
		-moz-align-self: center;
		-ms-align-self: center;
		-o-align-self: center;
		align-self: center;
	}

}


main{
	height: 70%;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: row nowrap;
	-moz-flex-flow: row nowrap;
	-ms-flex-flow: row nowrap;
	-o-flex-flow: row nowrap;
	flex-flow: row nowrap;
	border: solid black 1px;
}

main > *{
	padding-top: 30px;
	line-height: 14px;
}

main > nav{
	-webkit-flex: 0 1 27%;
	-moz-flex: 0 1 27%;
	-ms-flex: 0 1 27%;
	-o-flex: 0 1 27%;
	flex: 0 1 27%;
	max-width: 175px;
	overflow-y: auto;
}

main > nav > ul{
	position: relative;
}

main > nav a{
	color: #aaaaaa;
}


main > nav  li{
	margin: 0 0 10px 15px;
	position: relative;
}

main > nav li:hover > a:before,main > nav li:target > a:before, main > nav li.active > a:before{
	color: #aaaaaa;
	content:"\00BB \0020";
	position: relative;
	left: -10px;
	margin-right: -10px;
}

main > article > h1{
	text-align: left;
	line-height: 20px;
}

main > article{
	-webkit-flex: 1 1 80%;
	-moz-flex: 1 1 80%;
	-ms-flex: 1 1 80%;
	-o-flex: 1 1 80%;
	flex: 1 1 80%;
	overflow: auto;
	overflow-x: hidden;
	padding: 30px 0 0 10px;
	text-align: justify;
}

main > article > * {
	padding-right: 14px;
}

main > article span{
	display: inline;
	font-weight: bold;
}

main > article > p{
	line-height: 18px;
	margin: 15px 0;
}

main > article > h2{
	margin: 15px 0;
	font-weight: bold;
}

main > article li{
	line-height: 18px;
}

main > article > ul{
	margin-left: 10%;
}

main > article li{
	list-style: circle;
}

main > article a{
	text-decoration: underline;
	color: #2c6f9b;
}

main > article > figure{
	text-align: center;
}

main > article > figure > img{
	border: solid black 1px;
	width: 90%;
}

main > article > figure > figcaption{
	margin: 5px;
	color: #666633;
}

main > article > p:last-child{
	text-align: right;
}

main > article > p:last-child > a{
	font-weight: bold;
	text-decoration: none;
	color: #dd8844;
}

main > article > p:last-child > a:before{
	content:"\00BB \0020";
}

main > article > p:last-child > a:hover{
	text-decoration: underline;
}

pre,code{
	white-space: pre-wrap;
}


@media all and (max-width: 400px){
	main{
		-webkit-flex-flow: column nowrap;
		-moz-flex-flow: column nowrap;
		-ms-flex-flow: column nowrap;
		-o-flex-flow: column nowrap;
		flex-flow: column nowrap;
	}

	main > article, main > nav{
		padding-top: 5px;
	}

	main > article{
		-webkit-flex: 8 1 80%;
		-moz-flex: 8 1 80%;
		-ms-flex: 8 1 80%;
		-o-flex: 8 1 80%;
		flex: 8 1 80%;
	}

	main > nav{
		-webkit-flex: 1 0 20px;
		-moz-flex: 1 0 20px;
		-ms-flex: 1 0 20px;
		-o-flex: 1 0 20px;
		flex: 1 0 20px;
		overflow: scroll;
		overflow-y: hidden;
		padding-bottom: 0px;
		max-width: none;
	}

	main > nav > ul{
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-flow: row nowrap;
		-moz-flex-flow: row nowrap;
		-ms-flex-flow: row nowrap;
		-o-flex-flow: row nowrap;
		flex-flow: row nowrap;
		-webkit-justify-content: center;
		-moz-justify-content: center;
		-ms-flex-pack: center;
		-o-justify-content: center;
		justify-content: center;
	}

	main > nav > ul > li{
		margin: 0;
		-webkit-flex: 1 0 81px;
		-moz-flex: 1 0 81px;
		-ms-flex: 1 0 81px;
		-o-flex: 1 0 81px;
		flex: 1 0 81px;
		text-align: center;
	}
}

footer{
	padding: 10px 0;
	text-align: center;
	font-weight: bold;
}

header > nav li:nth-child(1) a:hover,header > nav li:nth-child(1) a:target,header > nav  li:nth-child(1).active a{
	 color: #1c5f8b;
}

header > nav li:nth-child(2) a:hover,header > nav li:nth-child(2) a:target,header > nav li:nth-child(2).active a{
	color: #807045;
}

header > nav li:nth-child(3) a:hover,header > nav li:nth-child(3) a:target,header > nav li:nth-child(3).active a{
	color: #0011aa;
}

header > nav li:nth-child(4) a:hover,header > nav li:nth-child(4) a:target,header > nav li:nth-child(4).active a{
	color: #cc1100;
}

header > nav li:nth-child(5) a:hover,header > nav li:nth-child(5) a:target,header > nav li:nth-child(5).active a{
	color: #bc9c00;
}

header > nav li:nth-child(6) a:hover,header > nav li:nth-child(6) a:target,header > nav li:nth-child(6).active a{
	color: #11aa11;
}

header > nav li:nth-child(7) a:hover,header > nav li:nth-child(7) a:target,header > nav li:nth-child(7).active a{
	color: #660066;
}
