@charset "UTF-8";
:root{
	--ad--navbg:#4F6F7D;
	--ad--hi:white;
	--ad--slickratio:4/3;
	--ad--bg:#314851;
	--ad--schrift:#EEEDE2;
	--ad--fancybg:#f4f4ef;
	--ad--fancygrau: #aaa7a5; // #d8d5d3; // #cbc8c5; // #aaa7a5;
	--ad--headline:#E0C64E; // #E0B54E;
	--ad--bgsuche:#879dac;
}

html {
	-webkit-text-size-adjust: 100%; /* Prevent font scaling in landscape while allowing user zoom */
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
	scroll-behavior: smooth;
}

sup {
    vertical-align: super;
    font-size: smaller;
}

body {
	font-family: 'osifont',   Verdana, sans-serif;
	font-style: normal;
	//font-size: 1.1em;
	//line-height: 1.5em;
	
	font-size: 1.05em;
	line-height: 1.6em;
	
	
	font-weight: 500;
	background-image: url();
	background-repeat: no-repeat;
	background-position: 0px top;
	
	margin-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	/*background-image: steht im home.html*/
	background-color:var(--ad--bg);
	color:var(--ad--schrift);
}


html,
body {
    margin: 0px;
    height: 100%;
}

.spreview .prewiewme{
	background-color:grey;
}

.bgrot{
	background-color:#dab5ba;
}

.bggruen{
	background-color:#acdcc2;
}

.bgblau{
	background-color:#acb5dc;
}

.bggelb{
	background-color:#e7e5bf;
}

.bggrau{
	background-color:#d4d4d4;
}

.bgorange{
	background-color:var(--ad--bgorange);
}

.pop, .xpop{  /* auf ein bild um fancybox zu triggern */
	cursor:pointer;
}

.spointer{
	cursor:pointer;
}

u {
	text-decoration:none;
	border-bottom:1px solid #bfbfbf;
}


b{
	font-family: inherit;
	font-weight: bold;
}

strong{
	font-family: inherit;
	font-weight: bold;
}

p{
	display:inline;
}


a img { /* blauer Rahmen weg. */
	border: none;
}

button, input, select, textarea{
	/*outline:none;*/
	font-family: inherit;
	font-weight: inherit;
	font-size: inherit;
	padding:2px;
	margin:2px;
}

body a{
	color:var(--ad--schrift);
	text-decoration:none;
}


a[href="http"] { 
	color: blue !important; 
	font-weight: bold; 
	
}

a[href="https"] { 
	color: blue !important; 
	font-weight: normal; 
}


a:active {
	color:var(--ad--schrift);
}

a:hover {
	color:var(--ad--schrift);
}



/*################barrieren*/

a:focus-visible, 
button:focus-visible, 
.leaflet-marker-icon:focus-visible, 
.slick-arrow:focus-visible, 
figure:focus-visible, 
input:focus-visible,
select:focus-visible,
.arcls:focus-visible,
.teaserbox:focus-visible
{
	
	 outline:1px solid var(--ad--headline);
	 outline:0; 
}


/*################barrieren*/

.dldcls{
	border-bottom:1px solid gray;
	margin-bottom:10px;
	min-width:20px;
	display: table;
}

.grau{
	color: #878787;
}

.schwarz{
	color: #000000;
}

.parserot{
	color:#ff0000;
}

.adorange{
	color: #ff4800;  /*orange*/
}

.bildunterschrift{
	font-size:0.8rem;
	line-height:1.2rem;
}

.fl{
	float:left;
}

hr {
	border:0px solid;
	border-bottom: 1px solid #333333;
	margin-bottom:40px;
}

h1{
	font-weight: normal;
	margin-bottom:2rem;
	margin-top:1px;
	color:var(--ad--headline);
	font-size:1.5rem;
	font-weight:bold;
}

h2 {
	font-weight: normal;
	margin-top:1rem;
	margin-bottom:2rem;
}

h3 {
	font-weight: normal;
	margin-top:1rem;
	margin-bottom:0.5rem;
}

h2:first-of-type, h3:first-of-type{
	margin-top:0;
}

