/*** Layoutanpassungen ***/
body {

}

.header {
    padding-top: 16px;
    margin-bottom: 20px;
}
.header a:link, .header a:visited {
    color: #76B828 !important;
    text-decoration: none;
}

#footer {
    position: static !important;
    bottom: initial!important;
    left: initial!important;
    width: initial!important;
}

#header {
    margin-bottom: 12px!important;
}

#header:after {
    width: 100% !important;
}

.loginContent {
    background: url(../images/login/bg_login.jpg) no-repeat;
    padding-left: 38px;
    padding-right: 15px;
    font-family: Arial,Helvetica,sans-serif !important;
    color: #5E636B;
    /*height: 443px;*/
    margin-bottom: 20px;
    width: 969px;
    height: 443px;
}

.loginContent a, address, blockquote, h1, h2, h3, h4, div, img, input, label, legend, li, ol, option, p, q, select, strong, span, textarea, td, th, ul {
    font-family: Arial,Helvetica,sans-serif;
}
.loginContent BODY, TH, TD, P, DIV, SPAN, INPUT, BUTTON, SELECT, TEXTAREA, FORM, B, STRONG, I, U, H1, H2, H3, H4, H5, H6, DL, DD, DT, UL, LI, OL, OPTION, OPTGROUP, A, .disabled, .TblTdLyt {
    font-family: Arial,Helvetica,sans-serif;
    font-size: 11px;
}

.loginContent h1 {
    color: #7C8087 !important;
    font-size: 145.5%;
    font-weight: bold;
    padding: 35px 0 10px;
    margin: 0 0 0.3em;
}

.loginContent h1.text-follows {
    padding-bottom: 10px;
}

/*** Bugfixes ***/
/* no decoration for link around the company logo */
.header .logo a, .header .logo a:hover, .header .logo a:visited, .header .logo a:active {
    text-decoration: none;
    border: 0;
    color: white;
}

/*** login page ***/
.LblLev2Txt {
    color: #48802C;
    font-family: Arial,Helvetica,sans-serif !important;
}
.LblLev1Txt, .LblLev2Txt, .LblLev2smTxt {
    font-weight: bold;
}
tr .LblLev2Txt {
    color: #5E636B !important;
}

.content_left {
    float:left;
    width:470px;
}

.content_left label {
    color: #5E636B;
    display: block;
    padding: 0 0 10px;
}

.content_right {
    line-height: 16px;
}

.btn_login {
    background-image: url("../images/login/btn_login.png");
    border: 0 none;
    color: #FFFFFF;
    cursor: pointer;
    display: block;
    font-size: 16px;
    font-weight: bold;
    height: 40px;
    margin: 12px 0 10px;
    width: 190px;
}

.loginContent a.color_hellgruen {
    color: #76B828 !important;
    text-decoration: underline;
    font-size: 11px
}

.content_right {
    float:left;
    margin-left: 50px;
    width:310px;
}

.content_right p {
    margin-top: 11px;
    margin-bottom: 11px;
}

.loginContent input.login {
    display: block;
    height: 24px;
    margin: 0 0 18px;
    width: 440px;
    overflow: hidden;
    border-style: inset !important;
    border-bottom-color: #999999 !important;
    border-bottom-width: 1px !important;
    border-image-outset: 0 0 0 0 !important;
    border-image-repeat: stretch stretch !important;
    border-image-slice: 100% 100% 100% 100% !important;
    border-image-source: none !important;
    border-image-width: 1 1 1 1 !important;
    border-left: 1px;
    border-top-color: #999999 !important;
    border-top-width: 1px !important;
    padding-left: 2px !important;
}

body.s-index {
    width: 100%;
}

main.login-main {
    display: block;
}

.login-main-container {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 50px 0;
    overflow: auto;
    background-size: cover;
    height: calc(100vh - 60px - 80px);
}

.login-main-container.cps {
    background: transparent url('../images/index/havenhuis.jpg') no-repeat 50%;
    background-size: cover;
}

.login-main-container.ticketsystem {
    background: transparent url('../images/index/Parametric_Hamburg.png') no-repeat 50%;
    background-size: cover;
}

.login-main-wrapper {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.cps .login-main-wrapper {
    padding-left: 80px;
    padding-right: 80px;
}

.ticketsystem .login-main-wrapper {
    padding-left: 80px;
    padding-right: 80px;
}

.login-form-container {

}

.login-form {
    position: relative;
    display: block;
    max-width: 650px;
    max-height: 200px;
    padding: 43px 50px 40px;
    z-index: 1;
}

.login-form > * {
    z-index: 1;
    position: relative;
}

.login-form h2 {
    color:#FFFFFF;
    font-size: 3.4em;
}

@media screen and (min-width: 768px) {
    .login-form::before {
        content: '\A';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border-radius: 20px;
        background: rgba(120,185,40,.9);
        transform: perspective(300px) rotateX(-5deg) rotateY(7.5deg) translateX(2.5em);
        backface-visibility: hidden;
        outline: 1px solid transparent;
    }
}

@media screen and (min-width: 767px) and (max-width: 830px) {
    .login-form h2 {
        font-size: 2.6em;
    }
}

@media screen and (max-width: 767px) {
    .login-form {
        display: block;
        width: 100%;
        max-width: none;
        height: auto;
        padding: 24px 24px 40px;
        background: rgba(120,185,40,.9);
    }

    .login-form h2 {
        font-size: 2em;
    }
}


