@font-face {
    font-family: ETmodules;
    src: url(../fonts/modules.eot);
    src: url(../fonts/modules.eot?#iefix) format("embedded-opentype"),
    url(../fonts/modules.ttf) format("truetype"),
    url(../fonts/modules.woff) format("woff"),
    url(../fonts/modules.svg#ETmodules) format("svg");
    font-weight: 400;
    font-style: normal
}

/* reset sachen und so */
a, abbr, acronym, address, applet, b, big, blockquote, body, center, cite, code, dd, del, dfn, div, dl, dt, em, fieldset, font, form, h1, h2, h3, h4, h5, h6, html, i, iframe, img, ins, kbd, label, legend, li, object, ol, p, pre, q, s, samp, small, span, strike, strong, sub, sup, tt, u, ul, var {
    margin: 0;
    margin-bottom: 0px;
    padding: 0;
    border: 0;
    outline: 0;
    background: 0 0;
    background-position-x: 0px;
    background-position-y: 0px;
    background-size: auto;
    font-size: 100%;
    vertical-align: baseline;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

* {
    box-sizing: border-box;
}

body {
    background-color: white;
    font-family: 'Roboto', Helvetica, Arial, Lucida, sans-serif;
    height: 100vh;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Roboto Condensed', Helvetica, Arial, Lucida, sans-serif;
}

h2.h1 {
    font-size: 36px !important;
    font-weight: 700;
    margin-bottom: 40px;
    padding-bottom: 0;
    text-transform: uppercase;
    color: #0086bf !important;
    animation-play-state: unset;
}

h2.h1::after {
    animation-play-state: unset;
    height: auto;
    content: "+";
    font-family: "Roboto";
    color: #ec6c19;
}

h3, th {
    font-weight: 700 !important;
    font-size: 20px !important;
    text-transform: none !important;
    color: #605856 !important;
}

input, select {
    border: solid 1px #bbbbbb !important;
}

p {
    font-family: 'Roboto', Helvetica, Arial, Lucida, sans-serif;
}

table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 5px;
}

thead th {
    padding: 4px 1px 5px 6px !important;
    color: #fff !important;
    background-color: #605856 !important;
    text-align: left;
}

tr, th {
    margin: 0 .5em;
}

tbody > tr:nth-child(2n) {
    background-color: #ebe9e9;
}

.navi {
    width: 100%;
    position: fixed;
    top: 0;
    border-bottom: 1px;
    color: grey;
    margin: 0 14px;
}

.navi .logon {
    float: left;
}

.navi .navitems {
    float: right;
    margin-right: 2%;

}

.center {
    margin: 0 auto;
}

.button {
    position: relative;
    padding: .3em 1em;
    border: 2px solid;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.7em !important;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    transition: all .2s;
}

.bottom_container {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    float: right;
    margin-top: -1.5%;
    text-align: right;
}

.container {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    float: right;
    margin-top: -1.5%;
    text-align: right;
}

.row {
    margin: 1em 0;
    clear: both;
}

.button::after, .contact_submit::after {
    font-family: ETmodules !important;
}

.contact_submit {
    color: #0086bf;
}

.button-container > * {
    display: inline-block;
}

.button::after, .button::before {
    position: absolute;
    text-shadow: none;
    font-weight: 400;
    font-style: normal;
    font-variant: none;
    text-transform: none;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    transition: all .2s;
}

.button::after, .button::before {
    position: absolute;
    margin-left: -1em;
    opacity: 0;
    text-shadow: none;
    font-size: 32px;
    font-weight: 400;
    font-style: normal;
    font-variant: none;
    line-height: 1em;
    text-transform: none;
    content: "\35";
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    transition: all .2s;
}

a:visited, a:active, a:focus {
    color: #0086bf;
}

.contact_submit {
    display: inline-block;
    font-family: inherit;
    cursor: pointer;
}

.mb-3 {
    margin-bottom: .75em;
}

.mx-3 {
    margin: .75em 0;
}

.section {
    width: 80%;
    margin: 0 auto;
}

.section-90 {
    width: 90%;
    margin: 0 auto;
}

.section-100 {
    width: 100%;
    margin: 0 auto;
    padding: 10px;
}

.contact p input, .contact p textarea {
    width: 100%;
    padding: 16px;
    border-width: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    color: #999;
    background-color: #eee;
    font-size: 14px;
    -webkit-appearance: none;
}

.contact p input:focus, .contact p textarea:focus {
    color: black;
}

.input {
    font-size: 17px;
    line-height: 1.8em;
    color: #d1d1d1;
    border-radius: 5px 5px 5px 5px;
}

.input:focus {
    color: black;
}

.contact_reset:hover, .contact_submit:hover {
    background-color: rgba(0, 0, 0, .05);
}

.bottom_container {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
    float: right;
    margin-top: -1.5%;
    text-align: right;
}

.contact_form_label {
    display: none;
}

.contact_reset:hover, .contact_submit:hover {
    background-color: rgba(0, 0, 0, .05);
}


.button:hover {
    padding: .3em 1.5em .3em .75em !important;
}

.button:hover {
    /*padding: .3em 2em .3em .7em;*/
    border: 2px solid transparent;
}

.button::after {
    opacity: 1;
    line-height: 1.7em;
    content: '';
    font-size: 16px;
    color: #ec6c19;
    margin-left: .3em;
    margin-top: .3em;
}

.button:hover::after {
    content: 'L';
    font-size: 18px;
    line-height: 1.7em;
    font-weight: 800;
    color: #ec6c19;
    /*font-weight: bolder;*/
    margin-top: .2em;
    margin-left: .2em;
}

/* Komischer Formbuilder Fix */

#bauteil > div,#bauteil_gruppe > div,#werkstoff > div,#kunde > div,#user > div{
    margin: .3em 0;
}

.form-group > label, input, select {
    width: 50%;
    margin: 0 auto;
    display: inline-block;
}

.form-group > input {
    padding: 2px;
    border-width: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    color: #0086bf;
    background-color: white;
    font-size: 12px;
    -webkit-appearance: none;
}

.form-group > input:focus {
    color: black;
}

.form-group:last-child {
    float: right;
}

.form-group {
    clear: both;
}
