/*
 Theme Name:   bootScore Child
 Description:  bootScore Child Theme
 Author:       bootScore
 Author URI:   https://bootscore.me
 Template:     bootscore-main
 Version:      5.3.0
 Text Domain:  bootscore
*/

/* 
All style editing is done via scss/_bscore_custom.scss
*/



.menu-item {

}

body {
	font-family: helvetica, sans-serif;
}

.navbar {

padding:0;
}

.navbar-brand {
	padding-bottom: 0;
}
.absolute-logo {
	position:absolute;
	top: 0;

}

.logo-scroll {
  display: none;
}

.scrolled .logo-default {
  display: none !important;
}

.scrolled .logo-scroll {
  display: inline !important;
}


/*Coockie Banner Styling*/

#bs-cookie-bar  {
	background-color: #212529!important;
	color: #cecece;
	font-size: .8em;

}

#bs-cookie-bar a {
	color: #fff;
	font-size: 1.1em;
	
}

#bs-cookie-bar .btn-primary  {
	background-color: var(--Theme-color2);
	border-radius: 0;

}
#bs-cookie-bar .btn-primary:hover {
	background-color: var(--Theme-color3);
		border-radius: 0;

}


#bs-cookie-bar .btn-outline-primary {
	
color:white;
	border-radius: 0;
	border-color: white;

}
#bs-cookie-bar .btn-outline-primary:hover{
	background-color: white;
color:black;
	border-radius: 0;
	border-color: #212529;

}



/*Headerbereich*/

.nav-link {
	font-size: 19px;
	letter-spacing: .02em;
	font-weight: 500;
}
.fixed-top {
	border-bottom: 8px solid var(--Theme-color4);
}

.fixed-top a{
	text-transform: uppercase;
	font-family: bebas neue, sans-serif;

}

.navbar-nav .nav-link {

line-height: 4em;
padding: 0px;
margin: 0;


}
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
	background-color: var(--Theme-color2);

	color:#fff;
}


/*Mobil Menü*/


.offcanvas-body {
	background: ;
}

.offcanvas-title {
	color: #fff;
}

/*
.offcanvas-body a {
	color: black!important;
}

.offcanvas-body a:hover {
	font-weight:600!important;
		color: black!important;
}

.offcanvas-body a:visited {
	color: black!important;
}

.offcanvas-body a:active {
	font-weight:bold;
	color: black!important;
}

*/

.offcanvas-header {
background:#2c3035; 
	border-bottom: 1px solid #ddd;
}


@media screen and (max-width: 1020px) {

.offcanvas-body .nav-link {
	line-height: 3em;
	padding-left: 12px;
	border-bottom: dotted 1px #ddd;
	margin:5px 0;
}

.absolute-logo {
	position:relative;
	top: 0;

}



}


/*Extra Modul*/







.extra-modul1 {
	
position: fixed;
	z-index: 999;
	right: -46px;
	top: 200px;
	margin: 0;
	
		transform: rotate(-90deg);
		 

}

.extra-modul1 .btn-primary {
	padding: 7px 25px;
	margin: 0;
	font-size: 1.1em;
	  color:var(--Theme-color1);
  background-color: var(--Theme-color2);
  border-color: var(--border1);
  border: none;
  border-radius: 7px 7px 0 0;

 	
}

.extra-modul1 .btn-primary:hover {
	  color: var(--Theme-color1);
  background-color: var(--Theme-color3);
  border-color: var(--border2);
   border: none;
}





.btn-primary {
  color:var(--Theme-color1);
  background-color: var(--Theme-color2);
  border-color: var(--border1);
  border: none;
  }

.btn-primary:hover {
  color: var(--Theme-color1);
  background-color: var(--Theme-color3);
  border-color: var(--border2);
   border: none;
}



.container {
	text-align: left;
	hyphens: auto;


}
.container h1, h2, h3, h4,h5, h6{
	font-family: 'Bebas Neue';
	letter-spacing: 1px;
}

.container h2 {
	line-height: 1.2em!important;
	font-weight: 600;
	margin: 0;
	background-color: ;

}

