[data-page="terms"],
[data-page="privacy"] {
  display: block;
  min-height: 100vh;
}

.legal-page {
  min-height: 100vh;
  color: #d1d5db;
  background: #1a1a1a;
  font-family: Poppins, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.legal-page__container {
  width: 100%;
  max-width: 48rem;
  margin: 0 auto;
  padding: 2rem 1rem;
}

.legal-page__back {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
  color: #22c55e;
  transition: color 150ms ease;
}

.legal-page__back:hover {
  color: #4ade80;
}

.legal-page__back:focus-visible {
  outline: 2px solid #4ade80;
  outline-offset: 0.25rem;
  border-radius: 0.25rem;
}

.legal-page__back-icon {
  width: 1rem;
  height: 1rem;
  flex: 0 0 auto;
}

.legal-page__title,
.legal-page__section h2 {
  color: #fff;
  font-family: Manrope, Poppins, ui-sans-serif, system-ui, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.legal-page__title {
  margin: 0 0 0.5rem;
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
}

.legal-page__updated {
  margin: 0 0 2rem;
  color: #6b7280;
}

.legal-page__content {
  font-size: 0.875rem;
  line-height: 1.625;
}

.legal-page__section + .legal-page__section {
  margin-top: 1.5rem;
}

.legal-page__section h2 {
  margin: 0 0 0.75rem;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 600;
}

.legal-page__section p,
.legal-callout p,
.legal-page__footer p {
  margin: 0;
}

.legal-page__section > p + p {
  margin-top: 0.75rem;
}

.legal-page__list + p,
.legal-page__numbered-list + p {
  margin-top: 0.75rem;
}

.legal-page strong,
.legal-callout strong {
  color: #fff;
  font-weight: 700;
}

.legal-page a:not(.legal-page__back) {
  color: #22c55e;
}

.legal-page a:not(.legal-page__back):hover {
  text-decoration: underline;
}

.legal-page code {
  color: #4ade80;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: inherit;
}

.legal-page__list,
.legal-page__numbered-list {
  margin: 0.75rem 0 0 1rem;
  padding: 0;
  list-style-position: inside;
}

.legal-page__list {
  list-style-type: disc;
}

.legal-page__numbered-list {
  margin-left: 0.5rem;
  list-style-type: decimal;
}

.legal-page__list--compact li + li,
.legal-page__list--after-copy li + li,
.legal-page__list--inside-callout li + li {
  margin-top: 0.25rem;
}

.legal-page__list--spacious li + li,
.legal-page__numbered-list li + li {
  margin-top: 0.5rem;
}

.legal-page__list--after-copy {
  margin-top: 0.5rem;
}

.legal-page__list--inside-callout {
  margin-top: 0.5rem;
  margin-left: 0.5rem;
}

.legal-page__emphasis {
  margin-top: 0.75rem !important;
  color: #4ade80;
  font-weight: 500;
}

.legal-callout {
  margin-bottom: 1rem;
  padding: 1rem;
  border: 1px solid;
  border-radius: 0.5rem;
}

.legal-callout__title {
  margin-bottom: 0.5rem !important;
  font-weight: 600;
}

.legal-callout__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.legal-callout__list li + li {
  margin-top: 0.5rem;
}

.legal-callout > p + p {
  margin-top: 0.75rem;
}

.legal-callout__title + p {
  margin-top: 0;
}

.legal-callout__keywords {
  margin-top: 0.5rem !important;
  color: #4ade80;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.legal-callout__small {
  margin-top: 0.75rem !important;
  font-size: 0.875rem;
}

.legal-callout--green {
  color: #d1d5db;
  background: rgba(20, 83, 45, 0.2);
  border-color: rgba(21, 128, 61, 0.5);
}

.legal-callout--green .legal-callout__title {
  color: #86efac;
}

.legal-callout--blue {
  background: rgba(30, 58, 138, 0.2);
  border-color: rgba(29, 78, 216, 0.5);
}

.legal-callout--blue .legal-callout__title {
  color: #93c5fd;
}

.legal-callout--amber {
  background: rgba(120, 53, 15, 0.2);
  border-color: rgba(180, 83, 9, 0.5);
}

.legal-callout--amber .legal-callout__title {
  color: #fcd34d;
}

.legal-callout--red {
  background: rgba(127, 29, 29, 0.2);
  border-color: rgba(185, 28, 28, 0.5);
}

.legal-callout--red .legal-callout__title {
  color: #fca5a5;
}

.legal-callout--gray {
  background: rgba(31, 41, 55, 0.5);
  border-color: rgba(75, 85, 99, 0.5);
}

.legal-callout--gray .legal-callout__title {
  color: #d1d5db;
}

.legal-page__footer {
  margin-top: 3rem;
  padding-top: 1.5rem;
  border-top: 1px solid #374151;
  color: #6b7280;
  font-size: 0.75rem;
  line-height: 1rem;
  text-align: center;
}
