@font-face {
    font-family: Montserrat;
    src: url("../fonts/Montserrat-Light.otf") format("opentype");
}

@font-face {
    font-family: Montserrat;
    font-weight: bold;
    src: url("../fonts/Montserrat-Bold.otf") format("opentype");
}

body {
    height: 100%;
    //font-size: 18px;
    font-size: 2.3vw;
    font-family: Montserrat,  Arial;
    color: #2d2d2b !important;
    margin: 0px;
    width: 100%;
    background-color: #2d2d2b;
    //background-color: #FFFFFF;
    padding:0px;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x:hidden;
}

a.nav_a:link { color:#2d2d2b; font-size:14px; text-decoration: none; font-weight:normal; }
a.nav_a:visited { color:#2d2d2b; font-size:14px; text-decoration: none; font-weight:normal; }
a.nav_a:active { color:#2d2d2b; font-size:14px; text-decoration: none; font-weight:normal; }
a.nav_a:hover { color:#3aaa35; font-size:14px; text-decoration: none; font-weight:normal; }

a:link { color:#2d2d2b; font-size:2.3vw; text-decoration: underline; font-weight:normal; }
a:visited { color:#2d2d2b; font-size:2.3vw; text-decoration: underline; font-weight:normal; }
a:active { color:#2d2d2b; font-size:2.3vw; text-decoration: underline; font-weight:normal; }
a:hover { color:#3aaa35; font-size:2.3vw; text-decoration: underline; font-weight:normal; }

b {
    font-weight: bold;
    text-decoration: none;
}

p {
    text-align: justify;
    text-justify: inter-word;
}

input{
    width:200px;
    padding:5px;
    font-size:14px;
    margin:5px;
    border:1px solid #8c868d;
}
button{
    width:212px;
    padding:5px;
    font-size:14px;
    margin:5px;
    border:0px solid #8c868d;
    background: #3aaa35;
    color:#FFFFFF;
}

.clear{
    clear:both;
}

#main{
    width:100%;
    max-width:1200px;
    margin: auto;
    border:1 px solid #000000;
}

#top{
    width:100%;
    max-width:1120px;
    background:#FFFFFF;
    position: relative;
    //top:0px;
    z-index:100;
    padding-top:3px;
    margin:auto;
}

#footer{
    width:100%;
    max-width:1200px;
    background:#FFFFFF;
    font-size: 1.8vw;
    padding-top:20px;
    padding-bottom:20px;
}

#logo{
    float:right;
    padding-top:0px;
    padding-bottom:8px;
    padding-left:10px;
    margin-right: 30px;
}

#navigation, #navigation_back{
    float:right;
    padding-top:60px;
    display:block;
    position:relative;
}

#login_layer, #demo_layer{
    position:absolute;
    width:300px;

    background:#c5c1c7;
    border:0px solid #3aaa35;
    top:101px;
    right:0px;
    float:right;
    text-align: left;

    display:none;
}

#sub_ueber{
    position:absolute;
    //width:200px;
    background:#FFFFFF;
    border:0px solid #3aaa35;
    top:101px;

    float:right;
    text-align: left;
    font-size:14px;
    z-index:10;
    border-bottom-left-radius: 3px;border-bottom-right-radius: 3px;
    display:none;
}
.sub_navpoint{
    border-left:1px solid #c5c1c7;
    border-right:1px solid #c5c1c7;
    border-bottom:1px solid #c5c1c7;
    padding:7px;
    padding-left:30px;
    padding-right:30px;
    z-index:10;
}

.nav_dreieck{
    position:relative;
    top:-3px;
    display: none;
}

#login_inner{
    width:285px;
    padding:5px;
    float:right;
}

.navpoint{
    float:left;
    margin-right:25px;
    cursor:pointer;
}
#login_nav{
    margin-right:20px;
}

.navpoint span:nth-child(1){
    color:#3aaa35;
    font-size:24px;
    display:none;
}

