@import url(font-awesome.min.css);
@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:300italic,600italic,300,600");

/*
        Dimension by HTML5 UP
        html5up.net | @ajlkn
        Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

/* Reset */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

body {
    -webkit-text-size-adjust: none;
}

/* Box Model */

*, *:before, *:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/* Basic */

@-ms-viewport {
    width: device-width;
}

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

    html, body {
        min-width: 320px;
    }

}

body {
    /*    background: #1b1f22;*/
    background: #171717;
}

body.is-loading *, body.is-loading *:before, body.is-loading *:after, body.is-switching *, body.is-switching *:before, body.is-switching *:after {
    -moz-animation: none !important;
    -webkit-animation: none !important;
    -ms-animation: none !important;
    animation: none !important;
    -moz-transition: none !important;
    -webkit-transition: none !important;
    -ms-transition: none !important;
    transition: none !important;
    -moz-transition-delay: none !important;
    -webkit-transition-delay: none !important;
    -ms-transition-delay: none !important;
    transition-delay: none !important;
}

/* Type */

html {
    font-size: 16pt;
}

.cc_container .cc_btn {
    background-color: #e4e4e4 !important; /* Farbe des Buttons */
    color: #000 !important; /* Textfarbe des Buttons */
}

.cc_container {
    background: #1f6888 !important; /* Hintergrundfarbe des gesamten Bereichs */
    color: #fdfdfd !important; /* Schriftfarbe des gesamten Bereichs */
}

.cc_container a {
    color: #31a8f0 !important; /* Textlink-Farbe "Mehr Infos" */
}

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

    html {
        font-size: 12pt;
    }

}

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

    html {
        font-size: 11pt;
    }

}

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

    html {
        font-size: 10pt;
    }

}

body, input, select, textarea {
    color: #ffffff;
    font-family: "Source Sans Pro", sans-serif;
    font-weight: 300;
    font-size: 1rem;
    line-height: 1.65;
}

a {
    -moz-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
    -webkit-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
    -ms-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
    transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
    border-bottom: dotted 1px rgba(255, 255, 255, 0.5);
    text-decoration: none;
    color: inherit;
}

a:hover {
    border-bottom-color: transparent;
}

strong, b {
    color: #ffffff;
    font-weight: 600;
}

em, i {
    font-style: italic;
}

p {
    margin: 0 0 2rem 0;
}

h1, h2, h3, h4, h5, h6 {
    color: #ffffff;
    font-weight: 600;
    line-height: 1.5;
    margin: 0 0 1rem 0;
    text-transform: uppercase;
    letter-spacing: 0.2rem;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    color: inherit;
    text-decoration: none;
}

h1.major, h2.major, h3.major, h4.major, h5.major, h6.major {
    /*    border-bottom: solid 1px #ffffff;*/
    width: -moz-max-content;
    width: -webkit-max-content;
    width: -ms-max-content;
    width: max-content;
    padding-bottom: 0.5rem;
    margin: 0 0 2rem 0;
}

h1 {
    font-size: 1.8rem;
    line-height: 1.3;
    letter-spacing: 0.3rem;
}

h2 {
    font-size: 1.5rem;
    line-height: 1.4;
    letter-spacing: 0.5rem;
}

h3 {
    font-size: 1rem;
}

h4 {
    font-size: 0.8rem;
}

h5 {
    font-size: 0.7rem;
}

h6 {
    font-size: 0.6rem;
}

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

    h1 {
        font-size: 1.75rem;
        line-height: 1.4;
    }

    h2 {
        font-size: 1.25em;
        line-height: 1.5;
    }

    h1#title-1 {
        display: none;
    }

    h1#title-2 {
        display: block;
    }

}

sub {
    font-size: 0.8rem;
    position: relative;
    top: 0.5rem;
}

sup {
    font-size: 0.8rem;
    position: relative;
    top: -0.5rem;
}

blockquote {
    border-left: solid 4px #ffffff;
    font-style: italic;
    margin: 0 0 2rem 0;
    padding: 0.5rem 0 0.5rem 2rem;
}

code {
    background: rgba(255, 255, 255, 0.075);
    border-radius: 4px;
    font-family: "Courier New", monospace;
    font-size: 0.9rem;
    margin: 0 0.25rem;
    padding: 0.25rem 0.65rem;
}

pre {
    -webkit-overflow-scrolling: touch;
    font-family: "Courier New", monospace;
    font-size: 0.9rem;
    margin: 0 0 2rem 0;
}

pre code {
    display: block;
    line-height: 1.75;
    padding: 1rem 1.5rem;
    overflow-x: auto;
}

hr {
    border: 0;
    border-bottom: solid 1px #ffffff;
    margin: 2.75rem 0;
}

.align-left {
    text-align: left;
}

.align-center {
    text-align: center;
}

.align-right {
    text-align: right;
}

/* Form */

form {
    margin: 0 0 2.5rem 0;
}

form .field {
    margin: 0 0 1.5rem 0;
}

form .field.half {
    width: 50%;
    float: left;
    padding: 0 0 0 0.75rem;
}

form .field.half.first {
    padding: 0 0.75rem 0 0;
}

form > .actions {
    margin: 1.875rem 0 0 0 !important;
}

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

    form .field {
        margin: 0 0 1.125rem 0;
    }

    form .field.half {
        padding: 0 0 0 0.5625rem;
    }

    form .field.half.first {
        padding: 0 0.5625rem 0 0;
    }

    form > .actions {
        margin: 1.5rem 0 0 0 !important;
    }

}

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

    form .field.half {
        width: 100%;
        float: none;
        padding: 0;
    }

    form .field.half.first {
        padding: 0;
    }

}

