:root{

    --main-color: #ee1600;
    --page-color: #fcfcfc;
}

body{
    background-color: ;
    margin: 0 !important;
    padding: 0 !important;
    font-family: 'Poiret One', cursive;
    overflow-x: hidden;
    
}
backGroundImage{

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    
}
html{
    overflow-x: hidden;
    
}

.fadeInCurtain{
    
    position: fixed;
    height: 100%;
    width: 100%;
    background-color: 100%;
    animation-delay: 0.5s;
    
    
}


.content{
    position: relative;
    width: 90%;
    max-width: 1200px;
    background-color: #333333;
    margin: auto;
    margin-top: 5%;
}

.introContainer{
    overflow: hidden;
    background-color: beige;
    width: 100%;
    height: 25vw;
    background-size: cover;
    background-position: center;
    margin-bottom: 0% !important;
}
.container{
    margin-bottom: 1%;
    width: 100%;
    box-sizing: border-box;
}
.aboutContainer{
    
    height: auto;
    padding-top: 2%;
    text-align: center;
    background-color: #222222;
     border-bottom: 3px solid #000000;
    
}
.aboutContent{
    
    vertical-align: top;
    display: inline-block;
    height: auto;
    padding: 0.25%;
    width: 23%;
    margin-left: 0.3%;
    margin-right: 0.3%;
    text-align: justify;
}
.aboutImage{
    background-color: gray;
    width: 100%;
    height: 15vw;
    margin-bottom: 2%; 
}

a{
    color: deepskyblue;
    
}
a:hover{
    color: skyblue;
}
button{
    
    cursor: pointer;
    background-color: #ee1600;
    background-color: var(red) !important;
    display: inline-block;
    border: none;
    color: white;
    padding: 10px 17px 10px 17px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    transform: scale(1.2);
     -webkit-transition: all 0.5s !important; /* Safari */
    transition: all 0.5s !important;
    font-family: 'Poiret One', cursive;
    font-size: 110%;
}
button:hover{
    
    
    background-color:orangered;
    
    
}

p{
    font-size: 100%;
    line-height: 1.25;
    margin: 0px;
    
}

h1{

    font-size: 250%;
    color: #ee1600;
    position: relative;
    text-align: center;
    
    
}
h2{
    
    font-size:150%;
    font-weight:bold;
    letter-spacing: 10;
    font-variant:inherit;
    margin:0px;
    margin-bottom: 2%;
    width: 100%;
    padding: 0;
    color: #ee1600;
}
h3{
    color: #ee1600 !important;
    margin:0px;
    margin-bottom: 0%;
    width: 100%;
    padding: 0;
    font-weight: 400;
}

.text{
        
    color: white;
    text-align:justify;
	font-size: 103%;
    line-height: 135%;

}

.shadow{
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-shadow: 3px 3px 17px rgba(0, 0, 0, 0.5);

    transform: scale(1);
    /*        animation-duration: 5s;
    -webkit-animation-duration: 2s;
            animation-name: shadowFadeIn;
    -webkit-animation-name: shadowFadeIn;
            animation-timing-function: ease-out;
    -webkit-animation-timing-function: ease-out;
            animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
    */
}
@-webkit-keyframes shadowFadeIn {
    
    100% {transform: scale(1); box-shadow: 3px 3px 13px rgba(0, 0, 0, .5);}
    
        
}
@keyframes shadowFadeIn {
    100% {transform: scale(1); box-shadow: 3px 3px 13px rgba(0, 0, 0, .5);}
    
}


/*Nummerierungscontainer__________*/
.nummerierungsContainer{
    position: relative;
    background-color: #222222;
    height: auto;
    padding-bottom: 2%;
    overflow: hidden;
}
.nummerierungsPresenter{
    
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: white;
    z-index: 2;
    transition: all 1s;
    -webkit-transition: all 1s;
    opacity:1;
    
    
}
.nummerierungsPresenter.hide{
    pointer-events: none;
    opacity: 0;
}