.container h3 {
	line-height: 1em!important;
	font-weight: 400;
	margin: 0;
	background-color: ;

}


	



.section-headline-wrapper {
	width:100%;
	height: auto;
	background-color: ;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}


.section-indicator {
background: ;
	
	margin-right: 18px;
	height: 70px;
	width: 70px;

}


.section-headline {
	background: ;

	width:80%;

	
}
.section-headline h3 {
	font-size: calc(1.1rem + 0.6vw) ;
}


@media screen and (max-width: 690px) {
	
		.section-indicator {

				height: 40px;
			width: 40px;

		}
		.section-headline h3 {
			font-size: calc(.9rem + 0.6vw) ;
		}


}



/*Hero Bereich*/

  .hero-scene {
margin-top: 80px;
  	background-repeat: no-repeat, repeat, no-repeat;
		background-position: 50% 101%, center, center ;
		background-size: 100%, cover ,cover;
      height: 700px;
      background-attachment: scroll, scroll, fixed;
  }

  .hero-txt-wrapper {
  position: absolute;
  top:250px;
  left:0;
   	font-size:70px;
  	line-height: .8em;
  	font-family: var(--theme-font-family);
  	color: var(--Theme-color1)


  }
  .hero-title{
  
  	font-weight: 600;
  	font-size: 1em;
  	
  }
    .hero-caption{
  	
  	font-weight: 600;
  	font-size: .7em;
		background-color: rgba(0, 0, 0, .5 );
		padding:12px;
		border:5px solid white;
  	
  }

  @media screen and (max-width: 1024px) {
  	  .hero-scene {
margin-top: 80px;
  	background-repeat: no-repeat, repeat, no-repeat;
		background-position: 50% 101%, center, center;

      height: 600px;
      background-attachment: scroll, scroll, scroll;
  }


  }

    @media screen and (max-width: 778px) {
  	  .hero-scene {
margin-top: 80px;
  	background-repeat: no-repeat, repeat, no-repeat;
		background-position: 50% 101%, center, center;
		background-size: 100%, cover ,cover;
      height: 500px;
      background-attachment: scroll, scroll, scroll;
  }




  }


@media screen and (max-width: 690px) {

  .container h1, h2, h3, h4,h5, h6{
	margin-left: 20px!important;
}
}

    @media screen and (max-width: 480px) {
  	  .hero-scene {
margin-top: 80px;
  	background-repeat: no-repeat, repeat, no-repeat;
		background-position: 50% 101%, center, center;

      height: 350px;
     
  }




   .hero-txt-wrapper {
   top:130px;
  left:5%;
  
   	font-size:35px;
  	line-height: .8em;
  	


  }


  }


        @media screen and (min-width: 2000px) {
  	  .hero-scene {
  	  		background-position: 50% 101%, center, center bottom;

      height: 1000px;
     
  }
}



/* Styling der Bilderkarten */

      
    .hero-karten-wrapper {width:1200px; margin: 8vh auto; }

      .Karte-img-left, .Karte-img-right {display:flex; position: relative;  width: 33%;}
