
  

/*@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Poppins:300,400,600,700&display=swap');*/

@font-face {
    font-family: Roboto;
    font-display: swap;
    src: url('fonts/roboto-bold-webfont.woff2') format('woff2'),
         url('fonts/roboto-bold-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: Roboto;
    font-display: swap;
    src: url('fonts/roboto-regular-webfont.woff2') format('woff2'),
         url('fonts/roboto-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: Roboto;
    font-display: swap;
    src: url('fonts/roboto-thin-webfont.woff2') format('woff2'),
         url('fonts/roboto-thin-webfont.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: Poppins;
    font-display: swap;
    src: url('fonts/poppins-bold-webfont.woff2') format('woff2'),
         url('fonts/poppins-bold-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: Poppins;
    font-display: swap;
    src: url('fonts/poppins-semibold-webfont.woff2') format('woff2'),
         url('fonts/poppins-semibold-webfont.woff') format('woff');
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: Poppins;
    font-display: swap;
    src: url('fonts/poppins-regular-webfont.woff2') format('woff2'),
         url('fonts/poppins-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
    border: 0;
	outline: inherit;
	font-size: 100%;
	vertical-align: baseline;
}
body {
    line-height: 1;
    background: #ecf0f1 ;
    font-family: Roboto;
    color: #222222;
    font-size: 16px;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}
body, html{
    height: 100%;
    min-height: 100%;
}
html{
    
}

ol, ul {
	list-style: none;
    line-height: 1.2em;
}
ul:not(#menu){margin-bottom: 20px;}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

/* remember to define focus styles! */
:focus {
    outline: inherit;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
p {
    line-height: 1.5em;
    margin: 20px 0;
    color: #666666;
}
ul, li{
    line-height: 1.5em;
}

/* HTML 5 Elemente = display:block;  */
header, nav, section, footer, article, figure, aside, content{ 
    display: block;   
}
article, .section-inner{overflow: hidden;}

::-moz-selection { /* Code for Firefox */
    background-color: #57ecec; 
    color:#ffffff;
}

::selection {
    background-color: #57ecec; 
    color:#ffffff;
}        /* Headlines  */
h1{font-weight: 700; font-size: 34px;  line-height: 1.2em; font-family: 'Poppins'; word-wrap:break-word;}
h2{font-weight: bold; font-size: 24px; line-height: 1.2em; font-family: 'Poppins';}
p+h2 {padding-top: 20px;}
h3{line-height: 1.4;}
h4{color: #ffffff; font-size:30px; line-height: 1.2em; font-weight:500;}
h5{color: #ffffff; line-height: 1.2em;}

.new_title{background-color: #ecf0f1;padding: 0;}
.new_one{
    margin: 30px auto; text-align:center;font-size: 22px; text-transform:uppercase;letter-spacing:2px;
}

/* Basic Elements -------------------------------------*/
.floatleft{
    float: left;
}
.floatright{
    float: right;
}
.center{
    text-align: center;
}
.left{
    text-align: left;
}
.right{
    text-align: right;
}
.lightgrey{
    background-color: #f5f5f5;
}
.overflow{
    overflow: hidden;
}
.padding{
    padding: 20px;
}
strong{
    line-height: 1.4em;
}
.list ul{
    padding: 22px 22px 0 22px;
}
.list ul li{
    padding: 12px 10px;
}
ul.standard_list{
    padding-left: 20px;
    list-style: disc;
}
a{
    color: #181818;
    text-decoration: none;
    transition: 0.2s;
}
a:hover{
    color: #777777;
}
.current{
    color: #777777;
}
.nav .current{
    color: #8a8a8a;
}
.marginbot{margin-bottom: 20px;}

.usp_ h2{
    font-size: 50px;
    font-weight: 600;
}

/* Goldener Schnitt / Strecke ----------------------------------*/
.shortway{
    width: 35%;
}
.longway{
    width: 60%;
}
.halfway{
    width: 49%; 
}
.firstcolumn{
    width: 33%;
}
.centercolumn{
    width: 33%;
}
.lastcolumn{
    width: 33%;
}


.orangebutton, .contactarea input[type=submit] {
    background-color: #181818;
    display: inline-block;
    padding: 15px 20px;
    color: #181818;
    font-weight: bold;
    border-radius: 2px;
    text-decoration: none;
    transition: background-color .3s ease, color .3s ease;
}
.orangebutton:hover, .contactarea input[type=submit]:hover {
    background-color: #181818;
    color: #ffffff;
}
.orangebutton.current{
    color: #ffffff;
    background-color: #181818;
}



/* Header -------------------------------------*/
@media screen and (min-width: 1025px){
    #menu{
        max-width: 100%;
        line-height: 48px;
    }
    #menu li{
        color:#fff;
        display:inline-block;
        padding:4px 20px;
        cursor:default;
    }
    #menu li:first-child{
        margin-left:0;
        padding-left:0;
    }
    #menu li a{
        font-weight: 700;
        text-decoration:none;
        color:#fff;
    }
    #menu a:hover{
        color: #57ecec;
    }
    #menu li ul{
        display:none;
        padding-top:32px;
        margin-left:-15px;
    }
    #menu li:hover ul{
        display:block;
        position:absolute;
        width:170px;
    }
    #menu li ul li{
        padding:0;
        margin:0;
        width:100%;
    }
    #menu li ul li a{
        width: 100%;
        display: block;
        padding: 8px 15px;
        /*margin-top: 19px;*/
        background-color: #f9f9f9;
        text-align: left;
    }
    #menu li ul li a:hover{
        color:#57ecec;
        background-color: #f8f8f8;
    }
}

