/* Image Style: Content Image Width, ca */
:root {
  --gap: min(2.8571428571vw, 40px);
  --rowgap: min(10vh,100px);
  --maxtext: min(40em,660px);
  --mintext: min(14em,360px);
}
@media screen and (min-width: 1400px) {
  :root {
    --gap:80px;
  }
}

html, body, .dialog-off-canvas-main-canvas, .layout-container {
  height: 100%;
}

footer {
  position: sticky;
  top: 100vh;
}

.max-width, .tabs {
  width: 100%;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}

.no-paragraphs .max-width,
.no-paragraphs + .max-width,
.path-user:not(.has-sidebar) .region-content .max-width,
.has-sidebar .layout-content,
.max-text,
.layout__region--first, .layout__region--second, .layout__region--third, .cards-item {
  max-width: 660px;
}

.mobile-padding {
  padding-left: 20px;
  padding-right: 20px;
}

.paragraph--type--layout.border,
.paragraph--no--layout.border {
  margin-left: auto;
  margin-right: auto;
  max-width: calc(100% - 40px);
}

.region-header {
  display: flex;
  gap: var(--gap, 80px);
  align-items: baseline;
}

#navigation {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
}

.node > div:not(.bg-lightgrey):last-child {
  margin-bottom: calc(2 * var(--rowgap));
}

.has-sidebar .layout-content {
  margin-bottom: 100px;
}

.layout-sidebar .block:last-child {
  margin-bottom: 0;
}

.layout-container {
  padding-top: 100px;
}
@media screen and (min-width: 900px) {
  .layout-container {
    padding-top: 131px;
  }
}

@media screen and (min-width: 1024px) {
  .layout-container {
    padding-top: 200px;
  }
}

/* grid */
.grid,
.grid > .max-width {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(360px, 100%), 1fr));
  gap: var(--gap, 80px);
  row-gap: var(--rowgap, 100px);
  -webkit-hyphens: auto;
          hyphens: auto;
}
.grid .more-link,
.grid > .max-width .more-link {
  width: auto;
  margin: 0;
}
.paragraph--type--image .grid,
.paragraph--type--image .grid > .max-width {
  grid-template-columns: repeat(auto-fit, minmax(min(80px, 100%), 1fr));
}

.grid-1-2 {
  grid-template-columns: repeat(1, 1fr);
}
@media screen and (min-width: 780px) {
  .grid-1-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}
.grid-1-2-4 {
  grid-template-columns: repeat(1, 1fr);
  gap: calc(0.5 * var(--gap, 80px));
}
@media screen and (min-width: 780px) {
  .grid-1-2-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 1480px) {
  .grid-1-2-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
.grid-1-3 {
  grid-template-columns: repeat(1, 1fr);
}
@media screen and (min-width: 1130px) {
  .grid-1-3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
.grid-1-3-6 {
  grid-template-columns: repeat(1, 1fr);
  gap: calc(0.5 * var(--gap, 80px));
}
@media screen and (min-width: 1130px) {
  .grid-1-3-6 {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 1960px) {
  .grid-1-3-6 {
    grid-template-columns: repeat(6, 1fr);
  }
}

.flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: var(--gap, 80px);
}
.text-float-left .flex {
  flex-direction: row-reverse;
}
.flex > div, .flex > nav {
  flex: 1 1 360px;
}
.flex-1-2 .flex .layout__region--second, .flex.node .layout__region--second {
  flex-basis: 660px;
}

.same-height .multi-items > div {
  display: flex;
  flex-direction: column;
}
.same-height .multi-items > div p:last-child {
  margin-top: auto;
}

.flex-sidebars {
  flex-flow: row wrap;
}

.layout-sidebar {
  flex: 1 1 auto;
}

.has-sidebar .node {
  flex: 999 100%;
}

/* https://ishadeed.com/article/less-absolute-positioning-modern-css/ */
.region-highlighted {
  text-align: center;
}

.gradient-frame::after,
.gradient::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.gradient-frame::after {
  max-width: 1920px;
}

.field-bannertext {
  z-index: 3;
}

.gradient::after,
.header-banner img,
.region-highlighted img {
  border-radius: 0;
  aspect-ratio: 2.746365105;
}
.is-front .gradient::after,
.is-front .header-banner img,
.is-front .region-highlighted img {
  aspect-ratio: 2.364394993;
}

/* 240 = Platz, damit H1 angezeigt wird */
.region-highlighted img {
  width: clamp(min(1480px, 100%), min(100%, 1920px), (100vh - 240px) * 2.746365105);
}

.layout__region.layout__region--top,
.layout__region.layout__region--bottom {
  flex-basis: 100%;
  width: 100%;
  grid-column: 1/-1;
}

.layout--threecol .layout__region--top,
.layout--twocol .layout__region--top {
  margin-bottom: calc(var(--rowgap, 100px) * -1);
}

/* PAGE LAYOUT */
@media all and (min-width: 680px) {
  .has-sidebar .node {
    flex: 999 0px;
    min-width: 480px;
  }
}
@media only screen and (min-width: 900px) {
  footer > .flex {
    flex-direction: row-reverse;
  }
}
@media all and (min-width: 960px) {
  .layout-sidebar-first {
    order: 1;
    max-width: 440px;
  }
  .has-sidebar .node {
    order: 2;
  }
  .layout-sidebar-second {
    order: 3;
    max-width: 440px;
  }
}
@media screen and (min-width: 1440px) {
  .mobile-padding, .tabs {
    padding-left: 0;
    padding-right: 0;
  }
  .paragraph--type--layout.border,
  .paragraph--no--layout.border {
    max-width: 1400px;
  }
}/*# sourceMappingURL=layout.css.map */
