:root { color-scheme: light; }
body {
  margin: 0;
  color: #242424;
  background: #fff;
  font: 18px/1.65 Georgia, "Times New Roman", serif;
}
header, main, footer { max-width: 1050px; margin: auto; padding: 20px 24px; }
header { border-bottom: 1px solid #ddd; }
header a, nav, h1, h2, h3, .meta, footer {
  font-family: Arial, Helvetica, sans-serif;
}
header a { font-size: 16px; }
nav { font-size: 15px; margin-bottom: 24px; }
a { color: #8c1515; text-underline-offset: 0.15em; }
a:hover, a:focus { color: #560b0b; }
a:focus-visible { outline: 2px solid #8c1515; outline-offset: 3px; }
h1 { font-size: 2em; line-height: 1.2; margin: 0.3em 0; }
h2 { margin-top: 1.6em; line-height: 1.3; }
.meta, footer { color: #555; font-size: 15px; }
article p, article li { max-width: 78ch; }
blockquote { border-left: 4px solid #8c1515; padding-left: 20px; margin-left: 0; }
table {
  display: block;
  overflow-x: auto;
  border-collapse: collapse;
  font-size: 0.85em;
  margin: 1.5em 0;
}
th, td { padding: 9px 12px; border: 1px solid #ddd; text-align: left; vertical-align: top; }
th { background: #f5f5f5; }
img { max-width: 100%; height: auto; }
pre { overflow-x: auto; padding: 16px; background: #f5f5f5; }
code { font-size: 0.9em; }
.materials li { margin-bottom: 16px; }
.materials .meta { display: block; }
.arithmatex { overflow-x: auto; }
.skip { position: absolute; left: -9999px; }
.skip:focus { left: 12px; top: 12px; background: white; padding: 8px; }
@media (max-width: 600px) {
  body { font-size: 17px; }
  header, main, footer { padding: 16px; }
  h1 { font-size: 1.65em; }
}
@media print {
  header, nav, .skip { display: none; }
  main { max-width: none; padding: 0; }
  a { color: inherit; }
  table { display: table; font-size: 9pt; }
  body { font-size: 11pt; }
}