.nav{
    position:relative;
    text-align: right;
    z-index:1;
    max-width: 100%;
    padding: 0px;
}

.logo{
    position: absolute;
    z-index:2;
    top:36px;
}

.bdr_one{
    border-right:2px solid #181818;
}
.bdr_two{
    border-right:2px solid #ffffff;
}


/* Section -------------------------------------*/
section, header, footer, copyright{
    max-width: 1900px;
    margin: 0 auto;
    border: 0px solid red;
    padding: 20px;
    background-color: #ffffff;
}
header{
    max-width: 1560px;
    padding: 20px 40px;
    background:none;
    position: relative;
}

section{
    padding: 100px 20px;
}
footer{padding: 60px 20px 0 20px;}
section img{
    max-width:100%; 
    height:auto;
}

/* Article -------------------------------------*/
article, .section-inner{
    max-width: 1024px;
    margin: 0 auto;
    padding: 30px 20px;
    overflow: hidden;
}
.section-inner ul.standard_ul{padding:0 20px;list-style: disc;color:#666666;}
.section-inner li{line-height: 2em;}

.werte{
    max-width: 1090px;
}
.werte div{
}
.werte p{
    padding: 0 30px;
}
.werte h2, .werte h3{
    padding: 30px 30px 0;
    font-family: 'Poppins';
}
.werte h3{font-size: 36px;}

/* TITLEAREA----------------------------------------*/
.titlearea{
    margin-top: -89px;
    background-color: #f1f1f1;
    padding: 60px 20px 30px;
    background: #181818; 
    /*background: linear-gradient(90deg, #181818, #181818, #32556b);*/
    background-size: 100% 100%;
    color: #ffffff;
}
.titlearea p, .call-to-action p{color:#dedede;}

.titlearea_jobs{
    margin-top: -89px;
    background-color: #f1f1f1;
    padding: 60px 20px 30px;
    background: linear-gradient(90deg, #181818, #181818, #32556b);
    background-size: 100% 100%;
    color: #ffffff;
}


/* Intro ----------------------------------*/
/*INTRO NEU**/
.intro.startsite{
    background: url('../img/leopon_way_.jpg') no-repeat;
    background-position: center top;
    background-size: cover;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-top: -89px;
    height: 100%;
}

.intro h1{
    line-height: 1.1;
    color: #ffffff;
    font-weight: 600;
    margin-bottom: 10px;
    margin-top: 25%;
}
.intro h2{
    color: #ffffff;
    font-weight: normal;
}

.intro span{
    color: #ffffff;
}


@media screen and (min-width: 1025px){
    .intro{
        height: 200px;
    }
    .intro h2{
        width: 52%;
    }
}

.Iam {
    padding: 0em 0em;
    /*font: normal 40px/50px Montserrat, sans-serif;*/
    font: 300 40px/50px Roboto, sans-serif;
    color: #999;
    overflow: hidden;
}
.Iam p {
  height: 50px;
  float: left;
  margin-right: 0.3em;
}
.Iam .boldIam {
  float: left;
  overflow: hidden;
  position: relative;
  height: 50px;
  top: 25px;
    font-weight: bold;
}
.Iam .innerIam {
  display: inline-block;
  color: #ffffff;
  position: relative;
  white-space: nowrap;
  top: 0;
  left: 0;


/*animation*/
-webkit-animation:move 7s;
   -moz-animation:move 7s;
    -ms-animation:move 7s;
     -o-animation:move 7s;
        animation:move 7s;
/*animation-iteration-count*/
-webkit-animation-iteration-count:infinite;
   -moz-animation-iteration-count:infinite;
    -ms-animation-iteration-count:infinite;
     -o-animation-iteration-count:infinite;
        animation-iteration-count:infinite;
/*animation-delay*/
-webkit-animation-delay:1s;
   -moz-animation-delay:1s;
    -ms-animation-delay:1s;
     -o-animation-delay:1s;
        animation-delay:1s;
}
@keyframes move{
0%  { top: 0px; }
20% { top: -50px; }
40% { top: -100px; }
60% { top: -150px; }
80% { top: -200px; }
}

@-webkit-keyframes move {
    0%  { top: 0px; }
    20% { top: -50px; }
    40% { top: -100px; }
    60% { top: -150px; }
    80% { top: -200px; }
}
@-moz-keyframes move {
    0%  { top: 0px; }
    20% { top: -50px; }
    40% { top: -100px; }
    60% { top: -150px; }
    80% { top: -200px; }
}
@-o-keyframes move {
    0%  { top: 0px; }
    20% { top: -50px; }
    40% { top: -100px; }
    60% { top: -150px; }
    80% { top: -200px; }
}
@keyframes move {
    0%  { top: 0px; }
    20% { top: -50px; }
    40% { top: -100px; }
    60% { top: -150px; }
    80% { top: -200px; }
}


.mailto_link{
    color: #181818 !important;
    font-weight: 600 !important;
    display: inline !important;
}
.intro_teaser_text a:after{
    content: none !important;
}


.intro_teaser_text{
    font-family: 'Poppins';
    padding: 0 0 0 0;
    width:80% !important;
}
.intro_teaser_text p{
    font-size: 1.5em;
    line-height: 1.8em;
    color: #222222;
    letter-spacing: 1px;
}
.intro_teaser_text span{
    font-weight: 600;
}



.service_link{
    display: inline-block;
    margin-top: 10px;
    background: #181818;
    padding: 15px 25px;
    color: #ffffff;
    border-radius: 3px;
}

.service_link:hover{
    display: inline-block;
    background: #57ecec;
    color: #181818;
}

.service_link_white{
    display: inline-block;
    margin-top: 10px;
    background: #ffffff;
    padding: 15px 25px;
    color: #181818;
    border-radius: 3px;
}
.service_link_white:hover{
    display: inline-block;
    background: #57ecec;
    color: #181818;
}


/* CONTENT -----------------------------------*/
.content h2{position: relative; margin-bottom: 40px;}
.content h2:after{
    content: '';
    position: absolute;
    z-index: 98;
    bottom: -19px;
    left: 0;
    width: 84px;
    height: 1px;
    background: #181818;
}


.services ul{
    background: #ecf0f1;
    display: flex;
    justify-content: space-between;
}

.services ul li{
    display: inline-block;
    padding: 20px;
    text-align: center;
}
.services ul li:before{
    content: url("../img/ok.svg");
    display: inline-block; 
    position: relative;
    top: 2px;
    width: 20px;
    height: 20px;
    padding-right: 10px; 
}

/*.services ul li:last-child{
    background: #181818;
    color: #ffffff;
    float: left;
}
.services ul li:last-child:before{
    content: none;
}*/

.statista ul{
    display: flex;
    justify-content: space-between;
}


.statista li{
    text-align: center;
    font-size: 2.2em;
    background: #ecf0f1;
    border-radius: 120px;
    padding: 15px 35px; 

}
.statista li:nth-child(4){
    background: rgba(87, 236, 236, 0.4);
}
.statista li:nth-child(5){
    background: rgba(87, 236, 236, 0.6);
}
.statista li:nth-child(6){
    background: rgba(87, 236, 236, 1);
}
.statista ul span{
    display: block;
    font-size: 0.3em;
}
.statista ul span:nth-child(1){
    height: 30px;
}


/* Columns 3 -----------------------------*/
.columns-3{display:flex; justify-content:space-between; max-width:1200px;padding:40px 30px;}
.columns-3 .firstcolumn, .columns-3 .centercolumn, .columns-3 .lastcolumn{
    background-color: #fff;
    border: 1px solid #f9f9f9;
    /* box-shadow: 0 20px 40px 0 rgba(30,30,30,.04); */
    width: 31%;
    padding-bottom:20px;
    transition: transform .3s;
}
@media screen and (min-width: 1025px){
    .columns-3 .firstcolumn:hover, .columns-3 .centercolumn:hover, .columns-3 .lastcolumn:hover{
        transform: translateY(-20px);
    }
}
.columns-3 a{color:inherit; text-decoration: none;}
.columns-3 .center div{background-color: #f9f9f9;padding-top: 80px;margin-bottom: 30px;}


.threeboxes{
    background-color: #f1f1f1 !important;
}
.threeboxes h2{
    font-weight: 600;
    font-size: 1.3em;
}
/* Leistungsbeschreibung Startseite ------------------------*/


.leistung_ ul{
    color: #181818;
    font-weight: 600;
}
.leistung_ span{
    background-color: #57ecec;
    width: 30px;
    margin: 0 auto 20px;
    min-height: 2px;
    display: block;
}

/* REFERENCES ------------------------*/
.references{padding: 0 20px;background-color: #fff}
.references .section-inner{max-width: 1200px;}
.references img{opacity: 0.4;width: 200px;margin: 15px;}


/*REGIONAL-------------------------------------------------------*/
.regional{padding-bottom: 150px; height: 60%;}
.regional .longway span{
    font-size: 12px;
    color: #222222;
    display: block;
    margin: 4px 0;
}
.regional h2{font-size: 34px;}

.regional{
    background: #ffffff url('../img/turbolader.jpg');
    background-repeat: no-repeat;
    background-position: 0px center;
    background-size: contain;
}

.pic{
    background-color: #ffffff;
    padding:20px;
}

.browser-dots {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    top: -12px;
}
.browser-dots__dot {
    background-color: #ffffff;
    border-radius: 100%;
    display: block;
    width: 10px;
    height: 10px;
    margin: 0 0 10px 4px;
}
/* PORTFOLIO -----------------------------------*/
.portfolio{background-color: #181818;position: relative;padding:50px 20px 110px 20px;}
.portfolio .lastcolumn{width: 28%;}
.portfolio h2{line-height: 2.4em; color: #fff}
.portfolio li{line-height: 2em;}
.portfolio a{text-decoration: none; color:#fff;}
.portfolio a:hover{color:#181818;}


/* Service Units ------------------------------*/
.service-units{padding: 100px 20px 130px 20px;}
.service-units a{
    display: block;
    line-height: 2.2em;
    text-decoration: none;
    color: #222222;
    font-weight: bold;
}
.service-units a:hover, .service-units a:after, .portfolio a:after{color:#181818;}
.service-units a:after, .portfolio a:after{content:' >';}


/* Performance List -----------------------------------*/
.performance_list{
    margin: 0px auto 0px;
    overflow: hidden;
    padding:  0 0 0 0;
}
.performance_list ul{
    padding: 0 0 0 0 ;
    margin: 0 0 0 0;
    display:inline-flex;
    display: flex;
    justify-content: center;
    
}
.performance_list ul li{
    display: block;
    padding: 40px 40px;
    align-content: stretch;
}
.performance_list ul li:nth-child(1){
    background-color: #dddddd;
}
.performance_list ul li:nth-child(2){
    background-color: #f1f1f1;
}
.performance_list ul li:nth-child(3){
    background-color: #f5f5f5;
}
.performance_list ul li:nth-child(4){
    background-color: #eeeeee;
}



.ref_cars{
    background: #ffffff url('../img/cars.jpg');   
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    min-height: 400px;
}

.service_list{
    display: block;
    margin: 25px 0 0 0;
}
.service_list li{
    display: inline-block;
    padding: 2px 20px;
    background: #e8e8e8;
    color: #666666;
    border-radius: 30px;
    margin-right: 3px;
    margin-top: 5px;
}

.service_list_black{
    display: block;
    margin: 25px 0 0 0;
}
.service_list_black li{
    display: inline-block;
    padding: 2px 20px;
    background: #2a2a2a;
    color: #ffffff;
    border-radius: 30px;
    margin-right: 3px;
    margin-top: 5px;
}


/* Referenzen ----------------------------------*/

.referenz{
    overflow: hidden;
    padding: 0;
    height: 100%;
    display: flex;
}
.referenz div{
    width: 100%; 
}
.referenz p{
    position: relative;
    display: block;
    padding: 0 20px;
    top: 50%;
    color: #ffffff;
    font-size: 1.6em;
}
.referenz h3{
    color: #ffffff;
    position: relative;
    display: block;
    padding: 0 20px ;
    top: 40%;
    font-size: 1.5em;
}
.ref1{
    background: #c9c9c9 url('../img/dpf_bg.jpg');
    background-position: center;
    background-size: cover;
}
.ref2{
    background-color: #999999;
}
.ref3{
    background-color:#c9c9c9;
}


.ref1 .ref2 .ref3{
    min-height: 300px; 
}

.referenz span{
    background-color: #ffffff;
    width: 100px;
    min-height: 3px;
    display: block;
}

/* Rezession ----------------------------------*/
.rez_section a{
    color: #57ecec;
    font-size: 1.5em;
    margin-bottom: 30px;
}
.rez_section a:hover{
    color: #181818;
}
.res_span{
    font-size:1.6em;
}
.rez_section h2{
    text-align: center;
    font-size: 1.3em;
    font-weight: 600;
}
.slider {
    height: 380px;
    margin: 0px auto;
    width: 100%;
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.slider__nav {
  width: 15px;
  height: 15px;
    background: #eeeeee;
  margin: 2rem 12px;
  border-radius: 50%;
  z-index: 10;
  outline: 0px solid #ccc;
  outline-offset: -6px;
  box-shadow: 0 0 0 0 #333, 0 0 0 0 rgba(51, 51, 51, 0);
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.slider__nav:checked {
  background: #666666;
}
.slider__nav:checked:nth-of-type(1) ~ .slider__inner {
  left: 0%;
}
.slider__nav:checked:nth-of-type(2) ~ .slider__inner {
  left: -100%;
}
.slider__nav:checked:nth-of-type(3) ~ .slider__inner {
  left: -200%;
}
.slider__nav:checked:nth-of-type(4) ~ .slider__inner {
  left: -300%;
}
.slider__inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 400%;
  height: 100%;
  -webkit-transition: left 0.4s;
  transition: left 0.4s;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
}
.slider__contents {
  height: 100%;
  padding: 0 2rem;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.slider__image {
  font-size: 2.7rem;
      color: #2196F3;
}
.slider__caption {
  font-weight: 500;
  margin: 2rem 0 1rem;
}
.slider h2{
    font-weight: 300;
    font-size: 2.2em;
}
.slider__txt {
    color: #999;
    margin-bottom: 0.5rem;
    font-size: 1.2em;
    color: #181818;
    line-height: 1.8em;
    width: 70%;
}

@-webkit-keyframes check {
  50% {
    outline-color: #333;
    box-shadow: 0 0 0 12px #333, 0 0 0 36px rgba(51, 51, 51, 0.2);
  }
  100% {
    outline-color: #333;
    box-shadow: 0 0 0 0 #333, 0 0 0 0 rgba(51, 51, 51, 0);
  }
}

@keyframes check {
  50% {
    outline-color: #333;
    box-shadow: 0 0 0 12px #333, 0 0 0 36px rgba(51, 51, 51, 0.2);
  }
  100% {
    outline-color: #333;
    box-shadow: 0 0 0 0 #333, 0 0 0 0 rgba(51, 51, 51, 0);
  }
}

/* Jobs ----------------------------------*/


.jobs{
    overflow: hidden;
    background: url('../img/hintergrundbild_strecke.jpg');
    background-position: center center;
    background-size: cover;
    padding:0;
    color: #ffffff !important;
}

.jobs ul{
    padding: 0;
    margin-bottom: 0 !important;
    display: flex;
    width: 100%; 
    border-bottom: 0px solid #ffffff;
    
}

.jobs p{
    color: rgba(255, 255, 255, 1);
    font-size: 1.3em;
}
.jobs li {
    display: block;
    width: 100%;
}
.jobs li {
    position: relative;
    display: block;
    padding: 25px;
    min-height: 190px;
    top: 5%;
    cursor: default;
    font-size: 1em;
    font-weight: 600;
    color: #57ecec;
    /* background: url('../img/point_bg.png'); */
}
.jobs li:hover{
    color: #ffffff;
    /* background: url('../img/point_bg.png'); */
}
.jobs span{
    background-color: #57ecec;
    width: 30px;
    margin-bottom: 10px;
    min-height: 2px;
    display: block;
}



.jobs ul:nth-child(1) li:nth-child(1), .jobs ul:nth-child(1) li:nth-child(3), .jobs ul:nth-child(2) li:nth-child(2), .jobs ul:nth-child(2) li:nth-child(4), .jobs ul:nth-child(3) li:nth-child(1), .jobs ul:nth-child(3) li:nth-child(3), .jobs ul:nth-child(4) li:nth-child(2), .jobs ul:nth-child(4) li:nth-child(4){
    background-color: rgba(24, 24, 24, 0.9);
}
.jobs ul:nth-child(1) li:nth-child(2), .jobs ul:nth-child(1) li:nth-child(4), .jobs ul:nth-child(2) li:nth-child(1), .jobs ul:nth-child(2) li:nth-child(3), .jobs ul:nth-child(3) li:nth-child(2), .jobs ul:nth-child(3) li:nth-child(4), .jobs ul:nth-child(4) li:nth-child(1), .jobs ul:nth-child(4) li:nth-child(3){
    background-color: rgba(0, 0, 0, 0.7);
}


.jobs ul:nth-child(1):hover li:nth-child(1):hover, .jobs ul:nth-child(1):hover li:nth-child(3):hover, .jobs ul:nth-child(2):hover li:nth-child(2):hover, .jobs ul:nth-child(2):hover li:nth-child(4):hover, .jobs ul:nth-child(3):hover li:nth-child(1):hover, .jobs ul:nth-child(3):hover li:nth-child(3):hover, .jobs ul:nth-child(4):hover li:nth-child(2):hover, .jobs ul:nth-child(4):hover li:nth-child(4):hover{
    background-color: rgba(51, 51, 51, 0.2); transition: 0.2s;
}
.jobs ul:nth-child(1):hover li:nth-child(2):hover, .jobs ul:nth-child(1):hover li:nth-child(4):hover, .jobs ul:nth-child(2):hover li:nth-child(1):hover, .jobs ul:nth-child(2):hover li:nth-child(3):hover, .jobs ul:nth-child(3):hover li:nth-child(2):hover, .jobs ul:nth-child(3):hover li:nth-child(4):hover, .jobs ul:nth-child(4):hover li:nth-child(1):hover, .jobs ul:nth-child(4):hover li:nth-child(3):hover{
    background-color: rgba(51, 51, 51, 0.2); transition: 0.2s;
}





/* Call To Action --------------------------------*/
.call-to-action{
    background-color: #181818;
    position: relative;
    padding: 40px 20px 100px;
}
.call-to-action h3{font-size: 24px;color: #fff;margin-bottom: 20px;}

.phonecall{
    display: none;
    position: fixed;
    bottom: 30px;
    right: 30px;
    /*background: #ffffff;
    padding: 8px 8px 4px;
    border-radius: 5px;
    box-shadow:2px 4px 11px rgba(150,150,150,.4);*/
}

.phoneicon{
    width: 60px;
}



/* CONTACTAREA ---------------------------------------------------*/
.contactarea{
    background-color: #ffffff;
}
.contactarea .longway.floatright{
    padding: 0px !important;
    width:50%;
    background-color:#fff;
}
.contactarea h3{
    font-size: 26px;
    margin-bottom: 12px;
}
.contactarea ul li{
    padding: 3px 0;
}
.contactarea ul li:before{
    content: '✔ ' ;
    font-size: 20px;
    font-weight: 300;
    position: relative;
    top: 2px;
}
/*CONTACTAREA TOOLTIP*/
.tooltip{margin-bottom: 6px;}
.tooltip .tooltiptext {
    display: none;
    width: 500px;
    max-width: 100%;
    background-color: #181818;
    color: #fff;
    border-radius: 3px;
    padding: 20px;
    font-size: 16px;
    line-height: 20px;
    position: absolute;
    z-index: 1;
    left: 47%;
    margin-top: -22%;
}

.tooltip .tooltiptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 10px;
    border-style: solid;
    border-color: black transparent transparent transparent;
}








@media screen and (min-width: 769px){
    .tooltip:hover .tooltiptext {
        display: inline-block;
    }
}

.validatr-message{
    max-width: 300px;
    padding: 5px !important; 
    background-color: #ffa1a1 !important;
    color: #db2d2d !important;
    border: 1px solid #db2d2d !important;
}

#captcha_img, #captcha_code{display: none;}



.standard_button{
    padding: 20px;
    color: #ffffff;
    position: relative;
    /*right: 18px;*/
    border-radius: 3px;
    font-weight: 600;
}

.standard_button:hover{
    color: #181818; 
    background: #57ecec;
}

/* Form ----------------------------------*/
form{
    background: none;
    padding: 0 0 0 0;
    border:0px solid #ffffff;
}
input[type=text], input[type=email], input[type=number], textarea{
    border: none;
    border: 1px solid #bababa;
    /*width: 90%;*/
    width: 100%;
    box-sizing: border-box;
    font-size: 16px;
    padding: 20px 15px;
    margin-bottom: 9px;
    border-radius: 2px;
    font-family: 'Roboto';
}
/*
input::placeholder, textarea::placeholder{
    color: #f8f8f8;
}*/

textarea{
    height: 139px;
    font-size: 16px;
    border-radius: 2px;
    border-left: 1px solid #bababa;
    font-family: 'Roboto';
}
input[type="email"].big-dog::-webkit-input-placeholder {
    color:   #777777;
    padding: 10px;
}
input[type=submit] {
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    border: none;
    font-size: 16px;
    background: #181818;
    cursor: pointer;
    margin: 5px 0px; 
    float: right; 
    font-family: Roboto;
    line-height: 1;
    font-weight: 700;
}
input[type=submit]:hover {
    color: #181818;

}

::-webkit-input-placeholder {
    color:  #777777;
    font-family: 'Roboto';
    font-size: 18px;
}
:-moz-placeholder {
    color:  #777777;
    font-family: 'Roboto';
    font-size: 18px;
}
::-moz-placeholder {
    color: #777777;
    font-family: 'Roboto';
    font-size: 18px;
}
:-ms-input-placeholder {
    color: #777777;
    font-family: 'Roboto';
    font-size: 18px;
}

::placeholder{
    line-height: 1;
    padding:5px 0 0 5px;
}

/* CUSTOM CHECKBOX ------------------*/
/* The container */
.checkcontainer {
    position: relative;
    padding-left: 40px;
    display: block;
    height: 25px;
    margin-top: 10px;
    margin-bottom: 10px;
    cursor: pointer;
}
/* Hide the browser's default checkbox */
.checkcontainer input {
    display: none;
}
/* Create a custom checkbox */
.checkmark {
    position: absolute;
    left: 10px;
    height: 18px;
    width: 18px;
    background-color: #eee;
}
/* On mouse-over, add a grey background color */
.checkcontainer:hover input ~ .checkmark {
    background-color: #ccc;
}
/* When the checkbox is checked, add a blue background */
.checkcontainer input:checked ~ .checkmark {
    background-color: #57ecec;
}
/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}
/* Show the checkmark when checked */
.checkcontainer input:checked ~ .checkmark:after {
    display: block;
}
/* Style the checkmark/indicator */
.checkcontainer .checkmark:after {
    left: 5px;
    top: 2px;
    width: 5px;
    height: 10px;
    border: solid #252e34;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}


.karriere_bubble{
    position:relative; top:-10px; padding:4px 4px 3px; border-radius:10px; background-color:#57ecec; color:#181818; font-size:11px;
}

.datasecure h2{
    margin-bottom: 20px;
}



.contactinfo{
    padding: 10px;
    background: #ecf0f1;
    overflow: hidden;
}

.contactinfo p{
    font-size: 1.2em;
    color: #181818;
}

/* Copyright ----------------------------------*/
.copyright{
    background: #181818;
    padding: 0 20px;
    margin-bottom: 20px;
    color:#ffffff;
}

.copytext{
    color:rgba(255, 255, 255, 0.46);
    letter-spacing: 1px;
}

.projektanfrage{
    display: inline-block;
    padding: 18px 30px;
    color: #ffffff;
    font-size: 0.9em;
    font-weight: 600;
    background-color: #181818;
    border-radius: 3px;
    position: relative;
    top: -3px;
}
.projektanfrage:hover{
    color: #181818;
    background: #57ecec;
}

.device{
    background: #ecf0f1 url('../img/device.jpg');   
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    min-height: 300px;
}

.ads{
    background: #ecf0f1 url('../img/ads.jpg');   
    background-repeat: no-repeat;
    background-position: top left;
    background-size: cover;
    min-height: 280px;
}


/* Footer ------------------------------------------*/
footer{
    background-color: #181818;
    min-height: 200px;
    padding-top: 90px;
    position: relative;
}
footer .lastcolumn img{margin-right: 24px;}
footer .lastcolumn li {
    color: #ffffff;
}
footer .lastcolumn span{
    color: #57ecec;
    text-decoration: none !important;
}
footer li a{
    padding: 3px 0;
    display: inline-block;
    color: #ffffff;
}
footer li a:hover{
    color: #999999;
}
footer .current{
    color: #999999;
}

.footer_logo{
    margin-top:0px; 
    float: right;
}


/*SKEWED-------------------------------------------------------*/
/* .portfolio:before, footer:before, .call-to-action:before {
    content: '';
    -ms-transform: skewY(-2deg); /* IE 9 *
    -webkit-transform: skewY(-2deg); /* Safari *
    transform: skewY(-2deg);
    width: 100%;
    height: 80px;
    background-color: inherit;
    position: absolute;
    top: -44px;
    left: 0;
    display: block;
} */


/*#cookie-bar.fixed.bottom {bottom:0; top:auto;}*/
/* COOKIES****************************************/
#cookie-bar{background:rgba(0,0,0,0.9); padding:25px 25px; border-radius: 3px;position:fixed; bottom:2%; left:1%; width:365px;z-index:9999;}
#cookie-bar p {color:#ffffff; margin:0; font-size:12px; line-height:22px;}
#cookie-bar p:before {content: 'Cookies'; display: block; font-size: 24px; font-weight:bold; margin-bottom: 8px;}
#cookie-bar p a{ color: #57ecec;}
#cookie-bar a.cb-enable {background: #57ecec; color: #181818; font-weight: bold; display:block; width: 20px; border-radius:2px; text-decoration:none; padding:5px 14px; margin: 15px 0px 0px 0px;}
#cookie-bar .cb-enable:hover {background: #48c3c3;}

@media screen and (max-width: 850px){
    #cookie-bar { padding:15px 10px; width:90%; left:2%;}
    #cookie-bar a.cb-enable {padding:3px 14px;display:block;width:fit-content}
}
/*Desktop and Up*/
@media screen and (min-width: 1281px){
    .intro .section-inner{max-width: 1200px;}
}

/* Small Desktop & Up --------------------------------------*/
@media screen and (min-width: 1024px) {
    
    .intro h1 {font-size: 80px;}
    
    .service-units .section-inner div{width: 30%; float:left;}
}

@media screen and (max-width:1280px){
    .intro h2 {width: 60%;}
}

/* Up To small Desctop
-------------------------------------------------------------------------------------------- */
@media screen and (max-width: 1024px) {
    
    /*.intro.startsite{
        padding-top: 310px;
        padding-bottom: 160px;
    }*/
    .intro h2 {width: 66%;}
    
    .columns-3{display: block;}
    .columns-3 .firstcolumn, .columns-3 .centercolumn, .columns-3 .lastcolumn{
        width: 100%;
        margin-bottom: 40px;
    }
    
    .bdr_one h2, .bdr_two h2{
        font-size: 2.5em;
    }
    
    .werte h2, .werte h3{padding: 30px 0 0;}
    .werte p{padding: 0;}
}

@media screen and (min-width:769px) and (max-width:1069px){
    .checkcontainer{display: grid;}
}


/* Up to Tablet
-------------------------------------------------------------------------------------------- */
/* --- Tablet --- */
@media screen and (max-width: 768px) {
    
    .intro.startsite{
        padding-top: 50px;
        padding-bottom: 160px;
        height: 370px;

    }
    .intro h1{
        font-size: 3em;
        line-height: 1.2em;
    }
    .intro h2{font-size: 12px;}
    .intro_teaser_text {
        width: 100% !important;
        padding: 0 !important; margin:0;
    }

    .intro_teaser_text p{
        font-size: 1.2em;
        line-height: 1.8em;
        padding: 0 20px;
    }
    
    .Iam {
        Display: none;
    }
    
    .footer_logo{
        float: left;
    }
    .jobs{
        background-size: 1000%;
    }
    .jobs li {
        padding: 20px 0;
        min-height: 10px;
    }
    .jobs li p{
        padding: 0 25px 0 ;
    }
    .jobs li span{
        margin: 0 25px 10px;
        padding: 0;
    }

    .floatleft, .floatright, .portfolio .lastcolumn{
        float: none;
        width: 100%;
    }
    .firstcolumn, .centercolumn{
        margin-bottom: 60px;
    }
    
    .regional .longway span{margin-bottom: 20px}
    
    img.longway.floatleft{margin-bottom: 40px;}
    
    .contactarea .longway.floatright{
        width: 100%;
        box-sizing: border-box;
        margin-top: 60px;
    }
    
    .bdr_one, .bdr_two{
        border: 0px solid #000000; margin-bottom: 20px;
    }
    
    
    .services ul{
        display: block;
        justify-content: none;
    }

    .services ul li{
        display: block;
        padding: 15px 20px;
        text-align: left;
    }
    
    /*
    textarea{
        width: 85%; float: none;
    }

    /*input[type=text], input[type=email], input[type=number], textarea{
        width: 100%;
        box-sizing: border-box;
    }*/
    .validatr-message{
        left: 15% !important;
    }
    .contactarea ul {
        margin-bottom: 30px;
    }
    .phonecall{
       display: block;
    }
    
    .jobs ul{
    display: block;
    width: 100%; 
    }
    .jobs li a{ width:100%;}
    
}



/* Smartphone
-------------------------------------------------------------------------------------------- */
/* --- Smartphone --- */
@media screen and (max-width: 480px) {  

    header{padding-left: 20px; padding-right: 20px;}
    section, footer, copyright, .titlearea{
        padding-left: 10px;
        padding-right: 10px;
    }

    
    h1, .regional h2{font-size:32px;}
    

    .intro h2 {width: 100%;}
    
    .portfolio h2{line-height: 1.4em;margin-bottom: 20px;}
    
    .contactarea .longway.floatright{padding:40px 20px;}
    
    footer .floatright{text-align: left;}
    
    
}

/* Slim Smartphones ----*/
@media screen and (max-width: 350px) {
    h1, .regional h2{font-size: 27px;}
}




/***********NEW CSS MENU********************************************************/
/*Style 'show menu' label button and hide it by default*/
.show-menu {
	text-decoration: none;
	color: #fff;
	text-align: right;
	height: 32px;
    padding: 15px 0 2px;
	display: none;
    overflow: hidden;
    background: #181818;
}

/*Checkbox ausblenden*/
header input[type=checkbox]{
    display: none;
    -webkit-appearance: none;
}





@media screen and (max-width: 1024px){
    
    nav.nav {
        position: absolute;
        left: 0;
        width: 100%;
        background:#181818;
        box-shadow: 0 8px 10px rgba(100,100,100,0.3);
        
    }
    
    /*ul Styling entfernen*/
    header ul {
        margin:0;
        padding:0;
        position: absolute;
        text-align: center;
    }

    /*horizontale Liste*/
    header li {
        display:inline-block;
        float: left;
        margin-right: 1px;
        line-height: 50px;
    }

    header li a {
        display:block;
        min-width:140px;
        height: 50px;
        text-align: center;
        line-height: 50px;
        color: #ffffff;
        background-color:inherit;
        text-decoration: none;
    }

    /*dropdown links*/
    header li:hover ul a {
        background: #f8f8f8;
        color: ;
    }

    /*gehoverte Dropdown Links*/
    header li:hover ul a:hover {
        background: #181818;
        color: #ffffff;
    }

/*submenu unsichtbar*/
    ul.menu{
        display: none;
    }

    /*Vertikale Dropdown Links*/
    header li ul li {
        display: block;
        float: none;
    }

    /*Text wrapping vermeiden*/
    header li ul li a {
        width: auto;
        min-width: 100px;
        padding: 0 20px;
    }

    
    input[type=checkbox]:checked ~ nav.nav{
        padding: 30px 0 0px;
        
    }

    /*Menu anzeigen, wenn die unsichtbare Checkbox aktiviert ist*/
    input[type=checkbox]:checked ~ nav #menu{
        display: block;
    }  
    /*Submenu sichtbar machen*/
    input[type=checkbox].submenuCheck:checked ~ ul.menu{display: block;}
    
    .karriere_bubble{
        display: none;
    }
      
    
	/*Dropdown Links inline darstellen*/
	header ul {
		position: static;
		display: none;
        
	}
	/*Create vertical spacing*/
	header li {
		margin-bottom: 1px;
        border-top: 1px solid #333333;
        padding: 7px 20px 7px 0;
        width: 88% !important;
        font-weight: 600;
        font-size: 1.2em;
        margin-left: 10px;
	}
	/*Make all menu links full width*/
	header ul li, header li a {
		width: 100%;
        text-align: left;
        margin-left: 20px;
    }

	/*Display 'show menu' link*/
	.show-menu {
		display: block;
        height: 28px;
        background: url(../img/menu.svg) right no-repeat;
        background-size: 36px;
        /*background-size: 8%;*/
        cursor: pointer;

	}
    
    
    .dropdown:after {
        content:'▼';
        margin-left: 20px;
        color: #181818;
    }
    
    input[type=checkbox]:checked ~ .dropdown:after {
        content:'▲';
        
    }
}