h1 {
  margin: 4rem 0 2rem 0;
  color: black;
  border-bottom: 2px solid black;
  line-height: 1.0em;
  font-size: 2rem;
  font-weight: bold;
}

h2 {
  margin: 4rem 0 2rem 0;
  border-bottom: 1px solid #dbdbdb;
  line-height: 1.0em;
  font-size: 1.5rem;
  font-weight: bold;
}

p {
  margin: 1rem 0;
  line-height: 1.2rem;
}

blockquote {
  margin: 3rem 0;
  line-height: 1.2rem;
  font-style: italic;
  padding-left: 1em;
  color: #909090;
  border-left: 0.2em solid #515151;
}

blockquote::before {
  content: open-quote;
}

blockquote:after {
  content: close-quote;
}

ul {
  padding-left: 1.2rem;
  list-style-type: disc;
}

table th {
  background-color: darkslategray;
  color: white;
}

th,
td {
  border: 1px solid #dbdbdb;
  padding: 0.8em;
  text-align: center;
}

strong {
  font-weight: bold;
}

em {
  font-style: italic;
}

pre {
  padding: 0;
  margin: 2rem auto;
}

.hljs {
  background-color: whitesmoke;
}

/* cores */

.red {
  background-color: lightcoral;
}

.yellow {
  background-color: gold;
}

.green {
  background-color: palegreen;
}

.cyan {
  background-color: turquoise;
}

.blue {
  background-color: deepskyblue;
}

.magenta {
  background-color: magenta;
}

.orange {
  background-color: darkorange;
}

.brown {
  background-color: goldenrod;
}

.lime {
  background-color: lime;
}

.white {
  background-color: white;
}

.grey {
  background-color: whitesmoke;
}

/* flex */

.is-flex-wrap {
  flex-wrap: wrap;
}

.flex-grow-1 {
  flex-grow: 1;
}

/* auxs */

.has-margin-2rem {
  margin: 2rem;
}

.has-padding-1rem {
  padding: 1rem;
}

/* @media only screen and (max-width: 768px) {
  body {
    margin: 60px 16px;
  }
} */