/*      .Karte-img-right {flex-direction:row-reverse;}*/

     .Karte-img-imgcontainer {width: 270px; margin: auto;}
    .Karte-img-imgcontainer img {object-fit:cover; width:270px; height:270px; padding: 7px; margin: 7px; border: 1px solid var(--Theme-color6); }

      .Karte-img-txtcontainer {position: absolute; right: 0px; top:180px; width: auto; height: auto;  font-size:1.1vw; }


      .Karte-img-txtcontainer h2 {color: var(--Theme-color1) ;font-size:2vw; letter-spacing: 1.5px; background: var(--Theme-color6); border: solid 4px var(--Theme-color1); width: auto; padding: 12px 24px; text-align: right;}



 @media screen and (max-width: 1240px) {

 /* Styling der Bilderkarten */

      
    .hero-karten-wrapper {width:100%; margin: 8vh auto; }

     
 }

  @media screen and (max-width: 920px) {

 /* Styling der Bilderkarten */

      
    .hero-karten-wrapper {width:100%; margin: 8vh auto; }

           .Karte-img-left, .Karte-img-right {display:flex; position: relative;  width: 33%;}
/*      .Karte-img-right {flex-direction:row-reverse;}*/

     .Karte-img-imgcontainer {width: 220px; margin: auto;}
    .Karte-img-imgcontainer img {object-fit:cover; width:220px; height:220px; padding: 7px; margin: 7px; border: 1px solid var(--Theme-color6); }

      .Karte-img-txtcontainer {position: absolute; right: 0px; top:150px; width: auto; height: auto;  font-size:1.1vw; }


      .Karte-img-txtcontainer h2 {color: var(--Theme-color1) ;font-size:3vw; letter-spacing: 1.5px; background: var(--Theme-color6); border: solid 4px var(--Theme-color1); width: auto; padding: 12px 24px; text-align: right;}

 }

   @media screen and (max-width: 760px) {

 /* Styling der Bilderkarten */

      
    .hero-karten-wrapper {width:100%; margin: 8vh auto; }

           .Karte-img-left, .Karte-img-right {display:flex; position: relative;  width: 30%;}
/*      .Karte-img-right {flex-direction:row-reverse;}*/

     .Karte-img-imgcontainer {width: 220px; margin: auto;}
    .Karte-img-imgcontainer img {object-fit:cover; width:190px; height:190px; padding: 7px; margin: 7px; border: 1px solid var(--Theme-color6); }

      .Karte-img-txtcontainer {position: absolute; center: 0px; top:150px; width: auto; height: auto;  font-size:1.1vw; }


      .Karte-img-txtcontainer h2 {color: var(--Theme-color1) ;font-size:3vw; letter-spacing: 1.5px; background: var(--Theme-color6); border: solid 4px var(--Theme-color1); width: auto; padding: 12px 24px; text-align: center;}

 }





 @media screen and (min-width: 700px) {
.hero-karten-wrapper-mobile {display:none!important;}

 }



  @media screen and (max-width: 700px) {

 /* Styling der Bilderkarten */

      
    .hero-karten-wrapper {display:none!important;}

.hero-karten-wrapper-mobile {display:block; margin: 5vh auto 8vh;}

 .Karte-mobile-img-left, .Karte-mobile-img-right {display:flex;  width: 100%; margin-bottom: 30px;  position: relative;}
/*      .Karte-mobile-img-right {flex-direction:row-reverse;}*/

     .Karte-mobile-img-imgcontainer {width: 80vw; margin: auto;}
    .Karte-mobile-img-imgcontainer img {object-fit:cover; width:80vw; height:80vw; padding: 7px; margin: 7px; border: 1px solid var(--Theme-color6); }

      .Karte-mobile-img-txtcontainer {position: absolute; top: 60vw; width: auto; height: auto;  font-size:1.1vw; }


      .Karte-mobile-img-txtcontainer h2 {color: var(--Theme-color1) ;font-size:6vw; letter-spacing: 1.5px; background: var(--Theme-color6); border: solid 4px var(--Theme-color1); width: auto; padding: 12px 24px; text-align: right;}



 }









/* Sektion-Über uns - margin abhängig von #Herokarten-mobile */

#ueber-uns {
padding-top: 100px;
}




#timeline img {
  display: block;
  margin-left: auto;
  margin-right: auto;


}






/* Sektion-Leistungen */

#leistungen {
	padding-top:40px;
}

#leistungen-content h5{
	font-size: 1.6em!important;
	color:#fff;
	background-color: rgba(50, 50, 50, 1);
	padding:5px 15px 0;
}

#leistungen-content .sow-features-feature-text {
	color:#fff;
	font-weight: ;
}

#leistungen-content {

	
background: var(--Theme-color2);
/*background: url(images/Divider_Round_unten_schmal.svg), linear-gradient(0deg, var(--Theme-color2) 50%, var(--Theme-color2) 100%) ;*/
background-repeat: no-repeat, no-repeat;
background-position: 50% 101%, center;
	
}

#leistungen-content-mobile {



