@charset "UTF-8";
/* CSS Document */

html, body {
	width: 100%;
	height: 100%;
	margin:0px;
	padding:0px;
    background-color: #fff;

}

.wrapper {
    margin:0px 0px 0px 0px;
    position:relative;
}

.contax {
    width: 100%;
    margin: 0px;
    float: left;
    position:relative;
    max-height:99999px;
}

.contaxB {
    width: 100%;
    margin: 0px;
    padding-bottom: 30px;
    float: left;
    position:relative;
    max-height:99999px;
}

.top {
    z-index: 99999;
}

.basis {
    z-index: 10;
}

/* Inhalt entweder mit fixen oder prozentualen Breiten */

.contex {
	width: 80%;
	height:auto;
    max-height:99999px;
	margin: 0px 10% 0px 10%;
	float: left;
	clear: none;
	position: relative;
}

.contex_90 {
	width: 90%;
	height:auto;
    min-height: 10px;
    max-height:99999px;
	margin: 0px 5% 0px 5%;
	float: left;
	clear: none;
	position: relative;
}

.box50L {
	width: 49%;
	height: auto;
    max-height:99999px;
	min-height: 100px;
	margin: 30px 1% 30px 0px;	
	float: left;
	clear: right;
	position: relative;
	z-index:25;
}

.box50R {
	width: 49%;
	height: auto;
    max-height:99999px;
	min-height: 100px;
	margin: 30px 0px 30px 1%;	
	float: left;
	clear: right;
	position: relative;
	z-index:25;
}

.box33L {
	width: 32%;
	height: auto;
    max-height:99999px;
	min-height: 100px;
	margin: 30px 1% 0px 0px;	
	float: left;
	clear: right;
	position: relative;
	z-index:25;
}

.box33M {
	width: 32%;
	height: auto;
    max-height:99999px;
	min-height: 100px;
	margin: 30px 1% 0px 1%;	
	float: left;
	clear: right;
	position: relative;
	z-index:25;
}

.box33R {
	width: 32%;
	height: auto;
    max-height:99999px;
	min-height: 100px;
	margin: 30px 0px 0px 1%;	
	float: left;
	clear: right;
	position: relative;
	z-index:25;
}

.box75 {
	width: 75%;
	height: auto;
    max-height:99999px;
	min-height: 100px;
	margin: 0px;
    padding: 30px;
	float: left;
	clear: right;
	position: relative;
	z-index:25;
}

.box25 {
	width: 25%;
	height: auto;
    max-height:99999px;
	min-height: 100px;
	margin: 0px;
    padding: 0px;
	float: left;
	clear: right;
	position: relative;
	z-index:25;
}

.box25footer {
	width: 25%;
	height: auto;
    max-height:99999px;
	min-height: 100px;
	margin: 0px;
    padding: 0px;
	float: left;
	clear: right;
	position: relative;
	z-index:25;
}

.schall_smallbox100CENTER {
    position:relative;
    border-top: solid 3px #3c3c3c;
    border-bottom: solid 3px #3c3c3c;
    margin:50px 0px;
    padding: 0px;
    width:100%;
    overflow:hidden;
    
}

.schall_smallbox50CENTER {
    position:relative;
    border-top: solid 3px #3c3c3c;
    border-bottom: solid 3px #3c3c3c;
    margin:30px 25%;
    width:50%;
    overflow:hidden;
    
}

.schall_smallbox75 {
    position:relative;
    border-top: solid 3px #3c3c3c;
    border-bottom: solid 3px #3c3c3c;
    margin:30px ;
    width:75%;
    overflow:hidden;
    
}

.schall_smallbox1 {
    position:relative;
    border-top: solid 3px #3c3c3c;
    border-bottom: solid 3px #3c3c3c;
    margin:30px;
    padding: 0px;
    width:500px;
    overflow:hidden;
}

.schall_smallbox2 {
    border-left: solid 3px #3c3c3c;
    border-right: solid 3px #3c3c3c;
    margin:5px 0px 5px 0px;
    width:100%;
    padding: 0px;
    overflow:hidden;
}

.schall_smallbox3L {
    float:left;
    position: relative;
    margin:0px;
    width:30%;
    height: auto;
    overflow:hidden;
}

.schall_smallbox3R {
    float:left;
    position: relative;
    border-left: solid 3px #3c3c3c;
    float:left;
    margin:0px;
    width:70%;
    overflow:hidden;
}

.schall_smallbox4T {
    float:left;
    position: relative;
    float:left;
    margin:0px 1% 0px 1%;
    width:98%;
    overflow:hidden;
}

.schall_smallbox4B {
    float:left;
    position: relative;
    float:left;
    border-top: solid 3px #3c3c3c;
    margin:0px 1% 0px 1%;
    padding: 0px;
    width:98%;
    overflow:hidden;
}

.box100top {
    position:relative;
    border-top: solid 3px #3c3c3c;
    border-bottom: solid 3px #3c3c3c;
    margin:50px 0px 0px 0px;
    padding: 0px;
    width:100%;
    overflow:hidden; 
}

