/** Shared long-form legal-page presentation. */
.tk-legal-page {
  background: linear-gradient(180deg, var(--tk-color-surface) 0, var(--tk-color-background) 18rem);
}

.tk-legal-page__container {
  padding-block: clamp(var(--tk-space-48), 8vw, var(--tk-space-96));
}

.tk-legal-document {
  min-width: 0;
}

.tk-legal-document__header {
  padding-block-end: clamp(var(--tk-space-32), 6vw, var(--tk-space-64));
  border-block-end: 1px solid var(--tk-color-border);
}

.tk-legal-document__draft-status {
  max-width: 46rem;
  margin-block-end: var(--tk-space-24);
  padding: var(--tk-space-16) var(--tk-space-24);
  border: 2px solid var(--tk-color-error);
  border-radius: var(--tk-radius-medium);
  background: #fff1f0;
  color: #7a1c14;
  font-weight: 800;
}

.tk-legal-document__title {
  max-width: 18ch;
  margin: 0;
  font-size: clamp(2.35rem, 7vw, 4.75rem);
}

.tk-legal-document__body {
  padding-block-start: clamp(var(--tk-space-32), 6vw, var(--tk-space-64));
  color: var(--tk-color-text-primary);
  font-size: clamp(1rem, 1.2vw, 1.075rem);
  line-height: 1.75;
}

.tk-legal-document__body > * {
  max-width: 72ch;
}

.tk-legal-document__body h2,
.tk-legal-document__body h3 {
  scroll-margin-top: 7rem;
}

.tk-legal-document__body h2 {
  margin-block: clamp(var(--tk-space-48), 7vw, var(--tk-space-64)) var(--tk-space-16);
  padding-block-start: var(--tk-space-16);
  border-block-start: 1px solid var(--tk-color-border);
  font-size: clamp(1.55rem, 3vw, 2.15rem);
  letter-spacing: -0.025em;
}

.tk-legal-document__body h3 {
  margin-block: var(--tk-space-32) var(--tk-space-12);
  font-size: clamp(1.2rem, 2vw, 1.5rem);
  letter-spacing: -0.015em;
}

.tk-legal-document__body p,
.tk-legal-document__body li {
  overflow-wrap: anywhere;
}

.tk-legal-document__body p {
  margin-block-end: var(--tk-space-16);
}

.tk-legal-document__body ul,
.tk-legal-document__body ol {
  display: grid;
  gap: var(--tk-space-8);
  margin-block: var(--tk-space-16) var(--tk-space-24);
  padding-inline-start: 1.5rem;
}

.tk-legal-document__body a {
  font-weight: 700;
  text-decoration-thickness: 0.1em;
}

.tk-legal-document__body strong {
  color: var(--tk-color-text-primary);
}

@media (max-width: 30rem) {
  .tk-legal-document__draft-status {
    padding: var(--tk-space-12) var(--tk-space-16);
  }

  .tk-legal-document__body ul,
  .tk-legal-document__body ol {
    padding-inline-start: 1.25rem;
  }
}

@media print {
  .tk-site-header,
  .tk-site-footer,
  .tk-legal-document__draft-status {
    display: none;
  }

  .tk-legal-page,
  body {
    background: #fff;
  }

  .tk-legal-page__container {
    width: 100%;
    max-width: none;
    padding: 0;
  }

  .tk-legal-document__body a {
    color: inherit;
  }
}

/* Keep legal tables readable within the existing document at narrow widths. */
.tk-legal-document__body table { width: 100%; table-layout: fixed; border-collapse: collapse; }
.tk-legal-document__body th, .tk-legal-document__body td { overflow-wrap: anywhere; vertical-align: top; padding: 0.4rem; }
