/* lexend-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: 'Lexend';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/lexend-v25-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lexend-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: 'Lexend';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/lexend-v25-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
:root {
  --body-font-family: 'Lexend';
  --cassiopeia-font-family-headings: 'Lexend';
  --body-font-size: 1.1rem;
  --orange: #f39100;
  --gelb: #ffef89;
  --gelb2: #ffdc01;
  --rot: #e30613;
}
:focus-visible {
    outline: 3px solid var(--orange);
    outline-offset: 2px;
}
h6, .h6,
h5, .h5,
h4, .h4,
h3, .h3,
h2, .h2,
h1, .h1 {
  margin-bottom: 1rem;
}
a[href$=".pdf"]::before {
  content: '\f1c1';
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  margin-right: .5rem;
}
a[href$=".docx"]::before {
  content: '\f1c2';
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  margin-right: .5rem;
}
blockquote {
  margin-left: .5rem;
  padding-left: 1rem;
  border-left: 4px solid #ccc;
  color: #3c434b;
}
.table th {
  font-weight: 700;
}
.table-time th,
.table-time td {
    width: fit-content;
    white-space: nowrap;
}
.btn {
    &:focus-visible {
        box-shadow: none;
        outline: 3px solid var(--orange);
        outline-offset: 2px;
    }
}
.btn-primary {
  background-color: var(--orange);
  border-color: var(--orange);
  color: #000;
  &:hover,
  &:focus {
    background-color: var(--gelb);
    border-color: var(--gelb);
    color: #000;
  }
}
.metismenu.mod-menu .metismenu-item > a:focus,
.metismenu.mod-menu .metismenu-item > button:focus {
    outline: none;
}
.metismenu.mod-menu .metismenu-item > a:focus-visible,
.metismenu.mod-menu .metismenu-item > button:focus-visible {
    outline: 3px solid var(--orange);
}
article ul {
  margin-block-end: 1rem;
}
.container-header {
  background-image: none;
  background-color: #fff;
  .navbar-brand {
    margin-inline: auto;
    display: flex;
    flex-wrap: wrap;
    column-gap: 3rem;
    align-items: center;
    justify-content: center;
    img {
      width: 100px;
    }
  }
  .site-description {
    color: #000;
    font-size: 1.5rem;
    text-align: center;
  }
  &::after {
    content: "";
    display: block;
    background: repeating-linear-gradient(-45deg,hsla(0,0%,100%,0),hsla(0,0%,100%,0) 6px,#e6e6e6 0,#e6e6e6 8px);
    height: 1rem;
  }
  .navbar-toggler {
    color: var(--body-color);
    border: 1px solid var(--body-color);
  }
  .container-nav {
    background-color: #fbf4cc;
    padding: .5em;
    margin-bottom: .5em;
    nav {
      margin-top: 0;
    }
    li {
      color: #000;
    }
  }
  .container-search {
    margin-top: 0;
    .mod-custom p {
      margin-block-end: 0;
    }
  }
}
@media (width <= 767.98px) {
  .container-header .container-nav .container-search, .container-header .container-nav nav {
    margin-top: 0;
  }
}
.container-header .metismenu > li > a:hover::after, .container-header .metismenu > li > button:hover::before, .container-header .metismenu > li.active > a::after, .container-header .metismenu > li.active > button::before {
  background: #939393;
}
.container-banner .banner-overlay .overlay {
  background-color: transparent;
}
.com-content-article.item-pageigs {
  display: grid;
  gap: 2rem;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  .page-header:has(h1)::after,
  .page-header:has(h1)::before {
    content: "";
    display: block;
    background: repeating-linear-gradient(-45deg,hsla(0,0%,100%,0),hsla(0,0%,100%,0) 6px,#e6e6e6 0,#e6e6e6 8px);
    height: 1rem;
  }
  h1 {
    margin-top: 1rem;
  }
  .item-image img {
    box-shadow: 2rem 2rem 0 6px #e6e6e6;
  }
  @media (width >= 778px) {
    grid-template-columns: .5fr 1fr;
    .page-header:has(h1) {
      grid-column: span 2;
      text-align: center;
    }
    .page-header:has(h2) {
      grid-column: span 2;
      grid-row: 2;
      text-align: center;
    }
    .item-image {
      grid-column: 1;
      grid-row: 3;
    }
    .com-content-article__body {
      grid-column: 2;
      grid-row: 3;
    }
  }
}
figure:has(figcaption) {
  display: table;
  figcaption {
    display: table-caption;
    caption-side: bottom;
  }
}
.boxed {
  .blog-item:nth-child(3n + 1) {
    --cassiopeia-color-primary: var(--rot);
  }
  .blog-item:nth-child(3n + 2) {
    --cassiopeia-color-primary: var(--orange);
  }
  .blog-item:nth-child(3n + 3) {
    --cassiopeia-color-primary: var(--gelb2);
  }
}
.aktuelles {
  grid-auto-rows: repeat(5,auto);
  .mod-articles-item {
    grid-row: span 5;
    display: grid;
    grid-template-rows: subgrid;
    row-gap: 0;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 2px 8px;
    .mod-articles-title {
      grid-row: 2;
      font-size: 1.25rem;
    }
    .mod-articles-image {
      grid-row: 1;
      img {
        aspect-ratio: 5/4;
        object-fit: cover;
        object-position: top;
      }
    }
    > :not(.mod-articles-image) {
      padding-inline: .5rem;
    }
  }
}
.container-bottom-a {
  grid-column: full-start/full-end;
  padding: 4rem 1em;
  background-color: var(--gelb);
  margin-block-start: 3rem;
  .bottom-a {
    max-width: 1320px;
    margin-inline: auto;
  }
  &:before {
    content: "";
    display: block;
    background: repeating-linear-gradient(-45deg,hsla(0,0%,100%,0),hsla(0,0%,100%,0) 6px,#e30613 0,#e30613 8px);
    width: 7rem;
    aspect-ratio: 1/1;
    border-radius: 50%;
    position: absolute;
    top: -3.5rem;
    left: 10%;
  }
  &::after {
    content: "";
    display: block;
    background: repeating-linear-gradient(-45deg,hsla(0,0%,100%,0),hsla(0,0%,100%,0) 6px,#8999ff 0,#8999ff 8px);
    height: 5rem;
    width: 10rem;
    position: absolute;
    bottom: -2.5rem;
    right: 10%;
  }
}
.container-bottom-b,
.container-top-a {
  h2 {
    margin-block-end: 2rem;
    text-align: center;
    &::after {
      content: "";
      display: block;
      background: repeating-linear-gradient(-45deg,hsla(0,0%,100%,0),hsla(0,0%,100%,0) 6px,#e6e6e6 0,#e6e6e6 8px);
      height: 1rem;
      margin-block-start: 1rem;
    }
  }
}
.container-top-a {
  padding-block: 2rem;
}
.container-bottom-b {
  padding-block: 4rem;
  display: block;
}
.logos {
  .mod-articles-items {
    padding-top: 4rem;
  }
  .mod-articles-item {
    justify-content: center;
    align-items: center;
    height: 100%;
    img {
      width: 200px;
      margin: auto;
    }
  }
  &::before {
    content: "";
    display: block;
    background: repeating-linear-gradient(-45deg,hsla(0,0%,100%,0),hsla(0,0%,100%,0) 6px,#e6e6e6 0,#e6e6e6 8px);
    height: 1rem;
    margin-block-start: 1rem;
  }
}
.container-footer {
  background-image: none;
  background-color: #8999ff;
  color: #000;
}
.footer .grid-child {
  align-items: flex-start;
}
.back-to-top-link {
  color: #000;
  border-color: #000;
}
.back-to-top-link:hover, .back-to-top-link:focus {
  color: #000;
  background-color: var(--orange);
  border-color: var(--orange);
}