.plusinfokasten{
	width:calc(100% - 25px);
	height:1.8rem;
	overflow:hidden;
	background-repeat: no-repeat !important;
	background-position: 100% 10px !important;
	border:1px dotted gray;
	//padding-right:20px; 
	background-size: 14px !important;
	
	/* oder vorne */
	background-position: 0 0.4em !important;
	padding-left:20px;
	cursor:pointer;
}

.plusinfokastenauf{
	height:auto;
	cursor:default;
}
.myDivcls{
	border: 2px solid red;
}


/* Definitionslisten in ckeditor mit || zu trennen, dann leerzeile  */

.dlzeile{
	width:100%;
	overflow: hidden;
}

.dlvor {
	min-width:12%;
	margin-right:1%;
	float:left;
	//overflow:visible;
	display:inline-block;
}

.dlnach {
	max-width:87%;
	float:left;
}

/* Definitionslisten in ckeditor mit || zu trennen, dann leerzeile  */

/*##################divs und defs*/


#container { /*  die totale seite   */
	position:relative;
	max-width: 1920px;
	width:100%;
	margin: 0 auto;  /* */
	/* background-color:lightgray; */
}

#header{  
	width:260px;
	position:fixed;
	padding-left:15px;
	padding-right:10px;
	margin-top:20px;
	// background-color:darkgrey;
}

#logo, #logo img{ 
	width:100%;
	max-width:230px;
	// background-color:grey;
}


#article {
	float: left;
	margin-left:290px;
	margin-top:90px;
	width:calc(100% - 290px - 200px);
	min-height:200px;
	margin-bottom:40px;
	/* background-color:lightgrey; */
}

 
.finfotx{
	max-width:230px;
	text-align:center;
	font-family: 'osifont', Verdana, sans-serif;
	
	font-size:0.9rem;
	line-height:1.1rem;
}

.finfotx a{
	text-decoration:none;
}

.gmbh{
	margin-top:10px;
	max-width:190px;
	text-align:center;
}

.finfo1, .finfo2{
	display:none;
}


.firmeninfo{
	margin-top:20px;
	// padding:20px;
}
.firmeninfo a{
	// border-bottom:1px solid var(--ad--schrift);
}

#suche input{
	border:1px solid #eeeeee;
	background:transparent;
	color:white;
}
 
#suche{
	margin-bottom:1rem;
}

#suche input{
	font-family:inherit;
	font-size:inherit;
	width:70%;
	margin-left:10px;
}

#ctsuchewrap{
	margin-left:30px;
	margin-top:22px;
}

#ctsuchewrap #suche input {
  margin-left:0px;
}

#ctsuchewrap h1{
	margin-left:0;
}

#ctsuchetxt{
	margin-left:0px;
	margin-top:40px;
}

.bodytemplate_suche{
	background-color:var(--ad--bgsuche);
}

.bodytemplate_suche .finfotx, .bodytemplate_suche .finfotx a{
	color:#3f4f5e;
	// color:black;
}

.logob{
	display:none;
}

.logow{
	display:block;
}

.bodytemplate_suche .logow{
	display:none;
}

.bodytemplate_suche .logob{
	display:block;
}
 

.suchbld{
	width:150px;
	height:150px;
}

.suchtx{
	width:calc(70% - 150px);
	color:black;
}

.bodytemplate_suche #suche input{
	width:200px;
}


#footer{
	//max-width: 1280px; 
	width:calc(100% - 2rem); 
	display:inline-block;
	margin:0 auto;
	margin-bottom:20px;
	//background-color:#fcfcfc;
	padding-top:1rem;
	border-top:1px solid lightgrey;
}

#footer .ctwrap {
	display:flex;
	margin-bottom:1em;
	padding-bottom:0;
	border-bottom:0;
}

#footer .eltpl14{
	display: flex; /* or inline-flex */
	flex-direction: row; /* row | row-reverse | column | column-reverse;*/
	flex-wrap:wrap;  /*nowrap | wrap | wrap-reverse;*/
}

#footer .ctc5{
	width:19%;
}

figure figcaption{
	font-size:0.9rem;
}


.videoiframe, iframe{
	border:0px;
	width:100%;
	margin-bottom:-10px;
}



.teasernavi1wrap, .teasernavi2wrap, .teasernavi3wrap, .teasernavi4wrap{
	width:100%;
	display: flex;
	flex-wrap:wrap;
	//justify-content: space-between;
}

