@charset "UTF-8";
/*
*
*   Collider Custom CSS
*   Base Framework
*   Author: Andreas Beck
*
*/
/* -- Reset -- */
* {
  padding: 0;
  margin: 0;
  /* -webkit-tap-highlight-color: transparent; */
}
*:focus {
  outline: none;
}
*,
::before,
::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html[dir="rtl"] {
  direction: rtl;
}
html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  word-break: break-word;
}
html,
body {
  height: 100%;
  width: 100%;
}
input.formText,
input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
textarea {
  font-family: inherit;
  -webkit-appearance: none;
  appearance: none;
  -webkit-border-radius: 0;
  border-radius: 0;
}
select,
input {
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-border-radius: 0;
  border-radius: 0;
}
button {
  cursor: pointer;
  overflow: hidden;
  user-select: none;
}
textarea {
  resize: vertical;
  overflow: auto;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled] {
  opacity: 0.5;
  pointer-events: none;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0 !important;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
img.responsive {
  width: 100% !important;
  height: auto !important;
}
/* Accessibility */
[aria-busy="true"] {
  cursor: progress;
}
[aria-controls] {
  cursor: pointer;
}
[aria-disabled="true"],
[disabled] {
  cursor: not-allowed;
}
[aria-hidden="false"][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  position: absolute;
}
/* Correctures */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
legend {
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
}
table {
  border-collapse: collapse;
}
img {
  border-style: none;
}
iframe {
  border-style: none;
}
nav ol,
nav ul {
  list-style: none;
  padding: 0;
}
/* -- Experimental Features  -- */
@media (prefers-reduced-motion: reduce) {
  html,
  body {
    scroll-behavior: auto;
  }
}
a {
  color: #000;
  cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 120%;
  font-weight: 300;
}
h1.highlight,
h2.highlight,
h3.highlight,
h4.highlight,
h5.highlight,
h6.highlight {
  color: var(--color-blue);
}
h1.orange,
h2.orange,
h3.orange,
h4.orange,
h5.orange,
h6.orange {
  color: var(--color-orange);
}
h1.underline,
h2.underline,
h3.underline,
h4.underline,
h5.underline,
h6.underline {
  border-bottom: 1px solid #DFDFDF;
  padding-bottom: 40px;
}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  color: inherit;
  text-decoration: none;
}
h1,
.like-h1 {
  font-size: 3.625rem;
  margin-bottom: 60px;
}
@media screen and (max-width: 760px) {
  h1,
  .like-h1 {
    font-size: 2.375rem;
    margin-bottom: 30px;
  }
}
h1:has(+ .subline),
.like-h1:has(+ .subline) {
  margin-bottom: 40px;
}
h1 + .subline,
.like-h1 + .subline {
  margin-bottom: 100px;
}
h2,
.like-h2 {
  font-size: 3rem;
  margin-bottom: 50px;
  font-weight: 300;
}
@media screen and (max-width: 760px) {
  h2,
  .like-h2 {
    font-size: 1.75rem;
    margin-bottom: 30px;
  }
}
h3,
.like-h3 {
  font-size: 1.5rem;
  margin-bottom: 30px;
  font-weight: bold;
}
@media screen and (max-width: 760px) {
  h3,
  .like-h3 {
    font-size: 1.375rem;
    margin-bottom: 20px;
  }
}
h4,
.like-h4 {
  font-size: 1.125rem;
  margin-bottom: 25px;
  font-weight: bold;
}
.subline {
  font-weight: bold;
}
.subline.orange {
  color: var(--color-orange);
}
.subline.blue {
  color: var(--color-blue);
}
p {
  margin: 0 0 20px;
  font-size: 1.125rem;
  line-height: 150%;
}
p a {
  text-decoration: none;
  color: var(--color-blue);
}
p a:hover {
  text-decoration: underline;
}
p.hint {
  color: #777;
}
hr {
  border: 0;
  border-bottom: 1px solid #DDD;
  margin: 40px 0;
}
.success {
  color: var(--color-green);
}
.alert {
  color: var(--color-red);
}
@font-face {
  font-family: 'Mosk';
  src: url('../font/mosk_light_300-webfont.woff2') format('woff2'), url('../font/mosk_light_300-webfont.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Mosk';
  src: url('../font/mosk_normal_400-webfont.woff2') format('woff2'), url('../font/mosk_normal_400-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Mosk';
  src: url('../font/mosk_semi-bold_600-webfont.woff2') format('woff2'), url('../font/mosk_semi-bold_600-webfont.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'iconfont';
  src: url('../font/iconfont/icomoon.eot?ix8kjm');
  src: url('../font/iconfont/icomoon.eot?ix8kjm#iefix') format('embedded-opentype'), url('../font/iconfont/icomoon.ttf?ix8kjm') format('truetype'), url('../font/iconfont/icomoon.woff?ix8kjm') format('woff'), url('../font/iconfont/icomoon.svg?ix8kjm#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
[class^="icon-"]:before,
[class*=" icon-"]:before {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'iconfont' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-print:before {
  content: "\e900";
}
.icon-home:before {
  content: "\e901";
}
.icon-checked:before {
  content: "\e902";
}
.icon-search-light:before {
  content: "\e903";
}
.icon-search:before {
  content: "\e904";
}
.icon-docs:before {
  content: "\e905";
}
.icon-arrow-down:before {
  content: "\e906";
}
.icon-help:before {
  content: "\e907";
}
.icon-share:before {
  content: "\e908";
}
.icon-quote:before {
  content: "\e909";
}
.icon-economy:before {
  content: "\e90a";
}
.icon-binocular:before {
  content: "\e90b";
}
.icon-handshake:before {
  content: "\e90c";
}
.icon-chat:before {
  content: "\e90d";
}
.icon-contract:before {
  content: "\e90e";
}
.icon-financeplan:before {
  content: "\e90f";
}
.icon-bank:before {
  content: "\e910";
}
.icon-play:before {
  content: "\e911";
}
.icon-phone:before {
  content: "\e912";
}
.icon-xing:before {
  content: "\e913";
}
.icon-facebook:before {
  content: "\e914";
}
.icon-twitter:before {
  content: "\e915";
}
.icon-mail:before {
  content: "\e916";
}
.icon-fax:before {
  content: "\e917";
}
.icon-close:before {
  content: "\e918";
}
.icon-volume:before {
  content: "\e91a";
}
.icon-pause:before {
  content: "\e919";
}
.icon-mute:before {
  content: "\e91b";
}
.icon-checked-round:before {
  content: "\e91c";
}
.icon-consulting:before {
  content: "\e91d";
}
.icon-download:before {
  content: "\e91e";
}
.icon-failed:before {
  content: "\e91f";
}
.icon-youtube:before {
  content: "\e920";
}
.icon-linkedin:before {
  content: "\e921";
}
.icon-dismissed:before {
  content: "\e922";
}
.icon-grid:before {
  content: "\e923";
}
.icon-list:before {
  content: "\e924";
}
*:focus-visible {
  outline: 2px solid var(--color-blue);
  outline-offset: 3px;
}
.form-check-radio input:focus-visible + label em {
  outline: 2px solid var(--color-blue);
  outline-offset: 3px;
  position: relative;
  z-index: 1;
}
.layout-grid {
  display: flex;
  gap: var(--grid-gutter);
  position: fixed;
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  justify-content: space-between;
  z-index: 100;
  pointer-events: none;
  width: 1280px;
  display: none;
}
.layout-grid div {
  background: red;
  opacity: 0.2;
  height: 100vh;
  flex: 1;
}
/*
  @transition

  global definition of transition properties.

  Styleguide Config.Variables.Transition
*/
/*
  @borderRadius

  global definition of border-radius.

  Styleguide Config.Variables.borderRadius
*/
/*
  @boxShadow

  global definition of box-shadow.

  Styleguide Config.Variables.boxShadow
*/
:root {
  --color-blue: #0089C1;
  --color-lightblue: #CCE7F3;
  --color-green: #6AB023;
  --color-limegreen: #C9D30E;
  --color-orange: #F18C00;
  --color-red: #F13517;
  --color-grey: #B3B3B3;
  --color-lightgrey: #F2F2F2;
  --color-black: #222222;
  --color-greylines: #DFDFDF;
}
body.contrast {
  --color-blue: #333333;
  --color-orange: #666666;
  --color-green: #666666;
}
body.contrast figure picture img,
body.contrast picture img,
body.contrast .acc-container .acc-content img {
  filter: grayscale(1) contrast(1.3);
}
body.contrast figure.img figcaption,
body.contrast .card .caption,
body.contrast .hero figure figcaption .inner,
body.contrast .content-img > figure nav.inpage,
body.contrast .content-img .image:not(figure) nav.inpage {
  background: #333333 !important;
}
body.contrast .video button::before,
body.contrast .tags li:not(.green, .orange, .blue),
body.contrast .meta-links button em,
body.contrast .meta-links a em,
body.contrast .card .inner small,
body.contrast .card figure.img.icon strong,
body.contrast .notification,
body.contrast .info .tags + span {
  color: #333333 !important;
}
body.contrast .breadcrumb li a {
  color: #666666 !important;
}
body.contrast .quickstart::before,
body.contrast .row.highlight {
  background: linear-gradient(180deg, var(--color-blue) 54.75%, var(--color-orange) 100%);
}
.grid.debug [class*="col-"] span {
  border: 1px solid var(--color-blue);
  min-height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  border-radius: 0;
}
/*
  .reset-ul()

  removes margin, padding and bullets from lists.

  Styleguide Config.Mixins.reset-ul()
*/
html {
  font-size: 16px;
}
body {
  overflow-x: hidden;
  font-family: 'Mosk', Arial, Helvetica, sans-serif;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  height: auto;
  color: #222222;
}
header {
  height: 90px;
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 9999;
  transition: height 400ms cubic-bezier(0.22, 1, 0.36, 1);
  background: var(--color-blue);
}
header.transparent {
  background: none;
}
header .content-width {
  height: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
  align-items: stretch;
  position: initial;
}
header .logo {
  display: block;
  width: 140px;
  height: 110px;
  padding: 30px 20px 20px 20px;
  background: #FFFFFF;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.18);
  margin: 15px 0 0 30px;
}
@media screen and (min-width: 760px) {
  header .logo {
    width: 200px;
    height: 150px;
    margin: 0 0 0 40px;
    padding: 40px 30px 30px 30px;
  }
}
header .logo img {
  height: 100%;
  width: 100%;
  object-fit: contain;
}
header nav > ul {
  white-space: nowrap;
  height: 100%;
}
header nav > ul li {
  display: inline-block;
  height: 100%;
}
header nav > ul li a,
header nav > ul li .button {
  text-decoration: none;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  height: 100%;
  background: transparent;
  border: none;
}
header nav > ul li a.button,
header nav > ul li .button.button {
  vertical-align: middle;
  color: #FFFFFF;
}
header nav > ul li a:focus-visible,
header nav > ul li .button:focus-visible {
  outline: 2px solid #FFFFFF;
}
header nav > ul li a:hover,
header nav > ul li .button:hover {
  color: var(--color-blue);
  background: transparent;
}
header nav > ul > li {
  line-height: 100%;
}
header nav.main {
  flex: 1;
}
header nav.main .menu-wrapper > ul li {
  height: auto;
  line-height: initial;
}
header nav.main .menu-wrapper > ul li a,
header nav.main .menu-wrapper > ul li button {
  height: auto;
  font-size: 2.375rem;
  color: var(--color-blue);
  font-weight: 300;
  background: none;
  border: none;
  text-align: left;
  font-family: 'Mosk', Arial, Helvetica, sans-serif;
  display: flex;
  align-items: center;
}
header nav.meta {
  flex: 0 1 auto;
  text-align: right;
}
header nav.meta > ul li {
  margin-left: 10px;
}
header nav.meta > ul li a {
  font-size: 0.875rem;
}
header nav.meta > ul li a:hover {
  color: #FFFFFF;
}
header nav.meta > ul li:first-child {
  margin-left: 0;
}
header nav.meta > ul li.search {
  margin-left: 20px;
}
header nav.meta > ul li.search .button:hover {
  color: var(--color-orange);
}
header nav.meta > ul li.search em {
  font-size: 1rem;
}
header nav.meta > ul li.contrast-mode {
  margin-left: 0;
}
header nav.meta > ul li.contrast-mode .button:hover {
  filter: brightness(0) saturate(100%) invert(44%) sepia(96%) saturate(1021%) hue-rotate(11deg) brightness(107%) contrast(101%);
}
header nav.meta > ul li.contrast-mode em {
  width: 16px;
  height: 16px;
  background: url('../gfx/icon-contrast.svg') no-repeat center;
  background-size: contain;
}
@media screen and (max-width: 760px) {
  header nav.meta > ul li {
    display: none;
  }
  header nav.meta > ul li.search {
    display: block;
  }
  header nav.meta > ul li.search em {
    font-size: 1.125rem;
  }
}
header.inverted .content-width nav.main {
  order: 1;
}
header.inverted .content-width nav.meta {
  order: 2;
}
header.inverted .content-width .logo {
  order: 3;
  margin-right: 0;
  margin-left: 20px;
}
header.center .content-width {
  justify-content: space-between;
}
header.center nav.main {
  flex: 0;
}
header.center nav .logo {
  margin-right: 0;
}
header.right .content-width {
  justify-content: flex-end;
}
header.right nav.main {
  flex: 0;
}
header.right nav .logo {
  margin-right: 0;
}
.small-header header {
  height: 60px;
  background: var(--color-blue);
}
body.contrast header nav.meta > ul li.contrast-mode em {
  transform: scaleX(-1);
}
main {
  flex-shrink: 0;
  padding-top: 185px;
}
main:has(.teaser-img, .row > .quickstart) {
  padding-top: 90px;
}
header.transparent + main {
  padding-top: 0;
}
footer {
  margin-top: auto;
}
footer .footer-nav {
  background: #F2F2F2;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
@media screen and (max-width: 760px) {
  footer .footer-nav {
    height: auto;
    padding: 10px 0;
  }
}
footer .footer-nav li {
  display: inline;
  margin-right: 30px;
}
footer .footer-nav li:last-child {
  margin-right: 0;
}
footer .footer-bottom {
  padding: 40px 0;
  background: #E9E9E9;
}
/*
  Grid

  Rows seperate different sections of your layout. Combinations of different classes are possible.

  .col-1-5   - 20% width column
  .col-1-4   - 25% width column
  .col-1-3   - 33.3333% width column
  .col-2-5   - 40% width column
  .col-1-2   - 50% width column
  .col-3-5   - 60% width column
  .col-2-3   - 66.6666% width column
  .col-3-4   - 75% width column
  .col-4-5   - 80% width column
  .col-1-1   - 100% width column

  Markup:
  <!-- .debug just for visualization purposes -->
  <div class="grid debug">
    <div class="{{modifier_class}}">
      <span>Ich bin grid content</span>
    </div>
  </div>

  Style guide: Layout.Grid
*/
:root {
  --grid-gutter: 40px;
}
.content-width {
  position: relative;
  margin: 0 auto;
  width: 100%;
  padding: 0 30px;
}
.content-width .content-width {
  padding: 0;
}
@media screen and (min-width: 1200px) {
  .content-width {
    width: 1280px;
    padding: 0;
  }
}
.grid {
  display: flex;
  flex-wrap: wrap;
}
.grid.center {
  justify-content: center;
}
.grid[data-textalign="middle"] {
  align-items: center;
}
.grid [class*="col-"] {
  width: 100%;
}
.grid [class*="col-"].no-mb {
  margin-bottom: 0 !important;
}
.grid [class*="col-"].mb-first {
  order: -1;
}
.grid [class*="col-"].mb-1-2 {
  width: 50% !important;
}
.grid [class*="col-"].right {
  text-align: right;
}
.grid [class*="col-"].highlight {
  background: var(--color-blue);
  color: #FFFFFF;
}
.grid [class*="col-"].double {
  display: flex;
  flex-direction: column;
}
.grid [class*="col-"].double .img:nth-child(1) {
  padding-bottom: calc(var(--grid-gutter) / 2);
}
.grid [class*="col-"].double .img:nth-child(2) {
  padding-top: calc(var(--grid-gutter) / 2);
}
.grid:not(.no-gap) {
  margin: 0 calc((var(--grid-gutter) / 2) * -1);
}
.grid:not(.no-gap) [class*="col-"] {
  margin-bottom: 80px;
  padding: 0 calc(var(--grid-gutter) / 2);
  flex: 0 0 auto;
}
.grid.no-margin [class*="col-"] {
  margin-bottom: 0;
}
.grid.small-margin [class*="col-"] {
  margin-bottom: var(--grid-gutter);
}
@media screen and (min-width: 1200px) {
  .grid:not(.no-gap) {
    margin: 0 calc((var(--grid-gutter) / 2) * -1);
  }
  .grid [class*="col-"].col-1-12 {
    width: 8.3333%;
  }
  .grid [class*="col-"].col-2-12 {
    width: 16.6667%;
  }
  .grid [class*="col-"].col-3-12 {
    width: 25%;
  }
  .grid [class*="col-"].col-4-12 {
    width: 33.3333%;
  }
  .grid [class*="col-"].col-5-12 {
    width: 41.6667%;
  }
  .grid [class*="col-"].col-6-12 {
    width: 50%;
  }
  .grid [class*="col-"].col-7-12 {
    width: 58.3333%;
  }
  .grid [class*="col-"].col-8-12 {
    width: 66.6667%;
  }
  .grid [class*="col-"].col-9-12 {
    width: 75%;
  }
  .grid [class*="col-"].col-10-12 {
    width: 83.3333%;
  }
  .grid [class*="col-"].col-11-12 {
    width: 91.6667%;
  }
  .grid [class*="col-"].col-12-12 {
    width: 100%;
  }
}
/*
  Rows

  Rows seperate different sections of your layout. Combinations of different classes are possible.

  .highlight     - Global highlight color
  .grey          - Grey background
  .center        - Centered content
  .full          - Stretches over the whole width
  .cover         - Covers the whole viewport

  Markup:
  <div class="row {{modifier_class}}">
    <div class="content-width">
      <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem.</p>
      <p>Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a,</p>
    </div>
  </div>

  Style guide: Layout.Rows
*/
.row {
  background-size: cover !important;
}
.row:has(:not(.grid:not(.no-margin))),
.row:has(.hero, .img-cta) {
  margin-bottom: 80px;
}
.row:has(:not(.grid:not(.no-margin))).small-gap,
.row:has(.hero, .img-cta).small-gap {
  margin-bottom: 40px;
}
.row.overflow {
  overflow: hidden;
}
.row:has(.teaser-img) {
  margin-bottom: 40px !important;
}
.row.highlight {
  background: linear-gradient(279deg, #0089C1 38.42%, #6AB023 100%);
  padding: 60px 0;
  color: #FFFFFF;
}
.row.highlight a:not(.primary) {
  color: #FFF;
  text-decoration: underline;
}
.row.highlight .button:not(.primary) {
  background: #FFFFFF;
}
.row.highlight .button:not(.primary) span {
  color: #222222;
}
.row.highlight .button:not(.primary):hover {
  background: var(--color-orange);
}
.row.highlight .button:not(.primary):hover span {
  color: #FFFFFF;
}
.row.blue {
  background-color: var(--color-blue);
  color: #FFFFFF;
}
.row.grey {
  background-color: #DDD;
  padding: 60px 0;
}
.row.full .content-width {
  width: 100%;
}
.row.center {
  text-align: center;
}
.row.cover {
  display: flex;
  align-items: center;
  height: 100vh;
}
.row .btn-more {
  float: right;
  margin-top: 25px;
  position: relative;
  z-index: 3;
}
.row .more-wrap {
  display: flex;
  align-items: flex-start;
}
.row .more-wrap > h1,
.row .more-wrap > h2,
.row .more-wrap > h3,
.row .more-wrap > h4,
.row .more-wrap > h5,
.row .more-wrap > h6 {
  flex: 1;
}
.row .more-wrap .btn-more {
  margin-left: 40px;
}
.row .more-wrap .buttons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.row .more-wrap .buttons .button {
  background: transparent;
  border: none;
  color: var(--color-blue);
}
.row .more-wrap .buttons .button em {
  font-size: 20px;
}
.row .more-wrap .buttons .button.only-icon {
  width: auto;
  margin-left: 20px;
}
.row .more-wrap .buttons .button.active {
  color: var(--color-orange);
}
@media screen and (max-width: 760px) {
  .row .more-wrap {
    flex-direction: column;
  }
  .row .more-wrap .btn-more {
    margin: 0 0 40px 0;
  }
}
.content .content-width,
.table-wrap .content-width,
.text .content-width {
  width: 100%;
}
@media screen and (min-width: 760px) {
  .content:not(.table-wrap, .text),
  .table-wrap:not(.table-wrap, .text),
  .text:not(.table-wrap, .text) {
    width: 66.66666%;
  }
}
.content .notification,
.table-wrap .notification,
.text .notification {
  padding-left: 0;
}
.content .notification p,
.table-wrap .notification p,
.text .notification p {
  padding-left: 0;
}
.content p,
.table-wrap p,
.text p,
.content ul:not(.dropdown, .list-icons, .tags, .list-downloads),
.table-wrap ul:not(.dropdown, .list-icons, .tags, .list-downloads),
.text ul:not(.dropdown, .list-icons, .tags, .list-downloads) {
  padding-left: 0;
}
.content ul:not(.dropdown, .list-icons, .tags, .list-downloads),
.table-wrap ul:not(.dropdown, .list-icons, .tags, .list-downloads),
.text ul:not(.dropdown, .list-icons, .tags, .list-downloads) {
  margin: 0;
  padding: 0;
  list-style-type: none;
  margin-bottom: 25px;
  font-size: 1.125rem;
  padding-left: 40px;
}
.content ul:not(.dropdown, .list-icons, .tags, .list-downloads) li,
.table-wrap ul:not(.dropdown, .list-icons, .tags, .list-downloads) li,
.text ul:not(.dropdown, .list-icons, .tags, .list-downloads) li {
  position: relative;
  padding-left: 21px;
  margin-bottom: 15px;
}
.content ul:not(.dropdown, .list-icons, .tags, .list-downloads) li::before,
.table-wrap ul:not(.dropdown, .list-icons, .tags, .list-downloads) li::before,
.text ul:not(.dropdown, .list-icons, .tags, .list-downloads) li::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 8px;
  width: 8px;
  height: 8px;
  background: var(--color-blue);
}
.content ul:not(.dropdown, .list-icons, .tags, .list-downloads) ul,
.table-wrap ul:not(.dropdown, .list-icons, .tags, .list-downloads) ul,
.text ul:not(.dropdown, .list-icons, .tags, .list-downloads) ul {
  margin-top: 15px;
  margin-bottom: 15px;
}
.content ul:not(.dropdown, .list-icons, .tags, .list-downloads) ul li::before,
.table-wrap ul:not(.dropdown, .list-icons, .tags, .list-downloads) ul li::before,
.text ul:not(.dropdown, .list-icons, .tags, .list-downloads) ul li::before {
  background: var(--color-green);
}
.content figure.table,
.table-wrap figure.table,
.text figure.table {
  width: 100% !important;
}
@media screen and (max-width: 760px) {
  .content figure.table,
  .table-wrap figure.table,
  .text figure.table {
    width: calc(100vw - 60px) !important;
    overflow-x: auto;
  }
  .content figure.table table th,
  .table-wrap figure.table table th,
  .text figure.table table th,
  .content figure.table table td,
  .table-wrap figure.table table td,
  .text figure.table table td {
    word-break: auto-phrase;
  }
}
.content table,
.table-wrap table,
.text table {
  width: 100%;
}
.content table th,
.table-wrap table th,
.text table th,
.content table td,
.table-wrap table td,
.text table td {
  padding: 20px;
}
.content table th a,
.table-wrap table th a,
.text table th a,
.content table td a,
.table-wrap table td a,
.text table td a {
  text-decoration: none;
  color: var(--color-blue);
}
.content table th a:hover,
.table-wrap table th a:hover,
.text table th a:hover,
.content table td a:hover,
.table-wrap table td a:hover,
.text table td a:hover {
  text-decoration: underline;
}
.content table th.left,
.table-wrap table th.left,
.text table th.left,
.content table td.left,
.table-wrap table td.left,
.text table td.left {
  text-align: left;
}
.content table th.center,
.table-wrap table th.center,
.text table th.center,
.content table td.center,
.table-wrap table td.center,
.text table td.center {
  text-align: center;
}
.content table th.right,
.table-wrap table th.right,
.text table th.right,
.content table td.right,
.table-wrap table td.right,
.text table td.right {
  text-align: right;
}
.content table th.italic,
.table-wrap table th.italic,
.text table th.italic,
.content table td.italic,
.table-wrap table td.italic,
.text table td.italic {
  font-style: italic;
}
.content table th.bold,
.table-wrap table th.bold,
.text table th.bold,
.content table td.bold,
.table-wrap table td.bold,
.text table td.bold {
  font-weight: bold;
}
.content table th.underline,
.table-wrap table th.underline,
.text table th.underline,
.content table td.underline,
.table-wrap table td.underline,
.text table td.underline {
  text-decoration: underline;
}
.content table th.grey,
.table-wrap table th.grey,
.text table th.grey,
.content table td.grey,
.table-wrap table td.grey,
.text table td.grey {
  background: #F2F2F2;
}
.content table thead th,
.table-wrap table thead th,
.text table thead th {
  background: var(--color-green);
  color: #FFFFFF;
}
.content table tbody td,
.table-wrap table tbody td,
.text table tbody td {
  border-bottom: 1px solid #F2F2F2;
}
.content table tbody th,
.table-wrap table tbody th,
.text table tbody th {
  font-weight: normal;
}
.content table + .footnote,
.table-wrap table + .footnote,
.text table + .footnote {
  margin: 40px 0 0 40px;
}
.content-img {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}
@media screen and (min-width: 760px) {
  .content-img {
    flex-direction: row;
  }
}
.content-img .content {
  flex: 0 0 auto;
}
@media screen and (min-width: 760px) {
  .content-img .content {
    padding-right: 40px;
  }
}
@media screen and (max-width: 760px) {
  .content-img .content {
    order: 2;
  }
}
.content-img > figure,
.content-img .image:not(figure) {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
}
@media screen and (max-width: 760px) {
  .content-img > figure,
  .content-img .image:not(figure) {
    width: 100%;
    order: 1;
    margin-bottom: 40px;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 760px) {
  .content-img > figure,
  .content-img .image:not(figure) {
    width: calc(33.33333% + ((100vw - 1280px) / 2));
    position: relative;
    max-width: 660px;
    min-height: 660px;
  }
}
.content-img > figure picture,
.content-img .image:not(figure) picture {
  width: 100%;
}
.content-img > figure img,
.content-img .image:not(figure) img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
@media screen and (max-width: 760px) {
  .content-img > figure img,
  .content-img .image:not(figure) img {
    height: auto;
    position: relative;
  }
}
.content-img > figure nav.inpage,
.content-img .image:not(figure) nav.inpage {
  z-index: 3;
  background: rgb(from var(--color-blue) r g b / 0.9);
  color: #FFFFFF;
  width: 100%;
}
@media screen and (min-width: 760px) {
  .content-img > figure nav.inpage,
  .content-img .image:not(figure) nav.inpage {
    max-width: 66.6666%;
  }
}
.content-img > figure nav.inpage .button.primary,
.content-img .image:not(figure) nav.inpage .button.primary {
  width: 100%;
  background: #F2F2F2;
  padding: 20px 20px 20px 40px;
}
.content-img > figure nav.inpage ul,
.content-img .image:not(figure) nav.inpage ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  padding: 40px 0;
}
.content-img > figure nav.inpage ul li,
.content-img .image:not(figure) nav.inpage ul li {
  margin-bottom: 20px;
}
.content-img > figure nav.inpage ul li:last-child,
.content-img .image:not(figure) nav.inpage ul li:last-child {
  margin-bottom: 0;
}
.content-img > figure nav.inpage ul li button,
.content-img .image:not(figure) nav.inpage ul li button,
.content-img > figure nav.inpage ul li a,
.content-img .image:not(figure) nav.inpage ul li a {
  font-size: 1.5rem;
  color: #FFFFFF;
  background: none;
  border: none;
  padding: 0 40px;
  border-left: 5px solid transparent;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
  text-decoration: none;
  display: block;
}
.content-img > figure nav.inpage ul li button.active,
.content-img .image:not(figure) nav.inpage ul li button.active,
.content-img > figure nav.inpage ul li a.active,
.content-img .image:not(figure) nav.inpage ul li a.active,
.content-img > figure nav.inpage ul li button:hover,
.content-img .image:not(figure) nav.inpage ul li button:hover,
.content-img > figure nav.inpage ul li a:hover,
.content-img .image:not(figure) nav.inpage ul li a:hover {
  color: var(--color-orange);
  border-left: 5px solid var(--color-orange);
}
.content-img > figure nav.inpage ul li button:focus-visible,
.content-img .image:not(figure) nav.inpage ul li button:focus-visible,
.content-img > figure nav.inpage ul li a:focus-visible,
.content-img .image:not(figure) nav.inpage ul li a:focus-visible {
  outline: 2px solid #FFFFFF;
}
.content-img > figure nav.inpage .btn-inpage-mobile,
.content-img .image:not(figure) nav.inpage .btn-inpage-mobile {
  display: none;
}
@media screen and (max-width: 760px) {
  .content-img > figure nav.inpage,
  .content-img .image:not(figure) nav.inpage {
    position: relative;
  }
  .content-img > figure nav.inpage .btn-inpage-mobile,
  .content-img .image:not(figure) nav.inpage .btn-inpage-mobile {
    font-size: 1.5rem;
    color: #FFFFFF;
    background: none;
    border: none;
    padding: 0 60px 0 40px;
    border-left: 5px solid transparent;
    transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
    text-decoration: none;
    display: block;
    height: 60px;
    width: 100%;
    text-align: left;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
  }
  .content-img > figure nav.inpage .btn-inpage-mobile::after,
  .content-img .image:not(figure) nav.inpage .btn-inpage-mobile::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    border-top: 12px solid #FFFFFF;
    border-bottom: 0;
    display: inline-block;
    transition: border-top-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
    position: absolute;
    right: 40px;
    top: 25px;
  }
  .content-img > figure nav.inpage .btn-inpage-mobile:has(+ ul.open)::after,
  .content-img .image:not(figure) nav.inpage .btn-inpage-mobile:has(+ ul.open)::after {
    transform: rotate(180deg);
  }
  .content-img > figure nav.inpage ul,
  .content-img .image:not(figure) nav.inpage ul {
    display: none;
    position: absolute;
    left: 0;
    top: 60px;
    width: 100%;
    padding-top: 20px;
    background: rgb(from var(--color-blue) r g b / 0.9);
  }
  .content-img > figure nav.inpage ul.open,
  .content-img .image:not(figure) nav.inpage ul.open {
    display: block;
  }
}
.content-img .image {
  min-height: 0 !important;
}
.content-img .image nav.inpage {
  position: relative;
  background: rgb(from var(--color-blue) r g b / 1);
}
.form-item {
  margin-bottom: 20px;
  position: relative;
}
.form-item .no-results {
  position: absolute;
  top: calc(100% + 20px);
  left: 0;
}
.form-item .btn {
  position: absolute !important;
  right: 0;
  bottom: 0;
  z-index: 2;
  height: 53px !important;
  width: 60px;
  border: none;
  background: none;
  font-size: 1.125rem;
  color: #757575;
  color: var(--color-orange);
}
.form-item .btn:hover {
  color: var(--color-blue);
}
.form-item.large .btn {
  height: 80px !important;
  top: 0;
}
.form-item select {
  position: absolute;
  overflow: hidden;
}
.form-item select:has(+ .sr-select) {
  border: none;
}
.form-item select:has(+ .sr-select):focus-visible {
  outline: none;
}
.form-item > .button {
  height: 53px !important;
}
.button-bar {
  padding: 20px 0 0 0;
  margin-top: 20px;
  border-top: 1px solid #DFDFDF;
  width: 100%;
  text-align: right;
  display: flex;
  justify-content: space-between;
}
.button-bar.no-border {
  border-top: none;
}
.form-box {
  margin-bottom: 20px;
}
.form-box .form-label h3 {
  font-weight: normal;
  margin-bottom: 10px;
}
.form-box .form-head,
.form-box .form-content {
  display: flex;
  border-bottom: 1px solid #DFDFDF;
  font-weight: bold;
}
.form-box .form-head .group > div,
.form-box .form-content .group > div {
  display: flex;
}
.form-box .form-head .group > div > div,
.form-box .form-content .group > div > div {
  flex: 0 0 auto;
  width: 50%;
}
.form-box .form-head .group > div > div:first-child,
.form-box .form-content .group > div > div:first-child {
  padding-right: 20px;
}
.form-box .form-head .group > div > div:last-child,
.form-box .form-content .group > div > div:last-child {
  padding-left: 20px;
}
.form-box .form-head:has(.btn-add),
.form-box .form-content:has(.btn-add) {
  border-bottom: none;
}
.form-box .form-head > div,
.form-box .form-content > div {
  padding: 15px 0 0 0;
  position: relative;
}
@media screen and (max-width: 760px) {
  .form-box .form-head > div,
  .form-box .form-content > div {
    padding: 15px 0;
  }
}
.form-box .form-head > div .btn-delete,
.form-box .form-content > div .btn-delete {
  position: absolute;
  right: -35px;
  top: 50%;
  transform: translateY(-50%);
}
.form-box .form-head > div:first-child,
.form-box .form-content > div:first-child {
  flex: 1;
  padding-right: 80px;
}
@media screen and (max-width: 760px) {
  .form-box .form-head > div:first-child,
  .form-box .form-content > div:first-child {
    padding-right: 0;
  }
}
.form-box .form-head > div:nth-child(2),
.form-box .form-content > div:nth-child(2) {
  flex: 0 0 auto;
  width: 180px;
}
.form-box .form-head > div .hint,
.form-box .form-content > div .hint {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
.form-box .form-head {
  border-bottom: 1px solid #DFDFDF;
  padding: 0 0 15px 0;
}
@media screen and (max-width: 760px) {
  .form-box.half .form-head,
  .form-box.half .form-content {
    flex-wrap: wrap;
  }
}
.form-box.half .form-head > div:first-child,
.form-box.half .form-content > div:first-child {
  flex: 0 0 auto;
  width: 50%;
}
@media screen and (max-width: 760px) {
  .form-box.half .form-head > div:first-child,
  .form-box.half .form-content > div:first-child {
    width: 100%;
  }
}
.form-box.half .form-head > div:nth-child(2),
.form-box.half .form-content > div:nth-child(2),
.form-box.half .form-head > div:nth-child(3),
.form-box.half .form-content > div:nth-child(3) {
  flex: 1;
  width: auto;
}
.form-box.half .form-head > div:nth-child(2),
.form-box.half .form-content > div:nth-child(2) {
  padding-right: 40px;
}
.form-box.half .form-head > div:nth-child(3),
.form-box.half .form-content > div:nth-child(3) {
  padding-left: 40px;
}
.form-box.half .form-head > div:last-child,
.form-box.half .form-content > div:last-child {
  padding-left: 0;
  padding-right: 0;
}
.form-box .form-content .label,
.form-box .form-content > div > label {
  font-weight: bold;
  padding: 20px 0 10px 20px;
  font-size: 1.125rem;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.form-box .form-content .label a,
.form-box .form-content > div > label a {
  color: var(--color-blue);
  text-decoration: none;
}
.form-box .btn-add {
  padding: 20px 0 !important;
  height: auto;
}
.form-box .btn-add em::before {
  transform: rotate(45deg);
  display: block;
}
.form-group {
  display: flex;
  justify-content: space-between;
  flex: 1;
}
.form-group.width-66 {
  width: 66.66666%;
}
.form-group .form-check-radio label {
  padding: 0 !important;
}
fieldset {
  border: none;
  padding: 0;
  margin: 0;
}
/*
  Form Label

  Element used for showing various notifications in different styles.

  .inline - Inline label

  Markup:
  <div class="form-item {{modifier_class}}">
   <label>
   <div class="hint">Hier gibt's nen Hinweis</div>
     Input Text
   </label>
   <input type="text" placeholder="Placeholder"/>
  </div>

  Style guide: Forms.Label
*/
.form-item:not(.form-check-radio) label,
.form-item:not(.form-check-radio) .label {
  padding: 0 0 10px 20px;
  font-size: 1.125rem;
}
.form-item label,
.form-item .label {
  display: block;
  position: relative;
}
.form-item label .hint,
.form-item .label .hint {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}
.form-item label:has(.hint),
.form-item .label:has(.hint) {
  padding-right: 60px !important;
}
.form-item label[class^="icon-"],
.form-item .label[class^="icon-"],
.form-item label[class*=" icon-"],
.form-item .label[class*=" icon-"] {
  width: 30px;
  height: 30px;
  flex: 0 0 auto;
  min-width: 0;
  background: #F3F3F3;
  padding: 0;
  margin: 0;
  position: absolute;
  left: 1px;
  bottom: 1px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 0 0 0;
}
.form-item label[class^="icon-"] + input,
.form-item .label[class^="icon-"] + input,
.form-item label[class*=" icon-"] + input,
.form-item .label[class*=" icon-"] + input {
  padding-left: 40px;
}
.form-item.inline {
  padding: 15px 20px 0 0;
  margin-bottom: 15px;
  border-top: 1px solid #DFDFDF;
}
@media screen and (min-width: 760px) {
  .form-item.inline {
    display: flex;
  }
  .form-item.inline > label,
  .form-item.inline > .label {
    flex: 0 0 33.33333%;
    max-width: 200px;
    min-width: 100px;
    padding-right: 10px;
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    margin-bottom: 0;
    font-weight: bold;
  }
  .form-item.inline > label .hint,
  .form-item.inline > .label .hint {
    order: 2;
  }
  .form-item.inline.wide > label,
  .form-item.inline.wide > .label {
    flex: 0 0 50%;
    max-width: none;
  }
  .form-item.inline.wider > label,
  .form-item.inline.wider > .label {
    flex: 0 0 calc(100% - 180px);
    max-width: none;
  }
  .form-item.inline:has(.form-group) > label,
  .form-item.inline:has(.form-group) > .label {
    flex: 0 0 calc(100% - 230px);
    max-width: none;
  }
}
.form-item.inline .sr-select {
  flex: 1;
}
.form-item.error label,
.form-item.error .label {
  color: var(--color-red);
}
.form-item.disabled label,
.form-item.disabled .label {
  color: #DDD;
}
.form-item input,
.select2-container input,
.form-item textarea,
.select2-container textarea {
  border: 1px solid #DFDFDF;
  width: 100%;
  transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
  background: #FFFFFF;
  border-left: 5px solid var(--color-orange);
  font-size: 1.125rem;
  font-weight: 500;
}
.form-item input.right,
.select2-container input.right,
.form-item textarea.right,
.select2-container textarea.right {
  text-align: right;
}
.form-item input::placeholder,
.select2-container input::placeholder,
.form-item textarea::placeholder,
.select2-container textarea::placeholder {
  color: #B3B3B3;
}
.form-item input:hover,
.select2-container input:hover,
.form-item textarea:hover,
.select2-container textarea:hover,
.form-item input:focus,
.select2-container input:focus,
.form-item textarea:focus,
.select2-container textarea:focus {
  border-color: #617D86;
}
.form-item input[disabled],
.select2-container input[disabled],
.form-item textarea[disabled],
.select2-container textarea[disabled] {
  border: 1px solid #DDD;
  background: #EEEEEE;
  color: #808080;
}
.form-item input[disabled]:hover,
.select2-container input[disabled]:hover,
.form-item textarea[disabled]:hover,
.select2-container textarea[disabled]:hover,
.form-item input[disabled]:focus,
.select2-container input[disabled]:focus,
.form-item textarea[disabled]:focus,
.select2-container textarea[disabled]:focus {
  border-color: #C5C5C5;
}
.form-item input,
.select2-container input {
  height: 53px;
  padding: 0 10px;
}
.form-item input[type=date],
.select2-container input[type=date] {
  font-size: 1.125rem;
  font-weight: 500;
  color: #222222;
  font-family: inherit;
}
.form-item input[type=date]::placeholder,
.select2-container input[type=date]::placeholder {
  color: #B3B3B3;
}
.form-item textarea,
.select2-container textarea {
  padding: 10px;
  min-height: 150px;
  resize: vertical;
}
.form-item.error input,
.select2-container.error input,
.form-item.error textarea,
.select2-container.error textarea {
  border-color: var(--color-red);
}
.form-item.large input {
  height: 80px;
  font-size: 2.25rem;
  font-weight: 300;
  padding: 0 20px;
}
.form-check-radio {
  position: relative;
}
.form-check-radio em {
  cursor: pointer;
  width: 53px;
  height: 53px;
  border: 1px solid #DFDFDF;
  position: relative;
  flex: 0 0 auto;
  transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
  overflow: hidden;
  border-radius: 0;
  background: #FFFFFF;
}
.form-check-radio em::before {
  opacity: 0;
  transform: scale(0);
  font-size: 1.125rem;
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.form-check-radio em:not([class^="icon-"])::before {
  content: "";
  width: 51px;
  height: 51px;
  opacity: 0;
  background: #FFFFFF;
  display: block;
}
.form-check-radio em[class^="icon-"]::before,
.form-check-radio em[class*=" icon-"]::before {
  display: block;
  width: 51px;
  height: 51px;
  line-height: 51px;
  text-align: center;
  color: var(--color-orange);
  font-size: 1.75rem;
}
.form-check-radio span {
  padding-left: 20px;
  flex: 1 1 auto;
  font-size: 1.125rem;
}
.form-check-radio input:checked + label em::before {
  transform: scale(1);
  opacity: 1;
}
.form-check-radio label {
  cursor: pointer;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-content: stretch;
  align-items: center;
}
.form-check-radio label:hover em {
  border-color: #617D86;
}
.form-check-radio.error em {
  border-color: var(--color-red);
}
.form-check-radio.error span {
  color: initial;
}
.form-check-radio input {
  position: absolute;
  opacity: 0;
  left: 0;
  top: 0;
  width: 0;
  height: 0;
}
.form-check-radio input:focus + label em {
  border-color: #617D86;
}
.form-check-radio input[disabled] + label {
  cursor: default;
}
.form-check-radio input[disabled] + label em {
  border-color: #C5C5C5;
  background: #EEEEEE;
  cursor: default;
}
.form-check-radio input[disabled] + label em::before {
  color: #808080;
}
/*
  Button

  Use this class for the primary call to action button.
  Typically you'll want to use either a `<button>` or an `<a>` element.

  :hover     - Hover State
  :disabled  - Disabled state
  .success   - Success color
  .warning   - Warning color
  .alert     - Alert color
  .link      - Text Link
  .loading   - Loading state

  Markup:
  <a href="" class="btn {{modifier_class}}">Link Button</a>
  <button class="button {{modifier_class}}">Button Element</button>
  <input class="button {{modifier_class}}" type="button" value="Input Button" />

  Style guide: Components.Button
*/
.button {
  height: 36px;
  display: inline-flex;
  cursor: pointer;
  user-select: none;
  align-items: center;
  vertical-align: bottom;
  text-align: center;
  overflow: hidden;
  position: relative;
  color: #FFFFFF;
  background: var(--color-blue);
  border: 1px solid var(--color-blue);
  padding: 0 18px;
  font-size: 1rem;
  transition: background 400ms cubic-bezier(0.22, 1, 0.36, 1), color 400ms cubic-bezier(0.22, 1, 0.36, 1), border-color 400ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 400ms cubic-bezier(0.22, 1, 0.36, 1);
  text-decoration: none;
  font-family: 'Mosk', Arial, Helvetica, sans-serif;
  font-weight: 600;
}
.button + .button:not(.full) {
  margin: 0 0 0 20px;
}
.button:hover {
  border-color: var(--color-orange);
  background: var(--color-orange);
}
.button:focus-visible {
  outline: 2px solid var(--color-blue);
  position: relative;
  z-index: 1;
}
.button em {
  font-size: 0.875rem;
  position: relative;
}
.button span {
  flex: 1 1 auto;
  text-transform: uppercase;
}
.button em + span {
  margin-left: 7px;
}
.button span + em {
  margin-left: 7px;
}
.button.full {
  width: 100%;
  justify-content: center;
}
.button.full span {
  flex: 0 1 auto;
}
.button.rounded {
  border-radius: calc(36px / 2);
}
.button.link {
  border: transparent;
  background: transparent;
  color: var(--color-blue);
  padding: 0;
}
.button.link em {
  border-radius: 0;
}
.button.link.bg-icon {
  color: #222222;
}
.button.link.bg-icon em {
  background: var(--color-blue);
  color: #FFF;
  height: 36px;
  width: 36px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.button.link.bg-icon span {
  color: #222222;
}
.button.link.bg-icon.rounded em {
  border-radius: 50%;
}
.button.link.bg-icon.outline em {
  border: 1px solid var(--color-blue);
  color: var(--color-blue);
  background: transparent;
  transition: background 400ms cubic-bezier(0.22, 1, 0.36, 1), color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.button.link:hover {
  background: transparent;
}
.button.link:hover span {
  text-decoration: underline;
}
.button.link:hover.bg-icon span {
  text-decoration: none;
}
.button.link:hover.bg-icon em {
  background: hsl(from var(--color-blue) h s calc(l - 10));
}
.button.link:hover.bg-icon.outline em {
  background: var(--color-blue);
  color: #FFF;
}
.button.primary {
  background: transparent;
  border: none;
  padding: 0;
  height: auto;
}
.button.primary em {
  width: 40px;
  height: 15px;
  display: block;
  flex: 0 0 auto;
}
.button.primary em + span {
  margin-left: 15px;
}
.button.primary em::before,
.button.primary em::after {
  content: '';
  display: block;
  position: absolute;
}
.button.primary em::before {
  width: 40px;
  height: 1px;
  top: 50%;
  right: 0;
  background: var(--color-blue);
  transition: width 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.button.primary em::after {
  width: 11px;
  height: 11px;
  border-right: 1px solid var(--color-blue);
  border-top: 1px solid var(--color-blue);
  right: 2px;
  top: 50%;
  margin-top: -5px;
  transform: rotate(45deg);
}
.button.primary span {
  color: var(--color-blue);
}
.button.primary.inverted span {
  color: #FFFFFF;
}
.button.primary.inverted em::before {
  background: #FFFFFF;
}
.button.primary.inverted em::after {
  border-right: 1px solid #FFFFFF;
  border-top: 1px solid #FFFFFF;
}
.button.primary.inverted:focus-visible {
  outline: 2px solid #FFFFFF;
}
.button.primary.arrow-left em {
  transform: rotate(180deg);
}
.button.primary.back-to-search-link {
  background: #F2F2F2;
  padding: 15px;
}
.button.primary:hover em::before {
  width: 30px;
}
.button.secondary {
  background: var(--color-blue);
  border: none;
  height: auto;
  padding: 20px 17px;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.18);
}
.button.secondary:hover {
  border-color: var(--color-orange);
  background: var(--color-orange);
  text-decoration: none;
}
.button.secondary.orange {
  background: var(--color-orange);
}
.button.secondary.orange:hover {
  border-color: var(--color-blue);
  background: var(--color-blue);
  text-decoration: none;
}
.button.secondary.grey {
  background: #DFDFDF;
}
.button.secondary.grey em,
.button.secondary.grey span {
  color: var(--color-blue);
}
.button.secondary.grey em::before,
.button.secondary.grey span::before {
  background: var(--color-blue) !important;
}
.button.secondary.grey em::after,
.button.secondary.grey span::after {
  border-right: 1px solid var(--color-blue) !important;
  border-top: 1px solid var(--color-blue) !important;
}
.button.secondary.grey:hover {
  border-color: hsl(from var(--color-greylines) h s calc(l - 10));
  background: hsl(from var(--color-greylines) h s calc(l - 10));
  text-decoration: none;
}
.button.secondary.transparent {
  background: transparent;
}
.button.secondary.transparent em,
.button.secondary.transparent span {
  color: var(--color-blue);
}
.button.secondary.transparent em::before,
.button.secondary.transparent span::before {
  background: var(--color-blue) !important;
}
.button.secondary.transparent em::after,
.button.secondary.transparent span::after {
  border-right: 1px solid var(--color-blue) !important;
  border-top: 1px solid var(--color-blue) !important;
}
.button.secondary.transparent:hover {
  border-color: transparent;
  background: transparent;
}
.button.secondary.transparent:hover span {
  text-decoration: underline;
}
.button.secondary:focus-visible {
  outline: 2px solid var(--color-blue);
}
.button.secondary.inverted {
  background: #FFFFFF;
}
.button.secondary.inverted span {
  color: var(--color-blue);
}
.button.secondary.inverted:focus-visible {
  outline: 2px solid #FFFFFF;
}
.button.secondary.outline {
  color: var(--color-orange);
}
.button.secondary.outline:hover {
  background: hsl(from var(--color-orange) h s calc(l - 10));
  color: #FFF;
}
.button.secondary.link {
  border: transparent;
  background: transparent;
  color: var(--color-orange);
}
.button.secondary.link.bg-icon em {
  background: var(--color-orange);
}
.button.secondary.link.bg-icon:hover em {
  background: hsl(from var(--color-blue) h s calc(l - 10));
}
.button.secondary.link.bg-icon.outline em {
  border-color: var(--color-orange);
  color: var(--color-orange);
  background: transparent;
}
.button.secondary.link.bg-icon.outline:hover em {
  background: var(--color-orange);
  color: #FFF;
}
.button.secondary.arrow em {
  width: 40px;
  height: 15px;
  display: block;
  flex: 0 0 auto;
}
.button.secondary.arrow em + span {
  margin-left: 15px;
}
.button.secondary.arrow em::before,
.button.secondary.arrow em::after {
  content: '';
  display: block;
  position: absolute;
}
.button.secondary.arrow em::before {
  width: 40px;
  height: 1px;
  top: 50%;
  right: 0;
  background: #FFFFFF;
  transition: width 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.button.secondary.arrow em::after {
  width: 11px;
  height: 11px;
  border-right: 1px solid #FFFFFF;
  border-top: 1px solid #FFFFFF;
  right: 0;
  top: 50%;
  margin-top: -5px;
  transform: rotate(45deg);
}
.button.secondary.arrow.arrow-left em {
  transform: rotate(180deg);
}
.button.success {
  background: var(--color-green);
  border-color: var(--color-green);
  color: #FFF;
}
.button.success:hover {
  border-color: hsl(from var(--color-green) h s calc(l - 10));
  background: hsl(from var(--color-green) h s calc(l - 10));
}
.button.success:focus-visible {
  outline: 2px solid var(--color-green);
}
.button.success.outline {
  color: var(--color-green);
}
.button.success.outline:hover {
  background: hsl(from var(--color-green) h s calc(l - 10));
  color: #FFF;
}
.button.success.link {
  border: transparent;
  background: transparent;
  color: var(--color-green);
}
.button.success.link.bg-icon em {
  background: var(--color-green);
}
.button.success.link.bg-icon:hover em {
  background: hsl(from var(--color-green) h s calc(l - 10));
}
.button.success.link.outline em {
  border-color: var(--color-green);
  color: var(--color-green);
  background: transparent;
}
.button.success.link.outline:hover em {
  background: var(--color-green);
  color: #FFF;
}
.button.warning {
  background: var(--color-orange);
  border-color: var(--color-orange);
  color: #FFF;
}
.button.warning:hover {
  border-color: hsl(from var(--color-orange) h s calc(l - 10));
  background: hsl(from var(--color-orange) h s calc(l - 10));
}
.button.warning:focus-visible {
  outline: 2px solid var(--color-orange);
}
.button.warning.outline {
  color: var(--color-orange);
}
.button.warning.outline:hover {
  background: hsl(from var(--color-orange) h s calc(l - 10));
  color: #FFF;
}
.button.warning.link {
  border: transparent;
  background: transparent;
  color: var(--color-orange);
}
.button.warning.link.bg-icon em {
  background: var(--color-orange);
}
.button.warning.link.bg-icon:hover em {
  background: hsl(from var(--color-orange) h s calc(l - 10));
}
.button.warning.link.outline em {
  border-color: var(--color-orange);
  color: var(--color-orange);
  background: transparent;
}
.button.warning.link.outline:hover em {
  background: var(--color-orange);
  color: #FFF;
}
.button.alert {
  background: var(--color-red);
  border-color: var(--color-red);
  color: #FFF;
}
.button.alert:hover {
  border-color: hsl(from var(--color-red) h s calc(l - 10));
  background: hsl(from var(--color-red) h s calc(l - 10));
}
.button.alert:focus-visible {
  outline: 2px solid var(--color-red);
}
.button.alert.outline {
  color: var(--color-red);
}
.button.alert.outline:hover {
  background: hsl(from var(--color-red) h s calc(l - 10));
  color: #FFF;
}
.button.alert.link {
  border: transparent;
  background: transparent;
  color: var(--color-red);
}
.button.alert.link.bg-icon em {
  background: var(--color-red);
}
.button.alert.link.bg-icon:hover em {
  background: hsl(from var(--color-red) h s calc(l - 10));
}
.button.alert.link.outline em {
  border-color: var(--color-red);
  color: var(--color-red);
  background: transparent;
}
.button.alert.link.outline:hover em {
  background: var(--color-red);
  color: #FFF;
}
.button.green {
  background: var(--color-green);
  border-color: var(--color-green);
  color: #FFF;
}
.button.green:hover {
  border-color: hsl(from var(--color-green) h s calc(l - 10));
  background: hsl(from var(--color-green) h s calc(l - 10));
}
.button.green:focus-visible {
  outline: 2px solid var(--color-green);
}
.button.green.outline {
  color: var(--color-red);
}
.button.green.outline:hover {
  background: hsl(from var(--color-green) h s calc(l - 10));
  color: #FFF;
}
.button.green.link {
  border: transparent;
  background: transparent;
  color: var(--color-green);
}
.button.green.link.bg-icon em {
  background: var(--color-green);
}
.button.green.link.bg-icon:hover em {
  background: hsl(from var(--color-green) h s calc(l - 10));
}
.button.green.link.outline em {
  border-color: var(--color-green);
  color: var(--color-green);
  background: transparent;
}
.button.green.link.outline:hover em {
  background: var(--color-green);
  color: #FFF;
}
.button.outline {
  background: transparent;
  color: var(--color-blue);
}
.button.outline:hover {
  background: hsl(from var(--color-blue) h s calc(l - 10));
  color: #FFF;
}
.button.outline.bg-icon:hover {
  background: transparent;
}
.button.only-icon {
  width: 37px;
  padding-left: 0;
  padding-right: 0;
  justify-content: center;
}
.button.only-icon span {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.button[disabled],
.button .disabled {
  border-color: #EEEEEE;
  color: #808080;
  cursor: default;
}
.button[disabled].link.bg-icon em,
.button .disabled.link.bg-icon em {
  color: #808080;
  background: #EEEEEE;
  border-color: #EEEEEE;
}
.button[disabled]:not(.outline, .link),
.button .disabled:not(.outline, .link) {
  background: #EEEEEE;
}
.button.show-on-focus {
  opacity: 0;
  pointer-events: none;
}
.button.show-on-focus:focus-visible {
  opacity: 1;
  pointer-events: auto;
}
.button-group {
  display: inline-flex;
  position: relative;
}
.button-group .button {
  margin: 0;
}
.button-group .button:not(:first-of-type):not(:last-of-type) {
  border-radius: 0;
}
.button-group .button:first-of-type {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.button-group .button:last-of-type {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.button-group .button.outline:not(:first-of-type):not(:last-of-type),
.button-group .button.outline:first-of-type {
  border-right: none;
}
.button-group .button.outline[disabled],
.button-group .button.outline .disabled {
  border-color: #808080;
}
.button-group.split-button {
  position: relative;
}
.button-group.split-button .button-toggle {
  width: 27px;
}
.button-group.split-button .button-toggle em {
  font-size: 0.625rem;
}
.button-group.split-button .button-toggle:not(.outline) {
  background: hsl(from var(--color-blue) h s calc(l - 10));
}
.button-group.split-button .button-toggle:not(.outline):hover {
  background: hsl(from var(--color-blue) h s calc(l - 20));
}
.button-group.split-button .secondary.button-toggle:not(.outline) {
  background: hsl(from var(--color-orange) h s calc(l - 10));
}
.button-group.split-button .secondary.button-toggle:not(.outline):hover {
  background: hsl(from var(--color-orange) h s calc(l - 20));
}
.button-group.split-button .success.button-toggle:not(.outline) {
  background: hsl(from var(--color-green) h s calc(l - 10));
}
.button-group.split-button .success.button-toggle:not(.outline):hover {
  background: hsl(from var(--color-green) h s calc(l - 20));
}
.button-group.split-button .warning.button-toggle:not(.outline) {
  background: hsl(from var(--color-orange) h s calc(l - 10));
}
.button-group.split-button .warning.button-toggle:not(.outline):hover {
  background: hsl(from var(--color-orange) h s calc(l - 20));
}
.button-group.split-button .alert.button-toggle:not(.outline) {
  background: hsl(from var(--color-red) h s calc(l - 10));
}
.button-group.split-button .alert.button-toggle:not(.outline):hover {
  background: hsl(from var(--color-red) h s calc(l - 20));
}
.form-switch {
  position: relative;
}
.form-switch label {
  cursor: pointer;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-content: stretch;
  align-items: center;
}
.form-switch span {
  padding-left: 20px;
  flex: 1 1 auto;
}
.form-switch em {
  cursor: pointer;
  border: 1px solid #C5C5C5;
  display: block;
  width: 64px;
  height: 32px;
  position: relative;
  background: #FFFFFF;
  overflow: hidden;
  border-radius: 0;
}
.form-switch em::before {
  position: absolute;
  content: "";
  height: 32px;
  width: 32px;
  left: -1px;
  top: -1px;
  background: #C5C5C5;
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1), width 400ms cubic-bezier(0.22, 1, 0.36, 1);
  z-index: 2;
  overflow: hidden;
  border-radius: 0;
}
.form-switch em:hover:before {
  background: var(--color-blue);
}
.form-switch input {
  position: absolute;
  opacity: 0;
  left: 0;
  top: 0;
  width: 0;
  height: 0;
}
.form-switch input:active + em::before {
  width: 48px;
}
.form-switch input:checked + em::before {
  background: var(--color-blue);
  transform: translateX(32px);
}
.form-switch input[disabled] + em {
  cursor: default;
}
.form-switch input[disabled] + em::before {
  background: #C5C5C5;
}
/*
*
*   SECONDRED Custom Multiselect CSS v1
*   Forms Framework
*   Author: SECONDRED Newmedia GmbH - www.secondred.de
*
*/
.sr-select {
  position: relative;
}
.sr-select * {
  box-sizing: border-box;
}
.sr-select .sr-select-activator {
  padding: 0;
  border: none;
  border: 1px solid #DFDFDF;
  border-left: 5px solid var(--color-orange);
  background: #FFFFFF;
  font-size: 1.125rem;
  font-family: inherit;
  width: 100%;
  height: 53px;
  color: #000000;
  text-align: left;
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  cursor: pointer;
}
.sr-select .sr-select-activator .sr-select-trigger {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 20px;
  pointer-events: none;
  position: relative;
}
.sr-select .sr-select-activator .sr-select-trigger::before,
.sr-select .sr-select-activator .sr-select-trigger::after {
  content: '';
  width: 1px;
  height: 15px;
  border-radius: 9999px;
  background: var(--color-orange);
  transform-origin: 50% 100%;
}
.sr-select .sr-select-activator .sr-select-trigger::before {
  transform: rotate(45deg);
}
.sr-select .sr-select-activator .sr-select-trigger::after {
  transform: rotate(-45deg);
}
.sr-select .sr-select-activator.sr-select-open .sr-select-trigger {
  transform: rotate(180deg);
}
.sr-select .sr-select-activator .sr-select-selected {
  flex: 1;
  padding: 0 10px;
}
.sr-select .sr-select-activator .sr-select-selected .sr-select-placeholder {
  color: #B3B3B3;
}
.sr-select .sr-select-activator .sr-select-selected .sr-select-selected-option,
.sr-select .sr-select-activator .sr-select-selected .sr-select-placeholder {
  display: flex;
  flex-direction: row;
  align-items: center;
  height: 100%;
}
.sr-select .sr-select-activator .sr-select-selected .sr-select-selected-option .sr-select-close,
.sr-select .sr-select-activator .sr-select-selected .sr-select-placeholder .sr-select-close {
  padding: 0 5px;
  margin-top: -2px;
  cursor: pointer;
  display: block;
  font-size: 16px;
}
.sr-select .sr-select-activator .sr-select-selected .sr-select-selected-option .sr-select-close::before,
.sr-select .sr-select-activator .sr-select-selected .sr-select-placeholder .sr-select-close::before {
  content: "x";
  speak: none;
}
.sr-select .sr-select-activator .sr-select-selected .sr-select-selected-option .sr-select-close:hover,
.sr-select .sr-select-activator .sr-select-selected .sr-select-placeholder .sr-select-close:hover {
  color: var(--color-orange);
}
.sr-select .sr-select-activator .sr-select-selected:has(.sr-select-selected-option) {
  display: flex;
  flex-direction: row;
  gap: 5px;
}
.sr-select.sr-select-multiple .sr-select-activator .sr-select-selected {
  flex-wrap: wrap;
}
.sr-select.sr-select-multiple .sr-select-activator .sr-select-selected .sr-select-selected-option {
  padding: 0 0 0 10px;
  background: #E9E9E9;
  flex-wrap: nowrap;
  font-size: 0.75rem;
  cursor: default;
  height: 32px;
  margin-top: 10px;
}
.sr-select .sr-select-optionList {
  width: 100%;
  left: 0;
  top: 100%;
}
.sr-select .sr-select-optionList.sr-select-up {
  top: initial;
  bottom: 100%;
  border: 1px solid #333333;
  border-bottom: none;
}
.sr-select .sr-select-optionList .sr-select-message {
  padding: 5px;
}
.sr-select-optionList {
  background-color: #FFFFFF;
  box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.18);
  border-top: none;
  position: absolute;
  z-index: 999;
  color: #000000;
}
.sr-select-optionList * {
  box-sizing: border-box;
}
.sr-select-optionList .sr-select-search-wrap {
  padding: 5px;
}
.sr-select-optionList .sr-select-search-wrap input.sr-select-search {
  padding: 10px 20px;
  background: #FFFFFF;
  border: 1px solid #DDDDDD;
  font-family: inherit;
  width: 100%;
}
.sr-select-optionList .sr-select-list {
  max-height: 200px;
  overflow-y: auto;
}
.sr-select-optionList .sr-select-list .sr-select-group {
  list-style-type: none;
}
.sr-select-optionList .sr-select-list .sr-select-list-option {
  cursor: pointer;
  padding: 20px;
  font-size: 1.125rem;
  border-left: 5px solid #DFDFDF;
  background: #F2F2F2;
  transition: background 400ms cubic-bezier(0.22, 1, 0.36, 1), border-left-color 400ms cubic-bezier(0.22, 1, 0.36, 1), color 400ms cubic-bezier(0.22, 1, 0.36, 1);
  font-weight: normal;
}
.sr-select-optionList .sr-select-list .sr-select-list-option.sr-select-active,
.sr-select-optionList .sr-select-list .sr-select-list-option:focus,
.sr-select-optionList .sr-select-list .sr-select-list-option:hover {
  color: #FFFFFF;
  background: var(--color-orange);
  border-left-color: var(--color-orange);
}
.sr-select-optionList .sr-select-list .sr-select-list-option.sr-select-selected {
  background: var(--color-blue);
  color: #FFFFFF;
}
.sr-select-original-hidden {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}
.suggestion-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  margin-top: 20px;
  background: #FFFFFF;
  z-index: 5;
}
.suggestion-list li {
  margin-bottom: 20px;
}
.suggestion-list li button {
  font-size: 1.5rem;
  color: var(--color-blue);
  font-weight: 300;
  cursor: pointer;
  border: none;
  background: none;
  font-family: 'Mosk', Arial, Helvetica, sans-serif;
}
.suggestion-list li button span {
  color: var(--color-orange);
}
.suggestion-list li:last-child {
  margin-bottom: 0;
}
.formie-form {
  --formie-font-family: 'Mosk', Arial, Helvetica, sans-serif;
  --formie-color-primary: var(--color-blue);
  --formie-radius-sm: 0;
  --formie-radius-md: 0;
  --formie-radius-lg: 0;
  --formie-group-border: none;
  --formie-group-padding: 0;
  --formie-button-font-size: 1.125rem;
  --formie-button-border-radius: 0;
  --formie-button-primary-background-hover: var(--color-orange);
  --formie-button-primary-border-hover: 1px solid var(--color-orange);
  --formie-label-size: 1.125rem;
  --formie-gap-row: 20px;
  --formie-color-border-control: #DDDDDD;
  --formie-control-padding-x: 15px;
  --formie-control-padding-y: 15px;
  --formie-control-font-size: 1.125rem;
  --formie-check-size: 53px;
  --formie-check-check-border-radius: 0;
  --formie-check-label-padding-left: 68px;
  --formie-check-font-size: 1.125rem;
  --formie-check-margin-bottom: 15px;
  --formie-check-margin-right: 40px;
  --formie-input-font-size: 1.125rem;
  --formie-color-success-soft: #f3faf7;
}
.formie-form .formie-section {
  border-top-color: #ddd !important;
}
.formie-form .formie-friendly-captcha-placeholder {
  width: 300px;
  margin-top: 15px;
}
.formie-form .formie-field-label {
  padding: 0 0 10px 20px;
  color: #222222;
}
.formie-form .formie-input,
.formie-form .formie-select,
.formie-form .formie-textarea {
  color: black;
  font-size: var(--formie-input-font-size);
  border-left: 5px solid var(--color-orange);
  padding: var(--formie-control-padding-y) var(--formie-control-padding-x);
}
.formie-form .formie-input:focus-visible,
.formie-form .formie-textarea:focus-visible {
  box-shadow: none;
}
.formie-form .formie-checkbox-option-label,
.formie-form .formie-radio-option-label {
  min-height: 53px;
  line-height: var(--formie-check-line-height);
  display: flex;
  align-items: center;
}
.formie-form .formie-checkbox-option-label strong {
  display: contents;
}
.formie-form .formie-checkbox-option-label a {
  display: contents;
  margin: 0 5px;
  color: var(--color-blue);
  text-decoration: none;
}
.formie-form .formie-checkbox-option-label a:hover {
  text-decoration: underline;
}
.formie-form .formie-checkbox-option-label,
.formie-form .formie-radio-option-label {
  padding-left: var(--formie-check-label-padding-left);
}
.formie-form .formie-checkbox-input:checked + .formie-checkbox-option-label::before {
  background-image: none !important;
  background-color: #fff;
  border-color: #ddd;
}
.formie-form .formie-checkbox-input:checked + .formie-checkbox-option-label::after {
  content: " ";
  width: 28px;
  height: 15px;
  display: block;
  border-left: 1px solid var(--color-orange);
  border-bottom: 1px solid var(--color-orange);
  top: 13px;
  left: 13px;
  position: absolute;
  opacity: 1;
  transform: rotate(-45deg);
}
.formie-form .formie-button {
  padding: var(--formie-button-padding-y) var(--formie-button-padding-x);
}
.formie-form .iti__country-container {
  left: 5px !important;
}
p + .formie-form {
  margin-top: 60px;
}
.formie-message {
  border: 0;
  padding: 15px;
  margin-bottom: 1rem;
}
.formie-message p:last-child {
  margin-bottom: 0;
}
/*
*
*   SECONDRED Boilerplate
*   Cookiebar
*   Author: SECONDRED Newmedia GmbH - www.secondred.de
*
*/
:root {
  --savebtn-color: #fff;
  --savebtn-background: var(--color-blue);
  --savebtn-fontsize: 1rem;
  --savebtn-border: 0;
  --savebtn-borderadius: 0;
}
/* -- Cookiebar -- */
.cookie-bar {
  display: none;
  position: fixed;
  bottom: 0;
  z-index: 900;
  width: 100%;
  max-width: 1700px;
  left: 50%;
  transform: translate(-50%, 0);
  background: var(--color-blue);
  border-radius: 15px 15px 0 0;
}
.cookie-bar .content-width {
  width: 100%;
  position: relative;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-content: stretch;
  align-items: center;
  padding: 30px 40px;
  color: #fff;
  border: 0;
}
.cookie-bar .cookie-desc {
  flex: 1 1 auto;
  width: 55%;
  font-size: 1rem;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: stretch;
  align-items: flex-start;
}
.cookie-bar .cookie-desc h3 {
  margin-bottom: 10px;
}
.cookie-bar .cookie-desc a {
  text-decoration: none;
  color: inherit;
}
.cookie-bar .cookie-desc a:focus,
.cookie-bar .cookie-desc a:hover {
  text-decoration: underline;
}
.cookie-bar .cookie-desc p {
  margin: 0;
  padding: 0;
}
.cookie-bar .cookie-options {
  width: 45%;
  display: flex;
  gap: 20px;
  align-items: flex-start;
  flex-wrap: wrap;
}
.cookie-bar .cookie-options button {
  background: transparent;
  border: 1px solid #fff;
  color: #fff;
  cursor: pointer;
  display: var(--button-display);
  text-align: center;
  display: inline-block;
  text-transform: uppercase;
  padding: 10px 20px 11px;
  font-weight: 700;
  text-decoration: none;
  font-family: var(--font);
  font-size: var(--button-fontsize);
  line-height: 1.688rem;
  letter-spacing: 2px;
  transition: color 350ms cubic-bezier(0.2, 1, 0.3, 1), border 350ms cubic-bezier(0.2, 1, 0.3, 1), background 350ms cubic-bezier(0.2, 1, 0.3, 1);
  position: relative;
}
/* -- Buttons als Normaler Textlink-- */
.cookie-bar .cookie-options a.filled {
  border-radius: 6px;
  border: 2px solid #CED2DB;
  color: #000;
  cursor: pointer;
  display: var(--button-display);
  text-align: center;
  display: inline-block;
  padding: 4px 20px 3px;
  font-weight: normal;
  text-decoration: none;
  font-family: var(--font);
  font-size: var(--button-fontsize);
  line-height: 1.688rem;
  transition: color 350ms cubic-bezier(0.2, 1, 0.3, 1), border 350ms cubic-bezier(0.2, 1, 0.3, 1), background 350ms cubic-bezier(0.2, 1, 0.3, 1);
}
.cookie-bar .cookie-options a.btn-config.filled {
  background: transparent;
  border-color: var(--color-green);
}
.cookie-bar .cookie-options a.btn-config.filled:focus,
.cookie-bar .cookie-options a.btn-config.filled:hover {
  background: var(--color-green);
}
.cookie-bar .cookie-options a.btn-accept.filled {
  background: var(--color-green);
  border-color: var(--color-green);
}
.cookie-bar .cookie-options a.btn-accept.filled:focus,
.cookie-bar .cookie-options a.btn-accept.filled:hover {
  background: #000;
  border-color: #000;
  color: #fff;
}
.cookie-bar .cookie-options a.filled:hover {
  opacity: 0.8;
}
/* -- -- */
.cookie-opt-overlay {
  font-family: "Arial", "Helvetica", sans-serif;
  max-width: 600px;
  padding: 40px;
  color: #595959;
  background: #fff;
  border: 0;
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 99999;
  transform: translate(-50%, -50%);
  border-radius: 5px;
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.1);
  width: 100%;
  box-sizing: border-box;
}
.cookie-opt-overlay .cookie-top-container {
  max-height: 70vh;
  overflow: auto;
}
.cookie-opt-overlay .cookie-opt-title {
  font-size: 1.375rem;
  margin-bottom: 30px;
}
.cookie-opt-overlay * {
  box-sizing: border-box;
}
.cookie-opt-overlay .cookie-opt-close {
  float: right;
  border: 0;
  width: 30px;
  height: 30px;
  background: transparent;
  appearance: none;
  cursor: pointer;
  position: relative;
  top: -5px;
}
.cookie-opt-overlay .cookie-opt-close span {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  display: inline;
}
.cookie-opt-overlay .cookie-opt-close::before,
.cookie-opt-overlay .cookie-opt-close::after {
  width: 20px;
  height: 2px;
  content: "";
  position: absolute;
  background: #808080;
  left: 50%;
  top: 50%;
  margin-left: -10px;
  margin-top: -1px;
}
.cookie-opt-overlay .cookie-opt-close::before {
  transform: rotate(45deg);
}
.cookie-opt-overlay .cookie-opt-close::after {
  transform: rotate(-45deg);
}
.cookie-opt-overlay .cookie-opt-close:focus::before,
.cookie-opt-overlay .cookie-opt-close:hover::before,
.cookie-opt-overlay .cookie-opt-close:focus::after,
.cookie-opt-overlay .cookie-opt-close:hover::after {
  background: var(--color-orange);
}
.cookie-opt-overlay .cookie-opt-content {
  text-align: left;
}
.cookie-opt-overlay .cookie-opt-toggle {
  right: 0;
  top: 0;
  width: 40px;
  height: 40px;
  cursor: pointer;
  background: transparent;
  border: 0;
  text-align: center;
  position: absolute;
}
.cookie-opt-overlay .cookie-opt-toggle::before {
  content: "";
  width: 10px;
  height: 10px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -5px;
  margin-top: -9px;
  border-right: 2px solid #808080;
  border-bottom: 2px solid #808080;
  display: block;
  transform: rotate(45deg);
}
.cookie-opt-overlay .cookie-opt-toggle.open {
  transform: rotate(180deg);
}
.cookie-opt-overlay .cookie-opt-toggle:focus::before,
.cookie-opt-overlay .cookie-opt-toggle:hover::before {
  border-color: var(--color-green);
}
.cookie-opt-overlay .cookie-opt-cattitle {
  background: #EDEDED;
  padding: 11px 10px;
  min-height: 40px;
  font-size: 0.8125rem;
  text-transform: uppercase;
  font-weight: bold;
  position: relative;
  border-top: 2px solid #fff;
}
.cookie-opt-overlay .cookie-opt-cattitle small {
  display: block;
  text-transform: none;
  font-size: 0.75rem;
  padding-left: 30px;
  font-weight: normal;
  opacity: 0.75;
  margin-right: 40px;
  padding-top: 5px;
  line-height: normal;
}
.cookie-opt-overlay .cookie-opt-cattitle:first-child {
  border-top: 0;
}
.cookie-opt-overlay .cookie-single-opt-toggle input,
.cookie-opt-overlay .cookie-opt-cattitle input {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
}
.cookie-opt-overlay .cookie-single-opt-toggle label,
.cookie-opt-overlay .cookie-opt-cattitle label {
  cursor: pointer;
}
.cookie-opt-overlay .cookie-single-opt-toggle label em,
.cookie-opt-overlay .cookie-opt-cattitle label em {
  width: 20px;
  height: 20px;
  display: block;
  background-color: #E1E1E1;
  color: #ccc;
  float: left;
  margin-right: 10px;
  border: 0;
  border-radius: 50%;
  margin-top: -1px;
  background-position: 3px 6px;
  background-size: 14px auto;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiB2aWV3Qm94PSIwIDAgMTEgOCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJzdHJva2UtbGluZWpvaW46cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MjsiPjxwYXRoIGQ9Ik0xMC4wNTYsMC4wMDJjMC43ODcsMC4wNjYgMS4yMDYsMS4xMTggMC42NTEsMS43MDVsLTUuNzA3LDUuNzA3bC0zLjcwNywtMy43MDdjLTEuNDA5LC0xLjQ5IDAuNjMyLC0yLjE1NCAxLjQxNCwtMS40MTRsMi4yOTMsMi4yOTNsNC4yOTMsLTQuMjkzYzAuMzM1LC0wLjMxNyAwLjQwNCwtMC4zMDIgMC43NjMsLTAuMjkxWiIgc3R5bGU9ImZpbGw6I2NjYzsiLz48L3N2Zz4=);
}
.cookie-opt-overlay .cookie-opt-cattitle label > span {
  padding: 2px 0;
  display: block;
  line-height: normal;
  margin: auto;
}
.cookie-opt-overlay .cookie-single-opt-toggle:has(input:checked) label em,
.cookie-opt-overlay .cookie-opt-cattitle:has(input:checked) label em {
  color: #fff;
  background-color: var(--color-orange);
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiB2aWV3Qm94PSIwIDAgMTEgOCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJzdHJva2UtbGluZWpvaW46cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MjsiPjxwYXRoIGQ9Ik0xMC4wNTYsMC4wMDJjMC43ODcsMC4wNjYgMS4yMDYsMS4xMTggMC42NTEsMS43MDVsLTUuNzA3LDUuNzA3bC0zLjcwNywtMy43MDdjLTEuNDA5LC0xLjQ5IDAuNjMyLC0yLjE1NCAxLjQxNCwtMS40MTRsMi4yOTMsMi4yOTNsNC4yOTMsLTQuMjkzYzAuMzM1LC0wLjMxNyAwLjQwNCwtMC4zMDIgMC43NjMsLTAuMjkxWiIgc3R5bGU9ImZpbGw6I2ZmZjsiLz48L3N2Zz4=);
}
.cookie-opt-overlay .cookie-single-opt-toggle:has(input:focus-visible) label em,
.cookie-opt-overlay .cookie-opt-cattitle:has(input:focus-visible) label em {
  outline: 2px solid #000;
  outline-offset: 2px;
}
.cookie-opt-overlay .cookie-opt-catinfo {
  font-size: 0.8125rem;
  line-height: 16px;
  background: #F1F1F1;
  display: none;
}
.cookie-opt-overlay .cookie-opt-catinfo.active {
  display: block;
}
.cookie-opt-overlay .cookie-opt-catinfo p {
  padding: 15px 18px;
  margin: 0;
}
.cookie-opt-overlay .cookie-opt-catinfo .cookie-opt-table-wrap {
  padding: 15px 0;
  border-top: 1px solid #E4E4E4;
}
.cookie-opt-overlay .cookie-opt-catinfo table {
  table-layout: fixed;
}
.cookie-opt-overlay .cookie-opt-catinfo table th,
.cookie-opt-overlay .cookie-opt-catinfo table td {
  text-align: left;
  vertical-align: top;
  padding: 2px 18px;
}
.cookie-opt-overlay .cookie-opt-catinfo table th {
  width: 160px;
}
.cookie-opt-overlay .cookie-single-opt-toggle {
  padding-left: 18px;
  float: left;
}
.cookie-opt-overlay .cookie-single-opt-toggle + table {
  margin-left: 50px;
  width: calc(100% - 50px);
}
.cookie-opt-overlay .cookie-single-opt-toggle + table th {
  padding-right: 0;
  padding-left: 0;
}
.cookie-opt-overlay .cookie-single-opt-toggle label {
  position: relative;
  top: 2px;
}
.cookie-opt-overlay .cookie-top-savebtn {
  width: 100%;
  cursor: pointer;
  background: var(--savebtn-background);
  color: var(--savebtn-color);
  font-size: var(--savebtn-fontsize);
  font-weight: bold;
  border-radius: var(--savebtn-borderadius);
  height: 50px;
  margin-top: 30px;
  border: 0;
}
.cookie-opt-overlay .cookie-top-savebtn:hover {
  color: #fff;
  background: var(--color-orange);
}
.cookie-opt-catinfo {
  transition: height 0.35s ease-in-out;
  overflow: hidden;
}
.cookie-opt-overlay .cookie-opt-catinfo {
  display: block;
}
.cookie-opt-catinfo:not(.active) {
  display: none;
}
@media only screen and (max-width: 1400px) {
  .cookie-bar .cookie-desc {
    padding-left: 20px;
  }
  .cookie-bar .cookie-options {
    padding-right: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .cookie-bar .content-width {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
  }
  .cookie-bar .cookie-desc {
    padding: 0 0 20px;
  }
  .cookie-bar .cookie-desc,
  .cookie-bar .cookie-options {
    width: 100%;
    text-align: center;
  }
  .cookie-bar .cookie-options {
    padding-right: 0;
  }
  .cookie-bar .cookie-options a.btn-config,
  .cookie-bar .cookie-options a.btn-accept {
    margin-top: 0;
  }
}
@media only screen and (max-width: 480px) {
  .cookie-opt-overlay {
    max-width: 90%;
    padding: 20px;
  }
  .cookie-opt-overlay .cookie-top-savebtn {
    margin-top: 20px;
  }
  .cookie-bar .cookie-options a.btn-config,
  .cookie-bar .cookie-options a.btn-accept {
    font-size: 0.75rem;
  }
}
nav.main.inline ul li {
  position: relative;
  margin-right: 10px;
}
nav.main.inline ul li ul {
  display: none;
  position: absolute;
  left: -20px;
  top: 100%;
  background: #CFCFCF;
  padding: 20px;
  min-width: 100%;
}
nav.main.inline ul li ul li {
  display: block;
  line-height: initial;
  margin-bottom: 10px;
}
nav.main.inline ul li:hover > ul {
  display: block;
}
nav.main.sidebar .menu-wrapper {
  position: fixed;
  left: -800px;
  top: 0;
  width: 800px;
  height: 100vh;
  background: #FFFFFF;
  padding: 110px 70px;
  justify-content: space-between;
  transition: left 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media screen and (max-width: 760px) {
  nav.main.sidebar .menu-wrapper {
    padding: 70px 20px;
  }
}
nav.main.sidebar .menu-wrapper > ul {
  height: auto;
  overflow-y: auto;
  padding: 5px;
  max-height: 100%;
  display: none;
}
nav.main.sidebar .menu-wrapper > ul li {
  display: block;
  margin-bottom: 60px;
}
@media screen and (max-width: 760px) {
  nav.main.sidebar .menu-wrapper > ul li {
    margin-bottom: 20px;
  }
}
nav.main.sidebar .menu-wrapper > ul li a,
nav.main.sidebar .menu-wrapper > ul li button {
  white-space: normal;
  text-decoration: none;
}
@media screen and (max-width: 760px) {
  nav.main.sidebar .menu-wrapper > ul li a,
  nav.main.sidebar .menu-wrapper > ul li button {
    font-size: 1.625rem;
  }
}
nav.main.sidebar .menu-wrapper > ul li a:hover,
nav.main.sidebar .menu-wrapper > ul li button:hover,
nav.main.sidebar .menu-wrapper > ul li a.active,
nav.main.sidebar .menu-wrapper > ul li button.active {
  color: var(--color-orange);
}
nav.main.sidebar .menu-wrapper > ul li a:hover::after,
nav.main.sidebar .menu-wrapper > ul li button:hover::after,
nav.main.sidebar .menu-wrapper > ul li a.active::after,
nav.main.sidebar .menu-wrapper > ul li button.active::after {
  border-top: 12px solid var(--color-orange) !important;
}
nav.main.sidebar .menu-wrapper > ul li a.active > .arrow::after,
nav.main.sidebar .menu-wrapper > ul li button.active > .arrow::after {
  border-top: 12px solid var(--color-orange) !important;
}
nav.main.sidebar .menu-wrapper > ul li:last-child {
  margin-bottom: 0;
}
nav.main.sidebar .menu-wrapper > ul li ul {
  padding-left: 40px;
}
@media screen and (max-width: 760px) {
  nav.main.sidebar .menu-wrapper > ul li ul {
    padding-left: 20px;
  }
}
nav.main.sidebar .menu-wrapper > ul li.has-sub > a.link::after,
nav.main.sidebar .menu-wrapper > ul li.has-sub > button.link::after,
nav.main.sidebar .menu-wrapper > ul li.has-sub > .arrow::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
  border-top: 12px solid var(--color-blue);
  border-bottom: 0;
  display: inline-block;
  transition: border-top-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
nav.main.sidebar .menu-wrapper > ul li.has-sub > a.link::after,
nav.main.sidebar .menu-wrapper > ul li.has-sub > button.link::after {
  margin-left: 15px;
  position: relative;
}
nav.main.sidebar .menu-wrapper > ul li.has-sub > a.page {
  display: inline-block;
}
nav.main.sidebar .menu-wrapper > ul li.has-sub > .arrow {
  cursor: pointer;
  display: inline-flex;
  position: relative;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  margin-left: 5px;
  top: -2px;
}
nav.main.sidebar .menu-wrapper > ul li.has-sub > .arrow:hover::after {
  border-top: 12px solid var(--color-orange);
}
nav.main.sidebar .menu-wrapper > ul li.has-sub > ul {
  display: none;
}
nav.main.sidebar .menu-wrapper > ul li.has-sub > ul li {
  margin-bottom: 30px;
}
@media screen and (max-width: 760px) {
  nav.main.sidebar .menu-wrapper > ul li.has-sub > ul li {
    margin-bottom: 20px;
  }
}
nav.main.sidebar .menu-wrapper > ul li.has-sub > ul li a {
  font-size: 1.5rem;
}
@media screen and (max-width: 760px) {
  nav.main.sidebar .menu-wrapper > ul li.has-sub > ul li a {
    font-size: 1.125rem;
  }
}
nav.main.sidebar .menu-wrapper > ul li.has-sub > ul li:first-child {
  margin-top: 30px;
}
nav.main.sidebar .menu-wrapper > ul li.has-sub > ul li:last-child {
  margin-bottom: 0;
}
nav.main.sidebar .menu-wrapper > ul li.has-sub.open > a {
  color: var(--color-orange);
}
nav.main.sidebar .menu-wrapper > ul li.has-sub.open > a::after {
  transform: scaleY(-1);
  border-top: 12px solid var(--color-orange);
}
nav.main.sidebar .menu-wrapper > ul li.has-sub.open > ul {
  display: block;
}
nav.main.sidebar .menu-wrapper > ul li.meta-mobile {
  display: none;
}
@media screen and (max-width: 760px) {
  nav.main.sidebar .menu-wrapper > ul li.meta-mobile {
    display: block;
  }
}
@media screen and (max-width: 760px) {
  nav.main.sidebar {
    width: 100%;
    padding: 90px 30px 30px 30px;
  }
}
nav.main.sidebar .bottom-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 0 80px 80px 80px;
}
nav.main.sidebar.open .menu-wrapper {
  left: 0;
}
nav.main.sidebar.open .menu-wrapper > ul {
  display: block;
}
.hamburger {
  display: flex;
  background: transparent;
  border: none;
  height: 100%;
  margin-left: 0;
  margin-right: 20px;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-content: stretch;
  align-items: center;
  position: absolute;
  z-index: 10;
  top: 0;
  left: 40px;
}
.hamburger:focus-visible {
  outline: 2px solid #FFFFFF;
}
@media screen and (max-width: 760px) {
  .hamburger {
    left: 20px;
  }
}
.hamburger .burger {
  width: 30px;
  height: 25px;
  display: inline-block;
  position: relative;
  transform-style: preserve-3d;
}
.hamburger .text {
  text-decoration: none;
  margin-left: 20px;
  font-size: 1rem;
  position: relative;
  top: 2px;
  color: #FFFFFF;
}
.hamburger em {
  width: 30px;
  height: 3px;
  background: #FFFFFF;
  border-radius: 0;
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1), margin 400ms cubic-bezier(0.22, 1, 0.36, 1);
  backface-visibility: hidden;
  transform-style: preserve-3d;
  perspective: 1000px;
  display: block;
  position: absolute;
  top: 11px;
  left: 0;
  right: 0;
}
.hamburger em:before,
.hamburger em:after {
  content: '';
  position: absolute;
  display: block;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #FFFFFF;
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hamburger em::before {
  top: -11px;
}
.hamburger em::after {
  bottom: -11px;
}
.hamburger:hover em::before {
  transform: translateY(-3px);
}
.hamburger:hover em::after {
  transform: translateY(3px);
}
.hamburger.open em {
  background: none;
}
.hamburger.open em::before {
  top: 0;
  transform: rotate(45deg);
  background: var(--color-blue);
}
.hamburger.open em::after {
  bottom: 0;
  transform: rotate(-45deg);
  background: var(--color-blue);
}
.breadcrumb {
  margin: 0;
  padding: 0;
  list-style-type: none;
  padding: 20px 0;
  margin-bottom: 40px;
}
.breadcrumb li {
  margin-right: 5px;
  display: inline-block;
  color: #222222;
  font-size: 0.875rem;
}
.breadcrumb li::after {
  content: "/";
  margin-left: 5px;
  color: var(--color-blue);
}
.breadcrumb li:last-child::after {
  display: none;
}
.breadcrumb li a {
  display: inline-block;
  text-decoration: none;
  color: #B3B3B3;
}
.breadcrumb li a:hover {
  color: var(--color-blue);
}
@media screen and (max-width: 760px) {
  .breadcrumb {
    display: none;
  }
}
.teaser {
  overflow: hidden;
  position: relative;
}
.teaser figure img {
  width: 100%;
  height: auto;
}
.teaser figure figcaption {
  position: relative;
  margin-top: -80px;
  padding: 50px;
  background: #FFF;
  z-index: 2;
  overflow: hidden;
  border-radius: 0;
  box-shadow: none;
}
.teaser .content-width {
  z-index: 2;
}
.teaser .swiper-slide {
  overflow: hidden;
}
.teaser .swiper-pagination {
  left: 0;
  right: 0;
}
.teaser .swiper-pagination .swiper-pagination-bullet {
  margin: 0 5px;
}
@media only screen and (max-width: 763px) {
  .teaser figcaption {
    position: static;
  }
  .teaser figure[data-textalign="left"] figcaption,
  .teaser figure[data-textalign="center"] figcaption,
  .teaser figure[data-textalign="right"] figcaption {
    right: auto;
    transform: none;
    left: auto;
  }
}
@media only screen and (min-width: 1280px) {
  .teaser figure figcaption {
    position: absolute;
    bottom: 50px;
    margin-top: 0;
  }
  .teaser figure[data-textalign="left"] figcaption {
    left: 30px;
  }
  .teaser figure[data-textalign="left"] .content-width figcaption {
    left: 0;
  }
  .teaser figure[data-textalign="center"] figcaption {
    left: 50%;
    transform: translate(-50%, 0);
  }
  .teaser figure[data-textalign="right"] figcaption {
    right: 30px;
  }
  .teaser figure[data-textalign="right"] .content-width figcaption {
    right: 0;
  }
}
figure.img {
  position: relative;
  overflow: hidden;
}
figure.img picture {
  width: 100%;
}
figure.img picture img {
  width: 100%;
  height: auto;
  display: block;
}
figure.img > button {
  border: none;
  margin: 0;
  padding: 0;
  text-align: left;
  display: block;
}
figure.img figcaption {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 40px;
  background: rgb(from var(--color-orange) r g b / 0.9);
  color: #FFFFFF;
}
figure.img figcaption .card-button::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
figure.img figcaption:has(.card-button):has(*:focus-visible) {
  outline: 2px solid #FFFFFF;
  outline-offset: 3px;
}
figure.img figcaption:has(.card-button) a:focus-visible,
figure.img figcaption:has(.card-button) button:focus-visible {
  outline: none !important;
}
@media screen and (max-width: 760px) {
  figure.img figcaption {
    width: calc(100% - 40px) !important;
    padding: 20px;
  }
}
figure.img figcaption p {
  margin-bottom: 0;
  line-height: 130%;
}
@media screen and (max-width: 760px) {
  figure.img figcaption p {
    display: none;
  }
}
figure.img figcaption .buttons {
  margin-top: 20px;
}
figure.img figcaption h1,
figure.img figcaption h2,
figure.img figcaption h3,
figure.img figcaption h4,
figure.img figcaption h5,
figure.img figcaption h6 {
  color: #FFFFFF;
}
figure.img figcaption h1 + small,
figure.img figcaption h2 + small,
figure.img figcaption h3 + small,
figure.img figcaption h4 + small,
figure.img figcaption h5 + small,
figure.img figcaption h6 + small {
  display: block;
  margin-top: 20px;
  font-size: 1.125rem;
}
figure.img figcaption:not(:has(p, a, button)) h1,
figure.img figcaption:not(:has(p, a, button)) h2,
figure.img figcaption:not(:has(p, a, button)) h3,
figure.img figcaption:not(:has(p, a, button)) h4,
figure.img figcaption:not(:has(p, a, button)) h5,
figure.img figcaption:not(:has(p, a, button)) h6 {
  margin-bottom: 0;
}
figure.img figcaption.orange {
  background: rgb(from var(--color-orange) r g b / 0.9);
}
figure.img figcaption.green {
  background: rgb(from var(--color-green) r g b / 0.9);
}
figure.img figcaption.blue {
  background: rgb(from var(--color-blue) r g b / 0.9);
}
figure.img figcaption.blue a:focus-visible,
figure.img figcaption.blue button:focus-visible {
  outline: 2px solid #FFFFFF;
}
figure.img figcaption .ico {
  display: block;
  float: right;
  width: 50px;
  height: auto;
  margin: -20px -20px -20px 20px;
}
figure.img figcaption .copyright {
  font-size: 1rem;
}
figure.img figcaption p + .copyright {
  margin-top: 20px;
}
.col-12-12 > figure.img figcaption,
.col-12-12 > .card > figure.img figcaption {
  width: calc((100% + var(--grid-gutter)) / 12 * 8 - var(--grid-gutter));
}
.col-8-12 > figure.img figcaption,
.col-8-12 > .card > figure.img figcaption {
  width: calc((100% + var(--grid-gutter)) / 8 * 4 - var(--grid-gutter));
}
.col-4-12 > figure.img figcaption,
.col-4-12 > .card > figure.img figcaption {
  width: auto;
  left: 40px;
  padding: 30px;
}
.col-4-12 > figure.img figcaption h3,
.col-4-12 > .card > figure.img figcaption h3 {
  margin: 0;
}
.image-grid [class*="col-"] {
  margin-bottom: 40px !important;
}
.image-grid .img {
  height: 100%;
}
.image-grid .img img {
  height: 100%;
  object-fit: cover;
}
picture img {
  object-position: var(--focusX, center) var(--focusY, center);
}
.notification {
  background: hsl(from var(--color-grey) h s calc(l + 25%));
  margin-bottom: 40px;
  padding: 40px 40px 40px 0;
  position: relative;
}
.notification:not(.small)::before {
  content: '';
  background: inherit;
  position: absolute;
  right: 100%;
  top: 0;
  width: 50vw;
  height: 100%;
}
.notification p a {
  text-decoration: underline;
}
.notification.success {
  border-color: var(--color-green);
  color: var(--color-green);
  background: hsl(from var(--color-green) h s calc(l + 55%));
}
.notification.success.dark {
  color: #FFFFFF;
  background: var(--color-green);
}
.notification.success p a {
  color: inherit;
}
.notification.highlight {
  border-color: var(--color-blue);
  color: var(--color-blue);
  background: hsl(from var(--color-blue) h s calc(l + 55%));
}
.notification.highlight.dark {
  color: #FFFFFF;
  background: var(--color-blue);
}
.notification.highlight p a {
  color: inherit;
}
.notification.warning {
  border-color: var(--color-orange);
  color: var(--color-orange);
  background: hsl(from var(--color-orange) h s calc(l + 45%));
}
.notification.warning.dark {
  color: #FFFFFF;
  background: var(--color-orange);
}
.notification.warning p a {
  color: inherit;
}
.notification.alert {
  border-color: var(--color-red);
  color: var(--color-red);
  background: hsl(from var(--color-red) h s calc(l + 40%));
}
.notification.alert.dark {
  color: #FFFFFF;
  background: var(--color-red);
}
.notification.alert p a {
  color: inherit;
}
.notification.center {
  text-align: center;
}
.notification p:last-child {
  margin-bottom: 0;
}
.notification h2 {
  margin-bottom: 40px;
}
/*
  Tooltip

  Simple tooltip that can be used on any element.
  Attention: .tooltip applies position: relative

  Markup:
  <p>
    I am a text and I have a <span class="tooltip" data-tooltip="Tooltip Content">Tooltip</span>, isn't it great?
  </p>

  Style guide: Components.Tooltip
*/
.tooltip {
  position: relative;
  cursor: help;
}
.tooltip::before {
  content: attr(data-tooltip);
  position: absolute;
  width: 200px;
  background-color: #444;
  color: #FFF;
  text-align: center;
  padding: 10px;
  line-height: 120%;
  border-radius: 0;
  z-index: 1000;
  opacity: 0;
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 250ms;
  bottom: calc(100% + 10px);
  left: 50%;
  margin-left: -100px;
  font-size: 0.875rem;
  pointer-events: none;
}
.tooltip::after {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  opacity: 0;
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 250ms;
  border-color: #444 transparent transparent;
}
.tooltip:hover::before,
.tooltip:hover::after {
  opacity: 1;
  transition-delay: 0s;
}
/*
  Loader

  Loading state that can be applied to various elements

  Markup:
  <button class="btn loading">Loading Buttons</button>
  <br><br>
  <div class="img loading" style="width: 250px;"><img src="https://placekitten.com/640/320" alt="cute kitten"></div>

  Style guide: Components.Loader
*/
.loading {
  position: relative;
  overflow: hidden;
  cursor: default;
}
.loading::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url('../gfx/loader.svg') rgb(from var(--color-blue) r g b / 0.9) no-repeat center;
  background-size: auto 7px;
}
.modal {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
  z-index: 9999;
  left: 0;
  top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  width: 100vw;
}
.modal #modalClose {
  position: absolute;
  right: 40px;
  top: 40px;
  background: transparent;
  border: none;
  z-index: 999;
}
.modal #modalClose em {
  color: var(--color-blue);
  font-size: 1.875rem;
}
.modal .modal-content {
  opacity: 0;
  transform: translateY(25vh);
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 0.2s;
  width: 1280px;
  padding: 5px;
}
.modal .modal-content:not(.no-scroll) {
  max-height: 80vh;
  overflow-y: auto;
}
.modal .modal-content.centered {
  text-align: center;
}
.modal .modal-content .row {
  width: 100%;
}
.modal.fullscreen .modal-content {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.modal.fullscreen .modal-content .gallery-swiper {
  width: 1280px;
  overflow: hidden;
}
.modal.fullscreen .modal-content .swiper-pagination {
  bottom: -40px !important;
  color: #B3B3B3;
  font-size: 1.125rem;
}
.modal.fullscreen .modal-content .swiper-pagination .swiper-pagination-current {
  color: var(--color-orange);
  font-size: 1.5rem;
}
.modal.fullscreen .modal-content .swiper-button-next,
.modal.fullscreen .modal-content .swiper-button-prev {
  width: 40px;
  height: 15px;
  background: transparent;
  border: none;
}
.modal.fullscreen .modal-content .swiper-button-next::before,
.modal.fullscreen .modal-content .swiper-button-prev::before,
.modal.fullscreen .modal-content .swiper-button-next::after,
.modal.fullscreen .modal-content .swiper-button-prev::after {
  content: '';
  display: block;
  position: absolute;
}
.modal.fullscreen .modal-content .swiper-button-next::before,
.modal.fullscreen .modal-content .swiper-button-prev::before {
  width: 40px;
  height: 1px;
  top: 50%;
  right: 0;
  background: var(--color-blue);
  transition: width 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.modal.fullscreen .modal-content .swiper-button-next::after,
.modal.fullscreen .modal-content .swiper-button-prev::after {
  width: 11px;
  height: 11px;
  border-right: 1px solid var(--color-blue);
  border-top: 1px solid var(--color-blue);
  right: 2px;
  top: 50%;
  margin-top: -5px;
  transform: rotate(45deg);
}
.modal.fullscreen .modal-content .swiper-button-next {
  right: 40px;
}
.modal.fullscreen .modal-content .swiper-button-prev {
  transform: rotate(180deg);
  left: 40px;
}
.modal .modal-bg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.98);
}
.modal.open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.modal.open .modal-content {
  transform: translateY(0);
  opacity: 1;
}
.modal-close {
  color: #AAA;
  line-height: 50px;
  font-size: 80%;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 70px;
  text-decoration: none;
}
.modal-close:hover {
  color: #000;
}
.card {
  height: 100%;
  display: flex;
  flex-direction: column;
  position: relative;
}
.card .card-link {
  border: none;
  background: none;
}
.card .card-button::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
.card figure.img {
  overflow: hidden;
  border-radius: 0;
  box-shadow: none;
}
.card figure.img img {
  display: block;
  width: 100%;
  height: auto;
}
.card figure.img.icon {
  height: 120px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  position: relative;
}
.card figure.img.icon picture {
  width: auto;
}
.card figure.img.icon img {
  height: 50px;
  width: auto;
}
.card figure.img.icon strong {
  font-size: 8.125rem;
  color: #F2F2F2;
  position: absolute;
  right: 50%;
  bottom: 0;
  z-index: -1;
  transform: translateX(-20px) translateY(10px);
}
.card figure.img.large-icon {
  height: 150px;
}
.card figure.img.large-icon img {
  height: 100%;
  width: 100%;
  object-fit: contain;
}
.card .caption {
  width: 100%;
  padding: 40px;
  background: var(--color-orange);
  color: #FFFFFF;
  aspect-ratio: 4/3;
}
.card .caption p {
  margin-bottom: 0;
  line-height: 130%;
}
.card .caption .buttons {
  margin-top: 20px;
}
.card .caption h1,
.card .caption h2,
.card .caption h3,
.card .caption h4,
.card .caption h5,
.card .caption h6 {
  color: #FFFFFF;
}
.card .caption.orange {
  background: var(--color-orange);
}
.card .caption.green {
  background: var(--color-orange);
}
.card .caption.blue {
  background: var(--color-blue);
}
.card .caption .ico {
  display: block;
  float: right;
  width: 50px;
  height: auto;
  margin: -20px -20px -20px 20px;
}
.card .inner {
  display: flex;
  flex-direction: column;
  flex: 1;
  align-items: flex-start;
  padding: 40px 0 0 0;
}
.card .inner small {
  font-size: 1rem;
  color: #B3B3B3;
  font-weight: bold;
  margin-bottom: 25px;
}
.card .inner .buttons {
  flex: 1;
  width: 100%;
  display: flex;
  align-items: flex-end;
}
.card .inner ul:not(.dropdown, .list-icons, .tags, .list-downloads) {
  margin: 0;
  padding: 0;
  list-style-type: none;
  margin-bottom: 25px;
  font-size: 1.125rem;
  padding-left: 0;
}
.card .inner ul:not(.dropdown, .list-icons, .tags, .list-downloads) li {
  position: relative;
  padding-left: 21px;
  margin-bottom: 15px;
}
.card .inner ul:not(.dropdown, .list-icons, .tags, .list-downloads) li::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 8px;
  width: 8px;
  height: 8px;
  background: var(--color-blue);
}
.card .inner ul:not(.dropdown, .list-icons, .tags, .list-downloads) ul {
  margin-top: 15px;
  margin-bottom: 15px;
}
.card .inner ul:not(.dropdown, .list-icons, .tags, .list-downloads) ul li::before {
  background: var(--color-green);
}
.card .inner h1,
.card .inner h2,
.card .inner h3,
.card .inner h4,
.card .inner h5,
.card .inner h6 {
  color: var(--color-blue);
}
.card .inner h1 a,
.card .inner h2 a,
.card .inner h3 a,
.card .inner h4 a,
.card .inner h5 a,
.card .inner h6 a {
  text-decoration: none;
}
.card .inner h1 a:focus-visible,
.card .inner h2 a:focus-visible,
.card .inner h3 a:focus-visible,
.card .inner h4 a:focus-visible,
.card .inner h5 a:focus-visible,
.card .inner h6 a:focus-visible {
  outline: none;
}
.card.highlight h1,
.card.highlight h2,
.card.highlight h3,
.card.highlight h4,
.card.highlight h5,
.card.highlight h6 {
  color: #FFFFFF;
}
.card.highlight .inner {
  background: var(--color-blue);
  color: #FFFFFF;
  padding: 40px;
}
.card:has(.card-button):hover h3 a,
.card:has(.card-button):hover .button span,
.card:has(.card-button):hover .button em {
  color: var(--color-orange);
}
.card:has(.card-button):hover .button.primary em::before {
  background: var(--color-orange);
}
.card:has(.card-button):hover .button.primary em::after {
  border-right-color: var(--color-orange);
  border-top-color: var(--color-orange);
}
.card:has(*:focus-visible) {
  outline: 2px solid var(--color-blue);
  outline-offset: 3px;
}
blockquote {
  background: #F2F2F2;
  line-height: 140%;
  position: relative;
  display: flex;
}
@media screen and (max-width: 760px) {
  blockquote {
    flex-direction: column;
  }
}
blockquote .img {
  position: relative;
  flex: 0 0 auto;
  overflow: visible;
  width: 100%;
}
@media screen and (min-width: 760px) {
  blockquote .img {
    width: 33.3333%;
  }
}
blockquote .img picture {
  height: 100%;
}
blockquote .img picture img {
  width: 100%;
}
@media screen and (min-width: 760px) {
  blockquote .img picture img {
    height: 100%;
    object-fit: cover;
  }
}
blockquote .img::before {
  position: absolute;
  left: 10px;
  top: -25px;
  color: var(--color-blue);
  font-size: 3.4375rem;
}
@media screen and (min-width: 760px) {
  blockquote .img::after {
    content: '';
    background: #F2F2F2;
    position: absolute;
    right: 100%;
    top: 0;
    width: 50vw;
    height: 100%;
  }
}
blockquote .desc {
  padding: 40px;
}
blockquote .desc p {
  font-size: 1.75rem;
  margin-bottom: 20px;
  font-weight: 300;
}
@media screen and (max-width: 760px) {
  blockquote .desc p {
    font-size: 1.25rem;
  }
}
blockquote .desc cite {
  font-size: 1rem;
  display: block;
  font-style: normal;
}
.swiper-container .swiper-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background: #808080;
}
.swiper-container .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--color-blue);
}
.gallery-teaser {
  display: flex;
  overflow: hidden;
}
.gallery-teaser .img {
  flex: 0 0 auto;
}
.gallery-teaser .img img {
  height: 100%;
  object-fit: cover;
}
.gallery-teaser .img.img-left {
  width: calc(1280px + ((100vw - 1280px) / 2));
}
.dropdown {
  display: none;
  margin: 0;
  padding: 0;
  list-style-type: none;
  position: absolute;
  right: 0;
  top: 100%;
  background: #FFFFFF;
  z-index: 2;
  min-width: 200px;
  border: 1px solid #BCBCBC;
}
.dropdown li {
  white-space: nowrap;
  padding: 8px 10px;
  border-bottom: 1px solid #BCBCBC;
}
.dropdown li .button {
  padding: 0;
  height: auto;
}
.acc-container .acc-headline {
  position: relative;
  border-top: 1px solid #DFDFDF;
  cursor: pointer;
  margin-bottom: 0;
}
.acc-container .acc-headline em {
  width: 20px;
  height: 15px;
  display: block;
  float: right;
  transform: rotate(90deg);
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.acc-container .acc-headline em::before,
.acc-container .acc-headline em::after {
  content: '';
  display: block;
  position: absolute;
}
.acc-container .acc-headline em::before {
  width: 20px;
  height: 1px;
  top: 50%;
  right: 0;
  background: var(--color-blue);
  transition: width 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.acc-container .acc-headline em::after {
  width: 11px;
  height: 11px;
  border-right: 1px solid var(--color-blue);
  border-top: 1px solid var(--color-blue);
  right: 0;
  top: 50%;
  margin-top: -5px;
  transform: rotate(45deg);
}
.acc-container .acc-headline.open em {
  transform: scaleY(-1) rotate(90deg);
}
.acc-container .acc-headline button {
  padding: 20px 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  appearance: none;
  width: 100%;
  font-size: inherit;
  color: var(--color-blue);
  text-align: left;
  display: block;
  overflow: visible;
  font-family: inherit;
}
.acc-container .acc-headline button a.copy-link {
  background: transparent;
  border: none;
  height: auto;
  vertical-align: middle;
  position: relative;
  top: -2px;
}
.acc-container .acc-headline button a.copy-link svg {
  height: 20px;
}
.acc-container .acc-headline button a.copy-link svg path {
  fill: var(--color-blue);
}
.acc-container .acc-content {
  display: none;
}
@media screen and (min-width: 760px) {
  .acc-container .acc-content {
    margin: 0 40px;
  }
}
.acc-container .acc-content img {
  max-width: 100%;
  height: auto;
}
.acc-container .acc-content .inner {
  background: #F2F2F2;
  padding: 30px;
}
.acc-container .acc-content p,
.acc-container .acc-content ul {
  padding-left: 0;
}
.acc-container .acc-content a {
  text-decoration: none;
  color: var(--color-blue);
}
.acc-container .acc-content a:hover {
  text-decoration: underline;
}
.acc-container .acc-content ul:not(.dropdown, .list-icons, .tags, .list-downloads) {
  margin: 0;
  padding: 0;
  list-style-type: none;
  list-style-type: none !important;
  margin-bottom: 25px;
  font-size: 1.125rem;
  padding-left: 40px;
}
.acc-container .acc-content ul:not(.dropdown, .list-icons, .tags, .list-downloads) li {
  position: relative;
  padding-left: 21px;
  margin-bottom: 15px;
}
.acc-container .acc-content ul:not(.dropdown, .list-icons, .tags, .list-downloads) li::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 8px;
  width: 8px;
  height: 8px;
  background: var(--color-blue);
}
.acc-container .acc-content ul:not(.dropdown, .list-icons, .tags, .list-downloads) ul {
  margin-top: 15px;
  margin-bottom: 15px;
}
.acc-container .acc-content ul:not(.dropdown, .list-icons, .tags, .list-downloads) ul li::before {
  background: var(--color-blue);
}
.acc-container .acc-content ol:not(.dropdown, .list-icons, .tags, .list-downloads) {
  margin: 0;
  padding: 0;
  list-style-type: none;
  list-style-type: decimal;
  margin-bottom: 25px;
  font-size: 1.125rem;
  padding-left: 55px;
}
.acc-container .acc-content ol:not(.dropdown, .list-icons, .tags, .list-downloads) li {
  margin-bottom: 15px;
}
.acc-container .acc-content ol:not(.dropdown, .list-icons, .tags, .list-downloads) li::marker {
  font-size: 1.125rem;
  font-weight: bold;
  color: var(--color-blue);
  text-align: left;
}
.acc-container .acc-content ol:not(.dropdown, .list-icons, .tags, .list-downloads) ol {
  margin-top: 15px;
  margin-bottom: 15px;
}
.acc-container .acc-content .accordion {
  margin: -31px 30px;
}
.acc-container .acc-content .accordion .acc-content::before {
  left: 0;
  right: 0;
  position: absolute;
}
.acc-container .acc-headline.open + .acc-content {
  transition: max-height 400ms cubic-bezier(0.22, 1, 0.36, 1);
  display: block;
}
.acc-container .acc-headline.open + .acc-content .acc-content {
  margin: 0;
}
.acc-container .acc-headline.open + .acc-content + .acc-headline {
  border-top: none;
}
.tabs {
  background: #F2F2F2;
  margin-bottom: 0;
}
.tabs .tab-selector {
  display: none;
  font-size: 18px;
  cursor: pointer;
  border: 0;
  background: transparent;
  width: 100%;
  padding: 30px 0;
  text-align: left;
  color: var(--color-orange);
}
.tabs .tab-selector em {
  float: right;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 20px;
  pointer-events: none;
}
.tabs .tab-selector em::before,
.tabs .tab-selector em::after {
  content: '';
  width: 1px;
  height: 15px;
  border-radius: 9999px;
  background: var(--color-orange);
  transform-origin: 50% 100%;
}
.tabs .tab-selector em::before {
  transform: rotate(45deg);
}
.tabs .tab-selector em::after {
  transform: rotate(-45deg);
}
.tabs .tab-selector.open em {
  transform: rotate(180deg);
}
.tabs ul {
  margin: 0;
  display: flex;
  background: #F2F2F2;
}
@media screen and (max-width: 760px) {
  .tabs ul {
    flex-direction: column;
  }
}
.tabs li {
  margin-right: 0;
  display: inline-block;
}
.tabs .button {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 75px;
  text-decoration: none;
  background: transparent;
  color: var(--color-orange);
  border: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
@media screen and (max-width: 760px) {
  .tabs .button {
    text-align: left;
    justify-content: flex-start;
  }
}
.tabs .button.active {
  background: var(--color-blue);
  color: #FFFFFF;
}
.tabs:not(:has(+ .content-width .nav-letters)) {
  margin-bottom: 60px;
}
@media screen and (max-width: 760px) {
  .tabs ul {
    display: none;
  }
  .tabs ul li {
    display: block;
  }
  .tabs ul li:has(.active) {
    display: none;
  }
  .tabs .tab-selector {
    display: block;
  }
  .tabs .tab-selector.open + ul {
    display: block;
  }
}
.text-img {
  margin-bottom: 60px;
}
.text-img.reverse > .grid {
  flex-direction: row-reverse;
}
.list-icons {
  margin: 0;
  padding: 0;
  list-style-type: none;
  margin-bottom: 20px;
}
.list-icons li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 10px;
  font-size: 1.125rem;
}
.list-icons li a {
  text-decoration: none;
}
.list-icons li a:hover {
  text-decoration: underline;
}
.list-icons li::before {
  position: absolute;
  left: 0;
  top: 4px;
  font-size: 1rem;
}
.quickstart {
  position: relative;
  display: flex;
}
.quickstart picture {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  opacity: 0.1;
  background: var(--color-blue);
}
.quickstart picture img {
  width: 100%;
  height: 100% !important;
  object-fit: cover;
  display: block;
}
@media screen and (max-width: 760px) {
  .quickstart picture img {
    height: 100vh;
  }
}
.quickstart::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, var(--color-blue) 54.75%, var(--color-green) 100%);
  z-index: 1;
}
.quickstart .inner {
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 3;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 80px 0 100px 0;
}
@media screen and (max-width: 760px) {
  .quickstart .inner {
    justify-content: flex-start;
    padding: 170px 0 100px 0;
  }
}
.quickstart .inner .progress {
  position: absolute;
  bottom: 80px;
  left: 50%;
  transform: translateX(-50%);
  width: 160px;
  height: 4px;
  background: rgba(255, 255, 255, 0.25);
}
.quickstart .inner .progress::before {
  content: '';
  background: #FFFFFF;
  height: 100%;
  display: block;
  width: var(--progress);
}
.quickstart .inner .content-width {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
@media screen and (max-width: 760px) {
  .quickstart .inner .content-width {
    align-items: flex-start;
  }
}
.quickstart .inner .content-width .quickstart-header {
  color: #FFFFFF;
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding-bottom: 40px;
  margin-bottom: 40px;
  position: relative;
}
@media screen and (max-width: 760px) {
  .quickstart .inner .content-width .quickstart-header {
    margin-bottom: 40px;
  }
}
.quickstart .inner .content-width .quickstart-header .btn-prev,
.quickstart .inner .content-width .quickstart-header .btn-next {
  z-index: 3;
}
@media screen and (max-width: 760px) {
  .quickstart .inner .content-width .quickstart-header .btn-prev,
  .quickstart .inner .content-width .quickstart-header .btn-next {
    position: absolute;
    top: -60px;
  }
}
.quickstart .inner .content-width .quickstart-header .btn-prev {
  padding-left: 5px;
}
.quickstart .inner .content-width .quickstart-header .btn-prev em {
  transform: scaleX(-1);
}
.quickstart .inner .content-width .quickstart-header .btn-next {
  flex-direction: row-reverse;
}
.quickstart .inner .content-width .quickstart-header::before {
  content: '';
  width: 80px;
  height: 1px;
  background: #FFFFFF;
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -40px;
}
.quickstart .inner .content-width .quickstart-header strong {
  font-size: 1.125rem;
  font-weight: 600;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.quickstart .inner .content-width .quickstart-content {
  text-align: center;
  width: 100%;
}
.quickstart .inner .content-width .quickstart-content h2 {
  color: #FFFFFF;
}
.quickstart .inner .content-width .quickstart-content .button {
  margin-bottom: 40px;
}
@media screen and (max-width: 760px) {
  .quickstart .inner .content-width .quickstart-content .button {
    margin-bottom: 20px;
  }
}
.quickstart .inner .content-width .quickstart-content .notice {
  color: #FFFFFF;
}
.quickstart .inner .content-width .quickstart-content .notice a {
  color: #FFFFFF;
  text-decoration: underline;
}
.quickstart .inner .content-width .quickstart-content .tabs {
  margin-bottom: 0;
}
.quickstart .inner .content-width .quickstart-content .tabs ul li button {
  margin-bottom: 0;
  position: relative;
}
.quickstart .inner .content-width .quickstart-content .tabs ul li button::after {
  content: '';
  width: 1px;
  height: 33px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background: #B3B3B3;
}
.quickstart .inner .content-width .quickstart-content .tabs ul li button.active {
  background: #FFFFFF;
  color: var(--color-orange);
}
.quickstart .inner .content-width .quickstart-content .tabs ul li button.active::after {
  display: none;
}
.quickstart .inner .content-width .quickstart-content .tabs ul li:last-child button::after {
  display: none;
}
.quickstart .inner .content-width .quickstart-content .tab-content {
  padding: 40px;
  background: #FFFFFF;
  text-align: left;
  position: absolute;
  left: 0;
  width: 100%;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.18);
  max-height: 45vh;
  overflow-y: auto;
}
.quickstart .inner .content-width .quickstart-content .tab-content .entry {
  padding-bottom: 25px;
  margin-bottom: 25px;
  border-bottom: 1px solid #DFDFDF;
}
.quickstart .inner .content-width .quickstart-content .tab-content .entry .btn {
  text-decoration: none;
  display: block;
}
.quickstart .inner .content-width .quickstart-content .tab-content .entry .btn:hover h3 {
  color: var(--color-orange);
}
.quickstart .inner .content-width .quickstart-content .tab-content .entry .btn:focus-visible {
  outline: 2px solid var(--color-blue);
}
.quickstart .inner .content-width .quickstart-content .tab-content .entry h3 {
  font-size: 1.5625rem;
  color: var(--color-blue);
}
.quickstart .inner .content-width .quickstart-content .tab-content .entry:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.row > .content-width .quickstart .inner {
  padding: 80px;
  position: relative;
}
@media screen and (max-width: 760px) {
  .row > .content-width .quickstart .inner {
    padding: 80px 30px;
  }
}
.row > .content-width .quickstart .inner .content-width {
  width: 100%;
}
.hero {
  overflow: hidden;
}
.hero .swiper-container {
  width: 100% !important;
  overflow: hidden;
}
.hero figure {
  position: relative;
}
.hero figure picture {
  width: 100%;
}
.hero figure picture img {
  display: block;
  width: 100%;
  height: 550px;
  object-fit: cover;
}
@media screen and (max-width: 760px) {
  .hero figure picture img {
    height: 250px !important;
    padding: 0 30px;
  }
}
@media screen and (min-width: 760px) {
  .hero figure figcaption {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }
}
.hero figure figcaption h1,
.hero figure figcaption h2,
.hero figure figcaption h3,
.hero figure figcaption h4,
.hero figure figcaption h5,
.hero figure figcaption h6,
.hero figure figcaption p {
  color: #FFFFFF;
}
.hero figure figcaption .content-width {
  height: 100%;
}
.hero figure figcaption .grid {
  justify-content: flex-end;
  height: 100%;
}
.hero figure figcaption .grid [class*="col-"] {
  margin-bottom: 0;
}
@media screen and (min-width: 760px) {
  .hero figure figcaption .grid .col-4-12 {
    width: calc(33.3333% + var(--grid-gutter));
  }
}
.hero figure figcaption .inner {
  background: rgb(from var(--color-orange) r g b / 0.9);
  padding: 80px 40px;
  height: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  flex-direction: column;
  color: #FFFFFF;
}
@media screen and (max-width: 760px) {
  .hero figure figcaption .inner {
    padding: 40px;
  }
}
.hero figure figcaption .inner h2 {
  margin-bottom: 40px;
}
.hero .swiper-pagination {
  bottom: -40px !important;
  color: #B3B3B3;
  font-size: 1.125rem;
}
.hero .swiper-pagination .swiper-pagination-current {
  color: var(--color-orange);
  font-size: 1.5rem;
}
.hero .swiper-slide {
  aspect-ratio: 2 / 0.9;
}
.hero .swiper-button-next,
.hero .swiper-button-prev {
  width: 40px;
  height: 15px;
  top: initial;
  bottom: -35px;
  z-index: 11;
}
.hero .swiper-button-next::before,
.hero .swiper-button-prev::before,
.hero .swiper-button-next::after,
.hero .swiper-button-prev::after {
  content: '';
  display: block;
  position: absolute;
}
.hero .swiper-button-next::before,
.hero .swiper-button-prev::before {
  width: 40px;
  height: 1px;
  top: 50%;
  right: 0;
  background: #B3B3B3;
  transition: width 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hero .swiper-button-next::after,
.hero .swiper-button-prev::after {
  width: 11px;
  height: 11px;
  border-right: 1px solid #B3B3B3;
  border-top: 1px solid #B3B3B3;
  right: 0;
  top: 50%;
  margin-top: -5px;
  transform: rotate(45deg);
}
.hero .swiper-button-next {
  right: calc(50% - 75px);
}
.hero .swiper-button-prev {
  transform: rotate(180deg);
  left: calc(50% - 75px);
}
.quickstart-wrap + .row:has(> .content-width .hero) {
  position: relative;
  z-index: 2;
  margin-top: -140px;
}
.quickstart-wrap + .row:has(> .hero) {
  margin-top: 0;
}
.row > .hero {
  overflow: initial;
  position: relative;
}
.row > .hero .swiper-slide {
  aspect-ratio: initial;
}
@media screen and (min-width: 760px) {
  .row > .hero figure figcaption .grid .col-4-12 {
    width: calc(33.3333% + var(--grid-gutter) + ((100vw - 1280px) / 2));
    margin-right: calc(-1 * (100vw - 1280px) / 2);
  }
  .row > .hero figure figcaption .grid .col-4-12 .inner {
    padding-right: 110px;
    background: var(--color-orange);
  }
}
.row > .hero figure img {
  height: 650px;
}
@media screen and (max-width: 760px) {
  .row > .content-width .hero .swiper-slide {
    aspect-ratio: initial;
  }
  .row > .content-width .hero figure picture img {
    padding: 0;
  }
}
.overlay {
  position: fixed;
  z-index: 9999;
  left: 100%;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: left 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media screen and (max-width: 760px) {
  .overlay {
    align-items: flex-start;
  }
}
.overlay .buttons {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  position: fixed;
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
  left: 0;
  bottom: 0;
  width: 100%;
}
@media screen and (min-width: 760px) {
  .overlay .buttons {
    width: auto;
    left: initial;
    bottom: initial;
    right: 0;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    transform-origin: top right;
  }
}
.overlay .buttons li {
  margin-right: 1px;
}
@media screen and (max-width: 760px) {
  .overlay .buttons li {
    flex: 1;
  }
  .overlay .buttons li .button {
    width: 100%;
    right: initial !important;
  }
}
.overlay .buttons li:last-child {
  margin-right: 0;
}
.overlay #contactClose {
  position: absolute;
  left: 100%;
  top: 0;
  transform: rotate(90deg);
  transform-origin: 0 0;
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
  width: 100vh;
  justify-content: flex-start;
  z-index: 3;
}
.overlay #contactClose span {
  text-align: left;
}
.overlay::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.95);
  z-index: -1;
  pointer-events: none;
  opacity: 0;
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.overlay.open {
  left: 0;
}
.overlay.open::before {
  opacity: 1;
}
.overlay.open #contactOpen {
  right: -50px;
}
.overlay.open .overlay-content {
  display: block;
}
.overlay .overlay-content {
  width: 100%;
  background: #FFFFFF;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.18);
  overflow: hidden;
  position: relative;
  max-height: 66.666666vh;
  display: none;
}
.overlay .overlay-content .inner {
  padding: 120px 0 60px 0;
  max-height: 66.666666vh;
  overflow-y: auto;
}
.overlay .overlay-content .inner .formie-button-container {
  width: 100%;
}
@media screen and (max-width: 760px) {
  .overlay .overlay-content {
    max-height: calc(100vh - 36px);
    overflow-y: auto;
  }
  .overlay .overlay-content .tab-content-wrapper {
    padding: 0;
  }
  .overlay .overlay-content .inner {
    max-height: none;
    overflow-y: initial;
    padding: 30px;
  }
  .overlay .overlay-content #contactClose {
    width: 50px;
    background: none;
    border: none;
  }
  .overlay .overlay-content #contactClose span {
    display: none;
  }
  .overlay .overlay-content .tab-content {
    padding: 30px;
  }
}
.overlay .tabs {
  position: relative;
  margin-bottom: 0 !important;
}
.overlay .tabs::before {
  content: '';
  background: #F2F2F2;
  position: absolute;
  right: -100vw;
  top: 0;
  height: 100%;
  width: 200vw;
}
.overlay .tab-content {
  background: var(--color-blue);
  color: #FFFFFF;
  position: relative;
  height: 100%;
}
.overlay .tab-content article {
  padding: 80px 40px 40px 0;
  max-height: calc(66.666666vh - 75px);
  overflow: auto;
  border-top: 0;
  position: relative;
  z-index: 2;
}
.overlay .tab-content article *,
.overlay .tab-content article h3 {
  color: #fff;
}
@media screen and (max-width: 760px) {
  .overlay .tab-content article {
    overflow: visible;
    max-height: none;
  }
}
.overlay .tab-content::before {
  content: '';
  background: var(--color-blue);
  position: absolute;
  right: calc(100% - 2px);
  top: 0;
  height: 100%;
  width: 100vw;
}
.social-icons {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.social-icons li {
  display: inline-block;
  margin-right: 20px;
}
.social-icons li:last-child {
  margin-right: 0;
}
.social-icons li a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  width: 40px;
  height: 40px;
  color: #FFFFFF;
  background: var(--color-blue);
  transition: background 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.social-icons li a::before {
  font-size: 1.25rem;
}
.social-icons li a:hover {
  background: var(--color-orange);
}
.nav-letters {
  margin: 0;
  padding: 0;
  list-style-type: none;
  padding: 0 18px;
  display: flex;
  justify-content: space-between;
  margin-bottom: 60px;
}
.nav-letters li button {
  background: none;
  border: none;
  margin: 0;
  color: var(--color-blue);
  font-family: 'Mosk', Arial, Helvetica, sans-serif;
  font-weight: 600;
  font-size: 1rem;
  padding: 20px 0;
}
.nav-letters li button[disabled] {
  color: #B3B3B3;
}
.nav-letters li button.active,
.nav-letters li button:hover {
  color: var(--color-orange);
}
.nav-letters + .letterselect-mobile {
  display: none;
}
@media screen and (max-width: 760px) {
  .nav-letters + .letterselect-mobile {
    display: block;
    margin: 20px 0 40px 0;
  }
}
@media screen and (max-width: 760px) {
  .nav-letters:has(+ .letterselect-mobile) {
    display: none;
  }
}
article {
  border-top: 1px solid #DFDFDF;
}
article h3 {
  color: var(--color-blue);
}
article h3 a {
  color: var(--color-blue);
  text-decoration: none;
}
article h3 a:hover {
  text-decoration: underline;
}
article .inner {
  padding: 30px;
}
article .inner small {
  color: var(--color-green);
  margin-bottom: 20px;
  display: block;
  font-size: 1.125rem;
}
article img {
  width: 100%;
  height: auto;
}
article.news-entry h3 {
  font-size: 1.25rem;
}
article.news-entry .inner {
  padding: 30px 0;
}
@media screen and (max-width: 760px) {
  article.news-entry .col-9-12 {
    order: 2;
  }
  article.news-entry .col-3-12 {
    order: 1;
    margin-bottom: 0 !important;
  }
}
@media screen and (max-width: 760px) {
  .funding .col-9-12 {
    order: 2;
  }
  .funding .col-3-12 {
    order: 1;
    margin-bottom: 0 !important;
  }
  .funding .inner {
    padding: 20px 0;
  }
}
@media screen and (max-width: 760px) {
  .funding .tags {
    flex-wrap: wrap;
    flex-direction: column;
    align-items: flex-start;
  }
  .funding .tags li {
    margin-bottom: 10px;
  }
  .funding .tags li:last-child {
    margin-bottom: 0;
  }
  .funding .tags li:not(.blue, .orange, .green) {
    padding: 15px 0;
  }
}
#public-delivery-index .funding .col-9-12 {
  display: flex;
}
#public-delivery-index .funding .col-9-12 > small {
  flex: 0 0 auto;
  width: 80px;
  color: #B3B3B3;
  font-size: 16px;
  display: block;
  margin-top: 30px;
}
#public-delivery-index .funding:not(:has(p)) h3 {
  margin-bottom: 0;
}
#public-delivery-index .funding:not(:has(p)) .inner {
  padding: 20px;
}
#public-delivery-index .funding:not(:has(p)) small {
  margin-top: 24px !important;
}
#public-delivery-index .card:not(:has(p)) h3 {
  margin-bottom: 0;
}
#public-delivery-index .card:not(:has(p)) .inner {
  padding: 20px;
}
#public-delivery-index .card:not(:has(p)) small {
  margin-bottom: 5px;
}
#public-delivery-index .grid .col-4-12:not(:has(p)) {
  margin-bottom: 40px;
}
.tags {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
}
@media screen and (max-width: 760px) {
  .tags {
    flex-wrap: wrap;
  }
}
.tags li {
  padding: 15px 18px;
  color: #B3B3B3;
  margin-right: 15px;
  font-weight: bold;
}
.tags li:last-child {
  margin-right: 0;
}
.tags li.blue {
  background: var(--color-blue);
  color: #FFFFFF;
}
.tags li.orange {
  background: var(--color-orange);
  color: #FFFFFF;
}
.tags li.green {
  background: var(--color-green);
  color: #FFFFFF;
}
.filters {
  margin-bottom: 65px;
}
.filters > strong {
  display: block;
  margin-bottom: 40px;
}
.filters ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.filters ul li {
  display: inline-block;
  margin: 0 15px 15px 0;
}
.filters ul li:last-child {
  margin-right: 0;
}
.filters ul li button {
  border: 1px solid #DFDFDF;
  background: none;
  height: 32px;
  padding: 0 10px;
  font-weight: 600;
  color: var(--color-blue);
  transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1), background 400ms cubic-bezier(0.22, 1, 0.36, 1), border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.filters ul li button:hover,
