@charset "UTF-8";
/* Custom Styles 
/*  AfBBG: Akademie-Seite 
/*  Author: Heiko Göb
*/
:root {
  --visualScale: 1;
  --focusColor: oklch(0.8756 0.0498 33.63);
  --white: oklch(1 0 0);
  --black: oklch(0 0 0);
  --marginPaddingBase: .72rem;
  --headerHeight: 0;
  --font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-serif: Georgia, serif, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bodyFontFamily: "Outfit", var(--font-sans-serif);
  --headlineFontFamily: "Palamecia", "Whiterock", var(--font-serif);
  /* headlines */
}
@media (min-width: 768px) {
  :root {
    --h1-fontSize: 3rem;
    --h2-fontSize: 2.01rem;
    --h3-fontSize: 1.5rem;
    --h4-fontSize: 1.32rem;
    --h5-fontSize: 1.12rem;
    --h6-fontSize: 1rem;
  }
}
@media (max-width: 567px) {
  :root {
    --body-fontSize: 18px;
  }
}
:root {
  --mybody-fontSize: calc(var(--visualScale,1) * var(--body-fontSize));
  --myh1-fontSize: calc(var(--visualScale,1) * var(--h1-fontSize));
  --myh2-fontSize: calc(var(--visualScale,1) * var(--h2-fontSize));
  --myh3-fontSize: calc(var(--visualScale,1) * var(--h3-fontSize));
  --myh4-fontSize: calc(var(--visualScale,1) * var(--h4-fontSize));
  --myh5-fontSize: calc(var(--visualScale,1) * var(--h5-fontSize));
  --myh6-fontSize: calc(var(--visualScale,1) * var(--h6-fontSize));
  --myparagraph-small-font-size: calc(var(--visualScale,1) * var(--paragraph-small-font-size));
  --myparagraph-small-line-height: calc(var(--visualScale,1) * var(--paragraph-small-line-height));
  --myparagraph-medium-font-size: calc(var(--visualScale,1) * var(--paragraph-medium-font-size));
  --myparagraph-medium-line-height: calc(var(--visualScale,1) * var(--paragraph-medium-line-height));
  --myparagraph-large-font-size: calc(var(--visualScale,1) * var(--paragraph-large-font-size));
  --myparagraph-large-line-height: calc(var(--visualScale,1) * var(--paragraph-large-line-height));
}
@media (max-width: 767px) {
  :root {
    --contentBoxedWidth: calc(100% - 6%);
    --h1-fontSize: 1.67rem;
    --h2-fontSize: 1.3rem;
    --h3-fontSize: 1.3rem;
    --h4-fontSize: 1.15rem;
    --h5-fontSize: 1.15rem;
    --h6-fontSize: 1rem;
  }
}

.body {
  --body-fontSize: var(--mybody-fontSize);
  --h1-fontSize: var(--myh1-fontSize);
  --h2-fontSize: var(--myh2-fontSize);
  --h3-fontSize: var(--myh3-fontSize);
  --h4-fontSize: var(--myh4-fontSize);
  --h5-fontSize: var(--myh5-fontSize);
  --h6-fontSize: var(--myh6-fontSize);
  --paragraph-small-font-size: var(--myparagraph-small-font-size);
  --paragraph-small-line-height: var(--myparagraph-small-line-height);
  --paragraph-medium-font-size: var(--myparagraph-medium-font-size);
  --paragraph-medium-line-height: var(--myparagrap-medium-line-heighth);
  --paragraph-large-font-size: var(--myparagraph-large-font-size);
  --paragraph-large-line-height: var(--myparagraph-large-line-height);
}

@supports not (color: oklch(100% 0 0deg)) {
  :root {
    --accentColor: rgb(98,192,188);
    --secondColor: rgb(14,17,27);
    --customColor1: rgb(226,212,136);
    --customColor2: rgb(140,133,123);
    --bgColorLightGray: rgb(251,251,251);
    --bgColorGray: rgb(179,192,191);
    --bgColorDarkGray: rgb(74,84,93);
    --body-color: rgb(0,24,18);
    --focusColor: rgb(245, 203, 193);
    --white: rgb(255, 255, 255);
    --black: rgb(0, 0, 0);
  }
}
html, body {
  zoom: 1 !important;
  width: 100vw;
  padding: 0;
  margin: 0;
  text-wrap: pretty;
}

html, body {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--headerHeight, 6rem) - 3rem);
}

.body {
  width: 100vw;
  background: var(--bodyBackgroundColor);
  font-size: var(--mybody-fontSize, --body-fontSize);
}

/* sass variables and mixins */
/*$font-xxxl: 	calc(var(--body-fontSize) * 6.12);
$font-xxl: 		calc(var(--body-fontSize) * 4.8);
$font-xl: 		calc(var(--body-fontSize) * 3.12);
$font-l: 		calc(var(--body-fontSize) * 2.25);
$font-md: 		calc(var(--body-fontSize) * 1.45);
$font-reg: 		var(--body-fontSize);
$font-sm: 		calc(var(--body-fontSize) * .75);
*/
/* sass mixins */
body {
  font-family: var(--bodyFontFamily);
  letter-spacing: 0.03rem;
  text-wrap: pretty;
}

* {
  font-variation-settings: "wght" var(--fontWeight, 400);
}

.font-body {
  font-family: var(--bodyFontFamily) !important;
}

.font-headline {
  font-family: var(--headlineFontFamily) !important;
}

:is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .ce_revolutionslider_text.bold, .font_headline) {
  font-family: var(--headlineFontFamily);
  text-wrap: pretty;
}
@media (min-width: 768px) {
  :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .ce_revolutionslider_text.bold, .font_headline) {
    hyphens: none;
  }
}

/*font-sizes*/
.font-size-h1 {
  font-size: var(--h1-fontSize);
}

.font-size-h2 {
  font-size: var(--h2-fontSize);
}

.font-size-h3 {
  font-size: var(--h3-fontSize);
}

.font-size-h4 {
  font-size: var(--h4-fontSize);
}

.font-size-h5 {
  font-size: var(--h5-fontSize);
}

.font-size-h6 {
  font-size: var(--h6-fontSize);
}

/* Font-Weights */
:is(.font-thin, .font-weight-thin) {
  --fontWeight: 210;
}

:is(.font-light, .font-weight-light) {
  --fontWeight: 300;
}

:is(.font-regular, .font-weight-regular) {
  --fontWeight: 400;
}

:is(.font-medium, .font-weight-medium) {
  --fontWeight: 490;
}

:is(.font-semibold, .font-weight-semibold) {
  --fontWeight: 560;
}

:is(.font-bold, .font-weight-bold) {
  --fontWeight: 630;
}

:is(.font-extrabold, .font-weight-extrabold) {
  --fontWeight: 730;
}

