.text-formatted h1 {
  font-size: var(--font-size-2xl);
  font-weight: 300;
  margin-bottom: var(--content-verical-space-xl);
  margin-top: calc(var(--content-verical-space-xl) * 2.5);
  letter-spacing: var(--letter-spacing);
  word-spacing: var(--word-spacing-xl);
  line-height: var(--line-height-2xl);
}

.text-formatted h2 {
  font-size: var(--font-size-xl);
  font-weight: 300;
  margin-bottom: var(--content-verical-space);
  margin-top: calc(var(--content-verical-space-xl) * 2.5);
  word-spacing: var(--word-spacing-xl);
  line-height: var(--line-height-xl);
  border-bottom: 1px solid var(--light-grey-2);  
}

.text-formatted h3 {
  font-size: var(--font-size-l);
  font-weight: 300;
  margin-bottom: var(--content-verical-space);
  margin-top: calc(var(--content-verical-space-l) * 2.5);
  word-spacing: var(--word-spacing-l);
  line-height: var(--line-height-l);
  border-bottom: 1px solid var(--light-grey-2);  
}

.text-formatted h4 {
  font-size: var(--font-size-m);
  font-weight: 300;
  margin-bottom: var(--content-verical-space-m);
  margin-top: calc(var(--content-verical-space-m) * 2.5);
  word-spacing: var(--word-spacing-l);
  line-height: var(--line-height-m);
}

.text-formatted h5 {
  font-size: var(--font-size);
  font-weight: 300;
  margin-bottom: var(--content-verical-space);
  margin-top: calc(var(--content-verical-space) * 2.5);
  word-spacing: var(--word-spacing-m);
  line-height: var(--line-height);
}

.text-formatted h6 {
  font-size: var(--font-size-sm);
  font-weight: 300;
  margin-bottom: var(--content-verical-space-sm);
  margin-top: calc(var(--content-verical-space-sm) * 2.5);
  word-spacing: var(--word-spacing-m);
  line-height: var(--line-height-sm);
}

.text-formatted p {
  font-size: var(--font-size);
  margin-bottom: var(--content-verical-space);
}

.text-formatted strong {
  font-weight: 500;
  color: var(--dark-grey);
}

.text-formatted ol {
  list-style-position: inside;
  margin-bottom: var(--content-verical-space);
}

.text-formatted ol li::marker {
  font-size: var(--font-size-xs);
  font-weight: 500;
}

.text-formatted ul {
  list-style-type: '⁃ ';
  list-style-position: inside;
  margin-bottom: var(--content-verical-space);
}

.text-formatted ul li::marker {
  font-weight: 700;
}

.text-formatted li {
  padding-left: .5em;
}

.text-formatted hr {
  margin: calc(var(--content-verical-space)*2) 0;
}

.text-formatted .responsive-figure-table {
  margin-bottom: var(--content-verical-space);
}

.text-formatted table {
  table-layout: fixed;
}

.text-formatted table caption {
  font-size: var(--font-size-l);
  font-weight: 300;
  letter-spacing: 3px;
  word-spacing: 4px;
  text-align: left;
}

.text-formatted table th,
.text-formatted table td {
  padding: 0.3em 1.3em;
  text-align: start;
  vertical-align: baseline;
}

.text-formatted table th > *,
.text-formatted table td > * {
  width: inherit;
  height: inherit;
}

.text-formatted table th {
  font-weight: 400;
  background-color: var(--light-grey-o-05);
}

.text-formatted table tr:nth-child(even) {
  background-color: rgba(var(--dark-grey), 0.05);
}

.text-formatted img {
  display: block;
}

.text-formatted figure.align-right,
.text-formatted article.align-right 
.text-formatted figure.align-left,
.text-formatted article.align-left {
  padding: .5em;
}

@media only screen and (max-width: 800px) {
  .text-formatted figure.align-right,
  .text-formatted article.align-right 
  .text-formatted figure.align-left,
  .text-formatted article.align-left {
    padding: 0;
    margin-left: auto;
    margin-right: auto;
    float: unset;
    margin-bottom: var(--content-verical-space);
  }
}

.text-formatted figure figcaption {
  display: inline-block;
  font-size: var(--font-size-xs);
  background-color: var(--dark-grey-o-05);
  color: var(--light-grey);;
  padding: 0.3em 0.6em;
  width: 100%;
  font-weight: 400;
  font-style: italic;
}

.text-formatted figure.align-center,
.text-formatted article.align-center {
  margin-bottom: var(--content-verical-space);
}

.text-formatted > *:first-child {
  margin-top: 0;
}

.text-formatted > *:last-child {
  margin-bottom: 0;
}
