h3 {
  color: var(--box-limed-spruce);
  font-family: var(--font-secondary);
  font-size: calc((1.7 - 1) * 1.2vh + 1rem);
  text-align: left;
  line-height: 1.3;
  margin: 30px 0;
}

h2,
h2.banner__text {
  font-family: var(--font-secondary);
  font-size: calc((3.2 - 1) * 1.2vh + 1rem);
}

p {
  margin: 16px 0;
  font-size: calc((1.1 - 1) * 1.2vw + 1rem);
}

ul {
  list-style-type: disc;
}

ol, ul {
  list-style-position: outside;
  padding-left: 2rem;
  font-size: calc(1.1 * 1rem);
}

p,
ol li,
ul li,
ol li::marker,
ul li::marker {
  font-family: var(--font-primary);
  color: var(--box-limed-spruce);
  line-height: 1.6;
}

.policy__banner {
  height: 60vh;
  background-size: cover;
  position: relative;
}

.policy__banner__text {
  color: var(--white);
  position: absolute;
  top: 50%;
  width: 100%;
  text-align: center;
}

.policy__container {
  padding: 50px 20px;
  margin: 0 auto;
}

.link {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

.link:visited {
  color: inherit;
}

.numeric_ordered_list {
  list-style-position: inside;
  padding-left: 0;
}

.numeric_ordered_list > li,
.numeric_ordered_list > li::marker {
  font-family: var(--font-secondary);
  font-size: calc((3.2 - 1) * 1.2vh + 1rem);
  text-align: left;
  line-height: 1.3;
  margin: 2rem 0;
}

.data_controller p {
  margin: 0;
}

@media screen and (min-width: 768px) {
  .policy__container {
    max-width: 50%;
  }
}

@media screen and (min-width: 1080px) {
  .terms_container {
    max-width: 720px;
  }
}
