
/*allgemeines*//*allgemeines*//*allgemeines*/

* {
	margin: 0px;
	padding: 0px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

}

html {
  scroll-behavior: smooth;
}

:root {
	--highlight: #0064ae;
	--text: #333333;
    --bordercolor:#dbdbdb;
    --lightback:#f5f5f5;
}

/* Cookie Banner */
.cc-pc-head-lang-select {
	/*display: none;*/
}
.privacypolicies-com---palette-light.privacypolicies-com---nb {
	border: 1px solid var(--bordercolor);
}
.cc-cp-body-tabs-item a {
	font-family: Verdana, sans-serif !important;
}
.cc-cp-body-tabs li:nth-child(5) {
	display: none;
}
.privacypolicies-com---palette-light .cc-cp-body-tabs-item-link:focus, .privacypolicies-com---palette-light .cc-pc-head-lang select:focus {
	box-shadow: none !important;
}
#tracking, #strictly-necessary {
	background-color:#212121;
	background-image:none;
}
.privacypolicies-com---palette-light .cc-nb-okagree, .privacypolicies-com---palette-light .cc-nb-reject, .privacypolicies-com---palette-light .cc-cp-foot-save {
  background-color: var(--highlight) !important;
}
.cc-pc-head-lang-select option{
	display: none;
}
.cc-pc-head-lang-select option:nth-child(1), .cc-pc-head-lang-select option:nth-child(2){
	display: block !important;
}
/* Cookie Banner Ende */

img {
	max-width: 100%;/*  alle img responsive;max. die Breite, die des Fotos selbst hat --- */
	height: auto;
}

header, nav, main, article, section, footer{
	display:block;
}

body{
    font-family: Verdana, sans-serif;
	font-size:1rem;
	line-height:20px;
	color:var(--text);
	font-weight: normal;
    text-align: left;
    counter-reset: ebene1;  
}

h1,h2,h3,p{
    padding:var(--standard-padding);
    font-weight: normal;
    margin-bottom:16px;
}

h3, p {
	-webkit-hyphens:auto;
        -ms-hyphens:auto;
            hyphens:auto;
}

h1{
    font-size:20px;
    line-height: 30px;
}

h1:after, .unterstrich:after{
    content:"";
    border-bottom:1px solid var(--highlight);
    width:50%;
    margin:0 auto;
    height: 1px;
    display:block;
    margin-top:16px;
}

h2, h3{
    font-size:17px;
    line-height: 27px;
}

h1,h2,h3{
    text-align:center;
}

p, a, main ul, form, ol{
    font-size:13px;
}

ul {
	margin-bottom:16px;
}

p.description {
  position: absolute;
  top: -600px;
  background-color: rgba(255,255,255,0.8);
  height: 250px;
  text-align: center;
  padding: 30px 10px 0px 10px;
  transition: all 1s;
}


header{
    height: 120px;
}


header.js-nav-sticky{
	position:fixed;
	top:0px;
	width:100%;
	z-index:500;
   background-color:#fff;
   -webkit-filter:drop-shadow(0px 4px 5px rgba(0,0,0,0.5));
           filter:drop-shadow(0px 4px 5px rgba(0,0,0,0.5))
}
main a, main a:hover, main a:active, main a:visited{
    text-decoration:none;
    color: var(--highlight);
}

main ul{
    padding-left:14px;
}

iframe{
    height:300px;
    width:100%;
    border:0;
    margin-bottom:30px;
}

section{
    padding:45px 0 60px 0;
}

footer{
    background-color:var(--text);
    color:#fff;
    padding:20px 0;
}

footer ul{
    list-style:none;
    font-size:13px;
}

footer a, footer a:hover, footer a:active, footer a:visited{
    text-decoration:none;
    color:#fff;
}

/*classen und ids*/
.headerstart {
	width: 100%;
}

ol.alphabetisch{
    list-style-type:lower-alpha;
    list-style-position: inside
}

.brotkruemel{
  border-top: 1px solid var(--bordercolor);
  border-bottom: 1px solid var(--bordercolor);
  position:relative;
}

.brotkruemel p {
  display: inline-block;
  padding-left: 5px;
  margin-bottom: 10px;
  position: relative;
  top: 5px;
}

