header {
  position: sticky;
  top: 0;
  z-index: 100;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: calc(100%);
  padding-left: var(--padding);
  padding-right: var(--padding);
}

.imprint-text {
  width: calc(50% - var(--padding));
  overflow: hidden;
}

.imprint-text p {
  padding-bottom: 1em;
}

.imprint {
  position: sticky;
  top: 200px;
  font-size: 18px;
  line-height: var(--lineheight);
  z-index: 90;
}

.privacy {
  position: fixed;
  top: 0;
  left: 0;
  width: calc(100vw - var(--padding));
  padding-left: calc(50vw + 10px);
  padding-top: 200px;
  font-size: 18px;
  line-height: var(--lineheight);
  overflow-y: auto;
  max-height: 100%;
}

footer {
  position: fixed;
  left: 0;
  bottom: 0;
}

@media screen and (max-width: 800px) {
  header,
  .imprint,
  .privacy, footer {
    position: initial;
  }

  .imprint-text {
    width: 100%;
  }

  .privacy {
    padding: 0;
  }

  main {
    gap: 0.5em;
  }
}