:is(.font-black, .font-weight-black) {
  --fontWeight: 900;
}

strong {
  --fontWeight: 630;
}

.text-shadow {
  text-shadow: 0 5px oklch(from var(--body-color) l c h/0.7);
}

blockquote {
  font-family: var(--bodyFontFamily);
  max-width: 60%;
  justify-self: end;
  margin: 2lh 0;
}
blockquote:first-child {
  margin-top: 0;
}
blockquote:not(.col_12 .ce_text > blockquote) {
  max-width: 60%;
}
@media (max-width: 567px) {
  blockquote {
    margin-top: 1.2lh !important;
    max-width: unset !important;
  }
}
blockquote p {
  text-align: left;
}

.ce_text table {
  width: fit-content !important;
  height: initial !important;
}
.ce_text table tr {
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.ce_text table tr:not(:has(strong), thead tr):hover {
  background-color: var(--customColor1);
}
.ce_text table td {
  padding-top: 0.25ch;
  padding-bottom: 0.25ch;
  border-bottom: 1px solid oklch(from var(--body-color) l c h/0.6);
}
.ce_text table td:not(:first-child) {
  padding-left: 1.5ch;
}

#main :is(p, ul) a {
  color: var(--body-color, #000);
  background-color: oklch(from var(--accentColor) l c h/0.3);
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
#main :is(p, ul) a:hover, #main :is(p, ul) a:active, #main :is(p, ul) a:focus-visible {
  color: var(--white);
  background-color: oklch(from var(--accentColor) l c h/1);
}

.ce_text p {
  line-height: 1.44;
  margin: 0;
}
.ce_text :is(ul, ol, p, table, blockquote, form):not(:last-child) {
  margin-bottom: 1lh;
}

@media (max-width: 767px) {
  :is(h1, .h1, h1 p, .headline_style_h1) {
    font-size: var(--h1-fontSize) !important;
  }
  :is(h2, .h2, h2 p, .headline_style_h2) {
    font-size: var(--h2-fontSize) !important;
    margin-bottom: 0.6lh;
  }
  :is(h3, .h3, h3 p, .headline_style_h3) {
    font-size: var(--h3-fontSize) !important;
    margin-bottom: 0.6lh;
  }
  :is(h4, .h4, h4 p, .headline_style_h4) {
    font-size: var(--h4-fontSize) !important;
    margin-bottom: 0.6lh;
  }
  :is(h5, .h5, h5 p, .headline_style_h5) {
    font-size: var(--h5-fontSize) !important;
    margin-bottom: 0.6lh;
  }
  :is(h6, .h6, h6 p, .headline_style_h6) {
    font-size: var(--h6-fontSize) !important;
    margin-bottom: 0.6lh;
  }
}
#slider {
  overflow: hidden;
}

body.is-category .hero-wrapper {
  position: relative;
  z-index: 0;
}
body.is-category #fix-wrapper {
  margin-top: calc(var(--headerHeight, 0) + 0.5rem);
}

/*
.body { background-color: #fff; }
#contentwrapper {
	position: relative;
	z-index: 10;

	body.is-home & {
		animation: intoView .8s linear;
		animation-timeline: view();
		animation-range: entry 15%;
		@starting-style {
		opacity: 0;
		transform: skewY(15deg);
		scale: .6 1;
	}
	}


}
@keyframes intoView {
	from { opacity:0; transform: skewY(15deg); scale: .6 1; box-shadow: 0 0 9px rgba(0,0,0,.4); filter:blur(7px); }
	to { opacity: 1; transform: skewY(0); scale: 1; box-shadow: none; filter:blur(0);  }

}*/
@media (max-width: 767px) {
  #fix-wrapper {
    position: absolute;
  }
  .autogrid_row .colunn:not(:first-child) {
    margin-top: 2lh;
  }
  :is(.autogrid_wrapper.gutter_l, .autogrid_row.gutter_l) > div {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}
.d-block {
  display: block;
}

.d-inline {
  display: inline;
}

.d-inlineblock {
  display: inline-block;
}

.pos-absolute {
  position: absolute !important;
}

.pos-absolute-desktop {
  position: absolute !important;
}
@media (max-width: 567px) {
  .pos-absolute-desktop {
    position: relative !important;
  }
}

.pos-relative {
  position: relative;
}

.hidden {
  display: none !important;
}

.d-flex {
  display: flex;
}

.flex-direction-column {
  flex-direction: column;
}
.flex-direction-column-reverse {
  flex-direction: column-reverse;
}
.flex-direction-row {
  flex-direction: row;
}
.flex-direction-row-reverse {
  flex-direction: row-reverse;
}

.align-items-start {
  align-items: flex-start;
}
.align-items-center {
  align-items: center;
}
.align-items-end {
  align-items: flex-end;
}

.justify-content-start {
  justify-content: flex-start;
}
.justify-content-center {
  justify-content: center;
}
.justify-content-end {
  justify-content: flex-end;
}

.d-grid {
  display: grid;
}

:is(.colorAccent).darker1 {
  background: oklch(from var(--accentColor) calc(l - 0.085) c h);
}
:is(.colorAccent).lighter1 {
  background: oklch(from var(--accentColor) calc(l + 0.085) c h);
}
:is(.colorAccent).darker2 {
  background: oklch(from var(--accentColor) calc(l - 0.17) c h);
}
:is(.colorAccent).lighter2 {
  background: oklch(from var(--accentColor) calc(l + 0.17) c h);
}
:is(.colorAccent).darker3 {
  background: oklch(from var(--accentColor) calc(l - 0.255) c h);
}
:is(.colorAccent).lighter3 {
  background: oklch(from var(--accentColor) calc(l + 0.255) c h);
}
:is(.colorAccent).darker4 {
  background: oklch(from var(--accentColor) calc(l - 0.34) c h);
}
:is(.colorAccent).lighter4 {
  background: oklch(from var(--accentColor) calc(l + 0.34) c h);
}
:is(.colorAccent).darker5 {
  background: oklch(from var(--accentColor) calc(l - 0.425) c h);
}
:is(.colorAccent).lighter5 {
  background: oklch(from var(--accentColor) calc(l + 0.425) c h);
}
:is(.colorAccent).darker6 {
  background: oklch(from var(--accentColor) calc(l - 0.51) c h);
}
:is(.colorAccent).lighter6 {
  background: oklch(from var(--accentColor) calc(l + 0.51) c h);
}
:is(.colorAccent).darker7 {
  background: oklch(from var(--accentColor) calc(l - 0.595) c h);
}
:is(.colorAccent).lighter7 {
  background: oklch(from var(--accentColor) calc(l + 0.595) c h);
}
:is(.colorAccent).darker8 {
  background: oklch(from var(--accentColor) calc(l - 0.68) c h);
}
:is(.colorAccent).lighter8 {
  background: oklch(from var(--accentColor) calc(l + 0.68) c h);
}
:is(.colorAccent).darker9 {
  background: oklch(from var(--accentColor) calc(l - 0.765) c h);
}
:is(.colorAccent).lighter9 {
  background: oklch(from var(--accentColor) calc(l + 0.765) c h);
}
:is(.colorAccent).darker10 {
  background: oklch(from var(--accentColor) calc(l - 0.85) c h);
}
:is(.colorAccent).lighter10 {
  background: oklch(from var(--accentColor) calc(l + 0.85) c h);
}

