body {
	margin: 0.5rem auto;
	max-width: 42rem;
	font: 1.2em/1.62 sans-serif;
}

p,
ul {
	margin: 0.75rem 0;
}

h1,
h2,
h3,
p {
	line-height: 1.2;
}

h1,
h2,
h3 {
	font-variant: small-caps;
}

h1,
h1+p {
	margin: 0;
}
h2, h3 {
	margin: 0.25rem 0;
}

ul {
	list-style-type: none;
	padding: 0;
}

a {
	color: #000000;
	text-decoration: none;
	border-bottom: 1px dashed #000000;
	outline: none;
}

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

.caption {
	padding: 0 0.62rem;
	margin-top: 0;
	color: #666;
}

.date {
	float: right;
}

header {
	margin-bottom: 2rem;
}

header img {
	float: right;
	width: 4.5rem;
}

header,
section h1, section h2, section h3,
section p,
section ul,
section article {
	padding: 0 0.5rem;
}

section:not(:last-of-type):after {
	content: ' ';
	border-bottom: solid 1px #666;
	display: block;
	width: calc(100% - 1rem);
	margin: 0.5rem auto;
}

article.gist time {
	font-style: italics;
	color: #666;
	font-size: 0.75rem;
	display: block;
}

@media (max-width: 420px) {
	h1 {
		font-size: 1.75rem;
	}

	h1+p {
		font-size: 1rem;
	}

	header img {
		width: 3.5rem;
	}
}
