/* 
/* Version 1.9 / 7.12.2023
*/
@import('fonts.css');
:root {
--headline-color: #000000;
--main-text-color: #444; /* Grau */
--light-text-color: #666;
--footer-text-color: #666; /* Grau */
--primary-color: #FFCA13; /* Gelb */
--highlight-color: #1227E0; /* Blau */
--background-color: #F9F9F9;
--mid-grey: #EEE;
}


.dropshadow, .btn-company {
  box-shadow: 0 .25rem .8rem rgba(0, 0, 0, 0.1); 
}

body {
	font-family: 'Open Sans', Arial, Helvetica, Sans-Serif;
	font-size: 18px;
	color: var(--main-text-color);
	background-color: var(--background-color);
  }

a {
	color: #337ab7;
}

h1, h2, h3, h4, h5, h6 {
	color: var(--headline-color);
	font-weight: 700;
}


.bg-white { background-color: rgba(255, 255, 255, 0.95); }

.bg-light-blue { background-color: rgba(234, 240, 243, 0.95); }

.bg-mid-blue { background-color: #8AB5CB; }

.bg-blue {  background-color: rgba(51, 106, 159, 0.95); }
.bg-blue h1, .bg-blue h2, .bg-blue h3, .bg-blue h4, .bg-blue p, .bg-blue a { color: #FFF; }

.bg-grey {
  background-color: var(--background-color);
  }
.bg-mid-grey {
  background-color: var(--mid-grey);
  }
.text-center {  text-align: center; }
.text-center img { margin: 0 auto; }

.bu {
  font-style: italic; }

.full-width { margin: 0; width: 100%; }


/**************** NAVIGATION *****************/

.main-nav { margin: 0; }
.main-nav a { color: var(--main-text-color); }   

.main-nav .main-nav-site-name {
    color: var(--headline-color);
    font-size: 24px;
    line-height: 32px;
    margin: 0;

}
    
@media screen and (max-width: 768px) {
	.main-nav { position: relative; }
}

@media screen and (max-width: 640px) {
	.main-nav .main-nav-site-name {
		line-height: 30px;
		font-size: 16px; 
	}
}


/* smartphones, touchscreens */
/* Tooltip auf Startseite für Touch Devices abschalten */
/* https://ferie.medium.com/detect-a-touch-device-with-only-css-9f8e30fa1134 */
@media (hover: none) and (pointer: coarse) {
    .tooltip {
        display: none !important;
    }
}

.no-gutter {
  padding: 0 !important;
  margin: 0 !important; }

.row-eq-height {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

section.container {
  position: relative; 
  }
#content-wrapper {
/* 
	position: relative; 
	display: block;
	margin: auto;
	width: fit-content;
 */
}

.btn {
border-radius: 0;
}
.cta-banner {
  font-size: 1rem; }
  
.btn-primary {
	background-color: #336A9F;
	border-color: #2C496B;
	}
.btn-primary:hover {
	background-color: #2C496B;
	border-color: #2C496B;
	}
	
.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show>.btn-primary.dropdown-toggle {
	background-color: #2C496B;
	border-color: #2C496B;
}	
	
/**************** Tabellen *******************/

table.table-company-info {
	border-bottom: 0px solid rgba(255, 255, 255, 0.3);
	width: 100%; 
	}
table.table-company-info tr td {
    border-top: 0px solid rgba(255, 255, 255, 0.3);
    padding: .2rem 0;
    vertical-align: top; 
}
table.table-company-info tr th { padding: .2rem 0; }
table.table-company-info tr td.td-label { padding-right: 1rem; }



/**************** Buttons Startseite ***********/

.btn-company {
	background-color: #FFF;
	font-size: 1.2rem;
	min-height: 90px;
	transition: background-color 0.5s;
	transition: box-shadow 0.5s;
	white-space: normal; 
}

.btn-company:hover {

    background-color: #4284c3;
    background-color: #FFF;
    transition: background-color 1s;
    }

.btn-company:hover, .btn-company:focus, .btn-company:active, .btn-company.active, .open > .dropdown-toggle.btn-primary {
  color: #333;
    transition: all 0.5s;
  }

.notapproved {
  background-color: #901729 !important; }

.dropdown-menu {
	padding: 1rem 1rem 0 1rem;
  }

.dropdown-menu.show {
  }
.dropdown-menu p {
	font-size: 14px;
  }

.dropup .dropdown-toggle::after {
	display: none;
}


.IndexChar {
  border-bottom: 1px solid #DDD;
  color: #CCC;
  font-weight: bold;
  font-size: 2.3rem;
  margin: 0; 
  }

a.IndexBusiness {
  display: block; 
  color: var(--main-text-color);
  }

ul.Branchenliste {
  margin: 0 0 1rem 0;
  padding: 0;
  list-style-type: none; 
  }
ul.Branchenliste li a {
    padding: 0.7rem 0.2rem;
    display: block;
      text-decoration: none; 
	  color: var(--light-text-color);
    }
ul.Branchenliste li a:hover {
      background-color: rgba(255, 255, 255, 0.2);
  	color: var(--light-text-color);
  	      text-decoration: underline; 

      }


.seiteninfo {
  font-size: 0.8rem; }

ul.bildnachweis {
  margin: 0;
  padding: 0;
  list-style-type: none; }
  ul.bildnachweis li {
    display: inline;
    float: left; }
    ul.bildnachweis li a {
      display: block; }
  ul.bildnachweis li::after {
    content: " a "; }

.spacer-1 {
  height: 1rem; }

.mt-1 { margin-top: 1rem !important; }  .mb-1 { margin-bottom: 1rem !important; }  .pt-1 { padding-top: 1rem !important; }  .pb-1 { padding-bottom: 1rem !important; }  .ptb-1 { padding-top: 1rem !important;   padding-bottom: 1rem !important; }  .spacer-2 { height: 2rem; }  .mt-2 { margin-top: 2rem !important; }  .mb-2 { margin-bottom: 2rem !important; }  .pt-2 { padding-top: 2rem !important; }  .pb-2 { padding-bottom: 2rem !important; }  .ptb-2 { padding-top: 2rem !important; padding-bottom: 2rem !important; } .spacer-3 { height: 3rem; } .mt-3 { margin-top: 3rem !important; } .mb-3 { margin-bottom: 3rem !important; } .pt-3 { padding-top: 3rem !important; } .pb-3 { padding-bottom: 3rem !important; } .ptb-3 { padding-top: 3rem !important; padding-bottom: 3rem !important; }  .spacer-4 { height: 4rem; }  .mt-4 { margin-top: 4rem !important; }  .mb-4 { margin-bottom: 4rem !important; }  .pt-4 { padding-top: 4rem !important; }  .pb-4 { padding-bottom: 4rem !important; }  .ptb-4 { padding-top: 4rem !important;   padding-bottom: 4rem !important; }  .spacer-5 { height: 5rem; }  .mt-5 { margin-top: 5rem !important; }  .mb-5 { margin-bottom: 5rem !important; }  .pt-5 { padding-top: 5rem !important; }  .pb-5 { padding-bottom: 5rem !important; }  .ptb-5 { padding-top: 5rem !important;   padding-bottom: 5rem !important; }  .spacer-6 { height: 6rem; }  .mt-6 { margin-top: 6rem !important; }  .mb-6 { margin-bottom: 6rem !important; }  .pt-6 { padding-top: 6rem !important; }  .pb-6 { padding-bottom: 6rem !important; }  .ptb-6 { padding-top: 6rem !important;   padding-bottom: 6rem !important; }  .spacer-7 { height: 7rem; }  .mt-7 { margin-top: 7rem !important; }  .mb-7 { margin-bottom: 7rem !important; }  .pt-7 { padding-top: 7rem !important; }  .pb-7 { padding-bottom: 7rem !important; }  .ptb-7 { padding-top: 7rem !important;   padding-bottom: 7rem !important; }  .spacer-8 { height: 8rem; }  .mt-8 { margin-top: 8rem !important; }  .mb-8 { margin-bottom: 8rem !important; }  .pt-8 { padding-top: 8rem !important; }  .pb-8 { padding-bottom: 8rem !important; }  .ptb-8 { padding-top: 8rem !important;   padding-bottom: 8rem !important; }  .spacer-9 { height: 9rem; }  .mt-9 { margin-top: 9rem !important; }  .mb-9 { margin-bottom: 9rem !important; }  .pt-9 { padding-top: 9rem !important; }  .pb-9 { padding-bottom: 9rem !important; }  .ptb-9 { padding-top: 9rem !important;   padding-bottom: 9rem !important; }  .spacer-10 { height: 10rem; }  .mt-10 { margin-top: 10rem !important; }  .mb-10 { margin-bottom: 10rem !important; }  .pt-10 { padding-top: 10rem !important; }  .pb-10 { padding-bottom: 10rem !important; }  .ptb-10 { padding-top: 10rem !important;   padding-bottom: 10rem !important; }  .spacer-11 { height: 11rem; }  .mt-11 { margin-top: 11rem !important; }  .mb-11 { margin-bottom: 11rem !important; }  .pt-11 { padding-top: 11rem !important; }  .pb-11 { padding-bottom: 11rem !important; }  .ptb-11 { padding-top: 11rem !important;   padding-bottom: 11rem !important; }  .spacer-12 { height: 12rem; }  .mt-12 { margin-top: 12rem !important; }  .mb-12 { margin-bottom: 12rem !important; }  .pt-12 { padding-top: 12rem !important; }  .pb-12 { padding-bottom: 12rem !important; }  .ptb-12 { padding-top: 12rem !important;   padding-bottom: 12rem !important; }  .spacer-13 { height: 13rem; }  .mt-13 { margin-top: 13rem !important; }  .mb-13 { margin-bottom: 13rem !important; }  .pt-13 { padding-top: 13rem !important; }  .pb-13 { padding-bottom: 13rem !important; }  .ptb-13 { padding-top: 13rem !important;   padding-bottom: 13rem !important; }  .spacer-14 { height: 14rem; }  .mt-14 { margin-top: 14rem !important; }  .mb-14 { margin-bottom: 14rem !important; }  .pt-14 { padding-top: 14rem !important; }  .pb-14 { padding-bottom: 14rem !important; }  .ptb-14 { padding-top: 14rem !important;   padding-bottom: 14rem !important; }  .spacer-15 { height: 15rem; }  .mt-15 { margin-top: 15rem !important; }  .mb-15 { margin-bottom: 15rem !important; }  .pt-15 { padding-top: 15rem !important; }  .pb-15 { padding-bottom: 15rem !important; }  .ptb-15 { padding-top: 15rem !important;   padding-bottom: 15rem !important; }  .spacer-16 { height: 16rem; }  .mt-16 { margin-top: 16rem !important; }  .mb-16 { margin-bottom: 16rem !important; }  .pt-16 { padding-top: 16rem !important; }  .pb-16 { padding-bottom: 16rem !important; }  .ptb-16 { padding-top: 16rem !important;   padding-bottom: 16rem !important; }  .spacer-17 { height: 17rem; }  .mt-17 { margin-top: 17rem !important; }  .mb-17 { margin-bottom: 17rem !important; }  .pt-17 { padding-top: 17rem !important; }  .pb-17 { padding-bottom: 17rem !important; }  .ptb-17 { padding-top: 17rem !important;   padding-bottom: 17rem !important; }  .spacer-18 { height: 18rem; }  .mt-18 { margin-top: 18rem !important; }  .mb-18 { margin-bottom: 18rem !important; }  .pt-18 { padding-top: 18rem !important; }  .pb-18 { padding-bottom: 18rem !important; }  .ptb-18 { padding-top: 18rem !important;   padding-bottom: 18rem !important; }  .spacer-19 { height: 19rem; }  .mt-19 { margin-top: 19rem !important; }  .mb-19 { margin-bottom: 19rem !important; }  .pt-19 { padding-top: 19rem !important; }  .pb-19 { padding-bottom: 19rem !important; }  .ptb-19 { padding-top: 19rem !important;   padding-bottom: 19rem !important; }  .spacer-20 { height: 20rem; }  .mt-20 { margin-top: 20rem !important; }  .mb-20 { margin-bottom: 20rem !important; }  .pt-20 { padding-top: 20rem !important; }  .pb-20 { padding-bottom: 20rem !important; }  .ptb-20 { padding-top: 20rem !important;   padding-bottom: 20rem !important; }

section#main-content {
  }

section#main-content #teaser-text p {
    color: #003d6e;
    font-weight: 700; 
    }

section#info-boxes .info-box-header {
  border-top: 1px solid #336a9f;
  border-bottom: 1px solid #336a9f; 
  }