.overlay:is(.ce_fancybox.fancy_box_color_accent.darker1 div) {
  background: oklch(from var(--accentColor) calc(l - 0.085) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.lighter1 div) {
  background: oklch(from var(--accentColor) calc(l + 0.085) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.darker2 div) {
  background: oklch(from var(--accentColor) calc(l - 0.17) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.lighter2 div) {
  background: oklch(from var(--accentColor) calc(l + 0.17) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.darker3 div) {
  background: oklch(from var(--accentColor) calc(l - 0.255) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.lighter3 div) {
  background: oklch(from var(--accentColor) calc(l + 0.255) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.darker4 div) {
  background: oklch(from var(--accentColor) calc(l - 0.34) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.lighter4 div) {
  background: oklch(from var(--accentColor) calc(l + 0.34) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.darker5 div) {
  background: oklch(from var(--accentColor) calc(l - 0.425) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.lighter5 div) {
  background: oklch(from var(--accentColor) calc(l + 0.425) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.darker6 div) {
  background: oklch(from var(--accentColor) calc(l - 0.51) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.lighter6 div) {
  background: oklch(from var(--accentColor) calc(l + 0.51) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.darker7 div) {
  background: oklch(from var(--accentColor) calc(l - 0.595) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.lighter7 div) {
  background: oklch(from var(--accentColor) calc(l + 0.595) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.darker8 div) {
  background: oklch(from var(--accentColor) calc(l - 0.68) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.lighter8 div) {
  background: oklch(from var(--accentColor) calc(l + 0.68) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.darker9 div) {
  background: oklch(from var(--accentColor) calc(l - 0.765) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.lighter9 div) {
  background: oklch(from var(--accentColor) calc(l + 0.765) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.darker10 div) {
  background: oklch(from var(--accentColor) calc(l - 0.85) c h);
}
.overlay:is(.ce_fancybox.fancy_box_color_accent.lighter10 div) {
  background: oklch(from var(--accentColor) calc(l + 0.85) c h);
}

@keyframes slideIn {
  to {
    opacity: 1;
    transform: translate(0) scale(1);
  }
}
@keyframes fade {
  from {
    pointer-events: none;
    opacity: 0;
  }
  to {
    pointer-events: all;
    opacity: 1;
  }
}
@keyframes rotate360 {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(359.9999deg);
  }
}
@keyframes linkBlop {
  0% {
    transform: scale(1);
    animation-play-state: running;
  }
  30% {
    transform: scale(0.91);
  }
  100% {
    transform: scale(1);
    animation-play-state: paused;
  }
}
.anim-blop {
  transform-origin: 50%;
}
.anim-blop:focus, .anim-blop:active {
  animation-name: linkBlop;
  animation-duration: 0.11s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

@media (max-width: 767px) {
  #stickyheader .header.cloned {
    border-radius: 5rem;
    max-width: 90vw;
    justify-self: center;
    margin: 1ch auto 0 auto;
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(15px);
    border: 2px solid rgba(255, 255, 255, 0.9);
  }
  #stickyheader .header.cloned > .inside {
    padding: 0;
    margin-left: 6px;
    max-width: unset !important;
    margin-right: 12px;
  }
  #stickyheader .header.cloned .mmenu_trigger .label {
    font-variation-settings: "wght" 800;
  }
}

@media (max-width: 767px) {
  #bottom > .inside {
    font-size: 0.81rem;
  }
}

#top {
  width: max-content;
  max-width: 84vmax;
  margin: 0.5rem auto 0 auto;
  border-radius: 3rem;
  overflow: hidden;
}
#top .topbar {
  display: flex;
  max-width: unset;
  font-family: var(--headlineFontFamily);
  --fontWeight: 580;
}
#top .topbar .autogrid_row {
  flex-wrap: nowrap;
}
#top:hover {
  border-radius: 3rem;
  overflow: hidden;
}

@media (max-width: 767px) {
  body.is-category #top {
    margin-top: 6.3rem;
  }
  body.is-category #top-wrapper {
    display: none;
  }
}

#mainMenu {
  z-index: 90;
  position: sticky;
  top: 0px;
  margin-top: calc(-1 * var(--headerHeight, 0) / 1);
  pointer-events: none;
}
#mainMenu .mainmenu {
  position: relative;
  pointer-events: none;
  float: unset;
  height: 0;
  max-width: max-content;
  margin: 0 auto;
  opacity: 0;
  transform: scaleY(0) rotateX(120deg) translateY(100px);
  transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
#mainMenu .menuboxes {
  opacity: 1;
  transform-origin: top center;
  transform: scaleY(1);
  transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  pointer-events: all;
}
body:not(.is-category) #mainMenu.is-sticky {
  padding-top: 0.72rem;
}
body:not(.is-category) #mainMenu.is-sticky .mainmenu {
  opacity: 1;
  transform: scaleY(1);
  transition-delay: 0.6s;
  pointer-events: all;
  height: auto;
}
body:not(.is-category) #mainMenu.is-sticky .menuboxes {
  opacity: 0;
  transform: scaleY(0) scaleX(0.5) rotateX(120deg) translateY(-400px);
  pointer-events: none;
}
body.is-category #mainMenu {
  position: fixed;
  margin-top: 0.3rem;
  width: 100%;
}
body.is-category #mainMenu .mainmenu {
  opacity: 1;
  transform: scaleY(1);
  transition-delay: 0.6s;
  pointer-events: all;
  height: auto;
  margin-top: 0.5rem;
}
body.is-category #mainMenu .menuboxes {
  display: none;
}
#mainMenu .mod_navigation {
  --borderRadius: 3rem;
  --borderWidth: 8px;
  --backdropBlur: 6px;
  --blur: blur(6px);
}
#mainMenu .mod_navigation.mainmenu::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  backdrop-filter: blur(var(--backdropBlur));
  -webkit-backdrop-filter: blur(6px);
  border-radius: var(--borderRadius, 3rem);
  overflow: hidden;
  z-index: -1;
}
#mainMenu .mod_navigation.mainmenu ul.level_1 {
  display: flex;
  justify-content: center;
  gap: 0;
  overflow: hidden;
  background-color: var(--white);
  background-clip: padding-box;
  border-radius: var(--borderRadius, 3rem);
  border: var(--borderWidth) solid oklch(from var(--white) l c h/0.4);
  box-shadow: 0 2px 14px -3px rgba(255, 255, 255, 0.9), -4px 2px 17px rgba(0, 0, 0, 0.18);
}
#mainMenu .mod_navigation.mainmenu ul.level_1 li:not(.has-megamenu) {
  position: static;
  margin: 0;
}
#mainMenu .mod_navigation.mainmenu ul.level_1 li:not(.has-megamenu) > a {
  min-width: max-content;
  padding: 0.9rem 3ch 0.3rem 3ch;
  background-color: var(--accentColor);
  box-shadow: -1px -2px 6px oklch(from var(--body-color) l c h/0.39);
  color: var(--bodyColor);
  --fontWeight: 490;
}
#mainMenu .mod_navigation.mainmenu ul.level_1 li:not(.has-megamenu) > a.active, #mainMenu .mod_navigation.mainmenu ul.level_1 li:not(.has-megamenu) > a.trail {
  opacity: 1;
  background-color: var(--customColor1);
  --fontWeight: 630;
}
#mainMenu .mod_navigation.mainmenu ul.level_1 li:not(.has-megamenu) > a:hover:not(.active, .trail) {
  opacity: 1;
  background-color: oklch(from var(--accentColor) calc(l + 0.09) c h);
  transform: scale(1.06);
}
#mainMenu .mod_navigation.mainmenu ul.level_1 li:not(.has-megamenu).level_1:not(.active, .trail):hover > a {
  opacity: 1;
  background-color: oklch(from var(--accentColor) calc(l + 0.09) c h);
  transform: scale(1.06);
}
#mainMenu .mod_navigation.mainmenu ul.level_1 li:not(.has-megamenu).submenu:hover ul {
  display: block !important;
}
#mainMenu .mod_navigation.mainmenu ul.level_1 li:not(.has-megamenu).submenu:hover .submenu-wrapper {
  height: 90vh;
}
#mainMenu .mod_navigation.mainmenu ul.level_1 li:not(.has-megamenu).submenu:hover ul.level_2 {
  height: 90vh;
  max-height: fit-content;
}
#mainMenu .mod_navigation.mainmenu ul.level_1 li:not(.has-megamenu) > .submenu-wrapper {
  overflow: hidden;
  height: 0;
  max-height: max-content;
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition-behavior: allow-discrete;
}
#mainMenu .mod_navigation.mainmenu ul.level_2 {
  height: 0;
  overflow: hidden;
  padding: 0;
  margin-top: calc(-1 * var(--borderWidth));
  border: var(--borderWidth) solid oklch(from var(--white) l c h/0.4);
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  background-clip: padding-box;
  backdrop-filter: blur(var(--backdropBlur));
  -webkit-backdrop-filter: blur(6px);
  transition-behavior: allow-discrete;
}
#mainMenu .mod_navigation.mainmenu ul.level_2 > .level_2 > a {
  padding: 0.5rem 2ch 0.3rem 2ch !important;
}
@supports (hanging-punctuation: first) and (font: -apple-system-body) and (-webkit-appearance: none) {
  #mainMenu .mod_navigation.mainmenu ul.level_1 {
    display: block;
  }
  #mainMenu .mod_navigation.mainmenu ul.level_1 > li {
    margin: 0 -2px;
  }
}