label {
    color: #ffffff;
    display: block;
    font-size: 0.8rem;
    font-weight: 300;
    letter-spacing: 0.2rem;
    line-height: 1.5;
    margin: 0 0 1rem 0;
    text-transform: uppercase;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
select,
textarea {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background-color 0.2s ease-in-out;
    -webkit-transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background-color 0.2s ease-in-out;
    -ms-transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background-color 0.2s ease-in-out;
    transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background-color 0.2s ease-in-out;
    background: rgba(23,26,30,.5);
    border-radius: 4px;
    border: solid 1px #ffffff;
    color: inherit;
    display: block;
    outline: 0;
    padding: 0 1rem;
    text-decoration: none;
    width: 100%;
}

input[type="text"]:invalid,
input[type="password"]:invalid,
input[type="email"]:invalid,
input[type="tel"]:invalid,
select:invalid,
textarea:invalid {
    box-shadow: none;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
select:focus,
textarea:focus {
    background: rgba(255, 255, 255, 0.075);
    border-color: #ffffff;
    box-shadow: 0 0 0 1px #ffffff;
}

select option {
    background: #1b1f22;
    color: #ffffff;
}

.select-wrapper {
    text-decoration: none;
    display: block;
    position: relative;
}

.select-wrapper:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-transform: none !important;
}

.select-wrapper:before {
    color: #ffffff;
    content: '\f107';
    display: block;
    height: 2.75rem;
    line-height: calc(2.75rem + 0em);
    pointer-events: none;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    width: 2.75rem;
}

.select-wrapper select::-ms-expand {
    display: none;
}

input[type="text"],
input[type="password"],
input[type="email"],
select {
    height: 2.75rem;
}

textarea {
    padding: 0.75rem 1rem;
}

input[type="checkbox"],
input[type="radio"] {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    display: block;
    float: left;
    margin-right: -2rem;
    opacity: 0;
    width: 1rem;
    z-index: -1;
}

input[type="checkbox"] + label,
input[type="radio"] + label {
    text-decoration: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: #ffffff;
    cursor: pointer;
    display: inline-block;
    font-size: 0.8rem;
    font-weight: 300;
    margin: 0 0 0.5rem 0;
    padding-left: 2.65rem;
    padding-right: 0.75rem;
    position: relative;
}

input[type="checkbox"] + label:before,
input[type="radio"] + label:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-transform: none !important;
}

input[type="checkbox"] + label:before,
input[type="radio"] + label:before {
    -moz-transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background-color 0.2s ease-in-out;
    -webkit-transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background-color 0.2s ease-in-out;
    -ms-transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background-color 0.2s ease-in-out;
    transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background-color 0.2s ease-in-out;
    border-radius: 4px;
    border: solid 1px #ffffff;
    content: '';
    display: inline-block;
    height: 1.65rem;
    left: 0;
    line-height: calc(1.58125rem + 0em);
    position: absolute;
    text-align: center;
    top: -0.125rem;
    width: 1.65rem;
}

input[type="checkbox"]:checked + label:before,
input[type="radio"]:checked + label:before {
    background: #ffffff !important;
    border-color: #ffffff !important;
    color: #1b1f22;
    content: '\f00c';
}

input[type="checkbox"]:focus + label:before,
input[type="radio"]:focus + label:before {
    background: rgba(255, 255, 255, 0.075);
    border-color: #ffffff;
    box-shadow: 0 0 0 1px #ffffff;
}

input[type="checkbox"] + label:before {
    border-radius: 4px;
}

input[type="radio"] + label:before {
    border-radius: 100%;
}

input[type="checkbox"].error + label:before {
    border-color: #EE5757;
}


::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.5) !important;
    opacity: 1.0;
}

:-moz-placeholder {
    color: rgba(255, 255, 255, 0.5) !important;
    opacity: 1.0;
}

::-moz-placeholder {
    color: rgba(255, 255, 255, 0.5) !important;
    opacity: 1.0;
}

:-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.5) !important;
    opacity: 1.0;
}

.formerize-placeholder {
    color: rgba(255, 255, 255, 0.5) !important;
    opacity: 1.0;
}

/* Box */

.box {
    border-radius: 4px;
    border: solid 1px #ffffff;
    margin-bottom: 2rem;
    padding: 1.5em;
}

.box > :last-child,
.box > :last-child > :last-child,
.box > :last-child > :last-child > :last-child {
    margin-bottom: 0;
}

.box.alt {
    border: 0;
    border-radius: 0;
    padding: 0;
}

/* Icon */

.icon {
    text-decoration: none;
    border-bottom: none;
    position: relative;
}

.icon:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-transform: none !important;
}

.icon > .label {
    display: none;
}

/* Image */

.image {
    border-radius: 4px;
    border: 0;
    display: inline-block;
    position: relative;
}

.image:before {
    -moz-pointer-events: none;
    -webkit-pointer-events: none;
    -ms-pointer-events: none;
    pointer-events: none;
    background-image: url("../../images/overlay.png");
    background-color: rgba(19, 21, 25, 0.5);
    border-radius: 4px;
    content: '';
    display: block;
    height: 100%;
    left: 0;
    opacity: 0.5;
    position: absolute;
    top: 0;
    width: 100%;
}

.image img {
    border-radius: 4px;
    display: block;
}

.image.left, .image.right {
    max-width: 40%;
}

.image.left img, .image.right img {
    width: 100%;
}

.image.left {
    float: left;
    padding: 0 1.5em 1em 0;
    top: 0.25em;
}

.image.right {
    float: right;
    padding: 0 0 1em 1.5em;
    top: 0.25em;
}

.image.fit {
    display: block;
    margin: 0 0 2rem 0;
    width: 100%;
}

.image.fit img {
    width: 100%;
}

.image.main {
    display: block;
    margin: 2.5rem 0;
    width: 100%;
}

.image.main img {
    width: 100%;
}

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

    .image.main {
        margin: 2rem 0;
    }

}

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

    .image.main {
        margin: 1.5rem 0;
    }

}