.filters ul li button.active {
  color: var(--color-orange);
  background: #F2F2F2;
  border-color: #F2F2F2;
}
.info {
  padding: 15px 0;
  position: relative;
  margin-bottom: 60px;
}
.info.grey {
  background: #F2F2F2;
}
.info.grey::before {
  content: '';
  height: 100%;
  position: absolute;
  right: 100%;
  top: 0;
  background: #F2F2F2;
  width: 50vw;
}
.info .tags {
  display: inline-flex;
  margin-right: 20px;
}
.info .tags + span {
  color: #B3B3B3;
}
@media screen and (max-width: 760px) {
  .info .tags + span {
    display: inline-block;
    margin-top: 20px;
  }
}
.info small,
.info strong {
  display: block;
}
.info strong {
  margin-bottom: 15px;
  font-size: 1.125rem;
}
.info small {
  font-size: 0.875rem;
}
.info .button.only-icon {
  overflow: visible;
  background: #F2F2F2;
  border-color: #F2F2F2;
  width: 49px;
  height: 49px;
  float: right;
}
@media screen and (max-width: 760px) {
  .info .button.only-icon {
    float: none;
    margin-right: 20px;
  }
}
.info .button.only-icon svg path {
  fill: var(--color-blue);
}
.info .button.only-icon:hover {
  background: var(--color-blue);
  border-color: var(--color-blue);
}
.info .button.only-icon:hover svg path {
  fill: #FFFFFF;
}
.meta-links {
  margin: 0;
  padding: 0;
  list-style-type: none;
  position: absolute;
  right: 0;
  top: 10px;
  display: flex;
}
.meta-links button em,
.meta-links a em {
  color: #B3B3B3;
}
.meta-links button:hover em,
.meta-links a:hover em {
  color: var(--color-blue);
}
.meta-links #share-list-close em {
  color: var(--color-blue);
}
.meta-links .share-list {
  position: relative;
}
.meta-links .share-list ul {
  position: absolute;
  right: 0;
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  align-items: center;
  background: #FFFFFF;
  max-width: 0;
  overflow: hidden;
  transition: max-width 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.meta-links .share-list ul li {
  white-space: nowrap;
}
.meta-links .share-list ul li.label {
  font-size: 14px;
  text-transform: uppercase;
  color: #B3B3B3;
}
.meta-links .share-list.open ul {
  max-width: 350px;
}
@media screen and (max-width: 760px) {
  .meta-links {
    display: none;
  }
}
.img-cta {
  display: flex;
  background: var(--color-blue);
  color: #FFFFFF;
}
@media screen and (max-width: 760px) {
  .img-cta {
    flex-direction: column;
  }
}
@media screen and (min-width: 760px) {
  .img-cta > .img {
    width: 40%;
  }
}
.img-cta .img {
  position: relative;
}
@media screen and (min-width: 760px) {
  .img-cta .img picture {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
  }
}
.img-cta .img img {
  height: 100%;
  object-fit: cover;
}
.img-cta .inner {
  width: 100%;
  padding: 40px;
}
@media screen and (min-width: 760px) {
  .img-cta .inner {
    width: calc(1280px * 0.5);
    padding: 80px 0 80px 40px;
  }
}
.img-cta .inner .list-icons {
  color: #FFFFFF;
}
.img-cta .inner .list-icons li a {
  color: #FFFFFF;
}
.img-cta .inner .list-icons li a:focus-visible {
  outline: 2px solid #FFFFFF;
}
.img-cta .form-item + .partners-list,
.img-cta .form-item + #partners-list {
  margin-top: 40px;
}
.list-downloads {
  margin: 0;
  padding: 0;
  list-style-type: none;
  margin-bottom: 20px;
}
.list-downloads + h3 {
  margin-top: 40px;
}
.list-downloads .button span {
  color: var(--color-blue);
  text-align: left;
  padding-right: 40px;
}
@media screen and (max-width: 760px) {
  .list-downloads .button span {
    padding-right: 0;
  }
}
.list-downloads .button span,
.list-downloads .button small {
  transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
  text-transform: none;
}
.list-downloads li {
  display: flex;
  margin-bottom: 15px;
}
@media screen and (max-width: 760px) {
  .list-downloads li {
    flex-direction: column;
  }
}
.list-downloads li .primary {
  flex: 1;
  align-items: flex-start;
}
.list-downloads li .primary em {
  position: relative;
  top: 1px;
}
.list-downloads li small {
  color: #B3B3B3;
  font-size: 1rem;
}
@media screen and (max-width: 760px) {
  .list-downloads li small {
    margin: 10px 0 0 55px;
  }
}
.list-downloads li:hover span,
.list-downloads li:hover small {
  color: var(--color-orange);
}
.list-downloads li:hover em::before {
  background: var(--color-orange);
}
.list-downloads li:hover em::after {
  border-right: 1px solid var(--color-orange);
  border-top: 1px solid var(--color-orange);
}
.btn-download-all {
  text-decoration: none;
  color: var(--color-blue);
  font-size: 1.5rem;
  margin-top: 40px;
  display: flex;
}
.btn-download-all span {
  flex: 1;
}
.btn-download-all small {
  color: #B3B3B3;
  font-size: 1rem;
}
.btn-download-all span,
.btn-download-all small {
  transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.btn-download-all:hover span,
.btn-download-all:hover small {
  color: var(--color-orange);
}
.video {
  position: relative;
}
.video button {
  border-radius: 0;
  background: none;
  border: none;
  position: absolute;
  z-index: 3;
  width: 100%;
  height: 100%;
}
.video button figure {
  height: 100%;
}
.video button figure img {
  height: 100%;
  object-fit: cover;
}
.video button::before {
  font-size: 5rem;
  position: absolute;
  display: block;
  left: 50%;
  top: 50%;
  z-index: 2;
  transform: translate(-50%, -50%);
  color: var(--color-orange);
  transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.video button:hover::before {
  color: var(--color-blue);
}
.video .embed-container {
  position: relative;
  padding-bottom: 56.25%;
  /* ratio 16x9 */
  height: 0;
  overflow: hidden;
  width: 100%;
  height: auto;
  z-index: 1;
}
.video .embed-container iframe,
.video .embed-container video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.video + p {
  margin-top: 40px;
}
.box-teaser-modal .inner {
  padding: 40px;
}
.box-teaser-modal .img {
  height: 100%;
}
.box-teaser-modal .img img {
  height: 100%;
  object-fit: cover;
}
.flipbook {
  height: 1000px;
  position: relative;
  overflow: hidden;
  background-color: #ffffff;
  min-height: 300px;
  min-width: 300px;
  margin-top: 40px;
}
.avatar {
  margin-bottom: 20px;
}
.avatar figure {
  display: flex;
}
.avatar figure picture {
  flex: 0 0 auto;
  width: 70px;
}
.avatar figure picture img {
  width: 100%;
  height: auto;
}
.avatar figure figcaption {
  padding-left: 20px;
}
.list-partners {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.list-partners li {
  display: flex;
  align-items: center;
  font-size: 0.875rem;
}
.list-partners li img {
  margin-right: 20px;
  display: block;
}
.list-partners li > p {
  font-size: 0.875rem;
  margin: 0;
  line-height: 100%;
}
.list-partners li abbr {
  border-bottom: 1px dotted;
  cursor: help;
}
.list-partners li a {
  color: var(--color-blue);
  text-decoration: none;
  display: flex;
  align-items: center;
}
.list-partners li a:hover {
  text-decoration: underline;
}
.list-partners.white {
  padding: 25px 30px;
  background: #FFFFFF;
}
#map .mapborder {
  stroke: #FFFFFF;
  stroke-opacity: 1;
  stroke-width: 1px;
  position: relative;
  z-index: 1;
  fill: #FFFFFF;
  fill-opacity: 0.25;
}
#map .mappart {
  fill: none;
  fill-opacity: 0.25;
  stroke: rgba(0, 0, 0, 0.05);
  stroke-width: 1px;
  pointer-events: none;
  position: relative;
  z-index: 2;
}
#map .maparea {
  cursor: pointer;
  fill: rgba(0, 137, 193, 0);
  stroke: #FFFFFF;
  stroke-opacity: 1;
  stroke-width: 1px;
  transition: fill 400ms cubic-bezier(0.22, 1, 0.36, 1), stroke 400ms cubic-bezier(0.22, 1, 0.36, 1), stroke-width 400ms cubic-bezier(0.22, 1, 0.36, 1);
  position: relative;
  z-index: 5;
}
#map .maparea:focus-visible {
  outline: none;
  fill: rgba(255, 255, 255, 0.25);
}
#map .maparea:hover {
  fill: rgba(0, 137, 193, 0.25);
  stroke: var(--color-blue);
  stroke-width: 2px;
}
#map text {
  stroke-width: 0;
  stroke-opacity: 1;
  font-size: 0.625rem;
  text-anchor: middle;
  fill: #FFFFFF;
  pointer-events: none;
}
#map .pin {
  cursor: pointer;
  transform: translate(-3px, -12px);
}
#map .pin polygon {
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.5);
}
#map .pin text {
  font-size: 0.75rem;
  fill: #222222;
  font-weight: 500;
}
.map-grid {
  margin-top: 40px !important;
}
.map-back {
  transform: rotate(180deg);
  margin-bottom: 30px;
  padding-right: 10px !important;
}
.button.map-btn {
  border-left: 10px solid var(--border, var(--color-green));
}
.button.map-btn:hover {
  text-decoration: none !important;
}
.button.btn-category {
  width: 100%;
  text-align: left;
  padding: 25px 0;
  border-bottom: 1px solid var(--color-blue);
}
.button.btn-category i {
  flex: 0 0 auto;
  width: 10px;
  height: 10px;
  background: var(--catColor, var(--color-blue));
  margin-right: 15px;
}
.button.btn-category + .button.btn-category {
  margin-left: 0;
}
.col-5-12.has-bg {
  position: relative;
}
.col-5-12.has-bg::before {
  content: '';
  position: absolute;
  left: -20px;
  top: -60px;
  width: 50vw;
  height: 100vh;
  background: rgba(255, 255, 255, 0.1);
  pointer-events: none;
}
@media screen and (max-width: 760px) {
  .col-5-12.has-bg::before {
    width: 100vw;
    left: 0;
  }
}
@media screen and (min-width: 760px) {
  .row.map {
    height: 710px;
  }
}
.row.map .grid {
  align-items: flex-start;
}
.row.map .inner {
  padding: 5px 20px 5px 5px;
}
@media screen and (min-width: 760px) {
  .row.map .inner {
    overflow-y: auto;
    height: 590px;
  }
}
.teaser-img {
  height: 520px;
  overflow: hidden;
}
.teaser-img figure {
  height: 100%;
  position: relative;
}
.teaser-img figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.teaser-img figure figcaption {
  position: absolute;
  right: calc((100vw - 1280px) / 2);
  bottom: 0;
  padding: 40px;
  background: rgb(from var(--color-orange) r g b / 0.9);
  color: #FFFFFF;
  width: calc(1280px / 2);
}
@media screen and (max-width: 760px) {
  .teaser-img figure figcaption {
    right: 0;
    width: calc(100% - 40px);
    padding: 20px;
  }
}
.teaser-img figure figcaption p {
  margin-bottom: 0;
  line-height: 130%;
}
.teaser-img figure figcaption .buttons {
  margin-top: 20px;
}
.teaser-img figure figcaption h1,
.teaser-img figure figcaption h2,
.teaser-img figure figcaption h3,
.teaser-img figure figcaption h4,
.teaser-img figure figcaption h5,
.teaser-img figure figcaption h6 {
  color: #FFFFFF;
  margin: 0;
}
@media screen and (max-width: 760px) {
  .teaser-img figure figcaption h1 {
    font-size: 1.625rem;
  }
}
.teaser-img figure figcaption.orange {
  background: rgb(from var(--color-orange) r g b / 0.9);
}
.teaser-img figure figcaption.green {
  background: rgb(from var(--color-green) r g b / 0.9);
}
.teaser-img figure figcaption.blue {
  background: rgb(from var(--color-blue) r g b / 0.9);
}
.teaser-img figure figcaption .ico {
  display: block;
  float: right;
  width: 50px;
  height: auto;
  margin: -20px -20px -20px 20px;
}
.box {
  padding: 40px 40px 40px 0;
  margin: 80px 0;
}
.box p {
  padding-left: 0;
}
.box.grey {
  background: #F2F2F2;
  position: relative;
}
.box.grey::before {
  content: '';
  height: 100%;
  position: absolute;
  right: 100%;
  top: 0;
  background: #F2F2F2;
  width: 50vw;
}
.box h2:has( + .progress) {
  margin-bottom: 40px;
}
.box h2 + .progress {
  margin-bottom: 40px;
}
.filter-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  margin-bottom: -40px;
}
@media screen and (max-width: 760px) {
  .filter-list {
    flex-direction: column;
  }
}
.filter-list li {
  position: relative;
}
.filter-list li .button {
  padding: 15px 25px;
  height: auto;
  text-decoration: none;
}
.filter-list li .button.active,
.filter-list li .button:hover {
  color: var(--color-orange);
}
@media screen and (min-width: 760px) {
  .filter-list li:not(:last-child)::before {
    content: "";
    width: 1px;
    height: 33px;
    background: #DFDFDF;
    position: absolute;
    display: block;
    right: 0;
    top: 10px;
    z-index: 1;
  }
}
.entry {
  padding: 40px 40px 0 40px;
}
.entry h2 {
  display: inline-block;
}
.entry h2 + em {
  display: inline-block;
  color: #B3B3B3;
  font-size: 1rem;
  font-style: normal;
  margin-left: 20px;
}
@media screen and (max-width: 760px) {
  .entry h2 + em {
    display: block;
    margin: -15px 0 20px 0;
  }
}
.entry p {
  font-size: 0.875rem;
  margin-bottom: 30px;
}
.entry.grey {
  background: #F2F2F2;
}
.entry.grey:has( + .entry:not(.grey)) {
  padding-bottom: 40px;
}
.tile {
  padding: 40px;
  height: 100%;
}
.tile:has(.tile-head) {
  padding: 0 0 40px 40px;
}
.tile.grey {
  background: #F2F2F2;
}
.tile.blue {
  background: var(--color-blue);
  color: #FFFFFF;
}
.tile.outline {
  border: 1px solid #B3B3B3;
}
.tile.highlight {
  padding: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background: linear-gradient(180deg, #52a946 0%, #199590 100%);
  color: #FFFFFF;
  font-size: 1.625rem;
  text-align: center;
}
.tile.highlight.blue {
  background: linear-gradient(180deg, #3fb49e 0%, #3199b9 100%);
}
.tile.highlight strong {
  font-size: 7.5rem;
  margin-bottom: 0;
}
.tile.highlight small {
  font-size: 1rem;
  margin-bottom: 30px;
}
.tile .tile-head {
  padding: 40px;
}
.tile .tile-head small {
  font-size: 0.875rem;
  display: flex;
  justify-content: space-between;
}
.tile .tile-head h3 {
  margin-bottom: 5px;
}
.tile .tile-head.blue {
  color: #FFFFFF;
  background: var(--color-blue);
}
.tile .tile-head.orange {
  color: #FFFFFF;
  background: var(--color-orange);
}
.tile .tile-head.green {
  color: #FFFFFF;
  background: var(--color-green);
}
.tile .tile-head.line {
  border-bottom: 1px solid #DFDFDF;
  padding: 40px 40px 40px 0;
}
.tile .tile-head.line small {
  color: var(--color-blue);
}
.tile .tile-content {
  padding: 40px 40px 0 0;
}
.tile .tile-content .legend {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  margin-top: 20px;
  flex-wrap: wrap;
}
.tile .tile-content .legend li {
  display: flex;
  align-items: center;
  cursor: pointer;
  margin: 0 10px 10px 0;
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.tile .tile-content .legend li.disabled {
  opacity: 0.5;
}
.tile .tile-content .legend li p {
  margin: 0;
  color: #222222;
}
.tile .tile-content .legend li span {
  display: block;
  width: 20px;
  height: 20px;
  margin-right: 10px;
}
.tile .tile-content p {
  font-size: 1.125rem;
}
.tile .tile-content canvas {
  height: 300px;
  width: 100%;
}
.tile .tile-content table {
  width: 100%;
  border-collapse: collapse;
}
.tile .tile-content table.sr-only {
  width: auto;
}
.tile .tile-content table tr td {
  font-size: 1.125rem;
  padding: 15px 0;
  border-bottom: 1px solid #DFDFDF;
}
.tile .tile-content table tr td.bold {
  font-weight: bold;
  font-size: 1.5rem;
}
.tile .tile-content table tr td.right {
  text-align: right;
}
.tile .tile-content table tr:first-child td {
  padding-top: 0;
}
.tile.motivation {
  padding: 30px;
  position: relative;
}
.tile.motivation:has(.details.open) {
  z-index: 10;
}
.tile.motivation:has(h2 button:focus) {
  outline: 2px solid var(--color-blue);
  outline-offset: 3px;
}
.tile.motivation.blue h2 button {
  font-size: inherit;
  text-align: inherit;
  color: inherit;
  background: transparent;
  border: none;
  display: inherit;
  cursor: pointer;
}
.tile.motivation.blue h2 button::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
.tile.motivation.blue .buttons {
  float: right;
  margin-bottom: 50px;
}
.tile.motivation.blue .buttons span {
  display: block;
}
.tile.motivation.blue .buttons span + span {
  margin-top: 15px;
}
.tile.motivation.blue .buttons svg {
  width: 40px;
  height: 40px;
  display: block;
}
.tile.motivation.blue .buttons svg .svg-secondary-color {
  fill: var(--color-blue);
}
.tile.motivation.blue .buttons svg .svg-primary-color {
  fill: #FFFFFF;
}
.tile.motivation.blue .categories {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  height: 4px;
  position: absolute;
  bottom: 30px;
  left: 30px;
  right: 0;
}
.tile.motivation.blue .categories li {
  height: 100%;
  flex: 1;
}
.tile.motivation.blue .details {
  background: #CCE7F3;
  padding: 30px 100px 30px 30px;
  margin: 0 -30px -30px 0;
  position: relative;
  z-index: 3;
  color: #222222;
  display: none;
}
.tile.motivation.blue .details .btn-close {
  background: transparent;
  border: none;
  position: absolute;
  right: 30px;
  top: 30px;
}
.tile.motivation.blue .details .btn-close em {
  color: var(--color-blue);
  font-size: 1.5rem;
}
.tile.motivation.blue .details.open {
  display: block;
  z-index: 10;
}
.tile.motivation.blue .details .button + .button {
  margin-top: 20px;
  margin-left: 0;
}
@media screen and (min-width: 760px) {
  .tile.motivation.blue:has(.details.open) {
    width: calc(200% + var(--grid-gutter));
  }
}
.motivation-grid [class*="col-"]:nth-child(even):has(.details.open) {
  margin-left: -50%;
}
.progress {
  background: #DFDFDF;
  height: 5px;
  position: relative;
}
.progress::before {
  content: '';
  height: 100%;
  width: var(--progress, 0);
  background: var(--color-orange);
  display: block;
}
.hint {
  color: #FFFFFF;
  border-radius: 50%;
  display: inline-block;
  width: 20px;
  height: 20px;
  font-style: normal;
  background: #B3B3B3;
  text-align: center;
  font-size: 1rem;
  line-height: 20px;
  font-weight: bold;
  vertical-align: middle;
  cursor: pointer;
  border: none;
}
.hint:hover {
  background: var(--color-orange);
}
h1 .hint,
h2 .hint,
h3 .hint,
h4 .hint,
h5 .hint,
h6 .hint {
  margin-left: 10px;
}
.status {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 53px;
  width: 110px;
  color: #FFFFFF;
  margin-bottom: 20px;
  float: right;
}
.status.alert {
  background: var(--color-red);
}
.status.success {
  background: var(--color-green);
}
.chips {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.chips li {
  margin: 0 20px 20px 0;
}
.chips li input {
  position: absolute;
  opacity: 0;
  left: 0;
  top: 0;
  width: 0;
  height: 0;
}
.chips li label {
  background: #CCE7F3;
  border-left: 3px solid var(--border-color, var(--color-blue));
  padding: 10px 20px;
  color: var(--color-blue);
  cursor: pointer;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
  font-weight: bold;
  font-size: 1rem;
  position: relative;
  display: block;
}
.chips li:hover label,
.chips li:has(input:focus) label {
  background: var(--color-blue);
  color: #FFFFFF;
}
.chips li:has(input:focus) label {
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(0, 137, 193, 0.5);
}
.chips li:has(input:checked) label {
  background: var(--border-color, var(--color-blue));
  color: #FFFFFF;
}
.category-select {
  margin: 0;
  padding: 0;
  list-style-type: none;
  margin-bottom: 40px;
}
.category-select li {
  margin: 0 20px 20px 0;
}
.category-select li label {
  color: var(--color-blue);
  cursor: pointer;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
  font-weight: bold;
  font-size: 1rem;
  position: relative;
  display: flex;
  align-items: center;
}
.category-select li label svg {
  width: 40px;
  height: 40px;
  margin-right: 10px;
  flex: 0 0 auto;
  transition: background 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.category-select li label svg .svg-secondary-color {
  fill: #FFFFFF;
}
.category-select li label svg .svg-primary-color {
  fill: var(--color-blue);
}
.category-select li input {
  position: absolute;
  opacity: 0;
  left: 0;
  top: 0;
  width: 0;
  height: 0;
}
.category-select li:hover label,
.category-select li:has(input:focus) label {
  color: var(--color-orange);
}
.category-select li:hover label svg .svg-primary-color,
.category-select li:has(input:focus) label svg .svg-primary-color {
  fill: var(--color-orange);
}
.category-select li:has(input:focus) label {
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(0, 137, 193, 0.5);
}
.category-select li:has(input:checked) label {
  color: #CCE7F3;
}
.list-events {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.list-events dt,
.list-events dd {
  flex: 0 0 auto;
  margin-bottom: 40px;
  font-size: 1.125rem;
}
.list-events dt {
  color: #C9D30E;
  width: 40%;
  padding-right: 30px;
}
.list-events dd {
  width: 60%;
}
.list-events dd a {
  text-decoration: none;
  color: #FFFFFF;
}
.list-events dd a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 760px) {
  .list-events {
    flex-direction: column;
  }
  .list-events dd,
  .list-events dt {
    width: 100%;
    padding: 0;
  }
  .list-events dt {
    margin-bottom: 10px;
  }
}
.event-wrap {
  flex: 1;
  width: 100%;
}
/* -- Audioplayer -- */
.audio-wrap {
  width: 100%;
  margin: 0 auto;
  background: var(--color-blue);
}
.audio-wrap .caption-text {
  position: absolute;
  top: 100%;
  left: 0;
  text-align: center;
  width: 100%;
  margin-top: 20px;
}
.audio-wrap figcaption {
  margin-left: 30px;
  background: #C9D30E;
  color: #fff;
  padding: 20px;
}
.audioplayer {
  display: flex;
  flex-direction: row;
  margin: 0 auto;
  width: 100%;
  height: 100px;
  align-items: center;
  background: var(--color-blue);
  position: relative;
  padding: 0 30px;
}
.audioplayer button {
  border: none;
  background: none;
}
.audioplayer button:focus-visible {
  outline: 2px solid #FFFFFF;
  outline-offset: 3px;
}
.audioplayer:not(.audioplayer-playing) .audioplayer-playpause {
  color: #fff;
}
.audioplayer:not(.audioplayer-playing) .audioplayer-playpause a,
.audioplayer:not(.audioplayer-playing) .audioplayer-playpause button {
  text-decoration: none;
  display: block;
  text-align: center;
  width: 60px;
  height: 60px;
  color: #C9D30E;
}
.audioplayer:not(.audioplayer-playing) .audioplayer-playpause a:hover,
.audioplayer:not(.audioplayer-playing) .audioplayer-playpause button:hover {
  color: #fff;
}
.audioplayer:not(.audioplayer-mute) .audioplayer-volume-button a:after,
.audioplayer:not(.audioplayer-mute) .audioplayer-volume-button button:after {
  left: 10px;
  top: -2px;
  width: 6px;
  height: 6px;
  border: 6px double #9A9FB0;
  border-width: 6px 6px 0 0;
  border-radius: 0 12px 0 0;
  transform: rotate(45deg);
}
.audioplayer-playpause {
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 64px;
  width: 60px;
  height: 60px;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  font-size: 2.5rem;
}
.audioplayer-playpause .audioplayer-playpause {
  color: #fff;
}
.audioplayer-playpause .audioplayer-playpause:hover {
  color: #C9D30E;
}
.audioplayer-playpause .audioplayer-playpause a,
.audioplayer-playpause .audioplayer-playpause button {
  text-decoration: none;
}
.audioplayer-playpause .audioplayer-playpause a::before,
.audioplayer-playpause .audioplayer-playpause button::before {
  content: "\e911";
  color: #fff;
  position: relative;
  top: 3px;
}
.audioplayer-playing .audioplayer-playpause {
  color: #fff;
}
.audioplayer-playing .audioplayer-playpause:hover {
  color: #C9D30E;
}
.audioplayer-playing .audioplayer-playpause a,
.audioplayer-playing .audioplayer-playpause button {
  text-decoration: none;
}
.audioplayer-playing .audioplayer-playpause a::before,
.audioplayer-playing .audioplayer-playpause button::before {
  content: "\e919";
  color: #fff;
  position: relative;
  top: 3px;
}
.audioplayer-time {
  display: flex;
  width: 40px;
  justify-content: center;
  font-size: 1rem;
  color: #fff;
  position: relative;
  top: 0;
  white-space: nowrap;
}
.audioplayer-time-current {
  position: absolute;
  right: 195px;
  top: 40px;
}
.audioplayer-time-current::after {
  content: "/";
  margin-left: 5px;
  display: inline-block;
}
.audioplayer-time-duration {
  margin-right: 24px;
}
.audioplayer-bar {
  position: relative;
  display: flex;
  margin: 0 70px 0 0;
  height: 12px;
  flex-basis: 0;
  flex-grow: 1;
  cursor: pointer;
}
.audioplayer-bar::before {
  content: "";
  position: absolute;
  top: 5px;
  width: 100%;
  height: 5px;
  background-color: rgba(255, 255, 255, 0.2);
}
.audioplayer-bar > div {
  position: absolute;
  left: 0;
  top: 5px;
}
.audioplayer-bar-loaded {
  z-index: 1;
  height: 5px;
}
.audioplayer-bar-played {
  flex-direction: row-reverse;
  z-index: 2;
  height: 5px;
  background: #C9D30E;
}
.audioplayer-bar-played::after {
  display: flex;
  position: absolute;
  content: "";
  top: -5px;
  right: -6px;
  margin-right: -5px;
  width: 12px;
  height: 12px;
}
.audioplayer-volume {
  display: flex;
  align-items: center;
}
.audioplayer-volume-button {
  display: flex;
  align-items: center;
  width: 24px;
  height: 24px;
  cursor: pointer;
}
.audioplayer-volume-button a,
.audioplayer-volume-button button {
  display: flex;
  width: 24px;
  height: 24px;
  position: relative;
  text-decoration: none;
  font-size: 1.25rem;
  color: #fff;
}
.audioplayer-volume-button a::before,
.audioplayer-volume-button button::before {
  content: "\e91a";
}
.audioplayer-volume-button a.icon-muted,
.audioplayer-volume-button button.icon-muted {
  width: 10px;
}
.audioplayer-mute .audioplayer-volume-button a:before {
  content: "\e91b";
}
.audioplayer-volume-adjust {
  display: flex;
  align-items: center;
  margin-left: 8px;
}
.audioplayer-volume-adjust > div {
  position: relative;
  display: flex;
  width: 60px;
  height: 5px;
  cursor: pointer;
  background-color: rgba(255, 255, 255, 0.2);
}
.audioplayer-volume-adjust div div {
  position: absolute;
  top: 0;
  left: 0;
  height: 5px;
  background-color: #C9D30E;
}
@media screen and (max-width: 760px) {
  .audioplayer {
    flex-wrap: wrap;
  }
  .audioplayer .audioplayer-volume-adjust {
    display: none;
  }
  .audioplayer .audioplayer-time {
    width: auto;
  }
  .audioplayer .audioplayer-time-current {
    order: 4;
    position: initial;
    right: initial;
    top: initial;
  }
  .audioplayer .audioplayer-time-duration {
    order: 5;
  }
  .audioplayer .audioplayer-volume {
    order: 3;
    flex: 0 0 auto;
    width: 60px;
  }
  .audioplayer .audioplayer-volume .audioplayer-volume-button {
    width: 60px;
    justify-content: flex-end;
  }
  .audioplayer .audioplayer-playpause {
    order: 1;
  }
  .audioplayer .audioplayer-bar {
    order: 2;
    flex: 0 0 auto;
    width: calc(100% - 140px);
    margin: 0 0 0 20px;
  }
}
.nav-skip-wrap {
  position: relative;
}
.nav-skip-wrap .nav-skip {
  position: absolute;
  top: -500px;
  left: 20px;
  padding: 1rem;
  z-index: 10000;
  display: flex;
  flex-direction: column;
}
.nav-skip-wrap .nav-skip .button {
  margin-left: 0;
  margin-bottom: 10px;
}
.nav-skip-wrap .nav-skip .button:focus-visible {
  outline: 2px solid var(--color-orange);
}
.nav-skip-wrap .nav-skip:focus-within {
  top: 0;
}
.toc {
  padding: 40px;
  background: var(--color-blue);
  color: #FFFFFF;
}
.toc h2 {
  margin-bottom: 40px;
  font-size: 2.375rem;
}
.toc ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.toc ul li {
  margin-bottom: 30px;
}
.toc ul li:last-child {
  margin-bottom: 0;
}
.toc ul li a {
  color: #FFFFFF;
  text-decoration: none;
  font-weight: 600;
  text-transform: uppercase;
}
.toc ul li a:hover {
  text-decoration: underline;
}
@media print {
  body {
    color: #000;
    font-size: 14px;
    line-height: 16px;
    padding: 0.3cm 0.5cm 0.5cm 1cm;
    color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
  .button {
    font-size: 14px !important;
  }
  p,
  .btn-download-all,
  .card .inner ul li,
  .acc-container .acc-content ul li,
  .acc-container .acc-content ol li {
    font-size: 14px !important;
    line-height: 120% !important;
  }
  .acc-container .acc-headline button {
    padding: 10px 0 !important;
    font-size: 16px !important;
  }
  .acc-container .acc-headline em {
    transform: rotate(90deg) scale(0.7);
  }
  .card .inner ul li,
  .acc-container .acc-content ul li,
  .acc-container .acc-content ol li {
    margin-bottom: 5px !important;
  }
  .card .inner ul li > p,
  .acc-container .acc-content ul li > p,
  .acc-container .acc-content ol li > p {
    margin-bottom: 0 !important;
  }
  .card .inner > p,
  .acc-container .acc-content > p,
  .acc-container .acc-content > p {
    margin-bottom: 10px !important;
  }
  .info {
    padding: 10px 0;
    margin-bottom: 30px;
  }
  .card .inner {
    padding-top: 10px;
  }
  .tags li {
    padding: 10px;
  }
  .grid [class*="col-"].col-1-12 {
    width: 8.3333%;
  }
  .grid [class*="col-"].col-2-12 {
    width: 16.6667%;
  }
  .grid [class*="col-"].col-3-12 {
    width: 25%;
  }
  .grid [class*="col-"].col-4-12 {
    width: 33.3333%;
  }
  .grid [class*="col-"].col-5-12 {
    width: 41.6667%;
  }
  .grid [class*="col-"].col-6-12 {
    width: 50%;
  }
  .grid [class*="col-"].col-7-12 {
    width: 58.3333%;
  }
  .grid [class*="col-"].col-8-12 {
    width: 66.6667%;
  }
  .grid [class*="col-"].col-9-12 {
    width: 75%;
  }
  .grid [class*="col-"].col-10-12 {
    width: 83.3333%;
  }
  .grid [class*="col-"].col-11-12 {
    width: 91.6667%;
  }
  .grid [class*="col-"].col-12-12 {
    width: 100%;
  }
  header {
    background: transparent;
    position: relative;
  }
  header .logo {
    padding: 0;
    background: #FFFFFF;
    box-shadow: none;
    margin: 0;
  }
  header nav.main,
  header nav.meta {
    display: none !important;
  }
  main {
    padding-top: 30px !important;
  }
  h1 {
    font-size: 30px !important;
    margin-bottom: 30px !important;
  }
  h2 {
    font-size: 20px !important;
    margin-bottom: 25px !important;
  }
  h3 {
    font-size: 18px !important;
    margin-bottom: 15px !important;
  }
  h4 {
    font-size: 16px !important;
    margin-bottom: 10px !important;
  }
  .row {
    margin-bottom: 30px !important;
  }
  .quickstart-wrap,
  footer,
  .breadcrumb,
  .meta-links,
  .overlay,
  .content-img > figure,
  .content-img .image:not(figure),
  .row:has(.gallery-teaser),
  .row:has(.video),
  .row:has(.flipbook),
  .cookie-bar,
  .contact-select-module {
    display: none !important;
  }
  .acc-container .acc-content {
    display: block !important;
  }
  blockquote .img {
    width: 33.3333%;
  }
  .card figure.img.large-icon,
  .card figure.img.icon,
  .card figure.img.icon img {
    height: 100px;
  }
  .card figure.img.large-icon strong,
  .card figure.img.icon strong,
  .card figure.img.icon img strong {
    font-size: 80px;
    bottom: 50%;
    transform: translateX(-20px) translateY(-50%);
  }
  .card figure.img figcaption {
    left: 0 !important;
    padding: 5px 10px !important;
  }
  .card figure.img figcaption h3 {
    margin: 0 !important;
    font-size: 16px !important;
  }
}

/*# sourceMappingURL=style.css.map */