@charset "UTF-8";
details {
  --_duration: 0.5s;
}
details summary {
  position: relative;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  font-size: 110%;
  padding: 0.8rem 0;
  line-height: 1.3;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
details summary:focus-visible {
  outline: 0.125rem solid var(--highlight);
  outline-offset: 0.5rem;
}
details summary h3 {
  all: unset;
  text-transform: uppercase;
}
details summary:hover {
  cursor: pointer;
}
details summary:after {
  content: "󰅀";
  font-family: "Material Design Icons";
  transition: 0.2s;
}
details summary::marker, details summary::-webkit-details-marker {
  display: none;
}
details[open] > summary::after {
  transform: rotate(180deg);
}
@media (prefers-reduced-motion: no-preference) {
  details {
    interpolate-size: allow-keywords;
  }
}
details::details-content {
  opacity: 0;
  block-size: 0;
  overflow-y: clip;
  transition: content-visibility var(--_duration) allow-discrete, opacity var(--_duration), block-size var(--_duration);
}
details[open]::details-content {
  opacity: 1;
  block-size: auto;
}
/* bebas-neue-regular - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Bebas Neue";
  font-style: normal;
  font-weight: 400;
  src: url("/project/fonts/bebas-neue-v14-latin-regular.woff2") format("woff2"), url("/project/fonts/bebas-neue-v14-latin-regular.ttf") format("truetype");
  /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
:root, .root {
  --font-headlines: "Bebas Neue";
  --font-bebas-neue: "Bebas Neue";
}
input[type="submit"], input[type="button"], button, button:focus, button:active, a.button {
  background: var(--highlight);
  box-sizing: border-box;
  border: none;
  font-size: inherit;
  cursor: pointer;
  padding: calc(0.5rem + 0.2vw) 2rem;
  min-width: 12rem;
  color: var(--highlight-contrast);
  hyphens: none;
  text-decoration: none;
  text-align: left;
  z-index: 100;
  display: inline-flex;
  text-decoration: none !important;
  justify-content: center;
  border: 1px solid transparent;
  line-height: 1.3;
  border-radius: 4rem;
  overflow: hidden;
}
input[type="submit"]:before, input[type="button"]:before, button:before, button:focus:before, button:active:before, a.button:before {
  position: relative !important;
  content: "󰁔";
  margin-right: 0.5rem;
  font-family: "Material Design Icons";
}
input[type="submit"]:not(.btn-outline), input[type="button"]:not(.btn-outline), button:not(.btn-outline), button:focus:not(.btn-outline), button:active:not(.btn-outline), a.button:not(.btn-outline) {
  position: relative;
}
input[type="submit"]:not(.btn-outline):hover:after, input[type="button"]:not(.btn-outline):hover:after, button:not(.btn-outline):hover:after, button:focus:not(.btn-outline):hover:after, button:active:not(.btn-outline):hover:after, a.button:not(.btn-outline):hover:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.1);
}
input[type="submit"]:hover, input[type="button"]:hover, button:hover, button:focus:hover, button:active:hover, a.button:hover {
  background: var(--highlight);
  color: var(--highlight-contrast);
  border-color: var(--highlight);
}
input[type="submit"].btn-outline, input[type="button"].btn-outline, button.btn-outline, button:focus.btn-outline, button:active.btn-outline, a.button.btn-outline {
  background: transparent;
  border-color: var(--text);
  color: var(--text);
}
input[type="submit"].btn-outline:hover, input[type="button"].btn-outline:hover, button.btn-outline:hover, button:focus.btn-outline:hover, button:active.btn-outline:hover, a.button.btn-outline:hover {
  background: var(--highlight);
  color: var(--highlight-contrast);
  border-color: var(--highlight);
}
@media (min-width: 768px) {
  main .button + .button {
    margin-left: var(--pspace);
  }
}
@media (max-width: 768px) {
  main .button + .button {
    margin-top: 1rem;
  }
}
.ce_cd > div {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 1.5rem 3rem;
  align-items: center;
}
@media (max-width: 798px) {
  .ce_cd > div {
    grid-template-columns: 100%;
  }
}
.ce_cd > div .info {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.ce_cd > div .buttongroup {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.ce_cd > div .buttongroup .image_container img {
  height: 50px;
}
dl {
  padding: 0;
  margin: 0;
  display: inline-grid;
  grid-template-columns: auto auto;
  gap: 0 0.5em;
}
dl dl, dl dd {
  all: unset;
}
dl:not(:last-child) {
  margin-bottom: var(--pspace);
}
.ce_footer {
  font-size: 80%;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem 3rem;
  /*
	display:flex; gap:1rem 3rem; flex-wrap: wrap;  
	@media(max-width:768px){
		flex-direction: column;
	}



	.mod_customnav{
		//footernav
		ul { padding:0; margin:0; list-style:none;  display:flex; flex-direction: column;
			
			li{ padding:0; margin:0;
				
				a { 
					padding-left:0; position: relative; 
					@media (max-width: 768px) {
						padding:5px 10px 5px 10px; margin:2px 0; display:block; 
						&:before { left:12px; top:4px; }
						background:rgba(0,0,0,0.1); text-decoration: none;
					}
				}
			}
		}
	}

	> .group{ display:flex; flex-direction: column; gap:1em;
		@media(min-width:1100px){
			margin-left: auto;
		}

		@media(min-width:768px)and (max-width:1100px){
			flex-direction: row; flex-basis: 100%; justify-content: space-between; align-items: center;
			border-top: 1px solid var(--link); padding-top: 1rem;
			.mod_customnav ul{ border-bottom: none; }
		}
	} 
	*/
}
@media (min-width: 700px) {
  .ce_footer {
    align-items: flex-end;
  }
}
@media (max-width: 700px) {
  .ce_footer {
    font-size: 90%;
    flex-direction: column;
  }
}
@media (min-width: 1300px) {
  .ce_footer {
    padding-top: calc(var(--slopsize) + 1rem) !important;
  }
}
.ce_footer > .address {
  display: flex;
  gap: 1.5rem;
}
@media (max-width: 1030px) {
  .ce_footer > .address {
    flex-direction: column;
  }
}
.ce_footer > .address > .image_container img {
  height: 75px;
}
.ce_footer .g {
  display: flex;
  gap: 1.5rem;
  align-items: flex-end;
}
.ce_footer:after {
  content: "";
  top: calc(1.5 * var(--space));
  bottom: 1.5rem;
  width: 28%;
  position: absolute;
  right: 0;
  opacity: 0.07;
  pointer-events: none;
  background: url(/media/triangle-logo-2020-white.svg) no-repeat right bottom;
  background-size: contain;
}
@media (max-width: 700px) {
  .ce_footer:after {
    width: 67%;
  }
}
.ce_footer.bigspace {
  padding-bottom: 3rem;
}
.ce_footer .mod_customnav {
  line-height: 2;
}
@media (min-width: 700px) {
  .ce_footer .mod_customnav {
    display: flex;
    gap: 3rem;
  }
  .ce_footer .mod_customnav::before {
    content: "";
    border-left: 1px solid rgba(255, 255, 255, 0.1);
    border-right: 1px solid rgba(0, 0, 0, 0.5);
    display: block;
  }
}
.ce_footer .mod_customnav ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
}
.ce_footer .mod_customnav ul > li a {
  font-weight: 300;
}
.ce_footer .mod_customnav ul a.button {
  margin: 1rem 0;
}
.ce_footer .mod_customnav ul > li:not(:first-child):before {
  content: "";
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.5);
  display: block;
}
.ce_footer .social-media {
  display: flex;
  gap: 1rem;
}
.ce_footer .social-media img {
  height: 35px;
  filter: grayscale(1);
}
/* ratio for divs and other elements */
.ratio {
  position: relative;
  max-width: 100%;
  width: 100%;
  overflow: hidden;
}
.ratio > * {
  position: absolute !important;
  top: 0;
  left: 0;
  height: 100%;
  width: 100% !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.ratio > * > * {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.ratio.ratio1x1 {
  padding-top: 100%;
}
.ratio.ratio16x5 {
  padding-top: calc((5 / 16) * 100%) !important;
}
.ratio.ratio16x9 {
  padding-top: calc((9 / 16) * 100%) !important;
}
.ratio.ratio4x3 {
  padding-top: calc((3 / 4) * 100%) !important;
}
.ratio.ratio3x2 {
  padding-top: calc((2 / 3) * 100%) !important;
}
.ratio.ratio8x5 {
  padding-top: calc((5 / 8) * 100%) !important;
}
iframe, .iframe {
  width: 100% !important;
  display: block;
  border: none;
}
iframe iframe, .iframe iframe {
  width: 100%;
  height: 100% !important;
}
.embed_wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  flex: 1;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  background: rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.1);
}
.embed_wrapper .image_container {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.embed_wrapper .image_container * {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.embed_wrapper .content {
  position: relative;
  padding: 1em;
  z-index: 100;
  font-size: 90%;
  line-height: 1.3;
  width: 100%;
}
.embed_wrapper .content:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--bgbody);
  opacity: 0.8;
  z-index: -1;
}
.ce_googlecalendar .event {
  filter: drop-shadow(0px 11px 18px rgba(0, 0, 0, 0.25));
}
.ce_googlecalendar .event .eventname {
  font-weight: 500;
  line-height: 1.2;
  font-size: 180%;
  font-family: var(--font-headlines);
  text-align: center;
  text-transform: uppercase;
  text-wrap: balance;
}
.ce_googlecalendar .day {
  font-size: 180%;
}
.ce_googlecalendar .showtime {
  text-align: center;
}
.ce_googlecalendar .eventdescription {
  text-align: center;
  font-size: 80%;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.ce_googlecalendar .eventdescription .button {
  margin-top: auto;
}
.ce_googlecalendar.table {
  font-size: 80%;
}
.ce_googlecalendar.table .calendar {
  display: grid;
  grid-template-columns: 100%;
  gap: 1px;
}
.ce_googlecalendar.table .time {
  display: flex;
  flex-direction: column;
  padding: 5px;
  justify-content: center;
  align-items: center;
  line-height: 1.2;
  color: var(--highlight-contrast);
  background: var(--text);
  grid-row: 1 / 4;
}
.ce_googlecalendar.table .event {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 0 1em;
  background: var(--bgcolor);
}
.ce_googlecalendar.table .event > * {
  padding: 0;
  margin: 0;
  text-align: left;
}
.ce_googlecalendar.table .event .eventname {
  padding: 0.5em 0 0 0;
}
.ce_googlecalendar.table .event .eventdescription {
  padding: 0 1em 1em 0;
}
@media (max-width: 768px) {
  .ce_googlecalendar:not(.table) {
    font-size: 80%;
  }
  .ce_googlecalendar:not(.table) .calendar {
    display: grid;
    grid-template-columns: 100%;
    gap: 1px;
  }
  .ce_googlecalendar:not(.table) .time {
    display: flex;
    flex-direction: column;
    padding: 5px;
    justify-content: center;
    align-items: center;
    line-height: 1.2;
    color: var(--highlight-contrast);
    background: var(--text);
    grid-row: 1 / 4;
  }
  .ce_googlecalendar:not(.table) .event {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 1em;
    background: var(--bgcolor);
  }
  .ce_googlecalendar:not(.table) .event > * {
    padding: 0;
    margin: 0;
    text-align: left;
  }
  .ce_googlecalendar:not(.table) .event .eventname {
    padding: 1em 1em 0 0;
  }
  .ce_googlecalendar:not(.table) .event .eventdescription {
    padding: 0 1em 1em 0;
  }
  .ce_googlecalendar:not(.table) .event .showtime {
    border-top: 1px solid rgba(0, 0, 0, 0.3);
    padding-top: 1rem;
  }
}
@media (min-width: 768px) {
  .ce_googlecalendar:not(.table) .calendar {
    display: grid;
    gap: 3rem;
    grid-template-columns: repeat(2, 1fr);
  }
  .ce_googlecalendar:not(.table).cols_1 .calendar {
    grid-template-columns: 100%;
  }
  .ce_googlecalendar:not(.table) .event {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    position: relative;
    padding: 0 1rem 1rem 1rem;
  }
  .ce_googlecalendar:not(.table) .event:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--bgcolor);
    clip-path: polygon(0 1rem, 100% 0, 100% 100%, 0% 100%);
    z-index: 0;
  }
  .ce_googlecalendar:not(.table) .event:after {
    content: "";
    position: absolute;
    top: -5px;
    left: 1px;
    right: 1px;
    bottom: 1px;
    background: var(--highlight);
    clip-path: polygon(0 1rem, 100% 0, 100% 100%, 0% 100%);
    z-index: -1;
  }
  .ce_googlecalendar:not(.table) .event .time {
    display: flex;
    flex-direction: column;
    padding: 5px;
    justify-content: center;
    align-items: center;
    line-height: 1.2;
    color: var(--highlight-contrast);
    background: var(--text);
    margin: 0 -1rem;
    padding-top: 1rem;
    clip-path: polygon(0 1rem, 100% 0, 100% 100%, 0% 100%);
  }
  .ce_googlecalendar:not(.table) .event > * {
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 100;
  }
  .ce_googlecalendar:not(.table) .event .eventdescription {
    align-items: center;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .ce_googlecalendar:not(.table) .calendar {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 768px) {
  .ce_googlecalendar .tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 0 2rem;
  }
}
.ce_googlecalendar .tabs details + article {
  display: none;
  padding-top: var(--space);
}
.ce_googlecalendar .tabs details {
  order: 1;
}
.ce_googlecalendar .tabs details summary {
  position: relative;
  cursor: pointer;
}
.ce_googlecalendar .tabs details summary h2 {
  margin: 0;
  font-weight: 600;
}
@media (min-width: 768px) {
  .ce_googlecalendar .tabs details summary {
    display: flex;
    flex-direction: column;
    align-items: center;
    border-bottom: none;
  }
  .ce_googlecalendar .tabs details summary:before, .ce_googlecalendar .tabs details summary:after {
    display: none;
  }
  .ce_googlecalendar .tabs details summary:before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 5px;
    opacity: 1;
    display: block;
    background-color: var(--title);
    transition: 0.5s ease-in-out;
    z-index: 1;
    width: 0;
  }
}
.ce_googlecalendar .tabs details[open] > summary {
  pointer-events: none;
}
.ce_googlecalendar .tabs details[open] > summary:before {
  width: 100%;
}
.ce_googlecalendar .tabs details[open] + article {
  position: relative;
  display: block;
  width: 100%;
  order: 100;
}
@media (min-width: 768px) {
  .ce_googlecalendar .tabs details[open] + article:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -100%);
    height: 5px;
    opacity: 1;
    display: block;
    background-color: rgba(0, 0, 0, 0.1);
    z-index: -1;
    width: 100vw;
  }
}
.flextab {
  display: flex !important;
  flex-wrap: wrap;
  margin: 0 -20px;
}
.flextab > * {
  padding: 0 20px !important;
}
.flextab .flex2 > * {
  flex: 2;
}
.flextab .flex3 > * {
  flex: 3;
}
.flextab .flex4 > * {
  flex: 4;
}
.flextab .flex5 > * {
  flex: 5;
}
.flextab.auto > * {
  flex: 1;
}
.flextab.spacebetween {
  justify-content: space-between;
}
.flextab.space-arround {
  justify-content: space-around;
}
.flextab.morespace {
  margin: 0 -40px;
}
.flextab.morespace > * {
  padding: 40px !important;
}
.flextab.c2 > * {
  max-width: calc(100%/2);
  flex-basis: calc(100%/2);
}
.flextab.c3 > * {
  max-width: calc(100%/3);
  flex-basis: calc(100%/3);
}
.flextab.c4 > * {
  max-width: calc(100%/4);
  flex-basis: calc(100%/4);
}
.flextab.c5 > * {
  max-width: calc(100%/5);
  flex-basis: calc(100%/5);
}
.flextab.c6 > * {
  max-width: calc(100%/6);
  flex-basis: calc(100%/6);
}
.flextab.c7 > * {
  max-width: calc(100%/7);
  flex-basis: calc(100%/7);
}
.flextab.c8 > * {
  max-width: calc(100%/8);
  flex-basis: calc(100%/8);
}
@media (max-width: 900px) {
  .flextab.c6 > *, .flextab.c5 > *, .flextab.c7 > * {
    min-width: calc(100%/3);
  }
  .flextab.c4 > *, .flextab.c2 > *, .flextab.c5 > * {
    min-width: calc(100%/2);
  }
  .flextab.small {
    max-width: 60%;
    margin: 0 auto;
  }
}
.flex-grow * {
  flex-grow: 1;
  max-width: none !important;
}
.flex-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.flex-center {
  display: flex !important;
}
.flex-center > * {
  display: flex;
  align-items: center;
  justify-content: center;
}
.flex-start {
  align-self: flex-start;
}
.flex-bottom, .flex-end {
  align-self: flex-end;
}
.flex-col-center {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.flex-col-bottom {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.space-between {
  justify-content: space-between;
}
.space-arround {
  justify-content: space-around;
}
.align-center {
  align-items: center;
}
.align-center .c > * {
  display: flex;
  align-items: center;
  justify-content: center;
}
.justify-center .rows {
  justify-content: center;
}
/* ROWS */
.rows.slick-initialized {
  margin: 0 calc((calc(var(--space)/2)) * -1);
}
.rows.slick-initialized .item {
  margin: 0 calc(var(--space)/2);
}
.rows > * {
  position: relative;
  box-sizing: border-box;
  max-width: 100%;
  width: 100%;
}
@media (max-width: 600px) {
  .rows:not(.slick-initialized) {
    display: flex;
    flex-direction: column;
  }
}
@media (min-width: 600px) {
  .rows:not(.slick-initialized) {
    padding: 0;
    margin: 0 calc(calc(var(--space)/2) * -1);
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
  }
  .rows:not(.slick-initialized) > * {
    position: relative;
    flex-basis: auto;
    margin: 0 calc(var(--space)/2);
  }
}
.rows:not(.slick-initialized).nomargin {
  margin: 0;
}
.rows:not(.slick-initialized).nomargin > * {
  margin: 0;
}
@media (min-width: 600px) {
  .rows:not(.slick-initialized).nomargin.c-2 > * {
    flex-basis: 50%;
    max-width: 50%;
  }
}
@media (min-width: 768px) {
  .rows:not(.slick-initialized).nomargin.c-3 > * {
    flex-basis: calc((100% / 3));
    max-width: calc((100% / 3));
    overflow: hidden;
  }
  .rows:not(.slick-initialized).nomargin.c-6 > * {
    flex-basis: calc((100% / 6));
    max-width: calc((100% / 6));
    overflow: hidden;
  }
  .rows:not(.slick-initialized).nomargin.c-5 > * {
    flex-basis: calc((100% / 5));
    max-width: calc((100% / 5));
    overflow: hidden;
  }
  .rows:not(.slick-initialized).nomargin.c-4 > * {
    flex-basis: calc((100% / 4));
    max-width: calc((100% / 4));
    overflow: hidden;
  }
}
@media (min-width: 768px) {
  .rows:not(.slick-initialized).nomargin.c-auto {
    display: flex;
    flex: 1;
    flex-wrap: wrap;
    flex-grow: 1;
  }
  .rows:not(.slick-initialized).nomargin.c-auto > * {
    flex: 1;
  }
  .rows:not(.slick-initialized).nomargin .c.c-2 {
    max-width: calc((100% / 2));
  }
  .rows:not(.slick-initialized).nomargin .c.c-3 {
    max-width: calc((100% / 3));
  }
  .rows:not(.slick-initialized).nomargin .c.c-4 {
    max-width: calc((100% / 4));
  }
}
@media (min-width: 600px) {
  .rows:not(.slick-initialized):not(.nomargin).c-2 > * {
    flex-basis: calc(50% - (calc(var(--space)/2) * 2));
    max-width: calc(50% - (calc(var(--space)/2) * 2));
  }
}
@media (min-width: 768px) {
  .rows:not(.slick-initialized):not(.nomargin).c-3 > * {
    flex-basis: calc((100% / 3) - (calc(var(--space)/2) * 2));
    max-width: calc((100% / 3) - (calc(var(--space)/2) * 2));
    overflow: hidden;
  }
  .rows:not(.slick-initialized):not(.nomargin).c-6 > * {
    flex-basis: calc((100% / 6) - (calc(var(--space)/2) * 2));
    max-width: calc((100% / 6) - (calc(var(--space)/2) * 2));
    overflow: hidden;
  }
  .rows:not(.slick-initialized):not(.nomargin).c-5 > * {
    flex-basis: calc((100% / 5) - (calc(var(--space)/2) * 2));
    max-width: calc((100% / 4) - (calc(var(--space)/2) * 2));
    overflow: hidden;
  }
  .rows:not(.slick-initialized):not(.nomargin).c-4 > * {
    flex-basis: calc((100% / 4) - (calc(var(--space)/2) * 2));
    max-width: calc((100% / 4) - (calc(var(--space)/2) * 2));
    overflow: hidden;
  }
}
@media (min-width: 768px) {
  .rows:not(.slick-initialized):not(.nomargin).c-auto {
    display: flex;
    flex: 1;
    flex-wrap: wrap;
    flex-grow: 1;
  }
  .rows:not(.slick-initialized):not(.nomargin).c-auto > * {
    flex: 1;
  }
  .rows:not(.slick-initialized):not(.nomargin) .c.c-3 {
    max-width: calc((100% / 3)  - (calc(var(--space)/2) * 2));
  }
  .rows:not(.slick-initialized):not(.nomargin) .c.c-2 {
    max-width: calc((100% / 2) - (calc(var(--space)/2) * 2));
  }
  .rows:not(.slick-initialized):not(.nomargin) .c.c-4 {
    max-width: calc((100% / 4) - (calc(var(--space)/2) * 2));
  }
}
@media (max-width: 768px) {
  .flex-text.rows > *, .flex-text .rows > * {
    flex-basis: 100% !important;
    max-width: 100% !important;
  }
  .flex-text.rows > *:not(:last-child), .flex-text .rows > *:not(:last-child) {
    margin-bottom: var(--pspace);
  }
}
.ce_header .mod_navigation a {
  padding: 0.7rem 1rem;
  position: relative;
  display: block;
}
@media (max-width: 1300px) {
  .ce_header .mod_navigation a {
    padding: 0.5rem 1.5rem;
  }
}
@media (min-width: 2000px) {
  .ce_header .mod_navigation a.level_1 {
    text-transform: uppercase;
  }
}
.ce_header .mod_navigation a span {
  position: relative;
  z-index: 100;
}
.ce_header .mod_navigation ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
.ce_header .mod_navigation ul li {
  padding: 0;
  margin: 0;
  list-style: none;
}
.ce_header .mod_navigation ul li.level_1 {
  font-family: var(--font-headlines);
  letter-spacing: 0.08em;
}
.ce_header .mod_navigation ul li.level_1 > a {
  text-transform: uppercase;
  font-size: 144%;
}
@media (min-width: 1300px) {
  .ce_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0;
    gap: 2rem;
  }
  .ce_header .navigation .toggler, .ce_header .navigation input, .ce_header .mobileheader, .ce_header .nodesktop, .ce_header .mtoggler {
    display: none !important;
  }
  .ce_header .image_container img {
    height: 80px;
  }
  .navigation {
    position: relative;
    align-self: flex-end;
    --link:var(--text);
    --linkhover:var(--title);
  }
  .navigation .group {
    display: none;
  }
  .navigation:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 200vw;
    transform: translate(-50%, 0);
    background: var(--bgbody);
    z-index: -2;
  }
  .navigation .sprachnav {
    display: none;
  }
  .navigation ul.level_1 {
    display: flex;
    gap: 1.5rem;
    --topsize:3rem;
  }
  .navigation ul.level_1 li {
    position: relative;
    white-space: nowrap;
  }
  .navigation ul.level_1 li:not(.level_1):not(:last-child) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
  .navigation ul.level_1 li.submenu > a > span:after {
    content: "";
    border: solid var(--link);
    border-width: 0 1px 1px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(-45deg) translate(0, -50%);
    margin-left: 15px;
  }
  .navigation ul.level_1 li.level_3.submenu > a > span:after, .navigation ul.level_1 li.level_2.submenu > a > span:after {
    transform: rotate(-45deg) translate(0, -50%);
  }
  .navigation ul.level_1 li:not(.level_1).trail.submenu > a > span:after, .navigation ul.level_1 li:not(.level_1).active.submenu > a > span:after, .navigation ul.level_1 li:not(.level_1).hover.submenu > a > span:after, .navigation ul.level_1 li:not(.level_1):hover.submenu > a > span:after {
    border-color: var(--highlight-contrast);
  }
  .navigation ul.level_1 li:not(.level_1).trail > a, .navigation ul.level_1 li:not(.level_1).active > a, .navigation ul.level_1 li:not(.level_1).hover > a, .navigation ul.level_1 li:not(.level_1):hover > a {
    background: var(--highlight);
    color: var(--highlight-contrast);
  }
  .navigation ul.level_1 li ul {
    position: absolute;
    z-index: 1200;
    min-width: 100%;
    transition: 0.4s ease-in-out;
    transform: translate(0, 20px);
    left: 100%;
    top: 0;
    background: var(--bgbody);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.2);
    opacity: 0;
    pointer-events: none;
  }
  .navigation ul.level_1 li ul.level_2 {
    margin-left: calc(-1.5rem / 2);
  }
  .navigation ul.level_1 li.hover > ul, .navigation ul.level_1 li:hover > ul {
    opacity: 1;
    transform: translate(0, 0);
    pointer-events: inherit;
  }
  .navigation ul.level_1 li.level_1.button > a {
    margin-top: 2rem;
  }
  .navigation ul.level_1 li.level_1:not(.button) > a {
    padding: 3rem 0 2rem 0;
  }
  .navigation ul.level_1 li.level_1:not(.button) > a:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
    width: 5px;
    height: 0;
    display: block;
    transition: 0.4s ease-in-out;
    z-index: 0;
    opacity: 1;
    background: var(--highlight);
  }
  .navigation ul.level_1 li.level_1:not(.button).submenu > a > span:after {
    transform: rotate(45deg) translate(-8px, 0);
  }
  .navigation ul.level_1 li.level_1:not(.button).hover.submenu > a > span:after, .navigation ul.level_1 li.level_1:not(.button):hover.submenu > a > span:after, .navigation ul.level_1 li.level_1:not(.button).trail.submenu > a > span:after, .navigation ul.level_1 li.level_1:not(.button).active.submenu > a > span:after {
    border-color: var(--highlight);
  }
  .navigation ul.level_1 li.level_1:not(.button).hover > a, .navigation ul.level_1 li.level_1:not(.button):hover > a, .navigation ul.level_1 li.level_1:not(.button).trail > a, .navigation ul.level_1 li.level_1:not(.button).active > a {
    color: var(--highlight);
  }
  .navigation ul.level_1 li.level_1:not(.button).hover > a:before, .navigation ul.level_1 li.level_1:not(.button):hover > a:before, .navigation ul.level_1 li.level_1:not(.button).trail > a:before, .navigation ul.level_1 li.level_1:not(.button).active > a:before {
    height: 2rem;
  }
  .navigation ul.level_1 li.level_1:not(.button) > ul {
    left: 0;
    top: 100%;
  }
  body.scrolleddown header:before {
    content: "";
    display: block;
    height: 120px;
    background: var(--bgbody);
  }
  body.scrolleddown .ce_header {
    position: fixed !important;
    z-index: 1000;
    width: 100%;
    max-width: var(--pagewidth);
    left: 50%;
    transform: translate(-50%, 0);
    margin: 0;
    padding: 0 var(--pagepaddingx);
    z-index: 1000;
    top: 0px;
    right: 0;
    animation: navi-first 1s ease-in-out;
  }
  body.scrolleddown .ce_header:before {
    box-shadow: 0 0 70px rgba(0, 0, 0, 0.3);
  }
  @keyframes navi-first {
    from {
      transform: translate(-50%, -100%);
    }
    to {
      transform: translate(-50%, 0);
    }
  }
}
@media (max-width: 1299px) {
  header {
    --mHeaderHeigt: 60px;
  }
  .ce_header {
    padding-top: var(--mHeaderHeigt) !important;
    /*
		

		display:grid; 
		gap:var(--pspace); &, &.bigspace {  padding: var(--pspace) 0; }
		@media(min-width:400px){
			grid-template-columns: repeat(2,1fr);
			(())> .image_container{ grid-column: 1 / 3; }
		}
		*/
  }
  .ce_header .nomobile {
    display: none;
  }
  .ce_header, .ce_header.bigspace {
    padding-bottom: 0 !important;
  }
  .ce_header > .button, .ce_header > .image_container {
    display: none !important;
  }
  .mobileheader {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1000;
    height: var(--mHeaderHeigt);
    display: flex;
    align-items: center;
    gap: 5px;
    padding-left: var(--pagepaddingx);
  }
  .mobileheader > .image_container img {
    max-height: 50px;
    max-width: 50vw;
    width: auto;
  }
  .mobileheader > .image_container:nth-child(1) {
    display: block;
  }
  .mobileheader > .image_container:nth-child(2) {
    display: none;
  }
  .mobileheader:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    bottom: 0;
    transform: translate(-50%, 0);
    z-index: -10;
    background: var(--bgbody);
    box-shadow: 0 0 70px rgba(0, 0, 0, 0.3);
  }
  .navigation {
    --link:var(--text);
    --linkhover:var(--h3);
    position: fixed !important;
    right: var(--pagepaddingx);
    top: 0;
    z-index: 1200;
    width: 40px;
    height: var(--mHeaderHeigt);
    display: flex;
    align-items: center;
  }
  .navigation * {
    transition: all 0.5s ease-in-out, width 0s, height 0s, color 0s, background-color 0s, font-size 0s;
  }
  .navigation .sprachnav {
    padding-bottom: 1em;
    padding-left: 1.5rem;
  }
  .navigation.bg:before {
    display: none;
  }
  .navigation .toggler {
    position: relative;
    width: 100%;
    height: 25px;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .navigation .toggler > span {
    position: absolute;
    background: var(--link);
    height: 4px;
    display: block;
    border-radius: 3px;
    z-index: 1;
    left: 0;
    right: 0;
    /*
				position: relative; display: block;  height: 4px;
				&:not(:last-child){
					margin-bottom: 5px; 
				}
				
				
				
				//transform-origin: 4px 0px; transition:0.5s ease;
				*/
  }
  .navigation .toggler > span:first-child {
    top: 0;
  }
  .navigation .toggler > span:nth-child(2) {
    top: 50%;
  }
  .navigation .toggler > span:last-child {
    top: 100%;
  }
  .navigation > input[type="checkbox"] {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    padding: 0;
    margin: 0;
    cursor: pointer;
    opacity: 0;
    /* hide this */
    z-index: 2000;
    /* and place it over the hamburger */
    -webkit-touch-callout: none;
  }
  .navigation input:checked + .toggler::before {
    opacity: 0;
  }
  .navigation input:checked + .toggler > span {
    opacity: 1;
  }
  .navigation input:checked + .toggler > span:nth-child(2) {
    opacity: 0;
  }
  .navigation input:checked + .toggler > span:first-child {
    top: 50%;
    transform: rotate(-45deg);
  }
  .navigation input:checked + .toggler > span:last-child {
    top: 50%;
    transform: rotate(45deg);
  }
  .navigation .nav {
    position: fixed;
    top: 0;
    right: 0;
    max-width: 80vw;
    width: auto;
    bottom: 0;
    min-width: 50vw;
    transform: translate(150%, 0);
    background: var(--bgbody);
    box-shadow: -14px -2px 135px rgba(0, 0, 0, 0.5);
    overflow-y: scroll;
    overflow-x: clip;
    height: 100vh;
  }
  .navigation .nav .group {
    padding: 1rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
  .navigation .nav .group > div:not(:first-child) {
    border-top: 1px solid rgba(0, 0, 0, 0.2);
    padding-top: 1rem;
  }
  .navigation .nav .gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
    padding: 0 1.5rem;
  }
  .navigation .nav .gallery img {
    height: 35px;
  }
  .navigation .nav .gallery2 {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 0 1.5rem;
  }
  .navigation .nav .gallery2 img {
    height: 35px;
    width: 150px;
    object-fit: contain;
  }
  .navigation .nav .mod_navigation {
    border-top: 1px solid rgba(0, 0, 0, 0.2);
  }
  .navigation .nav ul li {
    hyphens: auto;
  }
  .navigation .nav ul li.submenu > a {
    display: flex;
    align-items: center;
    gap: 1em;
  }
  .navigation .nav ul li.submenu > a span:first-child {
    flex: 1;
  }
  .navigation .nav ul li.submenu > a .mtoggler {
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1200;
    font-family: "Material Design Icons";
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
  }
  .navigation .nav ul li.submenu > a .mtoggler:before {
    content: "󰅀";
  }
  .navigation .nav ul li:not(.mobile-open) > ul {
    display: none;
  }
  .navigation .nav ul li.mobile-open.submenu > a .mtoggler:before {
    content: "󰅃";
  }
  .navigation .nav ul li.mobile-open > ul {
    display: block;
  }
  .navigation .nav ul > li.level_1.button {
    padding: 1rem 1.5rem;
  }
  .navigation .nav ul > li.level_1:last-child, .navigation .nav ul > li:not(:last-child) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  }
  .navigation .nav ul > li ul {
    border-top: 1px solid rgba(0, 0, 0, 0.2);
    background-color: rgba(0, 0, 0, 0.08);
  }
  .navigation .nav ul > li ul > li:not(:last-child) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  }
  .navigation .nav ul > li ul > li > a {
    font-size: 90% !important;
  }
  .navigation .nav ul > li a.trail, .navigation .nav ul > li a.active {
    border-left: 10px solid var(--highlight);
  }
  .navigation .nav::-webkit-scrollbar {
    width: 12px;
    background: var(--bgbody);
  }
  .navigation .nav::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
  }
  .navigation .nav::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background: rgba(0, 0, 0, 0.1);
  }
  .navigation input:checked ~ .nav {
    transform: translate(0, 0);
  }
}
@media (max-width: 1299px) and (max-width: 300px) {
  .mobileheader > .image_container:nth-child(1) {
    display: none;
  }
  .mobileheader > .image_container:nth-child(2) {
    display: block;
  }
}
@media (max-width: 1299px) and (min-width: 600px) {
  .navigation .nav {
    min-width: calc(300px + 4vw);
  }
}
@media (max-width: 1299px) and (min-width: 768px) {
  .navigation .nav a.level_1 {
    text-transform: uppercase;
  }
}
/* headlines */
h1, h2, h3, h4, h5, h6 {
  padding: 0;
  margin: 0;
  margin-bottom: 1.5rem;
  font-weight: 400;
  font-size: 1rem;
}
.fstyle-1, .fstyle-2, .fstyle-3, .fstyle-4, .fstyle-5, .fstyle-6 {
  position: relative;
  hyphens: none;
  line-height: 1.3;
  margin: 0;
  padding: 0;
  padding-bottom: 0;
  text-wrap: balance;
  text-align: left;
  margin-bottom: 1.5rem;
  font-family: var(--font-text);
  font-size: clamp(1.2em, 3vw, 1.2em);
  font-weight: 500;
}
@media (max-width: 768px) {
  .fstyle-1, .fstyle-2, .fstyle-3, .fstyle-4, .fstyle-5, .fstyle-6 {
    hyphens: auto;
  }
  .fstyle-1 br, .fstyle-2 br, .fstyle-3 br, .fstyle-4 br, .fstyle-5 br, .fstyle-6 br {
    display: inline-block;
    content: " ";
    margin-right: 5px;
  }
}
.fstyle-1:last-child, .fstyle-2:last-child, .fstyle-3:last-child, .fstyle-4:last-child, .fstyle-5:last-child, .fstyle-6:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}
.fstyle-1 {
  font-family: var(--font-headlines);
  text-align: left;
  font-weight: normal;
  color: var(--h1);
  font-size: clamp(3.3em, 8vw, 4em);
  line-height: 1;
  display: block;
}
.fstyle-2 {
  font-family: var(--font-headlines);
  text-align: left;
  font-weight: 300;
  color: var(--h2);
  font-size: clamp(2.3em, 4vw, 3em);
  line-height: 1;
  display: block;
}
.fstyle-2:after {
  content: " .";
  color: var(--highlight);
}
.fstyle-3 {
  color: var(--h3);
  font-size: clamp(1.3em, 3vw, 1.5em);
}
.fstyle-4 {
  color: var(--h1);
  font-weight: 600;
}
.fstyle-1 + .fstyle-2 {
  margin-top: -0.5rem;
}
figure {
  padding: 0;
  margin: 0;
}
*img[src*=".svg"] {
  width: 100%;
}
img {
  width: auto;
  height: auto;
  max-width: 100%;
  display: block;
}
picture {
  position: relative;
  display: block;
}
.multiplizeren img {
  mix-blend-mode: multiply;
}
.image_container {
  position: relative;
  padding: 0;
  margin: 0;
  overflow: hidden;
}
.image_container *, .image_container *:hover {
  transition: all 0.8s ease, color 0s;
}
.image_container figcaption {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  padding: 0.5rem 1rem;
  z-index: 110;
  background: var(--highlight);
  color: var(--highlight-contrast);
  transform: scale(0);
  opacity: 0;
}
.image_container:hover figcaption {
  transform: scale(1);
  opacity: 1;
}
.img-kreis .image_container {
  border-radius: 50%;
  overflow: hidden;
}
.img-kreis .image_container figcaption {
  text-align: center;
  padding-left: 3rem;
  padding-right: 3rem;
}
.img-kreis picture, .img-quadratisch picture, .img-schmal picture, .img-breit picture, .img-hochkant picture {
  padding-top: 0;
  width: 100%;
  position: relative;
}
.img-kreis picture > *, .img-quadratisch picture > *, .img-schmal picture > *, .img-breit picture > *, .img-hochkant picture > * {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100% !important;
  object-fit: cover;
  object-position: center center;
}
.img-schmal .image_container picture {
  padding-top: 40%;
}
@media (min-width: 1600px) {
  .img-schmal .image_container picture {
    padding-top: 30%;
  }
}
@media (max-width: 768px) {
  .img-schmal .image_container picture {
    padding-top: 45%;
  }
}
.img-kreis .image_container picture, .img-quadratisch .image_container picture {
  padding-top: 100%;
}
.img-breit .image_container picture {
  padding-top: 58%;
}
.img-hochkant .image_container picture {
  padding-top: 133%;
}
.aspect picture {
  max-width: 100%;
  width: 100%;
  position: relative;
  padding-top: calc((3 / 4) * 100%);
}
.aspect picture > * {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100% !important;
  display: block;
  height: 100%;
  padding: 0;
  margin: 0;
}
.aspect picture > * > * {
  position: relative;
  width: 100%;
  height: 100%;
}
.aspect picture img {
  object-fit: cover;
  object-position: center;
  display: block;
}
.aspect.ratio11 picture, .aspect.ratio1x1 picture {
  padding-top: 100% !important;
}
.aspect.ratio165 picture, .aspect.ratio16x5 picture {
  padding-top: calc((5 / 16) * 100%) !important;
}
.aspect.ratio169 picture, .aspect.ratio16x9 picture {
  padding-top: calc((9 / 16) * 100%) !important;
}
.aspect.ratio43 picture, .aspect.ratio4x3 picture {
  padding-top: calc((3 / 4) * 100%) !important;
}
.aspect.ratio32 picture, .aspect.ratio3x2 picture {
  padding-top: calc((2 / 3) * 100%) !important;
}
.aspect.ratio85 picture, .aspect.ratio8x5 picture {
  padding-top: calc((5 / 8) * 100%) !important;
}
.blur-bgimage .image_container picture {
  overflow: hidden;
}
.blur-bgimage .image_container picture img {
  filter: drop-shadow(0 0 50px rgba(0, 0, 0, 0.3));
  object-fit: contain;
}
.blur-bgimage .image_container picture:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  transform: scale(1.2);
  background-image: var(--bgimage);
  background-size: cover;
  filter: blur(7px);
}
.img-border picture, .img-with-border picture {
  border: 1px solid #444;
  background: #fff;
  overflow: hidden;
}
.img-border picture:before, .img-with-border picture:before {
  content: "";
  border: 5px solid #fff;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.spiegeln img {
  transform: scaleX(-1);
}
.img-full img {
  width: 100%;
  display: block;
}
.img-grey, .grey-img {
  /*img:hover, picture:hover, a:hover img { filter:grayscale(0);  }*/
}
.img-grey img, .grey-img img {
  filter: grayscale(1);
}
a[data-lightbox] {
  position: relative;
  display: block;
  margin: 0;
  overflow: hidden;
}
a[data-lightbox] img {
  display: block;
  transition: 1s ease-in-out;
}
a[data-lightbox]:before, a[data-lightbox]:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  z-index: 110;
}
a[data-lightbox]:before {
  content: "+";
  text-align: center;
  display: flex;
  align-items: center;
  z-index: 120;
  justify-content: center;
  color: var(--highlight);
  font-size: 300%;
}
a[data-lightbox]:after {
  background: var(--bgbody);
  opacity: 0;
}
a[data-lightbox]:hover img {
  transform: scale(1.2);
}
a[data-lightbox]:hover:before {
  opacity: 1;
}
a[data-lightbox]:hover:after {
  opacity: 0.5;
}
.image_container.oben img, .img-pos-top img, .object-pos-top img {
  object-position: top !important;
}
.image_container.unten img, .img-pos-bottom img, .object-pos-bottom img {
  object-position: bottom !important;
}
.image_container.passend img, .img-contain img {
  object-fit: contain !important;
  object-position: center;
}
.image_container.rechts img, .img-right img {
  object-position: right !important;
}
.image_container.links img, .img-left img {
  object-position: left !important;
}
@media (min-width: 768px) {
  .img-absolute .image_container {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: 10;
    overflow: hidden;
  }
  .img-absolute .image_container a, .img-absolute .image_container picture {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
  }
  .img-absolute .image_container img {
    width: 100%;
    height: 100%;
    position: relative;
    object-fit: cover;
    object-position: center;
  }
  .img-fit-to-text .image_container {
    width: 100%;
    height: 100%;
  }
  .img-fit-to-text .image_container picture {
    padding-top: 0;
    width: 100%;
    height: 100%;
    position: relative;
  }
  .img-fit-to-text .image_container picture > * {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100% !important;
    object-fit: cover;
    object-position: center center;
  }
}
.img-max-100 .image_container {
  max-width: 100px !important;
}
.img-max-200 .image_container {
  max-width: 200px !important;
}
.img-max-300 .image_container {
  max-width: 300px !important;
}
.ce_gallery {
  --galspace: calc(var(--space) / 3);
}
.ce_gallery.null {
  --galspace:0;
}
.ce_gallery.nur-1px {
  --galspace:1px;
}
.ce_gallery.gross {
  --galspace: calc(var(--space));
}
.ce_gallery .img img {
  width: 100%;
}
.ce_gallery h4, .ce_gallery h5, .ce_gallery h6 {
  display: none;
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized) {
  display: grid;
  grid-gap: var(--galspace);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_auto {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_1 {
  grid-template-columns: repeat(1, 1fr);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_2 {
  grid-template-columns: repeat(2, 1fr);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_3 {
  grid-template-columns: repeat(3, 1fr);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_4 {
  grid-template-columns: repeat(4, 1fr);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_5 {
  grid-template-columns: repeat(5, 1fr);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_6 {
  grid-template-columns: repeat(6, 1fr);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_7 {
  grid-template-columns: repeat(7, 1fr);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_8 {
  grid-template-columns: repeat(8, 1fr);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_9 {
  grid-template-columns: repeat(9, 1fr);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_10 {
  grid-template-columns: repeat(10, 1fr);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_11 {
  grid-template-columns: repeat(11, 1fr);
}
.ce_gallery:not(.mysimpleslider.initialized):not(.slick-initialized).cols_12 {
  grid-template-columns: repeat(12, 1fr);
}
@media (max-width: 768px) {
  .ce_gallery.figacaption-bottom:not(.mysimpleslider.initialized):not(.slick-initialized) {
    grid-template-columns: 100%;
  }
}
.ce_gallery.figacaption-bottom > div {
  display: flex;
  flex-direction: column;
}
.ce_gallery.figacaption-bottom .image_container {
  display: flex;
  flex-direction: column;
  flex: 1;
  background: var(--bgcolor);
}
.ce_gallery.figacaption-bottom .image_container figcaption {
  all: unset;
  text-align: center;
  display: block;
  flex: 1;
  padding: 0.5em;
}
.ce_gallery.volle-bildschirmbreite {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.nocaption figcaption, .no-figcaption figcaption, .nofigcaption figcaption {
  display: none !important;
}
a {
  text-decoration: none;
  color: var(--link);
}
a:hover {
  color: var(--linkhover);
}
p a:not(.button):not(.symbol) {
  position: relative;
  font-weight: 500;
}
p a:not(.button):not(.symbol):before, p a:not(.button):not(.symbol):after {
  content: "";
  position: absolute;
  bottom: -4px;
  height: 2px;
  left: 0;
  background: var(--link);
  transition: all 0.4s ease-in-out;
}
p a:not(.button):not(.symbol):after {
  width: 0;
}
p a:not(.button):not(.symbol)::before {
  right: 0;
  opacity: 0.2;
}
p a:not(.button):not(.symbol):hover:after {
  width: 100%;
}
.mce-content-body p a:not(.button)[href^="http"]:not([class]), .mod_article p a:not(.button)[href^="http"]:not([class]) {
  position: relative;
  padding-right: 1em;
  display: inline-block;
}
.mce-content-body p a:not(.button)[href^="http"]:not([class]) > span::after, .mod_article p a:not(.button)[href^="http"]:not([class]) > span::after {
  content: "";
  position: absolute;
  font-size: 60%;
  padding-left: 3px;
  text-decoration: none;
  vertical-align: top;
  font-family: FontAwesome;
}
.mce-content-body p a:not(.button)[href$=".pdf"] > span:before, .mod_article p a:not(.button)[href$=".pdf"] > span:before {
  content: "";
  font-family: FontAwesome;
  display: inline-block;
  margin-right: 5px;
}
.mce-content-body p a:not(.button)[href$=".doc"] > span::before, .mce-content-body p a:not(.button)[href$=".docx"] > span::before, .mod_article p a:not(.button)[href$=".doc"] > span::before, .mod_article p a:not(.button)[href$=".docx"] > span::before {
  content: "";
  font-family: FontAwesome;
  display: inline-block;
  margin-right: 5px;
}
.mce-content-body p a:not(.button)[href$=".xls"] > span::before, .mce-content-body p a:not(.button)[href$=".xlsx"] > span::before, .mod_article p a:not(.button)[href$=".xls"] > span::before, .mod_article p a:not(.button)[href$=".xlsx"] > span::before {
  content: "";
  font-family: FontAwesome;
  display: inline-block;
  margin-right: 5px;
}
.link-as-text {
  --link:var(--text);
  --linkhover: var(--highlight);
}
/* MaterialDesignIcons.com */
@font-face {
  font-family: "Material Design Icons";
  src: url("/project/fonts/materialdesignicons-webfont.eot?v=7.1.96");
  src: url("/project/fonts/materialdesignicons-webfont.eot?#iefix&v=7.1.96") format("embedded-opentype"), url("/project/fonts/materialdesignicons-webfont.woff2?v=7.1.96") format("woff2"), url("/project/fonts/materialdesignicons-webfont.woff?v=7.1.96") format("woff"), url("/project/fonts/materialdesignicons-webfont.ttf?v=7.1.96") format("truetype");
  font-weight: normal;
  font-style: normal;
}
/* montserrat-300 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 300;
  src: url("/project/fonts/montserrat-v29-latin-300.woff2") format("woff2"), url("/project/fonts/montserrat-v29-latin-300.ttf") format("truetype");
  /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* montserrat-regular - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  src: url("/project/fonts/montserrat-v29-latin-regular.woff2") format("woff2"), url("/project/fonts/montserrat-v29-latin-regular.ttf") format("truetype");
  /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* montserrat-italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 400;
  src: url("/project/fonts/montserrat-v29-latin-italic.woff2") format("woff2"), url("/project/fonts/montserrat-v29-latin-italic.ttf") format("truetype");
  /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* montserrat-500 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;
  src: url("/project/fonts/montserrat-v29-latin-500.woff2") format("woff2"), url("/project/fonts/montserrat-v29-latin-500.ttf") format("truetype");
  /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* montserrat-600 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  src: url("/project/fonts/montserrat-v29-latin-600.woff2") format("woff2"), url("/project/fonts/montserrat-v29-latin-600.ttf") format("truetype");
  /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* montserrat-700 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  src: url("/project/fonts/montserrat-v29-latin-700.woff2") format("woff2"), url("/project/fonts/montserrat-v29-latin-700.ttf") format("truetype");
  /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* montserrat-800 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 800;
  src: url("/project/fonts/montserrat-v29-latin-800.woff2") format("woff2"), url("/project/fonts/montserrat-v29-latin-800.ttf") format("truetype");
  /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* montserrat-900 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 900;
  src: url("/project/fonts/montserrat-v29-latin-900.woff2") format("woff2"), url("/project/fonts/montserrat-v29-latin-900.ttf") format("truetype");
  /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
:root, .root {
  --font-text: "Montserrat";
  --font-montserrat: "Montserrat";
}
p {
  margin-top: 0;
  margin-bottom: var(--pspace);
}
@media (min-width: 1030px) {
  p {
    text-align: justify;
  }
}
p:last-child {
  margin-bottom: 0;
}
.nowrap, .nowrap * {
  white-space: nowrap;
}
li p {
  text-align: left;
}
.pspace {
  margin-top: var(--pspace) !important;
  margin-bottom: var(--pspace) !important;
}
.pspace-top {
  margin-top: var(--pspace) !important;
}
.pspace-bottom {
  margin-bottom: var(--pspace) !important;
}
@media (min-width: 850px) {
  p.text-2-cols {
    column-count: 2;
    column-gap: 70px;
    column-fill: balance;
  }
  p.text-3-cols {
    column-count: 3;
    column-gap: 70px;
    column-fill: balance;
  }
  .vline {
    column-rule-style: solid;
    column-rule-color: rgba(0, 0, 0, 0.3);
    column-rule-width: 1px;
  }
}
@media (max-width: 768px) {
  .mce-content-body, .mod_article {
    hyphens: auto;
  }
}
@media (max-width: 600px) {
  body:not(.impressum) main p br {
    display: inline-block;
    content: " ";
    margin-right: 5px;
  }
  body:not(.impressum) main .mobile-br p br {
    display: block !important;
    margin-right: 0;
  }
}
@media (max-width: 1500px) {
  .ce_slickslidergal {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.ce_slickslidergal .image_container {
  padding: 0;
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.ce_slickslidergal .image_container img {
  object-fit: contain;
  object-position: center;
}
@media (min-width: 1200px) {
  .ce_slickslidergal .image_container img {
    max-width: var(--imgmaxwidth);
    height: var(--imgmaxheight);
    width: auto;
    object-fit: contain;
    object-position: center;
  }
}
.ce_slickslidergal.nur-bei-mouse-hover-farbig .image_container {
  filter: grayscale(1);
}
.ce_slickslidergal.nur-bei-mouse-hover-farbig .image_container:hover {
  filter: grayscale(0);
}
.ce_slickslidergal .slick-slider .slick-dots {
  display: none !important;
}
.ce_slickslidergal .slick-slider .image_container > a {
  display: block !important;
}
.ce_slickslidergal .slick-slider .image_container > a img {
  object-fit: contain;
  object-position: center;
}
/* DEFAULT PRINT SETTINGS*/
@media print {
  body {
    color: #000 !important;
  }
  body * {
    color: #000 !important;
  }
  body a {
    text-decoration: none !important;
  }
  .autoslick, .parallax, .fnav {
    display: none;
  }
  body {
    font-size: 12px;
  }
  body, h1, h2, h3, h4, h5, h6, p, a {
    color: #000;
  }
  a {
    text-decoration: underline;
    color: #000;
  }
  * {
    height: auto;
  }
  img {
    display: block !important;
  }
  table, img {
    page-break-inside: avoid;
  }
  header {
    border-bottom: 1px solid #666 !important;
    padding-bottom: 20px !important;
    margin-bottom: 20px !important;
  }
  footer {
    border-top: 1px solid #666;
    padding-top: 20px !important;
    margin-top: 20px !important;
  }
  .noprint {
    display: none !important;
  }
  .bigspace {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .bigspace-top {
    padding-top: 20px;
  }
  .bigspace-bottom {
    padding-bottom: 20px;
  }
  .bigmargin {
    margin-top: 20px;
    margin-bottom: 20px;
  }
  .bigmargin-top {
    margin-top: 20px;
  }
  .bigmargin-bottom {
    margin-bottom: 20px;
  }
  .reset-margin-top {
    margin-top: calc($space * -1) !important;
  }
  .reset-margin-bottom {
    margin-bottom: calc($space * -1) !important;
  }
  .margin-top-negativ {
    margin-top: calc(20px*-1.5);
  }
  .vspace {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .vspace-right {
    padding-right: 20px !important;
  }
  .vspace-left {
    padding-left: 20px !important;
  }
}
:root {
  --space:calc(30px + 3vh);
  --pagewidth: 1660px;
  --pagepaddingx:calc(20px + 2vw);
  --pspace:1.5rem;
  --minheight:600px;
  --btnborder:1px;
  --border:4px;
}
@media (min-width: 1030px) {
  :root {
    --space:calc(75px + 4vh);
  }
}
:root {
  --color-schwarz: #000000;
  --color-weiss: #ffffff;
  --color-darkblue: #2b3638;
  --color-text: #222222;
  --color-red: #ac0000;
  --color-darkred: #880606;
  --color-verlauf-hellgrau: linear-gradient(90deg, rgb(224 224 224) 0%, rgb(248 243 243) 32%, rgba(246, 246, 246, 1) 69%, rgb(177 177 177) 100%);
  --color-dunkelblau: #273039;
  --color-dunkelblau-verlauf: linear-gradient(90deg,rgba(27, 29, 31, 1) 32%, rgba(39, 48, 57, 1) 69%);
  --color-hellfgrau: #f6f6f6;
  --color-hellfgraugelb: #d6dcd4;
  --color-rose: #fccaca;
  --color-boxdunkel: #0f1214;
}
.textcolor-schwarz {
  --text:var(--color-schwarz);
  --title:var(--color-schwarz);
  --highlight:var(--color-schwarz);
  color: var(--color-schwarz) !important;
}
.textcolor-weiss {
  --text:var(--color-weiss);
  --title:var(--color-weiss);
  --highlight:var(--color-weiss);
  color: var(--color-weiss) !important;
}
.textcolor-darkblue {
  --text:var(--color-darkblue);
  --title:var(--color-darkblue);
  --highlight:var(--color-darkblue);
  color: var(--color-darkblue) !important;
}
.textcolor-text {
  --text:var(--color-text);
  --title:var(--color-text);
  --highlight:var(--color-text);
  color: var(--color-text) !important;
}
.textcolor-red {
  --text:var(--color-red);
  --title:var(--color-red);
  --highlight:var(--color-red);
  color: var(--color-red) !important;
}
.textcolor-darkred {
  --text:var(--color-darkred);
  --title:var(--color-darkred);
  --highlight:var(--color-darkred);
  color: var(--color-darkred) !important;
}
.textcolor-verlauf-hellgrau {
  --text:var(--color-verlauf-hellgrau);
  --title:var(--color-verlauf-hellgrau);
  --highlight:var(--color-verlauf-hellgrau);
  color: var(--color-verlauf-hellgrau) !important;
}
.textcolor-dunkelblau {
  --text:var(--color-dunkelblau);
  --title:var(--color-dunkelblau);
  --highlight:var(--color-dunkelblau);
  color: var(--color-dunkelblau) !important;
}
.textcolor-dunkelblau-verlauf {
  --text:var(--color-dunkelblau-verlauf);
  --title:var(--color-dunkelblau-verlauf);
  --highlight:var(--color-dunkelblau-verlauf);
  color: var(--color-dunkelblau-verlauf) !important;
}
.textcolor-hellfgrau {
  --text:var(--color-hellfgrau);
  --title:var(--color-hellfgrau);
  --highlight:var(--color-hellfgrau);
  color: var(--color-hellfgrau) !important;
}
.textcolor-hellfgraugelb {
  --text:var(--color-hellfgraugelb);
  --title:var(--color-hellfgraugelb);
  --highlight:var(--color-hellfgraugelb);
  color: var(--color-hellfgraugelb) !important;
}
.textcolor-rose {
  --text:var(--color-rose);
  --title:var(--color-rose);
  --highlight:var(--color-rose);
  color: var(--color-rose) !important;
}
.textcolor-boxdunkel {
  --text:var(--color-boxdunkel);
  --title:var(--color-boxdunkel);
  --highlight:var(--color-boxdunkel);
  color: var(--color-boxdunkel) !important;
}
/*
* HTML Basics
*/
*:focus {
  outline: none;
}
*, *:before, *:after {
  box-sizing: border-box;
}
:root {
  font-size: clamp(1.05em, 3vw, 1.25em);
  font-family: var(--font-text);
  line-height: 1.6;
  color: var(--text);
  font-weight: 400;
}
html {
  padding: 0;
  margin: 0;
  scroll-behavior: smooth !important;
  overflow-x: hidden;
  height: 100%;
  width: 100%;
}
body {
  position: relative;
  width: 100%;
  overflow-x: clip;
  min-height: 100%;
  padding: 0;
  margin: 0;
  background: var(--bgbody);
  display: flex;
  flex: 1;
  flex-direction: column;
}
body, div, p, address, li, dd, dt, th, td {
  color: var(--text);
}
address {
  font-style: normal;
}
address:not(:last-child) {
  margin-bottom: var(--pspace);
}
hr {
  padding: 0;
  border: none;
  height: 1px;
  border-top: 1px solid var(--text);
  opacity: 0.2;
  margin: calc(var(--space) / 2) 0;
}
main {
  position: relative;
  z-index: 100;
}
.z200 {
  position: relative;
  z-index: 200 !important;
}
/* nice backgrounds */
.mit-hintegrund, .bg {
  position: relative;
}
.mit-hintegrund > *, .bg > * {
  position: relative;
}
.mit-hintegrund:before, .bg:before {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  left: 50%;
  width: 100vw;
  bottom: 0;
  transform: translate(-50%, 0);
  z-index: -1;
  background: var(--bgbody);
}
@media (min-width: 768px) {
  .mit-hintegrund.half:before, .bg.half:before {
    width: 50vw;
    left: 50%;
    transform: translate(-100%, 0);
  }
}
.mit-hintegrund.half-bg-top:before, .bg.half-bg-top:before {
  top: 0;
  bottom: 50%;
}
.mit-hintegrund.half-bg-bottom:before, .bg.half-bg-bottom:before {
  top: 50%;
  bottom: 0;
}
.mce-content-body {
  box-sizing: border-box;
  padding: 5px;
  background: var(--bgcolor);
}
/*page-center / container */
.page-center, main, header, footer {
  position: relative;
  margin: 0 auto;
  width: 100%;
  padding-left: var(--pagepaddingx);
  padding-right: var(--pagepaddingx);
  box-sizing: border-box;
  max-width: var(--pagewidth);
}
/*
header { z-index: 120; }
main { z-index: 100; }
footer {  z-index: 110; }

*/
footer {
  margin-top: auto;
}
.page-center .page-center, main .page-center, footer .page-center, header .page-center {
  padding-left: 0;
  padding-right: 0;
}
.fullwidth .page-center {
  padding-left: var(--pagepaddingx);
  padding-right: var(--pagepaddingx);
}
.fmo-margin-bottom {
  margin-bottom: 0;
}
.inherit-zindex > * {
  z-index: inherit !important;
}
.invisible {
  display: none;
}
.overflow-v {
  overflow: visible !important;
}
.overflow-hide {
  overflow: hidden;
}
@media (max-width: 1030px) {
  .nomobile, .no-mobile {
    display: none !important;
  }
}
.font1 {
  font-family: var(--font-headlines);
}
.font2 {
  font-family: var(--font-text);
}
.fw300 {
  font-weight: 300;
}
.fw400 {
  font-weight: 400;
}
.fw500 {
  font-weight: 500;
}
.fw600 {
  font-weight: 600;
}
.fw700 {
  font-weight: 700;
}
.text-balance {
  text-wrap: balance;
  text-align: left;
}
.font-weight-inherit {
  font-weight: inherit;
}
.nounderline, .nounderline * {
  text-decoration: none !important;
}
.uppercase, .uppercase * {
  text-transform: uppercase;
}
.bold, .bold *, .text-bold, .text-bold * {
  font-weight: bold;
}
.text-center, .text-center * {
  text-align: center;
}
.text-left, .text-left * {
  text-align: left !important;
}
.text-right, .text-right * {
  text-align: right !important;
}
.item {
  cursor: pointer;
}
.relative {
  position: relative;
}
.margin-top-auto {
  margin-top: auto;
}
.no-margin-bottom {
  margin-bottom: 0 !important;
}
@media (min-width: 1030px) {
  .nowrap, .nowrap * {
    white-space: nowrap;
  }
}
@media not print {
  .vspace {
    padding-left: var(--space);
    padding-right: var(--space);
  }
  .vspace-right {
    padding-right: var(--space);
  }
  .vspace-left {
    padding-left: var(--space);
  }
  .bigspace {
    padding-top: var(--space);
    padding-bottom: var(--space);
  }
  .bigspace:not(.reset-margin-top):not(.reset-margin-bottom).with-pspace {
    padding-top: var(--pspace);
    padding-bottom: var(--pspace);
  }
  .bigspace-top {
    padding-top: var(--space);
  }
  .bigspace-bottom {
    padding-bottom: var(--space);
  }
  .bigmargin {
    margin-top: var(--space);
    margin-bottom: var(--space);
  }
  .bigmargin-top {
    margin-top: var(--space);
  }
  .bigmargin-bottom {
    margin-bottom: var(--space);
  }
  .reset-margin-top {
    margin-top: calc((var(--space) * -1));
  }
  .reset-margin-top.with-pspace {
    margin-top: calc((var(--space) * -1 + var(--pspace) ));
  }
  .reset-margin-bottom {
    margin-bottom: calc((var(--space) * -1));
  }
  .reset-margin-bottom.with-pspace {
    margin-bottom: calc((var(--space) * -1 + var(--pspace) ));
  }
  .margin-top-negativ {
    margin-top: calc(var(--space) * -1.5);
  }
}
@media not print {
  .full-k, .fullwidth, .volle-bildschirmbreite {
    position: relative;
    width: 100vw;
    left: 50%;
    transform: translate(-50%, 0);
  }
}
@media (min-width: 600px) {
  .font-xs {
    font-size: 80%;
  }
  .font-s, .small {
    font-size: 90%;
  }
  .font-l {
    font-size: 120%;
  }
  .font-xl {
    font-size: 145%;
  }
  .font-xxl {
    font-size: 160%;
  }
  .font-2xl {
    font-size: 220%;
  }
}
@media (max-width: 600px) {
  .font-xs {
    font-size: 80%;
  }
  .font-s {
    font-size: 90%;
  }
  .font-l {
    font-size: 105%;
  }
  .font-xl {
    font-size: 110%;
  }
  .font-xxl {
    font-size: 115%;
  }
  .font-2xl {
    font-size: 120%;
  }
}
.box {
  position: relative;
  padding: 3rem 2rem 2rem 2rem;
  filter: drop-shadow(0px 11px 18px rgba(0, 0, 0, 0.1));
}
@media (max-width: 1030px) {
  .box {
    padding: 2rem 1rem 1rem 1rem;
  }
}
.box > * {
  z-index: 100;
}
.box > *.bigspace:first-child {
  padding-top: 0;
}
.box > *.bigspace:last-child {
  padding-bottom: 0;
}
.box:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--bgcolor);
  clip-path: polygon(0 1rem, 100% 0, 100% 100%, 0% 100%);
  z-index: 0;
}
.box:after {
  content: "";
  position: absolute;
  top: -5px;
  left: 1px;
  right: 1px;
  bottom: 1px;
  background: var(--highlight);
  clip-path: polygon(0 1rem, 100% 0, 100% 100%, 0% 100%);
  z-index: -1;
}
:root {
  --slopsize:4rem;
}
@media (max-width: 1030px) {
  :root {
    --slopsize:2.5rem;
  }
}
.manuel_shape, main > .mod_article {
  position: relative;
}
.manuel_shape:nth-child(1), main > .mod_article:nth-child(1) {
  z-index: 15;
}
.manuel_shape:nth-child(2), main > .mod_article:nth-child(2) {
  z-index: 14;
}
.manuel_shape:nth-child(3), main > .mod_article:nth-child(3) {
  z-index: 13;
}
.manuel_shape:nth-child(4), main > .mod_article:nth-child(4) {
  z-index: 12;
}
.manuel_shape:nth-child(5), main > .mod_article:nth-child(5) {
  z-index: 11;
}
.manuel_shape:nth-child(6), main > .mod_article:nth-child(6) {
  z-index: 10;
}
.manuel_shape:nth-child(7), main > .mod_article:nth-child(7) {
  z-index: 9;
}
.manuel_shape:nth-child(8), main > .mod_article:nth-child(8) {
  z-index: 8;
}
.manuel_shape:nth-child(9), main > .mod_article:nth-child(9) {
  z-index: 7;
}
.manuel_shape:nth-child(10), main > .mod_article:nth-child(10) {
  z-index: 6;
}
.manuel_shape:nth-child(11), main > .mod_article:nth-child(11) {
  z-index: 5;
}
.manuel_shape:nth-child(12), main > .mod_article:nth-child(12) {
  z-index: 4;
}
.manuel_shape:nth-child(13), main > .mod_article:nth-child(13) {
  z-index: 3;
}
.manuel_shape:nth-child(14), main > .mod_article:nth-child(14) {
  z-index: 2;
}
.manuel_shape:nth-child(15), main > .mod_article:nth-child(15) {
  z-index: 1;
}
.manuel_shape .ce_simplepicture > .group, main > .mod_article .ce_simplepicture > .group {
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--slopsize)), 0% 100%);
}
.manuel_shape .bgimage, .manuel_shape .ce_p20230922-2 > .image, .manuel_shape > *:last-child:before, main > .mod_article .bgimage, main > .mod_article .ce_p20230922-2 > .image, main > .mod_article > *:last-child:before {
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--slopsize)), 0% 100%);
}
.manuel_shape > *:last-child:after, main > .mod_article > *:last-child:after {
  content: "";
  display: block;
  position: absolute;
  height: calc(var(--slopsize) + 5px);
  left: 50%;
  width: 100vw;
  bottom: -5px;
  transform: translate(-50%, 0);
  z-index: -1;
  background: var(--highlight);
  clip-path: polygon(0 100%, 100% 5px, 100% 0, 0 0);
  z-index: -11;
}
.manuel_shape > *:last-child, main > .mod_article > *:last-child {
  margin-bottom: calc(var(--space) * -1);
  padding-bottom: calc(var(--space) + calc(var(--slopsize) / 2));
}
@media (max-width: 1030px) {
  .manuel_shape > *:last-child, main > .mod_article > *:last-child {
    padding-bottom: calc(var(--space) * 2);
  }
}
footer > *:first-child, .manuel_shape + * > *:first-child, main > .mod_article + .mod_article > *:first-child {
  padding-top: calc(var(--slopsize) + var(--space));
}
@media (max-width: 1030px) {
  footer > *:first-child, .manuel_shape + * > *:first-child, main > .mod_article + .mod_article > *:first-child {
    padding-top: calc(var(--space) * 2);
  }
}
footer > *:first-child:before, .manuel_shape + * > *:first-child:before, main > .mod_article + .mod_article > *:first-child:before {
  top: calc(var(--slopsize)/2 * -1);
}
.ce_simplepicture {
  padding: 0;
  position: relative;
}
.ce_simplepicture, .ce_simplepicture.bigspace {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.ce_simplepicture > .group {
  position: relative;
  top: 0;
  left: 0;
  width: 100vw;
  left: 50%;
  transform: translate(-50%, 0);
}
.ce_simplepicture > .group > .image_container {
  position: relative;
  width: 100%;
  height: 100%;
}
.ce_simplepicture > .group > .image_container * {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.slick-slider {
  position: relative;
  --slider-space:1.5rem;
  --slider-arrow-color:var(--highlight);
  --slider-arrow-fontsize:250%;
  --slider-dots-color:var(--text);
  --slider-dots-size:12px;
  --slider-dots-space:0.3rem;
  display: none;
}
.slick-slider.slick-initialized {
  display: block;
}
@media (min-width: 1200px) {
  .slick-slider {
    margin: 0 calc(var(--slider-space)*-1);
  }
}
.slick-slider .slick-arrow {
  position: absolute !important;
  cursor: pointer;
  top: 50%;
  color: var(--slider-arrow-color);
  font-size: var(--slider-arrow-fontsize);
  font-family: "Material Design Icons";
  padding: 0 0.5rem;
  z-index: 1200 !important;
}
.slick-slider .slick-arrow.slick-next {
  right: 0;
  transform: translate(100%, -50%);
}
.slick-slider .slick-arrow.slick-next:before {
  content: "󰅂";
}
.slick-slider .slick-arrow.slick-prev {
  left: 0;
  transform: translate(-100%, -50%);
}
.slick-slider .slick-arrow.slick-prev:before {
  content: "󰅁";
}
.slick-slider .slick-dots {
  position: absolute;
  bottom: 0;
  transform: translate(0, 100%);
  height: var(--slider-dots-size);
  text-indent: -1000000px;
  display: flex;
  padding: 1rem 0;
  margin: 0;
  list-style: none;
  align-items: center;
  justify-content: center;
  width: 100%;
  z-index: 100;
}
.slick-slider .slick-dots li {
  flex-grow: 0;
  padding: 0;
  margin: 0;
  width: var(--slider-dots-size);
  height: var(--slider-dots-size);
  background: transparent;
  background: var(--slider-dots-color);
  opacity: 0.5;
  margin: 0 var(--slider-dots-space);
}
.slick-slider .slick-dots li.slick-active {
  opacity: 1;
  background-color: var(--slider-dots-color);
}
.slick-slider .slick-dots li:first-child:last-child {
  display: none;
}
.slick-slider .slick-dots li:hover {
  cursor: pointer;
}
.slick-slider .slick-list {
  position: relative;
  overflow: hidden;
}
.slick-slider .slick-track {
  display: flex !important;
}
.slick-slider .slick-slide {
  padding: 0 var(--slider-space);
  margin: 0;
  height: inherit !important;
}
.slick-slider .slick-slide > div {
  height: 100%;
}
@media (min-width: 1300px) {
  .ce_bgimage-text {
    position: relative;
    padding-top: var(--space);
    padding-bottom: var(--space);
  }
  .ce_bgimage-text .bgimage {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100vw;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: -1;
    overflow: hidden;
    pointer-events: none;
  }
  .ce_bgimage-text .bgimage .image_container, .ce_bgimage-text .bgimage a, .ce_bgimage-text .bgimage picture {
    position: relative;
    width: 100%;
    height: 100%;
  }
  .ce_bgimage-text .bgimage img {
    opacity: 0.25;
    width: 100%;
    height: 100%;
    object-position: center;
  }
  .ce_bgimage-text .bgimage figcaption {
    display: none;
  }
  .ce_bgimage-text.normal .image_container picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .ce_bgimage-text.hintergrundbild-volle-hoehe-rechts > .text {
    max-width: var(--textsize);
  }
  .ce_bgimage-text.hintergrundbild-volle-hoehe-rechts .bgimage img {
    opacity: 1;
  }
  .ce_bgimage-text.hintergrundbild-volle-hoehe-rechts .bgimage .image_container picture {
    display: flex;
    justify-content: flex-end;
  }
  .ce_bgimage-text.hintergrundbild-volle-hoehe-rechts .bgimage .image_container picture img {
    width: auto;
    height: 100%;
    object-fit: cover;
    mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, black 100%);
    -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, black 100%);
  }
  .ce_bgimage-text.hintergrundbild-volle-hoehe-links > .text {
    max-width: var(--textsize);
    margin-left: auto;
  }
  .ce_bgimage-text.hintergrundbild-volle-hoehe-links .bgimage img {
    opacity: 1;
  }
  .ce_bgimage-text.hintergrundbild-volle-hoehe-links .bgimage .image_container picture {
    display: flex;
    justify-content: flex-start;
  }
  .ce_bgimage-text.hintergrundbild-volle-hoehe-links .bgimage .image_container picture img {
    width: auto;
    height: 100%;
    object-fit: cover;
    mask-image: linear-gradient(90deg, black 0%, rgba(0, 0, 0, 0) 100%);
    -webkit-mask-image: linear-gradient(90deg, black 0%, rgba(0, 0, 0, 0) 100%);
  }
}
@media (max-width: 1299px) {
  .ce_bgimage-text {
    display: flex;
    flex-direction: column;
  }
  .ce_bgimage-text, .ce_bgimage-text.bigspace {
    padding-top: 0;
  }
  .ce_bgimage-text > .bgimage {
    order: 1;
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translate(-50%, 0);
    margin-bottom: -50%;
  }
  .ce_bgimage-text > .bgimage .image_container img {
    width: 100% !important;
    mask-image: linear-gradient(180deg, black 0%, rgba(0, 0, 0, 0) 90%);
    -webkit-mask-image: linear-gradient(180deg, black 0%, rgba(0, 0, 0, 0) 90%);
  }
  .ce_bgimage-text > .text {
    order: 2;
  }
}
.ce_20230903:not(.bigspace) > .group > .text {
  padding-top: var(--space);
  padding-bottom: var(--space);
}
.ce_20230903 .group {
  position: relative;
  overflow: hidden;
}
@media (max-width: 1300px) {
  .ce_20230903 .group {
    display: grid;
    grid-gap: var(--pspace);
    grid-template-columns: 100%;
  }
  .ce_20230903 .group > .image {
    order: 2;
  }
  .ce_20230903 .group > .text {
    order: 1;
  }
}
@media (min-width: 1300px) {
  .ce_20230903 .group {
    display: flex;
    margin: 0 calc((var(--space)/2) * -1);
  }
  .ce_20230903 .group > * {
    padding: 0 calc(var(--space)/2);
  }
}
.ce_20230903 .group.rechts > .image {
  order: 2;
}
.ce_20230903 .group.rechts > .text {
  order: 1;
}
.ce_20230903 .group > .text {
  flex: 1;
}
.ce_20230903 .group > .image .image_container picture {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 1300px) {
  .ce_20230903 .group > .image {
    flex-basis: var(--imgsize);
    max-width: var(--imgsize);
  }
}
@media (min-width: 1300px) {
  .ce_20230903 .group > .image > .image_container {
    width: 100%;
    height: 100%;
  }
  .ce_20230903 .group > .image > .image_container picture {
    padding-top: 0;
    width: 100%;
    height: 100%;
    position: relative;
  }
  .ce_20230903 .group > .image > .image_container picture > * {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100% !important;
    object-fit: cover;
    object-position: center center;
  }
}
.ce_20230903.mindesthoehe > .group > .text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (min-width: 1300px) {
  .ce_20230903.mindesthoehe > .group > .text {
    min-height: 400px;
  }
}
.ce-textcols-with-images .listing {
  display: flex;
  gap: var(--cspace);
}
@media (max-width: 1200px) {
  .ce-textcols-with-images .listing {
    flex-direction: column;
    gap: 1.5rem;
  }
}
.ce-textcols-with-images .listing.cols-auto.elements-fill > div:last-child:last-child {
  flex-grow: 1;
}
.ce-textcols-with-images .listing > div {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--pspace);
}
.ce-textcols-with-images .listing > div.image-pos-bottom .image_container {
  margin-top: auto;
}
.ce-textcols-with-images .listing > div.image-pos-right .image_container, .ce-textcols-with-images .listing > div.image-pos-bottom .image_container {
  order: 2;
}
.ce-textcols-with-images .listing > div.image-pos-right .text, .ce-textcols-with-images .listing > div.image-pos-bottom .text {
  order: 1;
}
@media (min-width: 400px) {
  .ce-textcols-with-images .listing > div:not(.no-image).image-pos-right, .ce-textcols-with-images .listing > div:not(.no-image).image-pos-left {
    min-width: 100px;
    display: grid;
    grid-gap: var(--pspace);
    grid-template-columns: 1fr 1fr;
  }
}
.ce-textcols-with-images .listing.cols-1, .ce-textcols-with-images .listing.cols-2, .ce-textcols-with-images .listing.cols-3, .ce-textcols-with-images .listing.cols-4 {
  flex-wrap: wrap;
}
.ce-textcols-with-images .listing.cols-1:not(.elements-fill), .ce-textcols-with-images .listing.cols-2:not(.elements-fill), .ce-textcols-with-images .listing.cols-3:not(.elements-fill), .ce-textcols-with-images .listing.cols-4:not(.elements-fill) {
  margin-right: calc(var(--cspace) * -1);
}
.ce-textcols-with-images .listing.cols-1.elements-fill > div, .ce-textcols-with-images .listing.cols-2.elements-fill > div, .ce-textcols-with-images .listing.cols-3.elements-fill > div, .ce-textcols-with-images .listing.cols-4.elements-fill > div {
  flex-grow: 1;
  max-width: none;
}
.ce-textcols-with-images .listing.cols-1 > div {
  flex-basis: calc(100% - var(--cspace));
  max-width: calc(100% - var(--cspace));
}
.ce-textcols-with-images .listing.cols-1 > div:not(.no-image) {
  grid-template-columns: auto 1fr !important;
}
.ce-textcols-with-images .listing.cols-1 > div:not(.no-image) .image_container {
  width: 300px;
}
@media (min-width: 768px) {
  .ce-textcols-with-images .listing.cols-2 > div {
    flex-basis: calc(50% - var(--cspace));
    max-width: calc(50% - var(--cspace));
  }
  .ce-textcols-with-images .listing.cols-3 > div {
    flex-basis: calc((100% / 3) - var(--cspace));
    max-width: calc((100% / 3) - var(--cspace));
  }
  .ce-textcols-with-images .listing.cols-4 > div {
    flex-basis: calc((100% / 4) - var(--cspace));
    max-width: calc((100% / 4) - var(--cspace));
  }
}
@media (min-width: 768px) and (max-width: 1300px) {
  .ce-textcols-with-images .listing.cols-4 > div.image-pos-right, .ce-textcols-with-images .listing.cols-4 > div.image-pos-left {
    max-width: calc(50% - var(--cspace));
  }
}
@media (min-width: 768px) and (max-width: 1030px) {
  .ce-textcols-with-images .listing.cols-4 > div, .ce-textcols-with-images .listing.cols-3 > div {
    flex-basis: calc(50% - var(--cspace));
    max-width: calc(50% - var(--cspace));
  }
}
@media (max-width: 768px) {
  .ce-textcols-with-images .listing > div {
    flex-basis: 100%;
  }
}
.ce-textcols-with-images .listing.same-size > div {
  flex: 1;
}
.ce-textcols-with-images .listing.last-right > *:last-child {
  margin-left: auto;
  flex-grow: 0;
}
.ce-textcols-with-images .listing.img-auto-fit .inner:not(.image-pos-right):not(.image-pos-left) {
  display: flex;
  flex-direction: column;
}
.ce-textcols-with-images .listing.img-auto-fit .image_container {
  flex: 1;
  position: relative;
  min-height: 250px;
}
.ce-textcols-with-images .listing.img-auto-fit .image_container picture, .ce-textcols-with-images .listing.img-auto-fit .image_container > a {
  position: absolute;
  width: 100%;
  height: 100%;
  padding-top: 0;
  display: block;
}
.ce-textcols-with-images .listing.img-auto-fit .image_container picture img, .ce-textcols-with-images .listing.img-auto-fit .image_container > a img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ce-textcols-with-images .box {
  padding: 1rem;
}
:root, .root {
  --bgcolor: var(--color-weiss);
  --bgbody: var(--color-weiss);
  --text: var(--color-text);
  --highlight: var(--color-red);
  --highlight-contrast: var(--color-weiss);
  --title: var(--color-red);
  --h1: var(--color-darkred);
  --h2: var(--color-darkblue);
  --h3: var(--color-text);
  --link: var(--color-schwarz);
  --linkhover: var(--color-red);
}
.bigspace.root + .bigspace.root {
  padding-top: 0;
}
.dunkel {
  --bgcolor: var(--color-boxdunkel);
  --bgbody: var(--color-dunkelblau-verlauf);
  --text: var(--color-hellfgrau);
  --highlight: var(--color-red);
  --highlight-contrast: var(--color-weiss);
  --title: var(--color-weiss);
  --h1: var(--color-weiss);
  --h2: var(--color-weiss);
  --h3: var(--color-weiss);
  --link: var(--color-rose);
  --linkhover: var(--color-weiss);
}
.bigspace.dunkel + .bigspace.dunkel {
  padding-top: 0;
}
:root, .root {
  --bgcolor: var(--color-weiss);
  --bgbody: var(--color-weiss);
  --text: var(--color-text);
  --highlight: var(--color-red);
  --highlight-contrast: var(--color-weiss);
  --title: var(--color-red);
  --h1: var(--color-darkred);
  --h2: var(--color-darkblue);
  --h3: var(--color-text);
  --link: var(--color-schwarz);
  --linkhover: var(--color-red);
}
.bigspace.root + .bigspace.root {
  padding-top: 0;
}
.hellgrauer-verlauf {
  --bgcolor: var(--color-weiss);
  --bgbody: var(--color-verlauf-hellgrau);
  --text: var(--color-text);
  --highlight: var(--color-red);
  --highlight-contrast: var(--color-weiss);
  --title: var(--color-darkblue);
  --h1: var(--color-schwarz);
  --h2: var(--color-darkblue);
  --h3: var(--color-text);
  --link: var(--color-schwarz);
  --linkhover: var(--color-red);
}
.bigspace.hellgrauer-verlauf + .bigspace.hellgrauer-verlauf {
  padding-top: 0;
}
.hellgrauer-verlauf-white-box {
  --bgcolor: var(--color-weiss);
  --bgbody: var(--color-verlauf-hellgrau);
  --text: var(--color-text);
  --highlight: var(--color-darkblue);
  --highlight-contrast: var(--color-weiss);
  --title: var(--color-red);
  --h1: var(--color-schwarz);
  --h2: var(--color-darkblue);
  --h3: var(--color-text);
  --link: var(--color-schwarz);
  --linkhover: var(--color-red);
}
.bigspace.hellgrauer-verlauf-white-box + .bigspace.hellgrauer-verlauf-white-box {
  padding-top: 0;
}
.infoboxen-dunkel-body {
  --bgcolor: var(--color-weiss);
  --bgbody: var(--color-dunkelblau-verlauf);
  --text: var(--color-text);
  --highlight: var(--color-red);
  --highlight-contrast: var(--color-weiss);
  --title: var(--color-darkblue);
  --h1: var(--color-schwarz);
  --h2: var(--color-darkblue);
  --h3: var(--color-text);
  --link: var(--color-schwarz);
  --linkhover: var(--color-red);
}
.bigspace.infoboxen-dunkel-body + .bigspace.infoboxen-dunkel-body {
  padding-top: 0;
}
.theme-formular {
  --bgcolor: var(--color-verlauf-hellgrau);
  --bgbody: var(--color-weiss);
  --text: var(--color-text);
  --highlight: var(--color-red);
  --highlight-contrast: var(--color-weiss);
  --title: var(--color-red);
  --h1: var(--color-darkred);
  --h2: var(--color-darkblue);
  --h3: var(--color-text);
  --link: var(--color-schwarz);
  --linkhover: var(--color-red);
}
.bigspace.theme-formular + .bigspace.theme-formular {
  padding-top: 0;
}
.white-background-lightgreybox {
  --bgcolor: var(--color-hellfgraugelb);
  --bgbody: var(--color-hellfgrau);
  --text: var(--color-text);
  --highlight: var(--color-red);
  --highlight-contrast: var(--color-weiss);
  --title: var(--color-red);
  --h1: var(--color-darkred);
  --h2: var(--color-darkblue);
  --h3: var(--color-text);
  --link: var(--color-schwarz);
  --linkhover: var(--color-red);
}
.bigspace.white-background-lightgreybox + .bigspace.white-background-lightgreybox {
  padding-top: 0;
}
.ce_timeline:before, .ce_timeline:after, .ce_timeline *, .ce_timeline *:after, .ce_timeline *:before {
  transition: all 0.4s;
}
.ce_timeline .timeline {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media (max-width: 1030px) {
  .ce_timeline .timeline {
    padding-left: 50px;
  }
}
.ce_timeline .timeline .progress-bar {
  left: 0;
  position: absolute;
  top: 1rem;
  z-index: -1;
  background: var(--highlight);
  border-radius: 3px;
  width: 2px;
}
@media (min-width: 1030px) {
  .ce_timeline .timeline .progress-bar {
    left: 200px;
  }
}
.ce_timeline .timeline .progress-bar:after {
  content: "";
  border: solid var(--highlight);
  display: block;
  position: absolute;
  bottom: 0;
  border-width: 0 2px 2px 0;
  display: block;
  padding: 6px;
  transform: rotate(45deg) translate(calc(-50% + 2px), 4px);
}
.ce_timeline .timeline .group {
  display: flex;
  gap: 1rem;
  flex-direction: column;
}
.ce_timeline .timeline .year {
  background: var(--bgcolor);
  padding: 0.5rem 0;
}
.ce_timeline .timeline .year h3 {
  padding: 0;
  margin: 0;
}
.ce_timeline .timeline .event {
  display: flex;
  flex-direction: column;
}
@media (min-width: 1030px) {
  .ce_timeline .timeline .event {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 2rem;
    margin-left: 0;
  }
}
.ce_timeline .timeline .event h4 {
  transform: translate(-40px, 0);
  opacity: 0;
}
.ce_timeline .timeline .event .content {
  transform: translate(0, 40px);
  opacity: 0;
}
.ce_timeline .timeline .event.viewport-is-active h4, .ce_timeline .timeline .event.viewport-is-active .content {
  opacity: 1;
  transform: translate(0, 0);
}
.ce-titleversatz-text-image {
  --space:3.5rem;
}
.ce-titleversatz-text-image .container {
  display: grid;
  gap: calc(var(--space));
}
@media (max-width: 1030px) {
  .ce-titleversatz-text-image .container {
    grid-template-columns: 100%;
  }
}
@media (min-width: 1030px) {
  .ce-titleversatz-text-image .container {
    padding-bottom: var(--space);
    grid-template-columns: 1fr 0.3fr 1fr;
    grid-template-rows: auto auto;
    grid-template-areas: ". title title" "image image text";
  }
  .ce-titleversatz-text-image .container .image_container {
    grid-area: image;
  }
  .ce-titleversatz-text-image .container .title {
    grid-area: title;
  }
  .ce-titleversatz-text-image .container .text {
    grid-area: text;
  }
  .ce-titleversatz-text-image .container:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100vw;
    left: calc(40% - var(--space));
    transform: translate(-100%, 0);
    background: var(--bgcolor);
    z-index: -1;
  }
  .ce-titleversatz-text-image .container .image_container {
    width: 100%;
    height: 100%;
  }
  .ce-titleversatz-text-image .container .image_container picture {
    padding-top: 0;
    width: 100%;
    height: 100%;
    position: relative;
  }
  .ce-titleversatz-text-image .container .image_container picture > * {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100% !important;
    object-fit: cover;
    object-position: center center;
  }
}
.ce-titleversatz-text-image .container .title {
  position: relative;
}
.ce-titleversatz-text-image .container .text {
  padding-top: var(--space);
  position: relative;
}
.ce-titleversatz-text-image .container .text:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 5px;
  background: var(--highlight);
}
