* {
   box-sizing: border-box;
   -webkit-font-smoothing: antialiased;
   padding: 0;
   margin: 0;
}
.breadcrumb {
   display: none !important;
}
.container.zindex5 {
   margin: 0 !important;
   padding: 0 !important;
   max-width: unset !important;
   z-index: unset;
}
main {
   padding-top: 40px;
}
.layout__container {
   margin-bottom: 75px;
}
.layout__container--color {
   background-color: #1A6E4A;
   color: #fff;
}
.layout__container--blue {
   background-color: rgba(1, 94, 154, 0.1);
   padding: 70px 0 100px;
   margin-bottom: 0;
}
.layout__container--padding {
   padding: 60px 0;
}
.layout__container--smallmargin {
   margin-bottom: 40px;
}
.layout__container--nomargin {
   margin-bottom: 0 !important;
}
.layout__container--no-overflow {
   overflow: hidden;
}
/* text */
.text {
   font-size: 20px;
   line-height: 28px;
}
.text.text--small {
   font-size: 14px;
   line-height: 22px;
}
.text small {
   display: inline-block;
   font-size: 14px !important;
   line-height: 20px !important;
}
.text h1 {
   font-size: 42px;
   line-height: 55px;
}
.text h1,
.text h2,
.text h3,
.text h4 {
   color: #015E9A;
   padding: 0;
   font-weight: bold;
}
.text h4 {
   font-size: 18px;
   line-height: 28px;
   font-weight: normal;
}
.text p {
   margin-bottom: 25px;
}
.text a {
   color: #B3C535;
   font-weight: 600;
   text-decoration: underline;
}
.text ul {
   padding-left: 50px;
}
.text--white {
   color: #fff;
}
.text--padding {
   padding: 70px 40px;
}
.text--pl {
   padding-left: 40px;
}
.text.text--white h1,
.text.text--white h2,
.text.text--white h3,
.text.text--white h4 {
   color: #fff;
}
.text.text--white a {
   color: #fff;
   text-decoration: underline;
}
.text__person {
   display: flex;
   justify-content: right;
   padding-top: 60px;
}
.text__person img {
   border-radius: 50%;
   width: 300px;
   height: 300px;
   object-fit: cover;
}
.layout__container--color .image-full {
   position: relative;
   width: calc(100% + 30px);
   height: 100%;
   min-height: 700px;
   margin-left: -15px;
}
.layout__container--color .image-full__source {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
}
/* cta */
.cta {
   display: inline-block;
   border: 1px solid #015E9A;
   border-radius: 5px;
   background: transparent;
   color: #015E9A !important;
   padding: 8px 20px;
   transition: 0.3s ease;
   margin-top: 30px;
   font-size: 20px;
   line-height: 30px;
   text-decoration: none !important;
}
.cta.cta--blue {
   background: #015E9A;
   color: #fff !important;
}
.cta:hover {
   background: #015E9A;
   color: #fff !important;
   text-decoration: none;
}
.cta.cta--blue:hover {
   background: #1A6E4A;
}
/* two-column */
.two-column__images {
   position: relative;
   width: 100%;
   display: flex;
   justify-content: right;
   position: relative;
}
.two-column__image {
   width: 75% !important;
   padding-top: 85%;
   position: relative;
   margin-right: 8%;
   transform: rotate(10deg);
}
.two-column__image:nth-child(2) {
   position: absolute;
   transform: rotate(5deg);
   margin-right: 20%;
   margin-top: 4%;
}
.two-column__image:nth-child(3) {
   position: absolute;
   transform: rotate(-5deg);
   margin-right: 5%;
   margin-top: 10%;
}
.two-column__image img {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
   box-shadow: 0 0 10px 10px rgba(0,0,0,0.1);
}
.two-column__play {
   position: absolute;
   top: 50%;
   left: 50%;
   width: 150px;
   height: 150px;
   transform: translate(-30%, -20%);
   background: transparent;
   border: none;
   outline: none !important;
}
/* videomodal */
#videomodal {
   position: fixed;
   top: 0;
   left: 0;
   display: flex;
   align-items: center;
   width: 100%;
   height: 100vh;
   background: rgba(0,0,0,0.9);
   opacity: 0;
   pointer-events: none;
   transition: 0.5s ease;
   z-index: 99999 !important;
}
#videomodal.active {
   opacity: 1;
   pointer-events: visible;
}
#videomodal iframe {
   width: 100% !important;
}
#videomodal-close {
   position: absolute;
   top: 20px;
   right: 20px;
   display: flex;
   justify-content: center;
   align-items: center;
   width: 50px;
   height: 50px;
   background: transparent;
   border: 1px solid #fff;
   border-radius: 50%;
}
#videomodal-close img {
   width: 60% !important;
}
#videomodal-wrapper {
   width: 100%;
   padding-top: 56.25%;
   position: relative;
}
#videomodal-wrapper iframe {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
}
/* cards */
.cards {
   padding: 80px 0;
}
.cards__title {
   font-size: 24px;
   line-height: 30px;
   text-transform: uppercase;
   font-weight: normal !important;
   font-family: 'Open Sans', Helvetica, Arial, sans-serif !important;
   margin-bottom: 40px;
}
.cards__wrapper {
   display: grid;
   gap: 30px;
   grid-template-columns: 1fr 1fr;
}
.cards__wrapper--3 {
   grid-template-columns: 1fr 1fr 1fr;
}
.cards__item {
   width: 100%;
   background: #fff;
   border-radius: 5px;
   color: #1A6E4A !important;
   padding: 20px;
   border: 5px solid #fff;
   display: flex;
   align-items: flex-start;
   flex-direction: column;
   flex-wrap: wrap;
   transition: border 0.3s ease;
}
.cards__item:hover {
   text-decoration: none;
   border: 5px solid #B3C535;
}
.cards__item span {
   font-size: 18px;
   color: #000;
}
.cards__item h4 {
   font-size: 28px;
   line-height: 40px;
   max-width: 350px;
}
.cards__item img {
   width: unset;
   height: 100px;
   margin-bottom: 60px;
}
.cards__wrapper--alt {
   display: flex;
   flex-wrap: wrap;
}
.cards__wrapper--alt .cards__item {
   width: calc(25% - (90px / 4));
   pointer-events: none;
   justify-content: space-between;
   padding: 14px 14px 10px 14px;
}
.cards__wrapper--alt .cards__item h4 {
   font-size: 16px;
   line-height: 20px;
   max-width: 350px;
   font-weight: bold;
}
.cards__wrapper--alt .cards__item img {
   width: unset;
   height: 70px;
   margin-bottom: 35px;
}

