body {
	color: #222;
	background-color: #eee;
	font-family: Lato, sans-serif;
	font-size: 12pt;
	margin: 0;
	padding: 0;
	line-height: 1.5;
}

#main {
	background-color: white;
	max-width: 1000px;
	margin: 0 auto;
	padding: 2rem;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
}

#header {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
	margin: 80px 0;
}

h1 {
	font-size: 32pt;
	font-weight: normal;
	white-space: nowrap;
	margin: 0;
	padding: 0;
}

#header > div:nth-child(1) {
	animation-delay: 500ms;
}

#header > div:nth-child(2) {
	font-style: italic;
	color: #777;
	margin: 10px 20px;
	animation-delay: 750ms;
}

#header > div:nth-child(3) {
	animation-delay: 1000ms;
}

#header img {
	border: 1px solid #47b;
	padding: 5px;
}

@media only screen and (min-width: 768px) {
	#main {
		padding: 4rem;
	}

	#header {
		flex-direction: row;
		align-items: flex-end;
	}

	#header > div:nth-child(1) {
		flex: 1 1 auto;
	}

	#header > div:nth-child(2) {
		flex: 0 1 auto;
		text-align: right;
	}

	#header > div:nth-child(3) {
		flex: 0 1 auto;
	}

	h1 {
		font-size: 52pt;
	}
}

#keypoints {
	animation-delay: 1250ms;
	margin-bottom: 1rem;
}

table {
	width: 100%;
	table-layout: fixed;
	border-spacing: 0 5px;
	animation-delay: 1500ms;
}

tr {
	padding-bottom: 5px;
}

tr td:first-child {
	width: 60px;
	padding-right: 20px;
	text-align: right;
	vertical-align: top;
}

@media only screen and (min-width: 768px) {
	tr td:first-child {
		width: 120px;
	}
}

tr.sec-heading {
	padding-top: 3ex;
}

tr.sec-heading td:first-child {
	vertical-align: middle;
}

tr td:first-child hr {
	background-color: #47b;
	height: 8px;
}

tr td+td {
	width: auto;
}

h2 {
	color: #47b;
	font-size: 20pt;
	font-weight: normal;
	margin: 0;
	padding: 0;
}

h3 {
	color: #47b;
	font-size: 16pt;
	font-weight: normal;
	margin: 0;
	padding: 0;
}

.details {
	font-size: 11pt;
}

ul {
	list-style: none;
	padding-left: 1.5em;
	text-indent: -1.5em;
	margin: 0;
}

ul li::before {
	content: "\26aa";
	color: #47b;
	display: inline-block;
	width: 0;
	margin-left: 1.5em;
}

@keyframes fadeInLeftSmall {
	from {
		opacity: 0;
		-webkit-transform: translate3d(-2rem, 0, 0);
		transform: translate3d(-2rem, 0, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.fadeInLeftSmall {
	-webkit-animation-name: fadeInLeftSmall;
	animation-name: fadeInLeftSmall;
}

@keyframes fadeInRightSmall {
	from {
		opacity: 0;
		-webkit-transform: translate3d(2rem, 0, 0);
		transform: translate3d(2rem, 0, 0);
	}
	
	to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.fadeInRightSmall {
	-webkit-animation-name: fadeInRightSmall;
	animation-name: fadeInRightSmall;
}
