@CHARSET "UTF-8";

/** VENDOR IMPORT **/
@import "../../../vendor/bootstrap/4/css/bootstrap.min.css";
@import "../../../vendor/fontawesome/5/css/all.min.css";
/** END VENDOR IMPORT **/

/** FONTS IMPORT **/
@font-face {
    font-family: 'Lora';
    src: url('../../../fonts/Lora-Regular.eot');
    src: url('../../../fonts/Lora-Regular.eot?#iefix') format('embedded-opentype'),
    url('../../../fonts/Lora-Regular.woff') format('woff'),
    url('../../../fonts/Lora-Regular.ttf')  format('truetype'),
    url('../../../fonts/Lora-Regular.otf')  format('opentype'),
    url('../../../fonts/Lora-Regular.svg#svgFontName') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Lora';
    src: url('../../../fonts/Lora-Bold.eot');
    src: url('../../../fonts/Lora-Bold.eot?#iefix') format('embedded-opentype'),
    url('../../../fonts/Lora-Bold.woff') format('woff'),
    url('../../../fonts/Lora-Bold.ttf')  format('truetype'),
    url('../../../fonts/Lora-Bold.otf')  format('opentype'),
    url('../../../fonts/Lora-Bold.svg#svgFontName') format('svg');
    font-weight: bold;
    font-style: normal;
}
/** END FONTS IMPORT **/

/** GENERAL Container from layout_de (Navigation, Header, Content, Footer **/

html, body {
    font-family: "Open Sans", arial, sans-serif;
    font-size: 16px;
    line-height: 22px;
    color: #000;
    height: 100%;
    margin: 0;
    padding: 0;
}

/** COLORS **/
.g1-primary { color: #c90c10 !important; }
.g1-primary-bg { background: #c90c10 !important; }
.g1-secondary { color: #000000 !important; }
.g1-secondary-bg { background: #000000 !important; }

#site_wrapper {
    min-height: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.bgleft {
    background: url("../img/header_xl_l.jpg") transparent repeat-x;
}
.bgright {
    background: url("../img/header_xl_r.jpg") transparent repeat-x;
}
.footer-text {
    font-size: 16px;
    line-height: 24px;
    color: #FFF;
}

/** LINKS **/
a, a:active, a:hover, a:visited, a:focus, a:link {
    text-decoration: none;
    color: #FFF;
}

.btn-link:focus, .btn-link:active, .btn-link:hover {
    text-decoration: none;
}

/** HEADLINES **/
h1, h2, h3 {
    font-family: "Lora", "Open Sans", arial, sans-serif;
    font-weight: bold;
}
h1 {
    font-size: 26px;
    line-height: 28px;
}
h1.redline:after {
    display: block;
    content: '';
    border-top: 6px solid #c90c10;
    width: 180px;
    margin-top: 6px;
}
/** FORM Stuff **/
.form-row {
    margin-right: 0;
}
.form-control {
    text-align: left;
    height: 55px;
    border-radius: 0;
    border: 2px solid #c90c10;
}
.form-control.is-invalid {
    background: #f8d7da;
}
.form-control.styled {
    text-align: center;
}
.form-control.styled::placeholder {
    color: #c90c10;
    opacity: 1;
}
.form-control.styled:-ms-input-placeholder, .form-control.styled::-ms-input-placeholder {
    color: #c90c10;
}
.form-control:focus {
    color: #000000;
    background-color: #fff;
    border-color: #c90c10;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgb(201 12 16 / 50%);
}
.btn.focus, .btn:focus {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgb(201 12 16 / 50%);
}

.ff .form-control {
    text-align: left;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #c90c10;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23FFF'/%3E%3C/svg%3E");
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #c90c10;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E")
}
.custom-control-label::before, .custom-control-label::after {
    top: 0.15rem;
}

.padding-correction {
    padding-top: calc(.375rem + 1px);
    padding-bottom: calc(.375rem + 1px);
}

label.confirmation {
    font-weight: normal;
    text-align: left;
}

div.confirmation {
    border: 0;
    padding: 0;
    display: flex;
    align-items: center;
}

/** Validation **/
.error, label.is-invalid, div.is-invalid {
    color: #dc3545;
}

.h-inherit {
    height: 100% !important;
}

.btn-brand {
    background-color: #c90c10;
    cursor: pointer;
    color: #ffffff;
    text-decoration: none;
    text-align: center;
    height: 55px;
    border-radius: 0;
}

.btn-done {
    background-color: #89898f;
    cursor: pointer;
    color: #ffffff;
    text-decoration: none;
    text-align: center;
    height: 45px;
}
.btn:hover { color: #FFFFFF; }
.btn-brand:hover {
    background-color: #c90c10;
}
.btn.no-cursor { cursor: default !important; }

.btn-brand:active, bth-brand:focus {}
.btn-brand:disabled {}

.btn-logout {
    display: flex;
    height: 30px;
    flex-flow: column;
    justify-content: center;
}

#header_img {
    height: 100px;
    width: 100%;
    background-repeat: no-repeat;
    background-size: inherit;
    background-position: center;
}

@media (min-width: 768px) {
    div.confirmation {
        padding: .375rem .75rem;
    }
}