@charset "UTF-8";
/* CSS Document */

body {
    font-family: Arial, Helvetica, sans-serif;
}

main {
    max-width: 940px;
    margin: 0 auto
}

.center {
    text-align: center;
}

.intro-teaser {
    display: block;
    float: none;
    clear: both;
    overflow: hidden;
    margin: 1em 2%;
}

.intro-teaser img {
    float: left;
    max-width: 130px;
    border-radius: 150%;
    margin-right: 10px;
}

.intro-teaser .teaser__kicker {
    font-size: .75em;
    float: left;
    color: #666;
    font-family: Arial, sans-serif;
    font-weight: 100;
    text-transform: uppercase;
    padding: 3px 0.25em 0;
    display: contents;
}

.intro-teaser .teaser__headline {
    font-size: 1.32em;
    line-height: 1.2;
    margin-bottom: 0.4375em;
    display: block;
}

.intro-teaser .teaser__body__text {
    display: inline;
    line-height: 1.3;
}

html.dark .intro-teaser .teaser__kicker {
    font-size: .75em;
    float: left;
    color: #f2f2f2;
    font-family: Arial, sans-serif;
    font-weight: 100;
    text-transform: uppercase;
    padding: 3px 0.25em 0;
    display: contents;
}

.svg-fill-color {
    fill: #666
}

.svg-stroke-color {
    stroke: #666
}

.result-intro-img .svg-fill-color {
    fill: #6ba42c !important;
}

.result-intro-img .svg-stroke-color {
    stroke: #6ba42c;
}

.result-error .result-intro-img .svg-fill-color {
    fill: #f44336 !important;
}

.result-error .result-intro-img .svg-stroke-color {
    stroke: #f44336 !important;
}

.result-error h1.pub-color {
    color: #f44336 !important;
}

.result-intro-text a {
    text-decoration: underline;
    font-weight: bold;
}

.result-intro {
    display: inline-block;
    padding: 0;
    border-radius: 15px;
    margin: 1em auto;
    width: 98%;
    border: 6px dashed #8bc34a;
    background: #e9fdd2;
}

.result-intro-img {
    width: 10%;
    margin: 1em auto;
}

.result-intro-text {
    width: 90%;
    margin: 1em 5%;
    font-family: Arial, Helvetica, sans-serif;
    float: none;
    text-align: center;
    color: #5d5d5d;
    line-height: 1.6em;
}

.result-intro-text h1 {
    font-size: 2em;
    line-height: 1.4em;
    color: #6ba42c;
}

.result-more-newsletter {
    width: 96%;
    margin: 0 2%;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.4em;
}

.result-more-newsletter .channel-header {
    height: 0;
}

.result-more-newsletter-content {
    text-align: center;
}

.result-error {
    border: 6px dashed #f44336;
    background: #fbe4e4;
}

.result-error .svg-fill-color {
    fill: #f44336 !important;
}

.result-error .svg-stroke-color {
    stroke: #f44336;
}

.result-error {
    color: #f44336;
}

.center {
    margin: 1em auto;
    text-align: center;
}

.nl-entry {
    width: 31%;
    display: inline-block;
    border: 1px solid #bfbfbf;
    padding: 15px 1%;
    margin: 20px 1% 2em;
    float: left;
    position: relative;
}

.nl-entry a {
    display: inline-block;
    width: 100%;
}

.nl-entry img {
    width: 100%;
}

.nl-entry .teaser {
    min-height: 370px;
    position: relative;
    line-height: 1.4em;
}

.nl-entry:hover {
    -webkit-box-shadow: 0 0 15px 5px rgba(0, 0, 0, .38);
    box-shadow: 0 0 15px 5px rgba(0, 0, 0, .38);
}

.nl-entry .inactive {
    display: none
}

.nl-entry a .nl-entry .teaser img {
    width: 100%;
    float: none;
    margin: 0;
    padding: 0
}

.nl-entry .teaser .teaser__header {
    width: 100%;
    padding: 10px 0;
    font-size: 1.3em
}

.nl-entry .teaser__body {
    width: 100%;
    display: inline-block;
    height: 110px;
}

.nl-form-text {
    margin-top: 1em;
}

.nl-entry .nl-form-text p,
.nl-entry .nl-form-text a,
.nl-form-text-kl {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 11px;
    line-height: 1.4em;
    color: gray
}

.nl-entry .nl-form-text a,
.akkordeon a {
    text-decoration: underline;
    display: inline;
}

.nl-entry-info {
    position: relative;
    margin-top: -27px;
    text-align: center;
    margin-bottom: 2%;
}