/* List */

ol {
    list-style: decimal;
    margin: 0 0 2rem 0;
    padding-left: 1.25em;
}

ol li {
    padding-left: 0.25em;
}

ul {
    list-style: disc;
    margin: 0 0 2rem 0;
    padding-left: 1em;
}

ul li {
    padding-left: 0.5em;
}

ul.alt {
    list-style: none;
    padding-left: 0;
}

ul.alt li {
    border-top: solid 1px #ffffff;
    padding: 0.5em 0;
}

ul.alt li:first-child {
    border-top: 0;
    padding-top: 0;
}

ul.icons {
    cursor: default;
    list-style: none;
    padding-left: 0;
}

ul.icons li {
    display: inline-block;
    padding: 0 0.75em 0 0;
}

ul.icons li:last-child {
    padding-right: 0;
}

ul.icons li a {
    border-radius: 100%;
    box-shadow: inset 0 0 0 1px #ffffff;
    display: inline-block;
    height: 2.25rem;
    line-height: 2.25rem;
    text-align: center;
    width: 2.25rem;
}

ul.icons li a:hover {
    background-color: rgba(255, 255, 255, 0.075);
}

ul.icons li a:active {
    background-color: rgba(255, 255, 255, 0.175);
}

ul.actions {
    cursor: default;
    list-style: none;
    padding-left: 0;
}

ul.actions li {
    display: inline-block;
    padding: 0 1rem 0 0;
    vertical-align: middle;
}

ul.actions li:last-child {
    padding-right: 0;
}

ul.actions.small li {
    padding: 0 0.5rem 0 0;
}

ul.actions.vertical li {
    display: block;
    padding: 1rem 0 0 0;
}

ul.actions.vertical li:first-child {
    padding-top: 0;
}

ul.actions.vertical li > * {
    margin-bottom: 0;
}

ul.actions.vertical.small li {
    padding: 0.5rem 0 0 0;
}

ul.actions.vertical.small li:first-child {
    padding-top: 0;
}

ul.actions.fit {
    display: table;
    margin-left: -1rem;
    padding: 0;
    table-layout: fixed;
    width: calc(100% + 1rem);
}

ul.actions.fit li {
    display: table-cell;
    padding: 0 0 0 1rem;
}

ul.actions.fit li > * {
    margin-bottom: 0;
}

ul.actions.fit.small {
    margin-left: -0.5rem;
    width: calc(100% + 0.5rem);
}

ul.actions.fit.small li {
    padding: 0 0 0 0.5rem;
}

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

    ul.actions {
        margin: 0 0 2rem 0;
    }

    ul.actions li {
        padding: 1rem 0 0 0;
        display: block;
        text-align: center;
        width: 100%;
    }

    ul.actions li:first-child {
        padding-top: 0;
    }

    ul.actions li > * {
        width: 100%;
        margin: 0 !important;
    }

    ul.actions li > *.icon:before {
        margin-left: -2em;
    }

    ul.actions.small li {
        padding: 0.5rem 0 0 0;
    }

    ul.actions.small li:first-child {
        padding-top: 0;
    }

}

dl {
    margin: 0 0 2rem 0;
}

dl dt {
    display: block;
    font-weight: 600;
    margin: 0 0 1rem 0;
}

dl dd {
    margin-left: 2rem;
}

/* Table */

.table-wrapper {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
}

table {
    margin: 0 0 2rem 0;
    width: 100%;
}

table tbody tr {
    border: solid 1px #ffffff;
    border-left: 0;
    border-right: 0;
}

table tbody tr:nth-child(2n + 1) {
    background-color: rgba(255, 255, 255, 0.075);
}

table td {
    padding: 0.75em 0.75em;
}

table th {
    color: #ffffff;
    font-size: 0.9em;
    font-weight: 600;
    padding: 0 0.75em 0.75em 0.75em;
    text-align: left;
}

table thead {
    border-bottom: solid 2px #ffffff;
}

table tfoot {
    border-top: solid 2px #ffffff;
}

table.alt {
    border-collapse: separate;
}

table.alt tbody tr td {
    border: solid 1px #ffffff;
    border-left-width: 0;
    border-top-width: 0;
}

table.alt tbody tr td:first-child {
    border-left-width: 1px;
}

table.alt tbody tr:first-child td {
    border-top-width: 1px;
}

table.alt thead {
    border-bottom: 0;
}

table.alt tfoot {
    border-top: 0;
}

/* Button */

input[type="submit"],
input[type="reset"],
input[type="button"],
button,
.button {
    -moz-appearance: none;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
    -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
    -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
    background-color: transparent;
    border-radius: 4px;
    border: 0;
    box-shadow: inset 0 0 0 1px #ffffff;
    color: #ffffff !important;
    cursor: pointer;
    display: inline-block;
    font-size: 0.8rem;
    font-weight: 300;
    height: 2.75rem;
    letter-spacing: 0.2rem;
    line-height: 2.75rem;
    outline: 0;
    padding: 0 1.25rem 0 1.35rem;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
button:hover,
.button:hover {
    background-color: rgba(255, 255, 255, 0.075);
}

input[type="submit"]:active,
input[type="reset"]:active,
input[type="button"]:active,
button:active,
.button:active {
    background-color: rgba(255, 255, 255, 0.175);
}

input[type="submit"].icon:before,
input[type="reset"].icon:before,
input[type="button"].icon:before,
button.icon:before,
.button.icon:before {
    margin-right: 0.5em;
}

input[type="submit"].fit,
input[type="reset"].fit,
input[type="button"].fit,
button.fit,
.button.fit {
    display: block;
    margin: 0 0 1rem 0;
    width: 100%;
}

input[type="submit"].special,
input[type="reset"].special,
input[type="button"].special,
button.special,
.button.special {
    background-color: #ffffff;
    color: #1b1f22 !important;
    font-weight: 600;
}

input[type="submit"].disabled, input[type="submit"]:disabled,
input[type="reset"].disabled,
input[type="reset"]:disabled,
input[type="button"].disabled,
input[type="button"]:disabled,
button.disabled,
button:disabled,
.button.disabled,
.button:disabled {
    -moz-pointer-events: none;
    -webkit-pointer-events: none;
    -ms-pointer-events: none;
    pointer-events: none;
    cursor: default;
    opacity: 0.25;
}

input[type="submit"],
input[type="reset"],
input[type="button"],
button {
    line-height: calc(2.75rem - 2px);
}

/* BG */

#bg {
    -moz-transform: scale(1.0);
    -webkit-transform: scale(1.0);
    -ms-transform: scale(1.0);
    transform: scale(1.0);
    -webkit-backface-visibility: hidden;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 1;
}

