:root {
  color-scheme: dark;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  background: #070b14;
  color: #f7f9fc;
  font: 16px/1.65 Inter, system-ui, sans-serif;
}

.legal-shell {
  width: min(820px, calc(100% - 32px));
  margin: 40px auto 80px;
}

.legal-card {
  padding: clamp(22px, 5vw, 48px);
  border: 1px solid #29344a;
  border-radius: 20px;
  background: #101827;
}

h1 {
  margin: 0 0 6px;
}

.legal-meta {
  color: #9aa8bf;
  font-size: 0.8rem;
}

.legal-content {
  margin-top: 28px;
  white-space: pre-wrap;
  font: inherit;
}

.legal-back,
.legal-link {
  color: #a98cff;
  text-decoration: none;
  font-weight: 800;
}

.legal-back {
  display: inline-block;
  margin-bottom: 18px;
}

.legal-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid #29344a;
}

@media (max-width: 520px) {
  .legal-shell {
    width: min(100% - 24px, 820px);
    margin-top: 24px;
    margin-bottom: 48px;
  }

  .legal-card {
    border-radius: 16px;
  }
}
