/* Headings */
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: var(--headings-font-family);
  font-weight: var(--headings-font-weight);
  line-height: var(--headings-line-height);
  color: var(--headings-color);

  & small,
  & .small {
    font-weight: normal;
    line-height: 1;
    color: var(--headings-small-color);
  }
}

h1,
.h1,
h2,
.h2,
h3,
.h3 {
  margin-top: var(--line-height-computed);
  margin-bottom: calc(var(--line-height-computed) / 2);

  & small,
  & .small {
    font-size: 65%;
  }
}

h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin-top: calc(var(--line-height-computed) / 2);
  margin-bottom: calc(var(--line-height-computed) / 2);

  & small,
  & .small {
    font-size: 75%;
  }
}

h1,
.h1 { font-size: var(--font-size-h1); }

h2,
.h2 { font-size: var(--font-size-h2); }

h3,
.h3 { font-size: var(--font-size-h3); }

h4,
.h4 { font-size: var(--font-size-h4); }

h5,
.h5 { font-size: var(--font-size-h5); }

h6,
.h6 { font-size: var(--font-size-h6); }


/* Body text */
p {
  margin: 0 0 calc(var(--line-height-computed) / 2);
}

.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }
.text-justify { text-align: justify; }
.text-nowrap { white-space: nowrap; }

.text-lowercase { text-transform: lowercase; }
.text-uppercase { text-transform: uppercase; }
.text-capitalize { text-transform: capitalize; }

/* Lists */
ul,
ol {
  margin-top: 0;
  margin-bottom: calc(var(--line-height-computed) / 2);

  ul,
  ol {
    margin-bottom: 0;
  }
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px;

  & > li {
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px;
  }
}

/* Pre and Code */
code {
  font-family: var(--font-family-mono);
}