.nl-entry .teaser .teaser__headline {
    position: relative;
    display: inline-block;
    min-height: 48px;
    margin-bottom: 0
}

.nl-entry:hover .teaser .teaser__headline {
    text-decoration: none
}

.nl-entry-info span {
    background: #fff;
    border: 1px solid #bfbfbf;
    padding: 3px 6px;
    font-weight: bold;
    letter-spacing: .1em;
    color: #636363;
    font-size: 0.75em;
}

.nl-form-itemname {
    font-size: .8em;
    display: inline-block;
    padding: 5px 0 0;
}

.nl-form-input {
    width: 100%;
    display: inline-block;
    border: 1px solid #999;
    height: 40px;
    border-radius: 5px;
    padding: 0 10px;
}

.clever_form_error {
    border: 1px solid red;
    background: #ffe5e5
}

.nl-form-musthave {
    margin: 1em 0 0.5em 0;
}

.nl-form-button {
    border: none;
    border-radius: 5px;
    color: #fff;
    font-weight: bold;
    padding: 15px 10px;
    text-align: center;
    width: 100%;
    font-size: 1em;
    margin: 0.5em 0 0.5em 0;
}

.message {
    font-size: .9em;
    margin: 10px 0;
    color: #242424;
}

.text-alert {
    color: #b91515;
}

.faq-b {
    margin-bottom: 3em
}

.faq-b .tab {
    position: relative;
    width: 100%;
    color: #333;
    overflow: hidden;
    margin-bottom: 10px;
    border-top: 1px solid #e4e4e4
}

.faq-b .tab:first-child {
    border: none
}

.faq-b input {
    position: absolute;
    opacity: 0;
    z-index: -1
}

.faq-b label {
    position: relative;
    display: block;
    padding: 1em 3.5em 0 0;
    line-height: 25px;
    cursor: pointer;
    color: #333;
    font-weight: bold
}

.faq-b .tab-content {
    max-height: 0;
    overflow: hidden;
    background: #fff;
    -webkit-transition: max-height .35s;
    -o-transition: max-height .35s;
    transition: max-height .35s
}

.faq-b .tab-content p {
    margin: 1em 1em 2em
}

.faq-b input:checked~.tab-content {
    max-height: 10em
}

.faq-b label::after {
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    width: 20px;
    height: 50px;
    line-height: 3;
    text-align: center;
    -webkit-transition: all .35s;
    -o-transition: all .35s;
    transition: all .35s
}

.faq-b input[type="radio"]:checked+label::after {
    transform: rotate(90deg)
}

.akkordeon {
    margin: 0 0 3em 0
}

.akkordeon label {
    padding: .2em 1em;
    position: relative;
    display: block;
    height: 1.5em;
    cursor: pointer;
    color: #333;
    margin: 10px 0
}

.akkordeon span {
    font-weight: bold;
    margin-right: 20px;
    display: inline-block
}

.akkordeon input:checked+label,
.akkordeon input:checked+label:hover {
    padding: 10px 6px 5px 10px;
    height: auto
}

.akkordeon input+label {
    transition: all .5s ease-in-out;
    padding: 10px 6px 10px 10px;
    height: auto;
    border-radius: 5px;
    border-top: 1px solid #e4e4e4;
    margin: 0 0 0
}

.akkordeon input:checked+label:after {
    transform: rotate(90deg)
}

.akkordeon input {
    display: none
}

.akkordeon .answer {
    overflow: hidden;
    height: 0;
    margin: 0;
    transition: all .5s ease-in-out
}

.akkordeon input:checked~.answer {
    height: auto;
    padding: 0 15px 15px 10px;
    margin: 0 0 10px 0;
    line-height: 1.4em;
}

.akkordeon input:checked~.answer li {
    margin-bottom: 1em;
}

.akkordeon>div:first-of-type label {
    border: none
}

html.dark .akkordeon label {
    padding: .2em 1em;
    position: relative;
    display: block;
    height: 1.5em;
    cursor: pointer;
    color: #f2f2f2;
    margin: 10px 0;
}

.nl-cta {
    background: #999;
    display: block;
    padding: 10px;
    margin: 10px auto 0;
    float: none;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
    color: #fff;
    bottom: 0;
    font-weight: bold;
    border-radius: 5px;
    width: 100%;
    position: absolute;
}

button.nl-form-button {
    cursor: pointer;
}

.nlModal {
    position: fixed;
    font-family: Verdana, sans-serif;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .75);
    z-index: 99999;
    opacity: 0;
    transition: opacity 400ms ease-in;
    pointer-events: none
}

/* Darkmode quick Bugfix: Ticket STQUEST-139 */
.nlModal h2,
.nlModal label {
    color: #242424;
    padding: 0 3em 0 0;
}

