:root {
  --headerHeight: max(min(2rem + 5vw, 7rem), 4rem);
}

body {
  display: flex;
  flex-flow: column nowrap;
  position: relative;
  background: var(--contentBackdropBackground1);
}
body::before {
  content: "";
  -moz-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: var(--contentBackdropBackground2);
  -webkit-mask-image: url("/bilder/overhaul/background/backgroundPattern.svg");
          mask-image: url("/bilder/overhaul/background/backgroundPattern.svg");
}

.scrollDetector {
  width: 100%;
  height: 0;
}

.coverImage {
  display: block;
  position: relative;
  z-index: 4;
  width: 100%;
  height: 25rem;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  box-shadow: 0 0 1rem var(--shadowColor);
}

header {
  --shortDuration: 0.2s;
  --duration: 0.3s;
  --height: var(--headerHeight);
  --lineHeight: 2.75rem;
  --paddingBlock: 0;
  display: contents;
  width: 100%;
}
header .logo,
header .menu {
  border: 2px solid transparent;
  border-radius: 0.4rem;
  transition: background-color linear var(--shortDuration), border-color linear var(--shortDuration), transform ease var(--shortDuration);
}
header .logo {
  transform-origin: top left;
  outline: 2px solid transparent;
}
header .logo:focus-visible {
  outline-color: var(--focusColor2);
}
header .logo a:focus-visible {
  border-radius: 0.4rem;
}
header .menuWrapper {
  position: sticky;
  top: 0;
  z-index: 6;
  max-width: 100%;
  min-width: 0;
  box-shadow: 0 0 0 transparent;
  transition: var(--duration) ease box-shadow;
}
header .menuWrapper .menu > ul {
  padding-inline: var(--containerPadding-fieldset);
}
header .menu {
  overflow-x: auto;
  overscroll-behavior-x: contain;
  flex-shrink: 1;
  max-width: 100%;
}
header .menu > ul {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: var(--gapPair);
  width: -moz-max-content;
  width: max-content;
  margin: 0;
  padding: var(--paddingBlock) var(--containerPadding-fieldset);
}
header .menu > ul li {
  margin: 0;
  white-space: nowrap;
  list-style-type: none;
}
header .menu > ul li a {
  outline: 2px solid transparent;
  display: inline;
  position: relative;
  text-decoration: none;
  background: linear-gradient(90deg, var(--underlineColor1, currentColor), var(--underlineColor2, currentColor)) 100% 100%/0% 2px no-repeat;
  --transition-property: background-size;
  outline: 2px solid transparent;
  --underlineColor1: var(--menuTextColor1);
  --underlineColor2: var(--menuTextColor1);
  display: block;
  font-size: 1.2rem;
  line-height: var(--lineHeight);
  text-decoration: none !important;
  color: var(--menuTextColor1);
}
header .menu > ul li a:focus-visible {
  outline-color: var(--focusColor1);
}
header .menu > ul li a:hover {
  background-size: 100% 2px;
  background-position: 0% 100%;
  background-image: linear-gradient(90deg, var(--underlineHoverColor1, var(--underlineColor1, currentColor)), var(--underlineHoverColor2, var(--underlineColor2, currentColor)));
}
header .menu > ul li a:focus-visible {
  border-radius: var(--borderRadius-small);
}
header .menu > ul li a:focus-visible {
  outline-color: var(--linkFocusColor2);
}
@media (any-hover: none) {
  header .menu > ul li a {
    text-decoration: underline;
    background: none !important;
  }
}
header .menu > ul li a:focus-visible {
  outline-color: currentColor;
}
header .menu > ul li a span {
  vertical-align: middle;
}
header .menu > ul li a .icon {
  display: inline-block;
  overflow: hidden;
  overflow: clip;
  width: 1em;
  height: 1em;
  font-family: "Material Symbols Outlined";
  font-weight: inherit;
  font-style: normal;
  font-size: 1em;
  line-height: 1em;
  vertical-align: middle;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  font-feature-settings: "liga";
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-optical-sizing: auto;
  font-variation-settings: "FILL" 0, "wght" 700, "GRAD" 0, "opsz" 20;
  -webkit-user-select: none; /* Safari */
  -moz-user-select: none; /* Firefox */ /* IE10+/Edge */
  user-select: none; /* Standard */
  font-family: "Material Symbols Outlined";
  font-size: var(--md-medium);
}
header .menu > ul li a[aria-current] {
  color: var(--menuColorColor2);
}
header .menu > ul li a:hover, header .menu > ul li a:focus-visible {
  --underlineColor1: var(--menuHoverTextColor1);
  --underlineColor2: var(--menuHoverTextColor2);
  color: var(--menuHoverTextColor1);
}
header .menu:focus-within {
  border-color: var(--focusColor2);
}
@media (pointer: fine) {
  header {
    --lineHeight: 1.2rem;
    --paddingBlock: 0.5rem;
  }
  header .menu > ul li a {
    font-size: 1rem;
  }
  header .menu > ul li a .icon {
    font-size: var(--md-medium);
  }
}
@media (max-width: 36rem) {
  header .logo,
  header .menuWrapper {
    background: var(--headerBackground1);
    border-radius: 0;
  }
  header .logo {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-self: stretch;
  }
  header .menu > ul {
    padding-inline: var(--containerPadding-content);
  }
  :root.scrolling header .menuWrapper {
    box-shadow: 0 0 1rem var(--shadowColor);
  }
}
@media (min-width: 36rem) {
  header {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: flex-start;
    gap: var(--gapPair);
    position: sticky;
    top: 0;
    z-index: 5;
    padding-inline: var(--containerPadding-medium);
    background: var(--headerBackground1);
    box-shadow: 0 0 1rem var(--shadowColor);
  }
  header .logo a:focus-visible {
    outline: none;
  }
  header .logo:focus-within {
    border-color: var(--focusColor2);
  }
  header .menu {
    transform: translateY(calc(var(--height) / 2 - (var(--lineHeight) / 2 + var(--paddingBlock) + 2px)));
  }
  header .menuWrapper {
    position: static;
  }
  :root.scrolling header {
    background: transparent;
    box-shadow: none;
  }
  :root.scrolling header .logo,
  :root.scrolling header .menu {
    border-color: var(--contentBorder2);
    background: var(--headerBackgroundColor1);
    transform: translateY(var(--containerPadding-medium));
  }
}

