/* Terms & Conditions Page Specific Styles */

.terms-page {
  background: var(--surface-low);
  min-height: calc(100vh - var(--nav-height));
  display: flex;
  flex-direction: column;
}

.document-section {
  padding: 1.5rem 0 3rem;
  width: 100%;
}

.document-card {
  max-width: 56rem; /* 896px (max-w-4xl equivalent) */
  width: min(calc(100% - 2rem), 56rem);
  margin: 1.5rem auto 2.5rem;
  background: #ffffff;
  border: 1px solid rgba(117, 119, 127, 0.15);
  border-radius: 1.25rem;
  box-shadow: var(--shadow-ambient);
  padding: 1.5rem;
  text-align: left;
}

.document-title {
  font-family: "Hanken Grotesk", sans-serif;
  font-size: 1.5rem; /* 24px (text-headline-sm) */
  line-height: 2rem; /* 32px */
  font-weight: 600;
  color: var(--primary);
  margin: 0 0 0.5rem;
}

.document-meta {
  font-size: 0.875rem; /* 14px (text-body-sm) */
  line-height: 1.25rem; /* 20px */
  color: var(--text-muted);
  margin: 0 0 1.5rem;
}

.prose {
  font-size: 0.875rem; /* 14px (text-body-sm) */
  line-height: 1.5rem; /* 24px -> relaxed line height */
  color: var(--foreground);
}

.prose p {
  margin: 0 0 1rem;
}

.prose h2 {
  font-family: "Hanken Grotesk", sans-serif;
  font-size: 1rem; /* 16px (text-body-md) */
  line-height: 1.5rem; /* 24px */
  font-weight: 600;
  color: var(--primary);
  margin: 2rem 0 1rem;
}

@media (min-width: 640px) {
  .document-section {
    padding: 1rem 0 1rem;
  }
  
  .document-card {
    padding: 2.5rem 2rem;
    margin: 2.5rem auto 3.5rem;
  }
}