#bg:before, #bg:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*#bg:before {
    -moz-transition: background-color 2.5s ease-in-out;
    -webkit-transition: background-color 2.5s ease-in-out;
    -ms-transition: background-color 2.5s ease-in-out;
    transition: background-color 2.5s ease-in-out;
    -moz-transition-delay: 0.75s;
    -webkit-transition-delay: 0.75s;
    -ms-transition-delay: 0.75s;
    transition-delay: 0.75s;
    background-image: linear-gradient(to top, rgba(19, 21, 25, 1), rgba(19, 21, 25, 1)), url("../../images/overlay.png");
    background-size: auto, 256px 256px;
    background-position: center, center;
    background-repeat: no-repeat, repeat;
    z-index: 2;
}*/

#bg:before {
    background: url("../../images/overlay.png") repeat;
    z-index: 2;
}

#bg:after {
    -moz-transform: scale(1.125);
    -webkit-transform: scale(1.125);
    -ms-transform: scale(1.125);
    transform: scale(1.125);
    -moz-transition: -moz-transform 0.325s ease-in-out, -moz-filter 0.325s ease-in-out;
    -webkit-transition: -webkit-transform 0.325s ease-in-out, -webkit-filter 0.325s ease-in-out;
    -ms-transition: -ms-transform 0.325s ease-in-out, -ms-filter 0.325s ease-in-out;
    transition: transform 0.325s ease-in-out, filter 0.325s ease-in-out;
    /*    background-image: url("../../images/bg.jpg");*/
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1;
}

body.is-article-visible #bg:after {
    -moz-transform: scale(1.0825);
    -webkit-transform: scale(1.0825);
    -ms-transform: scale(1.0825);
    transform: scale(1.0825);
    -moz-filter: blur(0.2rem);
    -webkit-filter: blur(0.2rem);
    -ms-filter: blur(0.2rem);
    filter: blur(0.2rem);
}

body.is-loading #bg:before {
    background-color: #000000;
}

/* Wrapper */

#wrapper {
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -moz-align-items: center;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -moz-justify-content: space-between;
    -webkit-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    position: relative;
    min-height: 100vh;
    width: 100%;
    padding: 2.5rem 2rem 3rem 2rem;
    z-index: 3;
}

#wrapper:before {
    content: '';
    display: block;
}

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

    #wrapper {
        padding: 2rem;
    }

}

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

    #wrapper {
        padding: 2rem 1rem;
    }

}

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

    #wrapper {
        padding: 1rem;
    }

}

/* Header */

#header {
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -moz-align-items: center;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    /*		-moz-transition: -moz-transform 0.325s ease-in-out, -moz-filter 0.325s ease-in-out, opacity 0.325s ease-in-out;
                    -webkit-transition: -webkit-transform 0.325s ease-in-out, -webkit-filter 0.325s ease-in-out, opacity 0.325s ease-in-out;
                    -ms-transition: -ms-transform 0.325s ease-in-out, -ms-filter 0.325s ease-in-out, opacity 0.325s ease-in-out;
                    transition: transform 0.325s ease-in-out, filter 0.325s ease-in-out, opacity 0.325s ease-in-out;
                    background-image: -moz-radial-gradient(rgba(0, 0, 0, 0.25) 25%, transparent 55%);
                    background-image: -webkit-radial-gradient(rgba(0, 0, 0, 0.25) 25%, transparent 55%);
                    background-image: -ms-radial-gradient(rgba(0, 0, 0, 0.25) 25%, transparent 55%);
                    background-image: radial-gradient(rgba(0, 0, 0, 0.25) 25%, transparent 55%);*/
    max-width: 100%;
    text-align: center;
}

#header > * {
    -moz-transition: opacity 0.325s ease-in-out;
    -webkit-transition: opacity 0.325s ease-in-out;
    -ms-transition: opacity 0.325s ease-in-out;
    transition: opacity 0.325s ease-in-out;
    position: relative;
    margin-top: 3.5rem;
}

#header > *:before {
    content: '';
    display: block;
    position: absolute;
    top: calc(-3.5rem - 1px);
    left: calc(50% - 1px);
    width: 1px;
    height: calc(3.5rem + 1px);
    background: #ffffff;
}

#header > :first-child {
    margin-top: 0;
}

#header > :first-child:before {
    display: none;
}

#header .logo {
    width: 3.5rem;
    height: 3.5rem;
    line-height: 3.5rem;
    border: solid 1px #ffffff;
    border-radius: 100%;
}

#header .logo .icon:before {
    font-size: 2rem;
}

#header .content {
    border-style: solid;
    border-color: #ffffff;
    border-top-width: 1px;
    border-bottom-width: 1px;
    max-width: 100%;
}