.nummerierungsText{
    width:60%;
    margin: auto;
    text-align: center;
    height: auto;
    padding: 1%;
    overflow: hidden;
    box-sizing: border-box;
}
.nummerierungsObjects{
    width: 100%;
    box-sizing: border-box;
    height: auto;
    text-align: center;
    margin-top: 5%;
}
.nummerierungsObject{
    width: 22%;
    margin: 0.5%;
    height: 0;
    padding-bottom: 21%;
    background-size: cover;
    background-position: center;
    display: inline-block;
    border-radius: 50%;
    box-sizing: border-box;
    border-style: solid;
    border-color: red;
    border-width: 1.5px;
    box-shadow: 0px 0px 17px rgba(0, 0, 0, 0.5);
            transition: all 0.75s;
    -webkit-transition: all 0.75s;
    cursor: pointer;
    
}
.nummerierungsObject:hover{
    
    box-shadow: 0px 0px 30px rgba(255, 255, 255, 0.9);
    transform: scale(1.05);
}
.nummerierungsPresenterExit{
    
    position: absolute;
    right: 1%;
    top: 1%;
    font-size: 2vw;
    font-weight:bold;
    opacity: 0.7;
    z-index: 2;
}
.nummerierungsPresenterExit:hover{
    opacity: 1;
    cursor: pointer;
}
.nummerierungsPresenterObject{
    position: absolute;
    pointer-events: none;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    opacity: 0;
    text-align: center;
    
}
.nummerierungsPresenterObject.hide{
    opacity: 0;
    
}
.nummerierungsPresenterObject.show{
    opacity: 1;
    pointer-events: all;
    
}
.nummerierungsPresenterImage{
    
    width: 40%;
    position: absolute;
    top: 50%;
    left: 7%;
    
    transform: translateY(-50%);

    
}
.nummerierungsPresenterText{
    
    width: 40%;
    position: absolute;
    top: 50%;
    right: 10%;
    
    transform: translateY(-50%);


    
}


/*Startpage_______________________*/
.startText{
    position: absolute;
    width: 55%;
    max-width: 700px;
    top: 50%;
    left: 30%;
    transform: translate(-50%,-50%);
    font-size: 1.2vw;
    
    text-align: center;
    color:white;
    
}
.bigStartLetter{
    


    margin-top: 10%;
    text-align: center;
    color:white;
    font-size: 4vw;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 15;
    margin-bottom:0%;
    text-shadow: 2px 2px 3px rgba(0, 0, 0, .2);
    
}
.startButton{
    position: relative;
    margin-top: 5%;
    left: 50%;
    
    font-size: 1.1vw;
    padding: 1% 2% 1% 2%; 
    transform: translateX(-50%);
    
    
    
}
.introImage{
    position: absolute;
    right: 15%;
    width: 25%;
    max-width: 400px;
    top: 50%;
    transform: translateY(-50%);
}
.introText{
    text-align: center;
    width: 100%;
    color: white;
    font-size: 120%;
}

/*Moebelpage______________________*/
.moebelContainer{
    
    width: 100%;
    height: auto;
    text-align: center;


}
.moebelObject{
    position: relative;
    cursor: pointer;
    width: 32%;
    height: 0;
    padding: 0;
    padding-bottom: 26%;
    background-color: gray;
    display: inline-block;  
    margin: 0.5%;
    opacity: 0.8;
    border-style: solid;
    border-color: #ee1600;
    border-width: 1.5px;s
    box-sizing: border-box;
    overflow: hidden;
    box-shadow: 3px 3px 17px rgba(0, 0, 0, 0.5);
    
    -webkit-transition: all 0.5s; /* Safari */
            transition: all 0.5s;
}
.moebelObject:hover{
    box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.5);
    opacity: 1;
    transform: scale(1.04);
    
}