background: var(--Theme-color2);
/*background: linear-gradient(0deg, var(--Theme-color2) 30%, var(--Theme-color2) 100%) ;*/
background-repeat: no-repeat;
background-position: center;
}


#leistungen-content-mobile h5{
	font-size: 1.6em!important;
	color:#fff;
	background-color: rgba(50, 50, 50, 1);
	padding:5px 15px 0;
}

#leistungen-content-mobile .sow-icon-image {
	margin-top:40px;
}

@media screen and (min-width: 992px) {

		#leistungen-content .sow-features-feature .textwidget {

			margin: 0 20px 0 0px;
			width: 400px;
			color: var(--Theme-color3);
			font-size: 1.1em;
			line-height: 1.2em;
			
			text-align-last: left;
			hyphens: auto;
		}

		#leistungen-content .sow-features-feature .textwidget h5{

			
			font-size: 1.3em;
			
		}
}

#leistungen-content-mobile .sow-features-feature .textwidget {
		color: #fff;
}




/*Sektion Zitat*/




#zitat{
filter: saturate(85%);
margin:0;
padding: 8vh;
height: 550px;
background: var(--Theme-color3);
background: url(images/Divider_Round_unten_schmal.svg), linear-gradient( rgba(25,25,25,.7) 0%, rgba(25,25,25,.7) 70%), url(images/bg/zitat-bg.jpg);
background-repeat: no-repeat, no-repeat, no-repeat;
background-position: 50% 101%, center, center;
background-size: contain,cover ,cover;
	background-attachment:scroll, scroll, fixed;
	
}



.zitat-wrapper{
margin:120px auto;
padding: 10px;

}

.zitat-inner{
border: solid 1px white;
letter-spacing: -0.02em;
background-color: rgba(0, 0, 0, 0);
font-size: calc(1.7em + .7vw);
color:white;
text-transform: uppercase;
text-align: center;
padding:17px;

font-family: Bebas Neue, sans-serif;

}

@media screen and (max-width: 920px) {

		.zitat-wrapper{
			

		margin:20% auto;
		padding: 10px;

		}


			#zitat{
		filter: saturate(100%);
		margin:10% 0;
		height: 400px;
		background: var(--Theme-color3);
		background: linear-gradient( rgba(25,25,25,.7) 0%, rgba(25,25,25,.7) 70%), url(images/bg/zitat-bg.jpg);
		background-repeat: no-repeat, no-repeat;
		background-position: center, center;
		background-size: cover ,cover;
		
			
		}

		.zitat-inner{
		padding:5px;

		font-size: calc(1.5em + 1vw);
		font-weight:500;


		}
}








/*Sektion Referenzen*/


.swiper-button-next, .swiper-button-prev{
	color:#999!important;

}
.swiper-pagination-bullet{
	background: #454545!important;
}
.card-text p{
	14px
}


.card-img, .card-img-top, .product-category .card img {
	border-radius: 0;
}

.card-img-top {
	width:100%;
	height:55%;
	object-fit: cover;
}
.separator-unten {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100vw;

}


.swiper-button-next:after, .swiper-button-prev:after {
	font-size: 1em;
	color: var(--Theme-color1);
}


.swiper-button-next, .swiper-button-prev {
background: var(--Theme-color3);
}







/*Sektion Jobs*/


#jobs {

background-color: #d9d9d9;

}
.jobs-panels .btn-primary {
font-family: Bebas Neue, sans-serif;
font-size: 1.2em;
letter-spacing: 1px;
padding: 7px 40px;
margin-top:50px;
}

.jobs-panels .btn-primary a{
text-decoration: none;
}


.bewerbungsbutton {
	margin: 50px 0;
}


.jobs-panels .sow-accordion-title {
	font-family: Bebas Neue, sans-serif;
font-size: 1.4em;
letter-spacing: 1px;
}


/* Sektion Kontakt */

#kontakt {
background: var(--Theme-color3);
background: linear-gradient( white 0%, rgba(255, 255, 255, .2) 10%, rgba(255, 255, 255, .2) 50% , white 100%), url(images/bg/kontakt-bg.jpg);
background-repeat: no-repeat, no-repeat;
background-position: center, center;
background-size: cover ,cover;
background-attachment:scroll, fixed;
}