#header .content .inner {
    -moz-transition: max-height 0.75s ease, padding 0.75s ease, opacity 0.325s ease-in-out;
    -webkit-transition: max-height 0.75s ease, padding 0.75s ease, opacity 0.325s ease-in-out;
    -ms-transition: max-height 0.75s ease, padding 0.75s ease, opacity 0.325s ease-in-out;
    transition: max-height 0.75s ease, padding 0.75s ease, opacity 0.325s ease-in-out;
    -moz-transition-delay: 0.25s;
    -webkit-transition-delay: 0.25s;
    -ms-transition-delay: 0.25s;
    transition-delay: 0.25s;
    padding: 1rem 1rem;
    max-height: 40rem;
    overflow: hidden;
    /*    background: rgba(0,0,0,0.3);
        border-left: 1px solid #ffffff;
        border-right: 1px solid #ffffff;*/
}

#header .content .inner > :last-child {
    margin-bottom: 0;
}

#header .content p {
    text-transform: uppercase;
    letter-spacing: 0.2rem;
    font-size: 0.8rem;
    line-height: 2;
}

#header nav ul {
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    margin-bottom: 0;
    list-style: none;
    padding-left: 0;
    border-radius: .3rem;
    background-image: url(../../images/ul-bg.png);
    background-position: center top;
    background-size: 100% 100%;
    border: 1px solid #ffffff;
    /*    border: 1px solid #b4b4b4;*/
}

#header nav ul li {
    padding-left: 0;
    border-left: solid 1px #ffffff;
}

#header nav ul li:first-child {
    border-left: 0;
}

#header nav ul li a {
    color: #e6e6e6;
    font-weight: bold;
    display: block;
    min-width:8.5rem;
    height: 2.75rem;
    line-height: 2.55rem;
    padding: 0 1.25rem 0 1.45rem;
    text-transform: uppercase;
    letter-spacing: 0.2rem;
    font-size: .7rem;
    border-bottom: 0;
    border-radius: .2rem;
    border-top: 1px solid #989898;
    /*    border-right: 1px solid #000000;*/
    border-bottom: 1px solid #171717;
    /*    background-color: rgba(255, 255, 255, 0.23);*/
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 1);
    text-indent: -.2em;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+41,000000+69,7c7c7c+69&0.5+40,0.5+69 */
    background: -moz-linear-gradient(top,  rgba(255,255,255,0.2) 46%, rgba(255,255,255,0.2) 48%, rgba(124,124,124,0.4) 69%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(255,255,255,0.2) 46%,rgba(255,255,255,0.2) 48%,rgba(124,124,124,0.4) 69%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(255,255,255,0.2) 46%,rgba(255,255,255,0.2) 48%,rgba(124,124,124,0.4) 69%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#80ffffff', endColorstr='#807c7c7c',GradientType=0 ); /* IE6-9 */

    /*    background-repeat: no-repeat;
        background-position: center top;
        background-size: 100% 100%;*/
    /*    border-right: 2px solid #666666;*/
}

nav ul .icon {
    font-size: 1rem;
}

#header nav ul li a:hover {
    color: #2b81af;
    background-color: rgba(75, 75, 75, .4);
    border-bottom: 1px solid #000000;
    /*    border-left: 1px solid #000000;*/
    border-top: 1px solid #171717;
    background: rgba(20,20,20,.4);

}

#header nav ul li a:active {
    background-color: rgba(255, 255, 255, 0.175);
}

#header nav.use-middle:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: calc(50% - 1px);
    width: 1px;
    height: 100%;
    background: #ffffff;
}

#header nav.use-middle ul li.is-middle {
    border-left: 0;
}

body.is-article-visible #header {
    -moz-transform: scale(0.95);
    -webkit-transform: scale(0.95);
    -ms-transform: scale(0.95);
    transform: scale(0.95);
    -moz-filter: blur(0.1rem);
    -webkit-filter: blur(0.1rem);
    -ms-filter: blur(0.1rem);
    filter: blur(0.1rem);
    opacity: 0;
}

body.is-loading #header {
    -moz-filter: blur(0.125rem);
    -webkit-filter: blur(0.125rem);
    -ms-filter: blur(0.125rem);
    filter: blur(0.125rem);
}

body.is-loading #header > * {
    opacity: 0;
}

body.is-loading #header .content .inner {
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
    opacity: 0;
}

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

    #header .content p br {
        display: none;
    }

}

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

    #header > * {
        margin-top: 2rem;
    }

    #header > *:before {
        top: calc(-2rem - 1px);
        height: calc(2rem + 1px);
    }

    #header .logo {
        width: 3.5rem;
        height: 3.5rem;
        line-height: 3.5rem;
    }

    #header ..icon:before {
        font-size: 1.75rem;
    }

    #header .content .inner {
        padding: 2.5rem 1rem;
    }

    #header .content p {
        line-height: 1.875;
    }

}

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

    #header {
        padding: 1.5rem 0;
    }

    #header .content .inner {
        padding: 2.5rem 0;
    }

    #header nav ul {
        -moz-flex-direction: column;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        min-width: 10rem;
        max-width: 100%;
    }

    #header nav ul li {
        border-left: 0;
        border-top: solid 1px #ffffff;
    }

    #header nav ul li:first-child {
        border-top: 0;
    }

    #header nav ul li a {
        height: 3rem;
        line-height: 3rem;
        min-width: 0;
        width: 100%;
    }

    #header nav.use-middle:after {
        display: none;
    }

}

/* Main */

#main {
    -moz-flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-grow: 1;
    flex-grow: 1;
    -moz-flex-shrink: 1;
    -webkit-flex-shrink: 1;
    -ms-flex-shrink: 1;
    flex-shrink: 1;
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -moz-align-items: center;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -moz-justify-content: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    max-width: 100%;
    z-index: 3;
}

