.text {
  font-size: var(--font-size-medium);
}
.text > * {
  margin: 1.5rem 0;
}

.text p {
  max-width: 96ch;
  /* for empty paragraphs */
  min-height: 1em;
}
.text hr {
  margin: 2rem 0;
  max-width: 16ch;

  content: " ";
  display: block;
  clear: both;
}
.text pre {
  width: 0;
  min-width: 100%;
  background: var(--gris-beige-fonce);
  color: white;
  padding: 1rem;
  overflow: auto;
}

.text figure {
  --figure-margin: 2px;
  margin-left: calc(-1 * var(--padding-content) + var(--figure-margin));
  margin-right: calc(-1 * var(--padding-content) + var(--figure-margin));

  display: flex;
  text-align: center;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;

  page-break-inside: avoid;
}
.text figure[data-float="left"] {
  float: left;
  width: var(--width, 50%);
  margin: 1rem;
  margin-left: 0;
  margin-top: 0;
}
.text figure[data-float="right"] {
  float: right;
  width: var(--width, 50%);
  margin: 1rem;
  margin-right: 0;
  margin-top: 0;
}

.text figure img {
  flex: 0 0 auto;
}

.text figcaption {
  font-size: var(--font-size-small);
  text-align: center;
  color: var(--gris-beige-moyen);
  margin-top: 0.25rem;
}
.text figure iframe {
  margin: 0;
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
  border: 4px solid var(--beige-fond);
}

.text blockquote {
  margin: 2rem auto;
  border-left: 2px solid var(--part-color);
  padding-left: 1rem;
  font-size: var(--font-size-large);
  max-width: 40ch;
}
@media (min-width: 1024px) {
  .text blockquote {
    margin-left: 10ch;
  }
}

.text blockquote footer {
  margin-top: 0.56rem;
  font-style: italic;
  font-size: var(--font-size-small);
}

.text figure ul {
  list-style: none;
  padding: 0;

  display: flex;
  flex-flow: row nowrap;
  gap: 0.5rem;
  margin: 0;
  /* background: var(--beige-fond); */
  border: 4px solid var(--beige-fond);
  align-items: center;
}
.text figure ul li {
  flex: 1 1 0;
}
.text figure ul li img {
  display: block;
}