.box100 {
    position:relative;
    border-bottom: solid 3px #3c3c3c;
    margin:0px 0px;
    padding: 0px;
    width:100%;
    overflow:hidden; 
}

.schall_produktbox50_barR {
    position:relative;
    float:left;
    border-right: solid 3px #3c3c3c;
    margin:1% 0px;
    padding: 0px;
    width:49%;
    overflow:hidden; 
}
.schall_produktbox50_nobar {
    position:relative;
    margin:1% 0px;
    padding: 0px;
    width:49%;
    overflow:hidden; 
}

.box30_barR {
    position:relative;
    float:left;
    border-right: solid 3px #3c3c3c;
    margin:1% 0px;
    padding: 0px;
    width:33%;
    overflow:hidden; 
}
.box70_nobar {
    position:relative;
    margin:1% 0px;
    padding: 0px;
    width:60%;
    overflow:hidden; 
}

.beschreibung {
    position:relative;
    margin: 0px;
    padding: 50px;
    width:100%;
    overflow:hidden; 
}

.footer1 {
    float: left;
    position:relative;
    width:100%;
    margin: 0px 0px -250px 0px;
    z-index:500;
}

.footer2 {
    float: left;
    position:relative;
    width:100%;
    margin: -250px 0px 0px 0px;
    z-index:500;
}

.lowlevel {
    position:relative;
    z-index:10;
}

.lowlevel_transparent {
    max-height: 400px;
    position:relative;
    z-index:10;
}

.stoneicon {
	width: 14.5%;
	height:auto;
    float: left;
    clear: right;
    position: relative;
	margin: 1%;
}

.image_icons{
	width: 100%;
	margin: 0px auto 0px auto;
}


.image100 {
	width: 100%;
	margin: 0px auto 0px auto;
}

.image80 {
	width: 80%;
	margin: 0px auto 80px auto;
}

.image50 {
	width: 50%;
	margin: 0px 25% 0px 25%;
	float: left;
	clear: left;
}

.image45 {
	width: 45%;
	margin: 0px 0px 0px 5%;
	float: left;
	clear: left;
}

.image25 {
	width: 20%;
	margin: 2.5%;
	float: left;
	clear: none;
}

.image16 {
	width: 15.6%;
	margin: 0.5%;
	float: left;
	clear: none;
}

.image_galerie {
	width: 25%;
	margin: 0px 0px 0px 0px;
	float: left;
	clear: none;
}

.image_footer {
	width: 100%;
	margin: 170px 0px 0px 0px;
	float: left;
	clear: none;
}

.image_context {
	width: 32%;
	margin: 0px 2% 0px 0px;
	float: left;
	clear: none;
}

a img { 
	border: none;
}

.left {
    text-align: left;
}

.right {
    text-align: right;
}

.center {
    text-align: center;
}

.white {
    background: rgba(255,255,255,1.0);
}

.black {
    background: rgba(0,0,0,1.0);
}

.transparent {
    background: rgba(255,255,255,0.7);
}

.NAVY {
    background-color: rgba(130,135,105,1.0);
}

.LIGHTGREEN {
    background-color: rgba(210,235,175,1.0);
    
}
.ANTHRAZIT1 {
    background-color: rgba(60,60,60,1.0);   
}

.ANTHRAZIT2 {
    background-color: rgba(80,80,80,1.0);
}
    
.ANTHRAZIT3 {
    background-color: rgba(100,100,100,1.0);          
}

.CEMENT {
    background-color: rgba(245,245,245,1.0);          
}

.red {
    background-color: #ff0000;
}

hr {
    border: 2px solid #828769;
    margin: 1px 0px 1px 0px;
}

.dtonly {
	display:block;
}

.monly {
	display:none;
}

/* Page Loader */
.js .loading::before,
.js .loading::after {
	content: '';
	position: fixed;
	z-index: 1000;
}

.js .loading::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--color-bg);
}

.js .loading::after {
	top: 50%;
	left: 50%;
	width: 60px;
	height: 60px;
	margin: -30px 0 0 -30px;
	border-radius: 50%;
	opacity: 0.4;
	background: var(--color-link);
	animation: loaderAnim 0.7s linear infinite alternate forwards;
}

.overlay {
    height: 100%;
    width: 0;
    position: fixed;
    z-index: 3000;
    top: 0px;
    left: 0px;
    background-color: #3c3c3c;
    overflow-x: hidden;
    transition: 0.5s;
}

.overlay-content {
    position: relative;
    top: 0%;
    width: 100%;
    font-size: 30px;
    margin-top: 0px;
    border-style: solid 2px;
}

.overlay a {
    margin: 0px;
    padding: 0px;
    font-size: 30px;
    line-height: 38px;
    color: #f5f5f5;
    text-decoration: none;
    transition: 0.3s;
}

.overlay a:hover, .overlay a:focus {
    color: #f5f5f5;
}

.openbtn a:hover, .overlay a:focus {
    color: #d2ebaf;
}

.openbtn {
    position: absolute;
    float:right;
    top: 30px;
    right: 3%;
    color: #3c3c3c;
    font-size: 60px !important;
    z-index:150;
}

.closebtn {
    position: absolute;
    top: 30px;
    right: 3%;
    color: #f5f5f5;
    font-size: 60px !important;
    z-index:99900;
}