#main article {
    -moz-transform: translateY(0.25rem);
    -webkit-transform: translateY(0.25rem);
    -ms-transform: translateY(0.25rem);
    transform: translateY(0.25rem);
    -moz-transition: opacity 0.325s ease-in-out, -moz-transform 0.325s ease-in-out;
    -webkit-transition: opacity 0.325s ease-in-out, -webkit-transform 0.325s ease-in-out;
    -ms-transition: opacity 0.325s ease-in-out, -ms-transform 0.325s ease-in-out;
    transition: opacity 0.325s ease-in-out, transform 0.325s ease-in-out;
    padding: 2.5rem 2.5rem 1.5rem 2.5rem ;
    position: relative;
    width: 40rem;
    max-width: 100%;
    background-color: rgba(27, 31, 34, 0.5);
    border-radius: 4px;
    opacity: 0;
    height: 100%;
}

#main article.active {
    -moz-transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
}

#main article .close, .logo .close {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 4rem;
    height: 4rem;
    cursor: pointer;
    text-indent: 4rem;
    overflow: hidden;
    white-space: nowrap;
}

#main article .close:before, .logo .close:before {
    -moz-transition: background-color 0.2s ease-in-out;
    -webkit-transition: background-color 0.2s ease-in-out;
    -ms-transition: background-color 0.2s ease-in-out;
    transition: background-color 0.2s ease-in-out;
    content: '';
    display: block;
    position: absolute;
    top: 0.75rem;
    left: 0.75rem;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 3rem;
    background-position: center;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20px' height='20px' viewBox='0 0 20 20' zoomAndPan='disable'%3E%3Cstyle%3Eline %7B stroke: %23ffffff%3B stroke-width: 1%3B %7D%3C/style%3E%3Cline x1='2' y1='2' x2='18' y2='18' /%3E%3Cline x1='18' y1='2' x2='2' y2='18' /%3E%3C/svg%3E");
    background-size: 20px 20px;
    background-repeat: no-repeat;
}

#main article .close:hover:before, .logo .close:hover:before {
    background-color: #101010;
    border: 1px solid #8e8e8e;
    border-radius: .5rem;
}

#main article .close:active:before {
    background-color: rgba(255, 255, 255, 0.175);
}

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

    #main article {
        padding: 3.5rem 2rem 0.5rem 2rem ;
    }

    #main article .close:before {
        top: 0.875rem;
        left: 0.875rem;
        width: 2.25rem;
        height: 2.25rem;
        background-size: 14px 14px;
    }

}

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

    #main article {
        padding: 3rem 1.5rem 0.5rem 1.5rem ;
    }

}

/* Footer */

#footer {
    -moz-transition: -moz-transform 0.325s ease-in-out, -moz-filter 0.325s ease-in-out, opacity 0.325s ease-in-out;
    -webkit-transition: -webkit-transform 0.325s ease-in-out, -webkit-filter 0.325s ease-in-out, opacity 0.325s ease-in-out;
    -ms-transition: -ms-transform 0.325s ease-in-out, -ms-filter 0.325s ease-in-out, opacity 0.325s ease-in-out;
    transition: transform 0.325s ease-in-out, filter 0.325s ease-in-out, opacity 0.325s ease-in-out;
    width: 100%;
    max-width: 100%;
    margin-top: 2rem;
    text-align: center;
}

#footer .copyright {
    letter-spacing: 0.2rem;
    font-size: 0.6rem;
    opacity: 0.75;
    margin-bottom: 0;
    text-transform: uppercase;
}

body.is-article-visible #footer {
    -moz-transform: scale(0.95);
    -webkit-transform: scale(0.95);
    -ms-transform: scale(0.95);
    transform: scale(0.95);
    -moz-filter: blur(0.1rem);
    -webkit-filter: blur(0.1rem);
    -ms-filter: blur(0.1rem);
    filter: blur(0.1rem);
    opacity: 0;
}

body.is-loading #footer {
    opacity: 0;
}

img.malte-starke {
    width: 7em;
    height: 7em;
    float: left;
}

#header h1 {
    color: #2b81af;
}

#header h2 {
    letter-spacing: .39rem; 
    text-transform: uppercase;
}

span.lighter {
    /*    color: #2b81af;*/
    text-transform: uppercase;
    color: #bbb;
    font-size: 1rem;
    letter-spacing: .2rem;
}

#skills {
    font-size: .8rem;
}

.skills_left, .skills_right {
    float: left;
    margin-bottom: .8em;
    color: #ffffff;
}

.skills_left {
    clear:both;
    width:37%;
    text-align: right;
    margin-right: 1%;
    border-bottom: 1px solid #666666;
} 

.skills_right {
    padding-left: 3%;
    width:59%;
} 

span.bar {
    display: block;
    height: auto;
    width: 0%;
    background: rgba(43,129,175,1);
    /*    background: rgba(129,171,45,.7);*/
    color: rgba(255, 255, 255, 0);
}

.skills_1, .skills_2 {
    width: 47.5%;
    float: left;
}

div.seperator {
    display: block;
    width: 5%;
    float: left;
}

.skills_full {
    float: left;
    width: 100%;
    margin-top:2em;
    /*    padding-bottom: .3em;*/
    margin-bottom: .6em;
    /*    color: #81ab2d;*/
    color: #2b81af;
    font-size: .9rem;
    letter-spacing: .1rem;
    border-bottom: 1px solid #2b81af;
    text-transform: uppercase;
}

#main article {
    border: 1px solid #384752;
    border-radius: .7rem !important;
}
h2.major {
    display: table;
    width: 100%;
    margin-top: -1.6rem;
    color: #2b81af;
}
h2.major:before, h2.major > span, h2.major:after {
    display: table-cell;
    white-space: nowrap;
}
h2.major > span.back {
    padding: 0 .5rem;
    position: relative;
    top: -1.7rem;
    border-radius: .6rem;
    display: block;
    text-align: center;
    width: 11rem;
    height: 1rem;
}