.teaserbldwrap{
	width:23%;
	margin-right:2%;
}

.teaserblddiv, .teaserblddiv img{
	width:100%;
}

.w100{
	width:100%;
}

.teaserbox{
	display:inline-block;
	margin-right:10px;
}

.teaserwrap{
	margin-bottom:1rem;
	display:inline-block;
	margin-right:2em;
}

.teasertext{
	margin-top:-0.5rem;
}

.tiboxfigure{
	width:120px;
	height:120px;
	object-fit: cover;
}

.tiboxfigure img{
	width:120px;
	height:120px;
	object-fit: cover;
}

.pdf-icon{ /* zb pdf als variable eingesetzt */
	max-width:80px;
	//filter: saturate(3); 
	filter: grayscale(100%);
	filter: hue-rotate(60deg); 
}

.zeiletoflexdivs{
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	width:100%;
}

.zeiletoflexdivs img, .zeiletoflexdivs svg{
	width:100% !important;
}

.zipdownloads{
	//border:1px solid red;
}

.div_hv{
	max-width:50%;
}

.div_qv{
	max-width:70%;
}

#crumb{
	width:100%; 
	margin-bottom:1rem;
}

.crumbclass, .crumbclass a{
	color:gray;
}

.crumbpre{  /* vor der Crumb steht etwas?*/
	display:none;
}

.crumbhome{ /* wenn defaultseite aufgerufen wird und nur home in der crumb steht*/
	 display:none;
}

/* der standardwrapper um die elemente 1 - 16 */

.ctwrap {
	width:100%;
	display:block;
	overflow:hidden;
	// padding-bottom:30px;
	// margin-bottom:30px;
	/* border-bottom:1px solid grey; */
	hyphens: auto;
}

.ctwrapinline{
	background-color:#efefef;
}


.eltplinline17{
	width:30%!important;
	margin-right:2%!important;
	float:left;
}

.ctwrap ul {
	margin: 0;
	margin-bottom: 0px;
	padding: 0;
	padding-left: 1rem;
}

/* templates 1 - 16 */

.ctcolumns1{
	width:100%;
	transition: all 331ms ease;
	transition-delay: 300ms;
	display:block;
	overflow:hidden;
}

.showflex .ctcolumns1{
	display:flex;
	flex-direction: row; /* row | row-reverse | column | column-reverse;*/
  flex-wrap:wrap;  /*nowrap | wrap | wrap-reverse;*/
}

.ctcolumns2 {
	width: 64%;
	margin-right:4%;
	float:left;
	transition: all 331ms ease;
	transition-delay: 300ms;
}

.ctcolumns2b {
	width: 32%;
	margin-right:0;
	float:left;
	transition: all 331ms ease;
	transition-delay: 300ms;
}

.ctcolumns3 {
	width: 31%;
	margin-right:2%;
	float:left;
	transition: all 331ms ease;
	transition-delay: 300ms;
}


/* slick template 2 slider mit aspects ratio */



.slick2{
	width:100%;
	margin-bottom:20px;
	-webkit-aspect-ratio:var(--ad--slickratio);
	aspect-ratio:var(--ad--slickratio);
	
}

.bldsl{
	margin-bottom:20px;
}

.xbldslwrap, .xbldslwrap svg{
	-webkit-aspect-ratio:var(--ad--slickratio);
	aspect-ratio:var(--ad--slickratio);
	border:1px solid grey;
	// object-fit:contain;
}

.slick2 img {
	width:100%;
	object-fit:contain;
	object-fit:cover;
	-webkit-aspect-ratio:var(--ad--slickratio);
	aspect-ratio:var(--ad--slickratio);
}

.slick-active .lsl{
	color:green !important;
}

.slick2 .slickbuttonshigh{
	color:red;
}

.slick-dots {
	margin-top:5px;
	margin-bottom:5px;
}

.slickcaption{
	margin-top:20px;
	margin-bottom:20px;
	font-size:0.9rem;
}

/* override zb. in template 6 eingesetzt*/

.slicktempl6, .slicktempl6 img{
	-webkit-aspect-ratio:16/11;
	aspect-ratio:16/11;
}