section#info-boxes .info-box-header div {
    padding: 1rem 2rem;
}
  section#info-boxes .info-box-header h2 {
    font-weight: 400;
    letter-spacing: 0px; 
    }
section#info-boxes .info-box-content {
  padding: 1.5rem;
  }
  section#info-boxes .info-box-content a {
    font-weight: 700; }

section#autor h1, section#autor h2, section#autor h3 {
  color: #FFF; }


/********** TAG CLOUD ************/

section#tag-cloud {
  color: #FFF;
  font-size: 1.4rem;
  line-height: 2rem; 
  }
section#tag-cloud a {
	font-size: 2rem;
}
section#tag-cloud ul {
	padding: 0;
	list-style-type: none;
}
section#tag-cloud ul li {
	display: inline;
	padding: 0;
}

section#tag-cloud ul li::after {
	content: "\2002\00b7\2002";
}
section#tag-cloud ul li:last-child::after {
	content: "";
}


/*************** FOOTER NAVIGATION ***********/
#footer {
	border-top: 1px solid  var(--main-text-color);
	color: var(--main-text-color);
  }

#footerNav {
	border-top: 1px solid #DDD;
  margin-top: 1rem;
  font-size: 16px; 
  color: var(--footer-text-color);
}
#footerNav p {
	margin-bottom: 0.5rem; 
}