@media (max-width: 960px) {
  #mainMenu {
    position: relative;
    margin-top: calc(-0.5 * var(--headerHeight, 0));
  }
}
@media (max-width: 767px) {
  #mainMenu .menuboxes {
    display: none;
  }
  #mmenu {
    top: 0 !important;
    padding-top: 9rem !important;
    background-color: var(--accentColor);
    height: -webkit-fill-available !important;
  }
}
.has-megamenu {
  overflow: hidden;
}
.level_1.submenu:hover .submenu-wrapper:has(.has-megamenu) {
  max-height: 90vh;
}
.submenu-wrapper:has(.has-megamenu) {
  position: absolute;
  display: flex;
  justify-content: stretch;
  left: 0;
  top: 45px;
  width: 100%;
  height: max-content;
  max-height: 0vh;
  z-index: -1;
  transition: max-height 0.51s ease-out, border-color 0.1s linear;
}
.submenu-wrapper:has(.has-megamenu) .autogrid_row {
  --borderRadius: 2rem;
  width: 100%;
  margin: 0;
  padding-top: 1.5lh;
  padding-bottom: 0.72lh;
  border: var(--borderWidth) solid oklch(from var(--white) l c h/0.4);
  border-top-width: 0;
  border-bottom-left-radius: var(--borderRadius);
  border-bottom-right-radius: var(--borderRadius);
  background-clip: padding-box;
  background-color: oklch(from var(--accentColor) calc(l + 0.09) c h) !important;
}
.level_1:is(.active) .submenu-wrapper:has(.has-megamenu) .autogrid_row {
  background-color: var(--customColor1) !important;
}
.has-megamenu .content-element-group {
  grid-template: 1fr 1fr/1fr 1fr;
  gap: 1ch;
}
.has-megamenu [class*=ce_iconbox] {
  overflow: hidden;
  display: flex;
  gap: 0.72ch;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
}
.has-megamenu [class*=ce_iconbox] .ce_iconbox_v3_inside {
  height: 100%;
  padding: 12px;
}
.has-megamenu [class*=ce_iconbox] .image_container {
  position: absolute;
  inset: 0;
  opacity: 0.3;
}
.has-megamenu [class*=ce_iconbox] .image_container img {
  height: 100%;
  object-fit: cover;
}
.has-megamenu [class*=ce_iconbox] .ce_iconbox_v3_content {
  z-index: 1;
  width: 100%;
  padding: 0;
  float: none;
}
.has-megamenu [class*=ce_iconbox] .ce_iconbox_v3_content .headline {
  line-height: 1.2;
}
.has-megamenu [class*=ce_iconbox] .fonticon {
  align-self: flex-end;
  font-size: 1.8rem;
  color: var(--white);
  z-index: 1;
}
.has-megamenu [class*=ce_iconbox] .hyperlink_txt {
  position: absolute;
  top: 0;
  left: 0;
  inset: 0;
  z-index: 5;
  cursor: pointer;
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

#mmenu .mod_navigation .vlist.level_2 li > a {
  font-size: 0.87rem;
}
#mmenu .mod_navigation .vlist.level_2 li:last-child > a {
  margin-bottom: 1.25ch;
}