.nlModal input {
    color: #242424;
    padding: 0 3em 0 0.75em;
}

.nlModal h2 {
    font-size: 1.25em;
}

.nlModal:target {
    opacity: 1;
    pointer-events: auto
}

.nlModal>div {
    width: 600px;
    position: relative;
    margin: 20% auto;
    padding: 1.5em;
    background-color: #fff;
    cursor: default
}

.nlModalClose {
    background-color: #fff;
    color: #fff !important;
    position: absolute;
    right: -16px;
    text-align: center;
    top: -16px;
    text-decoration: none;
    font-weight: normal;
    border-radius: 50%;
    box-shadow: 1px 1px 3px #000;
    height: 40px;
    width: 40px;
    font-size: x-large;
    overflow: hidden;
    border: 1px solid #242424;
}

.nlModalClose a {
    position: absolute;
    left: 0;
    height: 100%;
    z-index: 1;
    opacity: 0;
}

.nlModalClose:before {
    content: "|";
    top: 0;
    position: absolute;
    transform: rotate(45deg);
    display: inline-block;
    color: #242424;
    align-content: center;
    left: 0.65em;
}

.nlModalClose:after {
    content: "|";
    top: 0;
    position: absolute;
    transform: rotate(-45deg);
    display: inline-block;
    color: #242424;
    flex-wrap: wrap;
    left: 0.5em;
}

a.nlModalClose {
    width: 50px;
    height: 50px;
    font-size: 1.85em;
    line-height: 1.5em;
}

.nlModalClose:hover {
    text-decoration: none;
}

.channel-header {
    border-top: 1px solid #767674;
    width: 96%;
    margin: 1em auto;
    max-height: 20px;
    text-align: center;
    clear: left;
    position: relative;
    top: 15px;
}

.channel-header h3 {
    background: #fff none repeat scroll 0 0;
    color: #677179;
    display: inline-block;
    font-size: 22px;
    font-weight: normal;
    letter-spacing: .1em;
    padding: 0 0.5em;
    position: relative;
    text-transform: uppercase;
    top: -15px;
    font-family: Arial, Helvetica, sans-serif;
}

html.dark .channel-header h3 {
    background: #181818 none repeat scroll 0 0;
    color: #f2f2f2;
    display: inline-block;
    font-size: 22px;
    font-weight: normal;
    letter-spacing: .1em;
    padding: 0 0.5em;
    position: relative;
    text-transform: uppercase;
    top: -15px;
    font-family: Arial, Helvetica, sans-serif;
}

/* + + + + + + + + + + + + + + + + + + + + + + colorized - publication color  + + + + + + + + + + + + + + + + + + + + + + */
.hao .bg,
.hao .nl-cta,
.hao .nl-form-button {
    background: #4a7e3e;
}

.bmo.bg,
.bmo .nl-cta,
.bmo .nl-form-button {
    background: #005d28;
}

.waz.bg,
.waz .nl-cta,
.waz .nl-form-button {
    background: #d00;
}

.nrz.bg,
.nrz .nl-cta,
.nrz .nl-form-button {
    background: #086;
}

.wr.bg,
.wr .nl-cta,
.wr .nl-form-button {
    background: #c02;
}

.wp.bg,
.wp .nl-cta,
.wp .nl-form-button {
    background: #07a;
}

.ta.bg,
.ta .nl-cta,
.ta .nl-form-button {
    background: #319F49;
}

.otz .bg,
.otz .nl-cta,
.otz .nl-form-button {
    background: #C31924;
}

.tlz.bg,
.tlz .nl-cta,
.tlz .nl-form-button {
    background: #00538D;
}

.bzv.bg,
.bzv .nl-cta,
.bzv .nl-form-button {
    background: #09c;
}

.bz.bg,
.bz .nl-cta,
.bz .nl-form-button {
    background: #09c;
}

.ikz.bg,
.ikz .nl-cta,
.ikz .nl-form-button {
    background: #097;
}

.hk.bg,
.hk .nl-cta,
.hk .nl-form-button {
    background: #cc0020;
}

.tz.bg,
.tz .nl-cta,
.tz .nl-form-button {
    background: #1A28D7;
}

@media (max-width: 475px) {
    .nl-entry {
        width: 96%;
    }

    .nl-entry,
    .nl-entry .teaser,
    .nl-entry .teaser__body,
    .nl-entry .teaser .teaser__headline {
        min-height: auto;
        height: auto;
    }

    .nlModal>div {
        width: 90%;
        padding: 1.25em;
    }

    .nl-cta {
        position: relative;
    }
}
