@layer components {
  /* Reading layout for the existing legal drafts; contract wording stays intact. */
  .legal-shell {
    grid-template-columns: var(--tk-size-220) minmax(0, var(--tk-size-720));
  }
  .legal-pages {
    padding-bottom: var(--tk-space-16);
    border-bottom: var(--tk-size-1) solid var(--line);
  }
  .legal-pages > a[aria-current='page'] {
    color: var(--navy);
    font-weight: var(--tk-weight-bold);
  }
  .legal-shell .docs-title h1 {
    text-wrap: pretty;
  }
  .legal-shell .docs-title .legal-draft {
    font-size: var(--tk-type-label);
    color: #76592f;
    background: #fff5e8;
    display: inline-block;
    padding: var(--tk-space-4) var(--tk-space-8);
    border-radius: var(--tk-size-4);
    line-height: var(--tk-leading-body);
  }
  .legal-copy {
    overflow-wrap: anywhere;
  }
  .legal-copy .docs-section h2 {
    text-wrap: pretty;
    font-size: var(--tk-type-lead);
    letter-spacing: var(--tk-tracking-tight);
  }
  .legal-copy .docs-section strong {
    font-weight: var(--tk-weight-bold);
  }
  .legal-copy .legal-addendum {
    padding-top: var(--tk-space-32);
    border-top: var(--tk-size-1) solid var(--line);
  }
  .legal-copy .legal-addendum h2 {
    font-size: var(--tk-type-title);
  }
  .legal-table {
    max-width: var(--tk-relative-100-percent);
    overflow-x: auto;
    margin: var(--tk-space-24) var(--tk-space-0);
    overscroll-behavior-x: contain;
  }
  .legal-table table {
    min-width: var(--tk-size-680);
    table-layout: fixed;
    width: var(--tk-relative-100-percent);
    border-collapse: collapse;
    font-size: var(--tk-type-label);
    line-height: var(--tk-leading-body);
  }
  /* Keep the data column readable instead of letting the long basis heading squeeze it. */
  .legal-table col:first-child {
    width: var(--tk-size-220);
  }
  .legal-table col:nth-child(2) {
    width: var(--tk-size-212);
  }
  .legal-table th,
  .legal-table td {
    border: var(--tk-size-1) solid #dce0e7;
    padding: var(--tk-space-12);
    text-align: left;
    vertical-align: top;
    overflow-wrap: normal;
    word-break: normal;
  }
  .legal-table th {
    background: #f5f3f8;
    color: var(--navy);
  }
  .legal-copy .legal-table ol,
  .legal-copy .legal-table ul {
    margin: var(--tk-space-0);
    padding-inline-start: var(--tk-space-24);
  }
  .legal-copy .legal-table li:last-child {
    margin-bottom: var(--tk-space-0);
  }
  .legal-copy .legal-table p {
    margin-bottom: var(--tk-space-8);
  }
  .legal-copy .legal-table p:last-child {
    margin-bottom: var(--tk-space-0);
  }
  .legal-shell .docs-contents summary svg {
    transition: transform 0.18s;
  }
  @media (max-width: 1100px) {
    .legal-shell {
      grid-template-columns: var(--tk-size-180) minmax(0, 1fr);
    }
  }
  @media (max-width: 1024px) {
    .legal-shell {
      display: block;
    }
    .legal-shell .docs-sidebar {
      top: var(--tk-size-72);
    }
    .legal-shell .docs-contents[open] summary svg {
      transform: rotate(180deg);
    }
    .legal-copy .docs-section h2 {
      font-size: var(--tk-type-lead);
    }
  }
  @media print {
    .site-header,
    .site-footer,
    .docs-sidebar,
    .skip-link,
    .docs-text-actions {
      display: none !important;
    }
    .legal-shell {
      display: block;
      width: var(--tk-relative-100-percent);
      padding: var(--tk-space-0);
    }
    .legal-copy .docs-section {
      break-inside: auto;
    }
    .legal-table {
      overflow: visible;
    }
    .legal-table table {
      min-width: 0;
    }
    .legal-copy h2 {
      break-after: avoid;
    }
    .legal-shell .legal-draft {
      border: var(--tk-size-1) solid #aaa;
    }
  }

  .legal-copy .legal-address {
    font-style: normal;
    font-weight: var(--tk-weight-regular);
    line-height: var(--tk-leading-prose);
    margin-top: var(--tk-space-20);
  }
}
