/*
  Typeset.css
  https://github.com/joshuarudd/typeset.css
  v2.0
  Last updated: 2019-04-30
  Author: Joshua Rudd - https://joshuarudd.com
  Twitter: @joshuarudd
*/

article {
  --background-color: #F3F6FA;
  --border-color: #DBE2F2;
  --color: #324354;
  --blockquote-color: rgba(0,0,0,.2);
  --mark-color: rgba(0, 140, 255, 0.1);
  line-height: 1.0;
  text-rendering: optimizeLegibility;
}

/*
  Reset article element styles to avoid unwanted inheritance
*/

/* Adapted from http://paulirish.com/2012/box-sizing-border-box-ftw/ */
article * {
  box-sizing: border-box;
}

/* Adapted from Eric Meyer's CSS Reset: http://meyerweb.com/eric/tools/css/reset/ */
article a, article abbr, article acronym, article address, article b, article big, article cite, article code, article del, article em, article i, article ins, article kbd, article mark, article output, article q, article ruby, article s, article samp, article small, article strike, article strong, article sub, article sup, article time, article tt, article u, article var,
article dfn, article dl, article dt, article dd, article ol, article ul, article li,
article blockquote, article h1, article h2, article h3, article h4, article h5, article h6, article p, article pre,
article table, article caption, article tbody, article tfoot, article thead, article tr, article th, article td,
article applet, article canvas, article embed, article figure, article figcaption, article iframe, article img, article object {
  background: transparent;
  border: 0;
  font-size: 100%;
  font: inherit;
  line-height: 1.0;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

/*
  Baseline grid (for debugging baseline grid)
*/

article.typeset-baseline {
  background-image: linear-gradient(to bottom, magenta 0, rgba(255, 255, 255, 0) 1px);
  background-repeat: repeat-y;
  background-size: 100% 1.5em;
}

/*
  Initialize spacing and colors
*/

article li, article dt, article dd, article p, article pre, article caption, article th, article td, article figcaption {
  line-height: 1.5;
}
article caption, article dl, article dd, article div, article figcaption, article figure, article h1, article h2, article h3, article h4, article h5, article h6, article p, article pre, article table, article ol, article ul {
  margin: 0 0 1.5em 0;
}
article blockquote, article ol, article ul {
  margin-left: 2.5em;
}
article code, article pre, article th {
  background-color: #F3F6FA;
  background-color: var(--background-color);
}
article code, article pre, article th, article td {
  color: #324354;
  color: var(--color);
}
article pre, article table, article th, article td {
  border: 1px solid #DBE2F2;
  border-color: var(--border-color);
}

/*
  Inline elements
*/

article a {
  text-decoration: underline;
}
article strong, article b {
  font-weight: bolder;
}
article u, article em, article i {
  font-style: italic;
  text-decoration: none;
}
article abbr[title] {
  border-bottom: 1px dotted gray;
}
article address {
  /* no style */
}
article cite {
  font-style: italic;
}
article code {
  /* background-color set above */
  /* color set above */
  font-family: monospace;
  padding: 0.1em 0.2em;
}
article dfn {
  /* no style */
}
article del {
  color: red;
  text-decoration: line-through;
}
article ins {
  color: green;
  text-decoration: none;
}
article kbd {
  font-family: monospace;
}
article mark {
  background-color: rgba(0, 140, 255, 0.1);
  background-color: var(--mark-color);
  color: black;
}
article samp {
  font-family: monospace;
}
article small {
  color: gray;
  font-size: .75em;
}
article s {
  text-decoration: line-through;
}
article sub {
  font-size: 80%;
  vertical-align: sub;
}
article sup {
  font-size: .75em;
  vertical-align: super;
}
article var {
  font-style: italic;
}

/*
  Lists
*/

article ol, article ul {
  /* margin set above */
}
article ol ol, article ul ul, article ol ul, article ul ol {
  margin-top: 0;
  margin-bottom: 0;
}
article ol {
  list-style: decimal;
}
article ol ol {
  list-style: lower-alpha;
}
article ol ol ol {
  list-style: lower-roman;
}
article ol ol ol ol {
  list-style: decimal;
}
article ul {
  list-style: default;
}
article li {
  /* line-height set above */
}
article dl {
  /* margin set above */
}
article dt {
  font-weight: bold;
  /* line-height set above */
}
article dd {
  /* line-height set above */
  margin-top: 0;
}

/*
  Block-level elements
*/

article h1, article h2, article h3, article h4, article h5, article h6 {
  font-weight: bold;
}
article h1 {
  font-size: 2em;
  line-height: 1.25;
  margin: 0 0 .75em 0;
}
article h2 {
  font-size: 1.5em;
  line-height: 2;
  margin: 2em 0 1em 0;
}
article h3 {
  font-size: 1.25em;
  line-height: 2.4;
  margin: 1.2em 0 0 0;
}
article h4 {
  font-size: 1em;
  line-height: 1.5;
  margin: 1.5em 0 0 0;
}
article h5 {
  font-size: .75em;
  line-height: 2;
  margin: 2em 0 0 0;
}
article h6 {
  font-size: .75em;
  font-weight: inherit;
  line-height: 2;
  margin: 2em 0 0 0;
}
article p {
  /* line-height set above */
  /* margin set above */
}
article blockquote {
  border-left: .2em solid rgba(0,0,0,.2);
  border-left-color: var(--blockquote-color);
  margin-left: .2em;
  opacity: .8;
  padding-left: .8em;
}
article.wysiwyg blockquote {
  border-left: none;
  margin-left: 3em;
  opacity: 1;
}
article pre {
  /* background-color set above */
  border-radius: 2px;
  /* color set above */
  display: block;
  font-family: monospace;
  font-size: .75em;
  line-height: 2;
  margin: 0 0 2em 0;
  max-width: 100%;
  overflow: scroll;
  padding: calc(1em - 1px) 1.5em;
  white-space: pre-wrap;
}

/*
  Tables
*/

article table {
  /* border set above */
  border-collapse: collapse;
  /* margin set above */
  table-layout: auto;
}
article caption {
  caption-side: top;
  font-weight: bold;
  /* line-height set above */
  /* margin set above */
  margin-top: 0;
  text-align: left;
}
article thead {
  /* no style */
}
article tbody {
  /* no style */
}
article tfoot {
  /* no style */
}
article th, article td {
  /* border set above */
  /* color set above */
  /* line-height set above */
  padding: calc(.75em - .5px);
  text-align: left;
}
article th {
  /* background-color set above */
  font-weight: normal;
}
article td {
  /* no style */
}

/*
  Media
*/

article embed, article iframe, article img, article object {
  display: inline;
  max-width: 100%;
}
article figure {
  max-width: 100%;
  /* margin set above */
}
article figcaption {
  font-size: .75em;
  line-height: 2;
  /* margin set above */
  text-align: left;
}