.navpoint span:nth-child(2){
    color:#2d2d2b;
    font-size:16px;
}


.hairline{
    height:1px;
    width:100%;
    background:#3aaa35;
}

.line{
    height:5px;
    width:100%;
    background:#3aaa35;
}

#content{
    width:100%;
    margin-top:120px;
}

.box_top{
    background:#FFFFFF;
}
.box{
    background:#FFFFFF;
}
.boxinner_weiss{
    //min-height:333px;
    float:left;
    width:66%;
}
.boxinner_grau{
    width:33%;
    //min-height:333px;
    float:right;
}
.boxtext{
    padding:5vw;
    padding-top:20px;
    padding-bottom:20px;
    text-align: left;
}

.box_wer{
    padding:5vw;
    padding-top:20px;
    padding-bottom:20px;
    text-align: left;
}

.boxbild{
    //padding-top:5vw;
    padding-right:4vw;
    padding-top:20px;
    padding-bottom:20px;
}

.boxbild_links{
    //padding-top:5vw;
    padding-left:5vw;
    padding-top:20px;
    padding-bottom:20px;
}

.impressum{
    padding-top:5vw;
    padding-right:5vw;
    font-size: 2vw;
    text-align: left;
}

.impressum > a{
    font-size: 2vw;
}

.mehr_infos{
    //float:right;
    color:#3aaa35;
    cursor:pointer;
}

#bars{
    display:none;
    float:left;
    font-size:30px;
}

#logo_gross_grafik{
    position:relative;
    width:250px;
}

/*
#content_ueber_aplis, #content_sicherheit, #content_aplismobile{
    display: none;
}
*/

.mehr_icon{
    font-size: 3vw;
    color:#FFFFFF;
}

.fali{
    font-size: 4vw;
    color:#3aaa35;
}

.mehr_text{
    position: relative;
    top:-0.4vw;
    font-size: 2vw;
    color:#FFFFFF;
}

.mehr_infos_subline{
    font-size:2vw;
    margin-left:5vw;
}

.green{
    color:#3aaa35;
}
.white{
    color:#FFFFFF;
}

.icon_support{
    font-size:10vw
}
.icon_abstand {
    width:15vw;
}

.icon_addons{
    font-size: 12vw;
    color:#8c868d;
}

.top_headline{
    font-size: 3vw;
    color:#FFFFFF !important;
    background:#3aaa35;
    padding:6px;
    display:inline-block;
    font-weight: bold;
    margin-left:5vw;
}

.top_headline_start{
    font-size: 3vw;
    color:#FFFFFF !important;
    display:inline-block;
    font-weight: bold;
}



.top_headline_2{
    font-size: 2.6vw;
}

.headline_addons{
    color:#3aaa35;
    font-size:3vw;
}

.headline{
    font-size:7vw;
    color:#3aaa35;
    font-weight: bolder;
    text-align:left;
    width:100%;
    position:relative;
    top:-140px;
    transform: skewY(8deg);
}


/* NEU NEU NEU */

.box_weiss_outer{
    width:100%;
    //transform: skewY(8deg);
    background:#FFFFFF;
    padding-top:8vw;
    padding-bottom:8vw;
}

.box_weiss_inner{
    width:100%;
    max-width:1200px;
    margin:auto;
    //transform: skewY(-8deg);
    text-align: left
}

.box_grau_inner{
    width:100%;
    max-width:1200px;
    margin:auto;
    color:#FFFFFF;
    padding-top:8vw;
    padding-bottom:8vw;
    text-align: left
}

.button_gruen {
    cursor:pointer;
    background:#3aaa35;
    border-radius:3px;
    padding:3px;
    //float:left;
    display:inline-block;

    padding-left:10px;
    padding-right:10px;
}

.wer_kachel{
    float:left;
    width:300px;
    margin-right:20px;
}

.wer_text{
    text-align:left;
    font-size:15px;
}

.wer_bild{
    height:25vw;
    max-height:180px;
    margin-bottom:20px;
}

