html{
	height: 100%;
	min-height: 100%;
	margin: 0;
	padding: 0;
}
body{
	height: 100%;
	min-height: 100%;
	margin: 0;
	padding: 0;
	background-color: white;
	font-family: "mundial", sans-serif;
}
a, a.hover, a:visited{
color: inherit;
text-decoration: none;
}
a[href^="tel"]{
color: inherit;
text-decoration: none;
}
#topwrapper{
	/*height: 160px;*/
	display: grid;
	grid-template-rows: 40px 120px;
	grid-template-columns: auto minmax(auto, 1200px) auto;
	z-index: 100;
	position: fixed;
	top: 0;
	width: 100%;	
	
}
.l_top, .l_footer{
	background-color: #808b95;
}
.l_nav{
	background-color: white;
}
.l_slider{
	/*background-color: #ebebeb;*/
	max-height: min-content;
}
.l_slider img{
	width: 100%;
}
#grid-l_top, #grid-l_footer{
	display: grid;
	grid-template-columns: 14% 24% 34% 14% 14%;
	color: white;
	font-size: 16px;
	
}
#grid-l_footer{
	line-height: 130%;
	padding-top: 30px;
	grid-template-columns: 14% 26% 26% 0% 0% 20% 14%;
}


#grid-l_top .kontakttel{
	display: grid;
	grid-template-columns: auto 32px 100px;
	grid-column: 4;
}
#grid-l_top .kontaktmail{
	display: grid;
	grid-template-columns: auto 39px 170px;
}
#grid-l_nav{
	display: grid;
	grid-template-columns: 14% 372px auto 0 14%;
	/*height: 120px;*/
}
#grid-l_nav img{
	width: 100%;
}
#grid-l_nav #logo{
	display: block;
}
#subwrapper{
	min-height:calc(100% - 160px);
	/*height: calc(100% - 160px);*/
	/* min-height: 100%; */
	display: grid;
	/*grid-template-rows: 470px minmax(150px, auto) 150px;*/
	grid-template-columns: auto minmax(auto, 1200px) auto;
	padding-top: 160px;
	
	grid-template-rows: auto minmax(150px, auto) 150px;
}
#footer-img{
	margin-top:5px;
}
#footer-img img:last-child{
	margin-top: 8px;
}
.kontaktmail a, .kontakttel a{
	text-align: left;
	padding-top: 10px;
	padding-left:5px;
}
.kontakttel a{
	text-align: right;
}
.right{
	text-align: right;
}
article{
	padding: 37px 164px 37px 164px;
}
article ul{
	list-style-type: disc;
	list-style-position: outside;
	padding-left: 17px;
}

h1{
	font-size: 30px;
	font-weight: 700;
	color: #052e5c;
	text-transform: uppercase;
	letter-spacing: -0.02em;
	margin-bottom: 40px;
}
.text, .textfett{
	hyphens: auto;
	-ms-hyphens: auto;
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
	font-size: 22px;
	font-weight: 300;
	color: #052e5c;
	line-height: 144%;
}
.textfett{
	font-weight: 600;
}
.uppercase{
	text-transform: uppercase;
}
#topseller{
	display: block;
	margin-top: 22px;
	margin-bottom: 10px;
	width: 100%;
	text-transform: uppercase;
	font-size: 29px;
	font-weight: 700;
	color: white;
	background-color: #052e5c;
	padding: 14px;
	padding-top: 22px;
	padding-bottom: 22px;
	max-width: -webkit-fill-available;
}
#ccm-layout-column-17 table tr td:first-child{
	text-align: right;
	width: 30%;
}
#footer-right{
	justify-self: right;
	display:block;
}
#schutz{
	position: fixed;
	top: 0;
	left: 0;
	min-width: 100%;
	height: 100%;
	z-index: 3000;
	background-color: rgba(0,0,0,0.3);
}
#schutz > div{
	position: absolute;
	height: auto;
	width: 100%;
	bottom: 0;
	background-color: black;
	z-index: 3020;
	color: white;
	padding-top: 20px;
	padding-bottom: 20px;
	font-family: Arial, sans-serif;
	line-height: 130%;
	text-align: center;
	font-size: 20px;
}
#schutz a{
	color: white;
	font-family: Arial, sans-serif;
}
.dsask{
	display: grid;
	padding-left: 30%;
	padding-right: 30%;
	padding-top: 30px;
	grid-template-columns: 1fr 1fr;
}
.dsask div{
	display: block;
}
.dsask div:hover{
	cursor: pointer;
}


@media screen and (max-width: 1200px) {
	#grid-l_nav{
		grid-template-columns: 8% 372px auto 0 8%;
	}
	#grid-l_top, #grid-l_footer {
		/*grid-template-columns: 8% 24% 46% 14% 8%;*/
	}
}
@media screen and (max-width: 1050px) {
	#grid-l_nav{
		grid-template-columns: 4% 372px auto 0 4%;
	}
	#grid-l_top, #grid-l_footer {
	/*	grid-template-columns: 4% 32% auto 24% 4%;*/
	}
}
@media screen and (max-width: 940px) {
	#subwrapper{
		grid-template-rows: auto minmax(150px, auto) 160px;
	}
	#grid-l_footer{	
		line-height: 130%;
		padding-top: 10px;
		grid-template-columns: 3% 47% 47% 3%;
		grid-template-rows: 110px 40px;
	}
	#footer-right{
		display: grid;
		grid-template-columns: auto auto auto auto auto; /*0.6fr 0.6fr 0.6fr 0.1fr 1fr;*/
		width: 100%;
		grid-column: 2 / 4;
		font-size: 14px;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	#copyright{
		text-align: right;
	}
	article{
		padding: 37px 30px 37px 30px;
	}
	.text, .textfett{
		font-size: 20px;
	}
}
@media screen and (max-width: 600px) {
	#grid-l_top{
		grid-template-columns: 4% 50% 0 auto 4%;
	}
	#grid-l_top .kontaktmail{
		display:none;
	}
	#grid-l_top .kontakttel{
		grid-column: 4;
	}
}
@media screen and (max-width: 530px) {
	#grid-l_nav{
		grid-template-columns: 4% 70% auto 0 4%;
	}
	#ccm-layout-column-wrapper-9 div.ccm-layout-column{
		width: 100% !important;
	}
}
@media screen and (max-width: 450px) {
	#topwrapper{
		grid-template-rows: 40px 103px;
	}
	#subwrapper{
		padding-top: 144px;
		grid-template-rows: 170px minmax(150px, auto) 160px;
		min-height: calc(100% - 143px);
	}
	#footer-right {
		font-size: 10px;
	}	
	#footer-img img:first-child{
		width: 20%;
	}
	#footer-img img:nth-child(2){
		width: 44%;
	}
	#footer-img img:last-child{
		width: 69%;
	}
	#grid-l_footer{
		font-size: 12px;
	}
	.text, .textfett{
		font-size: 20px;
	}
	.ccm-page-id-281 .text, .ccm-page-id-282 .text, .ccm-page-id-281 .textfett, .ccm-page-id-282 .textfett{  /* nur Datenschutz-Page und AGB */
		font-size: 19px;
	}
	#schutz > div{
		font-size: 15px;
	}
}

@media screen and (max-width: 400px) {
	#topwrapper{
		grid-template-rows: 40px 85px;
	}
	#subwrapper{
		padding-top: 125px;
		grid-template-rows: 142px minmax(150px, auto) 120px;
		min-height: calc(100% - 120px);
	}
	#grid-l_footer{
		grid-template-rows: 75px 35px;
	}
}

