* {
	margin: 0;
	padding: 0;
	}

html {
	height: 101%;
	text-rendering: optimizelegibility;
	-webkit-font-smoothing: antialiased;
	}

body {
	background: #FFF;
	color: #666;
	font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-size: 16px;
	line-height: 26px;
	margin: 3em auto;
	width: 600px;
	}

form {
	margin-bottom: 20px;
	}

input {
	appearance: none;
	}

input[type="search"] {
	border: 1px solid #CCC;
	font-family: inherit;
	font-size: 1em;
	margin-bottom: 1em;
	padding: 1em .5em;
	width: 100%;
	}

input[type="submit"] {
	background-color: #444;
	border-radius: 0.3em;
	border: none;
	color: #FFF;
	display: inline-block;
	font-family: inherit;
	font-size: 1em;
	font-weight: bold;
	padding: .5em 1em;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	white-space: nowrap;
	}

input[type="submit"]:hover {
	background-color: #090;
	}

a {
	color: #444;
	text-decoration: none;
	outline: none;
	}

section a {
	border-bottom: 2px #090 solid;
	padding-bottom: 1px;
	}

footer a {
	color: #090;
	}

nav li {
	list-style: none;
	margin-right: 20px;
	font-weight: bold;
	float: left;
	}

nav li a {
	color: #090;
	}

a:active,
a:visited {
	outline: none;
	}

a:hover {
	color: #090;
	border-bottom: none;
	outline: none;
	}

section a:hover {
	border-bottom: 2px #FFF solid;
	}

footer a:hover {
	color: #222;
	}

nav li a:hover,
nav li a.active {
	color: #222;
	}

img {
	border: 1px solid #CCC;
	display: block;
	margin: 2em auto;
	outline: none;
	padding: 1em;
	}

h1 {
	color: #444;
	font-size: 48px;
	line-height: 40px;
	margin-bottom: 20px;
	}

h2 {
	color: #444;
	font-size: 30px;
	line-height: 40px;
	margin-bottom: 20px;
	}

h3 {
	border-bottom: 1px #999 solid;
	color: #444;
	font-size: 18px;
	margin: 40px 0 20px;
	padding-bottom: 10px;

	}

form + h3 {
	border-bottom: none;
	padding-bottom: 0;
	}

h4 {
	color: #444;
	font-size: 16px;
	margin-bottom: 20px;
	}

p {
	margin-bottom: 15px;
	}

blockquote p {
	line-height: 2em;
	text-indent: -.4em;
	margin: 0;
	}

blockquote p:nth-child(2) {
    text-align: right;
}

blockquote {
	margin-bottom: 30px;
	padding: 20px 30px;
	border: 1px solid #CCC;
	}

code {
	background-color: #F8F8F8;
	border-radius: 3px;
	border: 1px solid #CCC;
	color: #333;
	font-family: "Courier New", Courier, "Lucida Sans Typewriter", "Lucida Typewriter", monospace;
	font-size: 15px;
	line-height: initial;
	padding: 2px 5px 1px;
	white-space: pre;
	}

nav {
	border-bottom: 1px solid #999;
	border-top: 1px solid #999;
	overflow: hidden;
	padding: 10px 0;
	}

nav.submenu {
	border-top: none;
	margin-bottom: 20px;
	}

nav.submenu.alphabetical {
	border-bottom: none;
	}

nav.submenu.alphabetical h3 {
	margin-top: 0;
	}

article ul,
article ol {
	margin-bottom: 20px;
	margin-left: 40px;
	}

article h3.src + ul,
article h3.rslt + ul,
article h2.rslt + p + ul {
	margin-left: 0;
	}

article h3.src + ul li {
	list-style: none;
	}

article h3.rslt + ul li {
	list-style: none;
	border-bottom: 1px solid #CCC;
	padding-bottom: 10px;
	margin-bottom: 10px;
	}

article h2.rslt + p + ul li {
	border-bottom: 1px solid #CCC;
	padding-bottom: 10px;
	margin-bottom: 10px;
	list-style: none;
	}

nav.submenu.alphabetical li {
	float: none;
	}

nav.submenu.alphabetical li a {
	font-weight: normal;
	}

article h3.rslt + ul li p,
article h2.rslt + p + ul li p {
	margin-bottom: 0;
	}

article h3.rslt + ul li:last-child {
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
	}

article h3.rslt + ul li:first-child,
article h2.rslt + p + ul li:first-child {
	border-top: 1px solid #CCC;
	padding-top: 10px;
	margin-top: 40px;
	}

article h2.rslt + p + ul li:last-child {
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
	}

section {
	margin-top: 30px;
	}

.mouseprint {
	font-size: 13px;
	}

summary {
	margin-bottom: 10px;
	}

details {
	margin: -10px 0 10px;
	}

footer {
	border-top: 1px solid #999;
	font-size: 13px;
	margin-top: 100px;
	padding: 20px 0;
	}

footer nav {
	border: none;
	padding-top: 0;
	}

/*
	Tablet Screen Styles
*/

@media screen and (width <= 1024px) {
	body {
		text-size-adjust: 100%;
		padding: 1em;
		margin: 0 auto;
		width: 800px;
		}

	p {
		margin-bottom: 20px;
		}

	h1 {
		font-size: 30px;
		margin-bottom: 10px;
		}

	section {
		margin-top: 20px;
		}

	article ul,
	article ol {
		margin-left: 20px;
		}
	}

/*
	Small Screen Styles
*/

@media screen and (width <= 800px) {
	body {
		text-size-adjust: 100%;
		padding: 1em;
		margin: 0 auto;
		width: 90%;
		}

	img {
		max-width: 90%;
		}

	h1 {
		font-size: 20px;
		margin-bottom: 10px;
		}

	h2 {
		font-size: 20px;
		margin-bottom: 10px;
		}

	h3 {
		margin: 20px 0;
		}

	p {
		margin-bottom: 20px;
		max-width: 100%;
		}

	header p {
		display: none;
		}

	nav li {
		margin-right: 15px;
		font-size: 13px;
		}

	footer nav li {
		float: none;
		}

	section {
		margin-top: 20px;
		}

	article ul,
	article ol {
		margin-left: 20px;
		}

	footer {
		margin-top: 50px;
		}
	}