.moebelObjectText{
    
    position: absolute;
    padding-top: 50%;
    padding-bottom: 50%;
    color: #ee1600;
    width: 100%;
    box-sizing: border-box;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    font-size: 2vw;
    opacity: 0;
            transition: opacity 10.5;
    -webkit-transition: opacity 10.5;
    
    background-color: white;
    
}
.moebelObject:hover > .moebelObjectText{
    
    opacity: 1;
    
    
}

.moebelPresenter{
    overflow: hidden;
    position: fixed;
    background-color: rgba(30,30,30,0.95);
    width: 100vw;
    height: 100vh;
    z-index: 10;
    opacity: 1;
    -webkit-transition: all 0.75s; /* Safari */
            transition: all 0.75s;
           animation-duration: 1s;
    -webkit-animation-duration: 1s;
            animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
}
.moebelPresenter.hide{
            
            animation-name: moebelPresenterHide;
    -webkit-animation-name: moebelPresenterHide;
}
@-webkit-keyframes moebelPresenterHide {
    0% {opacity: 1; transform: scale(1);}
    99% { transform: scale(1.2); opacity: 0;bottom: 0%;}
    100%{visibility: hidden height: 0 !important;}  
}
@keyframes moebelPresenterHide {
     0% {opacity: 1; transform: scale(1);}
    99% { transform: scale(1.2); opacity: 0;bottom: 0%;}
    100%{visibility: hidden; height: 0 !important;}  
}

.moebelPresenter.show{
    
            animation-name: moebelPresenterShow;
    -webkit-animation-name: moebelPresenterShow;
    
    
}
@-webkit-keyframes moebelPresenterShow {
    0%{opacity: 0; height: 100vh; bottom: 0; transform: scale(1.2)}
    100%{opacity: 1;}
    
}
@keyframes moebelPresenterShow {
     0%{opacity: 0; height: 100vh; bottom: 0;  transform: scale(1.2)}
    100%{opacity: 1;}
}








.backkgroundImage{
    width:100%;
    height:100%;
    background-position: center;
    background-size: 30%;
    position:fixed; 

    overflow: hidden;

    
            animation-duration: 100s;
    -webkit-animation-duration: 100s;
            animation-name: backkgroundImageAnim;
    -webkit-animation-name: backkgroundImageAnim;
    -webkit-transition: opacity 2s; /* Safari */
            transition: opacity 2s;
    
}

@-webkit-keyframes backkgroundImageAnim {
    0% { transform: scale(1.1);}
    2% { transform: scale(1);}
        
}
@keyframes backkgroundImageAnim {
    0% { transform: scale(1.1);}
    2% { transform: scale(1);}
}



.image{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    
}

.header{
    
    width: 100%;
    height: 80px;
    background: red; /* For browsers that do not support gradients */
    background: -webkit-linear-gradient(rgb(45,205,255), rgb(65,170,255)); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(rgb(45,205,255), rgb(65,170,255)); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(rgb(45,205,255), rgb(65,170,255)); /* For Firefox 3.6 to 15 */
    background: linear-gradient(rgb(45,205,255), rgb(65,170,255));
}

.page{
    
    position: relative;
    width:100%;
    height:100%;
    margin-bottom: 0;
    box-sizing: border-box;
    
}
.pageHead{
    
    
    width: 100vw;
    height: 15vh;
    text-align: center;
    font-size:250%;
    font-weight: bold;
    line-height: 15vh;
    color:deepskyblue;
    
}
.pageHeadline{
    color: deepskyblue !important;
}

.descriptionDiv{
    
    width:70vw;
    height:20vw;
    margin-bottom: 10%;

    
}

.fadingOverFlow{
    
    
    
}



/*Page Styles*/

.pageContent{
    text-align:center;
    min-height:0%;
    padding-top: 3%;
    position: relative;
    background-size: cover;
    background-position: center;
    
    overflow: hidden;
}

