body {
	margin: 0;
	background: #fff;
	color: #333;
	font-family: "Open Sans", Arial, Helvetica, sans-serif;
	font-size: 14px;
	line-height: 1.5;
}

img { max-width: 100%; height: auto; }

a { color: #2980b9; }
a:visited { color: #7f8c8d; }

.container { width: 940px; margin: 0 auto; }

.masthead { border-bottom: 1px solid #ccc; padding: 12px 0 10px; }
.sitename { font-size: 17px; font-weight: bold; color: #333; text-decoration: none; }
.sitesub { display: block; font-size: 12px; color: #888; margin-top: 2px; }
.mainnav { margin-top: 10px; font-size: 13px; }
.mainnav a { margin-right: 14px; }

.hero img { display: block; width: 100%; }

h1 { font-size: 22px; font-weight: normal; margin: 18px 0 4px; }
h2 { font-size: 18px; font-weight: bold; color: #2980b9; margin: 24px 0 8px; }
h3 { font-size: 14px; font-weight: bold; margin: 14px 0 4px; }

p { margin: 0 0 12px; }
.subtitle { color: #888; font-size: 13px; }

ul, ol { margin: 0 0 12px; padding-left: 25px; }
li { margin-bottom: 5px; }

table { border-collapse: collapse; font-size: 13px; margin: 10px 0; }
td, th { border: 1px solid #ccc; padding: 4px 7px; text-align: left; vertical-align: top; }

figure { margin: 14px 0; }
figcaption { font-size: 12px; color: #777; margin-top: 4px; }

.notice { background: #fffbe6; border: 1px solid #e5d98f; padding: 8px 10px; margin: 12px 0; }

.toc { background: #f5f5f5; border: 1px solid #ddd; padding: 8px 12px; margin: 12px 0; font-size: 13px; }
.toc p { margin: 0 0 5px; font-weight: bold; }
.toc ul { margin: 0; }

.space20 { height: 20px; }
.space40 { height: 40px; }

.sitefoot { border-top: 1px solid #ccc; margin-top: 30px; padding: 12px 0 24px; font-size: 12px; color: #888; }
.sitefoot p { margin: 0 0 4px; }

.gone { padding: 30px 0 60px; }

@media (max-width: 960px) {
	.container { width: auto; padding: 0 12px; }
	table { display: block; overflow-x: auto; }
}
