/* Legal documents: /policy, /privacy, /terms, /cookies, /consent (pages/legal.php). */
.legal-page {
  color: var(--ink);
  background: var(--paper);
}

.legal-main {
  max-width: 980px;
  padding-top: var(--header-height);
  padding-bottom: 72px;
}

.legal-doc {
  padding: 48px 56px;
  border: 1px solid rgb(255 255 255 / 76%);
  border-radius: 28px;
  background: rgb(255 255 255 / 55%);
  box-shadow: 0 18px 54px rgb(48 38 29 / 10%);
  font-size: 15px;
  line-height: 1.65;
  overflow-wrap: anywhere;
}

.legal-doc h1 {
  margin: 0 0 18px;
  color: var(--green-deep);
  font-family: var(--serif);
  font-size: 40px;
  font-weight: 500;
  line-height: 1.1;
}

.legal-doc h2 {
  margin: 36px 0 12px;
  color: var(--green-deep);
  font-family: var(--serif);
  font-size: 26px;
  font-weight: 500;
  line-height: 1.2;
}

.legal-doc h3 {
  margin: 22px 0 8px;
  font-size: 16px;
  font-weight: 600;
}

.legal-doc p {
  margin: 0 0 12px;
}

.legal-doc ul,
.legal-doc ol {
  margin: 0 0 14px;
  padding-left: 24px;
}

.legal-doc li {
  margin-bottom: 6px;
}

.legal-doc a {
  color: var(--green);
}

.legal-doc .legal-doc-meta {
  color: var(--muted);
  font-size: 14px;
}

.legal-table {
  margin: 0 0 18px;
  overflow-x: auto;
}

.legal-table table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.legal-table th,
.legal-table td {
  padding: 10px 12px;
  border: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
}

.legal-table th {
  background: var(--paper-strong);
  font-weight: 600;
}

@media (max-width: 760px) {
  .legal-main {
    padding-bottom: 40px;
  }

  .legal-doc {
    padding: 24px 18px;
    border-radius: 20px;
    font-size: 14px;
  }

  .legal-doc h1 {
    font-size: 28px;
  }

  .legal-doc h2 {
    margin-top: 28px;
    font-size: 22px;
  }

  .legal-table table {
    min-width: 520px;
  }
}