.pageImg{
    
    
    
    
    
    width:40%;
    min-width: 450px;
    max-width: 90vw;
    display: inline-block;
    
    
    opacity: 1;
   
    /*
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;        
            animation-duration: 2s;
    -webkit-animation-duration: 2s;
            animation-name: pageImgFadeIn;
    -webkit-animation-name: pageImgFadeIn;
    */
    
}
.pageImgDiv{
    
    
    background-position: center;
    background-size: cover;
    position: relative;
    left:-100px;
    width:40vw;
    min-width: 450px;
    max-width: 600px;
    
    height: 30vw;
    min-height: 300px;
    max-height: 400px;
    display: inline-block;
    vertical-align: middle;
    
    opacity: 0;
   
    
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;        
            animation-duration: 2s;
    -webkit-animation-duration: 2s;
            animation-name: pageImgFadeIn;
    -webkit-animation-name: pageImgFadeIn;
    
    
}
@-webkit-keyframes pageImgFadeIn {
    
    100% {opacity: 1; transform:scale(1);top:0px;left:0px;}    
}
@keyframes pageImgFadeIn {
	100% {opacity: 1; transform:scale(1);top:0px;left:0px;}
}

.pageText{
    
    
    
    width:40vw;
    min-width: 400px;
    max-width: 100%;
    
   
    
    
    margin-right: auto;
    margin-left: auto;
    
    
    
    
    display: inline-block;
    vertical-align: middle;
    opacity: 0;
    
    
    
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;     
            animation-duration: 3s;
    -webkit-animation-duration: 3s;
            animation-delay: 1s;
    -webkit-animation-delay: 1s;
            animation-name: logoOverlayTextFadeIn;
    -webkit-animation-name: logoOverlayTextFadeIn;

}
@-webkit-keyframes pageDarkOverlayFadeIn {
    
    0% {opacity: 0;}    
}
@keyframes pageDarkOverlayFadeIn {
	0% {opacity: 0;}
}
   

@-webkit-keyframes moebelAnim {
    
    0% {opacity: 0; top: 10%;}
    100% {opacity: 1;  top: 0%;} 
}
@keyframes moebelAnim {
	0% {opacity: 0;  top: 10%;}
    100% {opacity: 1; top: 0%;} 
}

.onlyMobile{
        display: none;
    }


/*Impressum Styles*/
.footText{
    
    text-align:center;
    max-width:800px;
    width:60%;
    margin:auto;
    margin-bottom: 5%;
    
}

.footLinks{
    width: 100%;
    margin-top: 20px;
    border-color: grey;
    text-align: center !important;
    padding-top: 10px;
    font-size: 80%;
    margin-bottom: 1%;
    
}
.impressumContainer{
    border-top-style: solid;
    border-color: gray;
    border-width: 2px;
    padding-top: 1%;
    text-align: center;
}
.impressumContainer > a{
    
    margin-left: 10px;
    margin-right: 10px;
    
}

.referenzenContainer{
    position: relative;
    background-color: #222222 !important;
    width: 100%;
    height: auto;
    padding: 2%;
    box-sizing: border-box;
}
.logoContainer{
    
    text-align: center;
    width: 95%;
    padding-top: 4%;
    padding-bottom: 3%;
    margin: auto;
}
.logo{
    
    background-color: white;
    border-radius: 50%;
    
    display: inline-block;
    position: relative;
    top:0;
    padding: 1.3vw;
    margin: 0.5vw;
   
    width: 11vw;
    height: 11vw;
    max-width: 130px;
    max-height: 130px;

    overflow: hidden;
    
}



.logoImage{
    
    
   
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    width:95%;
    height: 95%;
    background-size: contain;
    margin: auto;
    
    
}
.logoHeadline{
    
    padding-top: 3%;
    
}

.logoText{
    text-align: center;
    width: 80%;
    max-width: 900px;
    margin: 0% auto 1% auto;
    ;
}

.referenzPage{
    background-color: white !important;
    box-shadow: 0px -13px 20px rgba(0, 0, 0, 0.5);
}
/*Impressum Styles*/
.footContainer{
    padding: 1%;
    padding-top: 4%;
    height: auto;
    position: relative;
    color: black !important;
    background-color: white;
    margin-top: 2%;
}