/* team */
.team__wrapper {
   display: grid;
   gap: 60px 30px;
   grid-template-columns: 50% 50%;
}
.team__item {
   width: 100%;
   font-size: 14px;
   line-height: 20px;
}
.team__item strong,
.team__item b {
   color: #015E9A;
   font-weight: 600;
}
.team__item a {
   color: #B3C535;
   font-weight: 600;
   text-decoration: underline;
}
.team__item img {
   width: 120px;
   height: 120px;
   border-radius: 50%;
   object-fit: cover;
   margin-bottom: 20px;
}
/* modal */
.modal-backdrop.show {
   z-index: 9998 !important;
   opacity: 0.8 !important;
}
.modal {
   z-index: 9999 !important;
   padding: 0 !important;
}
.modal-dialog {
   margin-top: 160px;
   margin-bottom: 0;
   min-height: calc(100vh - 160px);
   max-width: 1100px;
   width: 100%;
}
.modal-content {
   margin-top: unset;
   min-height: 100vh;
   max-width: 1100px;
   padding: 100px;
   border: none;
   border-radius: 0;
}
.modal-close {
   width: 50px;
   height: 50px;
   background-color: #B3C535;
   border-radius: 50%;
   border: none;
   position: absolute;
   top: -25px;
   right: -25px;
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='39' height='39' viewBox='0 0 39 39'%3E%3Cg id='Gruppe_17271' data-name='Gruppe 17271' transform='translate(-39 -3879)'%3E%3Cg id='Gruppe_17270' data-name='Gruppe 17270'%3E%3Cpath id='Pfad_143' data-name='Pfad 143' d='M3,21,21,3' transform='translate(46.414 3886.414)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3Cpath id='Pfad_144' data-name='Pfad 144' d='M21,21,3,3' transform='translate(46.414 3886.414)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/g%3E%3Ccircle id='Ellipse_181' data-name='Ellipse 181' cx='19.5' cy='19.5' r='19.5' transform='translate(39 3879)' fill='none'/%3E%3C/g%3E%3C/svg%3E%0A");
   background-position: center;
   background-size: cover;
}
/* person */
.person {
   display: flex;
   gap: 40px;
   margin-bottom: 70px;
}
.person__image {
   width: 200px;
   height: 200px;
   border-radius: 50%;
   object-position: center;
   object-fit: cover;
}
.person__content {
   display: flex;
   flex-direction: column;
   width: calc(100% - 240px);
   max-width: 500px;
   color: #015E9A;
}
.person__content blockquote {
   font-size: 28px;
   line-height: 34px;
   font-style: italic;
   margin-bottom: 20px;
}
.person__content strong {
   font-family: "Roboto Slab";
   font-weight: bold;
   font-size: 20px;
   line-height: 28px;
}
.person__content span {
   font-size: 20px;
   line-height: 28px;
}
/* overlays */
.overlays {
   width: 50vw;
   overflow: hidden;
   padding-bottom: 70px;
}
.overlays__item {
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   background-color: #B3C535;
   color: #fff;
   border: none;
   text-align: left;
   box-shadow: 0px 20px 10px -10px rgba(0, 0, 0, 0.15);
   width: 430px;
   height: 500px;
   margin-right: 30px;
   padding: 30px;
}
.overlays__item blockquote {
   font-size: 28px;
   line-height: 32px;
   font-style: italic;
   margin-bottom: 40px;
   opacity: 0;
   transform: translateY(20px);
   transition: 0.5s ease;
}
.overlays__item:hover blockquote {
   opacity: 1;
   transform: translateY(0);
}
.overlays__item h4 {
   font-size: 28px;
   line-height: 34px;
   font-family: "Roboto Slab";
   font-weight: bold;
   line-height: normal;
}
.overlays .flickity-viewport {
   overflow: visible;
}
.overlays .flickity-button {
   left: 0;
   right: unset;
   top: unset;
   bottom: -70px;
   transform: unset;
   border-radius: unset;
   background-color: transparent;
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25.073' height='24.52' viewBox='0 0 25.073 24.52'%3E%3Cg id='Gruppe_17272' data-name='Gruppe 17272' transform='translate(1059.073 1256.105) rotate(180)'%3E%3Cpath id='Pfad_145' data-name='Pfad 145' d='M13.228,1,24.073,11.846,13.228,22.691' transform='translate(1034 1232)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3Cpath id='Pfad_146' data-name='Pfad 146' d='M24.073,11.846H1' transform='translate(1034 1232)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E%0A");
   background-position: center;
   background-size: contain;
   background-repeat: no-repeat;
}
.overlays svg {
   display: none;
}
.overlays .flickity-button.next {
   left: 70px;
   transform: rotate(180deg);
}
@media only screen and (max-width:991px) {
   .overlays {
      overflow: visible;
      margin-top: 40px;
   }
   .overlays__item blockquote {
      opacity: 1;
      transform: translateY(0);
   }
   .cards__wrapper--alt .cards__item {
      width: calc(50% - 15px);
   }
   .text__person {
      justify-content: center;
      padding-top: 0;
      margin-bottom: 30px;
   }
   .text__person img {
      width: 240px;
      height: 240px;
   }
   .text__row {
      flex-direction: column-reverse;
   }
}
@media only screen and (max-width:767px) {
   main {
      padding-top: 20px;
   }
   .layout__container--color .image-full {
      min-height: unset;
      height: 350px;
   }
   .text--padding {
      padding: 40px 0px;
   }
   .text--pl {
      padding-left: unset;
   }
   .text h1 {
      font-size: 30px;
      line-height: 40px;
   }
   .two-column__images {
      margin-top: 60px;
   }
   .two-column__play {
      transform: translate(-50%, -30%)
   }
   .cards__wrapper {
      width: 100%;
      grid-template-columns: 1fr;
   }
   .cards__item {
      width: 100%;
      padding: 20px;
   }
   .cards__item img {
      margin-bottom: 20px;
   }
   .team {
      margin-top: 40px;
   }
   .team__wrapper {
      grid-template-columns: 100%;
   }
   .team__item {
      text-align: center;
   }
   .modal-dialog {
      margin-top: 0;
      min-height: 100vh;
      margin: auto;
   }
   .modal-content {
      padding: 60px 20px 50px;
   }
   .modal-close {
      width: 40px;
      height: 40px;
      top: 20px;
      right: 20px;
   }
   .person {
      flex-direction: column;
      gap: 20px;
   }
   .person__image {
      width: 150px;
      height: 150px;
   }
   .person__content {
      width: 100%;
   }
   .person__content blockquote {
      font-size: 24px;
      line-height: 30px;
   }
   .person__content strong {
      font-family: "Roboto Slab";
      font-weight: bold;
      font-size: 20px;
      line-height: 28px;
   }
   .person__content span {
      font-size: 20px;
      line-height: 28px;
   }
   .overlays__item {
      width: 320px;
      height: 500px;
      margin-right: 20px;
      padding: 20px;
   }
   .overlays__item blockquote {
      font-size: 22px;
      line-height: 28px;
      margin-bottom: 30px;
   }
   .overlays__item h4 {
      font-size: 20px;
      line-height: 30px;
   }
   .cards__wrapper--alt .cards__item {
      width: 100%;
   }
}
