.legal,
body.page main.container,
body.kw-regulamin-page main.container {
  max-width: var(--legal-max);
  margin: 0 auto;
  font-size: var(--legal-text);
  line-height: var(--legal-leading);
  color: #0b0d12;
}
.legal h1,
body.page main.container h1,
body.kw-regulamin-page main.container h1 {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 600;
  font-size: var(--legal-h1);
  line-height: 1.2;
  letter-spacing: -.01em;
  margin: 0 0 8px;
}
.legal h2,
body.page main.container h2,
body.kw-regulamin-page main.container h2 {
  font-weight: 600;
  font-size: var(--legal-h2);
  margin: 12px 0 8px;
  letter-spacing: .01em;
}
.legal h1 + h2,
body.page main.container h1 + h2,
body.kw-regulamin-page main.container h1 + h2 { margin-top: 10px; }
.legal h1 + *,
body.page main.container h1 + *,
body.kw-regulamin-page main.container h1 + * { margin-top: 6px !important; }
.legal > :first-child,
body.page main.container > :first-child,
body.kw-regulamin-page main.container > :first-child { margin-top: 0 !important; }
.legal section + section,
body.page main.container section + section,
body.kw-regulamin-page main.container section + section { margin-top: 6px; }
.legal ol,
body.page main.container ol,
body.kw-regulamin-page main.container ol { padding-left: 1.4rem; margin: .4rem 0 .8rem; }
.legal ul,
body.page main.container ul,
body.kw-regulamin-page main.container ul { padding-left: 1.2rem; margin: .4rem 0 .8rem; list-style: disc; }
.legal li,
body.page main.container li,
body.kw-regulamin-page main.container li { margin: .2rem 0; }
.legal a,
body.page main.container a,
body.kw-regulamin-page main.container a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.legal ol[type="a"],
body.page main.container ol[type="a"],
body.kw-regulamin-page main.container ol[type="a"] { list-style: lower-alpha; }
.legal ol[type="i"],
body.page main.container ol[type="i"],
body.kw-regulamin-page main.container ol[type="i"] { list-style: lower-roman; }
.legal h2::before,
body.page main.container h2::before,
body.kw-regulamin-page main.container h2::before { content: ""; }

/* Tighten WP block spacing on the regulamin page. */
body.kw-regulamin-page main.container .wp-block-heading{
  margin: 10px 0 8px !important;
}
body.kw-regulamin-page main.container .wp-block-heading:first-child{
  margin-top: 0 !important;
}
body.kw-regulamin-page main.container .wp-block-group,
body.kw-regulamin-page main.container .wp-block-columns{
  margin: 0 !important;
}
body.kw-regulamin-page main.container .wp-block-spacer{
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: none !important;
}
footer.legal-foot { max-width: var(--legal-max); margin: 32px auto 0; padding-top: 8px; color: #5b6574; font-size: 14px; }
