/*
SPDX-FileCopyrightText: 2026 Jorge Pérez Burgueño and Nodus contributors
SPDX-License-Identifier: AGPL-3.0-only

Legal and compliance pages deliberately avoid the campaign-like rhythm used by
the rest of the site. They are continuous documents with a restrained measure,
plain hierarchy and no decorative scene changes or reveal effects.
*/

body.legal-page { background: #09080e; }

.legal-page .page-hero {
  padding: calc(var(--nav-h) + 56px) 0 38px;
  border-bottom: 1px solid var(--membrane);
  background: none;
}
.legal-page .page-hero .scrim { max-width: 780px !important; }
.legal-page .scrim::before { display: none; }
.legal-page .page-hero .display {
  max-width: none;
  font: 600 clamp(34px, 4.2vw, 48px)/1.12 var(--serif);
  letter-spacing: -0.025em;
}
.legal-page .page-hero .lead {
  max-width: 72ch;
  margin-top: 18px;
  font-size: 16px;
  line-height: 1.7;
  color: var(--ink-prose);
}
.legal-page .page-hero .meta {
  margin: 20px 0 0;
  font-size: 13.5px;
  color: var(--ink-3);
}

.legal-page main > section {
  padding: 0;
  border: 0;
}
.legal-page main > section:first-of-type { padding-top: 50px; }
.legal-page main > section:last-of-type { padding-bottom: 88px; }
.legal-page main > section .wrap {
  width: min(100% - calc(var(--gut) * 2), 780px);
}
.legal-page .section-head {
  max-width: none;
  margin: 0;
}
.legal-page .section-head .kicker { display: none; }
.legal-page .section-head .title {
  margin: 38px 0 15px;
  font: 650 22px/1.3 var(--sans);
  letter-spacing: -0.015em;
  color: var(--ink);
  text-wrap: pretty;
}
.legal-page main > section:first-of-type .section-head .title { margin-top: 0; }
.legal-page .guide-body {
  max-width: none;
  font-size: 15.75px;
  line-height: 1.78;
  color: var(--ink-prose);
}
.legal-page .guide-body > * { margin: 0; }
.legal-page .guide-body > * + * { margin-top: 1em; }
.legal-page .guide-body ul,
.legal-page .guide-body ol { padding-left: 1.35em; }
.legal-page .guide-body li + li { margin-top: 0.75em; }
.legal-page .guide-body strong,
.legal-page .guide-body b { color: var(--ink); font-weight: 620; }
.legal-page .guide-body code {
  padding: 1px 5px;
  border: 1px solid var(--membrane);
  border-radius: 4px;
  background: var(--skin);
  font: 0.86em/1.4 var(--mono);
}
.legal-page .guide-note {
  max-width: none;
  margin-top: 38px;
  padding: 18px 20px;
  border: 1px solid var(--membrane);
  border-radius: 2px;
  background: transparent;
  font-size: 14px;
}
.legal-page .reveal {
  opacity: 1;
  transform: none;
  transition: none;
}
.legal-page .legal-table-scroll {
  max-width: 100%;
  overflow-x: auto;
  margin-top: 12px;
}
.legal-page .legal-table-scroll table {
  min-width: 680px;
  border-collapse: collapse;
  font-size: 14px;
}
.legal-page .legal-table-scroll th,
.legal-page .legal-table-scroll td {
  padding: 11px 12px;
  border-bottom: 1px solid var(--membrane);
  text-align: left;
  vertical-align: top;
}
.legal-page .legal-table-scroll th { color: var(--ink); font-weight: 620; }

@media (max-width: 720px) {
  .legal-page .page-hero { padding-top: calc(var(--nav-h) + 38px); }
  .legal-page .page-hero .display { font-size: 34px; }
  .legal-page main > section:first-of-type { padding-top: 36px; }
  .legal-page main > section:last-of-type { padding-bottom: 62px; }
  .legal-page .section-head .title { margin-top: 32px; font-size: 20px; }
  .legal-page .guide-body { font-size: 15.25px; line-height: 1.72; }
}
