@font-face {
    font-family: 'barlowmedium';
    src: url('Barlow-Medium-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'barlowregular';
    src: url('Barlow-Regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'barlowbold';
    src: url('Barlow-Bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'barlowsemibold';
    src: url('Barlow-SemiBold-webfont.woff') format('woff');
    font-weight:normal;
    font-style:normal;
}



html, body {
    height: 100%;
    margin: 0;
    font-family: barlowregular, Arial, Helvetica, sans-serif;
    color: #17174b;
}

#mobileonly-logo {
    display:block;
    width:100%;
    padding: 1em 0;
}

#mobileonly-logo img {
    display:block;
    width: 50%;
    margin: 0 auto;
}

section {
    min-height: 100vh;
}

/*section#section7 {
    background-image:url(../media/wzt.png);
    background-repeat: no-repeat;
    background-position: bottom;
    background-size: cover;
}*/

.container {
    width: 90%;
    margin: 0 auto;
    padding:1em;
}

.textbox {
    background: rgba(255,255,255,.7);
    width:96%;
    padding:2%;
}

.gewerkegrid {
    display:flex;
    flex-flow: row wrap;
    align-items: flex-end;
    line-height: 2;
    gap:3em;
}

.gewerk {
    flex: 1 1 40%;
    text-align:center;
}

.gewerk img {width:100%;}

.gwbild {
    width:47.5%;
    padding:1%;
}

.contactbox  { display:flex; gap:1em; font-size:.9em; line-height: 1.3em; }



nav {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
  }

  nav ul {
    padding-left: 0;
    margin: 0;
    list-style-type: none;
    background: #f2f3f4;
  }
  
  nav li {
    display: block;
    text-align: center;
    font-weight: bold;
    line-height:3;
  }
  
  nav li a { display: block; font-size: 1.4em;}

  nav li a:hover {color:#ff4900}

nav ul {
    display: none;
   }

nav .logo {
    display: none;
}

.nav-mobile {
    display: inline-block;
    height: 50px;
    line-height: 50px;
    padding:.3em;
    font-size: 3em;
  }

footer {
    background:#17174b;
    color:white;
  }

.footerbox {
    display:flex;
    justify-content: center;
    color: white;
    text-transform: uppercase;
    flex-direction: column;
}

.footerbox div {
    padding: 1em 4em;
    text-align: center;
}

.imp, .imp h3, .imp a, .imp a:link {
    color:#ffffff;
}


@media screen and (min-width: 768px) {
    
    #mobileonly-logo {display:none;}

    section {
        min-height: 98vh;
        padding-top:2vh;
    }   

    #section1 {
        min-height: 85vh;
        padding-top: 15vh;
    }

    .mainhdl {
        margin-bottom:3em;
    }

    #citesect h1 { margin-top:5em; }

    .container {
        width: 66.66%;
        margin: 0 16.66%
    }

    .flexc {
        display: flex;
        align-items: center;
        margin-bottom:4em;
    }

    .rechtsflex, .linksflex {
        
        flex: 1;
        flex-basis: 100%;
    }

    .textbox {
        width:62%;
        padding:2%;
        min-height:150px;
    }

    .flexc .textbox {width:90%;}

    .gewerkegrid {
        width:70%;
        flex-flow: row wrap;
    }
    #section6 .gewerkegrid { gap:6em; }

    .gewerk {
        flex: 1 1 20%;
        padding: 1em;
    }

    .gwlistli, .gwlistre { margin-top:9em; }

    .gwlistre { margin-left:4em; }

    #section6 .gewerk {
        padding: 0;
    }

    .gewerk img {
        width: 100%;
    }

    nav {
        width:100%;
        border-bottom: 2px solid #ff4900;
        background: #f2f3f4;
    }    

    nav li { 
        vertical-align: top; 
        border-top: 2px solid transparent;
        display: inline-block;
        text-align: left;
        line-height: 35px;
        margin-top:35px;
        margin-right: 25px;
    }

    nav li.active {border-top:2px solid #ff4900;}

    #main-nav li:first-of-type { margin-left:2em;}

    nav li a { display: block; font-size: .9em;}

    .nav-mobile {
    display: none;
    font-weight: bold;
    width: 100%;
    }

    nav ul { display: block !important; margin: 0; }

    .imp {display:flex; width:100%; color: #ffffff;}
    .impcol h1, .impcol h2, .impcol h3, .impcol p {color:#ffffff;}
    .impcol {
        flex:auto;
    }

    nav li.kontaktbtn {
        margin-right: 6em;
        float:right;
        border: 2px solid #17174b;
        border-radius: 4px;
        padding: 0 8px;
      }

    .footer {
        min-height: 60vh;
    }

    .footerbox {
        flex-direction: row;
    } 
     
    .footerbox div {
        padding: 8em 4em;
        text-align:left;
    }
    
    footer h5 {margin-bottom: 2em;}
}

@media screen and (min-width:1000px) {
    nav .logo {
        display: inline-block;
        width: 160px;
        padding: 10px 40px;
    }

    .logo img {padding: 0 1em;}
}



/* TYPO */

html {
    line-height: 1.3;
}

h4,h5,h6,p {margin:0}

.gewerk h5 {font-size: .9em;}

a {
    text-decoration: none;
    font-family: barlowregular;
}

#section6 a, #section6 a:link { color:white; }
#section6 a:hover { color:#ff4900 }

nav ul li a {
    font-family: barlowsemibold;
    color:#17174b;
    text-transform: uppercase;
    
}

h1 {font-size: 1.4em; text-align:center;}



h1, h2, h3 { font-family: barlowsemibold; }
h4, h5 { font-family: barlowregular; }
h1, h2, h4, h5 { color: #ff4900; }
h3 {color:#17174b}
#section3 h1 { color:#17174b; }
#section6 h1, #section6 h5, footer h5, footer a { color:white; }


footer a {font-size: .8em;}
footer a:hover {color: #ccc}

@media screen and (min-width: 768px) {
    h1 {font-size: 2em; text-align: left;}
}