@charset "UTF-8";
.contao-cookiebar {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 9999;
  font-size: 0;
  letter-spacing: 0;
  text-align: center;
  padding: 15px;
  max-height: 100vh;
  box-sizing: border-box;
  pointer-events: none;
  overflow: hidden; }
  .contao-cookiebar * {
    box-sizing: border-box; }
  .contao-cookiebar:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle; }
  .contao-cookiebar .cc-inner {
    display: inline-block;
    overflow-y: auto;
    max-height: 100%;
    max-width: 100%;
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    font-size: 1rem;
    text-align: left; }
  .contao-cookiebar.cc-top .cc-inner {
    vertical-align: top; }
  .contao-cookiebar.cc-top.cc-active .cc-inner {
    animation: cookiebar-top-in 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-top.cc-saved .cc-inner {
    animation: cookiebar-top-out 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-bottom .cc-inner {
    vertical-align: bottom; }
  .contao-cookiebar.cc-bottom.cc-active .cc-inner {
    animation: cookiebar-bottom-in 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-bottom.cc-saved .cc-inner {
    animation: cookiebar-bottom-out 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-middle .cc-inner {
    vertical-align: middle; }
  .contao-cookiebar.cc-middle.cc-active .cc-inner {
    animation: cookiebar-middle-in 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-middle.cc-saved .cc-inner {
    animation: cookiebar-middle-out 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-left {
    text-align: left; }
  .contao-cookiebar.cc-right {
    text-align: right; }
  .contao-cookiebar .cc-head h1:first-child, .contao-cookiebar .cc-head h2:first-child, .contao-cookiebar .cc-head h3:first-child, .contao-cookiebar .cc-head h4:first-child, .contao-cookiebar .cc-head h5:first-child, .contao-cookiebar .cc-head h6:first-child {
    margin-top: 0; }
  .contao-cookiebar .cc-head p {
    margin-bottom: 15px; }
  .contao-cookiebar .cc-btn {
    display: inline-block;
    cursor: pointer;
    width: 100%;
    padding: 8px 14px;
    margin-bottom: 8px;
    font-size: 15px;
    outline: 0 none;
    border: 1px solid #cfcfcf;
    border-radius: 4px;
    color: #444;
    background: #f5f5f5; }
    .contao-cookiebar .cc-btn:hover {
      background: #ececec; }
    .contao-cookiebar .cc-btn:last-child {
      margin-bottom: 0; }
  .contao-cookiebar .grayscale .cc-btn {
    background: #f1efef; }
    .contao-cookiebar .grayscale .cc-btn:hover {
      background: #ececec; }
    .contao-cookiebar .grayscale .cc-btn.success {
      background: #fbfbfb; }
      .contao-cookiebar .grayscale .cc-btn.success:hover {
        background: #f7f7f7; }
  .contao-cookiebar .highlight .cc-btn.success {
    background: #4e9e3e;
    border-color: #3e7830;
    color: #fff; }
    .contao-cookiebar .highlight .cc-btn.success:hover {
      background: #4c933f; }
  .contao-cookiebar label {
    position: relative;
    display: block;
    padding: 8px 13px 8px 0;
    line-height: 1.2rem; }
    .contao-cookiebar label.group {
      font-weight: 600; }
  .contao-cookiebar input {
    position: absolute;
    width: 1px;
    height: 1px;
    outline: 0 none;
    opacity: 0; }
    .contao-cookiebar input + label {
      padding: 8px 13px 8px 50px;
      cursor: pointer; }
      .contao-cookiebar input + label:before {
        content: '';
        position: absolute;
        top: 6px;
        left: 0;
        width: 35px;
        height: 18px;
        margin: 0;
        box-sizing: content-box;
        border-radius: 10px;
        background: #fff;
        border: 2px solid #9c9b99;
        transition: border-color .2s; }
      .contao-cookiebar input + label:after {
        display: block;
        content: '';
        position: absolute;
        top: 10px;
        left: 4px;
        width: 14px;
        height: 14px;
        border-radius: 10px;
        background: #9c9b99;
        transition: background .2s, margin-left .2s, padding .2s; }
      .contao-cookiebar input + label:active:after {
        padding-left: 5px; }
    .contao-cookiebar input.cc-group-half + label:after {
      background: linear-gradient(to right, #9c9b99 0%, #9c9b99 50%, #399d32 50%, #399d32 100%); }
    .contao-cookiebar input:checked + label:after {
      background: #399d32;
      margin-left: 17px; }
    .contao-cookiebar input:checked + label:active:after {
      margin-left: 12px; }
    .contao-cookiebar input:checked + label:before {
      background: #dcf3db;
      border-color: #399d32; }
    .contao-cookiebar input:disabled + label {
      pointer-events: none; }
      .contao-cookiebar input:disabled + label:after {
        background: #c8c7c5; }
      .contao-cookiebar input:disabled + label:before {
        background: #f4f4f4;
        border-color: #c8c7c5; }
  .contao-cookiebar.cc-active .cc-inner {
    opacity: 1;
    pointer-events: auto;
    visibility: visible; }
  .contao-cookiebar.cc-active.cc-blocked {
    pointer-events: auto;
    animation: cookiebar-overlay-in 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-saved.cc-inner {
    opacity: 0;
    pointer-events: none;
    visibility: hidden; }
  .contao-cookiebar.cc-saved.cc-blocked {
    pointer-events: none;
    animation: cookiebar-overlay-out 0.5s ease-in-out forwards; }

@media (min-width: 768px) {
  .contao-cookiebar .cc-btn {
    width: auto;
    margin-bottom: 0; }
  .contao-cookiebar .cc-inner {
    max-width: 750px; } }

@keyframes cookiebar-overlay-in {
  0% {
    background: rgba(0, 0, 0, 0); }
  100% {
    background: rgba(0, 0, 0, 0.75); } }

@keyframes cookiebar-overlay-out {
  0% {
    background: rgba(0, 0, 0, 0.75); }
  100% {
    background: rgba(0, 0, 0, 0);
    visibility: hidden; } }

@keyframes cookiebar-top-in {
  0% {
    opacity: 0;
    transform: translateY(-100%); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

@keyframes cookiebar-top-out {
  0% {
    opacity: 1;
    visibility: visible;
    transform: translateY(0); }
  100% {
    opacity: 0;
    visibility: hidden;
    transform: translateY(-100%); } }

@keyframes cookiebar-middle-in {
  0% {
    opacity: 0;
    transform: scale(0); }
  100% {
    opacity: 1;
    transform: scale(1); } }

@keyframes cookiebar-middle-out {
  0% {
    opacity: 1;
    visibility: visible;
    transform: scale(1); }
  100% {
    opacity: 0;
    visibility: hidden;
    transform: scale(0); } }

@keyframes cookiebar-bottom-in {
  0% {
    opacity: 0;
    transform: translateY(100%); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

@keyframes cookiebar-bottom-out {
  0% {
    opacity: 1;
    visibility: visible;
    transform: translateY(0); }
  100% {
    opacity: 0;
    visibility: hidden;
    transform: translateY(100%); } }

.contao-cookiebar {
  color: #444444; }
  .contao-cookiebar p {
    color: #868686;
    line-height: 1.4; }
  .contao-cookiebar .cc-inner {
    padding: 25px;
    border-radius: 5px;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
    background: #fff; }
  .contao-cookiebar .cc-groups {
    display: none;
    padding-top: 15px; }
    .contao-cookiebar .cc-groups .cc-group {
      position: relative;
      border: 1px solid #d0d0d0;
      border-radius: 5px;
      margin-bottom: 10px;
      text-align: left; }
      .contao-cookiebar .cc-groups .cc-group > label {
        margin: 5px 130px 5px 10px; }
  .contao-cookiebar .cc-cookies {
    background: #fbfbfb;
    border-radius: 0 0 5px 5px; }
    .contao-cookiebar .cc-cookies > p {
      font-size: 0.875rem; }
    .contao-cookiebar .cc-cookies > p, .contao-cookiebar .cc-cookies > .cc-cookie {
      margin: 0;
      padding: 15px;
      border-top: 1px solid #e6e6e6; }
    .contao-cookiebar .cc-cookies .cc-cookie .cc-cookie-info {
      font-size: 0.875rem;
      background: #fff;
      padding: 10px;
      border-radius: 5px;
      border: 1px solid #efefef; }
      .contao-cookiebar .cc-cookies .cc-cookie .cc-cookie-info > div > span {
        font-weight: 600; }
      .contao-cookiebar .cc-cookies .cc-cookie .cc-cookie-info > div + div {
        margin-top: 5px;
        word-wrap: break-word; }
      .contao-cookiebar .cc-cookies .cc-cookie .cc-cookie-info + button.cc-detail-btn-details {
        margin-top: 15px; }
    .contao-cookiebar .cc-cookies .cc-cookie .cc-cookie-desc p {
      margin-bottom: 0; }
    .contao-cookiebar .cc-cookies .cc-cookie label.cookie + p, .contao-cookiebar .cc-cookies .cc-cookie label.cookie + .cc-cookie-info, .contao-cookiebar .cc-cookies .cc-cookie label.cookie + button.cc-detail-btn-details {
      margin-top: 10px; }
    .contao-cookiebar .cc-cookies .cc-cookie p {
      margin: 0 0 15px;
      font-size: 0.875rem; }
  .contao-cookiebar .cc-footer, .contao-cookiebar .cc-info {
    text-align: center; }
  .contao-cookiebar .cc-detail-btn-details {
    border: 0 none;
    outline: 0 none;
    background: transparent;
    font-size: 13px;
    letter-spacing: 0;
    text-transform: initial;
    cursor: pointer;
    color: #a2a2a2;
    text-decoration: underline;
    padding: 0;
    margin: 0 0 10px; }
    .contao-cookiebar .cc-detail-btn-details span:nth-child(2) {
      display: none; }
    .contao-cookiebar .cc-detail-btn-details.cc-active span:nth-child(1) {
      display: none; }
    .contao-cookiebar .cc-detail-btn-details.cc-active span:nth-child(2) {
      display: inline; }
    .contao-cookiebar .cc-detail-btn-details:hover {
      color: #717171; }
  .contao-cookiebar .cc-info {
    margin-top: 15px; }
    .contao-cookiebar .cc-info > p {
      font-size: 0.875rem; }
    .contao-cookiebar .cc-info > a {
      display: inline-block;
      font-size: 0.813rem;
      color: #a2a2a2;
      text-decoration: none; }
      .contao-cookiebar .cc-info > a:hover {
        color: #717171; }
      .contao-cookiebar .cc-info > a + a:before {
        display: inline-block;
        content: '·';
        margin-right: 5px; }

/* normalize */
html { font-family: sans-serif; line-height: 1.15; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
[hidden], template { display: none; }
a { background-color: transparent; }
a:active, a:hover { outline: 0; }
abbr[title] { border-bottom: 1px dotted; }
dfn { font-style: italic; }
mark { background: #F7DD45; color: #000; }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
img { border-style: none; }
svg:not(:root) { overflow: hidden; }
hr { box-sizing: content-box; height: 0; overflow: visible; }
pre { overflow: auto; font-family: monospace, monospace; font-size: 1em; }
code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; }
button, input, optgroup, select, textarea { color: inherit; font: inherit; margin: 0; }
button, input { overflow: visible; }
button, select { text-transform: none; }
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; }
button[disabled], html input[disabled] { cursor: default; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
input { line-height: normal; border-radius: 0;}
select { border-radius: 0;}
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; }
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; }
input[type="search"] { -webkit-appearance: textfield; box-sizing: content-box; border-radius: 0; -webkit-appearance: none !important; cursor:pointer;}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
input[type="submit"]{-webkit-transition: all 0.3s ease-out 0s; transition: all 0.3s ease-out 0s;}
legend { border: 0;  padding: 0; }
textarea { overflow: auto; }
optgroup { font-weight: bold; }
table { border-collapse: collapse; border-spacing: 0;}
td, th { padding: 0; }
::-moz-selection {background: #b7e6f8; text-shadow: none; }
audio, canvas, iframe, svg, video { vertical-align: middle; }
img { vertical-align: top; }
fieldset { border: 0; margin: 0; padding: 0; }
textarea { resize: vertical; }
.hidden, .invisible { display: none !important; }
.clearfix:before, .clearfix:after { content: " ";  display: table; }
.clearfix:after, .clear { clear: both; }
/* nur safari */
* {-webkit-tap-highlight-color: rgba(0,0,0,0);}
svg:not(:root) { overflow: hidden; }

/* allgemein */
* { margin:0; padding:0; border:0; }
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
html,body { height:100%; width:100%; }
html { font-size:100%;  }
a {text-decoration:none; -webkit-transition:all 0.3s ease-out; -moz-transition:all 0.3s ease-out; -o-transition:all 0.3s ease-out; transition:all 0.3s ease-out; display:inline-block; color:#222;}
*:focus  { outline: 0; }
ul, ol { margin: 0; padding: 0 ; }
nav ul, ul { list-style: none; list-style-image: none; }
.transit, input.submit, a img, a h2 {-webkit-transition:all 0.3s ease-out; -moz-transition:all 0.3s ease-out; -o-transition:all 0.3s ease-out; transition:all 0.3s ease-out;}

/* fonts */
@font-face { font-family: 'poppinsbold'; src: url('../../files/system/css/fonts/poppins-bold-webfont.woff2') format('woff2'),url('../../files/system/css/fonts/poppins-bold-webfont.woff') format('woff'); font-weight: normal;  font-style: normal; font-display: swap;}
@font-face { font-family: 'poppinsbold_italic'; src: url('../../files/system/css/fonts/poppins-bolditalic-webfont.woff2') format('woff2'),         url('../../files/system/css/fonts/poppins-bolditalic-webfont.woff') format('woff'); font-weight: normal; font-style: normal; font-display: swap;}
@font-face { font-family: 'poppinsregular'; src: url('../../files/system/css/fonts/poppins-regular-webfont.woff2') format('woff2'), url('../../files/system/css/fonts/poppins-regular-webfont.woff') format('woff'); font-weight: normal; font-style: normal; font-display: swap;}
@font-face { font-family: 'robotolight';  src: url('../../files/system/css/fonts/roboto-light-webfont.woff2') format('woff2'), url('../../files/system/css/fonts/roboto-light-webfont.woff') format('woff'); font-weight: normal;  font-style: normal; font-display: swap;}
@font-face { font-family: 'robotoregular'; src: url('../../files/system/css/fonts/roboto-regular-webfont.woff2') format('woff2'), url('../../files/system/css/fonts/roboto-regular-webfont.woff') format('woff');  font-weight: normal;  font-style: normal; font-display: swap;}
@font-face {font-family: 'robotobold'; src: url('../../files/system/css/fonts/roboto-bold-webfont.woff2') format('woff2'), url('../../files/system/css/fonts/roboto-bold-webfont.woff') format('woff');    font-weight: normal;  font-style: normal; font-display: swap;}
@font-face {-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-smoothing: antialiased; }

/* icons */
@font-face { font-family: 'icons';  src: url('../../files/system/css/fonts/icons.eot'); src: url('../../files/system/css/fonts/icons.eot#iefix') format('embedded-opentype'), url('../../files/system/css/fonts/icons.ttf') format('truetype'), url('../../files/system/css/fonts/icons.woff') format('woff'), url('../../files/system/css/fonts/icons.svg') format('svg'); font-weight: normal; font-style: normal; font-display: block; }
[class^="icon-"], [class*=" icon-"] { font-family: 'icons' !important; speak: never; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.icon-about:before { content: "\e900";}
.icon-ai:before {content: "\e901";}
.icon-ai2:before {content: "\e902";}
.icon-ai3:before {content: "\e903";}
.icon-code:before {content: "\e904";}
.icon-code2:before {content: "\e905";}
.icon-dashboard:before {content: "\e906";}
.icon-data:before {content: "\e907";}
.icon-down:before {content: "\e908";}
.icon-github:before {content: "\e909";}
.icon-map:before {content: "\e90a";}
.icon-methods:before {content: "\e90b";}
.icon-products:before {content: "\e90c";}
.icon-right1:before {content: "\e90d";}
.icon-right2:before {content: "\e90e";}
.icon-skills:before {content: "\e90f";}
.icon-team:before {content: "\e910";}
.icon-team2:before {content: "\e911";}
.icon-twitter:before {content: "\e912";}
.icon-linkedin:before {content: "\e913";}

body {font-family: "robotolight"; font-size: 1.35rem; line-height: 1.5; color:#222; background:#fefefe; -webkit-font-smoothing: antialiased;	-moz-osx-font-smoothing: grayscale;	font-smoothing: antialiased;}
.wrap { min-height:100%;}
.fade_in { opacity: 0; -moz-transition:all 1s ease-out; -o-transition:all 1s ease-out; transition:all 1s ease-out;}
.show { transform: translate(0px,0px) scale(1.0) rotate(0deg)!important; -o-transform: translate(0px,0px) scale(1.0) rotate(0deg)!important;   -ms-transform: translate(0px,0px) scale(1.0) rotate(0deg)!important; -moz-transform: translate(0px,0px) scale(1.0) rotate(0deg)!important;  -webkit-transform: translate(0px,0px) scale(1.0) rotate(0deg)!important;  opacity: 1!important; }

b, strong, .bold { font-family: "robotobold"; }
.wide { max-width:1560px; margin:0 auto; position:relative; padding:0 80px;}
.center {max-width:1560px; margin:0 auto; position:relative; padding:0 80px;}
.center_800 {max-width:960px; margin:0 auto; position:relative; padding:0 80px;}
.center_900 {max-width:1120px; margin:0 auto; position:relative; padding:0 80px;}
.hidden { display: none; }
.blue {color:#2e3888; }
.yellow {color:#e9f705;}
.grey_back { background: #F4F4F4;}

/* header with animation */
header {position:fixed;z-index:100; top:0; width:100%; height:80px; background:#fefefe; -webkit-transition:all 0.3s ease-out; -moz-transition:all 0.3s ease-out; -o-transition:all 0.3s ease-out; transition:all 0.3s ease-out;}
.down header { margin-top:-80px;  }
.up header {margin-top:0px; box-shadow: 0px 0px 8px 2px rgba(0,0,0,.1); }
.nav_active header, .up.nav_active header, .down.nav_active header { margin-top:0px; }
.logo {position:relative; margin-top:18px;}

/* navigation */
.navigation {float:right; }
.menu { position:relative; z-index:100; font-family: 'poppinsregular'; font-size:1.25rem; line-height:80px;}
.main_menu li.topics {display:none;}
.main_menu li { float:left; margin-left:60px; position:relative;}
.main_menu li .level_2 {position:absolute; top:80px; width:220px; background:#fefefe; box-shadow: 3px 3px 10px 3px rgba(0,0,0,.1); padding:10px 0 5px; display:none;}
.main_menu li.logo_blue .level_2 {width:350px;}
.main_menu li:hover .level_2 {display:block;}
.xxmain_menu li .level_2::after { content: ""; position: absolute; width: 0; height: 0; top: 0px; left: 40px; box-sizing: border-box;  border: 8px solid black; border-color: transparent transparent #fff #fff; transform-origin: 0 0; transform: rotate(135deg);box-shadow: -3px 3px 3px 0 rgba(0, 0, 0, 0.1);}
.main_menu li .level_2 li { float:none; margin:0 20px; position:relative; line-height:40px;}
.main_menu li:first-child {margin-left:0;} 
.menu a {position:relative; color:#000; }
.menu a:after { content: ""; z-index:-1; position: absolute; width:0%; height:9px; bottom: 0px; left: 0; background: #a1e122; visibility: hidden; -webkit-transition: all 0.3s ease-in-out 0s; transition: all 0.25s ease-in-out 0s; }
.menu a:hover:after { visibility: visible; width: 100%; }
.menu .level_2 a:hover:after { visibility: hidden; width:0; }
.menu .level_2 a:hover { color:#999;  }
.main_menu li.active a:after, .main_menu li.trail a:after { visibility: visible; width: 100%; background: #a1e122; }
.main_menu li.active::after {content: ""; position: absolute; height:9px; bottom: 0px; left: 0; width: 100%; background: #a1e122;}
.menu .level_2 li.active { color:#999; }
.menu .level_2 li.active::after { visibility: hidden; width:0;}
.language { float:left; margin-left:80px;}
.main_menu { float:left;}
.language li { float:left; margin-left:10px;}
.language li:first-child::after { content:"|"; margin-left:10px; }
.language li.active .active {color:#999;}

/* hamburger mobile */
.hamburger { position:absolute;  z-index:100; right:40px; top:30px; display:none; cursor: pointer; transition-property: opacity, filter;  transition-duration: 0.15s; transition-timing-function: linear; font: inherit; color: inherit; text-transform: none; background-color: transparent; overflow: visible; }
.hamburger.is-active {position:fixed;  z-index:100; right:40px; top:30px;}
.hamburger-box { width: 30px; height: 22px; display: inline-block; position: relative; }
.hamburger-inner { display: block; top: 50%;  margin-top: 0px; }
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after { width: 30px; height: 3px; background-color:#15725d; position: absolute; transition-property: transform; transition-duration: 0.15s; transition-timing-function: ease; }
.logo_blue .hamburger-inner, .logo_blue .hamburger-inner::before, .logo_blue .hamburger-inner::after { background-color:#1b3da5; }
.logo_red .hamburger-inner, .logo_red .hamburger-inner::before, .logo_red .hamburger-inner::after { background-color:#db1a4c; }
.hamburger-inner::before, .hamburger-inner::after { content: "";  display: block; }
.hamburger-inner::before { top: -10px; }
.hamburger-inner::after { bottom: -4px; }	
.hamburger--collapse .hamburger-inner { top: auto; bottom: 0; transition-duration: 0.13s; transition-delay: 0.13s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--collapse .hamburger-inner::after { top: -20px;   transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
.hamburger--collapse .hamburger-inner::before {transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
.hamburger--collapse.is-active .hamburger-inner { transform: translate3d(0, -10px, 0) rotate(-45deg); transition-delay: 0.22s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); background-color:#fff;}
.hamburger--collapse.is-active .hamburger-inner::after { top: 0; opacity: 0; transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
.hamburger--collapse.is-active .hamburger-inner::before { top: 0; transform: rotate(-90deg); transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); background-color:#fff;}

/* main */
h1, h2, h3, h4, h5, h6, .h3 { font-family: 'poppinsbold'; font-weight:normal;}
h1 {font-size:3.5rem; line-height:1.15;}
h2 {font-size:3rem; line-height:1.25;}
h3, .h3 {font-size: 2rem;}
h4 {font-size: 1.5rem;}
main {position:relative; z-index:2; background:#fefefe; padding-top:80px;}
.up main, .down main {padding-top:100px;}
img {max-width:100%; height:auto;}
.section {position:relative; }
.padding140 {padding:140px 0;}
.padding100 {padding:100px 0 140px;}
.intro .ce_text {max-width:800px; margin:0 auto;}
.ce_text ul li {padding-left:20px; position:relative; margin-top:5px;}
.ce_text ul li:before {content: "●"; position:absolute; left:0; }
.touchevents .ce_text ul li:before {content: "·"; }
/* home */
.intro {position:relative;}
.no_intro .intro {display:none;}
.intro img { width:100%; height:auto;}
.intro picture {position:absolute; top:0; left:0; width:100%; height:100%; background-size: cover; background-position: center center; overflow:hidden;}
.swiper-slide .back {background-size: cover; background-position: center center;}
.intro picture img { width:100%; height:100%; object-fit: cover; }
.intro.active picture img, .intro.start picture img { -webkit-transition:all 20s ease-out; transition:all 20s ease-out; -webkit-transform:scale(1.1); transform: scale(1.1);}
.intro picture.no_objectfit img {display:none;}
.intro img.back_2, .intro img.back_3 {display:none;}
.intro_headline {position: absolute; z-index:30; left:0; width:800px; color:#fff; top:20%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%);  transform: translateY(-50%);  }
.slogan {position:absolute; top:0;opacity:0; visibility:hidden;  -webkit-transition:all .5s ease-out; -o-transition:all .5s ease-out; transition:all .5s ease-out; width:100%; -ms-transform: translateX(-20%);  -moz-transform: translateX(-20%);  -webkit-transform: translateX(-20%);  }
.slogan h2 {position:relative; font-family: 'poppinsbold'; font-size:3rem; line-height:1.4; background:#006464; background-image: linear-gradient(30deg, #006464, #a1e122); color:#fff; padding: 20px 20px 20px 60px; display: inline-block; }
.slogan h2 .italic {font-family: 'poppinsbold_italic'; }
.raus {-ms-transform: translateX(-20%);  -moz-transform: translateX(-20%);  -webkit-transform: translateX(-20%);  opacity: 0;}
.zeigen, .intro.active .slogan, .map.active .slogan { -moz-transform: translate(0px,0px) scale(1.0) rotate(0deg)!important;  -webkit-transform: translate(0px,0px) scale(1.0) rotate(0deg)!important;  opacity: 1!important; visibility:visible; }

.scroll_down {position:absolute; z-index:30; bottom:-40px; width:100%;}
.scroll_inner {margin-left:100px;}
.scroll_next {position:relative; z-index:10; width:60px; height:60px; border-radius:50%; background:#a1e122; font-size:1px; color:#a1e122;}
.no-touchevents .scroll_next:hover {width:70px; height:70px; margin:-5px 0 -5px -5px; box-shadow: 3px 3px 10px 3px rgba(0,0,0,.3);}
.scroll_next::after { position:absolute; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%);  transform: translateY(-50%); font-family: 'icons'; color:#fff; font-size:40px; content: "\e908";  left:0; width:100%; text-align:center;}
.scroll_next:hover:after {color:#569d47;}
.next {position:relative; margin-top:50px;}
/* footer */
footer {padding-top:100px; width:100%; background: rgb(0,100,100); background: linear-gradient(42deg, rgba(0,100,100,1) 20%, rgba(43,129,86,1) 35%, rgba(150,200,50,1) 100%); color:#fff; font-size:1.25rem; line-height:1.5;}
.footer__headline { display: flex; justify-content: space-between; }
.eu_banner { margin-bottom: 2rem; }
footer h4 {font-size:2em; line-height:1.5em; letter-spacing:.1em; margin-bottom:10px;}
footer .fett {font-family: 'poppinsbold'; letter-spacing:.1em; font-size:1rem;}
.footer_left {float:left; width:55%; }
.footer_right {float:right; width:40%;}
footer a {color:#fff;}
footer a:hover {color:#a1e122;}
footer .tel_social, footer .career, footer .supported {margin-top:30px;}
.career_link {color:#fff; background:#01924c; position:relative;  text-transform:uppercase;  font-family: 'poppinsregular'; padding:8px 60px 5px 20px; margin-top:10px;}
.career_link:hover {color:#fff;}
.career_link::after {position:absolute; font-family: 'icons'; content: "\e90d"; -webkit-transition:all .2s ease-out; transition:all .2s ease-out; margin-left:20px; top:5px; }
.career_link:hover::after {margin-left:30px;}
.work_teaser_boxes li a:hover p.more::after {margin-left:30px;}
.company_name {font-size:1.75rem; letter-spacing:.1em;}
.iconlinks {font-size:1.8em; }
.iconlinks a {margin-right:20px;}
.legal {line-height:70px; background:transparent; width:100%; margin-top:40px;}
footer .mod_customnav li {float:left; Text-transform:uppercase;}
footer .mod_customnav li.first::after {content:"|"; padding:0 10px;}
.footer_logos {margin-top:50px;}
.footer_logos img.EU {margin:10px 0 0 0;}
.footer_logos img.MWE {margin:10px 30px 0 0; width:auto; height:125px; }
.footer_logos .center div {max-width:600px; font-size:1rem;}

footer .supported { position:relative;}
footer .supported p {float:right; width:78%;}
footer .supported img {float:left; margin:6px 0 0 0; width:20%; height:auto;}
footer .sitemap ul.level_1 {column-count:2; column-gap:20px; }
footer .sitemap ul.level_1 li { font-family: 'poppinsbold'; font-weight:bold; font-size:1.5rem; margin-bottom:20px;}
footer .sitemap ul.level_1 li .level_2 li { font-family: "robotolight"; font-weight:400; font-size:1.25rem; line-height:1; margin:10px 0px;}
footer .sitemap ul.level_1 li.sibling.last {display:none;}

.mod_breadcrumb {position:relative; max-width:1560px; margin:0 auto; z-index:100; font-size:1.125rem; padding-top:20px; padding:20px 80px;}
.mod_breadcrumb li { float:left; margin-right:30px;}
.mod_breadcrumb li.last:after {clear:both;}
.mod_breadcrumb li a {color:#999;}
.mod_breadcrumb li a:hover {color:#222;}
.mod_breadcrumb li a:after {position:relative; font-family: 'icons'; content: "\e90d"; -webkit-transition:all .2s ease-out; transition:all .2s ease-out; left:15px; top:1px;}

/* responsive */
@media (max-width: 1700px) {
	.XXXintro_headline {left:80px; }
}
@media (max-width: 1560px) {
	.wide { padding:0 80px;}
	.XXXintro_headline {left:80px; }
}
/* nav break */
@media (max-width: 1024px) { 
	.center, .wide, .center_800, .center_900 { padding:0 60px;}
	.mod_breadcrumb {padding:20px 60px;}
	.logo {margin-top:20px;}
	.hamburger {display:block;}
	.navigation {position:fixed; float:none; z-index:90; top:0; left:100%; width:100%; height:100vh; padding:100px 40px 0; background: rgb(0,100,100);
background: linear-gradient(241deg, rgba(0,100,100,1) 0%, rgba(43,129,86,1) 46%, rgba(150,200,50,1) 100%); text-align:center; -webkit-transition:all 0.5s ease-out; -moz-transition:all 0.5s ease-out; -o-transition:all 0.5s ease-out; transition:all 0.5s ease-out; }
.logo_blue .navigation {background:#1b3da5; background-image: linear-gradient(30deg, #059be5 ,#4d3db8);}
	.logo_red .navigation {background:#db1a4c; background-image: linear-gradient(30deg, #fc5500 ,#db1a4c);}
	.navigation.active { left:0;}
	.menu { float: none; color:#fff; line-height:60px; font-size:1.5rem;}
	.language { float: none; margin-left:0; margin:40px 0;}
	.language ul {position: relative; left:50%; width:100px; margin-left:-50px;}
	.main_menu li { float:none; margin-left:0;}
	.menu a {color:#fff;}
	.menu a:after { content: ""; position: absolute; width:0%; height:0; bottom: 0px; left: 0; background:transparent; }
	.menu a:hover:after, .main_menu li.active a:after { visibility: hidden; width: 0; }
	.main_menu li.active::after {  content: ""; position: absolute; height: 0; bottom: 0px;  left: 0;  width: 0; background: transparent;	}
	.main_menu li.active .active {color:#e9f705;}
	.overflowbox {position: relative; height: calc(100% - 0px); max-height: 100%; overflow:auto;}
	.main_menu li .level_2 {position:relative; top:-20px; font-size:1.25rem; width:auto; background:transparent; box-shadow:none; padding:10px 0 5px; display:none;}
	.main_menu li.logo_blue .level_2 {width:auto;}
	.main_menu li:hover .level_2 {display:none;}
	.main_menu li.active .level_2, .main_menu li.trail .level_2 {display:block;}
	.main_menu li .level_2::after { content: ""; position: absolute; width: 0; height: 0; top: 0px; left:0; box-sizing: border-box;  border: 0 solid transparent; border-color: transparent; transform-origin: 0 0; transform: rotate(0);box-shadow:none;}
	.slogan h2 { font-size:2.75rem; }
	footer .sitemap ul.level_1 {column-count:1; column-gap:0px; }
}
@media (max-width: 960px) {
	.intro_headline {width:700px; }
	.intro img.back_1, .intro img.back_3 {display:none;}
	.intro img.back_2 {display:block;}
	h1 {font-size:3rem; line-height:1.15;}
	h2 {font-size:2.5rem; }
	h3, .h3 {font-size: 1.75rem;}
	h4 {font-size: 1.25rem;}
}
@media (max-width: 800px) {
	.intro_headline {width:600px; left:30px;}
	.slogan h2 { font-size:2.5rem; padding: 20px 20px 20px 40px; }
	.footer_left {float:none; width:100%; }
	.footer_right {float:none; width:100%; margin-top:50px;}
	.legal {line-height:40px; background:none; width:100%; padding-bottom:40px;}
	.legal .footer_right {margin-top:0px;}
}
@media (max-width: 600px) { 
	.main_menu li .level_2 li { float:none; margin:10px 0; position:relative; line-height:1.2; padding-top:0px;}
	h1 {font-size:2rem; line-height:1.15;}
	h2 {font-size:1.75rem; }
	h3, .h3 {font-size: 1.5rem;}
	h4 {font-size: 1.25rem;}
	header {height:80px; }
	.logo {margin-top:22px;}
	.down header { margin-top:-80px;  }
	main {padding-top:80px;}	
	.center, .wide, .center_800, .center_900 { padding:0 30px;}
	.mod_breadcrumb {padding:20px 30px;}
	.padding140, .padding100 {padding:80px 0;}
	.hamburger, .hamburger.is-active {right:30px; top:28px;}
	.intro img.back_1, .intro img.back_2 {display:none;}
	.intro img.back_3 {display:block;}
	.intro_headline {width:80%; left:0;}
	.slogan h2 { font-size:1.75rem; padding: 20px 20px 20px 30px; }
	.scroll_inner {margin-left:0;}
}

/* print */
@media print {
	body {font-size:0.9em;}
	header, footer {display:none;}
	.print_button {display:none !important;}
	.print {visibility:visible;}
    *, *:before, *:after, *:first-letter, *:first-line { background: transparent !important;color: #000 !important; box-shadow: none !important; text-shadow: none !important; }
    a,a:visited { text-decoration: underline;}
    a[href]:after {content: " (" attr(href) ")"; }
    abbr[title]:after {content: " (" attr(title) ")";}
	a[href^="#"]:after, a[href^="javascript:"]:after {  content: ""; }
    pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
    thead { display: table-header-group;}
    tr,img {page-break-inside: avoid;}
    img {max-width: 100% !important; }
    p,h2,h3 {orphans: 3;widows: 3;}
    h2, h3 {page-break-after: avoid;}
}
/* all */
.contao-cookiebar, .contao-cookiebar p {color:#000 !important;}
.contao-cookiebar .cc-info {text-align:left; margin-bottom:24px;}
.contao-cookiebar .cc-info > p { font-size: 1.25rem; }
.contao-cookiebar .cc-inner {border-radius:0; max-width:660px;}
.contao-cookiebar .cc-head {font:2rem/1.1'poppinsbold';} 
.contao-cookiebar .cc-btn {height:64px; line-height:64px; border:none; border-radius:0; font:1.25rem/1'poppinsregular'; padding:0 24px; color:#000; background:#f1f0f0; margin:0 5px;}
.contao-cookiebar .cc-btn:hover {background:#a1e122;}
.contao-cookiebar .highlight .cc-btn.success { background:#a1e122; border-color:#a1e122; color:#000;}
.contao-cookiebar .highlight .cc-btn.success:hover { background:#000; border-color:#000; color:#fff;}
.contao-cookiebar .cc-groups .cc-group {border:none; border-top:1px solid #ccc; margin-top:24px; padding-top:24px;}
.contao-cookiebar .cc-cookies > p, .contao-cookiebar .cc-cookies > .cc-cookie { border-top: none;}
.contao-cookiebar .cc-cookies { background:none; border-radius: 0;}
.contao-cookiebar input + label:before { background:#ccc; border: 2px solid #ccc; }
.contao-cookiebar input:disabled + label:before, .contao-cookiebar input:checked + label:before {background:#a1e122; border-color:#a1e122; }
.contao-cookiebar input:disabled + label:after, .contao-cookiebar input:checked + label:after { background: #fff; }

.download-form {margin-top:30px; max-width:500px;}
.download-form label{display:block;}
.download-form input {height:50px; line-height:50px;}
.download-form input, .download-form textarea {width:100%;}
.download-form .explanation {margin:10px 0; font-size:1rem;}
.download-form .widget-checkbox input {width:50px; float:left; margin-right:10px;}
.download-form .widget-checkbox label {line-height:50px;}
.download-form .widget-checkbox legend { display:none;}
.download-form .submit {height:64px; line-height:64px; border:none; border-radius:0; font:1.25rem/1'poppinsregular'; padding:0 40px; background:#a1e122; margin:40px 0 0; text-transform:uppercase;}
.download-form .submit:hover {background:#000; color:#fff;}

/* home */
.about_teaser {padding:100px 0 60px; }
.trigger {height:80px;}
.about_teaser_left {float:left; width:40%;}
.about_teaser_right {float:right; width:50%;}
.ce_text .text-kleiner {font-size:1.15rem;}
.ce_text a.about_link {position:relative;  background:#a1e122; color:#fff; text-transform:uppercase; padding:10px 60px 8px 20px; font-family: 'poppinsregular'; text-decoration:none !important;}
.ce_text a.about_link::after {position:absolute; font-family: 'icons'; content: "\e90d"; -webkit-transition:all .2s ease-out; transition:all .2s ease-out; right:20px; top:8px; }
.ce_text a.about_link:hover::after {right:10px;}
.ce_text a.about_link:hover {box-shadow: 3px 3px 10px 3px rgba(0,0,0,.3); }
.we {position:relative; background:#F4F4F4; color:#fff; width: 100%; height:650px; overflow: hidden; }
.we h4 { font-family: "poppinsbold"; font-size:3.5rem; line-height:1.15;}
.panel {height: 650px; text-align:center; width: 100%;	position: absolute;	}
.scrollmagic-pin-spacer {background:#F4F4F4; }
.we_inner {position:relative; top: 50%; transform: translateY(-50%); padding:0 140px;}
.panel1, .panel3 {background:#2b8156; color:#fff;}
.panel2 {background:#fff; color:#2b8156;}
.work_teaser { background:#F4F4F4;}
.teaser_header {text-align:center; padding:0 120px; }
.teaser_header .ce_text h1 {font-size:2.5rem; margin-bottom:30px;}
.work_teaser_boxes { display:grid; grid-template-columns: repeat(3, 1fr); gap:30px; align-items:stretch; }
.work_teaser_boxes li {position:relative;}
.work_teaser_boxes .left_right {display:grid; grid-template-columns: repeat(2, 1fr); }
.work_teaser_boxes a {position:relative; width:100%; height:100%; background:#fff; border-radius:10px; text-align:center; box-shadow: 3px 3px 10px 3px rgba(0,0,0,.2); font-size:1.25rem; padding:20px; -webkit-transition:all 0.1s ease-out; transition:all 0.1s ease-out; display:block;}
.work_teaser_boxes a:hover {background:#2e3888; color:#fff;}
.work_teaser_boxes h3 {text-transform:uppercase; padding:20px 0 20px; font-size:1.75rem; line-height:1.1; }
.work_teaser_boxes h4 {min-height:74px;}
.work_teaser_boxes .description {min-height:60px;}
.work_teaser_boxes p.more {position:relative; margin:40px 0 0 -30px; text-transform:uppercase;  font-family: 'poppinsregular';}
.work_teaser_boxes p.more::after {position:absolute; font-family: 'icons'; content: "\e90d"; -webkit-transition:all .2s ease-out; transition:all .2s ease-out; margin-left:20px; top:-3px; }
.work_teaser_boxes li a:hover p.more::after {margin-left:30px;}
.teaser_icon {margin-top:30px;}
.teaser_icon .icon {font-size:100px;}
.teaser_icon img {max-height:100px; width:auto; }
.teaser_icon .icon::before {color: transparent; position: relative; background-clip: text; -webkit-background-clip: text; background-image: linear-gradient(30deg, #2b8156, #a1e122); }
.stoerer_box {position:absolute; z-index:35; bottom:10%; right:0px; width:500px; height:500px; overflow:hidden;}
.stoerer {position:absolute; bottom:0; right:0; width:500px; }
.stoerer_link {  position:absolute; top:150px; left:120px; width:260px; color:#006464; font-family: 'poppinsbold';}
.stoerer_link:hover {color:#000;}
.detail .stoerer_box { bottom:auto; right:-80px; top:-500px;}

.stoerer-mit-bild {position:absolute; z-index:35; bottom:10%; right:100px; width:450px; overflow:hidden;}
.stoerer-mit-bild a {position: relative; }
.stoerer_text {width: 100%; position: absolute; top: 50%; transform: translateY(-50%);  text-align:center; color:#fff; text-shadow: 2px 2px 2px rgba(0,0,0,.6); font-family: 'poppinsbold'; font-size:2rem; padding:0 5%;}
.stoerer-mit-bild a:hover .stoerer_text {color:#a1e122;}

/* contact */
.map {position:relative;}
.map picture {display:block;}
.map img {width:100%; height:auto; }
.google_link {position:absolute; z-index:31; top:47%; left:45%; color:#a1e122; font-size:80px; line-height:100px; width:100px; text-align:center;}
.google_link:hover {font-size:100px; }
.map .scroll_down {bottom:-10px;}
.contact_left {float:left; width:40%;}
.contact_right {float:right; width:60%;}
.adress_left {float:left; margin-right:100px;}
.address a:hover {color:#e9f705;}
#career {background:#F4F4F4;}
.openings a { position:relative; width:100%; padding:20px; background:#fff; border-radius:10px; box-shadow: 3px 3px 10px 3px rgba(0,0,0,.2); margin-bottom:40px;}
.openings a h2 {font-size: 1.5rem;}
.openings a:hover {background:#006464; color:#fff;}
.ce_accordion {border-bottom:1px solid #ccc;}
.ce_accordion:first-child {border-top:1px solid #ccc;}
.ce_accordion .toggler { position:relative; padding:8px 40px 20px 0px; font-family: 'poppinsbold'; cursor:pointer; margin-top:20px;}
.ce_accordion .toggler:after {position:absolute; right:0; top:-10px; content: "+"; font-family: 'robotoregular'; font-size:40px;}
.ce_accordion .toggler.on, .ce_accordion .toggler:hover {color:#02913e;}
.ce_accordion .toggler.on:after {content: "–";}
.ce_accordion .accordion { margin-bottom:40px; }
.ce_accordion .accordion a, .ce_text a {text-decoration:underline;}
a.pdf_download {position:relative; margin-top:20px;}
a.pdf_download:hover, .ce_text a:hover { color:#569d47;}
a.pdf_download::before {position:relative;content: url("../../files/system/images/pdf.png");  margin-right:5px; top:10px; }
.benefits {}
.benefits h2 {margin-bottom:50px;}
.flex-container { display: flex; flex-wrap: wrap; }
.benefit {float:left; width:20%; padding-right:50px; margin-bottom:50px; display: flex; flex-direction: column;}
.benefit p {flex: 1 0 auto;}
.benefit img {height:100px; width:auto; max-width:none; margin-bottom:30px;}
/* work */
.teaser_left {float:left; width:47%;}
.teaser_right {float:right; width:47%;}
.product_list {width:calc(100% + 40px); margin-left:-20px; margin-top:100px;}
.cases_cat {margin:100px auto; }
.cases_cat .product_list {margin-bottom:0; margin-top:40px;}
.product_list li {float:left; width:33.3333%; padding:20px;}
.product_list li a {background:#F4F4F4; border-radius:10px; box-shadow: 3px 3px 7px 3px rgba(0,0,0,.15); font-size:1.25rem; -webkit-transition:all 0.2s ease-out; transition:all 0.2s ease-out; display:block; min-height:370px;}
.product_list li a:hover {background:#006464; color:#fff;}
.product_image { position:relative; top:0; left:0; width:100%; height:170px; background-size: cover; background-position: center center; overflow:hidden; border-radius: 10px 10px 0 0;}
.product_image picture {position:absolute; top:0; left:0; width:100%; height:100%; background-size: cover; background-position: center center; overflow:hidden;}
.product_image picture img { width:100%; height:100%; object-fit: cover; }
.product_image picture.no_objectfit img {display:none;}
.product_list h3 {padding:20px 20px 0; line-height:1.2; margin-bottom:5px;}
.product_list .description {padding:0 20px 60px;}
.product_list p.more {position:absolute; left:20px; bottom:10px; text-transform:uppercase;  font-family: 'poppinsregular';}
.product_list p.more::after {position:absolute; font-family: 'icons'; content: "\e90d"; -webkit-transition:all .2s ease-out; transition:all .2s ease-out; margin-left:20px; top:-3px; }
.product_list li a:hover p.more::after {margin-left:30px;}
.ce_text h1 {margin-bottom:50px;}
.backlink {position:absolute; top:0; left:-140px;  background:#2e3888; color:#fff; text-transform:uppercase; padding:10px 20px 8px 60px; font-family: 'poppinsregular';}
.backlink::after {position:absolute; font-family: 'icons'; content: "\e90d"; -webkit-transform: rotate(-180deg); transform: rotate(-180deg);left:20px; top:8px; }
.backlink:hover::after {-webkit-transition:all .2s ease-out; transition:all .2s ease-out; left:10px;}
p.back {display:none;}
/* content */
.content h1 {margin-bottom:50px;}
.content .ce_text, #interview .ce_text {margin-bottom:30px;}
/* about */
.team {background:#F4F4F4; }
.teamlist {width:calc(100%); margin-left:0; margin-top:100px;}
.teamlist li {float:left; width:25%; padding:20px; text-align:center;}
.teamlist h4 {font-size:1.25rem; margin-top:15px;}
.team_pic img {border-radius:6px; box-shadow: 3px 3px 7px 3px rgba(0,0,0,.15);}
.teamlist .position {font-size:.9em; line-height:1.2; min-height:60px;}

/* logo_blue colortest */
.logo_blue .slogan h2 {background:#1b3da5; background-image: linear-gradient(30deg, #4d3db8, #059be5); }
.logo_blue .work_teaser_boxes li a:hover {background:#1b3da5;}
.logo_blue .teaser_icon .icon::before {background-image: linear-gradient(30deg, #4d3db8, #059be5); }
.logo_blue .product_list li a:hover {background:#1b3da5; color:#fff;}
.logo_blue footer {background: rgb(27,61,165); background: linear-gradient(42deg, rgba(27,61,165,1) 20%, rgba(38,75,189,1) 35%, rgba(11,129,219,1) 100%); }
.logo_blue .career_link {background:#1b3da5;}
.logo_blue .backlink {background:#1b3da5; }
.logo_blue .menu a:after { background: #06a6f5; }
.logo_blue .main_menu li.active a:after, .logo_blue .main_menu li.trail a:after { background: #06a6f5; }
.logo_blue .main_menu li.active::after {background: #06a6f5;}
.logo_blue .scroll_next {background:#06a6f5; color:#06a6f5;}
.logo_blue .scroll_next:hover:after {color:#1b3da5;}
.logo_blue footer a:hover {color:#06a6f5;}
.logo_blue a.pdf_download:hover, .logo_blue .ce_text a:hover { color:#06a6f5;}

/* logo_red colortest */
.logo_red .slogan h2 {background:#db1a4c; background-image: linear-gradient(30deg, #db1a4c, #fc5500);}
.logo_red footer {background: rgb(219,26,76); background: linear-gradient(42deg, rgba(219,26,76,1) 0%, rgba(247,0,53,1) 60%, rgba(252,36,0,1) 100%); }
.logo_red .career_link {background:#db1a4c; }
.logo_red .menu a:after { background:#fc5500; }
.logo_red .main_menu li.active a:after, .logo_red .main_menu li.trail a:after { background: #fc5500; }
.logo_red .main_menu li.active::after {background:#fc5500;}
.logo_red .scroll_next {background:#fc5500; color:#fc5500;}
.logo_red .scroll_next:hover:after {color:#db1a4c;}
.logo_red footer a:hover {color:#fc5500;}
.logo_red footer .career_link:hover, .logo_blue footer .career_link:hover {color:#fff;}
.logo_red .product_list li a:hover {background:#db1a4c; color:#fff;}
.logo_red .backlink {background:#db1a4c; text-decoration:none;}
.logo_red .backlink:hover {color:#fff !important; }
.logo_red a.pdf_download:hover, .logo_red .ce_text a:hover { color:#fc5500;}

.image_container.float_left {float:left; margin-right:20px;}
.ce_text.question {color:#fc5500; font-family: "robotobold";}
.eckdaten {margin-bottom:20px;}
.eckdaten p {padding-top:20px}
.mod_newsreader .detail h2 {margin-top:60px; font-size:2.5rem; margin-bottom:10px;}
.mod_newsreader #interview h2 {margin-top:0; font-size:2.5rem; margin-bottom:30px;}
.mod_article iframe {width:100%; min-height:800px;}
a.interview-link {font-family: 'poppinsbold'; font-weight:normal;}

/* detail */
.center_900 #interview {width:100vw; margin-bottom:-140px;  margin-top:100px; position: relative; left:calc(-50vw + 480px);  background:#f2f2f2; padding:80px 0;}
.detail .ce_text h4 {margin-bottom:10px;}

/* landing */
.hero .text_left {float:left; width:58%;}
.hero .image_right {float:right; width:40%; padding-top:8px;}
.landing .ce_text a.about_link {color:#222;}
.landing .ce_text a.about_link:hover {color:#222;}
.solution .text_right {float:right; width:58%;}
.solution .image_left {float:left; width:40%; padding-top:8px;}
.solution {background:#F4F4F4;}
.clients .ce_headline {max-width:1560px; margin:0 auto; margin-bottom:72px; padding:0 80px;}
.clients .statements {max-width:1560px; margin:0 auto; padding:0 80px;}
.clients .statements.count_3 {display:grid; grid-template-columns: repeat(3, 1fr); gap:24px; align-items:stretch;}
.clients .statements.count_2 {display:grid; grid-template-columns: repeat(2, 1fr); gap:24px; align-items:stretch;}
.clients .statements .ce_text {box-shadow: 3px 3px 10px 3px rgba(0,0,0,.2); border-radius: 10px; padding:20px; position:relative;}
.clients .statements .ce_text img {width:100%; height:auto; margin:0 0 20px 0;}
.clients .statements.count_2 figure {float:right; width:50%; padding-left:20px;}
.clients .statements.count_1 figure {float:left; width:25%; padding-right:20px;}
.faq {background:#F4F4F4;}
.faq .ce_headline {max-width:1560px; margin:0 auto; margin-bottom:72px; padding:0 80px;}
.faq .all_faq {max-width:1560px; margin:0 auto; padding:0 80px;}
.landing .teaser .ce_text ul li {padding:10px 20px; background:#f4f4f4; margin:10px 0; font-weight:700; border-radius:5px;}
.landing .teaser .ce_text ul li:before {content:"";}

.image_container.float_right {float:right; margin: 0 0 20px 20px; }
.image_container.float_left {float:left; margin: 0 20px 20px 0; }
.iconlist img {max-width:80px; height:auto;}
.references h2 {}
.references img {max-width:250px; height:auto; margin:40px 40px 0 0; }
.pdf_downloads {display:grid; grid-template-columns: repeat(3, 1fr); gap:24px; align-items:stretch; margin-top:50px;}
.pdf_downloads .download h3 {font-size: 1.5rem; line-height:1.2; margin-bottom:10px;}
.pdf_downloads .download img {width:100%; height:auto; margin:20px 0;}
.pdf_downloads .download a {text-decoration:none; font-family: 'robotoregular';}
.pdf_downloads .download h3 a {text-decoration:none; font-family: 'poppinsbold';}

/* responsive */
@media (max-width: 1400px) {
	.product_list li a {min-height:420px; }
	.backlink {position:relative; top:0; left:0; margin-bottom:50px;}
}
@media (max-width: 1300px) {
	.google_link {top:46%; left:43%; }
	.benefit {width:33.3333%; }
	.detail .stoerer_box { right:0; }
}
@media (max-width: 1200px) {
	.teaser_header {padding:80px; }
	.teamlist li {width:33.3333%;}
	.google_link {top:47%; left:43%; }
	.stoerer_box {bottom:0;}
	.stoerer {right:-100px; bottom:-100px;}
	.detail .stoerer {right:0; bottom:auto;}
	.stoerer-mit-bild {bottom:50px; right:0; }
	.industry_boxes { grid-template-columns: repeat(2, 1fr); }
	.references img {max-width:200px; height:auto; }
}
@media (max-width: 1120px) {
	.center_900 #interview {width:100vw; position: relative; left:-80px; }
}
@media (max-width: 1024px) {
	.center_900 #interview { left:-60px; }
	.clients .ce_headline, .clients .statements, .faq .ce_headline, .faq .all_faq { padding:0 60px;}
	.clients .statements.count_2 figure {float:none; width:100%; padding-left:0;}
	.clients .statements.count_1 figure {float:left; width:35%; padding-right:20px;}
}
@media (max-width: 960px) {
	.we h4 {font-size:3rem;  }
	.we_inner {padding:0 40px;}
	.teaser_header {padding:0; }
	.we, .panel {height: 500px;}
	.work_teaser_boxes { display:grid; grid-template-columns: repeat(2, 1fr); gap:30px; align-items:stretch; }
	.teamlist li {width:50%;}
	.hero .text_left {float:none; width:100%;}
	.hero .image_right {float:none; width:100%; padding-top:48px;}
	.solution .text_right {float:none; width:100%;}
	.solution .image_left {float:none; width:100%; padding-top:0; padding-bottom:48px;}
	.clients .statements.count_3 {display:grid; grid-template-columns: repeat(2, 1fr); }
	.pdf_downloads {display:grid; grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 800px) {
	.contact_left, .teaser_left {float:none; width:100%; margin-bottom:30px;}
	.contact_right, .teaser_right {float:none; width:100%;}
	.google_link {top:44%; left:44%; }
	.benefit {width:50%; }
	.stoerer {right:-100px; bottom:0px;}
	.detail .stoerer {right:-100px; bottom:auto;}
	.stoerer-mit-bild {bottom:40px; right:0; }
	.stoerer_text {font-size:1.5rem;}
}
@media (max-width: 770px) {
	.contao-cookiebar .cc-btn {margin:10px 0px;}
	.industry_boxes { grid-template-columns: repeat(1, 1fr); }
}
@media (max-width: 600px) { 
	.about_teaser_left {float:none; width:100%;}
	.about_teaser_right {float:none; width:100%; margin-top:30px;}
	.about_link {position:relative;}
	.we h4 {font-size:2rem;  }
	.work_teaser_header {font-size:1.5rem;}
	.we_inner {padding:0 30px;}
	.work_teaser_boxes h3 {font-size:1.5rem;}
	.product_list {width:calc(100%); margin-left:0; }
	.work_teaser_boxes { display:grid; grid-template-columns: repeat(1, 1fr); }
	.work_teaser_boxes li, .product_list li {float:left; width:100%; padding:0; margin-bottom:40px;}
	.product_list li a {min-height:auto; }
	.product_list h3 {margin-bottom:0;}
	.google_link {top:38%; left:40%;}
	.adress_left, .adress_right {float:none; width:100%;}
	.teamlist li {width:100%;}
	.benefit {width:100%; padding-right:0; }
	.mod_newsreader .detail h2 {margin-top:60px; font-size:1.75rem; margin-bottom:10px;}
	.teaser_header .ce_text h1 {font-size:2rem; }
	.center_900 #interview { left:-30px; }
	.stoerer_box { width:350px; height:350px; }
	.stoerer { width:350px; bottom:-100px; right:-50px;}
	.stoerer_link { top:120px; left:90px; width:200px; font-size: 1rem;}
	.stoerer-mit-bild {bottom:20px; width:70%;}
	.clients .ce_headline, .clients .statements, .faq .ce_headline, .faq .all_faq { padding:0 30px;}
	.clients .statements.count_3, .clients .statements.count_2 {display:grid; grid-template-columns: repeat(1, 1fr); }
	.clients .statements.count_1 figure {float:none; width:100%; padding-right:0;}
	.iconlist img {max-width:40px; height:auto;}
	.eckdaten p { padding-top:0; }
	.references img {max-width:130px; height:auto; margin:20px 20px 0 0; }
	.pdf_downloads {display:grid; grid-template-columns: repeat(1, 1fr); }
}
@media (max-height: 400px) and (orientation:landscape){ 

}
@media (max-height: 620px) and (orientation:landscape){ 

}
@media (max-height: 540px) and (orientation:landscape){ 

}
@media (max-width: 350px) { 


}
