html { font-size: 16px; -webkit-text-size-adjust: 100%; }

a, a:focus, a:visited:focus, a:hover, a:visited:hover { color: #ee0000; }
a:visited { color: #ee4444; }

.link:focus, .outline:focus { outline: 1px solid #333; }

hr { border: 0; margin-top: 2rem; }
hr, h1, h2 { margin-top: 3rem; }
li { padding: .125rem 0; }
p img { width: 100%; }
pre { font-size: 15px; overflow-x: auto; color: #333; }
a { background-color: transparent; }
textarea, input, a, body, code, div, form, h1, h2, h3, html, li, ol, p, pre, ul { box-sizing: border-box; }
button, input, optgroup, select, textarea { font-family: inherit; font-size: 1rem; line-height: 1.15; margin: 0; }
select, button, input { overflow: visible; appearance: none; -webkit-appearance: none; -moz-appearance: none; }
img { border-style: none; }

.footnotes { font-size: .75rem; }
.footnotes ol { padding: .75rem; }
.footnotes li { padding: 0; }

.b { font-weight: bold; }
.b--black { border-color: #000; }
.ba { border-width: 1px; border-style: solid; }
.bg-black { background-color: #000; }
.bg-white { background-color: #fff; }
.black { color: #000; }
.center { margin-right: auto; margin-left: auto; }
.cf { zoom: 1; }
.cf:after { clear: both; }
.cf:before, .cf:after { content: " "; display: table; }
.code, pre, code { font-family: Consolas, monaco, monospace; }
.dark-gray, .dark-gray:visited, .hover-dark-gray:hover, .hover-dark-gray:hover:visited, .hover-dark-gray:focus, .hover-dark-gray:hover:focus { color: #333; }
.db { display: block; }
.dib { display: inline-block; }
.fl { float: left; }
.gray { color: #777; }
.lh-copy { line-height: 1.5; }
.lh-solid, h1 { line-height: 1; }
.lh-title, h2, pre { line-height: 1.25; }
.mb2 { margin-bottom: 1rem; }
.mb4 { margin-bottom: 2rem; }
.mt4 { margin-top: 3rem; }
.mw-100 { max-width: 100%; }
.mw5 { max-width: 16rem; }
.mw6 { max-width: 32rem; }
.pa2 { padding: .5rem; }
.pa3 { padding: 1rem; }
.ph2 { padding-left: .5rem; padding-right: .5rem; }
.ph3 { padding-left: 1rem; padding-right: 1rem; }
.ph4 { padding-left: 2rem; padding-right: 2rem; }
.pv1 { padding-top: .25rem; padding-bottom: .25rem; }
.pv2 { padding-top: .5rem; padding-bottom: .5rem; }
.sans-serif { font-family: sans-serif; }
.w-100 { width: 100%; }
.w3 { width: 4rem; }
.w4 { width: 8rem; }
.w5 { max-width: 16rem; }
.white { color: #fff; }

.lh-title, h2, h3, pre { line-height: 1.25; }
.ni { text-indent: -.5rem; }
.f3 { font-size: 1.5rem; }
.f6 { font-size: .875rem; }
.f7 { font-size: .75rem; }
@media screen and (min-width: 30em) {
  .f4-ns, h1 { font-size: 1.25rem; }
  .f5-ns, h2 { font-size: 1rem; }
}
@media screen and (min-width: 30em) and (max-width: 60em) {
  .f3-m, h1 { font-size: 1.5rem; }
  .f4-m, h2 { font-size: 1.25rem; }
  .pl2-m { padding-right: .5rem; }
  .pr2-m { padding-right: .5rem; }
  .w-50-m { width: 50%; }
  .w-100-m { width: 100%; }
}
@media screen and (min-width: 60em) {
  .f2-l, h1 { font-size: 2.25rem; }
  .f3-l, h2 { font-size: 1.5rem; }
  .pl2-l { padding-right: .5rem; }
  .pr2-l { padding-right: .5rem; }
  .w-50-l { width: 50%; }
}
