.legal {
  --h2: 700 1.5rem/1.5 var(--font-heading);
  --h3: 700 1.2rem/1.5 var(--font-heading);
  --h4: 700 1rem/1.5 var(--font-heading);
  --indent: 2.5rem;
}

.legal a {
  white-space: nowrap;
}

.legal h2 {
  margin-block: var(--margin);
}

.legal h3 {
  margin-block: var(--margin-05);
}

.legal h2,
.legal>ol>li::before {
  font: var(--h2);
  text-transform: uppercase;
}

.legal h3,
.legal>h2+ol>li::before {
  font: var(--h3);
}

.legal ol,
.legal ul {
  padding: 0;
}

.legal ol {
  counter-reset: item;
}

.legal ol>li {
  position: relative;
  list-style: none;
}

.legal ol>li::before {
  content: counters(item, ".") ".";
  counter-increment: item;
  position: absolute;
  left: calc(var(--indent) * -1);
}

.legal>*:not(h1, h2, div),
.legal>div>*:not(h2) {
  padding-left: var(--indent);
}

.changelog ol,
.changelog li {
  list-style: disc;
}

.changelog ol>li::before {
  content: '';
  display: none;
}

.signatures {
  display: none;
  break-inside: avoid;
}

.signatures__signatures {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 1.5cm;
}

.signatures__input {
  border-bottom: 1px solid;
  height: 1cm;
  font-size: 1.25rem;
  display: flex;
  align-items: flex-end;
}

.signatures__input--signature {
  height: 2cm;
}

@media print {
  html {
    font-size: 14px;
  }

  .changelog,
  .instructions {
    display: none;
  }

  .signatures {
    display: block;
  }
}