.legal-body {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 200px;
  width: 100%;
  height: auto;
  padding: 2rem;
  box-sizing: border-box;
  background: var(--color-mass-1);
  box-shadow: 0px 0px 15px 0px var(--shadow-55);
  user-select: none;
}

.legal-content h3 {
  margin: 0;
  margin-bottom: 1.5rem;
  text-align: center;
  font-size: 1.25rem;
}

.legal-content a {
  text-decoration: underline;
  cursor: pointer;
}

.legal-content h3 a {
  text-decoration: none;
}

.legal-content p:not(:has(strong)) {
  text-align: justify;
}

.body__main {
  padding: 2rem 0 2rem 0;
}

@media only screen and (min-width: 768px) {
  .legal-body {
    padding: 3rem;
    width: calc(100% - 30vw);
    max-width: 1024px;
  }
}