.toc {
  margin: var(--spacing) 0;
  background-color: var(--lightest);
  border-radius: var(--border-radius);
  border: 1px solid var(--gris-20);
  contain: content;
  padding: 20px;
}

.toc h2 {
  font-size: 20px;
}

.intoc {
  margin: 0;
  list-style-type: none;
}

.intoc ul {
  margin-left: 1em;
}

.intoc > li {
  margin-bottom: .75em;
}

.intoc ul > li {
  margin-left: 1em;
  padding-left: .5em;
}

.intoc > li > a {
  font-weight: 600;
  margin-bottom: .75em;
}

.intoc a {
  text-wrap: balance;
  color: var(--dark);
}

.intoc a:hover {
  color: var(--primary);
}

.intoc ul > li::marker {
  content: "\22A2";
  color: var(--primary);
}

.intoc ul > li:has(ul) > a {
  font-weight: 500;
}

.item-h2:not(:last-child) {
  padding-bottom: 8px;
  border-bottom: 1px solid var(--gris-20);
}

.item-h2::before {
  color: var(--primary);
  content: "\0025CF";
  margin-right: .33em;
}