.brotkruemel img {
  position: relative;
  top: 5px;
}

.clearfix:after{
	content:"";
	display:block;
	clear:both;
}

.contentwrapper, .contentwrapper_nopadding{
    width:100%;
    max-width:1200px;
    margin:0 auto 0 auto;
    padding:0 10px;
}

.contentwrapper_nopadding{
    padding:0;
}

.chooselanguage {
  height: 47px;
  text-align: right;
}

.chooselanguage a{
    text-decoration:none;
    color:inherit;
    padding:0 10px;
}

.chooselanguage img{
    max-width:100%;
}

.dreigeflext_mitabstand div{
    margin-top:16px;
}

.dreigeflext_mitabstand img{
    width:100%;
    height: auto;
}

.fakehead{
    font-weight: normal;
    display:block;
    margin:16px 0;
    font-size:18px;
}

.fakeh3, legend{
    font-size:16px;
    line-height: 26px;
    padding-bottom:5px;
    display: inline-block;
} 

.haelfte:nth-of-type(2) {
  margin-top: 16px;
}

.kontakt.dreigeflext_mitabstand img,.kontakt.zweigeflext img, .kontakt.dreigeflext_mitabstand img:last-of-type{
    max-width:200px;
    height: auto;
    margin-bottom:16px;
}

.lastone{
    margin-top:16px;
}

.lightback{
    background-color:var(--lightback);
    border-top:1px solid var(--bordercolor);
    border-bottom:1px solid var(--bordercolor);
}

.marginh1{
    margin-top:45px;
}

.ohneabsatz{
    display:inline-block;
}

.teaser a, .teaser a:visited{
    color:#fff !important;
    background-color:var(--text);
    font-size:16px;
    text-align:center;
    display:block;
}

.teaser a:hover, .teaser a:focus, .teaser a:active{
    background-color:var(--highlight);
    -webkit-user-select: none;
    -webkit-touch-callout: none;
}

.teaser div{
    border:1px solid #fff;
}

.teaser span{
    line-height: 45px;
    display: block
}

.teaser .weiterbutton{
    display:block;
    margin:15px auto 0 auto;
    padding:10px;
    width:150px;
}

.teaserimagecontainer{
  overflow: hidden;
    height: 250px;
    position:relative;
}

.teaserimagecontainer img{
    -o-object-fit:cover;
       object-fit:cover;
    width:100%;
} 

.teasercontainer:hover .teaserimagecontainer p.description{
    top:0;
}

.vertikal {
  align-self: center;
  padding:30px 0;
}

.teasertext_h2{
    display:block;
    padding:8px 0 ;
    margin-bottom:0;
}

.teaser.viergeflext a h2.teasertext_h2 {
	font-size: 16px;
}

.zaehler h3{
    text-align:left;
}
.zaehler h3:before {
  content: counter(ebene1) ". ";
  counter-increment: ebene1;
}

.zentriert{
    text-align:center;
}

.zweigeflext, .viergeflext, .dreigeflext, .dreigeflext_mitabstand{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:horizontal;
    -webkit-box-direction:normal;
        -ms-flex-direction:row;
            flex-direction:row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

.zweigeflext div, .viergeflext div, .dreigeflext div, .dreigeflext_mitabstand div{
    -ms-flex-preferred-size:100%;
        flex-basis:100%;
}

.zweigeflext div img{
    width:100%;
    height: auto;
}

#footeradresse{
    float:left;
}

#logo {
  margin: 10px 0 10px 10px;
    position: absolute;
    
}

#packaging{
    padding-top:16px;
}
#phone {
  background-color: var(--highlight);
  text-decoration: none;
  color: #fff;
  line-height: 40px;
  padding-top: 15px;
  padding-bottom: 15px;
}

#zertifikate{
    list-style-position: inside;
    padding-left:30px;
}

.teaser ul#zertifikate a{
  text-align: left;
  background-color:transparent;
  color:var(--highlight) !important;
  font-size:13px;
  display:inline-block;
}

/*navigation*/


#topnav {
  text-align: right;
}