.slicktempl6 img{
	object-fit:cover;
}


.slick-dots li.slick-active button::before {
  color: var(--ad--hi);
}

.slick-dots li button::before {
	color: lightgray;
}

/* slick slider */


.eltpl6{
	margin-top:25px;
}


/* TEMPLATE 9 BILDER MASONRY */
 
.ct9bilder {
  display: flex; /* or inline-flex */
  flex-direction: row; /* row | row-reverse | column | column-reverse;*/
  flex-wrap:wrap;  /*nowrap | wrap | wrap-reverse;*/
}

.eltpl9 .blddiv, .eltplinline9 .blddiv, .eltpl10 .blddiv{
	width:31%;
	margin-right:2%;
	margin-bottom:0.5%;
}
 
/* .eltpl9 .blddiv:last-of-type{
	width:31%;
	margin-right:0;
	margin-bottom:2%;
} */

.eltpl9 .qv, .eltpl9 .hv, .eltpl9 .qu {
	width:100%;
}


.ct9bbilder{
	display: flex; /* or inline-flex */
	flex-direction: row; /* row | row-reverse | column | column-reverse;*/
	flex-wrap:wrap;  /*nowrap | wrap | wrap-reverse;*/	
// align-items: baseline ;
//  align-items: center ;

}

.eltpl9b .blddiv, .eltplinline9b .blddiv{
	width:23.5%;
	margin-right:2%;
	margin-bottom:2%;
}

.eltpl9b .blddiv:nth-child(4n){
	margin-right:0;
}

.div_hv img , .div_qu img, .div_qv img  {
	width:100%;
}

.div_hv a{
	//	text-align:center;
	//	display:block;
}
.div_hv img   {
	//width:80%;
}

/* TEMPLATE 9 BILDER  */



.eltpl10{
	margin-top:25px;
}



/* navigation */  


#navidesk{
	width: 256px;
	overflow:hidden;
	padding-top:0px;
	margin-bottom:40px;
	padding-left:0px;
	float:left;
}

.navidliste {   /*desktop*/
	width: 250px;
	/*overflow:hidden; */
	font-family: inherit;
	font-weight: inherit;
	letter-spacing: 0px;
}
 

#burger{/*burgerbutton*/
	border:0;
    right:32px;
    top:32px;
    //text-indent: 100%;
    overflow: hidden;
    --ad-burw:30px;
    width: var(--ad-burw);
    height: calc(var(--ad-burw) / (40/60));
    padding:0px;
    transition: all 400ms ease;
    cursor:pointer;
	position:fixed;
	z-index:5003;
	//display:none;
	// background-color:white;
	background-size: contain;
}


#navimobil {/*mobil*/
	font-family: inherit;
	font-size:inherit;
	font-weight:700;
	line-height:inherit;
	display: none;
	position: fixed;
	width:300px;
	top: 0px;
	right:0px;
	padding-left:20px;
	padding-bottom:20px;
	padding-top:50px;
	z-index:5000;
	color: #fff;
	padding-right:20px;
	background:var(--ad--navbg);
	text-transform:uppercase;
}

#navimobil a, #navimobil .tog-link{/*mobil*/
	color: #fff;
}


.navimliste{/*mobil*/
    padding:10px;
}

.bopen{
 	/* steht in home.html wegen dem pfad zum bild*/
}

.bclose{/*burgerbutton*/
   /* steht in home.html wegen dem pfad zum bild*/
}

.navileerzeile {
	height:17px;
	width:100%;
}

.naviunsichtbar, .innaviunsichtbar, .unsichtbar, .hasasub{
	 display: none;
}

nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  
  width:240px;
 
}


.nav-global {
  overflow: hidden;
}

.ngc1, .ngc2, .ngc3{
	 margin-left:25px;
	// border:1px solid green;
}

nav ul {
  margin: 0;
  margin-bottom: 0px;
  padding: 0;
  padding-left: 0px;
 // margin-left:15px;
}

nav button{
	border:0;
	background:none;
	font-size:inherit;
	padding-left:0;
	padding-right:0;
}

nav .btminus{  
	color:green;
	border-right:3px solid;
}


nav li{
	list-style-type: none;
	min-height:2em;
}

nav .active {
	color:var(--ad--hi);
}