.ce_group_logo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.ce_group_logo .ce_shift_wrapper_start {
  z-index: 25;
  width: fit-content;
}
.ce_group_logo .ce_shift_wrapper_start:has(.mod_logo) {
  anchor-name: --logo-container;
}
@media (max-width: 567px) {
  .ce_group_logo .ce_shift_wrapper_start {
    transform: translateX(-20vw) translateY(52vh) rotate(15deg) !important;
  }
}
.ce_group_logo .mod_logo {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  height: auto;
  overflow: visible;
}
.ce_group_logo .mod_logo .image_container {
  max-width: 400px;
  height: auto;
  margin: 18%;
}
@media (max-width: 767px) {
  .ce_group_logo .mod_logo {
    width: 80vmin;
  }
}

body.is-home .mod_logo a {
  pointer-events: none;
}

.conic-background {
  --colorGradient1: rgb(29, 58, 151);
  --stepGradient1: 11deg;
  --colorGradient2: rgb(39, 105, 73);
  --stepGradient2: 6deg;
  position: absolute;
  width: anchor-size(width);
  height: anchor-size(height);
  mix-blend-mode: plus-lighter;
  position-anchor: --logo-container;
  position-area: center;
  z-index: 20;
  filter: blur(3px);
  mask: radial-gradient(circle, black 30%, rgba(0, 0, 0, 0) 66%);
  opacity: 0;
  background-color: transparent;
  background-repeat: repeat;
  background-image: repeating-conic-gradient(rgb(from var(--colorGradient1) r g b/0) var(--stepGradient1), var(--colorGradient1) var(--stepGradient1), var(--colorGradient1) calc(2 * var(--stepGradient1)), rgb(from var(--colorGradient1) r g b/0) calc(2 * var(--stepGradient1)), rgb(from var(--colorGradient1) r g b/0) calc(3 * var(--stepGradient1))), repeating-conic-gradient(rgb(from var(--colorGradient2) r g b/0) var(--stepGradient2), var(--colorGradient2) var(--stepGradient2), var(--colorGradient2) calc(2 * var(--stepGradient2)), rgb(from var(--colorGradient2) r g b/0) calc(2 * var(--stepGradient2)), rgb(from var(--colorGradient2) r g b/0) calc(3 * var(--stepGradient2))) !important;
  background-size: 10% 10%, 20% 150%;
  animation: rotate360 20s infinite, bsizes 60s infinite, 0.6s fadingin 1.8s 1 forwards !important;
}
@supports not (position-anchor: --logo-container) {
  .conic-background {
    width: 520px;
    height: auto;
    aspect-ratio: 0.9;
    top: 22vh;
    right: 5vw;
  }
  @media (max-width: 768px) {
    .conic-background {
      --conicPaddingX: 50px;
      top: 52.2vh;
      right: 0;
    }
  }
}
@supports (-moz-appearance: none) or (not (contain: paint)) or (-webkit-locale: auto) {
  .conic-background {
    --posX: -5vmax;
    --posY: 22.5vmin;
    right: 0;
    width: 520px;
    height: auto;
    aspect-ratio: 0.9;
    translate: var(--posX) var(--posY);
    position-anchor: unset !important;
    position-area: unset !important;
  }
  @media (max-width: 767px) {
    .conic-background {
      width: 420px;
      --posX: -5vw;
      --posY: 50.5vh;
    }
  }
}

@keyframes bsizes {
  0%, 100% {
    background-size: 10% 10%, 20% 100%;
  }
  20% {
    background-size: 30% 30%, 7% 15%;
  }
  70% {
    background-size: 60% 5%, 120% 70%;
  }
}
@keyframes fadingin {
  from {
    opacity: 0;
  }
  to {
    opacity: 0.66;
  }
}
#accessibility_widget {
  right: -20px;
}

:root:has(.acc_fontsize_1) {
  --visualScale: 1.05;
}
:root:has(.acc_fontsize_2) {
  --visualScale: 1.1;
}
:root:has(.acc_fontsize_3) {
  --visualScale: 1.15;
}
:root:has(.acc_fontsize_4) {
  --visualScale: 1.2;
}
:root:has(.acc_fontsize_5) {
  --visualScale: 1.25;
}

.acc_boldface * {
  --fontWeight: 560;
}

.acc_contrast #mainMenu .mod_navigation.mainmenu ul li:not(.active, .trail) a {
  color: var(--white) !important;
}

.acc_disable_animations .mod_logo::before {
  animation-duration: 0s;
}

