#burger{
    position:fixed;
    top:90px;
    right:20px;
    display:block;
    width:40px;
    height:40px;
    cursor:pointer;
    z-index:200;
}
#burger:before{
    content:"";
    display:block;
    height:15px;
    border-radius:3px;
    border-top:6px solid #000;
    border-bottom:6px solid #000;
}
#burger:after{
    content:"";
    display:block;
    height:6px;
    width:100%;
    border-radius:3px;
    background-color:#000;
    position: absolute;
    top:10px;
    left:0px;
}

body > menu{
    display:none;
}

#mmenu{
    grid-area:menu;
    display:block;
    background-color:#000;
    line-height:40px;
    text-align: left;
    position: fixed;
    top:0px;
    left:-110vW;
    height:100vH;
    width:100%;
    z-index:1001;
    padding-top:10vH;
    transition:all 0.7s;
}
#mmenu.aktiv{
    left:0px;
}
#mmenu > li{
    display:block;
}
#mmenu > li a{
    display:block;
    padding:0px 10px;
    padding-left:20px;
    color:#fff;
    font-size:1.1rem;
}
body > footer{
    height:0px;
}
body > footer > figure{
    display:none;
}
body > footer > svg{
    left:0px;
    top:-60px;
    transform: rotate(28deg);
}
body > footer a{
    display:none;
}
main{
    padding-top:130px;
}
main > section{
    height:calc(100vH - 185px) !important;
}
main > section.grid1_2{
    display:grid;
    gap:20px;
    grid-template-rows:auto 1fr;
    grid-template-columns:1fr;
}
main > section.grid2_1{
    display:grid;
    gap:20px;
    grid-template-rows:1fr 300px;
    grid-template-columns:1fr;
}
main > section > figure img{
    max-height:100%;
}
#referenzen .ref{
    width: 150px;
    height: 100px;
    margin:8px;
}
#kontakt{
    display:grid;
    gap:20px;
    grid-template-rows:180px 1fr;
    grid-template-columns:1fr;
}
#kontakt form{
    line-height:32px;
}
#kontakt label{
    display:block;
}
form input,form textarea{
    width: 95%;
}
form input[type=submit],form input[type=reset]{
    width: 45%;
}
#datenschutz > p,#impressum > p{
    overflow:auto;
    max-height:80vH;
}
#refdetail{
    display: none;
    position: fixed;
    top:15vH;
    left:5%;
    height:70vH;
    width:90%;
    background-color:#e6dfcf;
    z-index: 1001;
    border-radius:10px;
    padding:15px;
}
#refdetail .close{
    position:absolute;
    top:-40px;
    right:0px;
}
body > header #line-li,body > header #line-re,#webprojektor{
    display: none;
}