body.mch-legal-page {
  --mch-legal-dark: #161616;
  --mch-legal-ink: var(--mch-color-ink, #1c1c1c);
  --mch-legal-red: var(--mch-color-red, #c6102e);
  --mch-legal-green: var(--mch-color-green, #00843d);
  --mch-legal-paper: var(--mch-color-paper, #f6f6f4);
  --mch-legal-line: var(--mch-color-line, #e3dfd7);
}

body.mch-legal-page .entry-content-wrap,
body.mch-legal-page .entry-content,
body.mch-legal-page article {
  overflow: visible;
}

body.mch-legal-page article h1:not(.mch-legal-hero__title),
body.mch-legal-page .entry-title,
body.mch-legal-page .page-title {
  display: none !important;
}

body.mch-legal-page .mch-legal-shell {
  background: var(--mch-legal-paper);
  color: #444;
  font-family: var(--mch-font-body, "Inter", Arial, sans-serif);
  margin-left: calc(50% - 50vw);
  width: 100vw;
}

body.mch-legal-page .mch-legal-hero {
  background: var(--mch-legal-dark);
  color: #fff;
  padding: clamp(1.55rem, 2.8vw, 2.25rem) 1.25rem;
  text-align: center;
}

body.mch-legal-page .mch-legal-hero__inner {
  margin: 0 auto;
  max-width: var(--mch-content-width, 1170px);
}

body.mch-legal-page .mch-legal-hero__title {
  color: #fff !important;
  font-family: var(--mch-font-display, "Inter", Arial, sans-serif);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.12;
  margin: 0 !important;
  padding: 0 !important;
  text-transform: none;
}

body.mch-legal-page .mch-legal-content {
  background: #fff;
  border-top: 4px solid var(--mch-legal-red);
  box-shadow: 0 14px 38px rgba(28, 28, 28, .06);
  margin: clamp(2rem, 4vw, 3.5rem) auto clamp(3.2rem, 6vw, 5rem);
  max-width: 980px;
  padding: clamp(2rem, 4.5vw, 4rem) clamp(1.25rem, 5vw, 4.6rem);
}

body.mch-legal-page .mch-legal-content h2,
body.mch-legal-page .mch-legal-content h3,
body.mch-legal-page .mch-legal-content h4 {
  color: var(--mch-legal-ink);
  font-family: var(--mch-font-display, "Inter", Arial, sans-serif);
  line-height: 1.25;
  text-transform: none;
}

body.mch-legal-page .mch-legal-content h2 {
  border-left: 4px solid var(--mch-legal-red);
  font-size: clamp(1.35rem, 2.3vw, 1.8rem);
  font-weight: 700;
  letter-spacing: .01em;
  margin: 2.2em 0 .85em;
  padding-left: .75rem;
}

body.mch-legal-page .mch-legal-content h2:first-child {
  margin-top: 0;
}

body.mch-legal-page .mch-legal-content h3 {
  color: var(--mch-legal-green);
  font-size: clamp(1.08rem, 1.8vw, 1.3rem);
  font-weight: 700;
  margin: 1.8em 0 .65em;
}

body.mch-legal-page .mch-legal-content h4 {
  font-size: 1rem;
  font-weight: 700;
  margin: 1.55em 0 .55em;
}

body.mch-legal-page .mch-legal-content p,
body.mch-legal-page .mch-legal-content li,
body.mch-legal-page .mch-legal-content td,
body.mch-legal-page .mch-legal-content th {
  font-size: clamp(.96rem, 1.2vw, 1.04rem);
  line-height: 1.75;
}

body.mch-legal-page .mch-legal-content p {
  margin: 0 0 1.15em;
}

body.mch-legal-page .mch-legal-content ul,
body.mch-legal-page .mch-legal-content ol {
  margin: .45rem 0 1.3rem 1.3rem;
  padding: 0;
}

body.mch-legal-page .mch-legal-content li {
  margin-bottom: .45rem;
  padding-left: .2rem;
}

body.mch-legal-page .mch-legal-content strong {
  color: var(--mch-legal-ink);
  font-weight: 700;
}

body.mch-legal-page .mch-legal-content a {
  color: var(--mch-legal-red);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

body.mch-legal-page .mch-legal-content a:hover,
body.mch-legal-page .mch-legal-content a:focus-visible {
  color: var(--mch-legal-green);
}

body.mch-legal-page .mch-legal-content table {
  border-collapse: collapse;
  display: block;
  margin: 1.5rem 0;
  max-width: 100%;
  overflow-x: auto;
  width: 100%;
}

body.mch-legal-page .mch-legal-content th,
body.mch-legal-page .mch-legal-content td {
  border: 1px solid var(--mch-legal-line);
  padding: .8rem;
  text-align: left;
  vertical-align: top;
}

body.mch-legal-page .mch-legal-content th {
  background: var(--mch-legal-paper);
  color: var(--mch-legal-ink);
  font-weight: 700;
}

@media (max-width: 680px) {
  body.mch-legal-page .mch-legal-hero {
    padding: 1.45rem 1rem;
  }

  body.mch-legal-page .mch-legal-content {
    border-top-width: 3px;
    box-shadow: none;
    margin: 1.25rem 0 2.5rem;
    padding: 1.7rem 1.15rem 2.3rem;
  }

  body.mch-legal-page .mch-legal-content h2 {
    margin-top: 1.8em;
  }
}
