/* inter-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('../fonts/inter-v20-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* nunito-sans-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Nunito Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url('../fonts/nunito-sans-v19-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* nunito-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Nunito Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('../fonts/nunito-sans-v19-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* nunito-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Nunito Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url('../fonts/nunito-sans-v19-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* nunito-sans-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Nunito Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 900;
  src: url('../fonts/nunito-sans-v19-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* CSS */


/* Smooth Scroll */
html {scroll-behavior: smooth;}

@media screen and (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

*{ margin: 0; padding: 0; border: 0;}
html, body {width: 100%; height: auto;}
body {font-size: 100%; font-family: 'Inter', Arial, Helvetica, sans-serif; font-weight: 300; font-style: normal; color: #3f3f3f; vertical-align:baseline; background-color: #fff;}
#clear, .clear {clear: both!important; width: auto; height: 0px; font-size: 0.1px;}
img {margin: 0; padding: 0; display: block;}

#container, #footer, #header {width: 100%; height: auto;}
.contentHold  {width: 100%; height: auto; padding: 25px 2% 25px 2%; margin: 0px auto; box-sizing: border-box; position: relative; max-width: 1600px;}

#container {min-height: 550px;}
#header .inside, #footer > .inside {width: 100%; max-width: 1600px; padding: 0 2%; box-sizing: border-box; margin: 0px auto; position: relative; }
#header {position: fixed; z-index: 9999; top: 0px; left: 50%; transform: translate(-50%,0%); width: 100%; height: auto; background-color:#fff; transition: all 0.25s ease;}
#header.scroll {-webkit-box-shadow: 0 2px 5px 0 #212121; box-shadow: 0 2px 5px 0 #212121; transition: all 0.25s ease;}

.greyBgr {background: #f2f2f2;}
.blueLight {background: #bfdcee;}
.blueDark {background-color: #004f9f;}

#container {margin-top: 50px; }
.noHead #main {margin-top: 220px;}

/* Basic */

.noMobile, .noMobil {display: block!important;}
.yesMobile, .hRightMobil {display: none!important;}
.overflowHidden {overflow: hidden; position: relative;}


.x1, .x2, .x3, .x32, .x4, .x43, .x30, .x5 {padding: 0% 2%; margin-bottom: 1.25rem; box-sizing: border-box;}
.x1 {width: 98%; display: block;}
.x2 {width: 48%; float: left;}
.x1, .x2, .x3, .x32, .x4, .x5, .x43 {margin-left: 1%; margin-right: 1%;}

.x30 {width: 30%; float: left;}
.x3 {width: 31%; float: left;}
.x32 {width: 64%; float: left;}
.x4 {width: 23%; float: left;}
.x43 {width: 65%; float: left;}
.x5 {width: 18%; float: left;}
.maxWidth70 {max-width: 70%; padding: 0% 2%; box-sizing: border-box; margin: 0px auto; clear: both; float: none;}
.c2 .contentHold .textContent {width: 50%; float: left;}

.c50 {width: 50%; float: left;}
.c30 {width: 30%; float: left; margin-left: 1.5%; margin-right: 1.5%; }
.c20 {width: 20%; float: left;}
.c40 {width: 40%; float: left;}
.c45 {width: 45%; float: left;}
.c60 {width: 60%; float: left;}
.c70 {width: 70%; float: left;}
.c25 {width: 25%; float: left;}

.paddingLeft5 {padding-left: 5%; box-sizing: border-box;}
.paddingRight5 {padding-right: 5%;box-sizing: border-box;}
.paddingLeft10 {padding-left: 10%;box-sizing: border-box;}
.paddingRight10 {padding-right: 10%;box-sizing: border-box;}
.paddingTop50, .textContentpaddingTop50 .textContent {padding-top: 50px;}
.paddingTop100, .textContentpaddingTop100 .textContent {padding-top: 100px;}
.paddingTop150, .textContentpaddingTop150 .textContent {padding-top: 150px;}
.paddingBottom100, .textContentpaddingBottom100 .textContent {padding-bottom: 100px;}
.paddingBottom50, .textContentpaddingBottom50 .textContent {padding-bottom: 50px;}

.marginBottom50 {margin-bottom: 50px; }
.marginBottom100 {margin-bottom: 100px;}
.marginTop25 {margin-top: 25px;}
.marginBottom25 {margin-bottom: 25px;}
.marginTop50 {margin-top: 50px;}
.marginTop100 {margin-top: 100px;}
.marginRight5 {margin-right: 5%;}
.marginRight10 {margin-right: 10%;}

object, svg, img {max-width: 100%; height: auto;}
.floatRight {float: right;}
.textCenter {text-align: center;}
.center {margin: 0px auto; text-align: center;}
.centerBlock {margin-left: auto!important; margin-right: auto!important; float: none!important;}
.imgCenter .image_container, .imgCenter img {margin-left: auto; margin-right: auto;}


.noMarginBottom {margin-bottom: 0!important;}
.noMarginLeft {margin-left: 0!important;}
.noMargin {margin: 0!important;}
.noPadding {padding: 0;}
.flexBoxHold {display: flex; flex-wrap: wrap;}
.flexBoxHold .image_container, .flexBoxHold .image_container img {width: auto; height: auto;}
.flexBoxHold .content-image figure {width: 100%; height: 100%; overflow: hidden;}
.flexBoxHold .content-image img {min-widht: 100%; min-height: 100%; max-width:none;}

.borderTop {border-top:1px solid #ccc; margin-top: 50px; padding-top: 50px;}
.borderTopSmall {border-top:1px solid #ccc;  padding-top: 50px;}
.borderLeft {border-left: 1px solid #e42130;}
.borderRight {border-right: 1px solid #e42130;}
.borderAfter {display: block;border-bottom: 1px solid #ccc; margin-bottom: 50px; margin-top: 35px;}
.textRight {text-align: right;}
/*.borderTop::before {content:''; display: block; clear: both; max-width: 70%; margin: 50px auto; border-top: 1px solid #e42130;}*/
.borderBottom::after {content:''; display: block; clear: both; margin: 50px auto; border-bottom: 1px solid #e42130;}
span.tab {width: 70px; display: block; float: left; margin-right: 10px;}

.textRight {text-align: right;}
.noAfter::after {display: none!important;}
.fullWidth img {width: 100%; height: auto; min-width: 100%;}

.overflowVisible {overflow: visible;}
.contentCenter {display: flex;   justify-content: center;   align-items: center;}
.flyingText {position: absolute; top: 350px; width: 100%; height: auto;}

.scrollMarginTop {scroll-margin-top: 200px;}
.imgMargin35 img {margin: 35px 0;}

.fullHeight {height: 100%;}

/* Typografie */

p, td, #main ul li, #main ol li, input, select, textarea, .ce_text a, #footer a, #footer p {font-size: 1.125rem; line-height: 1.45rem; margin-bottom: 1.45rem; word-wrap:break-word; font-weight: 400;}

a {text-decoration: none;}

h1, h2, h3, h4, h5, h6 {word-wrap:break-word; font-weight: 300; hyphens: manual; font-family:'Nunito Sans', Arial, Helvetica, sans-serif; font-weight: 900;}
h1 {font-size: 3rem; line-height: 3.35rem; text-transform: uppercase; color: #3f3f3f; margin-bottom: 10px;}
.ohneH2 h1::after {content:''; width: 150px; border-bottom: 2px solid #e42130; margin: 15px 0 1.45rem; display: block;}
h2 {font-size: 2.25rem; line-height: 2.875rem; text-transform: uppercase; color: #e42130;}
.blueDark h2, .blueDark h2::after {color: #fff;}
h2::after {content:''; width: 150px; border-bottom: 2px solid #e42130; margin: 15px 0 1.45rem; display: block;}
 .blueDark h2::after {border-bottom: 2px solid #fff;}
 h2.center::after, .center h2::after {margin-left: auto; margin-right: auto;}
h3 {font-size: 1.475rem; line-height: 2rem; color: #5b5b5b; margin-bottom: 1.45rem;}
h4 {font-size: 1.65rem; line-height: 2rem; color: #e42130; margin-bottom: 1.45rem; text-transform: uppercase;}
h5  {font-size: 1.25rem; line-height: 1.475rem; color: #004f9f; margin-bottom: 1.25rem; text-transform: uppercase;}
h6 {font-size: 1.125rem; line-height: 1.45rem; color: #3f3f3f; text-transform: uppercase; margin-bottom: 1.25rem; font-weight: 400;}

figcaption { margin-top: 10px;}
.blueDark figcaption {color: #43a1ff;}

span.subline {color: #818181;}

.btnWhite {color: #fff; padding: 20px 35px; border: 1px solid #fff; border-radius: 5px; position: relative; transition: all 0.25s ease;} 
.btnWhite::after {content:'\279D'; color: #fff; display: inline-block; margin-left: 20px; font-size: 2rem; position: relative; top: 5px; }
.btnWhite:hover {padding: 20px 45px; transition: all 0.25s ease;}

.btnBorder {color: #004f9f; padding: 20px 35px; border: 2px solid #dbdbdb; border-radius: 5px; position: relative; transition: all 0.25s ease; display: inline-block; margin-top: 1.45rem;}
.btnBorder::after {content:'\279D'; color: #e42130; display: inline-block; margin-left: 20px; font-size: 2rem; position: relative; top: 5px; }
.btnBorder:hover {padding: 20px 45px; transition: all 0.25s ease;}

.blueBtn a {color: #fff; background-color:#004f9f; text-decoration: none; padding: 10px 20px; transition: all 0.25s ease;}
.blueBtn a:hover {padding: 10px 25px; transition: all 0.25s ease;}

a.redBtn  {color: #fff; background-color:#e42130; text-decoration: none; padding: 10px 20px; transition: all 0.25s ease;}
a.redBtn:hover {padding: 10px 25px; transition: all 0.25s ease;}

p sup {color: #616161; font-size: 0.875rem; line-height: 1.125rem;}


.textWhite, .blueDark h3, .blueDark a {color: #fff;}
.linkGrey a {display: inline-block; color:#3f3f3f; padding: 10px 20px 10px 0; border-bottom: 1px solid #3f3f3f; margin-right: 20px; }

/* List Ce_text */
.content-text ul, .tab__content ul, .infoBlock ul, .productIntro ul, .projShorts ul, .jobfw ul {list-style: none; margin-bottom: 1.5rem; margin-left: 10px;}
.content-text ul li, .tab__content ul li, .infoBlock ul li, .productIntro ul li, .projShorts ul li, .jobfw ul li {position: relative; padding-left: 45px; margin-bottom: 10px!important;}
.content-text ul li::before, .tab__content ul li::before, .infoBlock li::before, .productIntro ul li::before, .projShorts ul li::before, .jobfw ul li::before {content: "\2192"; position: absolute; left: 0;}
.blueLight  .ce_text ul li::before {content: ''; width: 25px; height: 25px; background: url(../img/iconList_Blue.svg); position: absolute; top: 2px; left: 0;}

.rte ol {margin-left: 35px;}


/* Header */
#header .inside {display: flex;}
.logo {width: 200px; max-width: 80%; height: auto; transition: all .25s ease; float: left; position: relative; margin: 45px 10% 20px 0;} 

.logo a span {text-indent: -9999px;display: block;position: absolute;}
.logo a {display: block; height: 100%; overflow: hidden; transition: all 0.25s ease;}
.logo a img, .logo a svg {height: auto; width: 100%; transition: all 0.25s ease;}
#header.scroll .logo {width: 150px; height: auto; margin-top: 35px; margin-bottom: 10px; transition: all .25s ease;}

.hRight {flex: 1; position: relative;  margin-right: 150px; transition: all 0.25s ease;}
.naviSubHead ul {list-style: none; float: right; margin-top: 10px;}
.naviSubHead ul li {float: left;}
.naviSubHead ul li a, .naviSubHead ul li strong {padding: 10px 25px; color: #3f3f3f; display: block; text-transform: uppercase; font-size: 1.0125rem; line-height: 1.25rem;}
#header.scroll .naviSubHead a, #header.scroll .naviSubHead strong {font-size: 0.875rem; line-height: 1rem; transition: all 0.25s ease;}


.serviceHold {position: absolute; right: 2%;  bottom: 0; top: 0; background-color: #494949; padding: 25px; box-sizing: border-box; transition: all 0.25s ease;}
.langChangeMod ul {list-style: none;}
.langChangeMod ul li {float: left;}
.langChangeMod ul li a, .langChangeMod strong {color: #fff; font-size: 1.125rem; line-height: 1.35rem; padding: 0px 5px; display: block; text-decoration: none;}
.langChangeMod strong, .langChangeMod a:hover {border-bottom: 1px solid #fff; transition: all 0.25s ease;}
.langChangeMod ul li {border-right: 1px solid #fff;}
.langChangeMod ul li:last-child {border: none;}


.naviMain { overflow: visible; transition: all 0.25s ease; margin-top: 30px;}
#header.scroll .naviMain {margin-top: 20px; transition: all 0.25s ease;}
.naviMain ul {list-style:none;} 
.naviMain ul.level_1 > li {float: left; position: relative; margin-left:20px; transition: all 0.3s ease;}
.naviMain ul li a, .naviMain ul li strong {font-family: 'Rubik', sans-serif; font-weight: 300; font-size: 1.35rem; text-decoration: none; text-transform: uppercase; transition: all 0.25s ease; display: block; color:#313131; line-height: 1.675rem; }
.naviMain ul.level_1 > li > a, .naviMain ul.level_1 > li > strong {padding-left:10px; padding-right: 10px; transition: 0.3s ease; padding-bottom: 10px; }

#header.scroll .naviMain ul.level_1 > li > a, #header.scroll .naviMain ul.level_1 > li > strong {font-size: 1.125rem; line-height: 1.45rem; transition: all 0.3s ease;}
/*.naviMain ul.level_1 > li > strong, .naviMain ul.level_1 > li:hover > a, .naviMain ul.level_1 > li.active > strong, .naviMain ul.level_1 > li.trail > a {border-bottom: 5px solid #e42130; transition: all 0.35s ease;}*/
.naviMain ul li a:hover, .naviMain ul li strong, .naviMain ul li.trail > a {color: #e42130;}
.naviMain ul.level_2 {position: absolute; z-index:999; background-color: #fff; min-width: 100%; display: none;-webkit-box-shadow: 0 2px 5px 0 #757575; box-shadow: 0 2px 5px 0 #757575;}
.naviMain ul.level_1 li:hover ul.level_2 {display: block;}
.naviMain ul.level_2 li {margin: 0!important; padding: 0 5px; min-width: 240px;}
.naviMain ul.level_2 > li:hover, .naviMain ul.level_2 > li.active, .naviMain ul.level_1 li.trail ul li.trail {background-color: #e42130;}
.naviMain ul.level_2 > li > strong, .naviMain ul.level_2 > li:hover > a, .naviMain ul.level_2 > li.active > strong, .naviMain ul.level_2 > li.trail > a {color: #fff;}
.naviMain ul.level_2 li a, .naviMain ul.level_2 li strong {text-transform: none; padding: 15px; font-size: 1.125rem; line-height: 1.45rem; margin-bottom: 0;}

#kopfgrafik {margin-top: 130px; background-color:#004f9f; overflow: hidden;}
.pStart #kopfgrafik {height: calc(100vh - 117px); }
#kopfgrafik .inside {height: 100%; width: 100%; display: block;}
#kopfgrafik .contentHold {padding-top: 0; padding-bottom: 0;}

.bread {padding: 10px 0;}
.bread ul {list-style: none;}
.bread ul li {float: left; position: relative;}
.bread ul li::after {content:'\276D'; display: inline-block; margin: 0 10px;}
.bread ul li:last-of-type::after {display: none;}
.bread ul li, .bread ul li a {font-size: 1.0125rem; line-height: 1.25rem; color: #fff; }
.bread ul li a {text-decoration: underline;}
.bread ul li:first-of-type {display: none;}
.pStart .bread {display: none;}

/* Slider Startseite */

.startSlide {width: 100%; height: 100%; background-color: #212121;}
.bgrSlide.content-image {width: 100%; height: 100%; min-height: 100%; position: absolute; z-index: 1; top: 0; left: 0;}
.bgrSlide img, .bgrSlide figure {min-height: 100%; max-width:inherit;}
.bgrSlide img {min-height: 100%!important; min-width: 100%!important; max-width: inherit; object-fit: cover; display: block; position: absolute;}
.claim, .linkNews {position: relative; z-index: 5; }

.claim {margin-top: 20vh; margin-bottom: 35px;}
.mainh1Slide, .mainspecialSlide {font-family:'Nunito Sans', Arial, Helvetica, sans-serif; text-transform: uppercase; font-weight: 900; color: #fff; font-size: 6rem; line-height: 6.35rem; text-shadow: 1px 1px 2px #595959; }
.mainh2Slide::after, .mainspecialSlide::after {content:''; width: 200px; height: 5px; background-color: #e42130; display: block; margin-top: 15px;}
.mainh2Slide, .mainspecialSlide sub {font-size: 3rem; line-height: 3.35rem; font-weight: 300; font-style: normal;}
 .mainspecialSlide sub {vertical-align: baseline;}

.claim p {color: #fff; font-size: 1.375rem; line-height: 1.675rem; max-width:60vw;}


.linkNews {position: absolute; bottom: 100px; right: 0; width: 100%;}
.linkNews .rte p {color: #fff; text-align: right; margin-bottom: 0;}
.linkNews figure {width: 50px; height: 50px; float: right; margin: 0 0 0 25px;}

.startSlide .rsts-prev {left: 0; bottom: 0;width: 50px; height: 50px; background: url(../img/iconArrowWhite.svg) no-repeat center, rgba(73,73,73,0.75); background-size: 70% auto; border: none; border-radius: 0; transform: rotate(-180deg); display: inline-block;}
.startSlide .rsts-next {right: 0; bottom: 0; width: 50px; height: 50px; background: url(../img/iconArrowWhite.svg) no-repeat center, rgba(73,73,73,0.75); background-size: 70% auto; border: none; border-radius: 0;display: inline-block;} 


/* Allg Content */

.bgrRohr {background: url(../img/bgrRohr.webp) right bottom no-repeat; background-size: cover; background-position: 0 250px;}
.karriereQuer .contentHold {height: 100%;}
.karriereQuer .contentHold::before {content:''; background-color: #e42130; width: 85px; height: 120px; position: absolute; top: 0; left: 5%; display: block; z-index: 900; -webkit-border-radius: 0 0 50px 0;
border-radius: 0 0 50px 0;}
.karriereQuer {min-height:250px; /*background: url(../img/bgrKarriere.webp) center bottom no-repeat; background-size: cover;*/ position: relative;}
.karriereQuer .rte {background-color: rgba(0, 79, 159, 0.85); position: relative; width: 45%; height: auto; padding: 50px 85px; border-radius: 10px; margin-top: 250px; margin-bottom:50px; float: right;}
.karriereQuer .rte p {color: #fff;}
.karriereQuer .rte p a {color: #fff; text-decoration: none; text-transform: uppercase; }
.karriereQuer .rte p a::after {content:''; width: 150px; height: auto; border-top: 1px solid #fff; display: block; margin-top: 10px;}

.bgrKarriere.content-image {position: absolute; width: 100vw; height: 100%; left: 0; top: 0; z-index: -1; background-color: #ff0000;}
.bgrKarriere.content-image figure, .bgrKarriere.content-image figure picture {width: 100%; height: 100%;}
.bgrKarriere.content-image img {object-fit: cover; min-height: 100%!important; max-width:min-content; min-width: 100%;}



.tipBox {background-color:#f8f7f7; padding-top:50px; -webkit-box-shadow: 1px 1px 5px 0 #7D7D7D; box-shadow: 1px 1px 5px 0 #7D7D7D; text-align: center; padding-bottom: 35px;}
.tipBox figure img {width: 100px; height: auto; margin: 20px auto;}
.tipBox h3 {text-align: center;}
.tipBox ul li {text-align: left;}


/* Startseite */

.teaserGrey .x3 {margin: 0; position: relative; }
.teaserGrey .x3 img {filter: grayscale(100%); transition: 0.25s ease; position: relative;}
.teaserGrey .x3:hover img {filter: grayscale(0%); transition: 0.25s ease;}
.teaserGrey .x3 figure::after {content:''; display: block; position: absolute; bottom: 0; right: 10px; z-index: 888; width: 80%; height: 100%;}
.teaserGrey .x3.num1 figure::after {background: url(../img/Icons/zahl1.svg) no-repeat bottom; background-size: contain;}
.teaserGrey .x3.num2 figure::after {background: url(../img/Icons/zahl2.svg) no-repeat bottom; background-size: contain;}
.teaserGrey .x3.num3 figure::after {background: url(../img/Icons/zahl3.svg) no-repeat bottom; background-size: contain;}

.teaserGrey .x3 .rte {  bottom: 0!important; left: 0; width: 100%; background-color: transparent; transition: all 0.25s ease;}
.teaserGrey .x3:hover .rte {background-color: rgba(0, 79, 159, 0.85); transition: all 0.25s ease;}
.teaserGrey .x3 .rte p {color: #fff; transition: all 0.25s ease;}

/* Downloads */

.content-downloads ul {list-style: none; margin-left: 2%;} .ce_downloads ul li {margin-bottom: 10px!important;}
.content-downloads ul li {margin-bottom: 5px; border-bottom: 1px solid #818181; padding-bottom: 10px;}
.content-downloads ul li img, .content-download img {float: left; margin-right: 20px;}
.content-downloads ul li a, .ccontent-download a {text-decoration: none; font-size: 1rem; line-height: 1.25rem; color: #3b3b3b;}

.ext-pdf {background: url(../img/iconPDF.svg) left top no-repeat; padding-left: 35px;}
.ext-rar {background: url(../img/iconRAR.svg) left top no-repeat; padding-left: 35px;}


/* History */

.history .c50 {position: relative; padding-bottom: 25px; border-bottom: 1px solid #3f3f3f; margin-bottom: 35px; padding-top: 15px; width: 45%; margin-right: 5%;}
.history h3 {position: absolute; font-size: 4rem; line-height: 4.5rem; color:#777777; z-index: 1; top: 0; left: 0; opacity: 0.25; margin-bottom: 0;}
.history .rte {position: relative; z-index: 2; padding: 25px 0 0 50px;}
.history h4 {font-weight: 400; color:#004f9f;}

/* Accordion */

.handorgel__header--opened {margin-bottom: 0px; transition: all 0.25s ease; scroll-margin-top: 200px;}
.handorgel__header__button {background-color: #004f9f; color: #fff; font-weight: 400; padding: 15px 10px; text-align: left; font-size: 1.125rem; line-height: 1.45rem;}
.handorgel__header--opened .handorgel__header__button {background-color: #004f9f; color: #fff; transition: all 0.25s ease;}
.handorgel__content__inner {background-color: #fff; border: 1px solid #ccc; border-radius: 0 0 5px 5px;}


/* Projekte */
.project-card h1.project-card-title {max-width: 50vw; display: block; margin-bottom: 50px;}

.projektShortInfo table {display: table;width: 100%!important; border-collapse: collapse;}
.projektShortInfo table td {padding: 10px 10px 10px 0;border-bottom: 1px solid #3f3f3f;}
.projektShortInfo table td:first-child {font-weight: bold; color:#595959; padding-right: 25px;}


.mod_newscategories ul {list-style: none;}
.mod_newscategories ul li {float: left; width: 50%; height: auto; position: relative; }
.projekteCategorie.mod_newscategories ul li {width: auto; min-width: 40%; max-width: 50%;}
.mod_newscategories ul li a, .mod_newscategories ul li strong {display: block; padding: 10px 10px 10px 60px; box-sizing: border-box; position: relative; z-index: 5; color: #3f3f3f; text-decoration: none; font-weight: 400;}
.mod_newscategories ul li strong {color: #e4202f;}
.mod_newscategories ul li::before {content:''; width: 45px; height: 45px; background: url(../img/Icons/icon_oelWhite.svg) #adadad; background-position: center; display: block; position: absolute; z-index: 1; left: 0; top: 0px; border-radius: 5px; transition: all 0.25s ease;} 
.mod_newscategories ul li:hover::before, .mod_newscategories ul li.active::before {background-color:#e4202f!important; transition: all 0.25s ease;}
.mod_newscategories ul li.reset::before {background: url(../img/Icons/icon_allWhite.svg) #adadad; }

.mod_newscategories ul li.projWasser::before {background: url(../img/Icons/icon_wasserWhite.svg) #adadad; }
.mod_newscategories ul li.projLNG::before {background: url(../img/Icons/icon_lngWhite.svg) #adadad; }
.mod_newscategories ul li.projGas::before {background: url(../img/Icons/umwelt.svg) #adadad; }
.mod_newscategories ul li.projThermo::before {background: url(../img/Icons/icon_oelWhite.svg) #adadad; }

.layout_latest.projWasser::before {content:''; width: 50px; height: 50px; padding-top: 15px; position: absolute; z-index: 5; top: 0; left: 20px; background: url(../img/Icons/icon_wasserWhite.svg) #e42130 center bottom no-repeat; display: block; border-radius: 0 0 5px 5px;}
.layout_latest.projLNG::before {content:''; width: 50px; height: 50px; padding-top: 15px; position: absolute; z-index: 5; top: 0; left: 20px; background: url(../img/Icons/icon_lngWhite.svg) #e42130 center bottom no-repeat; display: block; border-radius: 0 0 5px 5px;}
.layout_latest.projGas::before {content:''; width: 50px; height: 50px; padding-top: 15px; position: absolute; z-index: 5; top: 0; left: 20px; background: url(../img/Icons/umwelt.svg) #e42130 center bottom no-repeat; display: block; border-radius: 0 0 5px 5px;}
.layout_latest.projThermo::before {content:''; width: 50px; height: 50px; padding-top: 15px; position: absolute; z-index: 5; top: 0; left: 20px; background: url(../img/Icons/icon_oelWhite.svg) #e42130 center bottom no-repeat; display: block; border-radius: 0 0 5px 5px;}


.layout_latest {position: relative; overflow: hidden; margin-bottom: 25px;}
.newsLink {position: absolute; z-index: 10;width: 100%; height: 100%; top: 0; left: 0;}
.newsLink a {display: block; width: 100%; height: 100%; text-indent: -9999px;}
.layout_latest.proj h3 {position: absolute; bottom: -100%; left: 0; background: rgba(0,117,188,0.85); display: block; width: 100%; margin-bottom: 0!important; transition: all 0.25s ease;}
.layout_latest.proj:hover h3 {bottom: 0; transition: all 0.25s ease;}
.layout_latest.proj h3 a {color: #fff; text-decoration: none; font-weight: 400; padding: 20px; display: block;}

.layout_latest.proj figure img { filter: grayscale(100%); transition: 0.25s ease;;}
.layout_latest.proj:hover figure img {filter: grayscale(0%); transition: 0.25s ease;}


.mod_newsreader p.back a {padding: 10px 20px; text-decoration: none; background-color:#e42130; color: #fff; transition: all 0.25s ease; display: inline-block; margin: 25px 0;}
.mod_newsreader p.back a:hover, a.linkToProd:hover {padding: 10px 25px; transition: all 0.25s ease;}

a.linkToProd {padding: 10px 20px; text-decoration: none; background-color:#004f9f; color: #fff; transition: all 0.25s ease; display: inline-block; margin: 25px 0;}

.mod_newsreader .content-gallery {margin-top: 50px; margin-bottom: 35px;}
.layout_full .content-text.x3 {margin-bottom: 25px; background-color: #f2f2f2; padding-top: 25px;}
.layout_full .content-text.x3 h5::after {content:''; display: block; width: 50px; height: 1px; border-top: 3px solid #004f9f; margin: 15px 0 25px 0;}
.layout_full .content-text.x3 img {margin-bottom: 25px;}

/* Produkte */

.dekor {width: 100%; border-top: 1px solid #ccc; margin: 50px 0;}

.kachel {position: relative; margin-bottom: 35px; overflow: hidden;}
.layerLink {position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 900;}
.layerLink a {display: block; width: 98%; height: 98%; margin: 1%; transition: all 0.25s ease;}
.layerLink a:hover {}
.kachel .rte {background: rgba(0,117,188,0.85); position: absolute; bottom: -100%; left: 0; width: 100%; height: auto; padding: 25px; box-sizing: border-box; transition: all 0.25s ease;}
.kachel:hover .rte {bottom: 0; transition: all 0.25s ease;}
.kachel .rte h3 {color: #fff; text-decoration: none; font-weight: 400;}

.kachel figure img { filter: grayscale(100%); transition: 0.25s ease;;}
.kachel:hover figure img {filter: grayscale(0%); transition: 0.25s ease;}

.tab-buttons {list-style: none; height: 50px;}
.tab-buttons li {float: left; margin-bottom: 0;}
.tab-buttons button {background-color:#bfdcee;padding: 10px 20px; box-sizing: border-box; cursor: pointer;}
.tab-buttons button h3 { color: #004f9f; font-size: 1.25rem; font-weight: 400!important; margin-bottom: 0!important; }
.tab-buttons button[aria-selected="true"], .tab-buttons button:hover {background-color:#004f9f!important; color: #fff!important; transition: all 0.25s ease;} .content-tabs .tablist button[aria-selected="true"] h3, .tab-buttons button:hover h3 {color: #fff!important;}
.content-tabs .tabs {background-color: #f2f2f2; border: 1px solid #ccc; padding: 35px; box-sizing:border-box;}


.swiper-wrapper img {width: 100%; height: auto;}



/* Masonry Gallery */

.masonry { /* Masonry container */
    -webkit-column-count: 2;
  -moz-column-count:2;
  column-count: 2;
  -webkit-column-gap: 1em;
  -moz-column-gap: 1em;
  column-gap: 1em;
   margin: 1.5em;
    padding: 0;
    -moz-column-gap: 1.5em;
    -webkit-column-gap: 1.5em;
    column-gap: 1.5em;
    font-size: .85em;
}

.masonry4 .masonry {    -webkit-column-count: 4; -moz-column-count: 4; column-count: 4;}
.item {
    display: inline-block;
    margin: 0 0 1.5em;
    width: 100%;
    transition:1s ease all;
    box-sizing: border-box;
    float: left;
   
}
.item img{max-width:100%;}

@media only screen and (max-width: 320px) {
    .masonry {
        -moz-column-count: 1;
        -webkit-column-count: 1;
        column-count: 1;
    }
}

@media only screen and (min-width: 321px) and (max-width: 768px){
    .masonry {
        -moz-column-count: 2;
        -webkit-column-count: 2;
        column-count: 2;
    }
}


/* Ländervertretung */
/*
.content-rsce-asp {width: 31%; margin-left: 1%; margin-right: 1%; float: left; margin-bottom: 20px;}

*/

#fwmap {width: auto; max-width: 80%; margin: 20px auto; max-height: 60vh; display: block;}
#fwmap g a:hover {filter: drop-shadow(1px 1px 0px rgba(0,0,0,0.5));}


.content-rsce-asp {display: inline-block;text-align: left; padding: 35px 20px 25px 20px; box-sizing: border-box; width: 31%; margin: 1%; background-color: #f8f7f7; box-shadow: 1px 1px 5px 0 #7D7D7D; vertical-align: top; }
.content-rsce-asp:nth-child(3n+2) {clear: both;}
.content-rsce-asp .asp-card, .content-rsce-asp .asp-card .contentAsp {height: 100%;}
.content-rsce-asp .asp-card .contentAsp {display: flex;flex-direction: column;}

.content-rsce-asp figure img {height: 150px; width: auto; max-width: 80%; margin: 20px 0;}

.content-rsce-asp p.firmaasp {font-weight: bold; padding-left: 0;}
.content-rsce-asp p {padding-left: 35px; position: relative;}
.content-rsce-asp p::before {content:''; width: 25px; height: 25px; position: absolute; display: block; left: 0; top: 2px; background-size: contain;}
.content-rsce-asp p.nameasp::before {background: url(../img/iconAvatar.svg) center no-repeat;}
.content-rsce-asp p.strasseasp::before {background: url(../img/iconAddress.svg) center no-repeat;}
.content-rsce-asp p.telefonasp::before {background: url(../img/iconPhoneBlue.svg) center no-repeat;}
.content-rsce-asp p.emailasp::before {background: url(../img/iconEmailBlue.svg) center no-repeat;}
.content-rsce-asp p.webasp::before {background: url(../img/iconWebBlue.svg) center no-repeat;}
.content-rsce-asp p.regionasp::before {background: url(../img/iconMapBlue.svg) center no-repeat;}
.content-rsce-asp div.sonstigesasp {border-top: 1px solid #ccc; padding-top: 25px; margin-top: 10px;}
.content-rsce-asp div.sonstigesasp p {padding-left: 0;}

.content-rsce-asp .vertriebsgebiet {border-top: 1px solid #004f9f; margin-top: auto; padding: 20px; position: relative; overflow: hidden; margin-bottom: 20px;}
.content-rsce-asp .vertriebsgebiet::before {content:''; width: calc(100% + 50px); height: 100%; position: absolute; left: 0; top: 0; background-color:#004f9f;display: block; z-index: 1;}
.content-rsce-asp h5 {position: relative; font-size: 0.875rem!important; line-height: 1rem!important; z-index: 2; font-weight: 600;}
.content-rsce-asp .vertriebsgebiet h5 {color: #fff;position: relative; font-size: 0.875rem; line-height: 1rem; z-index: 2; font-weight: 600;}
.content-rsce-asp .vertriebsgebiet p  {color: #fff!important; position: relative; z-index: 2;}

.filter-buttons {width: 100%; display: block; height: auto; margin-bottom: 50px; padding-bottom: 25px; border-bottom: 1px solid #ccc;}
.filter-btn {padding: 10px 15px; margin: 10px; background-color: #f2f2f2;transition: all 0.25s ease;}
.filter-btn.active, .filter-btn:hover {background-color:#004f9f; color: #fff; transition: all 0.25s ease;}

.marginBottomindividuell .regionsub {height: 69.6px;}

/* Karriere */
.jobfw {width: 98%; margin: 20px auto; border: 1px solid #ccc; padding-top: 35px;}
.jobfacts, .jobanforderungen, .jobaufgaben, .jobwirbieten, .jobAsp {padding: 25px 2%; border-bottom: 1px solid #ccc; margin-bottom}
.jobAsp {border-bottom: none;}

.jobfw.x1 span.joblevel::before {content:''; width: 30px; height: 30px; display: inline-block; background: url(../img/Icons/icon_production.svg) center bottom no-repeat; position: relative; top: 10px; margin-left: 30px; margin-right: 10px;}

.c25.benefit:nth-child(5n) {clear: both;}
.benefit img {max-width: 100px; height: auto; margin: 20px auto;}

.blueDark .mod_newslist .layout_simple {padding: 10px 0; border-bottom: 1px solid #ccc; min-height: 350px;}
.jobSimple {border: 1px solid #fff; padding: 10px; box-sizing: border-box; position: relative; background-color:#0267cc;}
.blueDark .mod_newslist .layout_simple a {color: #fff; text-decoration: none;}
.blueDark .mod_newslist.jobList .layout_simple a {font-size: 1.25rem; line-height: 1.65rem;}

.news-link-overlay {position: absolute; z-index: 50; width: 100%; height: 100%; top: -100%; transition: all 0.25s ease;background-color: #002d5b; }
.news-link-overlay a {display: block; width: 100%; height: 100%; padding-top: 75px!important; box-sizing: border-box!important;}

.jobSimple.x3:hover .news-link-overlay{top: 0; transition: all 0.25s ease;}

.jobList .layout_simple a {display: block; padding: 20px; box-sizing: border-box;}

.jobSimpleContent {padding-top: 65px;} 
.jobSimpleContent .jobTitle, .news-link-overlay a span {font-weight: bold; padding-bottom: 25px;position: relative; display: block;}
.jobSimpleContent .jobTitle::after {content:''; width: 80px; position: relative; margin-left: 20px; border-bottom: 1px solid #fff; display: block; margin-bottom: 10px;}
.news-link-overlay a span::after {content:''; width: 80px; position: relative;border-bottom: 1px solid #fff; display: block; margin-bottom: 10px; margin-top: 25px;}
.jobSimpleContent .more a {font-size: 1rem!important; line-height: 1.125rem!important;}


.stimmenSlider {}
.stimmenSlider .rsts-slide img {width: auto; min-width: 100%; height: auto; border-radius: 10px;}
.stimmenSlider .persText {position: absolute; z-index: 888; background-color: rgba(0, 79, 159, 0.85); bottom: 10%; right: 5%; padding: 50px; border-radius: 20px; max-width: 650px;} 
.stimmenSlider .persText p {color: #fff;}
.stimmenSlider .persText p strong {font-weight: 400; border-bottom: 1px solid #fff; padding-bottom: 10px;}
.stimmenSlider .persText p sup {color: #fff; font-size: 0.875rem; line-height: 1rem;}
.stimmenSlider .persText p em {font-size: 120%;} 



/* Slider */

 .stimmenSlider .rsts-nav {right: inherit; left: 50%; width: auto; transform: translateX(-50%); bottom: 10px; z-index: 999;}
.stimmenSlider a.rsts-next, .stimmenSlider a.rsts-prev {top: 50%;background: none!important; border: none!important; width: 80px!important; height: 120px!important; box-shadow: none!important;}
.stimmenSlider a.rsts-next span, .stimmenSlider a.rsts-prev span {display: none;}
.stimmenSlider a.rsts-prev {left: 5px!important; right: inherit;}
.stimmenSlider a.rsts-next {right: 5px!important;}
.stimmenSlider a.rsts-next::before {content:'\2192'; color: #fff; font-size: 2.75rem; line-height: 3.25rem; display: block;text-indent: 0; opacity: 0.45; transition: all 0.25s ease;}
.stimmenSlider a.rsts-prev::before {content:'\2190'; color: #fff; font-size: 2.75rem; line-height: 3.25rem; display: block;text-indent: 0; opacity: 0.45; transition: all 0.25s ease;}
.stimmenSlider a.rsts-next:hover::before, .stimmenSlider a.rsts-prev:hover::before {opacity: 1; transition: all 0.25s ease;}
.stimmenSlider .rsts-skin-default .rsts-nav-bullets a.active, .stimmenSlider .rsts-skin-default .rsts-nav-bullets a:hover {background-color: #2e3049;}




/* Galery */

.galX6 ul, .galX4, .galX3, .galX2 {list-style: none;}
.galX6 ul li {float: left; margin: 1%; width: 14%; }
.galX6 ul li img {height: 150px; width: auto; margin: 0px auto;}
/*.galX6 li:nth-of-type(6n+7) {clear: both;}*/
.galX4 ul li img {max-height: 250px; width: auto; margin: 0px auto;}
.galX4 ul li {float: left; margin: 1%; width: 23%; border: 1px solid #ccc; box-sizing: border-box; padding: 10px;}
.galX4 .caption, .galX6 .caption {border-top: none;}
.galX3 ul li {float: left; margin: 1%; width: 31%; border: 1px solid #ccc; box-sizing: border-box; padding: 10px;}
.galX3 ul li img {max-height: 250px; width: auto; margin: 0px auto;}
.galX2 ul li {float: left; margin: 1%; width: 48%; border: 1px solid #ccc; box-sizing: border-box; padding: 10px;}
.galX2 ul li img {max-height: 450px; width: auto; margin: 0px auto;}


/* Footer */

#footer {background-color: #efefef; padding-top: 50px; padding-bottom: 25px;}
#footer p, #footer a {color: #3f3f3f; text-decoration: none; margin-bottom: 10px;}
#footer nav ul li a, #footer nav ul li strong, #footer .layout_simple a {padding: 5px 0; border-bottom: 1px solid #3f3f3f; display: block; font-size: 1.125rem; line-height: 1.45rem;}
#footer nav ul li strong {margin-bottom: 10px; color: #004f9f}

.naviFootLegal ul {list-style: none;}
.naviFootLegal ul li {float: left;}
#footer nav.naviFootLegal ul li a, #footer .naviFootLegal ul li strong {border-bottom: none!important; padding: 0 10px!important; margin-right: 10px; font-size: 0.875rem; line-height: 1rem; color: #777777;}

.socialMedia {float: right; margin-bottom: 35px;}
a.insta {background: url(../img/iconInstagram.svg) center no-repeat; width: 50px; height: 50px; float: left; margin-right: 20px; background-size: cover;}
a.facebook {background: url(../img/iconFacebook.svg) center no-repeat; width: 50px; height: 50px; float: left; margin-right: 20px;}
a.insta span, a.facebook span {text-indent: -99999px; display: block;}

/*Kontaktformular --- Achtung: Schriftfamilie anpassen!!*/

.formFly { padding: 50px 3%!important; -webkit-box-shadow: 0 10px 25px 0 #ddd; box-shadow: 0 10px 25px 0 #ddd; background-color: #fff;box-sizing: border-box;}
.formbody input[type="text"], .formbody input[type="tel"], .formbody input[type="email"],.formbody input[type="password"], textarea, select {border: 1px solid #dadada; width: 100%; min-width:200px; padding: 15px; box-sizing: border-box; font-family:  'Inter', Arial, Helvetica, sans-serif; font-weight: 400;  color: #3a3a3a;}

.formbody .widget {width: 48%; float: left; margin: 1%;}
.formbody .widget.widget-textarea {clear: both; width: 100%; padding: 0 2% 0 0; box-sizing: border-box; font-family: 'Inter', Arial, Helvetica, sans-serif; color: #707677;}
.formbody textarea {padding: 2%; font-family:  'Inter', Arial, Helvetica, sans-serif; font-weight: 400; color: #707677; }
.formbody label {width: 100%; font-size: 1.0125rem; clear:both; padding-top:8px; margin-bottom: 10px!important; padding-left: 0!important;}
label.message {clear: both!important; display: block; margin-bottom: 5px!important;} 
span.mandatory {color:#ff0000;}
.formbody .widget.widget-captcha {clear: both; margin: 20px 0; float: none; width: 100%;} .formbody .widget.widget-captcha label {width: 200px;}
.formbody .widget.widget-captcha input {clear: both; width: 50px; min-width: 30px; margin-right: 10px; float: left;}
.captcha_text {float:left; padding:8px 0 2px 8px; font-size:0.875em;color: #707677;}
.luft {width: 100%; height: auto; display: block; float: none; clear: both;}

.widget-submit {clear: both!important; width: 100%; text-align: center; margin: 30px 0;}
.widget-submit button {margin:20px 0px; border:1px solid #ccc; color:#fff; padding:10px 25px; cursor:pointer; display: block; background-color: #006ab3; background-image: none!important; font-size: 1.0125rem; line-height: 1.2rem; border-radius: 0!important; transition: all 0.25s ease;}
.widget-submit button:hover {padding: 10px 35px; transition: all 0.5s ease;}


span.mandatory {vertical-align: top; padding-left: 2px;}
p.error {clear: both; display: block; color: #ff0000!important; font-size: 11px; margin-top: 20px;}
.ie7 p.error {margin-top: 5px; margin-left: 5px;}
.formbody br {clear: both; display: block;}
.widget.error {position: relative; padding-top: 40px; display: block; margin-top: 10px; clear: both;}


.widget fieldset {padding: 0!important; margin: 0!important;}
.widgetDS {width:98%!important; margin: 0 1%!important; padding: 0 2%; box-sizing: border-box;}
.widgetDS input {float: left!important; width: 40px!important; min-width: 40px; height: auto; margin-top: 5px;}
.widgetDS label {clear: none!important; padding-top: 0!important; display: block;}
.widgetDS p {font-size: 1.0125rem;}


.cc-inner {background-color: #212121;}
#cookiebar-desc p a {color: #868686; text-decoration: underline;}
.cc-cookies, .cc-cookie-info {background-color: #212121; color: #fff;}
.contao-cookiebar label.group {color: #fff;}

/* mobil */
 /*Mobile Nav*/
.offcanvasHold {display: none;}
.offcanvasHold {position: fixed; z-index:9999; top: 0; right: 4%; display: none; }
.offcanvasBtn {position: relative; z-index: 998;display: block; text-indent: 100%; white-space: nowrap; overflow: hidden; padding: 25px 10px 10px 10px; border-radius: 0 0 10px 10px;}
.offcanvasBtn span {  height: 4px; width: 36px; border-radius: 2px;display: block; margin: 5px; background-color: #f2f2f2}
.offcanvasBtn::after {content:'';position: absolute; z-index: -1; left: 0; top: 0; width: 100%; height: 100%; background-color: #004f9f; cursor: pointer ;}

a.closeMenu {position: absolute; top: 50px; right: 20px; font-size: 1.35rem; line-height: 1.65rem; }
a.closeMenu::before {content:'\2715'; color: #004f9f; width: 35px; height: 35px; font-size: 20px; line-height: 35px;}
a.closeMenu span {text-indent: -9999px;display: block;}

.mobile_menu {position: fixed; z-index: 99999; top: 0; left: 0; width: 100%; height: auto; min-height: 100%;}
.naviHoldMobile {width: 100%; height: auto; height: 100%; padding: 40px 10vw 40px; box-sizing: border-box;}
.naviHoldMobile .mod_navigation ul {list-style: none;} .naviHoldMobile .mod_navigation ul li {position: relative; border-bottom: 0; padding: 0; margin: 0;}
.naviHoldMobile .mod_navigation ul li a,.naviHoldMobile .mod_navigation ul li strong  {padding: 20px 10px; color: #ffffff; font-size: 1.125rem; line-height: 1.25rem; text-decoration: none; border-bottom: 1px solid #505050; display: block;}
.naviHoldMobile .mod_navigation ul li strong {font-weight: 400;}
.naviHoldMobile .mod_navigation ul li strong.active {background-color: #004f9f; color: #fff;}
.naviHoldMobile .mod_navigation ul li ul li {margin-left: 20px;}
/*.naviHoldMobile .mod_navigation ul li ul li.active, .naviHoldMobile .mod_navigation ul li ul li:hover {background: rgba(189,24,35,0.95);}*/
.naviHoldMobile .mod_navigation ul li.submenu_hide::after {content:'\276D'; position: absolute; right: 15px; top: 20px; font-size: 15px; color: #43a1ff; }
.naviHoldMobile .mod_navigation ul li.submenu_show::after {content:'\276D'; rotate: 90deg; position: absolute; right: 15px; top: 20px; font-size: 15px; color: #43a1ff; }
.mobile_menu .inner {background: #1a1a1a;}
.mobile_menu {z-index:99999;}

.naviHoldMobile .changeLang {margin: 20px 0;}
.naviHoldMobile .changeLang li a, .naviHoldMobile .changeLang ul li strong {padding: 10px 20px!important; display: block; font-size: 1.125rem; line-height: 1.35rem;}
.naviHoldMobile .changeLang ul li strong {background-color:#313131;}

.naviSecond ul {list-style: none;}
.naviSecond ul li {display: block;  border-bottom: 1px solid #505050;}
.naviSecond ul li a, .naviSecond ul li strong {padding: 20px 10px;color: #ffffff; font-size: 1.125rem; line-height: 1.25rem; text-decoration: none; display: block;}
.naviSecond ul li strong {background-color: #004f9f; color: #fff;}




/* Cookiebar Oveleon*/

.cc-inner {background:radial-gradient(circle at center right, #39383d 0, #29282d 60%, #1f1e23 100%); max-width: 500px; top: 15%!important; position: fixed;}
.cc-cookies {background-color: #424242;}
.cc-head p, .cc-group label {color: #f2f2f2;}
.cc-head p a {color:#a0c72e; text-decoration: none;}
button.cc-btn.success {background-color: #a0c72e; color: #1d2704; transition: all 0.25s ease;}
button.cc-btn.success:hover {background-color:#465f0a; color: #fff; transition: all 0.25s ease;}
#cookiebar-desc p a {color:##a0c72e;}

.mod_cookiebar_opener a {text-align: right; float: right; color: #fff;}
.cookieLink a {float: right; color: #f2f2f2; text-decoration: none; padding: 10px 15px;}





@media screen and (max-width: 1350px) {
  .logo {margin-right: 20px;}
  .naviMain ul li a, .naviMain ul li strong {font-size: 1.25rem; line-height: 1.35rem;}
  .naviMain ul.level_1 > li {margin-left: 10px; transition: all 0.25s ease;}

  .mainh1Slide, .mainspecialSlide {font-size: 5rem; line-height: 5.35rem;}
}

@media screen and (max-width:1200px) {
  .c20 {width: 45%;}
}

@media screen and (max-width:1100px) {
  .hRight, .serviceHold {display: none;}
  .offcanvasHold {display: block;}


  .content-rsce-asp {width: 46%; margin: 25px 2%; float: left;}
  .content-rsce-asp:nth-child(3n+2) {clear: none;}

    .stimmenSlider .persText {position: relative; right: 0; border-radius: 0px 0px 20px 20px; padding: 50px 20px; width: 100%; max-width: 100%;}
  .stimmenSlider .rsts-slide img {border-radius: 20px 20px 0 0 ;}
  .stimmenSlider a.rsts-next, .stimmenSlider a.rsts-prev {display: none;}

  .c25.benefit {width: 50%;}
  .c25.benefit:nth-child(2n+1) {clear: both;}
}


@media screen and (max-width: 800px) {
  .x1, .x2, .x3, .x32, .x4, .x43, .x30, .x5, .c10, .c20, .c25, .c30, .c40, .c50, .c60, .c70, .c80, .c90 {width: 98%!important; margin: 1%; float: none; clear: both;}
  .content-swiper {margin-bottom: 25px;}

  #container {margin-top: 25px;}
  .marginTop50 {margin-top: 25px;}
  .marginTop100 {margin-top: 50px;}
  .marginBottom50 {margin-bottom: 25px;}
  .marginBottom100 {margin-bottom: 50px;}

  h1 {font-size: 2.25rem; line-height: 2.65rem;}
  h2 {font-size: 2rem; line-height: 2.45rem;}

  .content-tabs .tablist button {width: 100%; border-bottom: 1px solid #fff;}
  .content-tabs .tabs {padding: 15px;}
  .content-text ul li, .tab__content ul li, .infoBlock ul li, .productIntro ul li, .projShorts ul li, .jobfw ul li {padding-left: 30px;}

  .mod_newscategories ul li {width: 100%; padding-top: 10px; padding-bottom: 10px; border-bottom: 1px solid #ccc;}

  .content-rsce-asp {width: 98%; margin: 1%;}

  .galX4 ul li {width: 48%;}
  .formbody .widget {width: 98%; margin: 1%;}
/*
  #footer {background-color: #616161;}
  #footer nav ul li a, #footer nav ul li strong, #footer .layout_simple a {color: #fff;}
  #footer h6 {color: #01162b;}
*/
#footer .c25 {margin-bottom: 25px;}
.karriereQuer .rte {width: 90%; padding: 50px 20px 20px 20px; box-sizing: border-box;}

.mainh1Slide, .mainspecialSlide {font-size: 3rem; line-height: 3.5rem;}
.mainspecialSlide sub, .mainh2Slide {font-size: 1.65rem; line-height: 2rem;}
.claim p {max-width: 100vw; font-size: 1.25rem; line-height: 1.45rem;}
.claim p br {display: none;}
.project-card h1.project-card-title {max-width: 100vw;}

.teaserGrey .x3 img {width: 100%; height: auto;}

.projekteCategorie.mod_newscategories ul li {max-width: 100%; width: 100%; display: block; float: none;}

.pStart #kopfgrafik {max-height: 750px;}
.claim {margin-top: 80px;}


}

@media (max-width: 767px) {
  .tab-buttons li {
    float: none;
  }
}