.kontakt-wrapper {
	float: left;
	width: 100%;
	background: ;
	padding: 50px 0;
}

.kontakt-inner-wrapper {
	float: left;
	width: 100%;
	background: ;
	

}

.kontakt-inner-icon {

	float: left;
	width: 50px;
	height: 50px;
	padding: 5px;
	background: var(--Theme-color1);
	margin: 7px 0;
	border-radius: 0px;
	border-color: var(--Theme-color4);
	border-width: 1px;
	border-style: solid;
	


}
.kontakt-inner-txt span {

	padding-top: 15px;
		background: red;
	

}

.kontakt-inner-txt span:first-child {

	padding-top: 7px;
		background: ;
	

}

.kontakt-inner-txt {
	float: left;
	font-size: 1.4em;
	padding: 0 20px;
	background: ;
	height: 50px;
	  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 400;

	line-height: 1.1em;
	margin: 7px 0;


}

.kontakt-inner-txt a {
	color: var(--Theme-color4);
	font-weight: 500;
	font-size: 1.1em;
	text-decoration: none;


}

.kontaktformular .sow-contact-form {
	background-color: rgba(255, 255, 255, .0)!important;
}

.kontaktformular .sow-form-field textarea, .kontaktformular .sow-form-field .sow-text-field {
	border:1px solid #999!important;}

	.kontaktformular .sow-form-field label, .kontaktformular .sow-form-field .sow-text-field {
	color:#666;
	font-weight: 500;

}


.mapsample {
	margin-top: 40px;
	border: solid 1px #ddd;
        -webkit-filter: grayscale(100%);
        -moz-filter: grayscale(100%);
        -ms-filter: grayscale(100%);
        -o-filter: grayscale(100%);
         filter: grayscale(100%);
}


/*Footer*/


footer {

	background-color: var(--Theme-color6);
	/*background-image: url(images/Divider_Round_oben.svg);*/

		background-size: contain;
	background-position: center top;
	background-repeat: no-repeat;

	color: var(--Theme-color4);
	height:250px;

}

.sub-footer a{
	color: var(--Theme-color4);
	
	padding: 0 5px;
}

.sub-footer .container {
	padding-top: 10px;
	display: flex;
	justify-content: space-between;
}

.sub-left-coloumn{
	width: 26%;
}

.sub-left-coloumn a{
	font-size: 2rem;
	color:var(--Theme-color4);
}
.sub-left-coloumn a:hover{
	font-size: 2rem;
	color:#fff;
}

 .sub-right-coloumn ul{
 list-style-type: none;
	display: flex;
	margin:0;
	padding: 10px 0;
	
	
}
.sub-right-coloumn li{
	line-height: 1em;
	border-right: solid 2px #444;

}
.sub-right-coloumn li:last-child{
	line-height: 1em;
	border-right: none;

}


 .sub-right-coloumn a{
 	color: #868686;
 	font-weight: 500;
 	padding: 0 .75rem;

font-size: .85rem;
text-decoration: none;
	
}

 .sub-right-coloumn a:hover{
	 font-weight: 600;
	 color: #ddd;
	
}


@media screen and (max-width: 800px) {
footer {
	background-image: ;
}

}




/*Footer - Einzelne Bereiche*/

.footer-komplet{

}

.footer-komplett a{

color: var(--Theme-color4);
}

.footer-komplett h2{
	
font-size: 1em;
color:#666;
}


/*Sub-Footer - Einzelne Bereiche*/

.sub-footer {
	
	font-weight: 500;
	height: 100px;
	padding-top:15px;
	background:var(--Theme-color5);
	color: var(--Theme-color4);
}
.firmeninfo {
	line-height: 1.2em;
	color:var(--Theme-color4);
}
.firmeninfo a{
		color:var(--Theme-color4);
}



/*scroll to top*/

.top-button  {
	
	bottom: 70px;

	border-radius: 3px;
}



@media screen and (max-width: 800px) {

		.extra-modul1 {

		display: none;
		}



	
}