@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%;
  font-smooth: always;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
}
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;
  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 {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: bold;
  line-height: 120%;
  color: var(--text-color);
}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  text-decoration: none;
  color: inherit;
}
h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
  color: var(--text-color);
}
h1,
.like-h1 {
  font-size: 30px;
  margin-bottom: 44px;
  color: var(--primary-color);
}
@media screen and (min-width: 760px) {
  h1,
  .like-h1 {
    font-size: 45px;
  }
}
h2 {
  font-size: 25px;
  margin-bottom: 24px;
}
@media screen and (min-width: 760px) {
  h2 {
    font-size: 35px;
  }
}
h3 {
  font-size: 20px;
  margin-bottom: 24px;
  color: var(--color-lightblue);
}
h4 {
  font-size: 20px;
  margin-bottom: 24px;
}
h5 {
  font-size: 16px;
  margin-bottom: 24px;
}
p {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 150%;
  color: var(--text-color);
  margin: 0 0 20px;
}
p a {
  text-decoration: none;
  color: var(--primary-color);
  border-bottom: 1px solid var(--secondary-color);
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
p a:hover {
  color: var(--text-color);
  border-color: var(--text-color);
}
p a.button.link {
  height: auto;
}
p a.button.link::before {
  bottom: 0;
}
p.hint {
  color: #B3B3B3;
}
ul li,
ol li {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 150%;
  color: var(--text-color);
}
hr {
  border: 0;
  border-bottom: 1px solid #DDD;
  margin: 40px 0;
}
.headline {
  text-align: center;
  margin-bottom: 50px;
}
.headline p strong {
  color: var(--color-lightblue);
  font-weight: bold;
}
.headline.left {
  text-align: left;
}
.headline.center {
  text-align: center;
}
@media screen and (min-width: 760px) {
  .headline.right {
    text-align: right;
  }
}
@font-face {
  font-family: "iconfont";
  font-weight: normal;
  font-style: normal;
  src: url('../font/iconfont/iconfont.eot?24714004');
  src: url('../font/iconfont/iconfont.eot?24714004#iefix') format('embedded-opentype'), url('../font/iconfont/iconfont.woff2?24714004') format('woff2'), url('../font/iconfont/iconfont.woff?24714004') format('woff'), url('../font/iconfont/iconfont.ttf?24714004') format('truetype'), url('../font/iconfont/iconfont.svg?24714004#icon-font') format('svg');
}
[class^="icon-"]::before,
[class*=" icon-"]::before {
  font-family: 'iconfont' !important;
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-address:before {
  content: '\e800';
}
/* '' */
.icon-arrow-link:before {
  content: '\e801';
}
/* '' */
.icon-arrow-search:before {
  content: '\e802';
}
/* '' */
.icon-arrow:before {
  content: '\e803';
}
/* '' */
.icon-avatar:before {
  content: '\e804';
}
/* '' */
.icon-calendar:before {
  content: '\e805';
}
/* '' */
.icon-check:before {
  content: '\e806';
}
/* '' */
.icon-close:before {
  content: '\e807';
}
/* '' */
.icon-download:before {
  content: '\e808';
}
/* '' */
.icon-eventpage:before {
  content: '\e809';
}
/* '' */
.icon-mail:before {
  content: '\e80a';
}
/* '' */
.icon-facebook:before {
  content: '\e80b';
}
/* '' */
.icon-instagram:before {
  content: '\e80c';
}
/* '' */
.icon-list:before {
  content: '\e80d';
}
/* '' */
.icon-location:before {
  content: '\e80e';
}
/* '' */
.icon-linkedin:before {
  content: '\e80f';
}
/* '' */
.icon-breadcrumb:before {
  content: '\e810';
}
/* '' */
.icon-phone:before {
  content: '\e811';
}
/* '' */
.icon-xing:before {
  content: '\e812';
}
/* '' */
.icon-prev:before {
  content: '\e813';
}
/* '' */
.icon-search:before {
  content: '\e814';
}
/* '' */
.icon-seats:before {
  content: '\e815';
}
/* '' */
.icon-share:before {
  content: '\e816';
}
/* '' */
.icon-signpost:before {
  content: '\e817';
}
/* '' */
.icon-tag:before {
  content: '\e818';
}
/* '' */
.icon-time:before {
  content: '\e819';
}
/* '' */
.icon-youtube:before {
  content: '\e81a';
}
/* '' */
.icon-savedate:before {
  content: '\e81b';
}
/* '' */
.icon-map:before {
  content: '\e81c';
}
/* '' */
.icon-next:before {
  content: '\e81d';
}
/* '' */
.icon-region:before {
  content: '\e81e';
}
/* '' */
.icon-twitter:before {
  content: '\e820';
}
/* '' */
.icon-alert:before {
  content: '\e826';
}
/* '' */
.icon-check-outline:before {
  content: '\e827';
}
/* '' */
.icon-host:before {
  content: '\e881';
}
.kss-modifiers__modifier,
.kss-modifiers__example {
  margin-top: 20px;
  margin-bottom: 30px;
}
.kss-modifiers__modifier .kss-modifiers__description,
.kss-modifiers__example .kss-modifiers__description {
  font-size: 14px;
}
.kss-modifiers__modifier .notification,
.kss-modifiers__example .notification {
  margin-bottom: 0;
}
/*
  @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 {
  --primary-color: #0089C1;
  --secondary-color: 201, 211, 14;
  --text-color: #1f384d;
  --color-blue: #33A1CD;
  --color-lightblue: #66B8DA;
  --color-award: #9d0062;
  --color-grey: #B3B3B3;
  --stroke-color: #33A1CD;
}
.grid.debug [class*="col-"] span {
  border: 1px solid #E6F3F9;
  min-height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  border-radius: 0px;
}
/*
  .reset-ul()

  removes margin, padding and bullets from lists.

  Styleguide Config.Mixins.reset-ul()
*/
body {
  overflow-x: hidden;
  font-family: Arial, Helvetica, sans-serif;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  height: auto;
  background: #E6F3F9;
}
body.dialog-open {
  overflow: hidden;
}
header {
  height: 120px;
  background: #fff;
  border-bottom: 1px solid #E6F3F9;
  position: sticky;
  top: 0;
  z-index: 9999;
  transition: height 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
header .content-width {
  height: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
}
header .content-width::before {
  position: absolute;
  content: '';
  width: 100%;
  height: 119px;
  top: 0;
  right: 120px;
  background: url("../gfx/header-bg.svg") no-repeat;
  background-size: cover;
  background-position: right;
  z-index: -1;
  transition: height 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media screen and (min-width: 760px) {
  header .content-width::before {
    right: 220px;
  }
}
header .logo {
  display: block;
  height: 100%;
  margin-left: 20px;
  padding: 20px 0;
  transition: padding 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
header .logo img {
  height: 100%;
  max-width: 180px;
  width: auto;
}
@media screen and (min-width: 760px) {
  header .logo img {
    max-width: 270px;
  }
}
header nav > ul {
  white-space: nowrap;
}
@media screen and (min-width: 760px) {
  header nav > ul {
    height: 100%;
  }
}
@media screen and (max-width: 760px) {
  header nav > ul {
    overflow-y: auto;
    max-height: 100%;
    min-height: calc(100% - 60px);
  }
}
header nav > ul li {
  display: block;
  height: 100%;
}
@media screen and (min-width: 760px) {
  header nav > ul li {
    display: inline-block;
  }
}
@media screen and (max-width: 760px) {
  header nav > ul li {
    height: auto;
  }
}
header nav > ul li a,
header nav > ul li .button {
  text-decoration: none;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  height: 100%;
}
header nav > ul li a.button,
header nav > ul li .button.button {
  vertical-align: middle;
}
header nav > ul li a:hover,
header nav > ul li .button:hover {
  color: #E6F3F9;
}
header nav > ul > li {
  line-height: 100%;
}
header nav.main {
  flex: 1;
}
header nav.meta {
  flex: 0 1 auto;
}
header nav.meta > ul li {
  margin-left: 10px;
}
header nav.meta > ul li:first-child {
  margin-left: 0;
}
.small-header header {
  height: 80px;
}
.small-header header .content-width::before {
  height: 79px;
}
.small-header header .logo {
  padding: 10px 0;
}
.small-header header nav.main {
  height: calc(100vh - 79px);
  top: 79px;
}
@media screen and (min-width: 760px) {
  .small-header header nav.main {
    height: 100%;
    top: initial;
  }
}
@media screen and (max-width: 760px) {
  header .main {
    display: none;
  }
  header .main.open {
    display: flex;
  }
}
main {
  flex-shrink: 0;
  overflow: clip;
}
footer {
  margin-top: auto;
  position: relative;
  background: #fff;
  padding: 50px 0;
  border-top: 1px solid rgba(0, 137, 193, 0.2);
}
@media screen and (min-width: 760px) {
  footer {
    padding: 100px 0;
  }
}
footer::before {
  position: absolute;
  content: '';
  background: url("../gfx/footer-bg.svg") no-repeat;
  background-size: cover;
  background-position: left bottom;
  width: 500px;
  height: 50%;
  right: 0;
  bottom: 0;
}
footer .row:last-child {
  margin-bottom: 0;
}
footer .link-box {
  display: flex;
  flex-direction: row;
}
@media screen and (min-width: 760px) {
  footer .link-box {
    flex-direction: column;
  }
}
footer .link-box .footer-nav {
  width: 70%;
}
@media screen and (min-width: 760px) {
  footer .link-box .footer-nav {
    margin-bottom: 50px;
    width: 100%;
  }
}
footer .link-box .footer-nav ul li {
  margin-bottom: 20px;
}
footer .link-box .footer-nav ul li:last-child {
  margin-bottom: 0;
}
footer .link-box .footer-nav ul li a {
  color: var(--primary-color);
  text-decoration: none;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 14px;
  transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
footer .link-box .footer-nav ul li a:hover {
  color: var(--text-color);
}
@media screen and (max-width: 560px) {
  footer .link-box .social-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-self: baseline;
    width: 100%;
  }
  footer .link-box .social-links .button {
    margin-right: 0;
  }
  footer .link-box .social-links .button + .button {
    margin: 0 0 10px 10px;
  }
}
@media screen and (max-width: 560px) {
  footer .address button,
  footer .newsletter button {
    width: 100%;
    margin-right: 0;
  }
}
footer .supportby {
  padding-top: 35px;
  border-top: 1px solid #CCE7F3;
}
footer .supportby h3 {
  margin-bottom: 40px;
}
footer .supportby .grid {
  margin-bottom: -50px;
}
footer .supportby .grid .img {
  width: 100%;
  height: 40px;
}
footer .supportby .grid .img a {
  display: block;
  height: 100%;
}
@media screen and (max-width: 560px) {
  footer .supportby .grid .img {
    background: #fff;
    height: 100px;
    padding: 25px;
    border: 1px solid #E6F3F9;
  }
}
footer .supportby .grid .img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
footer .supportby + .supportby {
  border-top: none;
}
/*
  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
*/
.content-width {
  position: relative;
  margin: 0 auto;
  width: 100%;
  padding: 0 15px;
  z-index: 1;
}
@media screen and (min-width: 1200px) {
  .content-width {
    width: 1150px;
    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-"].mb-first {
  order: -1;
}
.grid [class*="col-"].square {
  position: relative;
  overflow: hidden;
  padding-right: 0;
}
.grid [class*="col-"].square > * {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.grid [class*="col-"].square > .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.grid [class*="col-"].square::after {
  content: '';
  display: block;
  padding-top: 100%;
}
.grid:not(.no-gap) [class*="col-"] {
  margin-bottom: 25px;
}
@media screen and (min-width: 760px) {
  .grid [class*="col-"] {
    flex: 0 0 auto;
    width: 50%;
  }
  .grid [class*="col-"].col-1-1 {
    width: 100%;
  }
  .grid:not(.no-gap) [class*="col-"] {
    padding-right: 50px;
    margin-bottom: 50px;
  }
}
@media screen and (min-width: 920px) {
  .grid [class*="col-"],
  .grid .swiper-slide[class*="col-"] {
    flex: 0 0 auto;
  }
  .grid [class*="col-"].col-12-12,
  .grid .swiper-slide[class*="col-"].col-12-12,
  .grid [class*="col-"].col-1-1,
  .grid .swiper-slide[class*="col-"].col-1-1 {
    width: 100%;
  }
  .grid [class*="col-"].col-1-2,
  .grid .swiper-slide[class*="col-"].col-1-2 {
    width: 50%;
  }
  .grid [class*="col-"].col-1-3,
  .grid .swiper-slide[class*="col-"].col-1-3,
  .grid [class*="col-"].col-1-4,
  .grid .swiper-slide[class*="col-"].col-1-4,
  .grid [class*="col-"].col-1-5,
  .grid .swiper-slide[class*="col-"].col-1-5,
  .grid [class*="col-"].col-2-5,
  .grid .swiper-slide[class*="col-"].col-2-5,
  .grid [class*="col-"].col-4-12,
  .grid .swiper-slide[class*="col-"].col-4-12,
  .grid [class*="col-"].col-golden-small,
  .grid .swiper-slide[class*="col-"].col-golden-small {
    width: 33.33333%;
  }
  .grid [class*="col-"].col-2-3,
  .grid .swiper-slide[class*="col-"].col-2-3,
  .grid [class*="col-"].col-3-4,
  .grid .swiper-slide[class*="col-"].col-3-4,
  .grid [class*="col-"].col-3-5,
  .grid .swiper-slide[class*="col-"].col-3-5,
  .grid [class*="col-"].col-4-5,
  .grid .swiper-slide[class*="col-"].col-4-5,
  .grid [class*="col-"].col-8-12,
  .grid .swiper-slide[class*="col-"].col-8-12,
  .grid [class*="col-"].col-golden-big,
  .grid .swiper-slide[class*="col-"].col-golden-big {
    width: 66.66666%;
  }
  .grid:not(.no-gap) {
    margin-right: -50px;
  }
  .grid:not(.no-gap) [class*="col-"],
  .grid:not(.no-gap) .swiper-slide[class*="col-"] {
    padding-right: 50px;
  }
}
@media screen and (min-width: 1200px) {
  .grid [class*="col-"],
  .grid .swiper-slide[class*="col-"] {
    flex: 0 0 auto;
  }
  .grid [class*="col-"].col-12-12,
  .grid .swiper-slide[class*="col-"].col-12-12,
  .grid [class*="col-"].col-1-1,
  .grid .swiper-slide[class*="col-"].col-1-1 {
    width: 100%;
  }
  .grid [class*="col-"].col-1-2,
  .grid .swiper-slide[class*="col-"].col-1-2 {
    width: 50%;
  }
  .grid [class*="col-"].col-4-12,
  .grid .swiper-slide[class*="col-"].col-4-12,
  .grid [class*="col-"].col-1-3,
  .grid .swiper-slide[class*="col-"].col-1-3 {
    width: 33.33333%;
  }
  .grid [class*="col-"].col-8-12,
  .grid .swiper-slide[class*="col-"].col-8-12,
  .grid [class*="col-"].col-2-3,
  .grid .swiper-slide[class*="col-"].col-2-3 {
    width: 66.66666%;
  }
  .grid [class*="col-"].col-1-4,
  .grid .swiper-slide[class*="col-"].col-1-4 {
    width: 25%;
  }
  .grid [class*="col-"].col-3-4,
  .grid .swiper-slide[class*="col-"].col-3-4 {
    width: 75%;
  }
  .grid [class*="col-"].col-1-5,
  .grid .swiper-slide[class*="col-"].col-1-5 {
    width: 20%;
  }
  .grid [class*="col-"].col-1-6,
  .grid .swiper-slide[class*="col-"].col-1-6 {
    width: 16.66666%;
  }
  .grid [class*="col-"].col-2-5,
  .grid .swiper-slide[class*="col-"].col-2-5 {
    width: 40%;
  }
  .grid [class*="col-"].col-3-5,
  .grid .swiper-slide[class*="col-"].col-3-5 {
    width: 60%;
  }
  .grid [class*="col-"].col-4-5,
  .grid .swiper-slide[class*="col-"].col-4-5 {
    width: 80%;
  }
  .grid [class*="col-"].col-golden-big,
  .grid .swiper-slide[class*="col-"].col-golden-big {
    width: 61.80339887%;
  }
  .grid [class*="col-"].col-golden-small,
  .grid .swiper-slide[class*="col-"].col-golden-small {
    width: 38.19660113%;
  }
  .grid:not(.no-gap) {
    margin-right: -50px;
  }
  .grid:not(.no-gap) [class*="col-"],
  .grid:not(.no-gap) .swiper-slide[class*="col-"] {
    padding-right: 50px;
  }
}
/*
  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 {
  margin-bottom: 50px;
  background-size: cover !important;
}
@media screen and (min-width: 760px) {
  .row {
    margin-bottom: 100px;
  }
}
.row.highlight {
  background-color: #fff;
  padding: 75px 0;
  color: #1f384d;
}
.row.highlight + .row.highlight,
.row.highlight + .row.special {
  margin-top: -150px;
}
.row.highlight .event-teaser::before {
  display: none;
}
.row.special {
  padding: 100px 0;
  background: var(--primary-color) url("../gfx/highlight-bg.webp") no-repeat;
  background-size: cover;
}
.row.special .headline h2,
.row.special .headline h3,
.row.special .headline h4,
.row.special .headline p {
  color: #fff;
}
.row.reverse .grid {
  flex-direction: row-reverse;
}
.row.center,
.row .center {
  text-align: center;
}
.row.full .content-width {
  width: 100%;
}
.row.cover {
  display: flex;
  align-items: center;
  height: 100vh;
}
.row.small-gap {
  margin-bottom: 50px;
}
.row.no-gap {
  margin-bottom: 0;
  overflow: hidden;
}
.contact-overlay + .row:has(.text-content),
.contact-overlay + .row:has(.offer) {
  padding-top: 50px;
}
@media screen and (min-width: 760px) {
  .contact-overlay + .row:has(.text-content),
  .contact-overlay + .row:has(.offer) {
    padding-top: 100px;
  }
}
.content {
  padding-left: 100px;
}
.content ul:not(.dropdown) {
  margin: 0;
  padding: 0;
  list-style-type: none;
  margin-bottom: 25px;
}
.content ul:not(.dropdown) li {
  position: relative;
  padding-left: 21px;
  margin-bottom: 15px;
}
.content ul:not(.dropdown) li::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 4px;
  width: 8px;
  height: 8px;
  background: #E6F3F9;
  border-radius: 50%;
}
.content ul:not(.dropdown) ul {
  margin-top: 15px;
  margin-bottom: 15px;
}
.content ul:not(.dropdown) ul li::before {
  opacity: 0.5;
}
.swiper-navigation {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-top: 50px;
}
.swiper-navigation .swiper-button-next,
.swiper-navigation .swiper-button-prev {
  position: relative;
  width: 30px;
  height: 25px;
  top: calc(50% - 12px);
  margin-top: 0;
}
.swiper-navigation .swiper-button-next::after,
.swiper-navigation .swiper-button-prev::after {
  font-family: 'iconfont';
  font-size: 25px;
}
.swiper-navigation .swiper-button-next::after {
  content: '\e81d';
}
.swiper-navigation .swiper-button-prev::after {
  content: '\e813';
}
.formie-form {
  --formie-group-border: 0;
  --formie-group-border-radius: 0;
}
.formie-field-layout {
  gap: 0;
}
.formie-row {
  gap: 50px;
}
.formie-nested-field-row {
  display: flex;
}
.formie-button {
  padding: 0.5rem 1rem;
}
.form-item,
.formie-field-layout {
  position: relative;
}
.form-item .btn-pw,
.formie-field-layout .btn-pw {
  position: absolute;
  right: 10px;
  bottom: 0;
  z-index: 2;
  height: 32px;
  width: 32px;
  border: none;
  background: none;
  font-size: 18px;
  color: #757575;
}
.form-item .btn-pw:hover,
.formie-field-layout .btn-pw:hover {
  color: #E6F3F9;
}
form .grid:not(.no-gap) [class*="col-"] {
  margin-bottom: 24px;
}
/*
  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 .formie-field-label,
.formie-field .formie-field-label,
.form-item label,
.formie-field label {
  display: block;
  margin-bottom: 10px;
  font-size: 16px;
  font-weight: bold;
  color: #1f384d;
}
.form-item .formie-field-label .formie-field-required,
.formie-field .formie-field-label .formie-field-required,
.form-item label .formie-field-required,
.formie-field label .formie-field-required {
  color: #1f384d;
}
.form-item .formie-field-label .hint,
.formie-field .formie-field-label .hint,
.form-item label .hint,
.formie-field label .hint {
  float: right;
  font-size: 12px;
  position: relative;
  top: 4px;
}
.form-item .formie-field-label[class^="icon-"],
.formie-field .formie-field-label[class^="icon-"],
.form-item label[class^="icon-"],
.formie-field label[class^="icon-"],
.form-item .formie-field-label[class*=" icon-"],
.formie-field .formie-field-label[class*=" icon-"],
.form-item label[class*=" icon-"],
.formie-field 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: 0px 0 0 0px;
}
.form-item .formie-field-label[class^="icon-"] + input,
.formie-field .formie-field-label[class^="icon-"] + input,
.form-item label[class^="icon-"] + input,
.formie-field label[class^="icon-"] + input,
.form-item .formie-field-label[class*=" icon-"] + input,
.formie-field .formie-field-label[class*=" icon-"] + input,
.form-item label[class*=" icon-"] + input,
.formie-field label[class*=" icon-"] + input {
  padding-left: 40px;
}
@media screen and (min-width: 760px) {
  .form-item.inline,
  .formie-field.inline {
    display: flex;
  }
  .form-item.inline label,
  .formie-field.inline label {
    flex: 0 0 33.33333%;
    max-width: 200px;
    min-width: 100px;
    padding-right: 10px;
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
  }
  .form-item.inline label .hint,
  .formie-field.inline label .hint {
    order: 2;
  }
}
.form-item[data-formie-field-has-error="true"] label,
.formie-field[data-formie-field-has-error="true"] label {
  color: #F13517;
}
.form-item[data-formie-field-has-error="true"] label .formie-field-required,
.formie-field[data-formie-field-has-error="true"] label .formie-field-required {
  color: #F13517;
}
.form-item .formie-input-error-message,
.formie-field .formie-input-error-message {
  color: #F13517;
}
.form-item.disabled label,
.formie-field.disabled label {
  color: #B3B3B3;
}
/*
  Form Input

  Element used for showing various notifications in different styles.

  .error     - Error state

  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.Inputs
*/
select {
  font-size: 16px;
  font-family: Arial, Helvetica, sans-serif;
  border: 1px solid #CCE7F3;
  border-radius: 0px;
  background: #CCE7F3;
  background-image: url(../gfx/select-arrow.svg);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 29px auto;
  color: #1f384d;
  width: 100%;
  transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
  height: 50px;
  padding: 0 24px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
select:hover,
select:focus {
  border-color: var(--color-lightblue);
}
select[disabled] {
  border: 1px solid #B3B3B3;
  background: #EEEEEE;
  color: #808080;
}
select[disabled]:hover,
select[disabled]:focus {
  border-color: #C5C5C5;
}
.form-item input,
.formie-field-layout input,
.form-item select,
.formie-field-layout select,
.form-item .formie-input,
.formie-field-layout .formie-input,
.form-item textarea,
.formie-field-layout textarea {
  font-size: 16px;
  font-family: Arial, Helvetica, sans-serif;
  border: 1px solid #CCE7F3;
  border-radius: 0px;
  background: #CCE7F3;
  color: #1f384d;
  width: 100%;
  transition: border-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.form-item input:hover,
.formie-field-layout input:hover,
.form-item select:hover,
.formie-field-layout select:hover,
.form-item .formie-input:hover,
.formie-field-layout .formie-input:hover,
.form-item textarea:hover,
.formie-field-layout textarea:hover,
.form-item input:focus,
.formie-field-layout input:focus,
.form-item select:focus,
.formie-field-layout select:focus,
.form-item .formie-input:focus,
.formie-field-layout .formie-input:focus,
.form-item textarea:focus,
.formie-field-layout textarea:focus {
  border-color: var(--color-lightblue);
}
.form-item input[disabled],
.formie-field-layout input[disabled],
.form-item select[disabled],
.formie-field-layout select[disabled],
.form-item .formie-input[disabled],
.formie-field-layout .formie-input[disabled],
.form-item textarea[disabled],
.formie-field-layout textarea[disabled] {
  border: 1px solid #B3B3B3;
  background: #EEEEEE;
  color: #808080;
}
.form-item input[disabled]:hover,
.formie-field-layout input[disabled]:hover,
.form-item select[disabled]:hover,
.formie-field-layout select[disabled]:hover,
.form-item .formie-input[disabled]:hover,
.formie-field-layout .formie-input[disabled]:hover,
.form-item textarea[disabled]:hover,
.formie-field-layout textarea[disabled]:hover,
.form-item input[disabled]:focus,
.formie-field-layout input[disabled]:focus,
.form-item select[disabled]:focus,
.formie-field-layout select[disabled]:focus,
.form-item .formie-input[disabled]:focus,
.formie-field-layout .formie-input[disabled]:focus,
.form-item textarea[disabled]:focus,
.formie-field-layout textarea[disabled]:focus {
  border-color: #C5C5C5;
}
.form-item input.formie-input-error,
.formie-field-layout input.formie-input-error,
.form-item select.formie-input-error,
.formie-field-layout select.formie-input-error,
.form-item .formie-input.formie-input-error,
.formie-field-layout .formie-input.formie-input-error,
.form-item textarea.formie-input-error,
.formie-field-layout textarea.formie-input-error,
[data-formie-field-has-error="true"] .form-item input,
[data-formie-field-has-error="true"] .formie-field-layout input,
[data-formie-field-has-error="true"] .form-item select,
[data-formie-field-has-error="true"] .formie-field-layout select,
[data-formie-field-has-error="true"] .form-item .formie-input,
[data-formie-field-has-error="true"] .formie-field-layout .formie-input,
[data-formie-field-has-error="true"] .form-item textarea,
[data-formie-field-has-error="true"] .formie-field-layout textarea {
  background: #FCD7D1;
  border-color: #FCD7D1;
}
.form-item input.formie-input-error:hover,
.formie-field-layout input.formie-input-error:hover,
.form-item select.formie-input-error:hover,
.formie-field-layout select.formie-input-error:hover,
.form-item .formie-input.formie-input-error:hover,
.formie-field-layout .formie-input.formie-input-error:hover,
.form-item textarea.formie-input-error:hover,
.formie-field-layout textarea.formie-input-error:hover,
[data-formie-field-has-error="true"] .form-item input:hover,
[data-formie-field-has-error="true"] .formie-field-layout input:hover,
[data-formie-field-has-error="true"] .form-item select:hover,
[data-formie-field-has-error="true"] .formie-field-layout select:hover,
[data-formie-field-has-error="true"] .form-item .formie-input:hover,
[data-formie-field-has-error="true"] .formie-field-layout .formie-input:hover,
[data-formie-field-has-error="true"] .form-item textarea:hover,
[data-formie-field-has-error="true"] .formie-field-layout textarea:hover,
.form-item input.formie-input-error:focus,
.formie-field-layout input.formie-input-error:focus,
.form-item select.formie-input-error:focus,
.formie-field-layout select.formie-input-error:focus,
.form-item .formie-input.formie-input-error:focus,
.formie-field-layout .formie-input.formie-input-error:focus,
.form-item textarea.formie-input-error:focus,
.formie-field-layout textarea.formie-input-error:focus,
[data-formie-field-has-error="true"] .form-item input:focus,
[data-formie-field-has-error="true"] .formie-field-layout input:focus,
[data-formie-field-has-error="true"] .form-item select:focus,
[data-formie-field-has-error="true"] .formie-field-layout select:focus,
[data-formie-field-has-error="true"] .form-item .formie-input:focus,
[data-formie-field-has-error="true"] .formie-field-layout .formie-input:focus,
[data-formie-field-has-error="true"] .form-item textarea:focus,
[data-formie-field-has-error="true"] .formie-field-layout textarea:focus {
  border-color: #F13517;
}
.form-item select,
.formie-field-layout select {
  background-image: url(../gfx/select-arrow.svg) !important;
  background-position: right center !important;
  background-repeat: no-repeat !important;
  background-size: 29px auto!important;
}
.form-item select.formie-input-error,
.formie-field-layout select.formie-input-error,
[data-formie-field-has-error="true"] .form-item select,
[data-formie-field-has-error="true"] .formie-field-layout select {
  background: #FCD7D1 !important;
  background-image: url(../gfx/select-arrow-error.svg) !important;
  border-color: #FCD7D1 !important;
}
.form-item select.formie-input-error:hover,
.formie-field-layout select.formie-input-error:hover,
[data-formie-field-has-error="true"] .form-item select:hover,
[data-formie-field-has-error="true"] .formie-field-layout select:hover,
.form-item select.formie-input-error:focus,
.formie-field-layout select.formie-input-error:focus,
[data-formie-field-has-error="true"] .form-item select:focus,
[data-formie-field-has-error="true"] .formie-field-layout select:focus {
  border-color: #F13517 !important;
}
.form-item input,
.formie-field-layout input,
.form-item input.formie-input,
.formie-field-layout input.formie-input {
  height: 50px;
  padding: 18px 24px;
}
.form-item textarea,
.formie-field-layout textarea,
.form-item textarea.formie-input,
.formie-field-layout textarea.formie-input {
  padding: 18px 24px;
  min-height: 150px;
  resize: vertical;
}
.formie-radio-option {
  line-height: 50px;
  margin-bottom: 0px !important;
}
.formie-radio-option + .formie-radio-option {
  margin-top: 24px !important;
}
.formie-radio-option .formie-radio-option-label {
  padding-left: 75px;
  line-height: 50px;
  margin-bottom: 0;
  font-weight: normal;
}
.formie-radio-option .formie-radio-option-label::before {
  width: 50px;
  height: 50px;
  border: 1px solid #CCE7F3;
  background: #CCE7F3;
  top: 0;
}
.formie-radio-option .formie-input:checked + label::before {
  background: #CCE7F3;
  background-image: none;
  border: 1px solid #CCE7F3;
}
.formie-radio-option .formie-input:checked + label::after {
  position: absolute;
  content: '';
  width: 10px;
  height: 10px;
  background: var(--primary-color);
  border-radius: 10px;
  top: 20px;
  left: 20px;
}
.formie-radio-option .formie-input:focus + label::before {
  border: 1px solid var(--primary-color);
}
.formie-radio-option .formie-input.formie-input-error + label::before,
[data-formie-field-has-error="true"] .formie-radio-option .formie-input + label::before {
  background: #FCD7D1;
  border: 1px solid #F13517;
}
.formie-checkbox-option {
  line-height: 50px;
  margin-bottom: 0 !important;
}
.formie-checkbox-option + .formie-checkbox-option,
.formie-checkbox-option + .formie-agree-option {
  margin-top: 24px !important;
}
.formie-checkbox-option .formie-checkbox-option-label,
.formie-checkbox-option .formie-agree-option-label {
  padding-left: 75px;
  margin-bottom: 0;
  font-weight: normal;
  line-height: 150%;
  min-height: 50px;
  display: flex;
  align-items: center;
}
.formie-checkbox-option .formie-checkbox-option-label::before,
.formie-checkbox-option .formie-agree-option-label::before {
  width: 50px;
  height: 50px;
  border: 1px solid #CCE7F3;
  border-radius: 0;
  background: #CCE7F3;
  top: 0;
}
.formie-checkbox-option .formie-checkbox-option-label a,
.formie-checkbox-option .formie-agree-option-label a {
  display: contents;
  color: var(--primary-color);
  font-weight: bold;
  transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.formie-checkbox-option .formie-checkbox-option-label a:hover,
.formie-checkbox-option .formie-agree-option-label a:hover {
  color: var(--text-color);
}
.formie-checkbox-option .formie-input:checked + label::before {
  background: #CCE7F3;
  background-image: none;
  border-radius: 0;
  border: 1px solid #CCE7F3;
}
.formie-checkbox-option .formie-input:checked + label::after {
  position: absolute;
  content: '\e806';
  font-family: 'iconfont';
  font-size: 19px;
  color: var(--primary-color);
  top: 12px;
  left: 15px;
}
.formie-checkbox-option .formie-input:focus + label::before {
  border: 1px solid var(--primary-color);
}
.formie-checkbox-option .formie-input.formie-input-error + label::before,
[data-formie-field-has-error="true"] .formie-checkbox-option .formie-input + label::before {
  background: #FCD7D1;
}
.form-checkbox input {
  opacity: 0;
  width: initial;
  height: 0;
}
.form-checkbox input + label {
  width: 100%;
  position: relative;
  padding-left: 70px;
  padding-top: 0;
  text-transform: initial;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 50px;
}
.form-checkbox input + label a {
  text-decoration: none;
  position: relative;
  transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
  color: var(--primary-color);
  font-weight: 600;
}
.form-checkbox input + label a:hover {
  color: var(--secondary-color);
}
.form-checkbox input + label::before {
  display: none;
}
.form-checkbox input + label em {
  width: 50px;
  height: 50px;
  position: absolute;
  content: '';
  background: #CCE7F3;
  border: 1px solid #CCE7F3;
  left: 0;
  top: 0;
  cursor: pointer;
  transition: border 200ms ease;
}
.form-checkbox input + label em:hover {
  border: 1px solid var(--color-lightblue);
}
.form-checkbox input:checked + label em::before {
  content: '\e806';
  font-family: 'iconfont';
  font-style: normal;
  font-weight: normal;
  font-size: 19px;
  color: var(--primary-color);
  position: absolute;
  z-index: 1;
  top: 15px;
  left: 15px;
}
.form-checkbox input:checked + label em:hover::before {
  color: #fff;
}
/*
  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
*/
.btn-wrap {
  display: flex;
  margin-bottom: 30px;
  /*.btn {margin: 0;border-radius: 0;} */
}
.btn-wrap:last-child {
  margin-bottom: 0;
}
.btn-wrap[data-align="left"] {
  justify-content: start;
}
.btn-wrap[data-align="left"] .btn {
  margin-right: 10px;
}
.btn-wrap[data-align="left"] .btn:last-child {
  margin-right: auto;
}
.btn-wrap[data-align="center"] {
  justify-content: center;
}
.btn-wrap[data-align="center"] .btn {
  margin-right: 10px;
  min-width: 278px;
}
.btn-wrap[data-align="center"] .btn:last-child {
  margin-right: 0;
}
.btn-wrap[data-align="right"] {
  justify-content: end;
}
.btn-wrap[data-align="full"] {
  align-items: stretch;
}
.btn-wrap[data-align="full"] a,
.btn-wrap[data-align="full"] button {
  width: 100%;
  max-width: none;
}
.anchor-inside {
  padding-top: 120px;
  margin-top: -120px;
}
.btn-bar {
  display: flex;
  flex-direction: row;
  justify-content: center;
}
.button {
  height: 50px;
  display: inline-flex;
  cursor: pointer;
  user-select: none;
  align-items: center;
  vertical-align: bottom;
  text-align: center;
  overflow: hidden;
  position: relative;
  color: var(--text-color);
  background: var(--secondary-color);
  border: 1px solid var(--secondary-color);
  padding: 0 18px;
  font-size: 14px;
  font-weight: bold;
  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: Arial, Helvetica, sans-serif;
  text-transform: uppercase;
  margin-right: 20px;
  margin-bottom: 10px;
  border-radius: 0px;
}
.button:hover {
  border-color: #101e29;
  background: #101e29;
  color: #fff;
}
.button:focus {
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(0, 137, 193, 0.5);
  position: relative;
  z-index: 1;
}
.button em {
  font-size: 20px;
  position: relative;
}
.button em.icon-mail {
  font-size: 16px;
}
.button span {
  flex: 1 1 auto;
}
.button em + span {
  margin-left: 15px;
}
.button span + em {
  margin-left: 15px;
}
.button.full {
  width: 100%;
}
.button.rounded {
  border-radius: calc(50px / 2);
}
.button.icon {
  height: 50px;
  width: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.button.blue {
  color: #fff;
  background: var(--primary-color);
  border-color: var(--primary-color);
}
.button.link {
  border: transparent;
  background: transparent;
  color: var(--primary-color);
  box-shadow: none;
  padding: 0;
  text-align: left;
  height: auto;
  padding-bottom: 10px;
}
.button.link::before {
  position: absolute;
  content: '';
  width: 100%;
  height: 1px;
  background: var(--secondary-color);
  bottom: 0;
  left: 0;
  transition: background-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.button.link em {
  border-radius: 0px;
}
.button.link.bg-icon {
  color: var(--text-color);
}
.button.link.bg-icon em {
  background: #E6F3F9;
  color: #FFF;
  height: 50px;
  width: 50px;
  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: #1f384d;
}
.button.link.bg-icon.rounded em {
  border-radius: 50%;
}
.button.link.bg-icon.outline em {
  border: 1px solid #E6F3F9;
  color: #E6F3F9;
  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;
  color: var(--text-color);
}
.button.link:hover::before {
  background: var(--text-color);
}
.button.link:hover em {
  color: var(--text-color);
}
.button.link:hover.bg-icon span {
  text-decoration: none;
}
.button.link:hover.bg-icon em {
  background: #bddfef;
}
.button.link:hover.bg-icon.outline em {
  background: #E6F3F9;
  color: #FFF;
}
.button.link.icon {
  width: auto;
  height: auto;
  text-align: left;
}
.button.link.icon::before {
  display: none;
}
.button.link.icon span {
  text-transform: initial;
  font-size: 16px;
}
.button.darkblue {
  background: #1f384d;
  border-color: #1f384d;
  color: #fff;
}
.button.darkblue:hover {
  border-color: #101e29;
  background: #101e29;
}
.button.darkblue:focus {
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(0, 137, 193, 0.5);
}
.button.secondary {
  background: var(--primary-color);
  border-color: var(--primary-color);
  color: #fff;
}
.button.secondary:hover {
  border-color: #101e29;
  background: #101e29;
}
.button.secondary:focus {
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(0, 137, 193, 0.5);
}
.button.secondary.loading::after {
  background-color: rgba(0, 137, 193, 0.9);
}
.button.secondary.outline {
  color: var(--secondary-color);
}
.button.secondary.outline:hover {
  background: #9ba30b;
  color: #FFF;
}
.button.secondary.link {
  border: transparent;
  background: transparent;
  color: var(--secondary-color);
  box-shadow: none;
}
.button.secondary.link.bg-icon em {
  background: var(--secondary-color);
}
.button.secondary.link.bg-icon:hover em {
  background: #bddfef;
}
.button.secondary.link.bg-icon.outline em {
  border-color: var(--secondary-color);
  color: var(--secondary-color);
  background: transparent;
}
.button.secondary.link.bg-icon.outline:hover em {
  background: var(--secondary-color);
  color: #FFF;
}
.button.success {
  background: #6AB023;
  border-color: #6AB023;
  color: #FFF;
}
.button.success:hover {
  border-color: #50851b;
  background: #50851b;
}
.button.success:focus {
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(106, 176, 35, 0.5);
}
.button.success.loading::after {
  background-color: rgba(106, 176, 35, 0.9);
}
.button.success.outline {
  color: #6AB023;
}
.button.success.outline:hover {
  background: #50851b;
  color: #FFF;
}
.button.success.link {
  border: transparent;
  background: transparent;
  color: #6AB023;
  box-shadow: none;
}
.button.success.link.bg-icon em {
  background: #6AB023;
}
.button.success.link.bg-icon:hover em {
  background: #50851b;
}
.button.success.link.outline em {
  border-color: #6AB023;
  color: #6AB023;
  background: transparent;
}
.button.success.link.outline:hover em {
  background: #6AB023;
  color: #FFF;
}
.button.warning {
  background: #F18C00;
  border-color: #F18C00;
  color: #FFF;
}
.button.warning:hover {
  border-color: #be6e00;
  background: #be6e00;
}
.button.warning:focus {
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(241, 140, 0, 0.5);
}
.button.warning.loading::after {
  background-color: rgba(241, 140, 0, 0.9);
}
.button.warning.outline {
  color: #F18C00;
}
.button.warning.outline:hover {
  background: #be6e00;
  color: #FFF;
}
.button.warning.link {
  border: transparent;
  background: transparent;
  color: #F18C00;
  box-shadow: none;
}
.button.warning.link.bg-icon em {
  background: #F18C00;
}
.button.warning.link.bg-icon:hover em {
  background: #be6e00;
}
.button.warning.link.outline em {
  border-color: #F18C00;
  color: #F18C00;
  background: transparent;
}
.button.warning.link.outline:hover em {
  background: #F18C00;
  color: #FFF;
}
.button.alert {
  background: #F13517;
  border-color: #F13517;
  color: #FFF;
}
.button.alert:hover {
  border-color: #c9260c;
  background: #c9260c;
}
.button.alert:focus {
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(241, 53, 23, 0.5);
}
.button.alert.loading::after {
  background-color: rgba(241, 53, 23, 0.9);
}
.button.alert.outline {
  color: #F13517;
}
.button.alert.outline:hover {
  background: #c9260c;
  color: #FFF;
}
.button.alert.link {
  border: transparent;
  background: transparent;
  color: #F13517;
  box-shadow: none;
}
.button.alert.link.bg-icon em {
  background: #F13517;
}
.button.alert.link.bg-icon:hover em {
  background: #c9260c;
}
.button.alert.link.outline em {
  border-color: #F13517;
  color: #F13517;
  background: transparent;
}
.button.alert.link.outline:hover em {
  background: #F13517;
  color: #FFF;
}
.button.outline {
  background: transparent;
  color: #E6F3F9;
}
.button.outline:hover {
  background: #bddfef;
  color: #FFF;
}
.button.outline.bg-icon:hover {
  background: transparent;
}
.button.only-icon {
  width: 50px;
  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.only-icon.link {
  color: #0089C1;
  width: auto;
}
.button.only-icon.link::before {
  display: none;
}
.button[disabled],
.button .disabled {
  background: #EEEEEE;
  border-color: #EEEEEE;
  color: #D2D1D1;
  cursor: default;
}
.button[disabled].loading::after,
.button .disabled.loading::after {
  background-color: rgba(238, 238, 238, 0.1);
}
.button.sr-focus {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.button.sr-focus:focus {
  left: 0;
  width: auto;
  padding: 0 10px;
  height: 40px;
  margin: inherit;
  overflow: inherit;
  border: inherit;
  clip: unset;
}
.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.split-button {
  position: relative;
}
.button-group.split-button .button-toggle {
  width: 27px;
}
.button-group.split-button .button-toggle em {
  font-size: 10px;
}
.button-group.split-button .button-toggle:not(.outline) {
  background: #bddfef;
}
.button-group.split-button .button-toggle:not(.outline):hover {
  background: #94cce5;
}
.button-group.split-button .secondary.button-toggle:not(.outline) {
  background: #9ba30b;
}
.button-group.split-button .secondary.button-toggle:not(.outline):hover {
  background: #6e7308;
}
.button-group.split-button .success.button-toggle:not(.outline) {
  background: #50851b;
}
.button-group.split-button .success.button-toggle:not(.outline):hover {
  background: #375b12;
}
.button-group.split-button .warning.button-toggle:not(.outline) {
  background: #be6e00;
}
.button-group.split-button .warning.button-toggle:not(.outline):hover {
  background: #8b5100;
}
.button-group.split-button .alert.button-toggle:not(.outline) {
  background: #c9260c;
}
.button-group.split-button .alert.button-toggle:not(.outline):hover {
  background: #991d09;
}
.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: #CCE7F3;
  overflow: hidden;
  border-radius: 0px;
}
.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: 0px;
}
.form-switch em:hover:before {
  background: #E6F3F9;
}
.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: #E6F3F9;
  transform: translateX(32px);
}
.form-switch input[disabled] + em {
  cursor: default;
}
.form-switch input[disabled] + em::before {
  background: #C5C5C5;
}
.custom-select {
  position: relative;
  font-weight: normal;
  z-index: 20;
}
.custom-select .selected-options {
  border: 1px solid #CCE7F3;
  width: 100%;
  background: #CCE7F3;
  background-image: url(../gfx/select-arrow.svg);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 32px auto;
  font-size: var(--input-fontsize);
  height: 50px;
  padding: 15px 24px;
  display: flex;
  flex-direction: row;
  align-items: center;
  font-weight: normal;
  cursor: pointer;
  z-index: 2;
}
.custom-select:focus-within {
  box-shadow: 0 0 0 3px rgba(164, 202, 254, 0.45);
}
.custom-select::after {
  content: '\e803';
  font-family: 'iconfont';
  color: var(--primary-color);
  font-size: 12px;
  border: none;
  margin-top: 0;
  top: calc(50% - 6px);
  right: 20px;
  width: 12px;
  height: 12px;
  position: absolute;
}
.custom-select .options-list {
  background: #E6F3F9;
  border: 1px solid #66B8DA;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  z-index: 10;
  display: none;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
}
.custom-select .options-list > div {
  cursor: pointer;
  padding: 13px 30px;
}
.custom-select .options-list > div.selected,
.custom-select .options-list > div:hover {
  background: var(--primary-color);
  color: #fff;
}
.custom-select .options-list.show {
  display: block;
}
.custom-select select {
  border: 0!important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !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;
}
.custom-select:has(.show) {
  box-shadow: 0 0 0 3px rgba(164, 202, 254, 0.45);
}
.custom-select:has(.show) .selected-options {
  border-color: #66B8DA;
}
.custom-select:has(.show)::after {
  transform: scaleY(-1);
  border: none !important;
}
.custom-select:has(select[multiple]) .selected-options > div {
  background: var(--primary-color);
  color: #fff;
  padding: 11px 15px;
  font-weight: normal;
  margin-bottom: 0;
  cursor: pointer;
  margin-right: 10px;
  line-height: 100%;
}
.custom-select:has(select[multiple]) .selected-options > div:hover {
  background: #000;
}
.choices {
  border-radius: 0;
  border: none;
}
.choices .choices__inner {
  border: 1px solid #CCE7F3;
  min-height: 50px;
  padding: 15px 24px !important;
  border-radius: 0;
  background: #CCE7F3;
}
.choices .choices__inner .choices__list {
  padding: 0;
}
.choices .choices__inner .choices__list .choices__item {
  color: var(--text-color);
  opacity: 1;
  font-size: 16px;
}
.choices:hover .choices__inner {
  border: 1px solid var(--primary-color);
}
.choices.is-focused {
  border: none;
  border-radius: 0;
}
.choices.is-focused .choices__inner {
  border-radius: 0;
  border: 1px solid var(--primary-color);
}
.choices.is-open {
  border: none;
  border-radius: 0;
}
.choices.is-open .choices__inner {
  border-radius: 0;
  border: 1px solid var(--primary-color);
}
.choices.is-open .choices__list--dropdown {
  background: #E6F3F9;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
}
.choices.is-open .choices__list--dropdown,
.choices.is-open .choices__list[aria-expanded] {
  border: 1px solid var(--primary-color);
  border-radius: 0;
}
.choices .choices__list--dropdown .choices__list .choices__item {
  color: var(--text-color);
  padding: 18px 24px;
  font-size: 16px;
  font-family: Arial, Helvetica, sans-serif;
}
.choices .choices__list--dropdown .choices__list .choices__item.choices__placeholder {
  color: var(--text-color);
  background: #E6F3F9;
  opacity: 1;
}
.choices .choices__list--dropdown .choices__list .choices__item.is-selected {
  color: #B3B3B3;
}
.choices .choices__list--dropdown .choices__list .choices__item.is-highlighted {
  background: var(--primary-color);
  color: #fff;
}
.choices .choices__list--dropdown .choices__list .choices__item.is-highlighted.is-selected {
  color: #B3B3B3;
  background: #E6F3F9;
}
.choices[data-type*=select-one]:after {
  content: '\e803' !important;
  font-family: 'iconfont';
  color: var(--primary-color);
  font-size: 12px;
  border: none !important;
  margin-top: 0 !important;
  top: calc(50% - 6px) !important;
  right: 10px !important;
  width: 12px !important;
  height: 12px !important;
}
.choices[data-type*=select-one].is-open:after {
  transform: scaleY(-1);
  border: none !important;
}
.formie-file-dropdown {
  background: #CCE7F3;
  padding: 10px;
}
.formie-file-dropdown .preview {
  border: 1px dashed var(--color-lightblue);
  padding: 25px;
  color: #1f384d;
  text-align: center;
}
.formie-file-dropdown .preview span {
  text-transform: uppercase;
}
.formie-file-dropdown .files {
  border: 1px dashed var(--color-lightblue);
  padding: 25px;
}
.formie-file-dropdown .files li {
  list-style: none;
}
.notyf {
  z-index: 100000 !important;
}
.notyf__toast {
  z-index: 100000;
  border: none;
  border-radius: 0;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3) !important;
  max-width: 500px !important;
  padding: 0 50px !important;
}
.notyf__toast .notyf__wrapper {
  padding: 50px 0;
}
.notyf__toast.notyf__toast--dismissible .notyf__wrapper {
  padding-right: 50px;
}
.notyf__toast .notyf__ripple {
  background: #1F384D !important;
  width: 600px;
  height: 600px;
}
.notyf__toast .notyf__icon {
  background: none;
  width: 50px;
  margin-right: 25px;
}
.notyf__toast .notyf__icon > i {
  border-radius: 25px;
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.notyf__toast .notyf__icon > i::before {
  font-family: 'iconfont';
  background: none;
  font-size: 20px;
  font-style: normal;
  color: #1f384d;
  border-radius: 0;
  transform: none;
  position: relative;
  width: auto;
  height: auto;
  left: initial;
  top: initial;
}
.notyf__toast .notyf__icon .notyf__icon--success {
  background: #C9D30E;
}
.notyf__toast .notyf__icon .notyf__icon--success::before {
  content: '\e827';
}
.notyf__toast .notyf__icon .notyf__icon--success::after {
  display: none;
}
.notyf__toast .notyf__icon .notyf__icon--error {
  background: #DA6666;
}
.notyf__toast .notyf__icon .notyf__icon--error::before {
  content: '\e826';
}
.notyf__toast .notyf__icon .notyf__icon--error::after {
  display: none;
}
.notyf__toast .notyf__dismiss {
  width: 20px;
  height: 20px;
  right: 0px;
  top: 50px;
  margin: 0;
}
.notyf__toast .notyf__dismiss .notyf__dismiss-btn {
  background-color: transparent;
  opacity: 1;
}
.notyf__toast .notyf__dismiss .notyf__dismiss-btn::before,
.notyf__toast .notyf__dismiss .notyf__dismiss-btn::after {
  height: 22px;
  width: 2px;
  border-radius: 0;
  left: calc(50% - 1px);
  top: calc(50% - 11px);
}
.notyf__toast .notyf__message {
  color: #C9D30E;
  font-weight: bold;
  font-size: 16px;
}
.notyf__toast.notyf__toast--error .notyf__message {
  color: #DA6666;
}
.nav {
  display: flex;
  align-self: center;
  align-items: center;
  height: 100%;
}
.nav .button {
  margin-bottom: 0;
}
nav.main {
  position: absolute;
  top: 120px;
  left: 0;
  background: #fff;
  padding: 50px 0;
  height: calc(100dvh - 120px);
  max-width: 100vw;
  transition: top 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media screen and (min-width: 760px) {
  nav.main {
    position: relative;
    top: initial;
    left: initial;
    background: none;
    padding: 0;
    height: initial;
    max-width: initial;
    height: 100%;
  }
}
@media screen and (max-width: 760px) {
  nav.main {
    flex-direction: column;
    justify-content: flex-start;
    padding: 50px 0 0 0;
  }
}
nav.main .contact-cta {
  display: none;
}
@media screen and (max-width: 760px) {
  nav.main .contact-cta {
    display: block;
    position: relative;
    bottom: 0;
    left: 0;
    top: initial;
  }
  nav.main .contact-cta .button {
    width: 100%;
    background: var(--primary-color);
    height: 60px;
  }
}
nav.main.inline ul li {
  position: relative;
  margin-bottom: 50px;
  padding: 0 30px 0 50px;
}
@media screen and (min-width: 760px) {
  nav.main.inline ul li {
    margin-right: 20px;
    margin-bottom: 0;
    padding: 0;
  }
}
nav.main.inline ul li button,
nav.main.inline ul li a {
  color: var(--primary-color);
  font-weight: bold;
  font-size: 20px;
  transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
  border: none;
  background: none;
  height: 100%;
  position: relative;
}
@media screen and (min-width: 760px) {
  nav.main.inline ul li button,
  nav.main.inline ul li a {
    font-size: 14px;
  }
}
nav.main.inline ul li button::before,
nav.main.inline ul li a::before {
  position: absolute;
  content: '';
  bottom: calc(50% - 7px);
  left: -50px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 12px;
  border-color: transparent transparent transparent var(--secondary-color);
  opacity: 0;
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media screen and (min-width: 760px) {
  nav.main.inline ul li button::before,
  nav.main.inline ul li a::before {
    left: calc(50% - 6px);
    bottom: 0;
    border-width: 0 7px 12px 7px;
    border-color: transparent transparent var(--secondary-color) transparent;
  }
}
nav.main.inline ul li .submenu {
  position: relative;
  background: var(--color-lightblue);
  margin-left: -50px;
  width: calc(100% + 80px);
  height: 0;
  opacity: 0;
  padding: 0;
  margin-top: 0;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media only screen and (max-height: 763px) {
  nav.main.inline ul li .submenu {
    max-height: calc(100vh - 150px);
    overflow: auto;
  }
  nav.main.inline ul li .submenu::-webkit-scrollbar-button {
    display: block;
    height: 5px;
    border-radius: 0px;
    background-color: #AAA;
    display: none;
  }
  nav.main.inline ul li .submenu::-webkit-scrollbar-button:hover {
    background-color: #AAA;
  }
  nav.main.inline ul li .submenu::-webkit-scrollbar-thumb {
    background-color: var(--primary-color);
  }
  nav.main.inline ul li .submenu::-webkit-scrollbar-thumb:hover {
    background-color: var(--secondary-color);
  }
  nav.main.inline ul li .submenu::-webkit-scrollbar-track {
    background-color: #ddd;
  }
  nav.main.inline ul li .submenu::-webkit-scrollbar-track:hover {
    background-color: #ddd;
  }
  nav.main.inline ul li .submenu::-webkit-scrollbar {
    width: 10px;
  }
}
@media screen and (min-width: 760px) {
  nav.main.inline ul li .submenu {
    display: none;
    position: absolute;
    top: 100%;
    left: -20px;
    width: auto;
    min-width: 100%;
    height: initial;
    margin-top: 0;
    padding: 50px;
    opacity: 1;
  }
}
nav.main.inline ul li .submenu li {
  display: block;
  line-height: initial;
  margin-bottom: 30px;
  padding: 0 15px 0 50px;
}
@media screen and (min-width: 760px) {
  nav.main.inline ul li .submenu li {
    margin-bottom: 50px;
    padding: 0;
  }
}
@media only screen and (max-height: 763px) {
  nav.main.inline ul li .submenu li {
    margin-bottom: 25px;
  }
}
nav.main.inline ul li .submenu li:last-child {
  margin-bottom: 0;
}
nav.main.inline ul li .submenu li a {
  font-size: 16px;
  color: #fff;
}
@media screen and (min-width: 760px) {
  nav.main.inline ul li .submenu li a {
    font-size: 14px;
  }
}
nav.main.inline ul li .submenu li a::before {
  display: none;
}
nav.main.inline ul li:hover > button:hover,
nav.main.inline ul li:hover > a:hover {
  color: var(--text-color);
}
nav.main.inline ul li:hover > button::before,
nav.main.inline ul li:hover > a::before {
  opacity: 1;
}
nav.main.inline ul li:hover > ul {
  display: block;
}
nav.main.inline ul li:hover .sub > a:hover {
  color: var(--text-color);
}
nav.main.inline ul li:hover .sub > a::before {
  opacity: 1;
}
nav.main.inline ul li.active > button,
nav.main.inline ul li.active > a {
  color: #1f384d;
}
nav.main.inline ul li.active > button::before,
nav.main.inline ul li.active > a::before {
  opacity: 1;
}
nav.main.inline ul li.has-sub .sub {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  height: 100%;
}
nav.main.inline ul li.has-sub .toggle-sub {
  width: 20px;
  height: 20px;
  background: none;
  border: none;
  box-shadow: none;
  position: relative;
  margin-left: 15px;
}
@media screen and (min-width: 760px) {
  nav.main.inline ul li.has-sub .toggle-sub {
    display: none;
  }
}
nav.main.inline ul li.has-sub .toggle-sub::before,
nav.main.inline ul li.has-sub .toggle-sub::after {
  position: absolute;
  content: '';
  width: 20px;
  height: 1px;
  background: var(--color-lightblue);
  top: 50%;
  left: 0;
  bottom: initial;
  border: none;
  opacity: 1;
}
nav.main.inline ul li.has-sub .toggle-sub::after {
  transform: rotate(90deg);
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
nav.main.inline ul li.has-sub.active .sub > button,
nav.main.inline ul li.has-sub.active .sub > a {
  color: var(--text-color);
}
nav.main.inline ul li.has-sub.active .sub > button::before,
nav.main.inline ul li.has-sub.active .sub > a::before {
  opacity: 1;
}
nav.main.inline ul li.has-sub.active .toggle-sub::after {
  transform: rotate(0);
  top: 50%;
  left: 0;
}
nav.main.inline ul li.has-sub.active .submenu {
  display: block;
  padding: 30px 0;
  margin-top: 30px;
  height: initial;
  opacity: 1;
}
@media screen and (min-width: 760px) {
  nav.main.inline ul li.has-sub.active .submenu {
    display: none;
    margin-top: 0;
    padding: 50px;
  }
}
nav.main.inline ul li.has-sub.active:hover .submenu {
  display: block;
}
nav.main.inline.open::before {
  position: absolute;
  content: '';
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  background: rgba(204, 231, 243, 0.9);
  z-index: -1;
}
@media screen and (min-width: 760px) {
  nav.main.inline.open::before {
    display: none;
  }
}
.hamburger {
  display: none;
  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: relative;
  z-index: 10;
  flex: 0 0 auto;
}
.hamburger.mb-first {
  justify-content: flex-start;
}
.hamburger .burger {
  width: 70px;
  height: 76px;
  display: inline-block;
  position: relative;
  transform-style: preserve-3d;
  background: rgb(var(--secondary-color, 201, 211, 14));
}
.hamburger .text {
  text-decoration: none;
  margin-left: 0px;
  font-size: 16px;
  position: relative;
  top: 2px;
}
.hamburger em {
  width: 30px;
  height: 2px;
  background: contrast-color(rgb(var(--secondary-color, 201, 211, 14)));
  border-radius: 0px;
  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: 38px;
  left: 20px;
  right: 20px;
}
.hamburger em:before,
.hamburger em:after {
  content: '';
  position: absolute;
  display: block;
  left: 0;
  width: 100%;
  height: 2px;
  background: contrast-color(rgb(var(--secondary-color, 201, 211, 14)));
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.hamburger em::before {
  top: -9px;
}
.hamburger em::after {
  bottom: -9px;
}
.hamburger:hover em::before {
  transform: translateY(-6px);
}
.hamburger:hover em::after {
  transform: translateY(6px);
}
.hamburger.open em {
  background: none;
}
.hamburger.open em::before {
  top: 0;
  transform: rotate(45deg);
}
.hamburger.open em::after {
  bottom: 0;
  transform: rotate(-45deg);
}
@media screen and (min-width: 1200px) {
  .hamburger.dt {
    display: flex;
  }
}
@media screen and (min-width: 920px) {
  .hamburger.rs {
    display: flex;
  }
}
@media screen and (max-width: 760px) {
  .hamburger.mb {
    display: flex;
    align-items: flex-start;
  }
}
.breadcrumb {
  padding: 50px 0;
}
@media screen and (max-width: 560px) {
  .breadcrumb {
    display: none;
  }
}
.breadcrumb ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.breadcrumb ul li {
  margin-right: 10px;
  display: inline-block;
  font-size: 14px;
  color: var(--text-color);
}
.breadcrumb ul li::after {
  content: '\e810';
  font-family: 'iconfont';
  color: var(--primary-color);
  font-size: 12px;
  margin-left: 12px;
}
.breadcrumb ul li:last-child::after {
  display: none;
}
.breadcrumb a {
  display: inline-block;
  text-decoration: none;
  color: var(--text-color);
}
.breadcrumb a:hover {
  color: #E6F3F9;
}
.card-announcement {
  background: #fff;
  padding: 25px;
}
.card-announcement .img {
  position: relative;
}
.card-announcement .img img {
  display: block;
  width: 100% !important;
  height: auto !important;
}
.card-announcement .img .copyright {
  position: absolute;
  left: 0;
  bottom: 0;
  max-width: 100%;
  background: #1F384D;
  color: #fff;
  padding: 10px 15px;
  font-size: 14px;
}
.card-announcement .img .copyright p {
  color: #fff;
  font-size: 14px;
}
.card-announcement .img .copyright p:last-child {
  margin-bottom: 0;
}
.card-announcement .entry {
  padding: 50px 25px;
}
.card-announcement .entry h2 {
  font-size: 1.563rem;
  line-height: 2rem;
  color: var(--primary-color);
}
.teaser-homepage {
  padding-top: 50px;
  position: relative;
}
@media screen and (min-width: 760px) {
  .teaser-homepage {
    padding-top: 200px;
    min-height: 800px;
  }
}
.teaser-homepage::before {
  position: absolute;
  content: '';
  width: calc(100% + 285px);
  height: 100%;
  top: 0;
  left: 0;
  background: url(../gfx/thex-header.webp) no-repeat;
  background-position: right top;
}
@media screen and (min-width: 760px) {
  .teaser-homepage::before {
    width: calc(100% - 130px);
    height: 200%;
    top: 0;
    left: 0;
  }
}
@media only screen and (min-width: 2000px) {
  .teaser-homepage::before {
    background-size: 100%;
  }
}
.teaser-homepage .news-swiper .swiper-pagination {
  height: 14px;
  top: 5px;
  left: 30px;
  right: 30px;
}
.teaser-homepage .news-swiper .swiper-pagination-bullet {
  width: 14px;
  height: 14px;
  border: 1px solid var(--primary-color);
  background: transparent;
  opacity: 1;
}
.teaser-homepage .news-swiper .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--primary-color);
}
.teaser-homepage .claim h1,
.teaser-homepage .claim p {
  color: #fff;
}
.teaser-homepage .teaser-news {
  background: #fff;
  padding: 50px;
}
.teaser-homepage .teaser-news .entry .date {
  color: var(--color-grey);
  margin-bottom: 10px;
}
.teaser-homepage .teaser-news .entry h4 {
  color: var(--primary-color);
  font-size: 16px;
  margin-bottom: 10px;
}
.teaser-homepage .teaser-news .entry .button {
  height: initial;
  margin-bottom: 0;
  padding-bottom: 0;
  overflow: visible;
}
.teaser-homepage .teaser-news .entry .button::before {
  bottom: -4px;
}
.teaser-homepage .pinned-site {
  background: #F2F4C3;
  padding: 50px;
}
.teaser-homepage .pinned-site h4 {
  font-size: 16px;
  color: var(--primary-color);
}
.teaser-homepage .pinned-site.event {
  display: flex;
  flex-direction: row;
  padding: 0;
}
.teaser-homepage .pinned-site.event .date {
  width: 100px;
  flex: 0 0 auto;
  background: var(--primary-color);
  padding: 50px 15px;
  text-align: center;
}
.teaser-homepage .pinned-site.event .date p {
  color: #fff;
  margin-bottom: 5px;
}
.teaser-homepage .pinned-site.event .date p strong {
  font-size: 35px;
}
.teaser-homepage .pinned-site.event .info {
  padding: 50px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.teaser-homepage .pinned-site.event .info .desciption h2 {
  font-size: 20px;
  color: var(--primary-color);
  margin-bottom: 50px;
}
.teaser-homepage .pinned-site.event .info .desciption h2 a {
  font-size: 20px;
  color: var(--primary-color);
}
.teaser-homepage .pinned-site.event .info .location {
  padding-top: 25px;
  border-top: 1px solid var(--secondary-color);
}
.teaser-homepage .pinned-site.event .info .location p {
  margin-bottom: 0;
}
.teaser-award {
  position: relative;
  padding: 50px 0 180px 0;
}
@media screen and (min-width: 760px) {
  .teaser-award {
    padding: 100px 0 180px 0;
  }
}
@media screen and (min-width: 1200px) {
  .teaser-award {
    padding: 100px 0 250px 0;
  }
}
@media screen and (min-width: 1500px) {
  .teaser-award {
    padding: 100px 0 350px 0;
  }
}
.teaser-award::before {
  position: absolute;
  content: '';
  width: 200%;
  height: 100%;
  bottom: 0;
  left: 0;
  background: url(../gfx/thex-award-header.svg) no-repeat;
  background-position: bottom;
  background-size: cover;
}
@media screen and (min-width: 760px) {
  .teaser-award::before {
    width: 150%;
    height: 200%;
    top: 0;
    bottom: initial;
    background-position: top;
    background-size: contain;
  }
}
@media screen and (min-width: 920px) {
  .teaser-award::before {
    width: 100%;
  }
}
@media screen and (min-width: 1200px) {
  .teaser-award::before {
    width: calc(100% - 130px);
  }
}
.teaser-award .content-width {
  z-index: 2;
}
.teaser-award .claim {
  position: relative;
  z-index: 0;
}
.teaser-award .claim::before {
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #222222;
  filter: blur(100px);
  opacity: 0.3;
  z-index: -1;
}
.teaser-award .claim h1,
.teaser-award .claim p {
  color: #fff;
}
.teaser {
  position: relative;
  margin-top: 50px;
}
.teaser::before {
  position: absolute;
  content: '';
  width: 200%;
  height: calc(100vh + 150px);
  top: -90px;
  left: 0;
  background: url(../gfx/teaser-small-bg.svg) no-repeat;
  z-index: -1;
}
@media screen and (min-width: 760px) {
  .teaser::before {
    width: 100%;
  }
}
@media screen and (min-width: 1200px) {
  .teaser::before {
    width: calc(100% - 130px);
  }
}
.teaser .claim ul {
  margin-left: 16px;
}
.teaser .claim ul li {
  list-style: none;
  padding-left: 24px;
  position: relative;
  margin-bottom: 12px;
}
.teaser .claim ul li::before {
  position: absolute;
  content: '';
  left: 0;
  top: 6px;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background: #66B8DA;
}
.teaser .claim ul li > ul > li::before {
  background: transparent;
  border: 2px solid #66B8DA;
}
.teaser .claim ul li > ul > li > ul > li::before {
  border-radius: 0;
  background: #66B8DA;
}
.teaser .claim ul li > ul > li > ul > li ul li::before {
  background: transparent;
  border: 2px solid #66B8DA;
}
.teaser .claim ol {
  margin-left: 14px;
  list-style-type: none;
}
.teaser .claim ol li {
  counter-increment: step-counter;
  padding-left: 26px;
  margin-bottom: 12px;
  position: relative;
}
.teaser .claim ol li::before {
  content: counter(step-counter);
  position: absolute;
  top: 0;
  left: 0;
  color: #66B8DA;
  font-weight: 600;
  font-size: 1rem;
}
.teaser h1 {
  color: var(--primary-color);
}
.teaser .teaser-image {
  width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
  position: relative;
}
.teaser .teaser-image::before {
  position: absolute;
  content: '';
  background: url("../gfx/gradient.svg") no-repeat;
  background-size: cover;
  background-position: bottom left;
  width: 100%;
  height: 100%;
  left: 0;
  bottom: 0;
}
.teaser .teaser-image.no-gradient::before {
  display: none;
}
.teaser .teaser-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.teaser .offer-box .claim p {
  padding: 0;
}
.teaser .offer-box .claim .reachability a {
  color: var(--text-color);
  font-weight: normal;
  display: block;
  margin-bottom: 20px;
}
.teaser .offer-box .claim .reachability a:hover {
  color: var(--primary-color);
}
.teaser .offer-box .claim .person-social {
  margin-top: 50px;
}
@media screen and (min-width: 760px) {
  .teaser .offer-box .claim .person-social {
    margin-top: 100px;
  }
}
.teaser .offer-box .claim .person-social p {
  font-weight: bold;
}
.teaser .offer-box .claim .person-social .btn-bar {
  justify-content: flex-start;
}
.teaser .offer-box .claim .person-social .btn-bar .button {
  margin-right: 10px;
}
.teaser .offer-box .img {
  position: relative;
  width: 100%;
  height: 410px;
}
@media screen and (min-width: 760px) {
  .teaser .offer-box .img {
    height: 650px;
  }
}
.teaser .offer-box .img::before {
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  background: linear-gradient(45deg, rgba(201, 211, 14, 0.9) 0%, rgba(201, 211, 14, 0) 40%, rgba(201, 211, 14, 0) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.teaser .offer-box .img::after {
  position: absolute;
  content: '';
  width: 60%;
  height: 33.333%;
  top: 80%;
  right: -25%;
  background: url("../gfx/pattern.svg") no-repeat;
  z-index: -1;
  opacity: 0.25;
}
.teaser .offer-box .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.teaser .news-box p {
  padding: 0;
}
.teaser .news-box .news-detail {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-bottom: 25px;
}
@media screen and (min-width: 760px) {
  .teaser .news-box .news-detail {
    flex-direction: row;
    align-items: center;
  }
}
.teaser .news-box .news-detail .info {
  display: flex;
  flex-direction: row;
  color: var(--text-color);
  margin-bottom: 25px;
}
@media screen and (min-width: 760px) {
  .teaser .news-box .news-detail .info {
    margin-bottom: 0;
  }
}
.teaser .news-box .news-detail .info span {
  color: var(--primary-color);
  font-weight: bold;
  font-size: 16px;
  margin-right: 10px;
  line-height: 100%;
}
.teaser .news-box .news-detail .info span em {
  color: var(--text-color);
  margin-right: 10px;
}
.teaser .news-box .news-detail .info p {
  line-height: 110%;
  margin-left: 10px;
  margin-bottom: 0;
}
.teaser .news-box .news-detail .news-category {
  display: flex;
  flex-direction: row;
}
.teaser .news-box .news-detail .news-category .tag {
  font-size: 16px;
  line-height: 100%;
  color: var(--primary-color);
  background: #CCE7F3;
  padding: 8px 10px;
  margin-right: 10px;
}
@media screen and (min-width: 760px) {
  .teaser .news-box .news-detail .news-category .tag {
    margin-right: 0;
    margin-left: 10px;
  }
}
.teaser .news-box .img {
  width: 100%;
  height: auto;
}
.teaser .news-box .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.teaser .search {
  display: flex;
  margin-bottom: 50px;
  height: 70px;
  background: #fff;
  position: relative;
  z-index: 3;
}
.teaser .search input::-webkit-search-decoration,
.teaser .search input::-webkit-search-cancel-button,
.teaser .search input::-webkit-search-results-button,
.teaser .search input::-webkit-search-results-decoration {
  -webkit-appearance: none;
}
.teaser .search input {
  width: 100%;
  height: 70px;
  background: #fff;
  border: none;
  padding: 28px 24px;
  font-size: 20px;
}
.teaser .search .button {
  margin: 0 20px 0 0;
  flex: 0 0 auto;
  height: auto;
}
.teaser .search .button::before {
  display: none;
}
.teaser .search .category-filter {
  margin-bottom: 50px;
}
.teaser .autocomplete-list {
  background: #E6F3F9;
  padding: 25px;
  max-height: 290px;
  overflow-y: auto;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
@media screen and (max-width: 760px) {
  .teaser .autocomplete-list {
    left: 0;
    width: 100%;
    max-height: 50vh;
    padding: 25px;
  }
}
.teaser .autocomplete-list .autocomplete-keyword {
  display: block;
  font-size: 24px;
  margin-bottom: 15px;
  cursor: pointer;
  color: #1f384d;
}
@media screen and (max-width: 760px) {
  .teaser .autocomplete-list .autocomplete-keyword {
    font-size: 25px;
  }
}
.teaser .autocomplete-list .autocomplete-keyword:last-child {
  margin-bottom: 0;
}
.teaser .autocomplete-list .autocomplete-keyword span {
  color: var(--primary-color);
}
.teaser .autocomplete-list .autocomplete-keyword:hover,
.teaser .autocomplete-list .autocomplete-keyword.active {
  color: var(--secondary-color);
}
.teaser .autocomplete-list .autocomplete-keyword:hover span,
.teaser .autocomplete-list .autocomplete-keyword.active span {
  color: var(--secondary-color);
}
.teaser .category-filter {
  margin-bottom: 50px;
}
.teaser .category-filter p {
  padding-left: 0;
}
#search-container {
  min-height: 600px;
}
#search-container .contact-persons::before {
  display: none;
}
/*
  Notifications

  Element used for showing various notifications in different styles.

  .success     - Success state
  .warning     - Warning state
  .alert       - Alert state
  .highlight   - In global highlight color
  .center      - Centered style (can be combined with other states)

  Markup:
  <div class="notification {{modifier_class}}">
     <p>I am a notification, I just want to notify.</p>
  </div>

  Style guide: Components.Notifications
*/
.notification {
  border-left: 10px solid #222222;
  background: #bbbbbb;
  margin-bottom: 40px;
  padding: 40px;
  overflow: hidden;
  border-radius: 0px;
}
.notification.success {
  border-color: #6AB023;
  background: #e9f8da;
}
.notification.highlight {
  border-color: #E6F3F9;
  background: #ffffff;
}
.notification.warning {
  border-color: #F18C00;
  background: #ffe4be;
}
.notification.alert {
  border-color: #F13517;
  background: #ffffff;
}
.notification.center {
  text-align: center;
}
.notification p:last-child {
  margin-bottom: 0;
}
/*
  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;
  border-bottom: 1px dotted #000;
}
.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: 0px;
  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: 14px;
  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') rgba(230, 243, 249, 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: 999;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.modal .modal-content {
  opacity: 0;
  transform: translateY(25vh);
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 0.2s;
  width: 600px;
  padding: 20px;
  background: #FFF;
  border: 2px solid #E6F3F9;
  border-radius: 0px;
}
.modal .modal-bg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.8);
}
.modal:target {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.modal:target .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;
}
dialog.dialog-external-link {
  position: fixed;
  z-index: 99999;
  margin: 0 auto;
  top: 50%;
  transform: translateY(-50%);
  padding: 50px;
  border: 0;
  background: #fff;
  width: 90%;
  max-width: 550px;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
dialog.dialog-external-link .dialog-title {
  font-size: 2.188rem;
  font-weight: bold;
  margin-bottom: 40px;
}
dialog.dialog-external-link p {
  margin-bottom: 45px;
}
@media only screen and (max-width: 763px) {
  dialog.dialog-external-link .btn-wrap {
    flex-direction: column;
  }
  dialog.dialog-external-link .btn-wrap .button {
    text-align: center;
    justify-content: center;
    margin-right: 0;
  }
}
body:has(dialog.dialog-external-link[open])::before {
  content: "";
  position: fixed;
  left: 0;
  top: 0;
  background: rgba(204, 231, 243, 0.9);
  z-index: 88888;
  display: block;
  height: 100%;
  width: 100%;
}
#modalContainer dialog {
  inset: 0;
  place-self: center;
  border: 0;
  overflow: visible;
  position: fixed;
  z-index: 99999;
  width: 90%;
  max-width: 1050px;
}
#modalContainer dialog .modal-titel {
  color: #fff;
  padding: 50px;
  font-size: 2.188rem;
  font-weight: 700;
}
@media screen and (max-width: 560px) {
  #modalContainer dialog .modal-titel {
    padding: 30px;
  }
}
#modalContainer dialog .modal-content {
  max-height: calc(100dvh - 200px);
  overflow: auto;
}
#modalContainer dialog .notification {
  border-left: 0;
  background: transparent;
  padding: 0;
  line-height: 100%;
  color: #B3B3B3;
}
#modalContainer dialog .notification p {
  font-size: 0.875rem;
}
#modalContainer dialog .notification:last-child {
  margin-bottom: 0;
}
#modalContainer dialog .notification p:last-child {
  margin-bottom: 0;
}
#modalContainer dialog .col {
  flex: auto;
}
#modalContainer dialog .col:has(figure) {
  padding: 50px;
}
#modalContainer dialog .col:has(figure) figure {
  height: 100%;
}
#modalContainer dialog .col:has(figure) figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media screen and (max-width: 560px) {
  #modalContainer dialog .col:has(figure) {
    padding: 30px;
  }
}
#modalContainer dialog .box-teaser-modal .inner {
  padding: 50px 50px 50px 0;
  color: #1F384D;
}
@media screen and (max-width: 760px) {
  #modalContainer dialog .box-teaser-modal .inner {
    padding: 0 50px 50px 50px;
  }
}
@media screen and (max-width: 560px) {
  #modalContainer dialog .box-teaser-modal .inner {
    padding: 0 30px 30px 30px;
  }
}
#modalContainer dialog .col-1-1 .inner {
  padding: 50px;
}
@media screen and (max-width: 760px) {
  #modalContainer dialog .col-1-1 .inner {
    padding: 50px;
  }
}
@media screen and (max-width: 560px) {
  #modalContainer dialog .col-1-1 .inner {
    padding: 30px;
  }
}
#modalContainer dialog .btn-wrap {
  flex-direction: column;
  align-items: flex-start;
  gap: 30px;
}
#modalContainer dialog .btn-wrap .button {
  margin: 0;
}
#modalContainer dialog h2,
#modalContainer dialog p,
#modalContainer dialog ul li,
#modalContainer dialog ol,
#modalContainer dialog li {
  color: inherit;
}
#modalContainer dialog ul,
#modalContainer dialog ol {
  margin-bottom: 30px;
}
#modalContainer dialog ul {
  padding-left: 20px;
}
#modalContainer dialog h2 {
  color: var(--primary-color);
}
#modalContainer dialog button#modalClose {
  position: absolute;
  right: 0;
  top: 0;
  background: #99D0E6;
  border: none;
  z-index: 999;
  color: #1F384D;
  margin: 0;
  height: 70px;
  width: 70px;
}
#modalContainer dialog button#modalClose em {
  font-size: 1.25rem;
}
body:has(#modalContainer dialog[open])::before {
  content: "";
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 99998;
  background: rgba(230, 243, 249, 0.9);
}
.card {
  height: 100%;
  padding: 25px;
  background: #fff;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
.card figure {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.card figure img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 200px;
  object-fit: cover;
  margin-bottom: 25px;
}
.card figcaption {
  padding: 0;
  display: flex;
  flex-direction: column;
  flex: 1;
  align-items: flex-start;
}
.card figcaption p {
  flex: 1;
}
.card figcaption .small {
  font-size: 16px;
  margin-bottom: 10px;
  color: var(--text-color);
}
.card figcaption ul {
  margin-bottom: 20px;
}
.card figcaption h1 a,
.card figcaption h2 a,
.card figcaption h3 a,
.card figcaption h4 a,
.card figcaption h5 a,
.card figcaption h6 a {
  text-decoration: none;
}
.card figcaption h3,
.card figcaption h4 {
  color: var(--primary-color);
  font-size: 16px;
}
.card figcaption .button {
  margin-bottom: 0;
}
.card.highlight figure img {
  height: 200px;
  object-fit: contain;
  background: #fff;
  padding: 10px;
  border: 1px solid #E6F3F9;
}
.card-fulllink {
  position: relative;
  z-index: 0;
}
.card-fulllink a.btn::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  z-index: 5;
}
.card-swiper.hide-overflow {
  overflow: hidden;
}
.card-swiper .grid {
  flex-wrap: nowrap;
  width: auto;
}
.content-width .card-swiper {
  overflow: hidden;
}
blockquote {
  color: #fff;
  text-align: center;
  padding: 25px 25px 0 25px;
  margin-bottom: 25px;
  line-height: 140%;
  display: flex;
  flex-direction: column;
  align-items: center;
  border: 1px solid var(--color-lightblue);
  position: relative;
}
@media screen and (min-width: 760px) {
  blockquote {
    padding: 50px 100px 0 100px;
  }
}
blockquote::before,
blockquote::after {
  position: absolute;
  content: '';
  width: calc(100% - 50px);
  height: 3px;
  top: -1px;
  left: 25px;
  background: #E6F3F9;
  z-index: 0;
}
@media screen and (min-width: 760px) {
  blockquote::before,
  blockquote::after {
    width: calc(100% - 100px);
    left: 50px;
  }
}
blockquote::after {
  top: initial;
  bottom: -1px;
}
blockquote p {
  font-size: 25px;
  line-height: 120%;
  font-style: italic;
  color: var(--color-lightblue);
  margin: 0;
}
@media screen and (min-width: 760px) {
  blockquote p {
    font-size: 35px;
  }
}
blockquote .author {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-top: 50px;
  margin-bottom: -25px;
  padding-left: 50px;
  position: relative;
  z-index: 1;
  height: 50px;
}
@media screen and (min-width: 760px) {
  blockquote .author {
    padding-left: 75px;
  }
}
blockquote .author::before {
  position: absolute;
  content: '';
  width: 25px;
  height: 1px;
  left: 0;
  top: 50%;
  background: var(--color-lightblue);
}
@media screen and (min-width: 760px) {
  blockquote .author::before {
    width: 50px;
  }
}
blockquote .author .img {
  margin-right: 25px;
  width: 50px;
  height: 50px;
  aspect-ratio: 1/1;
}
blockquote .author .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
blockquote .author .author-info cite {
  font-size: 16px;
  font-style: normal;
  font-weight: bold;
  color: var(--primary-color);
  text-align: left;
  display: block;
}
blockquote .author .author-info span {
  color: var(--text-color);
  font-size: 14px;
}
.highlight blockquote::before,
.highlight blockquote::after {
  background: #fff;
}
.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: #E6F3F9;
}
.gallery .swiper-wrapper {
  margin-bottom: 50px;
}
.gallery .headline {
  position: relative;
}
.gallery .headline .swiper-pagination {
  position: relative;
  max-width: 75%;
  margin: 0 auto;
}
.gallery .headline .swiper-pagination .swiper-pagination-bullet {
  width: 15px;
  height: 1px;
  background: var(--color-lightblue);
  margin: 0 5px;
  opacity: 1;
  border-radius: 0;
}
.gallery .headline .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  height: 2px;
}
.gallery .headline .swiper-button-next,
.gallery .headline .swiper-button-prev {
  width: 30px;
  height: 25px;
  top: calc(50% - 12px);
  margin-top: 0;
}
.gallery .headline .swiper-button-next::after,
.gallery .headline .swiper-button-prev::after {
  font-family: 'iconfont';
  font-size: 25px;
}
.gallery .headline .swiper-button-next::after {
  content: '\e81d';
}
.gallery .headline .swiper-button-prev::after {
  content: '\e813';
}
.row-gallery {
  overflow: hidden;
}
.row-glossar nav.alphabet {
  margin-bottom: 40px;
}
.row-glossar nav.alphabet ul {
  list-style: none;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  overflow-x: auto;
}
.row-glossar nav.alphabet ul li a,
.row-glossar nav.alphabet ul li span {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 3px;
  width: 30px;
  color: var(--primary-color);
  background: #E6F3F9;
}
.row-glossar nav.alphabet ul li a {
  text-decoration: none;
  color: #fff;
  background: var(--primary-color);
}
.row-glossar nav.alphabet ul li a:hover {
  color: #1f384d;
  background: #C9D30E;
}
.row-glossar nav.alphabet ul li + li {
  margin-left: 5px;
}
.glossar-list h2 {
  margin-bottom: 40px;
  scroll-margin-top: 100px;
}
.glossar-list details {
  background: #fff;
  margin-bottom: 25px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
  scroll-margin-top: 100px;
}
.glossar-list details summary {
  user-select: none;
  cursor: pointer;
  font-size: 1.25rem;
  font-weight: bold;
  color: var(--primary-color);
  padding: 20px 25px;
  list-style: none;
}
.glossar-list details summary:hover {
  color: #000;
}
.glossar-list details summary::-webkit-details-marker {
  display: none;
}
.glossar-list details summary em {
  float: right;
  width: 19px;
  height: 19px;
  margin-left: 20px;
  position: relative;
  display: block;
}
.glossar-list details summary em::before,
.glossar-list details summary em::after {
  width: 19px;
  height: 1px;
  position: absolute;
  background: var(--primary-color);
  content: "";
  left: 50%;
  margin-left: -9.5px;
  top: 50%;
}
.glossar-list details summary em::before {
  transform: rotate(90deg);
}
.glossar-list details[open] summary em::before {
  display: none;
}
.glossar-list details .glossar-content {
  padding: 0 25px 25px;
}
.glossar-list details .glossar-content p:last-child {
  margin-bottom: 0;
}
.glossar-list details + h2 {
  margin-top: 40px;
}
.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 {
  float: right;
  position: relative;
  display: block;
  margin-right: 20px;
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.acc-container .acc-headline em::before {
  content: '\e803';
  font-family: 'iconfont' !important;
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 24px;
}
.acc-container .acc-headline.open em {
  transform: scaleY(-1);
}
.acc-container .acc-headline button {
  padding: 20px 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  appearance: none;
  width: 100%;
  font-size: inherit;
  color: inherit;
  text-align: left;
  display: block;
  overflow: visible;
  font-family: inherit;
}
.acc-container .acc-content {
  max-height: 0;
  overflow: hidden;
  padding: 0 20px;
}
.acc-container .acc-content p:first-child {
  padding-top: var(--default-padding);
}
.acc-container .acc-content::before {
  height: 1px;
  background: #DFDFDF;
  content: "";
  width: auto;
  left: 40px;
  right: 40px;
  margin-top: -30px;
  display: block;
  margin-bottom: 30px;
}
.acc-container .acc-content .accordion {
  margin: -31px 30px;
}
.acc-container .acc-content .accordion .acc-content {
  background: #F2F2F2;
}
.acc-container .acc-content .accordion .acc-content::before {
  left: 0;
  right: 0;
  position: absolute;
}
.acc-container .acc-content.panel-open {
  max-height: 100%;
  transition: max-height 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.tabs {
  padding-top: 20px;
  background: #E6F3F9;
  margin-bottom: 80px;
}
.tabs ul {
  margin: 0;
}
.tabs li {
  margin-right: 10px;
  display: inline-block;
}
.tabs .button {
  display: block;
  text-decoration: none;
  background: #FFFFFF;
  color: #1f384d;
  border: none;
}
.table-wrap {
  overflow: auto;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
  margin-right: -20px;
}
@media screen and (min-width: 760px) {
  .table-wrap {
    margin-right: 0;
  }
}
.table-wrap table {
  min-width: 100%;
  overflow: hidden;
  border-collapse: collapse;
  border-spacing: 0;
}
.table-wrap table th,
.table-wrap table td {
  padding: 20px 25px;
  vertical-align: top;
  min-width: 200px;
  font-weight: normal;
  text-align: left;
  font-size: 16px;
  border-right: 1px solid #E6F3F9;
  border-bottom: 1px solid #E6F3F9;
  background: #fff;
  color: var(--text-color);
}
.table-wrap table th:last-of-type,
.table-wrap table td:last-of-type {
  border-right: 0;
}
.table-wrap table th.left,
.table-wrap table td.left {
  text-align: left;
}
.table-wrap table th.right,
.table-wrap table td.right {
  text-align: right;
}
.table-wrap table th.center,
.table-wrap table td.center {
  text-align: center;
}
.table-wrap table th.underline,
.table-wrap table td.underline {
  text-decoration: underline;
}
.table-wrap table th.bold,
.table-wrap table td.bold {
  font-weight: 700;
}
.table-wrap table th.italic,
.table-wrap table td.italic {
  font-style: italic;
}
.table-wrap table th.null,
.table-wrap table td.null {
  color: #fff;
  background: var(--primary-color);
}
.table-wrap table thead tr th {
  font-weight: bold;
  border-bottom: 1px solid var(--primary-color);
}
.table-wrap table thead tr th.null {
  color: #fff;
  background: var(--primary-color);
  border-bottom: 1px solid var(--text-color);
}
.formie-field {
  flex: 1;
}
.contact-cta {
  position: fixed;
  top: 15%;
  right: 0;
  z-index: 150;
}
.contact-cta .button {
  width: 70px;
  height: 70px;
  background: var(--text-color);
  color: #fff;
  border: var(--text-color);
  margin-right: 0;
}
.contact-cta .button:hover {
  background: var(--secondary-color);
  color: var(--text-color);
}
@media screen and (max-width: 760px) {
  #mainContent > .contact-cta {
    display: none;
  }
}
.contact-overlay {
  background: var(--text-color);
  padding: 50px 0 100px 0;
  width: 100vw;
  max-height: calc(100vh - 20%);
  overflow-y: auto;
  position: fixed;
  z-index: 160;
  border: 0;
  max-width: 100%;
  top: 15%;
  left: 0;
  transform: translateX(100%);
  opacity: 0;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.contact-overlay[open] {
  opacity: 1;
  transform: translateX(0);
}
.contact-overlay .formie-form {
  padding: 0;
  background: none;
  box-shadow: none;
}
.contact-overlay .formie-form .formie-field-control {
  border: none;
}
.contact-overlay .formie-form .formie-field-control .formie-group-container {
  border: none;
  padding: 0;
  background: none;
}
.contact-overlay .formie-field .formie-field-label {
  color: #fff;
}
.contact-overlay .formie-message {
  background: #FFFFFF;
  border: 1px solid #FFFFFF;
  border-radius: 0;
  margin-bottom: 30px;
}
.contact-overlay .formie-message p {
  color: #1f384d;
}
.contact-overlay .formie-message p:last-child {
  margin-bottom: 0;
}
.contact-overlay .formie-message.formie-message-error {
  border: 1px solid #F13517;
  background: #FCD7D1;
}
.contact-overlay .formie-message.formie-message-success {
  border: 1px solid #C9D30E;
  background: #C9D30E;
}
.contact-overlay h2,
.contact-overlay p,
.contact-overlay .formie-field label {
  color: #fff;
}
.contact-overlay h2 .formie-field-required,
.contact-overlay p .formie-field-required,
.contact-overlay .formie-field label .formie-field-required {
  color: #fff;
}
.contact-overlay .formie-checkbox-option-label a,
.contact-overlay .formie-agree-option-label a,
.contact-overlay label span a {
  color: #fff;
  border-bottom: 2px solid var(--secondary-color);
  text-decoration: none;
  font-weight: bold;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.contact-overlay .formie-checkbox-option-label a:hover,
.contact-overlay .formie-agree-option-label a:hover,
.contact-overlay label span a:hover {
  color: var(--color-lightblue);
  border-bottom: 2px solid var(--color-lightblue);
}
.contact-overlay .formie-button.formie-button-submit:hover {
  background: #E6F3F9;
  color: var(--text-color);
}
.contact-overlay .close {
  width: 70px;
  height: 70px;
  background: var(--secondary-color);
  position: absolute;
  top: 0;
  right: 0;
  margin-right: 0;
}
.contact-overlay .close:hover {
  background: #E6F3F9;
  color: var(--text-color);
}
.formie-friendly-captcha-placeholder {
  position: relative;
}
.formie-friendly-captcha-placeholder .frc-container .frc-icon {
  margin: 13px 35px 13px 9px;
}
.formie-friendly-captcha-placeholder .frc-container .frc-icon path {
  fill: #CCE7F3;
  border: 1px solid #CCE7F3;
}
.formie-friendly-captcha-placeholder .frc-container .frc-content .frc-text {
  color: #FFFFFF;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 0.5rem;
  display: block;
}
.formie-friendly-captcha-placeholder .frc-container .frc-content .frc-button {
  width: 250px;
  padding: 5px;
  font-size: 14px;
  font-weight: bold;
  color: var(--text-color);
}
.registration-box .formie-friendly-captcha-placeholder .frc-container .frc-icon {
  margin: 13px 35px 13px 9px;
}
.registration-box .formie-friendly-captcha-placeholder .frc-container .frc-icon path {
  fill: #CCE7F3;
  border: 1px solid #CCE7F3;
}
.registration-box .formie-friendly-captcha-placeholder .frc-container .frc-content .frc-text {
  color: inherit;
}
.award-phases {
  position: relative;
}
.award-phases::before {
  position: absolute;
  content: '';
  width: 50%;
  height: 200%;
  top: 0;
  right: 0;
  background: url("../gfx/award-phases-bg.svg") no-repeat;
  background-position: right;
}
.award-phases .grid {
  margin-bottom: -50px;
}
.award-phases .award-steps {
  position: relative;
  z-index: 0;
}
.award-phases .award-steps .step-box {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.award-phases .award-steps .step-box .timeline {
  text-align: center;
  z-index: 1;
  margin-bottom: 50px;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.award-phases .award-steps .step-box .timeline::before {
  position: absolute;
  content: '';
  width: calc(100% + 50px);
  height: 1px;
  background: var(--color-lightblue);
  left: 0;
  top: 40px;
  z-index: -1;
  opacity: 0;
}
@media screen and (min-width: 1200px) {
  .award-phases .award-steps .step-box .timeline::before {
    opacity: 1;
  }
}
.award-phases .award-steps .step-box .timeline .icon {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: var(--primary-color);
  padding: 15px 5px;
  margin-bottom: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
}
.award-phases .award-steps .step-box .timeline .icon img {
  width: 25px;
  height: auto;
}
.award-phases .award-steps .step-box .timeline h4 {
  color: var(--primary-color);
  margin-bottom: 0;
}
.award-phases .award-steps .step-box .step-inner {
  background: #fff;
  padding: 25px;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
  position: relative;
  flex: 1 1 auto;
  width: 100%;
}
.award-phases .award-steps .step-box .step-inner::before {
  position: absolute;
  content: '';
  top: -15px;
  left: calc(50% - 15px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 15px 15px 15px;
  border-color: transparent transparent #ffffff transparent;
}
.award-phases .award-steps .col-1-4:first-child .step-box .timeline::before {
  width: calc(50% + 50px);
  left: 50%;
}
.award-phases .award-steps .col-1-4:last-child .step-box .timeline::before {
  width: 50%;
  left: 0;
}
.award-phases .phases-inner {
  background: #ffffff;
  padding: 50px;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
.award-phases .phases-inner .award-steps .grid {
  margin-right: -25px;
}
.award-phases .phases-inner .award-steps .grid .col-1-4 {
  padding-right: 25px;
}
.award-phases .phases-inner .award-steps .step-box .step-inner {
  background: var(--primary-color);
  box-shadow: none;
}
.award-phases .phases-inner .award-steps .step-box .step-inner::before {
  border-color: transparent transparent var(--primary-color) transparent;
}
.award-phases .phases-inner .award-steps .step-box .step-inner h2,
.award-phases .phases-inner .award-steps .step-box .step-inner h3,
.award-phases .phases-inner .award-steps .step-box .step-inner h4,
.award-phases .phases-inner .award-steps .step-box .step-inner p {
  color: #fff;
}
.award-category .category-box {
  display: flex;
  flex-direction: row;
  background: #fff;
  height: 100%;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
@media screen and (max-width: 560px) {
  .award-category .category-box {
    flex-direction: column;
  }
}
.award-category .category-box .left {
  background: var(--primary-color);
  width: 40%;
  flex: 0 0 auto;
  padding: 25px;
}
@media screen and (max-width: 560px) {
  .award-category .category-box .left {
    width: 100%;
  }
}
.award-category .category-box .left .img {
  margin-right: -50px;
  margin-bottom: 25px;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 560px) {
  .award-category .category-box .left .img {
    margin-right: 0;
  }
}
.award-category .category-box .left .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.award-category .category-box .left h4,
.award-category .category-box .left p,
.award-category .category-box .left p strong {
  color: #fff;
}
.award-category .category-box .right {
  padding: 25px 25px 25px 50px;
}
@media screen and (max-width: 560px) {
  .award-category .category-box .right {
    padding-left: 25px;
  }
}
.stoerer {
  padding: 50px 100px;
  background: #CCE7F3;
}
.stoerer.newsletter {
  background: var(--primary-color) url("../gfx/highlight-bg.webp") no-repeat;
  background-size: cover;
}
.stoerer.award {
  background: url("../gfx/headergrafik-thex-award.svg") no-repeat;
  background-size: cover;
  overflow: hidden;
}
.stoerer.award .stoerer-inner {
  position: relative;
  z-index: 0;
}
.stoerer.award .stoerer-inner::before {
  position: absolute;
  content: '';
  width: 80%;
  height: 80%;
  top: 10%;
  left: 10%;
  background: #222222;
  filter: blur(100px);
  opacity: 0.3;
  z-index: -1;
}
.stoerer.newsletter dialog,
.stoerer.award dialog {
  text-align: left;
}
.stoerer.newsletter h2,
.stoerer.award h2,
.stoerer.newsletter p,
.stoerer.award p,
.stoerer.newsletter .button.link,
.stoerer.award .button.link {
  color: #fff;
}
.stoerer.newsletter h2::before,
.stoerer.award h2::before,
.stoerer.newsletter p::before,
.stoerer.award p::before,
.stoerer.newsletter .button.link::before,
.stoerer.award .button.link::before {
  display: none;
}
.stoerer.newsletter h2:hover em,
.stoerer.award h2:hover em,
.stoerer.newsletter p:hover em,
.stoerer.award p:hover em,
.stoerer.newsletter .button.link:hover em,
.stoerer.award .button.link:hover em {
  color: #fff;
}
.sponsors .grid {
  margin-bottom: -50px;
}
.sponsors .sponsor-box {
  background: #fff;
  padding: 25px;
  height: 100%;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
.sponsors .sponsor-box .img {
  height: 130px;
}
.sponsors .sponsor-box .img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.sponsors .sponsor-box h3 {
  margin-top: 25px;
  font-size: 20px;
  margin-bottom: 0;
  color: var(--text-color);
}
.text-image {
  display: inline-block;
}
.text-image .text {
  padding: 0;
  overflow: hidden;
}
.text-image .text .text-content {
  margin-bottom: 0;
}
.text-image .text h2,
.text-image .text h3,
.text-image .text h4 {
  margin-left: 0;
}
.text-image .img {
  width: 100%;
  margin-bottom: 25px;
  position: relative;
}
@media screen and (min-width: 760px) {
  .text-image .img {
    width: calc(50% - 25px);
    float: left;
    margin: 0 50px 0 0;
  }
  .text-image .img.width-33 {
    width: calc(33.333333% - (50px / 3 * 2));
  }
  .text-image .img.width-66 {
    width: calc(66.666666% - 25px);
  }
}
.text-image .img img {
  width: 100%;
  height: auto;
  display: block;
}
.text-image .img .copyright {
  background: rgba(31, 56, 77, 0.9);
  padding: 15px;
  position: absolute;
  bottom: 0;
  left: 0;
  max-width: 75%;
}
.text-image .img .copyright p {
  color: #fff;
  margin: 0;
  font-size: 14px;
}
.text-image.top {
  display: flex;
  flex-direction: column;
}
.text-image.top .headline {
  padding: 0;
  text-align: left;
}
.text-image.top .img {
  width: 100%;
  float: initial;
}
.text-image.top .col-1-1 + .text {
  margin-top: 100px;
}
@media screen and (max-width: 760px) {
  .text-image.top .col-1-1 + .text {
    margin-top: 50px;
  }
}
.text-image.bottom {
  display: flex;
  flex-direction: column-reverse;
}
.text-image.bottom .headline {
  padding: 0;
  text-align: left;
}
.text-image.bottom .img {
  width: 100%;
  float: initial;
}
.reverse .text-image .text {
  padding-right: 0;
}
@media screen and (min-width: 760px) {
  .reverse .text-image .text .button {
    margin-left: 20px;
    margin-right: 0;
  }
}
@media screen and (min-width: 760px) {
  .reverse .text-image .img {
    float: right;
    margin: 0 0 0 50px;
  }
}
.text-content {
  margin-bottom: -20px;
}
.text-content.center {
  text-align: center;
}
@media screen and (min-width: 760px) {
  .text-content.right {
    text-align: right;
  }
}
.text-content p ul,
.text-content ul ul,
.text-content ol ul,
.text-content p ol,
.text-content ul ol,
.text-content ol ol {
  padding: 12px 0 0 0;
}
.text-content ul {
  margin-left: 16px;
}
.text-content ul li {
  list-style: none;
  padding-left: 24px;
  position: relative;
  margin-bottom: 12px;
}
.text-content ul li::before {
  position: absolute;
  content: '';
  left: 0;
  top: 6px;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background: var(--color-lightblue);
}
.text-content ul li > ul > li::before {
  background: transparent;
  border: 2px solid var(--color-lightblue);
}
.text-content ul li > ul > li > ul > li::before {
  border-radius: 0;
  background: var(--color-lightblue);
}
.text-content ul li > ul > li > ul > li ul li::before {
  background: transparent;
  border: 2px solid var(--color-lightblue);
}
.text-content ol {
  margin-left: 14px;
  list-style-type: none;
}
.text-content ol li {
  counter-increment: step-counter;
  padding-left: 26px;
  margin-bottom: 12px;
  position: relative;
}
.text-content ol li::before {
  content: counter(step-counter);
  position: absolute;
  top: 0;
  left: 0;
  color: #66B8DA;
  font-weight: 600;
  font-size: 1rem;
}
.image {
  width: 100%;
  position: relative;
}
.image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}
.image .copyright {
  background: rgba(31, 56, 77, 0.9);
  padding: 15px;
  position: absolute;
  bottom: 0;
  left: 0;
  max-width: 75%;
}
.image .copyright p {
  color: #fff;
  margin: 0;
  font-size: 14px;
}
.image.video {
  position: relative;
}
.image.video::after {
  position: absolute;
  content: '';
  background: url("../gfx/pattern.svg") no-repeat;
  background-position: bottom left;
  width: 33.3333%;
  height: 220px;
  left: 7px;
  bottom: -110px;
  opacity: 0.25;
  pointer-events: none;
}
.image.video .videoelements {
  height: 100%;
}
.image.video .videoelements::before {
  position: absolute;
  content: '';
  background: url("../gfx/video-triangle.svg") no-repeat;
  background-position: bottom left;
  width: 500px;
  max-width: 100%;
  height: 100%;
  left: 0;
  bottom: 0;
}
.image.video .videoelements::after {
  position: absolute;
  content: '';
  background: url("../gfx/gradient.svg") no-repeat;
  background-position: bottom;
  width: 50%;
  height: 100%;
  left: 0;
  bottom: 0;
}
.image.video .video-play-btn {
  position: absolute;
  bottom: 50px;
  left: 50px;
  padding-left: 100px;
  background: none;
  border: none;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  color: #fff;
  height: 75px;
  z-index: 1;
}
.image.video .video-play-btn::before {
  position: absolute;
  content: '\e810';
  font-family: 'iconfont';
  font-size: 75px;
  top: 0;
  left: 0;
}
.image.video .embed-container {
  position: relative;
  padding-bottom: 56.25%;
  /* ratio 16x9 */
  height: 0;
  overflow: hidden;
  width: 100%;
  height: auto;
}
.image.video .embed-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.image.video video {
  width: 100%;
  height: auto;
}
.collage .grid {
  margin-right: -10px;
}
.collage .grid [class*="col-"] {
  padding-right: 10px;
  margin-bottom: 10px;
}
.collage .image {
  width: 100%;
  height: 100%;
}
.collage .col-1-3 .image {
  width: 100%;
  height: calc(50% - 5px);
}
.collage .col-1-3 .image:first-child {
  margin-bottom: 10px;
}
.collage-dynamic .grid {
  position: relative;
  margin: 0;
}
.collage-dynamic .col-1-3 .image {
  height: auto;
}
.collage-dynamic .col-1-3 .image:first-child {
  margin-bottom: 0;
}
.collage-dynamic .col-1-3 .image + .image {
  margin-top: 10px;
}
.collage-dynamic .image {
  position: relative;
  margin-bottom: 0;
}
.registration-box {
  background: #fff;
  color: var(--primary-color);
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
  font-size: 20px;
  font-weight: 600;
  padding: 25px;
  width: 100%;
  border: none;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media screen and (min-width: 760px) {
  .registration-box {
    padding: 50px;
  }
}
.registration-box .registration-text {
  margin-bottom: 50px;
}
a.registration-box,
button.registration-box {
  display: block;
  text-align: center;
  text-decoration: none;
}
a.registration-box.active,
button.registration-box.active,
a.registration-box:hover,
button.registration-box:hover {
  color: var(--text-color);
  background: var(--secondary-color);
}
.registration-form .formie-nested-field-row,
.formie-form .formie-nested-field-row {
  margin-left: calc(-1 * 25px);
  margin-right: calc(-1 * 25px);
  display: flex;
  flex-direction: column;
  gap: 0;
}
@media screen and (min-width: 760px) {
  .registration-form .formie-nested-field-row,
  .formie-form .formie-nested-field-row {
    flex-direction: row;
  }
}
.registration-form .formie-nested-field-row .formie-field,
.formie-form .formie-nested-field-row .formie-field {
  padding-left: 25px;
  padding-right: 25px;
  margin-bottom: 24px !important;
  width: 100%;
}
.registration-form .formie-nested-field-row .formie-field .formie-field,
.formie-form .formie-nested-field-row .formie-field .formie-field {
  padding-left: 0;
  padding-right: 0;
}
.registration-form .formie-nested-field-row .formie-field[data-formie-field-type="heading"],
.formie-form .formie-nested-field-row .formie-field[data-formie-field-type="heading"] {
  margin-bottom: 0 !important;
}
.registration-form .formie-nested-field-row .formie-subfield-row,
.formie-form .formie-nested-field-row .formie-subfield-row {
  display: flex;
  gap: 50px;
  flex-direction: column;
}
@media screen and (min-width: 760px) {
  .registration-form .formie-nested-field-row .formie-subfield-row,
  .formie-form .formie-nested-field-row .formie-subfield-row {
    flex-direction: row;
  }
}
.registration-form .formie-nested-field-row .formie-subfield-row .formie-field,
.formie-form .formie-nested-field-row .formie-subfield-row .formie-field {
  margin-bottom: 0 !important;
}
.registration-form .registration-steps,
.formie-form .registration-steps,
.registration-form .formie-page-tabs,
.formie-form .formie-page-tabs {
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin-bottom: 100px;
  border: none;
}
.registration-form .registration-steps .formie-tab,
.formie-form .registration-steps .formie-tab,
.registration-form .formie-page-tabs .formie-tab,
.formie-form .formie-page-tabs .formie-tab {
  border: none;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding: 0;
  width: 100px;
}
@media screen and (min-width: 760px) {
  .registration-form .registration-steps .formie-tab,
  .formie-form .registration-steps .formie-tab,
  .registration-form .formie-page-tabs .formie-tab,
  .formie-form .formie-page-tabs .formie-tab {
    width: 220px;
  }
}
.registration-form .registration-steps .formie-tab a,
.formie-form .registration-steps .formie-tab a,
.registration-form .formie-page-tabs .formie-tab a,
.formie-form .formie-page-tabs .formie-tab a {
  font-size: 14px;
  font-family: Arial, Helvetica, sans-serif;
  color: #B3B3B3;
  text-align: center;
  display: none;
}
@media screen and (min-width: 760px) {
  .registration-form .registration-steps .formie-tab a,
  .formie-form .registration-steps .formie-tab a,
  .registration-form .formie-page-tabs .formie-tab a,
  .formie-form .formie-page-tabs .formie-tab a {
    display: block;
  }
}
.registration-form .registration-steps .formie-tab .step-number,
.formie-form .registration-steps .formie-tab .step-number,
.registration-form .formie-page-tabs .formie-tab .step-number,
.formie-form .formie-page-tabs .formie-tab .step-number {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--color-lightblue);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 15px;
  z-index: 0;
}
.registration-form .registration-steps .formie-tab .step-number::before,
.formie-form .registration-steps .formie-tab .step-number::before,
.registration-form .formie-page-tabs .formie-tab .step-number::before,
.formie-form .formie-page-tabs .formie-tab .step-number::before,
.registration-form .registration-steps .formie-tab .step-number::after,
.formie-form .registration-steps .formie-tab .step-number::after,
.registration-form .formie-page-tabs .formie-tab .step-number::after,
.formie-form .formie-page-tabs .formie-tab .step-number::after {
  position: absolute;
  content: '';
  background: #CCE7F3;
  height: 1px;
  width: calc(50% - 25px);
  left: 0;
  top: 25px;
  z-index: -1;
}
.registration-form .registration-steps .formie-tab .step-number::after,
.formie-form .registration-steps .formie-tab .step-number::after,
.registration-form .formie-page-tabs .formie-tab .step-number::after,
.formie-form .formie-page-tabs .formie-tab .step-number::after {
  left: calc(50% + 25px);
}
.registration-form .registration-steps .formie-tab .step-number em,
.formie-form .registration-steps .formie-tab .step-number em,
.registration-form .formie-page-tabs .formie-tab .step-number em,
.formie-form .formie-page-tabs .formie-tab .step-number em {
  color: #B3B3B3;
  font-style: normal;
  font-weight: normal;
  font-size: 20px;
}
.registration-form .registration-steps .formie-tab:first-child .step-number::before,
.formie-form .registration-steps .formie-tab:first-child .step-number::before,
.registration-form .formie-page-tabs .formie-tab:first-child .step-number::before,
.formie-form .formie-page-tabs .formie-tab:first-child .step-number::before {
  display: none;
}
.registration-form .registration-steps .formie-tab:last-child .step-number::after,
.formie-form .registration-steps .formie-tab:last-child .step-number::after,
.registration-form .formie-page-tabs .formie-tab:last-child .step-number::after,
.formie-form .formie-page-tabs .formie-tab:last-child .step-number::after {
  display: none;
}
.registration-form .registration-steps .formie-tab.formie-tab-current a,
.formie-form .registration-steps .formie-tab.formie-tab-current a,
.registration-form .formie-page-tabs .formie-tab.formie-tab-current a,
.formie-form .formie-page-tabs .formie-tab.formie-tab-current a {
  color: var(--text-color);
  font-weight: 400;
}
.registration-form .registration-steps .formie-tab.formie-tab-current .step-number,
.formie-form .registration-steps .formie-tab.formie-tab-current .step-number,
.registration-form .formie-page-tabs .formie-tab.formie-tab-current .step-number,
.formie-form .formie-page-tabs .formie-tab.formie-tab-current .step-number {
  background: var(--secondary-color);
}
.registration-form .registration-steps .formie-tab.formie-tab-current .step-number em,
.formie-form .registration-steps .formie-tab.formie-tab-current .step-number em,
.registration-form .formie-page-tabs .formie-tab.formie-tab-current .step-number em,
.formie-form .formie-page-tabs .formie-tab.formie-tab-current .step-number em {
  color: var(--text-color);
}
.registration-form .registration-steps .formie-tab.done a,
.formie-form .registration-steps .formie-tab.done a,
.registration-form .formie-page-tabs .formie-tab.done a,
.formie-form .formie-page-tabs .formie-tab.done a {
  position: relative;
}
.registration-form .registration-steps .formie-tab.done a::before,
.formie-form .registration-steps .formie-tab.done a::before,
.registration-form .formie-page-tabs .formie-tab.done a::before,
.formie-form .formie-page-tabs .formie-tab.done a::before {
  position: absolute;
  content: '\e806';
  font-family: 'iconfont';
  font-size: 19px;
  color: var(--primary-color);
}
.registration-form h3,
.formie-form h3 {
  color: ;
  margin-bottom: 10px;
}
.registration-form h4,
.formie-form h4 {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 150%;
  margin: 0 0 20px;
  color: #B3B3B3;
}
.registration-form .formie-button-container,
.formie-form .formie-button-container {
  display: flex;
  justify-content: space-between !important;
}
.formie-group-container {
  background: #E6F3F9;
  padding: 25px;
  margin-bottom: 25px;
  position: relative;
  border: none !important;
  border-radius: 0px !important;
}
@media screen and (min-width: 760px) {
  .formie-group-container {
    padding: 50px;
    margin-bottom: 50px;
  }
}
.registration-section,
.formie-repeater-container {
  margin-bottom: 50px;
}
.registration-section .formie-repeater-item,
.formie-repeater-container .formie-repeater-item,
.registration-section .section-box,
.formie-repeater-container .section-box {
  background: #E6F3F9;
  padding: 25px;
  margin-bottom: 25px;
  position: relative;
  border: none;
  border-radius: 0px;
}
@media screen and (min-width: 760px) {
  .registration-section .formie-repeater-item,
  .formie-repeater-container .formie-repeater-item,
  .registration-section .section-box,
  .formie-repeater-container .section-box {
    padding: 50px;
    margin-bottom: 50px;
  }
}
.registration-section .formie-repeater-item .grid,
.formie-repeater-container .formie-repeater-item .grid,
.registration-section .section-box .grid,
.formie-repeater-container .section-box .grid {
  margin-bottom: -24px;
}
.registration-section .formie-repeater-item h3,
.formie-repeater-container .formie-repeater-item h3,
.registration-section .section-box h3,
.formie-repeater-container .section-box h3 {
  color: var(--color-lightblue);
}
.registration-section .formie-repeater-remove-button,
.formie-repeater-container .formie-repeater-remove-button,
.registration-section .delete,
.formie-repeater-container .delete {
  position: absolute;
  top: 25px;
  right: 25px;
  width: 20px;
  height: 20px;
  border-radius: 0px;
  background: none;
  border: none;
  padding: 0;
}
@media screen and (min-width: 760px) {
  .registration-section .formie-repeater-remove-button,
  .formie-repeater-container .formie-repeater-remove-button,
  .registration-section .delete,
  .formie-repeater-container .delete {
    top: 50px;
    right: 50px;
  }
}
.registration-section .formie-repeater-remove-button::after,
.formie-repeater-container .formie-repeater-remove-button::after,
.registration-section .delete::after,
.formie-repeater-container .delete::after {
  display: none;
}
.registration-section .formie-repeater-remove-button:before,
.formie-repeater-container .formie-repeater-remove-button:before,
.registration-section .delete:before,
.formie-repeater-container .delete:before {
  text-indent: 0;
  font-family: "iconfont";
  font-style: normal;
  font-size: 15px;
  content: '\e807';
  position: absolute;
  color: var(--primary-color);
  background: none;
  width: 20px;
  height: 20px;
  top: 0;
  left: 0;
  border: none;
}
.registration-section .formie-repeater-remove-button:hover,
.formie-repeater-container .formie-repeater-remove-button:hover,
.registration-section .delete:hover,
.formie-repeater-container .delete:hover {
  background: none;
}
.registration-section .formie-repeater-remove-button:hover::before,
.formie-repeater-container .formie-repeater-remove-button:hover::before,
.registration-section .delete:hover::before,
.formie-repeater-container .delete:hover::before {
  background: none;
}
.formie-button {
  border: none !important;
  border-radius: 0 !important;
  height: 50px;
  background: var(--primary-color);
  color: #fff;
  text-transform: uppercase;
  font-weight: bold !important;
  font-size: 14px !important;
}
.formie-button:hover {
  background: var(--text-color);
}
.formie-button:focus {
  background: var(--text-color);
}
.formie-button.formie-button-back {
  background: var(--primary-color);
}
.formie-button.formie-button-back:hover {
  background: var(--text-color);
}
.formie-button.formie-button-back:focus {
  background: var(--text-color);
}
.formie-button.formie-button-submit {
  background: var(--secondary-color);
  color: var(--text-color);
}
.formie-button.formie-button-submit:hover {
  background: var(--text-color);
  color: #fff;
}
.formie-button.formie-button-submit:focus {
  background: var(--text-color);
}
.formie-button.formie-button-submit.formie-button-next {
  background: var(--primary-color);
  color: #fff;
}
.formie-button.formie-button-submit.formie-button-next:hover {
  background: var(--text-color);
}
.formie-button.formie-button-submit.formie-button-next:focus {
  background: var(--text-color);
}
.formie-button.formie-button-ghost,
.formie-button.formie-repeater-add-button {
  background: none;
  color: var(--primary-color);
  text-decoration: none;
  padding: 0;
  position: relative;
}
.formie-button.formie-button-ghost::after,
.formie-button.formie-repeater-add-button::after {
  display: none;
}
.formie-button.formie-button-ghost::before,
.formie-button.formie-repeater-add-button::before {
  position: absolute;
  content: '';
  width: 100%;
  height: 1px;
  background: var(--secondary-color);
  bottom: 10px;
  left: 0;
  transition: background-color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.formie-button.formie-button-ghost:hover,
.formie-button.formie-repeater-add-button:hover {
  color: var(--text-color);
  text-decoration: none;
  background: none;
}
.formie-button.formie-button-ghost:hover::before,
.formie-button.formie-repeater-add-button:hover::before {
  background: var(--text-color);
}
.formie-button.formie-button-ghost:focus,
.formie-button.formie-repeater-add-button:focus {
  text-decoration: none;
  background: none;
}
.formie-page-buttons {
  display: flex;
  flex-direction: column-reverse !important;
}
@media screen and (min-width: 760px) {
  .formie-page-buttons {
    flex-direction: row-reverse !important;
  }
}
.formie-page-buttons .formie-button-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 760px) {
  .formie-page-buttons .formie-button-container {
    flex-direction: row;
  }
}
.formie-page-buttons .formie-button-container .formie-button {
  width: 100%;
  text-align: center;
  margin-top: 10px;
}
@media screen and (min-width: 760px) {
  .formie-page-buttons .formie-button-container .formie-button {
    width: auto;
    margin-top: 0;
  }
}
.formie-page-buttons .formie-button-container .formie-button.formie-button-ghost {
  width: auto;
}
.tabcontent {
  animation: fadeEffect 1s;
  /* Fading effect takes 1 second */
}
/* Go from zero to full opacity */
@keyframes fadeEffect {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.news-teaser {
  position: relative;
}
.news-teaser::before {
  position: absolute;
  content: '';
  width: 50%;
  height: 200%;
  top: -50%;
  right: 0;
  background: url(../gfx/award-phases-bg.svg) no-repeat;
  background-position: right;
}
.news-teaser .btn-bar {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 50px;
}
.news-teaser .swiper {
  margin-right: 80px;
  overflow: visible !important;
}
.news-teaser .swiper .swiper-slide {
  height: auto;
}
@media screen and (min-width: 760px) {
  .news-teaser .swiper {
    margin-right: 0;
    overflow: hidden;
  }
}
.news-teaser .image {
  margin-bottom: 25px;
}
.news-teaser .image img {
  margin-bottom: 0;
}
.contact-persons {
  position: relative;
}
.contact-persons::before {
  position: absolute;
  content: '';
  width: 150px;
  height: 200px;
  top: -148px;
  left: 0;
  background: url(../gfx/contact-bg.svg) no-repeat;
  background-position: left;
}
@media screen and (min-width: 1200px) {
  .contact-persons::before {
    width: 460px;
    height: 550px;
    top: -266px;
  }
}
.contact-persons .contact-person h4 {
  margin-bottom: 5px;
}
.contact-persons .contact-person .icon-before {
  padding-left: 35px;
  position: relative;
}
.contact-persons .contact-person .icon-before::before {
  position: absolute;
  left: 0;
  font-size: 20px;
}
.contact-persons .contact-person a {
  margin-bottom: 25px;
  text-decoration: none;
  color: #1f384d;
  transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.contact-persons .contact-person a:hover {
  color: var(--primary-color);
}
.contact-persons .card.highlight {
  background: #E6F3F9;
}
.contact-persons .card.highlight figure img {
  border: none;
}
.box {
  padding: 25px;
  background: #fff;
  height: 100%;
}
.box figure {
  display: flex;
  flex-direction: column;
  height: 100%;
}
@media screen and (min-width: 760px) {
  .box figure {
    flex-direction: row;
  }
}
.box figure .img {
  width: 100%;
  flex: 0 0 auto;
  margin-bottom: 25px;
  object-fit: cover;
}
.box figure .img img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 760px) {
  .box figure .img {
    width: calc(50% - 25px);
    margin-right: 25px;
    margin-bottom: 0;
  }
}
.box figure figcaption {
  display: flex;
  flex-direction: column;
}
.box figure figcaption small {
  font-size: 14px;
  display: block;
  margin-bottom: 10px;
}
.box figure figcaption p {
  flex: 1;
}
.box figure figcaption h3 {
  color: var(--primary-color);
}
.box figure figcaption .button {
  margin-bottom: 0;
  align-self: flex-start;
}
.crossteaser .swiper {
  overflow: visible;
}
.crossteaser .swiper .swiper-wrapper .swiper-slide {
  height: auto;
}
.category-filter .filter {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.category-filter .filter .form-item {
  margin-right: 10px;
  margin-bottom: 10px;
}
.category-filter .filter .form-item .tag {
  width: 100%;
  height: 100%;
  position: absolute;
  border: none;
  outline: none;
  opacity: 0;
  cursor: pointer;
}
.category-filter .filter .form-item .tag:hover + label,
.category-filter .filter .form-item .tag:checked + label {
  background: var(--secondary-color);
  color: var(--text-color);
}
.category-filter .filter .form-item .tag:focus + label {
  outline: 2px solid #000;
  outline-offset: 2px;
}
.category-filter .filter .form-item label {
  color: var(--primary-color);
  background: #CCE7F3;
  padding: 8px 10px;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
  cursor: pointer;
  font-weight: normal;
  margin-bottom: 0;
}
.category-filter .filter .form-item label:hover {
  background: var(--primary-color);
  color: #fff;
}
.calendar-filter {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (min-width: 920px) {
  .calendar-filter {
    flex-direction: row;
  }
}
@media screen and (min-width: 920px) {
  .calendar-filter .category-filter {
    max-width: 50%;
  }
}
.calendar-filter .category-filter p {
  padding: 0;
}
.calendar-filter .calendar-view {
  flex: 0 0 auto;
}
.calendar-filter .calendar-view p {
  padding: 0;
}
.calendar-filter .calendar-view .btn-bar {
  justify-content: flex-start;
}
.calendar-filter .calendar-view .btn-bar .button {
  background: #CCE7F3;
  color: #0089C1;
  border-color: #CCE7F3;
  width: 50px;
  padding: 0;
  display: flex;
  justify-content: center;
}
.calendar-filter .calendar-view .btn-bar .button:hover {
  background: var(--text-color);
  color: #fff;
  border-color: var(--text-color);
}
.calendar-filter .calendar-view .btn-bar .button.active {
  background: var(--secondary-color);
  color: var(--text-color);
  border-color: var(--secondary-color);
}
.calendar-filter .calendar-view .btn-bar .button.active:hover {
  background: var(--secondary-color);
  color: var(--text-color);
  border-color: var(--secondary-color);
}
.fc {
  background: #fff;
  padding: 50px;
}
.fc .fc-header-toolbar {
  margin-bottom: 0 !important;
}
.fc .fc-dayGridMonth-view .fc-day.fc-col-header-cell {
  background: var(--primary-color);
  padding: 18px;
  border: 1px solid var(--primary-color);
}
.fc .fc-dayGridMonth-view .fc-day.fc-col-header-cell .fc-col-header-cell-cushion {
  color: #fff;
  font-size: 16px;
}
.fc .fc-dayGridMonth-view .fc-scrollgrid {
  border: none;
}
.fc .fc-dayGridMonth-view .fc-scrollgrid-section-body > td {
  border: 1px solid #E6F3F9;
}
.fc .fc-dayGridMonth-view .fc-day {
  padding: 7px;
  border: 1px solid #E6F3F9;
}
.fc .fc-dayGridMonth-view .fc-day .fc-daygrid-day-top {
  flex-direction: row;
}
.fc .fc-dayGridMonth-view .fc-day .fc-daygrid-day-top a {
  font-size: 20px;
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.fc .fc-dayGridMonth-view .fc-day .fc-daygrid-day-events .fc-event {
  background: none;
  border: none;
  border-radius: 0;
  white-space: break-spaces;
  margin: 0 5px 20px 10px;
  padding-bottom: 10px;
  position: relative;
}
.fc .fc-dayGridMonth-view .fc-day .fc-daygrid-day-events .fc-event::before {
  position: absolute;
  content: '';
  width: 50px;
  height: 1px;
  bottom: 0;
  left: 0;
  background: #C9D30E;
}
.fc .fc-dayGridMonth-view .fc-day .fc-daygrid-day-events .fc-event .fc-event-main {
  color: var(--primary-color);
  font-size: 14px;
  font-weight: bold;
  transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.fc .fc-dayGridMonth-view .fc-day .fc-daygrid-day-events .fc-event .fc-event-main:hover {
  color: var(--text-color);
}
.fc .fc-dayGridMonth-view .fc-day.fc-day-today {
  background: none;
}
.fc .fc-dayGridMonth-view .fc-day.fc-day-today .fc-daygrid-day-top a {
  background: var(--secondary-color);
  border-radius: 50%;
}
.fc .fc-dayGridMonth-view .fc-day.fc-day-other {
  background: #F3F9FC;
}
.fc .fc-dayGridMonth-view .fc-day.fc-day-other .fc-daygrid-day-top a {
  color: #1F384D;
}
.mini-calendar {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.mini-calendar .month-selection {
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}
.mini-calendar .month-selection button {
  cursor: pointer;
  background: transparent;
  font-size: 16px;
  color: var(--primary-color);
  border: 0;
  width: 24px;
  height: 24px;
}
.mini-calendar .month-selection button:hover {
  color: var(--text-color);
}
.mini-calendar .button.link {
  margin: 0;
}
.mini-calendar .fc {
  background: #fff;
  padding: 0;
}
.mini-calendar .fc .fc-daygrid-day-frame {
  min-height: initial;
}
.mini-calendar .fc .fc-view-harness {
  height: 100% !important;
}
.mini-calendar .fc .fc-view-harness.fc-view-harness-active > .fc-view {
  position: relative;
}
.mini-calendar .fc .fc-view-harness.fc-view-harness-active > .fc-view .fc-scroller-liquid-absolute {
  position: relative;
}
.mini-calendar .fc .fc-dayGridMonth-view .fc-col-header {
  margin-bottom: 0;
}
.mini-calendar .fc .fc-dayGridMonth-view .fc-day.fc-col-header-cell {
  background: var(--primary-color);
  padding: 0;
  border: 1px solid var(--primary-color);
  width: 50px;
  height: 50px;
}
.mini-calendar .fc .fc-dayGridMonth-view .fc-day.fc-col-header-cell .fc-scrollgrid-sync-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.mini-calendar .fc .fc-dayGridMonth-view .fc-day.fc-col-header-cell .fc-scrollgrid-sync-inner .fc-col-header-cell-cushion {
  color: #fff;
  font-size: 14px;
  word-break: keep-all;
  margin-bottom: 0;
  padding: 0;
}
.mini-calendar .fc .fc-dayGridMonth-view .fc-day {
  padding: 10px;
}
.mini-calendar .fc .fc-dayGridMonth-view .fc-day .fc-daygrid-day-top {
  flex-direction: row;
}
.mini-calendar .fc .fc-dayGridMonth-view .fc-day .fc-daygrid-day-top a {
  font-size: 14px;
  width: 30px;
  height: 30px;
}
.mini-calendar .fc .fc-dayGridMonth-view .fc-day .fc-daygrid-day-top .event-indicator::before {
  position: absolute;
  content: '';
  bottom: -10px;
  right: -10px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 15px 15px;
  border-color: transparent transparent var(--primary-color) transparent;
}
.mini-calendar .fc .fc-dayGridMonth-view .fc-day .fc-daygrid-day-events {
  display: none;
}
.top-events .swiper-slide {
  height: auto;
}
.top-events .swiper-navigation .swiper-button-next,
.top-events .swiper-navigation .swiper-button-prev {
  color: #fff;
}
.top-events .top-event {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 25px;
  background: #fff;
  height: 100%;
  z-index: 0;
}
.top-events .top-event::before {
  position: absolute;
  content: '';
  width: 125px;
  height: 100%;
  top: 0;
  left: 0;
  background: var(--primary-color);
  z-index: -1;
}
.top-events .top-event .img {
  width: 100%;
  height: 200px;
  margin-bottom: 25px;
}
.top-events .top-event .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top-events .top-event .infos {
  display: flex;
  flex-direction: row;
  height: 100%;
}
.top-events .top-event .infos .date {
  width: 100px;
  flex: 0 0 auto;
  padding-right: 15px;
  margin-right: 25px;
  background: var(--primary-color);
}
.top-events .top-event .infos .date p {
  color: #fff;
  margin-bottom: 10px;
  text-align: center;
}
.top-events .top-event .infos .date p strong {
  font-size: 35px;
}
.top-events .top-event .infos .details {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.top-events .top-event .infos .details .desciption p {
  margin-bottom: 15px;
}
.top-events .top-event .infos .details .desciption h4 {
  font-size: 16px;
  color: var(--primary-color);
  margin-bottom: 25px;
}
.top-events .top-event .infos .details .desciption h4 a {
  color: inherit;
}
.top-events .top-event .infos .details .desciption h4 a:hover {
  color: #000;
}
.top-events .top-event .infos .details .location {
  padding-top: 25px;
  border-top: 1px solid var(--secondary-color);
}
.top-events .top-event .infos .details .location p {
  margin-bottom: 0;
}
.blog-box {
  padding: 25px;
  background: #fff;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
.blog-box figure {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 760px) {
  .blog-box figure {
    flex-direction: row;
  }
}
.blog-box figure .img {
  flex: 0 0 auto;
  margin-right: 50px;
  width: 100%;
  margin-bottom: 25px;
  display: block;
}
@media screen and (min-width: 760px) {
  .blog-box figure .img {
    width: 50%;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 920px) {
  .blog-box figure .img {
    width: 66.666%;
  }
}
.blog-box figure .img img {
  width: 100%;
  height: auto;
}
.blog-box figure > a {
  width: 100%;
  margin-right: 50px;
  flex: 0 0 auto;
}
@media screen and (min-width: 760px) {
  .blog-box figure > a {
    width: 50%;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 920px) {
  .blog-box figure > a {
    width: 66.666%;
  }
}
.blog-box figure > a img {
  margin-right: 0;
  width: 100%;
}
.blog-box figure figcaption {
  width: 100%;
}
@media screen and (min-width: 760px) {
  .blog-box figure figcaption {
    width: 50%;
  }
}
@media screen and (min-width: 920px) {
  .blog-box figure figcaption {
    width: 33.3333%;
  }
}
.blog-box figure figcaption h2 {
  color: var(--primary-color);
}
.blog-box figure figcaption p {
  padding: 0;
}
.event-box {
  background: #fff;
}
.event-box .grid [class*="col-"] {
  margin-bottom: 0;
}
.event-box .event-info {
  position: relative;
  padding: 25px;
  height: 100%;
  z-index: 0;
}
@media screen and (min-width: 760px) {
  .event-box .event-info {
    padding: 25px 0 25px 25px;
  }
}
.event-box .event-info::before {
  position: absolute;
  content: '';
  background: var(--primary-color);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
@media screen and (min-width: 760px) {
  .event-box .event-info::before {
    width: 90%;
  }
}
@media screen and (min-width: 920px) {
  .event-box .event-info::before {
    width: 70%;
  }
}
.event-box .event-info .img {
  margin-bottom: 25px;
  width: 100%;
}
.event-box .event-info .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.event-box .event-info .event-date {
  width: 100%;
}
@media screen and (min-width: 760px) {
  .event-box .event-info .event-date {
    width: 90%;
    padding-right: 50px;
  }
}
@media screen and (min-width: 920px) {
  .event-box .event-info .event-date {
    width: 70%;
  }
}
.event-box .event-info .event-date p {
  color: #fff;
  background: var(--primary-color);
}
.event-box .event-info .event-date p strong {
  font-size: 45px;
}
.event-box .event-content {
  padding: 25px;
}
@media screen and (min-width: 760px) {
  .event-box .event-content {
    padding: 25px 50px 25px 0;
  }
}
.event-box .event-content h2 {
  color: var(--primary-color);
}
.event-box .event-content h2 a {
  color: var(--primary-color);
}
.event-box .event-content .event-detail {
  padding-top: 25px;
  margin-top: 25px;
  border-top: 1px solid var(--secondary-color);
  box-shadow: none;
}
.event-box .event-content .event-detail p em {
  margin-right: 10px;
  font-size: 20px;
}
.event-teaser {
  position: relative;
}
.event-teaser::before {
  position: absolute;
  content: '';
  width: calc(66.666% - 50px);
  height: 150%;
  top: -30%;
  right: 0;
  background: url(../gfx/award-phases-bg.svg) no-repeat;
  background-position: right;
}
.event-teaser .filter-accordion {
  background: none;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: bold;
  border: none;
  border-top: 1px solid rgba(0, 137, 193, 0.2);
  border-bottom: 1px solid rgba(0, 137, 193, 0.2);
  padding: 30px 15px;
  margin: 0 -15px;
  color: var(--primary-color);
  cursor: pointer;
  width: calc(100% + 30px);
  text-align: left;
  outline: none;
  transition: 0.4s;
  position: relative;
}
@media screen and (min-width: 920px) {
  .event-teaser .filter-accordion {
    display: none;
  }
}
.event-teaser .filter-accordion::before,
.event-teaser .filter-accordion::after {
  position: absolute;
  content: '';
  width: 20px;
  height: 1px;
  top: 50%;
  right: 15px;
  background: var(--primary-color);
}
.event-teaser .filter-accordion::after {
  transform: rotate(90deg);
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.event-teaser .filter-accordion:hover {
  color: var(--text-color);
}
.event-teaser .filter-accordion.active {
  border-bottom: none;
}
.event-teaser .filter-accordion.active::after {
  transform: rotate(0);
}
.event-teaser .filter-panel {
  padding: 15px 0;
  background-color: none;
  display: none;
  position: relative;
}
@media screen and (min-width: 920px) {
  .event-teaser .filter-panel {
    display: block;
  }
}
.event-teaser .filter-panel .choices {
  z-index: 10;
}
.event-teaser .filter-panel::before {
  position: absolute;
  content: '';
  width: 100vw;
  height: 1px;
  bottom: 0;
  left: -15px;
  background: var(--primary-color);
  opacity: 0.2;
}
@media screen and (min-width: 920px) {
  .event-teaser .filter-panel::before {
    display: none;
  }
}
@media screen and (max-width: 760px) {
  .event-teaser .event-slider {
    margin: 0 -15px 0 0;
  }
  .event-teaser .event-slider .swiper-wrapper .swiper-slide {
    padding-right: 20%;
    transition: margin-right 200ms ease;
  }
  .event-teaser .event-slider .swiper-wrapper .swiper-slide.swiper-slide-active {
    margin-right: -45px !important;
  }
}
.event-teaser .grid .col-1-3 {
  width: 100%;
  padding-right: 0;
}
@media screen and (min-width: 920px) {
  .event-teaser .grid .col-1-3 {
    width: 33.3333%;
    padding-right: 50px;
  }
}
.event-teaser .grid .col-2-3 {
  width: 100%;
  padding-right: 0;
}
@media screen and (min-width: 920px) {
  .event-teaser .grid .col-2-3 {
    width: 66.6666%;
    padding-right: 50px;
  }
}
.event-teaser .category-filter {
  margin-bottom: 50px;
}
.event-teaser .swiper .swiper-wrapper {
  margin-top: 25px;
  margin-bottom: 50px;
}
@media screen and (min-width: 760px) {
  .event-teaser .swiper .swiper-wrapper {
    height: 745px;
  }
}
.event-teaser .swiper .swiper-wrapper .swiper-slide {
  height: calc((100% / 3) - (100px / 3)) !important;
}
.event-teaser .swiper .swiper-wrapper .swiper-slide .small-event {
  display: flex;
  flex-direction: row;
  height: 100%;
  background: #fff;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
@media screen and (max-width: 760px) {
  .event-teaser .swiper .swiper-wrapper .swiper-slide .small-event {
    flex-direction: column;
  }
}
.event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .date {
  width: 100px;
  flex: 0 0 auto;
  padding: 25px 15px;
  background: var(--primary-color);
}
.event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .date p {
  color: #fff;
  margin-bottom: 10px;
  text-align: center;
}
.event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .date p strong {
  font-size: 35px;
}
@media screen and (max-width: 760px) {
  .event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .date {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 25px;
  }
  .event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .date p {
    font-size: 25px;
    margin-bottom: 0;
  }
  .event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .date p strong {
    font-weight: normal;
    font-size: 25px;
  }
  .event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .date p:nth-child(1) {
    order: 2;
    font-size: 16px;
  }
  .event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .date p:nth-child(3) {
    flex: 1;
    text-align: left;
  }
}
.event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .info {
  padding: 25px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .info .desciption p {
  margin-bottom: 15px;
}
.event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .info .desciption h4 {
  font-size: 16px;
  color: var(--primary-color);
  margin-bottom: 25px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  /* start showing ellipsis when 3rd line is reached */
  white-space: pre-wrap;
  /* let the text wrap preserving spaces */
}
.event-teaser .swiper .swiper-wrapper .swiper-slide .small-event .info .location {
  padding-top: 25px;
  border-top: 1px solid var(--secondary-color);
}
.event-teaser .swiper .swiper-navigation .button {
  margin: 0;
}
.thex-process .process-step {
  text-align: center;
}
.thex-process .process-step img {
  margin-bottom: 20px;
  width: 100%;
  height: 250px;
  object-fit: contain;
}
.thex-process .process-step h2,
.thex-process .process-step h3,
.thex-process .process-step h4,
.thex-process .process-step h5,
.thex-process .process-step p {
  color: #fff;
}
.thex-process .btn-bar {
  display: flex;
  flex-direction: row;
  justify-content: center;
}
.offer-finder .offer-select {
  background: #fff;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
.offer-finder .offer-select .col-2-3,
.offer-finder .offer-select .col-1-3 {
  margin-bottom: 0;
}
.offer-finder .offer-select .question-box {
  padding: 25px;
  background: url("../gfx/module-bg.png") no-repeat;
  background-size: cover;
  background-position: center;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (min-width: 920px) {
  .offer-finder .offer-select .question-box {
    padding: 50px;
  }
}
.offer-finder .offer-select .question-box .offer-question h3 {
  color: #fff;
  font-size: 25px;
}
.offer-finder .offer-select .question-box .offer-question #myProgress {
  width: 100%;
  background: var(--color-lightblue);
  height: 3px;
  margin-bottom: 50px;
}
.offer-finder .offer-select .question-box .offer-question #myProgress #myBar {
  width: 0%;
  height: 3px;
  background: var(--secondary-color);
}
.offer-finder .offer-select .question-box .button.link {
  color: #fff;
  width: fit-content;
  margin-bottom: 0;
}
.offer-finder .offer-select .question-box .button.link:hover {
  color: var(--secondary-color);
}
.offer-finder .offer-select .question-box .button.link:hover::before {
  background: var(--seconary-color);
}
.offer-finder .offer-select .answer-box {
  padding: 25px;
}
@media screen and (min-width: 920px) {
  .offer-finder .offer-select .answer-box {
    padding: 50px 50px 0 0;
  }
}
.offer-finder .offer-select .answer-box .offer-crumb {
  margin-bottom: 25px;
}
@media screen and (min-width: 920px) {
  .offer-finder .offer-select .answer-box .offer-crumb {
    margin-bottom: 50px;
  }
}
.offer-finder .offer-select .answer-box .offer-crumb li {
  display: inline-block;
  list-style: none;
  margin-right: 30px;
  position: relative;
  font-size: 14px;
  font-weight: 600;
  color: var(--primary-color);
}
.offer-finder .offer-select .answer-box .offer-crumb li::before {
  position: absolute;
  content: '\e810';
  font-size: 10px;
  font-weight: normal;
  font-family: 'iconfont';
  top: -2px;
  right: -23px;
  color: var(--secondary-color);
}
.offer-finder .offer-select .answer-box .offer-crumb li:last-child::before {
  display: none;
}
.offer-finder .offer-select .answer-box .offer-crumb li button {
  font-size: 14px;
  font-weight: 600;
  color: var(--primary-color);
  background: none;
  border: none;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.offer-finder .offer-select .answer-box .offer-crumb li button:hover {
  color: var(--secondary-color);
}
@media screen and (min-width: 920px) {
  .offer-finder .offer-select .answer-box .grid {
    margin-right: -50px;
  }
}
.offer-finder .offer-select .answer-box .grid .col-1-2 {
  width: 100%;
}
@media screen and (min-width: 920px) {
  .offer-finder .offer-select .answer-box .grid .col-1-2 {
    width: 50% !important;
    padding-right: 50px;
  }
}
.offer-finder .offer-select .answer-box .offer-answer {
  background: #E6F3F9;
  border: none;
  box-shadow: none;
  width: 100%;
  padding: 30px;
  text-align: center;
  color: var(--primary-color);
  font-size: 20px;
  font-weight: 600;
  height: 100%;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
@media screen and (max-width: 760px) {
  .offer-finder .offer-select .answer-box .offer-answer {
    font-size: 16px;
    padding: 25px 15px;
  }
}
.offer-finder .offer-select .answer-box .offer-answer:hover {
  background: var(--primary-color);
  color: #fff;
}
.offer-finder .offer-select .answer-box .text {
  margin-bottom: 50px;
  width: 100%;
}
.offer-finder .offer-select .answer-box .contact-card {
  margin-bottom: 50px;
}
.offer-finder .offer-select .answer-box .contact-card figure {
  display: flex;
}
.offer-finder .offer-select .answer-box .contact-card figure img {
  margin-right: 50px;
  width: calc(100% - 50px);
}
.offer-finder .offer-select .answer-box .contact-card figure figcaption .contact-person h4 {
  font-size: 16px;
  color: var(--primary-color);
  margin-bottom: 5px;
}
.offer-finder .offer-select .answer-box .contact-card figure figcaption .contact-person p {
  color: #B3B3B3;
}
.story-teaser {
  position: relative;
}
@media screen and (min-width: 760px) {
  .story-teaser {
    margin-top: 260px;
  }
}
.story-teaser .col-1-3:nth-child(2) .story {
  margin-bottom: 100px;
}
.story-teaser::before {
  position: absolute;
  content: '';
  background: url("../gfx/story-bg.svg") no-repeat;
  width: 600px;
  height: 700px;
  top: -320px;
  left: 0;
  pointer-events: none;
}
@media screen and (min-width: 760px) {
  .story-teaser::before {
    width: 660px;
    height: 800px;
    top: -350px;
  }
}
@media screen and (min-width: 1200px) {
  .story-teaser::before {
    width: 50vw;
    background-size: 100% auto;
    height: 1300px;
    top: -465px;
  }
}
.story-teaser .claim {
  margin-bottom: 20px;
}
.story-teaser .claim h2,
.story-teaser .claim h3,
.story-teaser .claim p {
  color: #fff;
}
.story-teaser .btn-bar {
  display: flex;
  flex-direction: row;
  justify-content: center;
}
@media screen and (min-width: 1200px) {
  .story-teaser .btn-bar {
    margin-top: -100px;
  }
}
.story-teaser .story {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 100%;
}
.story-teaser .story .placeholder {
  display: none;
}
@media screen and (min-width: 920px) {
  .story-teaser .story .placeholder {
    display: block;
    min-height: 50px;
    margin-bottom: 20px;
  }
}
.story-teaser .story .story-box {
  align-self: flex-end;
}
.story-teaser .story .story-box img {
  height: 280px;
  width: 100%;
  object-fit: cover;
}
.story-teaser .story .story-box figcaption {
  padding: 25px 25px 0 25px;
}
.story-teaser .story .story-box figcaption h4 {
  color: var(--primary-color);
}
.story-teaser .story .story-box figcaption h4 a {
  color: var(--primary-color);
  text-decoration: none;
}
.event-detail {
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  overflow-x: hidden;
  margin: 50px 0;
  max-height: calc(100vh - 100px);
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
@media screen and (min-width: 760px) {
  .event-detail .mb-first {
    order: 1 !important;
  }
}
.event-detail .event-header {
  padding: 25px 50px 0 25px;
  background: url("../gfx/highlight-bg.webp") no-repeat;
  background-size: cover;
  position: relative;
}
@media screen and (min-width: 760px) {
  .event-detail .event-header {
    padding: 50px 50px 0 50px;
  }
}
.event-detail .event-header h2,
.event-detail .event-header h3 {
  color: #fff;
}
.event-detail .event-header .grid {
  align-items: flex-end;
  margin-bottom: -25px;
}
@media screen and (min-width: 760px) {
  .event-detail .event-header .grid {
    margin-bottom: -50px;
  }
}
.event-detail .event-header .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 0;
}
@media screen and (min-width: 760px) {
  .event-detail .event-header .btn-close {
    width: 70px;
    height: 70px;
  }
}
.event-detail .event-header .tab .tablinks {
  padding: 20px;
  height: 50px;
  border: none;
  background: #C9D30E;
  margin-right: 10px;
  font-size: 14px;
  font-weight: bold;
  text-transform: uppercase;
  color: #1f384d;
}
.event-detail .event-header .tab .tablinks.active {
  background: #fff;
}
.event-detail .event-header .button.link::before {
  display: none;
}
.event-detail .event-header .button.link em,
.event-detail .event-header .button.link span {
  color: #ffffff;
}
.event-detail .event-content {
  padding: 25px 25px 25px 25px;
  background: #fff;
}
@media screen and (min-width: 760px) {
  .event-detail .event-content {
    padding: 50px 30px 50px 50px;
  }
}
.event-detail .event-content .anchor-inside + .row {
  margin-top: 30px;
}
.event-detail .event-content .row .headline {
  padding: 0;
}
.event-detail .event-content .row.reverse .text-image .text {
  padding-left: 0;
}
.event-detail .event-content .row .content-width {
  width: 100%;
}
.event-detail .event-content .tabcontent {
  display: none;
  padding: 0;
}
.event-detail .event-content .tabcontent .image {
  height: auto;
}
.event-detail .event-content .tabcontent .gallery {
  overflow: hidden;
}
.event-detail .event-content .tabcontent .gallery .image {
  height: auto;
}
@media screen and (min-width: 920px) {
  .event-detail .event-content .tabcontent .gallery .image {
    height: 400px;
  }
}
.event-detail .event-content .tabcontent blockquote::before,
.event-detail .event-content .tabcontent blockquote::after {
  background: #fff;
}
.event-detail .event-content .event-info .img img {
  width: 100%;
  height: auto;
}
.event-detail .event-content .event-info .parts {
  margin-bottom: 50px;
}
.event-detail .event-content .event-info .parts .button {
  margin-right: 0;
}
.event-detail .event-content .event-info .parts .button.link::before {
  display: none;
}
.event-detail .event-content .event-info .parts .part {
  display: flex;
}
.event-detail .event-content .event-info .parts .part em {
  font-size: 20px;
  margin-right: 20px;
}
.event-detail .event-content .event-info .parts .part p strong {
  display: block;
}
.event-detail .event-content .event-info > .part {
  margin-bottom: 40px;
}
.social-feed .swiper {
  overflow: visible;
}
.social-feed .social-box {
  background: #fff;
  padding: 25px;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
.social-feed .social-box img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  margin-bottom: 25px;
}
.map-overview {
  position: relative;
}
.map-overview::before {
  position: absolute;
  content: '';
  width: 50%;
  height: 150%;
  top: 0;
  left: 0;
  background: url(../gfx/award-phases-bg.svg) no-repeat;
  background-position: right;
  transform: scaleX(-1);
}
.map-overview .map-categories {
  padding: 50px 0;
}
.map-overview .map-categories .map-category {
  position: relative;
  background: #E6F3F9;
  width: 100%;
  padding: 15px 15px 15px 30px;
  color: var(--primary-color);
  font-size: 16px;
  font-weight: bold;
  text-align: left;
  border: none;
  border-radius: 0;
  margin-bottom: 25px;
  transition: color 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.map-overview .map-categories .map-category:hover {
  color: var(--text-color);
}
.map-overview .map-categories .map-category.active {
  background: var(--secondary-color);
  color: var(--text-color);
}
.map-overview .map-categories .map-category::before {
  position: absolute;
  content: '\e810';
  font-size: 20px;
  font-weight: normal;
  font-family: 'iconfont';
  width: 17px;
  height: 20px;
  top: calc(50% - 10px);
  left: 0;
  color: var(--primary-color);
}
.map-overview .map-categories .map-category.korallenrosa::before {
  color: #F78674;
}
.map-overview .map-categories .map-category.rot::before {
  color: #F13517;
}
.map-overview .map-categories .map-category.rostrot::before {
  color: #B52811;
}
.map-overview .map-categories .map-category.gelb::before {
  color: #FFCC00;
}
.map-overview .map-categories .map-category.sandgelb::before {
  color: #F7BA66;
}
.map-overview .map-categories .map-category.orange::before {
  color: #F08B02;
}
.map-overview .map-categories .map-category.ocker::before {
  color: #B56900;
}
.map-overview .map-categories .map-category.hellgruen::before {
  color: #DFE56E;
}
.map-overview .map-categories .map-category.limettengruen::before {
  color: #C9D30E;
}
.map-overview .map-categories .map-category.olivgruen::before {
  color: #979F0B;
}
.map-overview .map-categories .map-category.moosgruen::before {
  color: #97C865;
}
.map-overview .map-categories .map-category.gruen::before {
  color: #6AB023;
}
.map-overview .map-categories .map-category.grasgruen::before {
  color: #50851A;
}
.map-overview .map-categories .map-category.tuerkisblau::before {
  color: #59D4C7;
}
.map-overview .map-categories .map-category.aquamarin::before {
  color: #11C2AF;
}
.map-overview .map-categories .map-category.smaragdgruen::before {
  color: #0D9284;
}
.map-overview .map-categories .map-category.himmelblau::before {
  color: #4D95DF;
}
.map-overview .map-categories .map-category.blau::before {
  color: #0067D1;
}
.map-overview .map-categories .map-category.marineblau::before {
  color: #004E9D;
}
.map-overview .map-categories .map-category.lavendelrosa::before {
  color: #DD7FC1;
}
.map-overview .map-categories .map-category.magenta::before {
  color: #CF48A6;
}
.map-overview .map-categories .map-category.purpur::before {
  color: #9C367D;
}
.map-overview .cluster-list {
  list-style-type: none;
  padding: 4px 25px 4px 4px;
  max-height: 500px;
  overflow: auto;
  margin-top: 22px;
  margin-left: -4px;
}
.map-overview .cluster-list::-webkit-scrollbar {
  width: 3px;
  height: 10px;
}
.map-overview .cluster-list::-webkit-scrollbar-track {
  background: #F0F0F0;
}
.map-overview .cluster-list::-webkit-scrollbar-thumb {
  background: var(--secondary-color);
  cursor: pointer;
}
.map-overview .cluster-list::-webkit-scrollbar-thumb:hover {
  background: var(--text-color);
}
.map-overview .cluster-list::-webkit-scrollbar-thumb:active {
  background: var(--text-color);
}
.map-overview .cluster-list li {
  position: relative;
  border-bottom: 1px solid #CCE7F3;
  padding: 25px 0 25px 35px;
  cursor: pointer;
  font-weight: bold;
  color: var(--primary-color);
  transition: color 200ms ease;
  /*&:first-child {
                padding-top: 0;
                &::before {
                    top: 4px;
                }
            }*/
}
.map-overview .cluster-list li:hover {
  color: var(--text-color);
}
.map-overview .cluster-list li::before {
  content: '';
  width: 15px;
  height: 15px;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 29px;
}
.map-overview .cluster-list li.korallenrosa::before {
  background: #F78674;
}
.map-overview .cluster-list li.rot::before {
  background: #F13517;
}
.map-overview .cluster-list li.rostrot::before {
  background: #B52811;
}
.map-overview .cluster-list li.gelb::before {
  background: #FFCC00;
}
.map-overview .cluster-list li.sandgelb::before {
  background: #F7BA66;
}
.map-overview .cluster-list li.orange::before {
  background: #F08B02;
}
.map-overview .cluster-list li.ocker::before {
  background: #B56900;
}
.map-overview .cluster-list li.hellgruen::before {
  background: #DFE56E;
}
.map-overview .cluster-list li.limettengruen::before {
  background: #C9D30E;
}
.map-overview .cluster-list li.olivgruen::before {
  background: #979F0B;
}
.map-overview .cluster-list li.moosgruen::before {
  background: #97C865;
}
.map-overview .cluster-list li.gruen::before {
  background: #6AB023;
}
.map-overview .cluster-list li.grasgruen::before {
  background: #50851A;
}
.map-overview .cluster-list li.tuerkisblau::before {
  background: #59D4C7;
}
.map-overview .cluster-list li.aquamarin::before {
  background: #11C2AF;
}
.map-overview .cluster-list li.smaragdgruen::before {
  background: #0D9284;
}
.map-overview .cluster-list li.himmelblau::before {
  background: #4D95DF;
}
.map-overview .cluster-list li.blau::before {
  background: #0067D1;
}
.map-overview .cluster-list li.marineblau::before {
  background: #004E9D;
}
.map-overview .cluster-list li.lavendelrosa::before {
  background: #DD7FC1;
}
.map-overview .cluster-list li.magenta::before {
  background: #CF48A6;
}
.map-overview .cluster-list li.purpur::before {
  background: #9C367D;
}
.map-overview .location-box {
  background: #fff;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
  padding: 25px;
  display: flex;
  flex-direction: column;
  position: relative;
}
.map-overview .location-box .close-box {
  position: absolute;
  top: 0;
  right: 0;
  margin-right: 0;
}
.map-overview .location-box .img {
  width: 100%;
  height: 200px;
}
.map-overview .location-box .img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.map-overview .location-box .img + h4 {
  margin-top: 30px;
}
.map-overview .location-box h4,
.map-overview .location-box h4 a {
  color: var(--primary-color);
  font-size: 16px;
  text-decoration: none;
}
.map-overview .location-box p:last-child {
  margin-bottom: 0;
}
.map-overview .location-box p.address {
  margin-bottom: 25px;
  padding-left: 35px;
  position: relative;
}
.map-overview .location-box p.address::before {
  position: absolute;
  content: '\e80e';
  font-family: 'iconfont';
  font-size: 20px;
  font-weight: normal;
  color: var(--text-color);
  top: 0;
  left: 0;
}
.map-overview .location-box p:has(a.icon-phone) {
  margin-bottom: 10px;
}
.map-overview .location-box .button {
  align-self: flex-start;
}
.map-overview .location-box a.icon-phone,
.map-overview .location-box a.icon-mail {
  padding-left: 35px;
  position: relative;
  border-bottom: 0;
  color: inherit;
}
.map-overview .location-box a.icon-phone::before,
.map-overview .location-box a.icon-mail::before {
  font-size: 20px;
  top: 0;
  left: 0;
  position: absolute;
}
.map-overview .location-box a.icon-phone:hover,
.map-overview .location-box a.icon-mail:hover {
  color: var(--primary-color);
}
.map-overview .location-box a.icon-mail::before {
  font-size: 16px;
}
.map-overview svg#map #districts path {
  fill: var(--primary-color);
  fill-opacity: 1;
  fill-rule: nonzero;
  stroke: var(--stroke-color);
  stroke-opacity: 1;
  stroke-width: 1.5px;
}
.map-overview svg#map .text {
  font-family: Arial, sans-serif;
  font-size: 14px;
  fill: #FFF;
}
.map-overview svg#map .cluster {
  font-family: Arial, sans-serif;
  font-size: 10px;
  fill: #000;
}
@media screen and (max-width: 760px) {
  .map-overview svg#map .cluster {
    font-size: 20px;
    transform: translateY(3px);
  }
}
.map-overview svg#map .cluster.active {
  font-size: 14px;
  transform: translate(0, 2px);
}
@media screen and (max-width: 760px) {
  .map-overview svg#map .cluster.active {
    font-size: 22px;
    transform: translate(0, 4px);
  }
}
.map-overview svg#map .position circle {
  fill: #FFF;
}
.map-overview svg#map .position .pin {
  cursor: pointer;
}
.map-overview svg#map .position .pin circle {
  transform-origin: center;
  transform-box: fill-box;
}
@media only screen and (max-width: 567px) {
  .map-overview svg#map .position .pin circle {
    r: 15;
  }
  .map-overview svg#map .position .pin circle:hover {
    stroke: #fff;
    stroke-width: 1;
  }
  .map-overview svg#map .position .pin circle:hover + path {
    display: none;
  }
}
.map-overview svg#map .position .pin .line {
  fill: none;
  stroke: #80c4e0;
  stroke-width: 1px;
}
.map-overview svg#map .position .pin .circle-outline {
  fill: #1f384d;
  fill-opacity: 0.1;
  transform-origin: center;
  transform-box: fill-box;
}
.map-overview svg#map .position .pin .multi {
  fill: #B3B3B3;
}
.map-overview svg#map .position .pin .korallenrosa {
  fill: #F78674;
}
.map-overview svg#map .position .pin .rot {
  fill: #F13517;
}
.map-overview svg#map .position .pin .rostrot {
  fill: #B52811;
}
.map-overview svg#map .position .pin .gelb {
  fill: #FFCC00;
}
.map-overview svg#map .position .pin .sandgelb {
  fill: #F7BA66;
}
.map-overview svg#map .position .pin .orange {
  fill: #F08B02;
}
.map-overview svg#map .position .pin .ocker {
  fill: #B56900;
}
.map-overview svg#map .position .pin .hellgruen {
  fill: #DFE56E;
}
.map-overview svg#map .position .pin .limettengruen {
  fill: #C9D30E;
}
.map-overview svg#map .position .pin .olivgruen {
  fill: #979F0B;
}
.map-overview svg#map .position .pin .moosgruen {
  fill: #97C865;
}
.map-overview svg#map .position .pin .gruen {
  fill: #6AB023;
}
.map-overview svg#map .position .pin .grasgruen {
  fill: #50851A;
}
.map-overview svg#map .position .pin .tuerkisblau {
  fill: #59D4C7;
}
.map-overview svg#map .position .pin .aquamarin {
  fill: #11C2AF;
}
.map-overview svg#map .position .pin .smaragdgruen {
  fill: #0D9284;
}
.map-overview svg#map .position .pin .himmelblau {
  fill: #4D95DF;
}
.map-overview svg#map .position .pin .blau {
  fill: #0067D1;
}
.map-overview svg#map .position .pin .marineblau {
  fill: #004E9D;
}
.map-overview svg#map .position .pin .lavendelrosa {
  fill: #DD7FC1;
}
.map-overview svg#map .position .pin .magenta {
  fill: #CF48A6;
}
.map-overview svg#map .position .pin .purpur {
  fill: #9C367D;
}
.map-overview svg#map .position:hover .pin circle {
  transition: all 200ms ease;
  transform: scale(1.5);
}
.map-overview svg#map .position:hover .pin .circle-outline {
  transition: all 200ms ease;
  fill: #fff !important;
  fill-opacity: 1;
  transform: scale(1.5);
}
.map-overview svg#map g.active circle {
  r: 12;
  stroke: #fff;
  stroke-width: 1;
}
.map-overview svg#map g.active circle + path {
  display: none;
}
.result-infos .info-box {
  padding: 25px;
  background: #fff;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
  margin-bottom: 50px;
}
.result-infos .info-box h3 {
  color: var(--primary-color);
}
.result-events .result-event {
  background: #fff;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
  margin-bottom: 50px;
  display: flex;
  flex-direction: row;
}
@media screen and (max-width: 760px) {
  .result-events .result-event {
    flex-direction: column;
  }
}
.result-events .result-event .date {
  width: 100px;
  background: var(--primary-color);
  padding: 25px 10px;
  text-align: center;
  flex: 0 0 auto;
}
.result-events .result-event .date p {
  color: #fff;
}
.result-events .result-event .date p strong {
  font-size: 35px;
}
@media screen and (max-width: 760px) {
  .result-events .result-event .date {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 25px;
  }
  .result-events .result-event .date p {
    font-size: 25px;
    margin-bottom: 0;
  }
  .result-events .result-event .date p strong {
    font-weight: normal;
    font-size: 25px;
  }
  .result-events .result-event .date p:nth-child(1) {
    order: 2;
    font-size: 16px;
  }
  .result-events .result-event .date p:nth-child(3) {
    flex: 1;
    text-align: left;
  }
}
.result-events .result-event .infos {
  display: flex;
  flex-direction: column;
  width: 100%;
}
@media screen and (min-width: 760px) {
  .result-events .result-event .infos {
    flex-direction: row;
  }
}
.result-events .result-event .infos .desciption {
  padding: 25px;
  width: 100%;
}
.result-events .result-event .infos .desciption a {
  display: block;
}
.result-events .result-event .infos .desciption h3 {
  color: var(--primary-color);
}
.result-events .result-event .infos .desciption h3 a {
  color: inherit;
}
.result-events .result-event .event-detail {
  box-shadow: none;
  flex: 0 0 auto;
  padding: 25px 10px;
  margin: 0 15px 0 15px;
  border-top: 1px solid var(--secondary-color);
}
@media screen and (min-width: 760px) {
  .result-events .result-event .event-detail {
    margin: 40px 0 0 0;
    padding: 0 30px 25px 25px;
    border-top: none;
    border-left: 1px solid var(--secondary-color);
    width: 33.333%;
  }
}
.result-events .result-event .event-detail .part {
  display: flex;
}
.result-events .result-event .event-detail .part em {
  margin-right: 10px;
  font-size: 20px;
}
.result-events .result-event .event-detail .button {
  margin-right: 0;
}
.pw-protected {
  background: #fff;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
  padding: 25px;
}
.pw-protected .grid {
  margin-bottom: -25px;
}
@media screen and (min-width: 920px) {
  .pw-protected .grid {
    margin-bottom: -50px;
  }
}
@media screen and (min-width: 920px) {
  .pw-protected .description {
    padding: 25px;
  }
}
.pw-protected .description .form-item {
  margin-bottom: 50px;
}
.pw-protected .image {
  height: auto;
}
@media screen and (min-width: 760px) {
  .pw-protected .image {
    height: 480px;
  }
}
.overlay {
  position: fixed;
  width: 100vw;
  height: 100vh;
  z-index: 10000;
  background: rgba(204, 231, 243, 0.9);
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  border: none;
}
.overlay .overlay-inner {
  background: #fff;
  padding: 50px;
}
.overlay .overlay-inner .close {
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  height: 50px;
}
@media screen and (min-width: 760px) {
  .overlay .overlay-inner .close {
    width: 70px;
    height: 70px;
  }
}
.overlay .overlay-inner h2 {
  color: var(--primary-color);
  font-size: 25px;
}
@media screen and (min-width: 760px) {
  .overlay .overlay-inner h2 {
    font-size: 45px;
  }
}
.overlay .overlay-inner .btn-bar {
  margin-top: 50px;
  display: flex;
  justify-content: center;
}
.overlay .overlay-inner .formie-form {
  box-shadow: none;
  padding: 0;
}
@media screen and (max-width: 760px) {
  .overlay.search-overlay {
    align-items: flex-start;
    padding-top: 100px;
  }
}
.overlay.search-overlay .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  margin-right: 0;
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 760px) {
  .overlay.search-overlay .btn-close {
    width: 70px;
    height: 70px;
  }
}
.overlay.search-overlay input {
  width: 100%;
  height: 133px;
  padding: 50px 125px 50px 50px;
  font-size: 45px;
  border: none;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
@media screen and (max-width: 760px) {
  .overlay.search-overlay input {
    font-size: 25px;
    padding: 25px 80px 25px 25px;
    height: 75px;
  }
}
.overlay.search-overlay .start-search {
  position: absolute;
  top: calc(50% - 10px);
  right: 50px;
  width: 50px;
  margin: 0;
}
@media screen and (max-width: 760px) {
  .overlay.search-overlay .start-search {
    right: 25px;
  }
}
.overlay.search-overlay .start-search em {
  font-size: 20px;
  color: var(--text-color);
}
.overlay.search-overlay .start-search em::before {
  width: auto;
}
.overlay.search-overlay .search {
  position: relative;
  z-index: 3;
}
.overlay.search-overlay .search input::-webkit-search-decoration,
.overlay.search-overlay .search input::-webkit-search-cancel-button,
.overlay.search-overlay .search input::-webkit-search-results-button,
.overlay.search-overlay .search input::-webkit-search-results-decoration {
  -webkit-appearance: none;
}
.overlay.search-overlay .autocomplete-list {
  background: #E6F3F9;
  padding: 50px;
  max-height: 40vh;
  overflow-y: auto;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  box-shadow: 0 0 30px rgba(179, 179, 179, 0.3);
}
@media screen and (max-width: 760px) {
  .overlay.search-overlay .autocomplete-list {
    left: 15px;
    width: calc(100% - 30px);
    max-height: 50vh;
    padding: 25px;
  }
}
.overlay.search-overlay .autocomplete-list .autocomplete-keyword {
  display: block;
  font-size: 35px;
  margin-bottom: 15px;
  cursor: pointer;
  color: var(--text-color);
}
@media screen and (max-width: 760px) {
  .overlay.search-overlay .autocomplete-list .autocomplete-keyword {
    font-size: 25px;
  }
}
.overlay.search-overlay .autocomplete-list .autocomplete-keyword:last-child {
  margin-bottom: 0;
}
.overlay.search-overlay .autocomplete-list .autocomplete-keyword span {
  color: var(--primary-color);
}
.overlay.search-overlay .autocomplete-list .autocomplete-keyword:hover,
.overlay.search-overlay .autocomplete-list .autocomplete-keyword.active {
  color: var(--secondary-color);
}
.overlay.search-overlay .autocomplete-list .autocomplete-keyword:hover span,
.overlay.search-overlay .autocomplete-list .autocomplete-keyword.active span {
  color: var(--secondary-color);
}
.cookie-bar {
  display: none;
  position: fixed;
  bottom: 40px;
  left: 0;
  width: 100%;
  color: var(--text-color);
  z-index: 10;
  font-family: Arial, Helvetica, sans-serif;
}
.cookie-bar .content-width {
  max-width: 1200px;
  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;
  background: var(--primary-color);
}
.cookie-bar .content-width a {
  color: #fff;
  text-decoration: underline;
}
.cookie-bar .content-width a:hover {
  text-decoration: none;
}
.cookie-bar .cookie-desc {
  flex: 1 1 auto;
  font-family: Arial, Helvetica, sans-serif;
  width: 100%;
}
.cookie-bar .cookie-desc p {
  margin: 0;
  padding: 0;
  color: #fff;
  font-size: 15px;
  line-height: 120%;
  font-weight: 400;
}
.cookie-bar .cookie-desc a {
  text-decoration: none;
  transition: color 200ms ease;
}
.cookie-bar .cookie-desc a:hover {
  color: #fff;
  text-decoration: underline;
}
.cookie-bar .cookie-options {
  white-space: nowrap;
}
.cookie-bar .cookie-options button {
  cursor: pointer;
  border: 0;
  font-weight: normal;
  text-decoration: none;
  margin-left: 20px;
  font-size: 15px;
  font-family: Arial, Helvetica, sans-serif;
  /* -- Buttons als Normaler Textlink-- */
}
.cookie-bar .cookie-options button.btn-config {
  color: #FFFFFF;
  background: none;
  padding: 12px 23px;
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
  border: 2px solid var(--secondary-color);
  font-size: 16px;
  font-weight: 600;
  line-height: 100%;
  position: relative;
}
.cookie-bar .cookie-options button.btn-config:hover {
  background: var(--text-color);
  border-color: var(--text-color);
  color: #fff;
}
.cookie-bar .cookie-options button.btn-accept {
  color: var(--text-color);
  padding: 15px 24px;
  background: var(--secondary-color);
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
  border: none;
  font-size: 14px;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 100%;
}
.cookie-bar .cookie-options button.btn-accept i {
  float: right;
  width: 50px;
  height: 20px;
  position: relative;
  display: block;
  margin-left: 20px;
  top: 6px;
}
.cookie-bar .cookie-options button.btn-accept i::before,
.cookie-bar .cookie-options button.btn-accept i::after {
  content: "";
  position: absolute;
}
.cookie-bar .cookie-options button.btn-accept i::before {
  width: 100%;
  height: 2px;
  background: #fff;
  top: 50%;
  margin-top: -1px;
}
.cookie-bar .cookie-options button.btn-accept i::after {
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 0;
  top: 50%;
  margin-top: -5px;
}
.cookie-bar .cookie-options button.btn-accept:hover {
  background: var(--text-color);
  color: #FFFFFF;
}
/* -- Cookie Overlay -- */
.cookie-opt-overlay {
  font-family: Arial, Helvetica, sans-serif;
  max-width: 600px;
  padding: 40px;
  color: #595959;
  background: #fff;
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 99999;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-box-shadow: 0 10px 35px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 10px 35px rgba(0, 0, 0, 0.1);
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.1);
  width: 100%;
}
.cookie-opt-overlay .cookie-top-container {
  max-height: 70vh;
  overflow: auto;
  margin-top: 5px;
}
.cookie-opt-overlay .cookie-opt-title {
  font-size: 22px;
  margin-bottom: 30px;
}
.cookie-opt-overlay .cookie-opt-close {
  float: right;
  border: 0;
  width: 30px;
  height: 30px;
  background: transparent;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  position: relative;
  cursor: pointer;
}
.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 {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
}
.cookie-opt-overlay .cookie-opt-close::after {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.cookie-opt-overlay .cookie-opt-close span {
  display: none;
}
.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;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
}
.cookie-opt-overlay .cookie-opt-toggle.open {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  transform: rotate(180deg);
}
.cookie-opt-overlay .cookie-opt-cattitle {
  background: #EDEDED;
  padding: 11px 10px;
  min-height: 40px;
  font-size: 13px;
  text-transform: uppercase;
  font-weight: bold;
  position: relative;
  border-top: 2px solid #fff;
  display: flex;
  flex-direction: row-reverse;
}
.cookie-opt-overlay .cookie-opt-cattitle:first-child {
  border-top: 0;
}
.cookie-opt-overlay .cookie-opt-cattitle small {
  display: block;
  text-transform: none;
  font-size: 12px;
  padding-left: 40px;
  font-weight: normal;
  filter: alpha(opacity=75);
  opacity: 0.75;
  margin-right: 40px;
  padding-top: 5px;
  line-height: normal;
}
.cookie-opt-overlay,
.cookie-opt-overlay * {
  box-sizing: border-box;
}
.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;
  flex: 1;
}
.cookie-opt-overlay .cookie-single-opt-toggle label em,
.cookie-opt-overlay .cookie-opt-cattitle label em {
  width: 25px;
  height: 25px;
  display: inline-table;
  background-color: #E1E1E1;
  color: #ccc;
  float: left;
  margin-right: 10px;
  border: 0;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  margin-top: -1px;
  background-position: 5px 8px;
  background-size: 14px auto;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiB2aWV3Qm94PSIwIDAgMTEgOCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJzdHJva2UtbGluZWpvaW46cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MjsiPjxwYXRoIGQ9Ik0xMC4wNTYsMC4wMDJjMC43ODcsMC4wNjYgMS4yMDYsMS4xMTggMC42NTEsMS43MDVsLTUuNzA3LDUuNzA3bC0zLjcwNywtMy43MDdjLTEuNDA5LC0xLjQ5IDAuNjMyLC0yLjE1NCAxLjQxNCwtMS40MTRsMi4yOTMsMi4yOTNsNC4yOTMsLTQuMjkzYzAuMzM1LC0wLjMxNyAwLjQwNCwtMC4zMDIgMC43NjMsLTAuMjkxWiIgc3R5bGU9ImZpbGw6I2NjYzsiLz48L3N2Zz4=);
}
.cookie-opt-overlay .cookie-opt-cattitle input[type="checkbox"] + label {
  display: block;
  margin-bottom: 0;
}
.cookie-opt-overlay .cookie-opt-cattitle label > span {
  padding: 2px 0;
  display: block;
  line-height: normal;
  margin-left: 40px;
}
.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: #222222;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiB2aWV3Qm94PSIwIDAgMTEgOCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHN0eWxlPSJzdHJva2UtbGluZWpvaW46cm91bmQ7c3Ryb2tlLW1pdGVybGltaXQ6MjsiPjxwYXRoIGQ9Ik0xMC4wNTYsMC4wMDJjMC43ODcsMC4wNjYgMS4yMDYsMS4xMTggMC42NTEsMS43MDVsLTUuNzA3LDUuNzA3bC0zLjcwNywtMy43MDdjLTEuNDA5LC0xLjQ5IDAuNjMyLC0yLjE1NCAxLjQxNCwtMS40MTRsMi4yOTMsMi4yOTNsNC4yOTMsLTQuMjkzYzAuMzM1LC0wLjMxNyAwLjQwNCwtMC4zMDIgMC43NjMsLTAuMjkxWiIgc3R5bGU9ImZpbGw6I2ZmZjsiLz48L3N2Zz4=);
}
.cookie-opt-overlay .cookie-opt-catinfo {
  font-size: 13px;
  line-height: 16px;
  background: #F1F1F1;
  transition: all 200ms ease;
  display: block;
  overflow: hidden;
}
.cookie-opt-overlay .cookie-opt-catinfo:not(.active) {
  display: none;
}
.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: 80px;
}
.cookie-opt-overlay .cookie-opt-catinfo table td {
  word-break: break-all;
}
.cookie-opt-overlay .cookie-single-opt-toggle {
  padding-left: 10px;
  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;
  word-break: break-all;
}
.cookie-opt-overlay .cookie-single-opt-toggle label {
  position: relative;
  top: 2px;
}
.cookie-opt-overlay .cookie-single-opt-toggle label span {
  display: none;
}
.cookie-opt-overlay .cookie-top-savebtn {
  width: 100%;
  cursor: pointer;
  background: #7E7E7E;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  text-transform: uppercase;
  height: 40px;
  margin-top: 30px;
  border: 0;
}
.cookie-opt-overlay .cookie-top-savebtn:hover {
  box-shadow: inset 0 0 30px 30px rgba(0, 0, 0, 0.3);
}
@media only screen and (max-width: 1200px) {
  .cookie-bar {
    padding: 0 20px;
    bottom: 20px;
  }
  .cookie-bar .cookie-options {
    white-space: normal;
    text-align: right;
    margin-top: -10px;
  }
  .cookie-bar .cookie-options a.btn-config,
  .cookie-bar .cookie-options a.btn-accept {
    display: inline-block;
    margin-top: 20px;
  }
}
@media only screen and (max-width: 850px) {
  .cookie-bar .content-width {
    flex-direction: column;
    align-items: stretch;
  }
  .cookie-bar .cookie-desc {
    padding: 0  0 20px 0;
  }
  .cookie-bar .cookie-options {
    display: flex;
    flex-direction: column;
    text-align: center;
    white-space: normal;
    gap: 10px;
  }
  .cookie-bar .cookie-options button {
    margin-left: 0;
  }
  .cookie-bar .cookie-options a.btn-config,
  .cookie-bar .cookie-options a.btn-accept {
    margin-top: 10px;
    margin-left: 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: 12px;
  }
}
.button {
  color: contrast-color(rgb(var(--secondary-color, 201, 211, 14)));
  background: rgb(var(--secondary-color, 201, 211, 14));
  border-color: rgb(var(--secondary-color, 201, 211, 14));
}
.button.link::before {
  background: rgb(var(--secondary-color, 201, 211, 14));
}
.calendar-filter .calendar-view .btn-bar .button.active {
  background: rgb(var(--secondary-color, 201, 211, 14));
  border-background: rgb(var(--secondary-color, 201, 211, 14));
  color: contrast-color(rgb(var(--secondary-color, 201, 211, 14)));
}
.event-detail .event-header .tab .tablinks,
.contact-overlay .close,
.formie-button.formie-button-submit,
.cookie-bar .cookie-options button.btn-accept,
.category-filter .filter .form-item .tag:hover + label,
.category-filter .filter .form-item .tag:checked + label,
.contact-cta .button:hover {
  background: rgb(var(--secondary-color, 201, 211, 14));
  color: contrast-color(rgb(var(--secondary-color, 201, 211, 14)));
}
.result-events .result-event .event-detail {
  border-top: 1px solid rgb(var(--secondary-color, 201, 211, 14));
}
@media screen and (min-width: 760px) {
  .result-events .result-event .event-detail {
    border-top: 0;
    border-left: 1px solid rgb(var(--secondary-color, 201, 211, 14));
  }
}
.text-image .img::before {
  content: "";
  pointer-events: none;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(224deg, rgba(var(--secondary-color, 201, 211, 14), 0) 52.1%, rgba(var(--secondary-color, 201, 211, 14), 0.9) 100%);
}
.teaser .offer-box .img::before,
.image.video .videoelements::after {
  background: linear-gradient(224deg, rgba(var(--secondary-color, 201, 211, 14), 0) 52.1%, rgba(var(--secondary-color, 201, 211, 14), 0.9) 100%);
}
nav.main.inline ul li button::before,
nav.main.inline ul li a::before {
  border-color: transparent transparent transparent rgb(var(--secondary-color, 201, 211, 14));
}
@media screen and (min-width: 760px) {
  nav.main.inline ul li button::before,
  nav.main.inline ul li a::before {
    border-color: transparent transparent rgb(var(--secondary-color, 201, 211, 14)) transparent;
  }
}
.teaser::before {
  background: url(../gfx/teaser-small-bg_colorscheme.svg) no-repeat;
}
.teaser::after {
  position: absolute;
  content: '';
  width: 200%;
  height: calc(100vh + 150px);
  top: -90px;
  left: 0;
  background: linear-gradient(224deg, #0089c1 52.1%, rgba(var(--secondary-color, 201, 211, 14), 1) 100%);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: -2;
  opacity: 0.1;
  pointer-events: none;
  -webkit-mask-image: url(../gfx/teaser-small-bg_colorscheme_mask.svg);
  mask-image: url(../gfx/teaser-small-bg_colorscheme_mask.svg);
  mask-repeat: no-repeat;
}
@media screen and (min-width: 760px) {
  .teaser::after {
    width: 100%;
  }
}
@media screen and (min-width: 1200px) {
  .teaser::after {
    width: calc(100% - 130px);
  }
}
.teaser-homepage {
  padding-top: 50px;
  position: relative;
}
@media screen and (min-width: 760px) {
  .teaser-homepage {
    padding-top: 200px;
    min-height: 800px;
  }
}
.teaser-homepage::before {
  background: url(../gfx/thex-header-mask.svg) no-repeat;
  background-position: right top;
  background-size: 100%;
}
@media only screen and (min-width: 2000px) {
  .teaser-homepage::before {
    background-size: 100%;
  }
}
.teaser-homepage::after {
  position: absolute;
  content: '';
  width: calc(100% + 285px);
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  background: linear-gradient(37.6deg, rgba(var(--secondary-color, 201, 211, 14), 0.9) 0%, rgba(var(--secondary-color, 201, 211, 14), 0) 100%), url(../gfx/thex-header-bg.jpg) no-repeat;
  background-position: right top;
  -webkit-mask-image: url(../gfx/thex-header-mask-clip.svg);
  mask-image: url(../gfx/thex-header-mask-clip.svg);
  mask-repeat: no-repeat;
  background-size: 100%;
}
@media screen and (min-width: 760px) {
  .teaser-homepage::after {
    width: calc(100% - 130px);
    height: 200%;
    top: 0;
    left: 0;
  }
}
@media only screen and (min-width: 2000px) {
  .teaser-homepage::after {
    background-size: 100%;
  }
}
.story-teaser::before {
  background: url("../gfx/story-bg-mask.svg") no-repeat, linear-gradient(122deg, #0089c1 22.72%, rgba(var(--secondary-color, 201, 211, 14), 1) 77.22%);
}
@media screen and (min-width: 1200px) {
  .story-teaser::before {
    background-size: 100% auto;
  }
}
.modal-titel,
.stoerer.newsletter {
  background: linear-gradient(224deg, rgba(var(--secondary-color, 201, 211, 14), 0) 52.1%, rgba(var(--secondary-color, 201, 211, 14), 0.9) 100%), var(--primary-color) url(../gfx/hightlight-bg-simple.png) no-repeat;
  background-size: cover;
}
.contact-persons::before {
  background: url(../gfx/contact-bg-mask.svg) no-repeat, linear-gradient(122deg, #0089c1 22.72%, rgba(var(--secondary-color, 201, 211, 14), 1) 77.22%) no-repeat;
  background-position: right, left 191px;
  background-size: cover, auto;
}
.hightlight .story-teaser::before {
  background: url("../gfx/story-bg-mask-hightlight.svg") no-repeat, linear-gradient(122deg, #0089c1 22.72%, rgba(var(--secondary-color, 201, 211, 14), 1) 77.22%);
}
.hightlight .contact-persons::before {
  background: url(../gfx/contact-bg-mask-hightlight.svg) no-repeat, linear-gradient(122deg, #0089c1 22.72%, rgba(var(--secondary-color, 201, 211, 14), 1) 77.22%) no-repeat;
  background-position: right, left 191px;
  background-size: cover, auto;
}
.event-detail .event-header,
.row.special {
  background: linear-gradient(38deg, rgba(var(--secondary-color), 0.9) 5.78%, rgba(var(--secondary-color), 0) 52.68%), var(--primary-color) url("../gfx/highlight-bg.png") no-repeat;
  background-size: cover;
}
:root {
  view-transition-duration: 2s;
  /* Setzt die Dauer auf 1 Sekunde */
}
@view-transition {
  navigation: auto;
  types: fade;
  type: entry;
}
@keyframes fadeInUp {
  from {
    transform: translate(0, 100px);
  }
  to {
    transform: translate(0, 0);
  }
}
.candidates-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 50px;
  margin-bottom: 250px;
}
.candidates-grid .card-candidate {
  background: #fff;
  padding: 25px;
  position: relative;
  will-change: transform;
  view-timeline-name: --fadeIn-text;
  view-timeline-axis: block;
  animation: ease-out fadeInUp both;
  animation-timeline: --fadeIn-text;
  animation-range: entry 20% cover 40%;
}
.candidates-grid .card-candidate img {
  margin-bottom: 25px;
  display: block;
}
.candidates-grid .card-candidate h3 {
  margin-bottom: 0;
}
.candidates-grid .card-candidate button {
  background: transparent;
  font-size: inherit;
  font-family: inherit;
  cursor: pointer;
  color: var(--primary-color);
  border: 0;
  overflow: visible;
  text-box: trim-both cap alphabetic;
  font-weight: 700;
  display: block;
  text-align: left;
}
.candidates-grid .card-candidate button::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.candidates-grid .card-candidate button:hover {
  color: var(--text-color);
}
@media only screen and (min-width: 961px) {
  .candidates-grid .card-candidate:nth-child(3n+2) {
    margin-top: 50px;
    margin-bottom: -50px;
  }
}
@media only screen and (max-width: 960px) {
  .candidates-grid .card-candidate {
    padding: 15px;
  }
  .candidates-grid .card-candidate button {
    font-size: 1rem;
  }
  .candidates-grid .card-candidate img {
    margin-bottom: 15px;
  }
  .candidates-grid .card-candidate:nth-child(even) {
    margin-top: 25px;
    margin-bottom: -25px;
  }
}
@media only screen and (max-width: 960px) {
  .candidates-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    margin-bottom: 150px;
  }
}
@media only screen and (max-width: 820px) {
  .candidates-grid {
    margin-bottom: 50px;
  }
}
#modalContainer dialog.candidate-dialog {
  position: fixed;
  border: 0;
  margin: auto;
  max-width: 1150px;
  width: calc(100% - 25px);
  display: none;
  overflow: hidden;
  /*
    background-image: linear-gradient(0deg, rgba(195, 0, 123, 0.80) 0%, rgba(195, 0, 123, 0.80) 100%);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 350px 100%;
    background-blend-mode: multiply;
    */
}
#modalContainer dialog.candidate-dialog::before {
  background-image: linear-gradient(0deg, rgba(var(--cat-color, 195, 0, 123), 1) 0%, rgba(var(--cat-color, 195, 0, 123), 1) 100%), url(../gfx/module-bg_grey.png);
  background-blend-mode: multiply;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 350px;
  content: "";
  pointer-events: none;
  z-index: 0;
  will-change: background;
}
#modalContainer dialog.candidate-dialog .dialog-content {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, auto);
  padding: 50px;
  gap: 50px;
  overflow: auto;
  max-height: calc(100vh - 60px);
}
#modalContainer dialog.candidate-dialog .dialog-title {
  font-size: 2.813rem;
  font-weight: 700;
  line-height: 130%;
  color: var(--primary-color);
  text-box: trim-both cap alphabetic;
  margin-bottom: 50px;
}
#modalContainer dialog.candidate-dialog figure {
  position: relative;
  z-index: 2;
}
#modalContainer dialog.candidate-dialog figure.dialog-image {
  grid-area: 1 / 1 / 2 / 3;
}
#modalContainer dialog.candidate-dialog figure.dialog-image img {
  width: 100%;
}
#modalContainer dialog.candidate-dialog figure.dialog-logo {
  grid-area: 2 / 2 / 3 / 3;
  text-align: right;
}
#modalContainer dialog.candidate-dialog article {
  grid-area: 1 / 3 / 3 / 5;
}
#modalContainer dialog.candidate-dialog .candidate-contact {
  grid-area: 2 / 1 / 3 / 2;
  color: #fff;
  color: contrast-color(rgb(var(--cat-color, var(--secondary-color))));
  position: relative;
  z-index: 2;
}
#modalContainer dialog.candidate-dialog .candidate-contact .name {
  font-weight: 700;
}
#modalContainer dialog.candidate-dialog .candidate-contact ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding-left: 0;
}
#modalContainer dialog.candidate-dialog .candidate-contact ul a {
  text-decoration: none;
  color: inherit;
}
#modalContainer dialog.candidate-dialog .candidate-contact ul li {
  color: #fff;
  color: contrast-color(rgb(var(--cat-color, var(--secondary-color))));
  display: flex;
  flex-direction: row;
  gap: 15px;
  align-items: center;
}
#modalContainer dialog.candidate-dialog .candidate-contact ul li::before {
  font-size: 1.25rem;
}
#modalContainer dialog.candidate-dialog .candidate-contact ul li.icon-eventpage {
  font-weight: 700;
}
#modalContainer dialog.candidate-dialog .dialog-close {
  border: 0;
  cursor: pointer;
  width: 70px;
  height: 70px;
  display: grid;
  place-content: center;
  background: #99D0E6;
  color: var(--text-color);
  font-size: 1.25rem;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
}
#modalContainer dialog.candidate-dialog .dialog-close:hover {
  background: var(--text-color);
  color: #99D0E6;
}
#modalContainer dialog.candidate-dialog address {
  font-style: normal;
  margin-bottom: 25px;
}
#modalContainer dialog.candidate-dialog::backdrop {
  background: rgba(230, 243, 249, 0.9);
  backdrop-filter: blur(0);
}
#modalContainer dialog.candidate-dialog[open] {
  display: block;
}
@media only screen and (max-width: 960px) {
  #modalContainer dialog.candidate-dialog .dialog-content {
    grid-template-columns: auto;
    grid-template-rows: auto;
    padding: 25px;
    gap: 25px;
    position: relative;
    z-index: 2;
  }
  #modalContainer dialog.candidate-dialog::before {
    width: 100%;
    height: 140px;
    background-position: bottom;
  }
  #modalContainer dialog.candidate-dialog figure.dialog-image {
    grid-area: 1 / 1 / 2 / 2;
  }
  #modalContainer dialog.candidate-dialog figure.dialog-logo {
    grid-area: 3 / 1 / 4 / 2;
    max-width: 70px;
  }
  #modalContainer dialog.candidate-dialog figure.dialog-logo img {
    max-width: 100%;
    height: auto !important;
  }
  #modalContainer dialog.candidate-dialog article {
    grid-area: 2 / 1 / 3 / 2;
    background: #fff;
    margin: 0 -25px;
    padding: 25px;
  }
  #modalContainer dialog.candidate-dialog .candidate-contact {
    grid-area: 4 / 1 / 5 / 2;
    background-image: linear-gradient(0deg, rgba(var(--cat-color, 195, 0, 123), 1) 0%, rgba(var(--cat-color, 195, 0, 123), 1) 100%), url(../gfx/module-bg_grey.png);
    background-blend-mode: multiply;
    background-position: center;
    margin: 0 -25px -25px;
    padding: 25px;
  }
}
.color-transition {
  animation: fadeColor 550s ease;
}
@keyframes fadeColor {
  0% {
    opacity: 0.7;
  }
  100% {
    opacity: 1;
  }
}
.row-candidates {
  position: relative;
  z-index: 1;
  clip-path: inset(0 0 0 0);
  padding-bottom: 1px;
  margin-bottom: 0;
}
.row-candidates article {
  margin-bottom: 80px;
  margin-right: 100px;
}
.row-candidates article h2,
.row-candidates article p {
  color: contrast-color(rgb(var(--cat-color, var(--secondary-color))));
}
@media only screen and (max-width: 1780px) {
  .row-candidates article {
    margin-right: 200px;
  }
}
@media only screen and (max-width: 1680px) {
  .row-candidates article {
    margin-right: 300px;
  }
}
@media only screen and (max-width: 1366px) {
  .row-candidates article {
    margin-right: 350px;
  }
}
@media only screen and (max-width: 1120px) {
  .row-candidates article {
    margin-right: auto;
    width: 55%;
  }
}
@media only screen and (max-width: 820px) {
  .row-candidates article {
    width: auto;
  }
}
.row-candidates::before {
  position: fixed;
  content: '';
  width: calc(100% - 115px);
  height: 100%;
  top: 80px;
  left: 0;
  background: url(../gfx/thex-header-mask.svg) no-repeat;
  background-position: left top;
  background-size: 100%;
}
@media only screen and (min-width: 2000px) {
  .row-candidates::before {
    background-size: 100%;
  }
}
.row-candidates .backgrnd {
  position: fixed;
  width: calc(100% + 285px);
  height: 100%;
  top: 80px;
  left: 0;
  z-index: -1;
  background: linear-gradient(37.6deg, rgba(var(--cat-color, var(--secondary-color)), 0.8) 0%, rgba(var(--cat-color, var(--secondary-color)), 0.8) 100%), url(../gfx/candidats-bg.jpg) no-repeat;
  background-position: right top;
  background-repeat: no-repeat;
  -webkit-mask-image: url(../gfx/thex-header-mask-clip.svg);
  mask-image: url(../gfx/thex-header-mask-clip.svg);
  mask-repeat: no-repeat;
  background-size: auto 100vh;
  transition: background 550ms ease-in-out;
  will-change: background;
}
@media screen and (min-width: 760px) {
  .row-candidates .backgrnd {
    width: calc(100% - 130px);
    height: 200%;
    top: 80px;
    left: 0;
  }
}
@media only screen and (min-width: 2000px) {
  .row-candidates .backgrnd {
    background-size: 100%;
  }
}
@media only screen and (max-width: 768px) {
  .row-candidates .backgrnd {
    background-size: cover;
  }
}
.row-candidates .content-width {
  padding-top: 200px;
}
@media only screen and (max-width: 960px) {
  .row-candidates .content-width {
    padding-top: 50px;
  }
  .row-candidates article {
    margin-right: 0;
    margin-bottom: 50px;
  }
}
.row-candidates + .row-candidates .content-width {
  padding-top: 100px;
}
#events-container .content-width {
  display: flex;
  flex-direction: column;
}
#events-container .calender-month {
  display: flex;
  flex-direction: row;
  order: 1;
  align-items: center;
  margin: 15px 0 40px 0;
}
#events-container .calender-month button {
  cursor: pointer;
  background: transparent;
  font-size: 25px;
  color: var(--primary-color);
  border: 0;
  width: 30px;
  height: 30px;
}
#events-container .calender-month button:hover {
  color: var(--text-color);
}
#events-container .calender-month {
  order: 2;
}
#events-container .filter-panel {
  order: 1;
}
#events-container .calendar-widget {
  order: 3;
}
#events-container h2 {
  display: flex;
  min-width: 325px;
  justify-content: center;
  margin-bottom: 0;
}
@media screen and (max-width: 560px) {
  #events-container h2 {
    min-width: 0;
    width: 100%;
  }
}
#events-container h2 .icon-prev,
#events-container h2 .icon-next {
  font-size: 25px;
  color: var(--primary-color);
}
#events-container h2 .icon-next {
  margin-right: 0;
}
#events-container .filter-accordion {
  background: none;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: bold;
  border: none;
  border-top: 1px solid rgba(0, 137, 193, 0.2);
  border-bottom: 1px solid rgba(0, 137, 193, 0.2);
  padding: 30px 15px;
  margin: 0 -15px;
  color: var(--primary-color);
  cursor: pointer;
  width: calc(100% + 30px);
  text-align: left;
  outline: none;
  transition: 0.4s;
  position: relative;
  margin-bottom: 30px;
}
@media screen and (min-width: 920px) {
  #events-container .filter-accordion {
    display: none;
  }
}
#events-container .filter-accordion::before,
#events-container .filter-accordion::after {
  position: absolute;
  content: '';
  width: 20px;
  height: 1px;
  top: 50%;
  right: 15px;
  background: var(--primary-color);
}
#events-container .filter-accordion::after {
  transform: rotate(90deg);
  transition: all 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