#burgermenue {
  width: 25px;
  height: 25px;
  margin-top: 30px;
  position: absolute;
  right: 0;
}

#open, #close{
    text-decoration:none;
    font-weight: bold;
    font-size:25px;
    line-height: 25px;
    color:inherit;
}

#close{
    z-index:-5;
    opacity: 0;
    color:var(--highlight);
    position:relative;
    top:-25px;
}

#topnav{
    display:none;
    list-style:none;
}

#topnav li{
        padding:10px 5px;
}

#topnav a:link, #topnav a:visited{
    color:inherit;
    text-decoration: none;
    text-transform:uppercase;
    display:block;
}

#topnav a:hover, #topnav a:focus, #topnav a:active{
    text-decoration:underline;
}


#topmenue:target #open{ 
  -webkit-animation: twirlout; 
          animation: twirlout;
    -webkit-animation-duration: 0.3s;
            animation-duration: 0.3s;
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    -webkit-animation-fill-mode:forwards;
            animation-fill-mode:forwards;
}

#topmenue:target #topnav{
display: block;
position: relative;
top: 70px;
background-color: #fff;

}

#topmenue:target #close{ 
  -webkit-animation: twirlin; 
          animation: twirlin;
    -webkit-animation-duration: 0.3s;
            animation-duration: 0.3s;
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    -webkit-animation-fill-mode:forwards;
            animation-fill-mode:forwards;
}


nav ul {
	margin-bottom:0;
}
nav li{
    font-weight: bold;
}

nav .zweiteebene li{
    font-weight:normal;
    border-right:none;
}

nav .zweiteebene a:after{
    content:url("../img/icon_menuepfeil.png");
}

.englbreite{
    min-width:200px;
}

.zweiteebene {
  list-style: none;
}

/*formular*/
.anrede{
    display:block;
    margin-bottom:10px;
}
input[type="text"]{
    display:block;
    width:100%;
}
fieldset {
  border: 0;
  display: block;
  width: 100%;
}
textarea{
    width:100%;
    resize:vertical;
    margin-bottom:10px;
}
input {
  margin-bottom: 10px;
}
.inputSubmit {
  padding: 23px 30px;
  font-size: 15px;
  font-weight: bold;
  color:var(--text);
  text-transform: uppercase;
  border: 2px solid;
  border-radius: 10px;
  background-color: transparent;
}
label[for=webseite], #webseite {
	display: none;
}
.fehler {
	color: #ff0000;
}
.captchaItem img {
	width: auto !important;
	max-width: 100%;
}
.captchaItem {
    float: left;
    margin-right: 15px;
    text-align: center;
}
.captchaItem input {
    margin: 5px auto;
    width: 16px;
    display: block;
}
.captchaQuest {
	padding: 10px 0px;
}
/*gallery*/

.modal button.close {
  right: 0;
  outline: 0;
}
 

.modal button.close {
  float: right;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 1;
  position:absolute;
  z-index:500;
}

#gallery-lightbox img, #gallery-lightbox2 img , #gallery-lightbox3 img, #gallery-lightbox4 img{
  height: 350px;
  object-fit: cover;
  cursor: pointer;
}

.gallery_desc {
	background: #ffffff;
	margin: 0px;
	padding: 10px;
}

#gallery-lightbox img:hover,#gallery-lightbox2 img:hover, #gallery-lightbox3 img:hover, #gallery-lightbox4 img:hover {
  opacity: 0.9;
  transition: 0.5s ease-out;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}

#previewApp {
    box-sizing: border-box;
    position:fixed; 
    top:0px; 
    left:0px; 
    bottom:0px; 
    right:0px; 
    width:100%;
    height:100%; 
    border:none; 
    margin:0; 
    padding:0; 
    overflow:hidden;
    z-index:99;
}

#pairingApp {
    display: none;
}

.overlay {
    position:fixed;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background-color:rgba(0, 0, 0, 0.8);
    z-index:100;
    color:white;
    display: none;
    font-family: Verdana, sans-serif;
    line-height: 25px;
	-webkit-text-size-adjust:none;
	text-size-adjust:none;
}

.container {
    width:100%;
    height:100%;
    margin:0;
    padding:0;
    border:0;
}