.vs_outer{
    background: url(../images/vs_bg_2.jpg) no-repeat center center;
    -webkit-background-size: cover; /* For WebKit*/
    -moz-background-size: cover;    /* Mozilla*/
    -o-background-size: cover;      /* Opera*/
    background-size: cover;         /* Generic*/
}

.sub_ueber{
    display:none;
}

#regraph_logo{
    cursor:pointer;
    float:right;
    letter-spacing:0.8px;
    padding-top:44px;
    margin-left:30px;
}

@media only screen and (min-width: 800px) {
    body{
        font-size: 18px;
    }
    .boxtext{
        padding:40px;
        padding-bottom:60px;
    }

    .box_wer{
        padding:40px;
        padding-bottom:60px;

    }

    .boxbild{
        padding-top:40px;
        padding-bottom:60px;
        padding-right:40px;
    }

    .boxbild_links{
        padding-top:40px;
        padding-bottom:60px;
        padding-left:40px;
    }

    a:link { font-size:18px;  }
    a:visited { font-size:18px; }
    a:active { font-size:18px; }
    a:hover { font-size:18px; }

    .fali, .mehr_icon{
        font-size: 20px;
    }

    .mehr_text{
        top:-3px;
        font-size: 14px;
    }

    #footer{
        font-size: 12px;
    }

    .mehr_infos_subline{
        font-size:12px;
        margin-left:30px;
    }

    .impressum{
        font-size: 14px;
        padding-top:90px;
        padding-right:90px;
        text-align: left;
    }

    .impressum > a{
        font-size: 14px;
    }
    .icon_support{
        font-size:80px;
    }
    .icon_abstand {
        width:130px;
    }
    .icon_addons{
        font-size: 120px;
    }

    .headline{
        font-size:80px;
        top:-180px;
    }

    .headline_addons{
        font-size:24px;
    }

    .box_weiss_outer{
        padding-top:100px;
        padding-bottom:100px;
    }

    .box_grau_inner{
        padding-top:100px;
        padding-bottom:100px;
    }

    .top_headline{
        font-size: 28px;
        margin-left: 40px;
    }

    .top_headline_start{
        font-size: 28px;
    }

    .top_headline_2{
        font-size: 24px;
    }


}

@media only screen and (max-width: 500px) {
    #regraph_logo{
        display:none;
    }
    .marginleft{
        margin-left: 20px;
    }
}

@media only screen and (max-width: 1220px) {
    .marginleft{
        margin-left: 20px;
    }
    .marginright{
        margin-left: 20px;
    }

}

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

    #navigation{
        float:none;
        padding:0px;
        padding-top:0px;
        max-width:300px;
        width:100%;
        position: absolute;
        top:101px;
        right:0px;
        background:#FFFFFF;
        text-align: left;
        display:none;
    }

    .navpoint{
        float:none;
        border-bottom:1px solid #c5c1c7;
        padding:10px;
        width:100%;
    }
    #bars{
        float:right;
        display: block;
        color:#3aaa35;
        font-size: 40px;
        padding-left:20px;
        padding-top:48px;
        margin-right:23px;
        width:40px;
    }
    .navpoint span:nth-child(1){
        margin-right:10px;
    }

    .boxinner_weiss {
        height: auto;
        min-height: auto;
    }

    .boxinner_grau {
        height: auto;
        min-height: auto;
    }

    .margin_mobile{
        //margin-bottom: 20px;
    }

    #login_nav{
        display: none;
    }
    .wer_kachel{
        width:100%;
        margin-right:0px;
    }

    .wer_text{
        float:left;
        width:50%;
        font-size:1.9vw;
    }

    .wer_bild{
        float:right;
        margin-left:10px;

    }

    .marginleft{
        margin-left: 20px;
    }
    .marginright{
        margin-right: 20px;
    }

    .sub_ueber{
        display:block;
    }
    #nav_ueber_aplis{
        display:none;
    }
}






