/* Terms of Service page */
.terms-of-service-page {
  padding: 2rem 1rem 4rem;
  max-width: 680px;
  margin: 0 auto;
  font-weight: 400;
}

.terms-of-service__title {
  font-size: 2.25rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--primary-color);
  margin-bottom: 0.25rem;
}

.terms-of-service__updated {
  font-size: 0.9rem;
  font-weight: 400;
  opacity: 0.8;
  margin-bottom: 2.5rem;
  color: var(--secondary-color);
}

.terms-of-service__prose {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.65;
  color: var(--secondary-color);
}

.terms-of-service__prose p {
  margin-bottom: 1rem;
}

.terms-of-service__prose h2 {
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--secondary-color);
  margin-top: 2.25rem;
  margin-bottom: 0.6rem;
}

.terms-of-service__prose h2:first-of-type {
  margin-top: 0;
}

.terms-of-service__prose ul {
  margin: 0 0 1rem;
  padding-left: 1.4rem;
}

.terms-of-service__prose li {
  margin-bottom: 0.6rem;
}

.terms-of-service__prose li strong {
  font-weight: 500;
}

.terms-of-service__prose a {
  color: var(--primary-color);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.2s ease;
}

.terms-of-service__prose a:hover {
  text-decoration: underline;
}

@media (max-width: 768px) {
  .terms-of-service__title {
    font-size: 1.75rem;
  }

  .terms-of-service__prose h2 {
    font-size: 1.1rem;
  }
}
