.service-terms-page {
  min-height: calc(100dvh - 8rem);
  padding: clamp(2rem, 6vw, 5rem) var(--gutter);
  background-color: var(--ice);
  background-image:
    linear-gradient(135deg, rgba(238, 240, 233, 0.52), rgba(238, 240, 233, 0.08) 68%, transparent),
    radial-gradient(circle, rgba(9, 10, 8, 0.12) 0.08rem, transparent 0.09rem);
  background-repeat: no-repeat, repeat;
  background-size: 100% 100%, 1.35rem 1.35rem;
}

.service-terms-page__intro,
.service-terms-page__policy {
  width: min(100%, 52rem);
  margin-inline: auto;
}

.service-terms-page__intro {
  margin-bottom: clamp(2rem, 6vw, 4rem);
}

.service-terms-page__intro h1 {
  max-width: 16ch;
  margin-bottom: 0.45rem;
  font-size: clamp(2.6rem, 8vw, 6rem);
}

.service-terms-page__intro p,
.service-terms-page__policy p {
  max-width: 72ch;
}

.service-terms-page__policy {
  display: grid;
  gap: 1.5rem;
  padding: clamp(1.25rem, 4vw, 2.5rem);
  border: 0.12rem solid var(--ink);
  background: var(--white);
  box-shadow: 0.45rem 0.45rem 0 var(--ink);
}

.service-terms-page__policy + .service-terms-page__policy {
  margin-top: 2.5rem;
}

.service-terms-page__policy h2 {
  font-size: clamp(1.8rem, 5vw, 3.2rem);
}

.service-terms-page__policy h3 {
  margin-bottom: 0.5rem;
  font-size: 1.2rem;
  line-height: 1.15;
}

.service-terms-page__policy p:last-child {
  margin-bottom: 0;
}
