/* Import Montserrat font */
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap");

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body,
html {
  margin: 0;
  padding: 0;
  font-family: "Montserrat", sans-serif;
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
}

.container {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 20px;
}

section {
  margin: 20px 0;
}

p {
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 10px;
  color: black;
}

.heading {
  font-size: 24px;
  font-weight: 700;
  line-height: 30px;
  color: black;
  margin-bottom: 20px;
  text-align: center;
}

.title {
  font-size: 18px;
  font-weight: 700;
  line-height: 30px;
  color: black;
}

.toc a {
  text-decoration: none;
}

.toc a p {
  cursor: pointer;
}

.list {
  padding-left: 30px;
  list-style-type: disc;
}

.list li {
  margin-bottom: 10px;
}

.list a {
  text-decoration: none;
  color: black;
}

table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 10px;
}

table p {
  margin-bottom: 0;
}

.table-2-row,
.table-3-row {
  table-layout: fixed;
}

th,
td {
  padding: 10px;
  text-align: left;
  border: 1px solid #ddd;
  word-break: break-word;
}

td p:not(:last-child) {
  margin-bottom: 10px;
}

thead th {
  font-weight: 700;
}

tbody tr:nth-child(even) {
  background-color: #ffffff;
}

tbody tr:nth-child(odd) {
  background-color: #f2f2f2;
}

.table-2-row col:nth-of-type(1) {
  width: 40%;
}

.table-2-row col:nth-of-type(2) {
  width: 60%;
}

.table-3-row col:nth-of-type(1) {
  width: 15%;
}

.table-3-row col:nth-of-type(2) {
  width: 70%;
}

.table-3-row col:nth-of-type(3) {
  width: 15%;
}

/* Documents tables: 3 columns with 60% / 20% / 20% */
.table-documents {
  table-layout: fixed;
}

.table-documents col:nth-of-type(1) {
  width: 60%;
}

.table-documents col:nth-of-type(2) {
  width: 20%;
}

.table-documents col:nth-of-type(3) {
  width: 20%;
}

@media screen and (max-width: 768px) {
  th,
  td {
    padding: 5px;
    font-size: 13px;
  }

  th p,
  td p {
    font-size: 13px;
  }

  .table-3-row col:nth-of-type(1) {
    width: 25%;
  }

  .table-3-row col:nth-of-type(2) {
    width: 50%;
  }

  .table-3-row col:nth-of-type(3) {
    width: 25%;
  }

  .table-documents col:nth-of-type(1) {
    width: 40%;
  }

  .table-documents col:nth-of-type(2) {
    width: 40%;
  }

  .table-documents col:nth-of-type(3) {
    width: 20%;
  }
}

ol {
  list-style-type: none;
  counter-reset: item;
  padding-left: 0;
}

ol > li {
  display: block;
  counter-increment: item;
  margin-bottom: 10px;
  position: relative;
  padding-left: 30px;
}

ol > li:before {
  content: counter(item) ". ";
  position: absolute;
  left: 0;
  width: 25px;
  text-align: right;
  margin-right: 5px;
}

ol ol {
  counter-reset: subitem;
  padding-left: 20px;
  margin-top: 6px;
}

ol ol > li {
  counter-increment: subitem;
}

ol ol > li::before {
  content: counter(subitem) ") ";
  position: absolute;
  left: 0;
  width: 25px;
  text-align: right;
  margin-right: 5px;
}