.container td {
    vertical-align: middle;
    text-align: center;
}   

.centerAlign {
    text-align: center;
}

.margin2x {
    margin-bottom: 24px;
}

.margin1x {
    margin-bottom: 12px;
}

#gallery-lightbox.row,#gallery-lightbox2.row, #gallery-lightbox3.row, #gallery-lightbox4.row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: 0;
  margin-left: 0;
}

#gallery-lightbox div.col-lg-3, #gallery-lightbox2 div.col-lg-3,#gallery-lightbox3 div.col-lg-3, #gallery-lightbox4 div.col-lg-3 {
  border:1px solid #fff;
  height: 260px;
}


#gallery-lightbox img, #gallery-lightbox2 img, #gallery-lightbox3 img, #gallery-lightbox4 img {
  height: 100%;
}

.carousel {
	border: 4px solid #ffffff;
}

/*animation*/
@-webkit-keyframes twirlout {
  0%   {-webkit-transform:rotate(0deg);transform:rotate(0deg);}
  100% {-webkit-transform:rotate(360deg);transform:rotate(360deg);
        opacity:0;
        z-index:-5;}
}
@keyframes twirlout {
  0%   {-webkit-transform:rotate(0deg);transform:rotate(0deg);}
  100% {-webkit-transform:rotate(360deg);transform:rotate(360deg);
        opacity:0;
        z-index:-5;}
}

@-webkit-keyframes twirlin {
  0%   {-webkit-transform:rotate(0deg);transform:rotate(0deg);}
  100% {-webkit-transform:rotate(360deg);transform:rotate(360deg);
        opacity:1;
        z-index:5;}
}
@keyframes twirlin {
  0%   {-webkit-transform:rotate(0deg);transform:rotate(0deg);}
  100% {-webkit-transform:rotate(360deg);transform:rotate(360deg);
        opacity:1;
        z-index:5;}
}

/*scrolltotop*/
#myBtn {
  display: none;
  position: fixed;
  bottom: 20px;
  right:10px;
  z-index: 99;
  font-size: inherit;
  border: 1px solid var(--text);
  background-color: #fff;
  color:var(--text);
  cursor: pointer;
  padding: 15px;
  border-radius: 50%;
  opacity: 50%;
  text-decoration: none;
}
#myBtn:hover {
    opacity: 100%;
	-webkit-user-select: none; 
	-webkit-touch-callout: none;
}

/*cockieanpassung*/
.cc-banner .cc-message {
  display: block;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  max-width: 100%;
  margin-right: 1em;
  font-family: Verdana;
  font-size: 13px;
  font-weight: normal;
}

div.cc-compliance .cc-btn {
  display: block;
  font-size:13px;
  padding: 5px 50px;
  border-width: 2px;
  border-style: solid;
  text-align: center;
  white-space: nowrap;
  font-family: 'Verdana',  sans-serif;
  font-weight: normal;
}
/*tablet*//*tablet*//*tablet*/

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

	.teaserimagecontainer img{
		-o-object-fit:cover;
		   object-fit:cover;
		height:100%;
	} 


	.viergeflext div, .dreigeflext div{
		-ms-flex-preferred-size:50%;
			flex-basis:50%;
	}    

	.dreigeflext_mitabstand div{
			-ms-flex-preferred-size:48%;
				flex-basis:48%;
	} 

	.dreigeflext_mitabstand div:last-of-type{
			-ms-flex-preferred-size:100%;
				flex-basis:100%;
	}

	.dreigeflext_mitabstand div:last-of-type img {
	  height: auto;
	  max-width:320px;
	  margin:0 auto;
	 display:block;
	}


}

/*desktop*//*desktop*//*desktop*/