.pageContent {
  align-self: center;
  flex-grow: 1;
  position: relative;
  z-index: 2;
  max-width: 100%;
  background: var(--contentBackground2);
  box-shadow: 0 0 1rem var(--shadowColor);
}
.pageContent > .breadcrumbs {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: var(--gapPair);
  padding: var(--gapWithinPair) var(--containerPadding-page);
  border-bottom: 2px solid var(--contentBorder1);
  background: var(--headerBackground1);
}
.pageContent > .breadcrumbs h1 {
  margin: 0;
  font-size: 1.1rem;
  font-weight: 400;
  color: var(--textColor);
}
.pageContent > .breadcrumbs ol {
  display: flex;
  flex-flow: row wrap;
  align-items: stretch;
  gap: calc(var(--gapWithinPair) / 2 - var(--md-large) / 2);
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.pageContent > .breadcrumbs ol li {
  display: flex;
  flex-flow: row nowrap;
  gap: calc(var(--gapWithinPair) / 2 - var(--md-large) / 2);
  align-items: center;
  margin: 0;
  font-size: 1.3rem;
}
.pageContent > .breadcrumbs ol li::before {
  content: "navigate_next";
  display: inline-block;
  overflow: hidden;
  overflow: clip;
  width: 1em;
  height: 1em;
  font-family: "Material Symbols Outlined";
  font-weight: inherit;
  font-style: normal;
  font-size: 1em;
  line-height: 1em;
  vertical-align: middle;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  font-feature-settings: "liga";
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-optical-sizing: auto;
  font-variation-settings: "FILL" 0, "wght" 700, "GRAD" 0, "opsz" 20;
  -webkit-user-select: none; /* Safari */
  -moz-user-select: none; /* Firefox */ /* IE10+/Edge */
  user-select: none; /* Standard */
  font-size: calc(var(--md-large));
  color: var(--mdColor1);
}
.pageContent > .breadcrumbs ol li > a {
  outline: 2px solid transparent;
  display: inline;
  position: relative;
  text-decoration: none;
  background: linear-gradient(90deg, var(--underlineColor1, currentColor), var(--underlineColor2, currentColor)) 100% 100%/0% 2px no-repeat;
  --transition-property: background-size;
  color: var(--textGrayColor);
}
.pageContent > .breadcrumbs ol li > a:focus-visible {
  outline-color: var(--focusColor1);
}
.pageContent > .breadcrumbs ol li > a:hover {
  background-size: 100% 2px;
  background-position: 0% 100%;
  background-image: linear-gradient(90deg, var(--underlineHoverColor1, var(--underlineColor1, currentColor)), var(--underlineHoverColor2, var(--underlineColor2, currentColor)));
}
.pageContent > .breadcrumbs ol li > a:focus-visible {
  border-radius: var(--borderRadius-small);
}
.pageContent > .breadcrumbs ol li > a:focus-visible {
  outline-color: var(--linkFocusColor2);
}
@media (any-hover: none) {
  .pageContent > .breadcrumbs ol li > a {
    text-decoration: underline;
    background: none !important;
  }
}
.pageContent > .breadcrumbs ol li > a:hover, .pageContent > .breadcrumbs ol li > a:focus-visible {
  --underlineColor1: var(--linkHover1);
  --underlineColor2: var(--linkHover2);
  color: var(--linkHover1);
}
.pageContent > .breadcrumbs ol li > a[aria-current] {
  --underlineColor1: var(--menuHoverTextColor1);
  --underlineColor2: var(--menuHoverTextColor2);
  text-decoration: none !important;
  font-style: italic;
  color: var(--textBoldColor);
}
.pageContent > .breadcrumbs ol li:first-child::before {
  content: none;
}
@media (pointer: fine) {
  .pageContent > .breadcrumbs ol {
    gap: calc(var(--gapWithinPair) / 2 - var(--md-medium) / 2);
  }
  .pageContent > .breadcrumbs ol li {
    gap: calc(var(--gapWithinPair) / 2 - var(--md-medium) / 2);
    font-size: 1.1rem;
  }
  .pageContent > .breadcrumbs ol li::before {
    font-size: var(--md-medium);
  }
}
.pageContent > :nth-child(2) {
  max-width: 100%;
  padding-block: var(--gapSection2);
  padding-inline: var(--containerPadding-content);
}
.pageContent > :nth-child(2) h1 {
  margin-top: 0;
}
.pageContent > :nth-child(2).leftNavMenu {
  display: flex;
  flex-flow: row wrap;
  padding-top: 0;
}
.pageContent > :nth-child(2).leftNavMenu .pageNav {
  grid-area: sidebar;
  margin-left: calc(var(--containerPadding-content) * -1);
}
.pageContent > :nth-child(2).leftNavMenu > :nth-child(2) {
  margin-top: var(--gapSection2);
  max-width: 100%;
}
@media (max-width: 30rem) {
  .pageContent {
    width: 100%;
  }
}

footer {
  display: flex;
  flex-flow: row wrap;
  gap: var(--gapSection1);
  justify-content: center;
  justify-self: stretch;
  position: relative;
  z-index: 3;
  box-sizing: border-box;
  width: 100%;
  background: var(--headerSecondaryBackground1);
  box-shadow: 0 0 3rem var(--shadowColor);
}
footer .info {
  padding-block: var(--gapPair);
}
footer .info address {
  font-style: normal;
}
footer .info ul {
  padding: 0;
  margin: 0;
}
footer .info ul li {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: var(--gapWithinSubPair);
  margin: 0;
}
footer .info,
footer .info ul {
  display: flex;
  flex-flow: column nowrap;
  gap: var(--gapWithinPair);
}
footer .info .login,
footer .info .place,
footer .info .contact {
  color: var(--textSecondaryColor);
}
footer .info .login::before,
footer .info .place::before,
footer .info .contact::before {
  display: inline-block;
  overflow: hidden;
  overflow: clip;
  width: 1em;
  height: 1em;
  font-family: "Material Symbols Outlined";
  font-weight: inherit;
  font-style: normal;
  font-size: 1em;
  line-height: 1em;
  vertical-align: middle;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  font-feature-settings: "liga";
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-optical-sizing: auto;
  font-variation-settings: "FILL" 0, "wght" 700, "GRAD" 0, "opsz" 20;
  -webkit-user-select: none; /* Safari */
  -moz-user-select: none; /* Firefox */ /* IE10+/Edge */
  user-select: none; /* Standard */
  font-family: "Material Symbols Outlined";
  font-size: var(--md-small);
  color: var(--textSecondaryGrayColor);
}
footer .info .login::before {
  content: "login";
}
footer .info .place::before {
  content: "place";
}
footer .info .contact::before {
  content: "mail";
}
footer .logo {
  --height: min(max(10vw, 8rem), 8rem, 35vw);
}/*# sourceMappingURL=mainDocument.css.map */