.site-footer, .footer {
  flex-wrap: wrap;
}

.site-legal {
  flex: 0 0 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px 18px;
  color: #605c51;
  font-size: 12px;
  line-height: 1.6;
  text-align: center;
}

.site-icp {
  flex-basis: 100%;
}

.site-legal a, .auth-policy a, .legal-document a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: .18em;
}

#auth-form .auth-policy:not([hidden]) {
  display: flex;
  align-items: start;
  gap: 8px;
  margin: 14px 0;
  color: #514d44;
  font-size: 13px;
  line-height: 1.65;
}

#auth-form .auth-policy label {
  display: inline;
  margin: 0;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

#auth-form .auth-policy input {
  flex: none;
  width: 16px;
  height: 16px;
  margin: 3px 0 0;
  accent-color: #405c4f;
}

.legal-document {
  margin: 0;
  background: #f7f3eb;
  color: #332e26;
  font: 16px/1.8 system-ui, sans-serif;
  overflow-wrap: anywhere;
}

.legal-document main {
  max-width: 44rem;
  margin: auto;
  padding: clamp(1.25rem, 5vw, 3.5rem);
}

.legal-document h1, .legal-document h2 {
  line-height: 1.35;
}

.legal-document h2 {
  font-size: 1.25rem;
  margin-top: 1.8rem;
}
