html {
  color: #222;
  background: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  line-height: 1.65;
  overflow-wrap: break-word;
}

body {
  max-width: 640px;
  margin: 64px auto;
  padding: 0 24px;
}

h1, h2, h3 { line-height: 1.25; }
h1 { font-size: 28px; margin: 0 0 24px; }
h2 { font-size: 22px; margin: 36px 0 16px; }
h3 { font-size: 19px; margin: 28px 0 12px; }
p, ul, ol { margin: 0 0 20px; }
a { color: #174da6; text-underline-offset: 2px; }
a:visited { color: #69458b; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
ul, ol { padding-left: 24px; }
li { margin: 7px 0; }
.essays time { color: #666; font-size: 14px; margin-left: 8px; }
.home-link { margin-bottom: 36px; }
.date { color: #666; font-size: 15px; margin-top: -12px; margin-bottom: 30px; }
.feed-link { font-size: 14px; margin-top: 28px; }
.back-link { margin-top: 48px; }
blockquote { margin: 24px 0; padding-left: 20px; border-left: 2px solid #ccc; }
img, video { max-width: 100%; height: auto; }
figure { margin: 24px 0; }
figcaption { color: #666; font-size: 14px; }
pre { overflow-x: auto; padding: 14px; background: #f6f6f6; }
code { font-size: 0.85em; }
table { display: block; overflow-x: auto; border-collapse: collapse; }
th, td { text-align: left; border-bottom: 1px solid #ddd; padding: 8px 16px 8px 0; }
hr { border: 0; border-top: 1px solid #ddd; margin: 32px 0; }
.footnotes { font-size: 15px; margin-top: 32px; }

@media (max-width: 700px) {
  body { margin: 36px auto; }
}