h2.major > span.front {
    font-size: .9rem;
    position: absolute;
    padding: 0 .5rem;
    left: 50%;
    margin-left: -5.3rem;
    margin-top: -1.85rem;
    display: block;
    text-align: center;
    width: 11rem;
    height: 1rem;
    color: #2b81af;
}

h2.major span.back:before {
    content: '';
    display: block;
    position: absolute;
    top: calc(.3rem);
    left: calc(50% - 5.5rem);
    width: 11rem;
    height: calc(2.5rem);
    background: #151618;
    border: 1px solid #384752;
    /*    border-top: 1px solid #151618;*/
    border-radius: 0.5rem !important;
}

h2.major:before {
    content: "";
    width: 50%;
}

h2.major:after {
    content: "";
    /*    border-top: 1px solid #2b81af;*/
    width: 50%;
}

span#error-hints, div#mail-sent {
    margin-bottom: 1rem; 
}

span#error-hints h4,  div#mail-sent h4 {
    color: #2b81af;
}

span#error-hints ul,  div#mail-sent ul {
    padding: 5px 10px;
    width: 100%;
    background: #EE5757;
    border-radius: 0.2rem;
    margin-bottom: 1rem; 
    margin: 0;
    list-style-type: none;
}

div#mail-sent ul {
    background: #507800;
    padding: 0;
}

#div-domain label {
    visibility: hidden;
}
#div-domain {
    float: right;
    width: 1px;
    height: 1px;
}

#div-domain input, #div-domain input:hover, #div-domain input:focus, #div-domain input:active {
    border: 0;
    border-radius: 0;
    outline: 0;
    background: none;
    height: 0;
}

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

    h2.major > span.back {
        top: -2.7rem;
    }

    h2.major > span.front {
        top: 1.9rem;
    }

}

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

    h2.major > span.back {
        top: -2.2rem;
    }

    h2.major > span.front {
        top: 1.9rem;
    }

}

input.error, textarea.error {
    border: 1px solid #EE5757;
}



#header .logo {
    position: relative;
    transform: rotate(0deg);
    width: 4.5rem;
    height: 4.5rem;
    line-height: 0;
    background: rgba(255,255,255,.1);
}

/*#header .logo:after {
    position: relative;
    transform: rotate(0deg);
    width: 5rem;
    height: 5rem;
    line-height: 4rem;
    background: url("../../images/glare.png");
}*/

.char1 {
    transform: rotate(30deg);
    background: rgba(75,75,75,.098);
}

.char2 {
    transform: rotate(40deg);
    background: rgba(75,75,75,.097);
}

.char3 {
    transform: rotate(50deg);
    background: rgba(75,75,75,.094);
}

.char4 {
    transform: rotate(60deg);
    background: rgba(75,75,75,.091);
}

.char5 {
    transform: rotate(70deg);
    background: rgba(75,75,75,.088);
}

.char6 {
    transform: rotate(80deg);
    background: rgba(75,75,75,.086);
}

.char7 {
    transform: rotate(90deg);
    background: rgba(75,75,75,.083);
}

.char8 {
    transform: rotate(100deg);
    background: rgba(75,75,75,.080);
}

.char9 {
    transform: rotate(110deg);
    background: rgba(75,75,75,.077);
}

.char0 {
    transform: rotate(120deg);
    background: rgba(75,75,75,.075);
}

.char11 {
    transform: rotate(130deg);
    background: rgba(75,75,75,.072);
}

.char12 {
    transform: rotate(140deg);
    background: rgba(75,75,75,.069);
}

.char13 {
    transform: rotate(150deg);
    background: rgba(75,75,75,.066);
}

.char14 {
    transform: rotate(160deg);
    background: rgba(75,75,75,.064);
}

.char15 {
    transform: rotate(170deg);
    background: rgba(75,75,75,.061);
}

.char16 {
    transform: rotate(180deg);
    background: rgba(75,75,75,.058);
}

.char17 {
    transform: rotate(190deg);
    background: rgba(75,75,75,.055);
}

.char18 {
    transform: rotate(200deg);
    background: rgba(75,75,75,.053);
}

.char19 {
    transform: rotate(210deg);
    background: rgba(75,75,75,.050);
}

.char20 {
    transform: rotate(220deg);
    background: rgba(75,75,75,.047);
}

.char21 {
    transform: rotate(230deg);
    background: rgba(75,75,75,.042);
}

.char22 {
    transform: rotate(240deg);
    background: rgba(75,75,75,.039);
}

.char23 {
    transform: rotate(250deg);
    background: rgba(75,75,75,.036);
}

.char24 {
    transform: rotate(260deg);
    background: rgba(75,75,75,.033);
}

.char25 {
    transform: rotate(270deg);
    background: rgba(75,75,75,.031);
}

.char26 {
    transform: rotate(280deg);
    background: rgba(75,75,75,.028);
}

.char27 {
    transform: rotate(290deg);
    background: rgba(75,75,75,.025);
}

.char28 {
    transform: rotate(300deg);
    background: rgba(75,75,75,.022);
}

.char29 {
    transform: rotate(310deg);
    background: rgba(75,75,75,.019);
}

.char30 {
    transform: rotate(320deg);
    background: rgba(75,75,75,.016);
}

.char31 {
    transform: rotate(330deg);
    background: rgba(75,75,75,.013);
}

.char32 {
    transform: rotate(340deg);
    background: rgba(75,75,75,.010);
}

.char33{
    transform: rotate(350deg);
    background: rgba(75,75,75,.007);
}

.char34 {
    transform: rotate(360deg);
    background: rgba(75,75,75,.004);
}

.char35 {
    transform: rotate(10deg);
    background: rgba(75,75,75,.0025);
}

.char36 {
    transform: rotate(20deg);
    background: rgba(75,75,75,0.001);
}