/* =============================================================================================================
   ANPASSUNG SCREEN SIZE ANPASSUNG SCREEN SIZE ANPASSUNG SCREEN SIZE ANPASSUNG SCREEN SIZE ANPASSUNG SCREEN SIZE
   ========================================================================================================== */

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

.contax_pictogramme {
    height:300px;
}
    
.contex {
	width: 90%;
    margin: 0px 5% 0px 5%;
}
    
.lowlevel {
    position:relative;
    margin-top: 50px;
    z-index:10;
}
    
}

@media screen and (max-width: 1380px) {
    
.contax_pictogramme {
    height:250px;
}
    
.stoneicon {
	width: 18.0%;
	height:auto;
    float: left;
    clear: right;
    position: relative;
	margin: 1%;
}
    
.navigator {
	width: 70%;
	margin: 0px 5% 0px 0px;
}

.box_logo {
	width: 25%;
}      
    
.logo {
	width: 100%;
	height: auto;
	margin: 20px 0px 0px 10%;   
}
    
.logo_subline {
	width: 30%;
	margin: 0px 0px 0px 65%;
    position: relative;
}
       
.openbtn {
    top: 17px;
    right: 5%;
    font-size: 45px !important;
}

.closebtn {
    position: absolute;
    top: 17px;
    right: 5%;
    font-size: 45px !important;
}
    
.lowlevel {
    position:relative;
    margin-top: 0px;
    z-index:10;
}
    
.image_footer {
	width: 100%;
	margin: 120px 0px 0px 0px;
	float: left;
	clear: none;
}
    
}

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

}

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

.box_logo {
	width: 35%;
}  
    
.logo {
	width: 100%;
	height: auto;
	margin: 20px 0px 20px 20%;   
}
    
.navigator {
    display:none;
}
    
.contax_pictogramme {
    height:200px;
}
    
    
.box75 {
	width: 60%;
}


.box25footer {
	width: 40%;
}
    
.schall_smallbox75 {
    margin:30px 0px 30px 0px;
    width:100%;
    
}
    
.stoneicon {
	width: 22.9%;
	height:auto;
	margin: 1%;
}
    
.openbtn {
    top: 17px;
    right: 5%;
    font-size: 57px !important;
}

.closebtn {
    position: absolute;
    top: 17px;
    right: 5%;
    font-size: 57px !important;
}
    
.lowlevel {
    margin-top: 50px;
    z-index:10;
}
    
.image100 {
	width: 100%;
	margin: 0px auto 0px auto;
}

.image80 {
	width: 80%;
	margin: 0px auto 0px auto;
}
    
}

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

.dtonly {
	display:none;
}

.monly {
	display:block;
}

.stoneicon {
	width: 90%;
	height:auto;
	margin: 30px 5% 30px 5%;
}

.smartbutton {
    font-size: 50px;
    margin: 20px
}      

.contax_pictogramme {
    height:100px;
}
    
.contex_90 {
	width: 100%;
	margin: 0px;
}
    
.box_logo {
	width: 60%;
	height:auto;
	min-height: 30px;
	margin: 20px 25% 0px 15%;
	float: left;
	clear: right;
	position: relative;
}

.logo {
	width: 100%;
	height: auto;
	margin: 0px 0px;
}

.box30_barR {
	width: 100%;
	margin: 0px;
}

.box70_nobar {
	width: 100%;
	margin: 0px;
}

.box33L {
	width: 100%;
	margin: 0px;	

}

.box33M {
	width: 100%;
	margin: 0px;
}

.box33R {
	width: 100%;
	margin: 0px;
}   
    
.box25 {
	width: 50%;
}

.box25footer {
	width: 90%;
    margin:0px 5% 0px 5%;
}
    
.box75 {
	width: 100%;
	margin: 0px;
    padding: 30px;
    text-align:right;

}
    

    
.beschreibung {
    position:relative;
    float: none;
    clear:left;
    margin: 0px;
    padding: 0px;
    width:100%;
    overflow:hidden; 
}
    
.image_context {
	width: 100%;
	margin: 20px 0px 20px 0px;
	float: left;
	clear: none;
}
    
.openbtn {
    position: absolute;
    float:right;
    top: 12px;
    right: 5%;
    font-size: 42px !important;
    z-index:10;
}

.closebtn {
    position: absolute;
    top: 12px;
    right: 5%;
    font-size: 42px !important;
    z-index:99900;
}
    
    
.image100 {
	width: 100%;
	margin: 0px auto 0px auto;
}

.image80 {
	width: 100%;
	margin: 0px auto 0px auto;
}
    
.image45 {
	width: 70%;
	margin: 0px 0px 0px 5%;
}
    
.image_footer {
	margin: 20px 0px 20px 0px;

}

}

@media screen and (max-width: 400px) {
 
.schall_smallbox50CENTER {
    margin:30px 5%;
    width:90%;   
}  
}





*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }



/* Clearfix hack by Nicolas Gallagher: http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:before,
.clearfix:after {
	display: table;
	content: " ";
}

.clearfix:after {
	clear: both;
}