:root {
  --content-width: min(1120px, calc(100vw - 2rem));
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.text-start {
  text-align: start;
}

.text-end {
  text-align: end;
}

a {
  color: inherit;
  text-decoration: none;
}

p,
ul,
ol {
  margin-top: 0;
}

.site-shell {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100dvh;
}

.rahmen {
  width: var(--content-width);
  margin: 0 auto;
}

#inhaltsbereich .ce-row,
#inhaltsbereich .ce-column,
#inhaltsbereich .image {
  width: 100%;
}

#inhaltsbereich .ce-gallery[data-ce-columns] .ce-row {
  display: grid;
  gap: 10px;
}

#inhaltsbereich .ce-gallery[data-ce-columns] .ce-column {
  min-width: 0;
}

#inhaltsbereich .ce-gallery[data-ce-columns] .ce-column,
#inhaltsbereich .ce-gallery[data-ce-columns] .image {
  width: auto;
  max-width: none;
  margin: 0 !important;
}

#inhaltsbereich .ce-gallery[data-ce-columns="1"] .ce-column {
  width: auto;
}

#inhaltsbereich .ce-gallery[data-ce-columns="1"] .ce-row {
  grid-template-columns: 1fr;
}

#inhaltsbereich .ce-gallery[data-ce-columns="2"] .ce-row {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

#inhaltsbereich .ce-gallery[data-ce-columns="3"] .ce-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#inhaltsbereich .ce-gallery[data-ce-columns="4"] .ce-row {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

#inhaltsbereich .ce-gallery[data-ce-columns="5"] .ce-row {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

#inhaltsbereich .ce-gallery[data-ce-columns] img {
  max-width: 100%;
  height: auto;
}

#inhaltsbereich .ce-gallery figure {
  width: fit-content;
  max-width: 100%;
  margin: 0;
}

#inhaltsbereich .ce-gallery figcaption {
  width: 100%;
}

#inhaltsbereich .ce-textpic.ce-intext::after,
#inhaltsbereich .ce-textpic.ce-nowrap::after {
  content: "";
  display: table;
  clear: both;
}

#inhaltsbereich .ce-textpic.ce-left.ce-intext .ce-gallery {
  float: left;
  max-width: 50%;
  margin-right: 25px;
  margin-bottom: 15px;
}

#inhaltsbereich .ce-textpic.ce-right.ce-intext .ce-gallery {
  float: right;
  max-width: 50%;
  margin-left: 25px;
  margin-bottom: 15px;
}

#inhaltsbereich .ce-textpic.ce-left.ce-nowrap,
#inhaltsbereich .ce-textpic.ce-right.ce-nowrap {
  display: flex;
  gap: 25px;
  align-items: flex-start;
}

#inhaltsbereich .ce-textpic.ce-left.ce-nowrap .ce-gallery {
  flex: 0 0 auto;
}

#inhaltsbereich .ce-textpic.ce-right.ce-nowrap .ce-gallery {
  flex: 0 0 auto;
  order: 2;
}

#inhaltsbereich .ce-textpic.ce-nowrap .ce-bodytext {
  flex: 1 1 auto;
  min-width: 0;
}

#inhaltsbereich .tx_cn-columns .row {
  --cn-multicontent-gap: 30px;
  display: flex;
  flex-wrap: wrap;
  gap: var(--cn-multicontent-gap);
  width: 100%;
}

#inhaltsbereich .tx_cn-columns .row > div,
#inhaltsbereich .tx_cn-columns .row > div > div {
  float: none;
  clear: none;
  width: auto;
  min-width: 0;
  margin: 0;
}

#inhaltsbereich .tx_cn-columns .row > div {
  --cn-multicontent-share: 1;
  flex: 0 0 calc((100% * var(--cn-multicontent-share)) - (var(--cn-multicontent-gap) * (1 - var(--cn-multicontent-share))));
  max-width: calc((100% * var(--cn-multicontent-share)) - (var(--cn-multicontent-gap) * (1 - var(--cn-multicontent-share))));
}