nav .collapse{
	display:none;
}

nav .show{
	display:block;
	opacity: 1;
	animation-name: fadeInOpacity;
	animation-iteration-count: 1;
	animation-timing-function: ease-in;
	animation-duration: 0.2s;
}


@keyframes fadeInOpacity {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/* der toggler button als pfeil rechts, die bilder sind im home.html wegen der pfade*/

.togb, .togbshow{
	background-repeat: no-repeat !important;
	background-size:100% !important;
	background-position: top 4px left 0  !important;
	margin-left:5px;
	width:18px;
}



nav .leerzeile{
	// background-color:lightgray;
	opacity:0.2;
	height:10px;
}

nav .ohnelink{
	font-weight:bold;
}

.nav1, .nav2, .nav3{
	margin-left: 0;
}

.sichtbar{
	display:block;
}

nav .keinsubmenue{
	background:yellow;
	display:none !important;
}


.elementanchors{
	display:none;
}



/*fancybox fancybox fancybox fancybox fancybox fancybox*/


#fancycheck{
	display:none;
}

.fancybox-caption {
	color: #000;
	font-size: 1rem;
	line-height: 1.5rem;
	font-family:"osifont", Verdana, sans-serif;
	pointer-events: none;
	text-align: left;
}

.fancybox-caption em{
	font-family: "osifont", Verdana, sans-serif;
	display:inline-block;
	width:auto;
	//text-align:center;
	// background-color:yellow;
	color: var(--ad--fancygrau);
	font-size: 1.2rem;
	line-height: 1.4rem;
	letter-spacing:0.1rem;
	font-weight:600;
	margin-bottom:34px;
	font-style:normal;
}
 
.fancybox-bg {
  background-color:var(--ad--fancybg);
}

.fancybox-content{
 background-color:yellow;
}

.fancybox-is-open .fancybox-bg {
  opacity: 1;
 }

.fancybox-button {
	 background: none; 
}

.fancybox-button img{
	width:30px;
}

.fancybox-navigation button {
  background: none; 
 }
 
 .fancybox-button--close{
	margin-right:10px;
}


.fancybox-navigation button:before {
	content: "";
	background: none; 
 }
 
/*LINKS DAS GANZE */
 .fancybox-caption-wrap{
 	position:absolute;
 	left:0;
 	width:320px;
 	bottom:150px;	
 }

.fancybox-stage {
  left: 320px;
  right: 10px;
}

.fancybox-slide {
	padding-bottom: 40px !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.fancybox-navigation .fancybox-button--arrow_left {
  left: 320px;
}

.predots{
	opacity:0;
	color:grey;
}

.fdots{
	font-family:"Verdana", Arial, sans-serif;
	font-size:1rem;
	letter-spacing:0.7rem;
	margin-top:30px;
	margin-right:20px;
	color:black;
	display:inline-block;
	width:250px;
	height:40px;
	text-align:right;
}

.fdothi{
	color:var(--ad--headline);
	//cursor:pointer;
}

.fdotnorm{
	color:black;
	cursor:pointer;
}



.fancybox-caption a, .fancybox-caption a:link, .fancybox-caption a:visited {
  color: #000;
  text-decoration: underline;
}


 /*fancybox fancybox fancybox fancybox fancybox fancybox*/


figure{
	margin:0;
	padding:0;
}

/*  COOKIES */ 

.cookiebanner{
	z-index:1300000;
	position:fixed;
	border-top:2px solid;
	padding:30px;
	bottom:0px;
	left:0px;
	right:0px;
	background-color:#dedede;
	font-size: 0.9em;
	line-height: 1.3em;
}

.cbtn a:hover {
	color:var(--ad--hi);
}

.cbtn{
	border:1px solid lightgrey;
	width:120px;
	background-color:white;
	text-align:center;
	margin-top:8px;
	margin-bottom:20px;
	font-weight:bold;
	padding:5px;
}

.crot{
	color:var(--ad--hi);
}

.cgrau{
	color:grey;
}

 

dl {
  display: grid;
  grid-template-columns: max-content auto;
}

dt {
  grid-column-start: 1;
}

dd {
  grid-column-start: 2;
}

.ddetail{
	width:250px;
}

.add{
	width:70px;
}