@media screen and (min-width: 700px){
	
	.chooselanguage a{
    	padding:0 15px;
	}

	h2, h3{
		font-size:18px;
		line-height: 28px;
	}    


	div.zweidrittel{
		-ms-flex-preferred-size:65.5%;
			flex-basis:65.5%;
	}
	div.zweidrittel.captchadiv {
		flex-basis: 100%;
	}

	div.haelfte, fieldset.haelfte{
		-ms-flex-preferred-size:49%;
			flex-basis:49%;
	} 

	.haelfte:nth-of-type(2) {
	  margin-top: 0;
	}

	div.drittel{
		-ms-flex-preferred-size:32.5%;
			flex-basis:32.5%;
	}

	.dreigeflext div{
		-ms-flex-preferred-size:33.33%;
			flex-basis:33.33%;
	}     

	.dreigeflext_mitabstand div, .dreigeflext_mitabstand div:last-of-type{
	   -ms-flex-preferred-size:32.5%;
		   flex-basis:32.5%;
		margin-top:0
	}
	.dreigeflext_mitabstand div:last-of-type img {
	   max-width:100%;
	}

	.lastone{
		margin-top:0;
	}   

	.vertikal {
		padding: 0;
	}

	#packaging{
		padding-top:40px;
	}
	/*anpassung gallery*/

	#gallery-lightbox div.col-lg-3, #gallery-lightbox2 div.col-lg-3, #gallery-lightbox3 div.col-lg-3 {
		max-width:33.33%;
		-ms-flex-preferred-size: 33.33%;
			flex-basis: 33.33%;
	}   

	#gallery-lightbox div.col-lg-3.halb,#gallery-lightbox2 div.col-lg-3.halb, #gallery-lightbox3 div.col-lg-3.halb, #gallery-lightbox4 div.col-lg-3.halb {
		max-width:50%;
		-ms-flex-preferred-size: 50%;
			flex-basis: 50%;
	}
    
} 

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

	.teaserimagecontainer img{
		-o-object-fit:cover;
		   object-fit:cover;
		height:100%;
	}     

	.viergeflext div{
		-ms-flex-preferred-size:25%;
			flex-basis:25%;
	} 
	
	div.zweidrittel.captchadiv {
		flex-basis: 65.5%;
	}

	#footeradresse{
		line-height:40px;
	}   

	#footeradresse li{
		display: inline;
		padding-right: 20px;
		}

	#brotkruemel.js-kruemel-sticky{
		position:fixed;
		top:70px;
		width:350px;
		z-index:500;
		border:none;
	}
    
    #logo.js-logo-sticky{
    	height: 60px;
    }
    
	#myBtn {
		bottom: 60px;
	}

	/*navigation*/    
	#burgermenue{
		display:none;
	}

#topnav {
  display: block;
  padding-top: 30px;
}

	#topnav li{
			padding:0;
	}

	nav li{
		display:inline-block;
		font-weight:normal;
		border-right:1px solid;
	} 

	nav li:last-of-type{
		border-right:0;
	}  

	nav a{
		 padding:0 8px;
	}     

	#topnav a:hover, #topnav a:focus, #topnav a:active{
		text-decoration:none;
		-webkit-user-select: none; 
		-webkit-touch-callout: none;
	}    

	.ersteebene{
			position:relative;
		}

	.ersteebene a:after{
			content:"▾";
			padding-left:5px;
	}  

	.zweiteebene{
		display:none;
		line-height: 35px;
		position: absolute;
		z-index: 500;
		background-color: #fff;
		text-align: left;
		padding-top:5px;
	}   

	#topnav .zweiteebene a:hover{ 
		text-decoration:underline;
		-webkit-user-select: none;
		-webkit-touch-callout: none;
	}
	
	.zweiteebene.subnavprodukte {
  		width: 250px;
	}
	
	.zweiteebene.subnavimpressum {
  		width: 150px;
	}

	.zweiteebene li{
			display: block;  
	} 

	nav .zweiteebene a::after {
	  content: "";
	}

	.ersteebene:hover .zweiteebene {
	  display: block;
	}

	#topmenue.js-nav-sticky{
		position:fixed;
		/*top:-20px;*/
		top:-50px;
		width:100%;
		z-index:500;
	   background-color:#fff;
	   -webkit-filter:drop-shadow(0px 4px 5px rgba(0,0,0,0.5));
			   filter:drop-shadow(0px 4px 5px rgba(0,0,0,0.5))
	}
}

@media screen and (min-width: 1200px) and (max-width: 1300px) {
	.zweiteebene.subnavimpressum {
  		right: 12px;
		text-align: right;
	}
}