#header .content .inner {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#898989+51,000000+100&0+0,0.65+51,0+100 */
    background: -moz-linear-gradient(left,  rgba(137,137,137,0) 0%, rgba(137,137,137,0.2) 50%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left,  rgba(137,137,137,0) 0%,rgba(137,137,137,0.2) 50%,rgba(0,0,0,0) 100%); no-repeat; /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right,  rgba(137,137,137,0) 0%,rgba(137,137,137,0.2) 50%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00898989', endColorstr='#00000000',GradientType=1 ); /* IE6-9 */
}

#rotation-wrapper {
    position: absolute;
    width: 100%;
    left: 50%;
    top: 4.55rem;
    margin-left: -50%;
    overflow: hidden;
    z-index: 2;
    margin-top:0rem;
}

#wrapper-background {
    width: 30rem;
    height: 30rem;
    left: 50%;
    top: 0%;
    margin-left: -25rem;
    position: relative;
    overflow: hidden;
}

#wrapper-wheel-foreground {
    width: 17rem;
    height: 17rem;
    left: 50%;
    top: 50%;
    margin-left: -8.5rem;
    margin-top: -8.5rem;
    position: relative;
    background: rgba(0,0,0,.3);
    border-radius: 100%;
    border: 1px solid #0f0f0f;
}

.gear-element {
    width: 100%;
    margin-top: 45.8%;
    height: 1%;
    border: 1px solid #000000;
    position: absolute;
    background: rgba(0,0,0,0.4);
    /*       -webkit-box-shadow: 0px 0px 24px 8px rgba(0,0,0,0.08);
            -moz-box-shadow: 0px 0px 24px 8px rgba(0,0,0,0.08);
            box-shadow: 0px 0px 24px 8px rgba(0,0,0,0.08);*/
}




#rotation-wrapper2 {
    position: absolute;
    width: 100%;
    left: 50%;
    margin-top:0rem;
    top: 14.2rem;
    margin-left: -50%;
    overflow: hidden;
    z-index: 2;
}

#wrapper-background2 {
    width: 20rem;
    height: 20rem;
    left: 50%;
    top: 50%;
    margin-top: 2.65rem;
    margin-left: 2.65rem;
    position: relative;
    overflow: hidden;
}

#wrapper-wheel-foreground2 {
    width: 11rem;
    height: 11rem;
    left: 50%;
    top: 50%;
    margin-left: -5.5rem;
    margin-top: -5.5rem;
    position: relative;
    border-radius: 100%;
    background: rgba(0,0,0,.3) ;
    border: 1px solid #0f0f0f;
}

.gear2-element {
    width: 100%;
    margin-top: 44.2%;
    height: 1%;
    border: 1px solid #000000;
    position: absolute;
    /*    background-color: #151618;*/
    background: rgba(0,0,0,0.4);
    /*    -webkit-box-shadow: 0px 0px 24px 8px rgba(0,0,0,0.18);
        -moz-box-shadow: 0px 0px 24px 8px rgba(0,0,0,0.18);
        box-shadow: 0px 0px 24px 8px rgba(0,0,0,0.18);*/
}

span.lighter {
    font-size: .9rem;
}

h2#malte_starke {
    font-size: 1rem;
    letter-spacing: 0.3rem;
}

#glare {
    width: 100%;
    height: 100%;
    opacity: .65;
}

#glare:hover {
    opacity: 1;
    cursor:pointer;
}

#read-more {
    text-align: left;
    margin-top:4rem;
    line-height: 1.5rem; 
    position: relative;
    overflow: auto;
    padding: 0 1rem 1rem 1rem;
}

#output {
    position: absolute;
    left: 50%;
    width: 10rem;
    height: 10rem;
    margin-left: -25rem;
    margin-top: - 3rem;
    overflow: auto;
    display: block;
    z-index: 500;
    background: rgba(255,255,255,.1);
    padding: 1rem;
    font-size: .6rem;
}

noscript {
    color: #EE5757;
    font-weight: bold;
    text-align: center;
}

#read-more {
    display: none;
    max-width: 100%;
}

#read-more p {
    word-wrap: break-word;
    white-space: normal;
}

h3#intro-header, #read-more h3 {
    max-width: 100%; 
    color: #2b81af; 
    padding-bottom: 0; 
    margin-bottom: .3rem; 
    font-size: 1.2rem;
}

#footer {
    width: auto;
    text-align: center;
    font-size: .8rem;
}

#switch_language, #disclaimer {
    overflow: hidden;
    text-align: center;
    width: 300px;
    padding: 0;
}

#switch_language {
    margin-left: 115px;
    width: 68px;
    height: 28px;
}

#disclaimer a {
    text-decoration: none;
    border-bottom: 0;
}

#flag_de, #flag_en {
    float: left;
    width: 24px;
    height: 16px;
    margin: 5px;
}

.en {
    display: none;
}

#flag_de {
    background: url(../../images/flag_de_mono.jpg) no-repeat;
    cursor: pointer;
}

.flag_de-active {
    background: url(../../images/flag_de.jpg) no-repeat !important;
    cursor: pointer;
}

#flag_de:hover {
    background: url(../../images/flag_de.jpg) no-repeat;
}

#flag_en {
    background: url(../../images/flag_en_mono.jpg) no-repeat;
    cursor: pointer;
}

.flag_en-active {
    background: url(../../images/flag_en.jpg) no-repeat !important;
    cursor: pointer;
}

#flag_en:hover {
    background: url(../../images/flag_en.jpg) no-repeat;
}

#read-more .web, #read-more .graphics {
    float: left;
    width: 49%;
}

#read-more .web {
    margin-right: 1%;
}

#read-more .graphics {
    margin-left: 1%;
}

#read-more li {
    padding-left: 0;
    margin-bottom: .7rem;
}


.main-title {
    text-shadow: 0px 0px 1px #000000;
}

.contact-data {
    display: block;
    text-align: center;
    width: 100%;
    height: auto;
    font-size: .9rem;
    color: #bbb;
}