#footerNav ul {
    list-style-type: none;
    padding: 0; 
}

#footerNav ul li {
	margin-right: 0.5rem; 
	margin-bottom: 0.5rem; 
	}

#footerNav ul li a {
	text-decoration: none;
	color: var(--footer-text-color);
}

#footerNav ul li a:hover {
	opacity: 0.5;
}

/************** Content Elemente ***************/
.content-box-banner {
  float: right;
  margin: 0 1rem; }


.content-box-right {
  float: right;
  margin: 0 1rem; }

.content-box-left {
  float: left;
  margin: 0 1rem 1rem 0; }

.box-180 { width: 180px; }
.box-200 { width: 200px; }
.box-300 { width: 300px; }
.box-400 { width: 400px; }
.box-500 { width: 500px; }
.box-600 { width: 600px; }

@media screen and (max-width: 576px) {
	.box-180,
	.box-200,
	.box-300,
	.box-400,
	.box-500,
	.box-600 { width: 100%; }
}

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

    .content-box-banner, .content-box-right, .content-box-left {
    float: none;
    margin: 1rem auto;
    text-align: center; } }

/********* PORTALE ***********/

.liste-portale  {
	list-style-type: none;
	padding: 0;
	font-size: 16px;
}

.liste-portale li a {
	text-decoration: none;
	color: #FFF;
}


/********** USERCENTRICS *********/
/* 
Ohne diese Anpassung, wird das usercentrics overlay in Kombination mit ein responsiven Einbettung (bootstrap) von YT Video iframes viel zu groß angezeigt.
*/


.uc-embedding-container {
	position: absolute !important;
	max-height: 100% !important;
}

/* Google Search Console wirft den Fehler Text zu klein aus. Darum groesser. */
#usercentrics-button .uc-powered-by-footer,
.usercentrics-button.layout-1 #uc-corner-modal.layout-1 .uc-corner-modal .uc-corner-modal-content .uc-card-header .uc-header-subtitle-text
 {
font-size: 1rem !important;
}