#events-container .filter-accordion:hover {
  color: #1f384d;
}
#events-container .filter-accordion.active {
  border-bottom: none;
}
#events-container .filter-accordion.active::after {
  transform: rotate(0);
}
#events-container .filter-panel {
  padding: 15px 0;
  background-color: none;
  display: none;
  position: relative;
}
@media screen and (min-width: 920px) {
  #events-container .filter-panel {
    display: block;
  }
}
@media screen and (max-width: 760px) {
  #events-container .filter-panel {
    margin-bottom: 30px;
  }
}
#events-container .filter-panel::before {
  position: absolute;
  content: '';
  width: 100vw;
  height: 1px;
  bottom: 0;
  left: -15px;
  background: var(--primary-color);
  opacity: 0.2;
}
@media screen and (min-width: 920px) {
  #events-container .filter-panel::before {
    display: none;
  }
}
#events-container .event-filter-select {
  margin-bottom: 30px;
}
.award-page .magenta h1,
.award-page .magenta h2,
.award-page .magenta h3,
.award-page .magenta h4,
.award-page .magenta h5,
.award-page .magenta h6,
.award-page .magenta p {
  color: #9d0062;
}
@media screen and (max-width: 560px) {
  .award-page header .content-width::before {
    display: none;
  }
}
.award-page .teaser::before {
  background: url(../gfx/thex-award-header.svg) no-repeat;
}
.award-page .teaser .claim h1 {
  color: #fff;
}
.award-page .hamburger .burger {
  background: #9d0062;
}
.award-page .hamburger .burger em {
  background: #ffffff;
}
.award-page .hamburger .burger em::before,
.award-page .hamburger .burger em::after {
  background: #ffffff;
}
.award-page .hamburger.open em {
  background: none;
}
.award-page nav.main.inline ul li a::before {
  border-color: transparent transparent transparent #9d0062;
}
@media screen and (min-width: 760px) {
  .award-page nav.main.inline ul li a::before {
    border-color: transparent transparent #9d0062 transparent;
  }
}
.award-page p a {
  border-color: #9d0062;
}
.award-page p a:hover {
  border-color: #1f384d;
}
.award-page .button {
  background: #9d0062;
  color: #fff;
  border-color: #9d0062;
}
.award-page .button:hover {
  background: #1f384d;
  border-color: #1f384d;
}
.award-page .button.secondary {
  background: #0089C1;
  border-color: #0089C1;
}
.award-page .button.secondary:hover {
  background: #1f384d;
  border-color: #1f384d;
}
.award-page .button.link {
  background: none;
  color: #0089C1;
}
.award-page .button.link::before {
  background: #9d0062;
}
.award-page .button.link:hover {
  color: #1f384d;
}
.award-page .button.link:hover::before {
  background: #1f384d;
}
.award-page .contact-cta .button {
  background: #1f384d;
  margin-right: 0;
}
.award-page .contact-cta .button:hover {
  background: #9d0062;
  color: #fff;
}
.award-page .contact-overlay .close {
  margin-right: 0;
}
.award-page .contact-overlay .close:hover {
  background: #E6F3F9;
  color: #1f384d;
}
.award-page .contact-overlay .formie-form .formie-checkbox-option-label a,
.award-page .contact-overlay .formie-form .formie-agree-option-label a {
  border-color: #9d0062;
}
.award-page .contact-overlay .formie-form .formie-checkbox-option-label a:hover,
.award-page .contact-overlay .formie-form .formie-agree-option-label a:hover {
  border-color: #66B8DA;
}
.award-page .contact-overlay .formie-form .formie-button.formie-button-submit {
  background: #9d0062;
  color: #fff;
}
.award-page .contact-overlay .formie-form .formie-button.formie-button-submit:hover {
  background: #E6F3F9;
  color: #1f384d;
}
.award-page .teaser-award .button {
  background: #ffffff;
  color: #0089C1;
  border-color: #ffffff;
}
.award-page .teaser-award .button:hover {
  background: #1f384d;
  border-color: #1f384d;
  color: #ffffff;
}
.award-page .teaser-award .button.secondary {
  background: #0089C1;
  border-color: #0089C1;
  color: #ffffff;
}
.award-page .teaser-award .button.secondary:hover {
  background: #1f384d;
  border-color: #1f384d;
  color: #ffffff;
}
.award-page .registration-steps .formie-tab.formie-tab-current .step-number,
.award-page .formie-page-tabs .formie-tab.formie-tab-current .step-number {
  background: #9d0062;
}
.award-page .registration-steps .formie-tab.formie-tab-current .step-number em,
.award-page .formie-page-tabs .formie-tab.formie-tab-current .step-number em {
  color: #fff;
}
.award-page .formie-button.formie-button-submit {
  background: #9d0062;
  color: #fff;
}
.award-page .formie-button.formie-button-submit:hover {
  background: #1f384d;
  color: #fff;
}
.award-page .formie-button.formie-button-submit:focus {
  background: #1f384d;
}
.award-page .formie-button.formie-button-ghost::before,
.award-page .formie-button.formie-repeater-add-button::before {
  background: #9d0062;
}
.award-page .formie-button.formie-button-ghost:hover::before,
.award-page .formie-button.formie-repeater-add-button:hover::before {
  background: #1f384d;
}
.award-page .formie-button.formie-button-ghost:focus,
.award-page .formie-button.formie-repeater-add-button:focus {
  text-decoration: none;
  background: none;
}
/*
*
*   SECONDRED Boilerplate
*   Debug Style
*   Author: SECONDRED Newmedia GmbH - www.secondred.de
*
*/
*:focus:not(:focus-visible) {
  outline: none;
}
*:focus-visible {
  outline: 2px solid #000;
  outline-offset: 2px;
}
.nav-skip-wrap {
  position: relative;
}
.nav-skip {
  position: absolute;
  top: -500px;
  left: 30px;
  padding: 1rem;
  z-index: 10000;
}
.nav-skip:focus-within {
  top: 0;
}
.nav-skip a {
  padding: 1rem;
  display: block;
  background-color: #fff;
  color: var(--primary-color);
  text-decoration: none;
  margin-bottom: 1em;
}
.nav-skip a:last-child {
  margin-bottom: 0;
}
@media screen and (prefers-reduced-motion: reduce) {
  * {
    animation: none !important;
    transition: none !important;
  }
}
@media screen and (prefers-color-scheme: dark), screen and (prefers-contrast: more) {
  /* Dark Mode styles go here */
}
@media (prefers-contrast: more), (forced-colors: active) {
  /* Increased Contrast Mode styles go here */
  :root {
    --primary-color: #005274;
    --secondary-color: #C9D30E;
    --text-color: #1f384d;
    --color-lightblue: #0089C1;
    --color-grey: #333;
    --stroke-color: #337590;
  }
  .image.video .video-play-btn {
    color: var(--primary-color);
  }
}

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