/* #inhaltsbereich .tx_cn-columns[data-cols="1"] .row > div {
  --cn-multicontent-share: 1;
}

#inhaltsbereich .tx_cn-columns[data-cols="2"] .row > div {
  --cn-multicontent-share: 0.5;
}

#inhaltsbereich .tx_cn-columns[data-cols="3"] .row > div {
  --cn-multicontent-share: 0.333333;
}

#inhaltsbereich .tx_cn-columns[data-cols="4"] .row > div {
  --cn-multicontent-share: 0.25;
}

#inhaltsbereich .tx_cn-columns[data-cols="5"] .row > div {
  --cn-multicontent-share: 0.2;
} */

#inhaltsbereich .tx_cn-columns .row .col-20 {
  --cn-multicontent-share: 0.2;
}

#inhaltsbereich .tx_cn-columns .row .col-25 {
  --cn-multicontent-share: 0.25;
}

#inhaltsbereich .tx_cn-columns .row .col-33 {
  --cn-multicontent-share: 0.333333;
}

#inhaltsbereich .tx_cn-columns .row .col-40 {
  --cn-multicontent-share: 0.4;
}

#inhaltsbereich .tx_cn-columns .row .col-50 {
  --cn-multicontent-share: 0.5;
}

#inhaltsbereich .tx_cn-columns .row .col-60 {
  --cn-multicontent-share: 0.6;
}

#inhaltsbereich .tx_cn-columns .row .col-66 {
  --cn-multicontent-share: 0.666667;
}

#inhaltsbereich .tx_cn-columns .row .col-75 {
  --cn-multicontent-share: 0.75;
}

#inhaltsbereich .tx_cn-columns .row .col-80 {
  --cn-multicontent-share: 0.8;
}

#inhaltsbereich .tx_cn-columns .row .col-,
#inhaltsbereich .tx_cn-columns .row .col-100 {
  --cn-multicontent-share: 1;
}

@media (max-width: 1050px) {
  #inhaltsbereich .tx_cn-columns .row .col-50 {
    --cn-multicontent-share: 1;
    height: auto !important;
  }
}

@media (max-width: 950px) {
  #inhaltsbereich .ce-gallery[data-ce-columns="4"] .ce-row,
  #inhaltsbereich .ce-gallery[data-ce-columns="5"] .ce-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #inhaltsbereich .tx_cn-columns[data-cols="4"] .row,
  #inhaltsbereich .tx_cn-columns[data-cols="5"] .row {
    --cn-multicontent-share: 0.5;
  }

  #inhaltsbereich .tx_cn-columns[data-cols="4"] .row > div,
  #inhaltsbereich .tx_cn-columns[data-cols="5"] .row > div {
    --cn-multicontent-share: 0.5;
  }
}

@media (max-width: 830px) {
  #inhaltsbereich .ce-textpic.ce-left.ce-intext .ce-gallery,
  #inhaltsbereich .ce-textpic.ce-right.ce-intext .ce-gallery {
    float: none;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
  }

  #inhaltsbereich .ce-textpic.ce-left.ce-nowrap,
  #inhaltsbereich .ce-textpic.ce-right.ce-nowrap {
    display: block;
  }

  #inhaltsbereich .ce-textpic.ce-right.ce-nowrap .ce-gallery {
    order: initial;
  }
}

@media (max-width: 700px) {
  #inhaltsbereich .tx_cn-columns[data-cols="3"] .row {
    --cn-multicontent-share: 0.5;
  }

  #inhaltsbereich .tx_cn-columns[data-cols="3"] .row > div {
    --cn-multicontent-share: 0.5;
  }
}

@media (max-width: 560px) {
  #inhaltsbereich .tx_cn-columns[data-cols] .row {
    gap: 10px 0;
  }

  #inhaltsbereich .tx_cn-columns[data-cols] .row > div {
    --cn-multicontent-share: 1;
  }
}

@media (max-width: 450px) {
  #inhaltsbereich .ce-gallery[data-ce-columns] .ce-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  :root {
    --content-width: min(1120px, calc(100vw - 1rem));
  }
}