/*.acc_default_fonts {
	--bodyFontFamily: "Andika", var(--font-sans-serif); // "Lora", var(--font-serif);
	--headlineFontFamily: "Andika", var(--font-sans-serif);
}*/
@media (max-width: 767px) {
  .accessibility_widget_trigger {
    display: none;
  }
}
.module-plenta-jobs-basic-offer-list {
  --fontColor: var(--white,#fff);
  --fontColorHover: var(--bodyColor,#000);
  --cardBgColor: var(--accentColor);
  --cardBgColorHover: var(--customColor1);
  --cardBorderRadius: 1ch;
}
.module-plenta-jobs-basic-offer-list.d-grid {
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: max-content;
  gap: clamp(1.25ch, 1.5rem, 2.1rem);
}
@media (max-width: 2299px) {
  .module-plenta-jobs-basic-offer-list.d-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 991px) {
  .module-plenta-jobs-basic-offer-list.d-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .module-plenta-jobs-basic-offer-list.d-grid {
    grid-template-columns: repeat(1, 1fr);
  }
}
.module-plenta-jobs-basic-offer-list .card {
  position: relative;
  border-radius: var(--cardBorderRadius);
  background: var(--cardBgColor);
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.module-plenta-jobs-basic-offer-list .card .card-body {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}
.module-plenta-jobs-basic-offer-list .card .card-body > a {
  display: grid;
  grid-template: "type location" 1fr "title title" 1fr "date date" max-content/50% 50%;
  width: 100%;
  height: 100%;
  padding: 0.9rem 0.75rem;
}
.module-plenta-jobs-basic-offer-list .card .job-offer-info {
  display: contents;
}
.module-plenta-jobs-basic-offer-list .card .job-offer-title {
  grid-area: title;
  color: var(--fontColor);
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  font-family: var(--bodyFontFamily);
}
.module-plenta-jobs-basic-offer-list .card .job-offer-title span {
  display: block;
  margin-top: 0.5rem;
  font-size: var(--body-fontSize, 1rem);
  letter-spacing: 0.126rem;
}
.module-plenta-jobs-basic-offer-list .card .employment-type {
  grid-area: type;
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  white-space: nowrap;
}
.module-plenta-jobs-basic-offer-list .card .job-location {
  grid-area: location;
  justify-self: end;
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.module-plenta-jobs-basic-offer-list .card .publication-date {
  grid-area: date;
  color: var(--fontColor);
  font-size: var(--paragraph-small-font-size, 0.75rem);
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.module-plenta-jobs-basic-offer-list .card :is(.employment-type, .job-location) {
  display: inline-flex;
  place-content: center;
  height: fit-content;
  width: fit-content;
  padding: 0.12rem 0.72rem;
  border: 1px solid currentColor;
  border-radius: 2rem;
  color: var(--fontColor);
  font-size: var(--paragraph-small-font-size, 0.75rem);
  --fontWeight: 730;
}
.module-plenta-jobs-basic-offer-list .card:hover, .module-plenta-jobs-basic-offer-list .card:focus-within {
  --fontColor: var(--fontColorHover);
  --cardBgColor: var(--cardBgColorHover);
  transform: scale(1.04);
  box-shadow: 3px 2px 12px oklch(from var(--bgColorDarkGray) l c h/0.21);
}

.jobs-filter {
  flex-wrap: wrap;
  gap: 0.1ch 2ch;
}
@media (max-width: 768px) {
  .jobs-filter {
    justify-content: space-evenly;
  }
}
.jobs-filter > :is(h1, h2, h3, h4, h5, h6):first-child {
  flex: 1 100%;
  width: 100%;
}

.module-plenta-jobs-basic-filter {
  --filterColor: var(--bodyColor,#000);
  --filterColorHover: var(--bodyColor,#000);
  --filterBgColor: var(--bgColorGray);
  --filterBgColorHover: oklch(from var(--bgColorGray) calc(l + .1) c h);
  --filterBgColorActive: var(--accentColor);
  --filterBorderRadius: 1ch;
  --fontWeight: 730;
}
.module-plenta-jobs-basic-filter fieldset {
  position: absolute;
  z-index: 100;
  padding: 0;
  border: 0;
  height: max-content;
  max-height: 0;
  overflow: hidden;
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition-duration: 0.9s;
}
.module-plenta-jobs-basic-filter fieldset input {
  display: none;
}
.module-plenta-jobs-basic-filter fieldset label {
  width: 100% !important;
}
.module-plenta-jobs-basic-filter fieldset > span {
  margin-bottom: 0;
}
.module-plenta-jobs-basic-filter .plenta_jobs_basic_filter_widget_headline, .module-plenta-jobs-basic-filter fieldset label {
  display: inline-flex;
  place-content: center;
  height: fit-content;
  width: fit-content;
  min-width: 15ch;
  padding: 0.09rem 0.6rem;
  border-radius: 2rem;
  background: var(--filterBgColor);
  font-size: var(--paragraph-small-font-size, 0.75rem);
  color: var(--filterColor);
  cursor: pointer;
}
.module-plenta-jobs-basic-filter .widget-html {
  margin-bottom: 5px;
}
.module-plenta-jobs-basic-filter .widget-choice {
  display: contents;
}
.module-plenta-jobs-basic-filter .widget-choice fieldset {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.module-plenta-jobs-basic-filter .widget-choice fieldset > span:hover label {
  background: var(--filterBgColorHover);
}
.module-plenta-jobs-basic-filter .widget-choice fieldset > span:has(input:checked) label {
  background: var(--filterBgColorActive) !important;
}
.module-plenta-jobs-basic-filter .widget-choice fieldset .item-counter {
  margin: 0 0 0 0.3ch;
}
.module-plenta-jobs-basic-filter:hover fieldset, .module-plenta-jobs-basic-filter:focus fieldset {
  max-height: 100%;
}
.module-plenta-jobs-basic-filter:hover .plenta_jobs_basic_filter_widget_headline, .module-plenta-jobs-basic-filter:focus .plenta_jobs_basic_filter_widget_headline {
  background: var(--filterBgColorActive);
}
.module-plenta-jobs-basic-filter:has(input:checked) .plenta_jobs_basic_filter_widget_headline {
  background: var(--filterBgColorActive);
}
.module-plenta-jobs-basic-filter:hover ~ .jobs-filter-search .widget-text {
  max-height: 0% !important;
  overflow: hidden !important;
}
.module-plenta-jobs-basic-filter.jobs-filter-search .widget-text {
  position: absolute;
  z-index: 100;
  height: max-content;
  max-height: 0;
  overflow: hidden;
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition-duration: 0.9s;
}
.module-plenta-jobs-basic-filter.jobs-filter-search input {
  padding: 0.75rem 1.25ch;
  border-radius: 2rem;
  overflow: hidden;
}
.module-plenta-jobs-basic-filter.jobs-filter-search:hover .widget-text, .module-plenta-jobs-basic-filter.jobs-filter-search:focus .widget-text {
  max-height: 100%;
}

.joboffer-labels {
  display: flex;
  flex-wrap: wrap;
  gap: 0.42ch;
  margin-bottom: 0.6lh;
}
@media (max-width: 767px) {
  .joboffer-labels {
    margin-bottom: 1.11lh;
  }
}
.joboffer-labels > span {
  font-size: var(--h6-fontSize);
  white-space: nowrap;
  background: var(--accentColor);
  padding: 0.25ch 1.5ch;
  border-radius: 1ch;
  color: var(--white);
}
@media (max-width: 767px) {
  .joboffer-labels > span {
    font-size: var(--h6-fontSize);
  }
}

.module-plenta-jobs-basic-offer-reader h1 {
  margin-bottom: 1lh;
  padding-top: 3.6rem;
}
.module-plenta-jobs-basic-offer-reader .back {
  position: absolute;
  right: 0;
  top: 0;
  margin-top: -2px;
}
@media (max-width: 767px) {
  .module-plenta-jobs-basic-offer-reader .back {
    margin-top: 0px;
  }
}
.module-plenta-jobs-basic-offer-reader .back a {
  display: inline-block;
  text-align: center;
  padding: 0.25ch 1.5ch !important;
  min-width: unset;
  font-variation-settings: "wght" 800;
  font-size: var(--hyperlink-small-font-size);
  line-height: var(--hyperlink-small-line-height);
  border-width: var(--hyperlink-small-border-width);
  border: 1px solid var(--accentColor);
  border-width: var(--hyperlink-small-border-width);
  border-radius: 20px;
  color: var(--accentColor);
}
@media (max-width: 767px) {
  .module-plenta-jobs-basic-offer-reader .back a {
    padding: 0.25ch 1ch !important;
    line-height: 1.45;
  }
}

#slider:has(.module-plenta-jobs-basic-offer-reader) {
  max-height: var(--customMaxHeight);
  overflow: hidden;
}
#slider:has(.module-plenta-jobs-basic-offer-reader) .ce_bgimage-inside {
  margin: 0;
  padding: 0 !important;
  width: 100%;
  max-width: unset;
}
#slider:has(.module-plenta-jobs-basic-offer-reader) .ce_bgimage-inside .ce_image {
  width: inherit;
}
#slider:has(.module-plenta-jobs-basic-offer-reader) .ce_bgimage-inside img {
  width: 100%;
  max-height: var(--customMaxHeight);
  object-fit: cover;
}
@media (max-width: 567px) {
  #slider:has(.module-plenta-jobs-basic-offer-reader) .ce_bgimage-inside img {
    height: var(--customMaxHeight);
  }
}
#slider:has(.module-plenta-jobs-basic-offer-reader) .module-plenta-jobs-basic-offer-reader h1 {
  display: none;
}

.is-home .module-plenta-jobs-basic-offer-list {
  display: flex;
  flex-direction: column;
  gap: 3ch;
  width: 100%;
}
.is-home .module-plenta-jobs-basic-offer-list .card-body > a {
  display: grid;
  grid-template: "type location" max-content "title title" 1fr/50% 50% !important;
  gap: 0.5lh 0;
}
.is-home .module-plenta-jobs-basic-offer-list .card-body .publication-date {
  display: none;
}
.is-home .module-plenta-jobs-basic-offer-list {
  /*	.job-offer-title {
  		padding: 2ch;
  		border-radius: var(--cardBorderRadius);
  		background-color: var(--cardBgColor);
  		transition: var.$basicTransition; 

  		:is(h1,h2,h3,h4,h5,h6) { font-family: var(--bodyFontFamily);}

  		a {
  			display: flex;
  			flex-direction: row-reverse;
  			gap: 3ch;
  			transition: var.$basicTransition;
  			> :first-child { flex-grow: 10; } 
  			.job-offer-info {
  				flex: 0;
  				width: 15%;
  			}
  		}
  		&:hover {
  			background-color: var(--cardBgColorHover);
  			a { color: var(--body-color); }
  		}
  	}*/
}

.mod_newslist {
  overflow: visible;
}
.mod_newslist .card {
  text-align: left;
  background-color: oklch(from var(--bgColorGray) l c h/0.7);
  padding: 2ch 1.5ch 1ch 1.5ch;
  border-radius: 2rem;
  corner-shape: squircle;
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  /* border: 3px solid var(--accentColor); */
}
.mod_newslist .card .card-body .ce_headline {
  margin-bottom: 0.25ch;
}
.mod_newslist .card .card-body .ce_text {
  color: var(--body-color, #000);
}
.mod_newslist .card .card-body a {
  display: flex;
  flex-direction: column;
}
.mod_newslist .card .card-footer a {
  --font-weight: 630;
  color: var(--white, #fff);
}
.mod_newslist .card:hover {
  background-color: var(--customColor1);
  transform: scale(1.04);
  box-shadow: 3px 2px 12px oklch(from var(--bgColorDarkGray) l c h/0.21);
}
.mod_newslist .card:hover .card-footer a {
  color: var(--body-color, #000);
}
.mod_newslist.newslist_alt .card {
  padding: 3ch 2.5ch 2.5ch 2.5ch;
  background-color: var(--bgColorLightGray);
  box-shadow: inset 1px 1px 8px oklch(from var(--bgColorGray) l c h/0.57);
}
.mod_newslist.newslist_alt .card .card-footer a {
  color: var(--accentColor, #000);
}
.mod_newslist.newslist_alt:hover .card {
  background-color: var(--customColor1);
  box-shadow: 1px -3px 5px oklch(from var(--bgColorGray) l c h/0.37);
}
.mod_newslist.newslist_alt:hover .card-footer a {
  color: var(--white, #fff);
}

#slider:has(.mod_newsreader) {
  max-height: var(--customMaxHeight);
  overflow: hidden;
}
#slider:has(.mod_newsreader) .ce_bgimage-inside {
  margin: 0;
  padding: 0 !important;
  width: 100%;
  max-width: unset;
}
#slider:has(.mod_newsreader) .ce_bgimage-inside img {
  width: 100%;
  height: 100%;
  max-height: var(--customMaxHeight);
  object-fit: cover;
}
@media (max-width: 567px) {
  #slider:has(.mod_newsreader) .ce_bgimage-inside img {
    height: var(--customMaxHeight);
  }
}
#slider:has(.mod_newsreader) {
  /*	.module-plenta-jobs-basic-offer-reader {
  		h1 { display: none; }

  	} */
}

.ce_revolutionslider .rs-container.fullscreen {
  min-width: 100vw;
}
.ce_revolutionslider .ce_revolutionslider_text {
  overflow: visible;
  line-height: 0.88;
  text-shadow: 1px 4px oklch(from var(--body-color) l c h/0.6);
}
@media (max-width: 767px) {
  .ce_revolutionslider .ce_revolutionslider_text {
    white-space: wrap !important;
    width: 90vw !important;
    max-width: 90vw !important;
  }
}

.mod_article .autogrid_row:has(> .column.col_12:only-child:not(.full-width)) > .column:not(:has(.column)) {
  min-width: 50ch;
  max-width: 90ch;
  margin: 0 auto;
}
@media (max-width: 1200px) {
  .mod_article .autogrid_row:has(> .column.col_12:only-child:not(.full-width)) > .column:not(:has(.column)) {
    max-width: 70ch;
  }
}
@media (max-width: 767px) {
  .mod_article .autogrid_row:has(> .column.col_12:only-child:not(.full-width)) > .column:not(:has(.column)) {
    min-width: unset;
  }
}

.ce_text.width-l {
  max-width: 80ch;
}

p + p {
  margin-top: 1.5rem;
}

.same-height-wrap .ce_fancybox .atropos-scale {
  height: 100%;
  height: stretch;
}

@media (max-width: 990px) {
  .atropos-rotate-touch {
    touch-action: auto !important;
    -webkit-touch-callout: default !important;
  }
}
.news_latest_topics .col_12 {
  max-width: unset !important;
  width: 100%;
}
.news_latest_topics .mod_newslist {
  display: flex;
  height: 100%;
}
@media (max-width: 990px) {
  .news_latest_topics .mod_newslist {
    flex-wrap: wrap;
    height: max-content;
  }
}
.news_latest_topics .ce_fancybox {
  height: 100%;
}
@media (max-width: 990px) {
  .news_latest_topics .ce_fancybox {
    flex: 0 0 50vw;
    height: unset !important;
  }
}
@media (max-width: 767px) {
  .news_latest_topics .ce_fancybox {
    flex: 0 0 100vw;
    height: fit-content;
  }
}
.news_latest_topics .ce_fancybox [class*=atropos] {
  height: 100%;
}
.news_latest_topics .ce_fancybox .inside {
  height: 100%;
}
@media (max-width: 767px) {
  .news_latest_topics .ce_fancybox .inside {
    min-height: unset !important;
    border-bottom: 1px solid oklch(from var(--accentColor) l c h/1);
  }
  .news_latest_topics .ce_fancybox .inside .link_text {
    pointer-events: all;
  }
}
@media (max-width: 767px) {
  .news_latest_topics .ce_fancybox .content p {
    display: none;
  }
}

.ce_image_text_box {
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.ce_image_text_box:hover {
  transform: scale(1.04);
  box-shadow: 3px 2px 12px oklch(from var(--bgColorDarkGray) l c h/0.21);
}
.same_height .ce_image_text_box {
  height: 100%;
}
.ce_image_text_box .image_container {
  aspect-ratio: 16/9;
}
.ce_image_text_box img {
  width: 100% !important;
  aspect-ratio: 16/9;
  object-fit: cover;
}
.ce_image_text_box .ce_image_text_box_content {
  padding: 0 3ch;
}
.ce_image_text_box .hyperlink_txt {
  margin-top: 1.5rem;
  margin-bottom: 2.4rem;
  background: var(--accentColor);
  border-color: var(--accentColor);
  color: var(--white, #fff);
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.ce_image_text_box .hyperlink_txt:hover, .ce_image_text_box .hyperlink_txt:active {
  background: oklch(from var(--accentColor) l c calc(h + 0.33));
}
@media (max-width: 567px) {
  .contentwrap:has(.ce_image_text_box) {
    padding: 0 !important;
  }
}

#slider .ce_bgimage {
  --customMaxHeight: 650px;
  min-height: 500px;
}
@media (max-width: 1400px) {
  .ce_bgimage .ce_bgimage-inside.contentwrap {
    padding: 0;
    max-width: unset !important;
  }
}
.ce_bgimage.no-padding-inside .contentwrap {
  padding-left: 0;
  padding-right: 0;
}
@media (max-width: 767px) {
  .ce_bgimage .ce_bgimage-inside {
    padding-right: var(--contentPaddingLeftRight) !important;
    padding-left: var(--contentPaddingLeftRight) !important;
  }
}

.ce_flipbox {
  --iconMargin: 20px;
}
.ce_flipbox:has(.icon_front) .icon_front {
  position: absolute;
  top: var(--iconMargin);
  right: var(--iconMargin);
}
.ce_flipbox :is(.ce_flipbox_frontside, .ce_flipbox_backside) {
  align-items: stretch;
  justify-content: stretch;
}
.ce_flipbox :is(.ce_flipbox_frontside_inside, .ce_flipbox_backside_inside) {
  display: flex;
  flex-grow: 2;
}
.ce_flipbox :is(.ce_flipbox_frontside_inside, .ce_flipbox_backside_inside) .content_front {
  padding-top: 20px;
  flex-grow: 2;
}
.ce_flipbox .ce_flipbox_backside_inside {
  flex-direction: column;
}

.ce_map_group {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
}
.ce_map_group .btn-openmap {
  position: relative;
  z-index: 5;
}
.ce_map_group .btn-openmap a {
  margin-bottom: 0;
}
.ce_map_group .openmap {
  position: absolute !important;
  top: 101%;
  width: 100%;
  max-width: 100%;
  z-index: 1;
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.ce_map_group.show .openmap {
  top: 0%;
}
.ce_map_group.show .btn-openmap {
  content: "Karte schließen";
}

.mod_article:has(.gallery_collage) {
  background: oklch(from var(--customColor1) calc(l + 0.05) c h);
}

.ce_gallery.gallery_collage {
  --radius1: 40;
  --radius2: 35;
  overflow: visible;
}
.ce_gallery.gallery_collage ul {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15%, 1fr));
  gap: 1ch;
  align-items: stretch;
  justify-items: stretch;
  grid-auto-flow: dense;
}
.ce_gallery.gallery_collage ul li {
  position: relative !important;
  float: unset;
  grid-column: span 2;
  grid-row: span 4;
  width: 100%;
  z-index: 0;
}
.ce_gallery.gallery_collage ul li figure {
  border-radius: 0 calc(1% * var(--radius1)) 0 calc(1% * var(--radius2));
  border: 5px solid var(--customColor1);
  border-bottom-color: var(--accentColor);
  border-left-color: var(--accentColor);
  border-right-color: var(--white);
  border-right-width: 30px;
  rotate: calc(1deg * var(--rotation, 0));
  transform-origin: center;
  transition: all 0.23s cubic-bezier(0.455, 0.03, 0.515, 0.955), z-index 0.2s linear;
  transition-behavior: allow-discrete;
}
.ce_gallery.gallery_collage ul li:hover figure {
  scale: 1.6;
}
.ce_gallery.gallery_collage ul li:hover {
  transform: translateZ(20px);
  z-index: 10;
}
.ce_gallery.gallery_collage ul:has(li:hover) li:not(:hover) {
  transform: translateZ(-20px);
  filter: blur(3px);
}
.ce_gallery .gallery-thumbs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: max-content;
  gap: 1.3lh;
}
@media (max-width: 767px) {
  .ce_gallery .gallery-thumbs {
    grid-template-columns: 1fr;
  }
}
.ce_gallery .gallery-thumbs li {
  display: grid;
  grid-template: max-content/150px 1fr;
  gap: 2ch;
  align-items: end;
}
.ce_gallery .gallery-thumbs img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  object-position: center;
  background-color: oklch(from var(--body-color) calc(l + 0.42) c h);
  border: 6px solid oklch(from var(--body-color) l c h/0.39);
}
.ce_gallery .gallery-thumbs .img-text {
  margin-bottom: 0.6lh;
}
.ce_gallery .gallery-thumbs .img-text a {
  display: inline;
  background-color: oklch(from var(--accentColor) l c h/0) !important;
  font-variation-settings: "wght" 630;
}
.ce_gallery .gallery-thumbs .img-text a:hover {
  background-color: oklch(from var(--accentColor) l c h/0.78) !important;
}

.ce_form legend:has(.mandatory) {
  display: flex;
  gap: 0.5ch;
}

/*
@media (min-width: 1600px) {
	#main :not(.fullwidth) > .container:not(:has(.fullwidth-image)), #header .inside, .boxed-content .contentwrap {
		max-width: 84vw; 
	}
	.mod_article.fullwidth .mod_newsreader {
		.autogrid_row:not(.fullwidth) {
			max-width: 84vw; 
			margin-left: auto;
			margin-right: auto;
		}
	}
}
@media (min-width: 900px) {
	.mod_article.fullwidth .mod_newsreader {
		.autogrid_row:not(.fullwidth) {
			max-width: 90vw; 
			margin-left: auto!important;
			margin-right: auto!important;
		}
	}
}
@media (min-width: 569px) {
	.mod_article.fullwidth .mod_newsreader {
		.autogrid_row:not(.fullwidth) {
			max-width: 85vw; 
			margin-left: auto!important;
			margin-right: auto!important;
		}
	}
}
@media (max-width: 568px) {
	.mod_article.fullwidth .mod_newsreader {
		.autogrid_row:not(.fullwidth) {
			max-width: 92vw; 
			margin-left: auto!important;
			margin-right: auto!important;
		}
	}
}

.container:has(.fullwidth-image) {
	max-width: 100%!important;
}
*//*# sourceMappingURL=customize.css.map */