@charset "UTF-8";

*,
*:after,
*:before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

@media screen and (min-width: 50em) {
    .eq-height {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
    }

    .float-right {
        float: right;
    }
}

ul {
    list-style: disc;
    margin: 15px 0;
    padding-left: 20px;
}

ul li {
    margin-bottom: 10px;
}

.letter-list {
    display: inline-block;
    padding-left: 20px;
    margin: 10px 0;
}

.letter-list > span {
    display: inline-block;
    margin-bottom: 3px;
}

.letter-list > span > i {
    margin-left: -20px;
    font-style: normal;
}

.topspace {
    padding-top: 1.5rem;
}

.ce_download,
.ce_downloads {
    margin-bottom: 60px;
}

.ce_download ul,
.ce_downloads ul {
    list-style: none;
    padding-left: 0;
}

.ce_download li,
.ce_downloads li {
    margin-bottom: 0.5rem;
    position: relative;
}

.ce_download li img,
.ce_downloads li img {
    position: absolute;
}

.ce_download li a,
.ce_downloads li a {
    display: inline-block;
    line-height: 1.2;
    margin-left: 25px;
}

.ce_download a,
.ce_downloads a {
    color: #455b64;
    -webkit-transition: color 0.25s ease-out;
    -o-transition: color 0.25s ease-out;
    -moz-transition: color 0.25s ease-out;
    transition: color 0.25s ease-out;
}

.ce_download a:hover,
.ce_download a:focus,
.ce_downloads a:hover,
.ce_downloads a:focus {
    color: #afca0b;
}

.mod_sitemap li {
    margin-bottom: 0.5rem;
}

.mod_sitemap li .level_2 {
    margin-top: 0.25rem;
    padding-left: 1rem;
}

.invisible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.block {
    overflow: hidden;
}

.ce_form.block,
.configurator-wrapper.block {
    overflow: visible;
}

.row {
    clear: both;
    margin-left: -15px;
    margin-right: -15px;
}

.row:before,
.row:after {
    content: " ";
    display: table;
}

.row:after {
    clear: both;
}

@media screen and (min-width: 50em) {
    .row.row-eq-height {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.visible-s {
    display: block;
}

@media screen and (min-width: 50em) {
    .visible-s {
        display: none;
    }
}

.visible-m {
    display: block;
}

@media screen and (min-width: 80em) {
    .visible-m {
        display: none;
    }
}

@font-face {
    font-family: "font-regular";
    src: url("../fonts/FuturaLight.eot");
    src: url("../fonts/FuturaLight.eot?#iefix") format("embedded-opentype"), url("../fonts/FuturaLight.woff") format("woff"), url("../fonts/FuturaLight.svg#font-regular") format("svg");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "font-medium";
    src: url("../fonts/FuturaBT-Book.eot");
    /* IE9 Compat Modes */
    src: url("../fonts/FuturaBT-Book.eot?#iefix") format("embedded-opentype"), url("../fonts/FuturaBT-Book.woff2") format("woff2"), url("../fonts/FuturaBT-Book.woff") format("woff"), url("../fonts/FuturaBT-Book.ttf") format("truetype"), url("../fonts/FuturaBT-Book.svg#font-medium") format("svg");
    /* Legacy iOS */
    font-weight: normal;
    font-style: normal;
}

html,
body {
    font-family: "font-regular", Arial, sans-serif;
    font-size: 20px;
    color: #455b64;
}

@media screen and (min-width: 80em) {
    html,
    body {
        font-size: 22px;
    }
}

.headline-wrapper-H1,
.headline-wrapper-H2,
.headline-wrapper-H3 {
    margin-bottom: 15px;
    margin-left: 20px;
}

@media screen and (min-width: 80em) {
    .headline-wrapper-H1,
    .headline-wrapper-H2,
    .headline-wrapper-H3 {
        margin-bottom: 30px;
    }
}

.headline-wrapper-H3 {
    margin-bottom: 0.5rem;
}

@media screen and (min-width: 50em) {
    .centered-headline .headline-wrapper-H1,
    .centered-headline .headline-wrapper-H2,
    .centered-headline .headline-wrapper-H3 {
        text-align: center;
    }
}

.headline-wrapper-H1 .headline-container,
.headline-wrapper-H2 .headline-container,
.headline-wrapper-H3 .headline-container {
    background: none repeat scroll 0 0 #008237;
    /*border-left: 5px solid #cccccc;*/
    border: 0;
    color: #ffffff;
    display: inline;
    font-family: "font-medium", Arial, sans-serif;
    font-size: 33px;
    line-height: 1.52;
    margin: 0 0 21px;
    padding: 7px 0 4px;
    position: relative;
}

.firefox .headline-wrapper-H1 .headline-container,
.android.mobile .headline-wrapper-H1 .headline-container,
.firefox .headline-wrapper-H2 .headline-container,
.android.mobile .headline-wrapper-H2 .headline-container,
.firefox .headline-wrapper-H3 .headline-container,
.android.mobile .headline-wrapper-H3 .headline-container {
    font-family: "../fonts/FuturaBT-Book.woff", Arial, sans-serif;
}

.win .headline-wrapper-H1 .headline-container,
.win .headline-wrapper-H2 .headline-container,
.win .headline-wrapper-H3 .headline-container {
    line-height: 1.7;
}

.android.mobile .headline-wrapper-H1 .headline-container,
.android.mobile .headline-wrapper-H2 .headline-container,
.android.mobile .headline-wrapper-H3 .headline-container {
    line-height: 1.7;
}

@media screen and (min-width: 80em) {
    .headline-wrapper-H1 .headline-container,
    .headline-wrapper-H2 .headline-container,
    .headline-wrapper-H3 .headline-container {
        font-size: 55px;
        line-height: 1.4;
        padding: 12px 0 4px;
    }

    .firefox .headline-wrapper-H1 .headline-container,
    .firefox .headline-wrapper-H2 .headline-container,
    .firefox .headline-wrapper-H3 .headline-container {
        line-height: 1.5;
    }

    .win .headline-wrapper-H1 .headline-container,
    .win .headline-wrapper-H2 .headline-container,
    .win .headline-wrapper-H3 .headline-container {
        line-height: 1.5;
        padding: 8px 0 4px;
    }
}

.headline-wrapper-H3 .headline-container {
    font-size: 22px;
    line-height: 1.52;
    margin-bottom: 0.5rem;
    padding: 9px 0 4px;
}

@media screen and (min-width: 80em) {
    .headline-wrapper-H3 .headline-container {
        font-size: 22px;
        line-height: 1.5;
        padding: 8px 0 4px;
    }
}

.headline-wrapper-H1 .headline-container h1,
.headline-wrapper-H2 .headline-container h2,
.headline-wrapper-H3 .headline-container h3 {
    background: none repeat scroll 0 0 #008237;
    border: 0;
    color: #ffffff;
    display: inline;
    font-family: "font-medium", Arial, sans-serif;
    font-size: 33px;
    margin: 0;
    padding: 7px 0 4px;
    position: relative;
    right: 20px;
}

.firefox .headline-wrapper-H1 .headline-container h1,
.android.mobile .headline-wrapper-H1 .headline-container h1,
.firefox .headline-wrapper-H2 .headline-container h2,
.android.mobile .headline-wrapper-H2 .headline-container h2,
.firefox .headline-wrapper-H3 .headline-container h3,
.android.mobile .headline-wrapper-H3 .headline-container h3 {
    font-family: "../fonts/FuturaBT-Book.woff", Arial, sans-serif;
}

@media screen and (min-width: 80em) {
    .headline-wrapper-H1 .headline-container h1,
    .headline-wrapper-H2 .headline-container h2,
    .headline-wrapper-H3 .headline-container h3 {
        font-size: 55px;
        padding: 12px 0 4px;
    }

    .win .headline-wrapper-H1 .headline-container h1,
    .win .headline-wrapper-H2 .headline-container h2,
    .win .headline-wrapper-H3 .headline-container h3 {
        padding: 8px 0 4px;
    }
}

.headline-wrapper-H3 .headline-container h3 {
    font-size: 22px;
    padding: 9px 0 4px;
}

@media screen and (min-width: 80em) {
    .headline-wrapper-H3 .headline-container h3 {
        font-size: 22px;
        padding: 8px 0 4px;
    }
}

.headline-wrapper-H1 .headline-container h1 span,
.headline-wrapper-H2 .headline-container h2 span,
.headline-wrapper-H3 .headline-container h3 span {
    border: 0;
    color: #ffffff;
    font-family: "font-medium", Arial, sans-serif;
    left: 10px;
    margin: 0;
    padding: 0;
    position: relative;
}

h3 {
    color: #008237;
    font-family: "font-medium", Arial, sans-serif;
    font-size: 22px;
    line-height: 1.2;
    margin-bottom: 0.5rem;
    margin-top: 0.3rem;
}

@media screen and (min-width: 50em) {
    h3 {
        font-size: 25px;
        margin-bottom: 0.75rem;
    }
}

@media screen and (min-width: 80em) {
    h3 {
        line-height: 1;
        font-size: 30px;
    }
}

h4 {
    font-family: "font-medium", Arial, sans-serif;
    margin-bottom: 0.75rem;
}

strong {
    font-family: "font-medium", Arial, sans-serif;
}

@media screen and (min-width: 50em) {
    .text-center {
        text-align: center;
        left: 50%;
        position: relative;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
    }
}

.text-align-center {
    text-align: center;
}

p {
    line-height: 1.25;
    margin-bottom: 0.4545454545rem;
}

@media screen and (max-width: 49em) {
    p {
        text-align: left !important;
    }
}

@media screen and (min-width: 30em) {
    p {
        margin-bottom: 0.6818181818rem;
    }
}

p.error {
    color: #b2354a;
}

a {
    color: #008237;
    -webkit-transition: color 0.25s ease-out;
    -o-transition: color 0.25s ease-out;
    -moz-transition: color 0.25s ease-out;
    transition: color 0.25s ease-out;
}

a:hover,
a:focus {
    color: #afca0b;
}

#header,
.overlay-header {
    border-bottom: 1px solid #c7cdd0;
    height: 60px;
    position: relative;
}

@media screen and (min-width: 30em) {
    #header,
    .overlay-header {
        height: 80px;
    }
}

@media screen and (min-width: 50em) {
    #header,
    .overlay-header {
        height: 75px;
    }
}

@media screen and (min-width: 80em) {
    #header .inside,
    .overlay-header .inside {
        margin: 0 auto;
        height: 100%;
        position: relative;
        width: 100%;
        max-width: 1560px;
    }
}

#header .logo,
.overlay-header .logo {
    display: inline-block;
    padding-left: 15px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 100;
}

#header .logo #logo-svg,
.overlay-header .logo #logo-svg {
    display: block;
    margin-top: 10px;
}

@media screen and (min-width: 50em) {
    #header .logo #logo-svg,
    .overlay-header .logo #logo-svg {
        display: none;
    }
}

#header .logo #logo-claim-svg,
.overlay-header .logo #logo-claim-svg {
    display: none;
}

@media screen and (min-width: 50em) {
    #header .logo #logo-claim-svg,
    .overlay-header .logo #logo-claim-svg {
        display: block;
    }
}

#header .logo svg,
.overlay-header .logo svg {
    width: 115px;
}

@media screen and (min-width: 30em) {
    #header .logo svg,
    .overlay-header .logo svg {
        width: 140px;
    }
}

@media screen and (min-width: 50em) {
    #header .logo svg,
    .overlay-header .logo svg {
        width: 180px;
    }
}

#header .logo #logo-svg path,
#header .logo #logo-svg polygon,
#header .logo #logo-svg rect,
#header .logo #logo-claim-svg path,
#header .logo #logo-claim-svg polygon,
#header .logo #logo-claim-svg rect,
.overlay-header .logo #logo-svg path,
.overlay-header .logo #logo-svg polygon,
.overlay-header .logo #logo-svg rect,
.overlay-header .logo #logo-claim-svg path,
.overlay-header .logo #logo-claim-svg polygon,
.overlay-header .logo #logo-claim-svg rect {
    fill: #008237;
}

#header .menu-toggler_label,
.overlay-header .menu-toggler_label {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    position: absolute;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 200;
}

#header .menu-toggler_label .menu-toggler_label-text,
.overlay-header .menu-toggler_label .menu-toggler_label-text {
    color: #008237;
    display: inline-block;
    font-family: "font-medium", Arial, sans-serif;
    font-size: 0.8181818182rem;
    text-transform: uppercase;
    margin-top: 2px;
    opacity: 1;
    -webkit-transition: color 0.15s ease-out, opacity 0.15s ease-out;
    -o-transition: color 0.15s ease-out, opacity 0.15s ease-out;
    -moz-transition: color 0.15s ease-out, opacity 0.15s ease-out;
    transition: color 0.15s ease-out, opacity 0.15s ease-out;
    -webkit-transition-delay: 0.5s;
    -moz-transition-delay: 0.5s;
    -o-transition-delay: 0.5s;
    transition-delay: 0.5s;
}

.js-overlay-active #header .menu-toggler_label .menu-toggler_label-text,
.js-overlay-active .overlay-header .menu-toggler_label .menu-toggler_label-text {
    opacity: 0;
    -webkit-transition: color 0.15s ease-out, opacity 0.15s ease-out;
    -o-transition: color 0.15s ease-out, opacity 0.15s ease-out;
    -moz-transition: color 0.15s ease-out, opacity 0.15s ease-out;
    transition: color 0.15s ease-out, opacity 0.15s ease-out;
}

#header .menu-toggler_label .menu-toggler_label-icon,
.overlay-header .menu-toggler_label .menu-toggler_label-icon {
    display: inline-block;
    width: 32px;
    height: 40px;
    position: relative;
    margin-left: 10px;
    margin-right: 0;
}

#header .menu-toggler_label .menu-toggler_label-icon span,
.overlay-header .menu-toggler_label .menu-toggler_label-icon span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    background: #008237;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.15s ease-in-out;
    -o-transition: 0.15s ease-in-out;
    -moz-transition: 0.15s ease-in-out;
    transition: 0.15s ease-in-out;
}

#header .menu-toggler_label .menu-toggler_label-icon span:nth-child(1),
.overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(1) {
    top: 9px;
}

#header .menu-toggler_label .menu-toggler_label-icon span:nth-child(2),
.overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(2) {
    top: 18px;
}

#header .menu-toggler_label .menu-toggler_label-icon span:nth-child(3),
.overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(3) {
    top: 18px;
}

#header .menu-toggler_label .menu-toggler_label-icon span:nth-child(4),
.overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(4) {
    top: 27px;
}

.js-mainnav-active #header .menu-toggler_label .menu-toggler_label-icon span:nth-child(1),
.js-overlay-active #header .menu-toggler_label .menu-toggler_label-icon span:nth-child(1),
.js-mainnav-active .overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(1),
.js-overlay-active .overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(1) {
    top: 18px;
    width: 0%;
    left: 50%;
}

.js-mainnav-active #header .menu-toggler_label .menu-toggler_label-icon span:nth-child(2),
.js-overlay-active #header .menu-toggler_label .menu-toggler_label-icon span:nth-child(2),
.js-mainnav-active .overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(2),
.js-overlay-active .overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(2) {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.js-mainnav-active #header .menu-toggler_label .menu-toggler_label-icon span:nth-child(3),
.js-overlay-active #header .menu-toggler_label .menu-toggler_label-icon span:nth-child(3),
.js-mainnav-active .overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(3),
.js-overlay-active .overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.js-mainnav-active #header .menu-toggler_label .menu-toggler_label-icon span:nth-child(4),
.js-overlay-active #header .menu-toggler_label .menu-toggler_label-icon span:nth-child(4),
.js-mainnav-active .overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(4),
.js-overlay-active .overlay-header .menu-toggler_label .menu-toggler_label-icon span:nth-child(4) {
    top: 18px;
    width: 0%;
    left: 50%;
}

.mod_customnav ul.level_1 {
    padding-left: 0;
}

.mod_customnav .navigation_wrapper {
    margin-top: 80px;
    -webkit-transition: margin 0.25s ease-out;
    -o-transition: margin 0.25s ease-out;
    -moz-transition: margin 0.25s ease-out;
    transition: margin 0.25s ease-out;
    -webkit-transition-delay: 0.7s;
    -moz-transition-delay: 0.7s;
    -o-transition-delay: 0.7s;
    transition-delay: 0.7s;
}

@media screen and (min-width: 50em) {
    .mod_customnav .navigation_wrapper {
        margin-top: 150px;
    }
}

.mod_customnav .navigation_wrapper ul {
    list-style: none;
    margin: 0 15px 0 0;
    padding: 0;
    position: relative;
}

.mod_customnav .navigation_wrapper ul.level_1 {
    margin: 80px 0 0 0;
}

@media screen and (min-width: 50em) {
    .mod_customnav .navigation_wrapper ul.level_1 {
        margin: 75px 15px 0 0;
    }
}

.mod_customnav .navigation_wrapper ul.level_1 > li {
    opacity: 0;
}

@media screen and (min-width: 50em) {
    .mod_customnav .navigation_wrapper ul.level_1 > li {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: inline-block;
        text-align: center;
        width: 32%;
    }
}

.mod_customnav .navigation_wrapper ul.level_1 > li.js-active-navitem {
    opacity: 1;
}

.mod_customnav .navigation_wrapper ul.level_1 > li a,
.mod_customnav .navigation_wrapper ul.level_1 > li strong {
    font-family: "font-medium", Arial, sans-serif;
    padding: 10px 10px 5px 15px;
    -webkit-transition: background-color 0.2s ease-in, color 0.2s ease-in;
    -o-transition: background-color 0.2s ease-in, color 0.2s ease-in;
    -moz-transition: background-color 0.2s ease-in, color 0.2s ease-in;
    transition: background-color 0.2s ease-in, color 0.2s ease-in;
}

@media screen and (min-width: 50em) {
    .mod_customnav .navigation_wrapper ul.level_1 > li a,
    .mod_customnav .navigation_wrapper ul.level_1 > li strong {
        padding: 10px 15px 5px 15px;
    }
}

.ie10 .mod_customnav .navigation_wrapper ul.level_1 > li a,
.ie11 .mod_customnav .navigation_wrapper ul.level_1 > li a,
.ie10 .mod_customnav .navigation_wrapper ul.level_1 > li strong,
.ie11 .mod_customnav .navigation_wrapper ul.level_1 > li strong {
    padding: 10px;
}

.firefox .mod_customnav .navigation_wrapper ul.level_1 > li a,
.firefox .mod_customnav .navigation_wrapper ul.level_1 > li strong {
    padding: 10px 10px 15px 15px;
}

@media screen and (min-width: 50em) {
    .firefox .mod_customnav .navigation_wrapper ul.level_1 > li a,
    .firefox .mod_customnav .navigation_wrapper ul.level_1 > li strong {
        padding: 10px 15px 5px 15px;
    }
}

.android.mobile .mod_customnav .navigation_wrapper ul.level_1 > li a,
.android.mobile .mod_customnav .navigation_wrapper ul.level_1 > li strong {
    padding: 10px 10px 10px 15px;
}

@media screen and (min-width: 50em) {
    .android.mobile .mod_customnav .navigation_wrapper ul.level_1 > li a,
    .android.mobile .mod_customnav .navigation_wrapper ul.level_1 > li strong {
        padding: 10px 15px 5px 15px;
    }
}

.mod_customnav .navigation_wrapper ul.level_1 > li a:hover,
.mod_customnav .navigation_wrapper ul.level_1 > li strong:hover {
    background-color: #afca0b;
    color: #ffffff;
}

.mod_customnav .navigation_wrapper ul.level_1 > li a:focus,
.mod_customnav .navigation_wrapper ul.level_1 > li strong:focus {
    outline: none;
}

.mod_customnav .navigation_wrapper ul.level_1 > li strong.active {
    background-color: #afca0b;
    color: #ffffff;
}

.mod_customnav .navigation_wrapper a:not(.invisible),
.mod_customnav .navigation_wrapper strong:not(.invisible),
.mod_customnav .navigation_wrapper span:not(.invisible) {
    white-space: nowrap;
    margin-bottom: 10px;
    color: #455b64;
    display: inline-block;
    text-transform: uppercase;
    font-size: 1rem;
}

@media screen and (min-width: 50em) {
    .mod_customnav .navigation_wrapper a:not(.invisible),
    .mod_customnav .navigation_wrapper strong:not(.invisible),
    .mod_customnav .navigation_wrapper span:not(.invisible) {
        font-size: 1.3636363636rem;
    }
}

.mod_customnav .navigation_wrapper strong {
    opacity: 1;
}

#footer {
    background: #455b64;
    clear: both;
    padding: 20px 10px;
    position: absolute;
    bottom: 0;
    width: 100%;
}

@media screen and (min-width: 50em) {
    #footer {
        text-align: center;
    }
}

#footer .inside {
    margin-bottom: 109px;
}

@media screen and (min-width: 30em) {
    #footer .inside {
        margin-bottom: 64px;
    }
}

#footer ul {
    display: block;
}

@media screen and (min-width: 50em) {
    #footer ul {
        display: inline-block;
    }
}

#footer ul li {
    display: block;
}

@media screen and (min-width: 50em) {
    #footer ul li {
        display: inline-block;
    }
}

#footer ul li > a,
#footer ul li > strong,
#footer ul li > span {
    color: #ffffff;
    display: inline-block;
    font-family: "font-medium", Arial, sans-serif;
    font-size: 0.6818181818rem;
    padding: 15px 0;
    text-transform: uppercase;
}

@media screen and (min-width: 50em) {
    #footer ul li > a,
    #footer ul li > strong,
    #footer ul li > span {
        padding: 30px 22px;
    }
}

#footer ul li a:first-child,
#footer ul li strong:first-child,
#footer ul li span:first-child {
    padding-left: 0;
}

#footer ul li a.active,
#footer ul li a:hover,
#footer ul li a:focus,
#footer ul li strong.active,
#footer ul li span.active,
#footer ul li span:hover,
#footer ul li span:focus {
    color: #afca0b;
    outline: none;
    font-weight: normal;
}

.overlay--footer-navigation-wrapper {
    padding: 0;
    width: 100%;
}

@media screen and (min-width: 30em) {
    .overlay--footer-navigation-wrapper {
        padding: 0 15px;
    }
}

@media screen and (min-width: 50em) {
    .overlay--footer-navigation-wrapper {
        bottom: 30%;
        position: absolute;
    }
}

.overlay--footer-navigation-wrapper ul {
    display: inline-block;
}

@media screen and (min-width: 50em) {
    .overlay--footer-navigation-wrapper ul {
        padding-left: 15px;
        display: block;
        text-align: center;
    }
}

.overlay--footer-navigation-wrapper ul li {
    opacity: 0;
    display: block;
    font-family: "font-medium", Arial, sans-serif;
}

@media screen and (min-width: 50em) {
    .overlay--footer-navigation-wrapper ul li {
        display: inline-block;
        margin-bottom: 20px;
        margin-top: 0;
    }
}

.overlay--footer-navigation-wrapper ul li a,
.overlay--footer-navigation-wrapper ul li strong,
.overlay--footer-navigation-wrapper ul li span.active {
    font-family: "font-medium", Arial, sans-serif;
    padding: 10px 10px 5px 15px;
    -webkit-transition: background-color 0.2s ease-in;
    -o-transition: background-color 0.2s ease-in;
    -moz-transition: background-color 0.2s ease-in;
    transition: background-color 0.2s ease-in;
}

.ie10 .overlay--footer-navigation-wrapper ul li a,
.ie11 .overlay--footer-navigation-wrapper ul li a,
.ie10 .overlay--footer-navigation-wrapper ul li strong,
.ie11 .overlay--footer-navigation-wrapper ul li strong,
.ie10 .overlay--footer-navigation-wrapper ul li span.active,
.ie11 .overlay--footer-navigation-wrapper ul li span.active {
    padding: 10px;
}

.firefox .overlay--footer-navigation-wrapper ul li a,
.firefox .overlay--footer-navigation-wrapper ul li strong,
.firefox .overlay--footer-navigation-wrapper ul li span.active {
    padding: 10px 10px 15px 15px;
}

.android.mobile .overlay--footer-navigation-wrapper ul li a,
.android.mobile .overlay--footer-navigation-wrapper ul li strong,
.android.mobile .overlay--footer-navigation-wrapper ul li span.active {
    padding: 10px 10px 10px 15px;
}

.overlay--footer-navigation-wrapper ul li a:hover,
.overlay--footer-navigation-wrapper ul li strong:hover,
.overlay--footer-navigation-wrapper ul li span.active:hover {
    background-color: #afca0b;
    color: #ffffff;
    -webkit-transition: color 0.2s ease-in;
    -o-transition: color 0.2s ease-in;
    -moz-transition: color 0.2s ease-in;
    transition: color 0.2s ease-in;
}

@media screen and (min-width: 50em) {
    .overlay--footer-navigation-wrapper ul li a:hover,
    .overlay--footer-navigation-wrapper ul li strong:hover,
    .overlay--footer-navigation-wrapper ul li span.active:hover {
        background-color: transparent;
        color: #afca0b;
    }
}

.overlay--footer-navigation-wrapper ul li a:focus,
.overlay--footer-navigation-wrapper ul li strong:focus,
.overlay--footer-navigation-wrapper ul li span.active:focus {
    outline: none;
}

.overlay--footer-navigation-wrapper ul li strong.active,
.overlay--footer-navigation-wrapper ul li span.active {
    background-color: #afca0b;
    color: #ffffff;
}

.overlay--footer-navigation-wrapper a:not(.invisible),
.overlay--footer-navigation-wrapper strong:not(.invisible),
.overlay--footer-navigation-wrapper span:not(.invisible) {
    white-space: nowrap;
    margin-bottom: 10px;
    color: #455b64;
    display: inline-block;
    text-transform: uppercase;
    font-size: 1rem;
}

@media screen and (min-width: 50em) {
    .overlay--footer-navigation-wrapper a:not(.invisible),
    .overlay--footer-navigation-wrapper strong:not(.invisible),
    .overlay--footer-navigation-wrapper span:not(.invisible) {
        font-size: 1.3636363636rem;
        white-space: nowrap;
        color: #455b64;
        padding: 5px;
        display: inline-block;
        text-transform: uppercase;
        font-size: 0.55rem;
    }
}

@media screen and (min-width: 50em) and (min-width: 50em) {
    .overlay--footer-navigation-wrapper a:not(.invisible),
    .overlay--footer-navigation-wrapper strong:not(.invisible),
    .overlay--footer-navigation-wrapper span:not(.invisible) {
        font-size: 0.9090909091rem;
        padding: 10px;
    }
}

@media screen and (min-width: 50em) {
    .overlay--footer-navigation-wrapper a:not(.invisible):hover,
    .overlay--footer-navigation-wrapper a:not(.invisible):focus,
    .overlay--footer-navigation-wrapper strong:not(.invisible):hover,
    .overlay--footer-navigation-wrapper strong:not(.invisible):focus,
    .overlay--footer-navigation-wrapper span:not(.invisible):hover,
    .overlay--footer-navigation-wrapper span:not(.invisible):focus {
        color: #afca0b;
        outline: none;
    }
}

@media screen and (min-width: 50em) {
    .overlay--footer-navigation-wrapper a:not(.invisible).active,
    .overlay--footer-navigation-wrapper strong:not(.invisible).active,
    .overlay--footer-navigation-wrapper span:not(.invisible).active {
        color: #ffffff;
    }

    .overlay--footer-navigation-wrapper a:not(.invisible).active:hover,
    .overlay--footer-navigation-wrapper strong:not(.invisible).active:hover,
    .overlay--footer-navigation-wrapper span:not(.invisible).active:hover {
        background-color: #afca0b;
        color: #ffffff;
    }
}

.infolayer-overlay {
    background: #000000;
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 4;
}

.infolayer-content {
    background: #ffffff;
    border: 1px solid #afca0b;
    color: #455b64;
    left: 50%;
    padding: 20px;
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    top: 50%;
    width: 50%;
    z-index: 5;
}

.infolayer-content a.btn {
    display: block;
    margin-bottom: 25px;
    text-align: center;
}

#mainnav-overlay {
    position: absolute;
    top: -100vh;
    opacity: 0;
    -webkit-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
    width: 100%;
    max-width: 1560px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    overflow: hidden;
    height: 0;
}

.js-mainnav-active #mainnav-overlay {
    bottom: 0;
    top: 0;
    opacity: 1;
    height: 100vh;
    z-index: 9;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    overflow: visible;
}

.main-overlay {
    background: #ffffff;
    background: rgba(255, 255, 255, 0.96);
    height: 0;
    top: 0;
    position: fixed;
    -webkit-transition: height 0.5s ease-out;
    -o-transition: height 0.5s ease-out;
    -moz-transition: height 0.5s ease-out;
    transition: height 0.5s ease-out;
    width: 100%;
    z-index: 3;
}

.js-overlay-active .main-overlay {
    height: 100%;
    position: fixed;
    -webkit-transition: height 0.5s ease-out;
    -o-transition: height 0.5s ease-out;
    -moz-transition: height 0.5s ease-out;
    transition: height 0.5s ease-out;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

.layer-content .ce_accordion {
    border-width: 0;
}

.layer-content > .cookiebar {
    display: none !important;
}

.btn {
    background: #ffffff;
    border: 2px solid #008237;
    color: #008237;
    cursor: pointer;
    display: inline-block;
    font-family: "font-medium", Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin: 25px 0 0 0;
    padding: 13px 1rem 10px 1rem;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    -webkit-transform: perspective(1px) translateZ(0);
    -moz-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    -webkit-transition-duration: 0.4s;
    -moz-transition-duration: 0.4s;
    -o-transition-duration: 0.4s;
    transition-duration: 0.4s;
    -webkit-transition-property: color;
    -o-transition-property: color;
    -moz-transition-property: color;
    transition-property: color;
    vertical-align: middle;
    width: 100%;
}

@media screen and (min-width: 30em) {
    .btn {
        padding: 15px 4rem 10px 4rem;
    }
}

@media screen and (min-width: 50em) {
    .btn {
        width: auto;
    }
}

.firefox .btn {
    padding: 12px 4rem 13px 4rem;
}

.android.mobile .btn {
    padding: 13px 1rem 15px 1rem;
}

.btn:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #afca0b;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0 50%;
    -moz-transform-origin: 0 50%;
    -ms-transform-origin: 0 50%;
    -o-transform-origin: 0 50%;
    transform-origin: 0 50%;
    -webkit-transition: -webkit-transform 0.4s ease-out;
    transition: -webkit-transform 0.4s ease-out;
    -o-transition: -o-transform 0.4s ease-out;
    -moz-transition: transform 0.4s ease-out, -moz-transform 0.4s ease-out;
    transition: transform 0.4s ease-out;
    transition: transform 0.4s ease-out, -webkit-transform 0.4s ease-out, -moz-transform 0.4s ease-out, -o-transform 0.4s ease-out;
}

.btn:hover,
.btn:focus {
    color: #ffffff;
    border-color: #afca0b;
}

.btn:hover:before,
.btn:focus:before {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
}

.btn:focus {
    color: #ffffff;
    outline: none;
}

.btn > a:focus {
    color: #008237;
}

.btn.disabled {
    color: #c7cdd0;
    border-color: #c7cdd0;
}

.btn.disabled:before {
    color: #c7cdd0;
    background: #ffffff;
}

.btn.disabled:hover,
.btn.disabled:focus {
    color: #c7cdd0;
}

.btn.disabled:hover:before,
.btn.disabled:focus:before {
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
}

.ce_hyperlink.btn {
    margin-top: 0;
}

.btn-invert {
    background: #afca0b;
    border: 2px solid #ffffff;
    color: #ffffff;
}

.btn-invert:before {
    background: #ffffff;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
}

.btn-invert:hover,
.btn-invert:focus {
    border: 2px solid #ffffff;
    color: #afca0b;
}

.btn-invert:hover:before,
.btn-invert:focus:before {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
}

.btn-back {
    background: #f6f6f6;
    border: 2px solid #f6f6f6;
    color: #455b64;
}

.btn-back:before {
    background: #455b64;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
}

.btn-back:hover,
.btn-back:focus {
    border: 2px solid #455b64;
    color: #ffffff;
}

.btn-back:hover:before,
.btn-back:focus:before {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
}

.btn-small {
    font-size: 0.8rem;
    padding: 10px 10px 5px 10px;
}

.btn-toggleAll {
    background: #f6f6f6;
    border: 2px solid #f6f6f6;
    color: #455b64;
    cursor: pointer;
    font-size: 0.8rem;
    margin-top: 0;
    padding-left: 15px;
    padding-right: 15px;
}

.firefox .btn-toggleAll {
    padding: 12px 15px 13px 15px;
}

.icon-btn {
    background: transparent;
    color: #455b64;
    -webkit-transition: color 0.25s ease-out;
    -o-transition: color 0.25s ease-out;
    -moz-transition: color 0.25s ease-out;
    transition: color 0.25s ease-out;
}

.icon-btn svg {
    height: 25px;
    margin-bottom: -5px;
    width: 25px;
}

.icon-btn svg path {
    fill: #455b64;
    -webkit-transition: fill 0.25s ease-out;
    -o-transition: fill 0.25s ease-out;
    -moz-transition: fill 0.25s ease-out;
    transition: fill 0.25s ease-out;
}

.icon-btn:hover,
.icon-btn:focus {
    color: #afca0b;
}

.icon-btn:hover svg path,
.icon-btn:focus svg path {
    fill: #afca0b;
}

.mobile-btn {
    border: 2px solid #008237;
    cursor: pointer;
    display: inline-block;
    height: 30px;
    margin-top: 5px;
    padding: 5px;
    width: 30px;
    position: relative;
}

.mobile-btn svg {
    height: 15px;
    top: 50%;
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 15px;
}

.mobile-btn svg path {
    fill: #008237;
}

.ce_accordion {
    border: 1px solid #c7cdd0;
    border-width: 1px 0 0 0;
    overflow: hidden;
}

.ce_accordion:first-of-type {
    border-width: 0;
}

.ce_accordion:last-child {
    margin-bottom: 2rem;
}

#kontaktformular .ce_accordion {
    margin-bottom: 20px;
}

.ce_accordion > .toggler {
    color: #008237;
    cursor: pointer;
    font-family: "font-medium", Arial, sans-serif;
    padding: 15px 50px 15px 15px;
    position: relative;
    -webkit-transition: color 0.2s ease-in-out;
    -o-transition: color 0.2s ease-in-out;
    -moz-transition: color 0.2s ease-in-out;
    transition: color 0.2s ease-in-out;
}

.ce_accordion > .toggler h5 {
    display: inline-block;
    font-family: "font-medium", Arial, sans-serif;
}

#kontaktformular .ce_accordion > .toggler {
    background-color: #f6f6f6;
}

.ce_accordion > .toggler .acc-toggler-state--centered-accordion {
    display: none !important;
}

.ce_accordion > .toggler .acc-toggle-state {
    cursor: pointer;
    display: inline-block;
    font-weight: normal;
    height: 30px;
    margin-top: -15px;
    position: absolute;
    right: 1rem;
    top: 50%;
}

.ce_accordion > .toggler .acc-icon {
    display: inline-block;
    height: 30px;
    -webkit-transition: -webkit-transform 0.2s ease-in-out;
    transition: -webkit-transform 0.2s ease-in-out;
    -o-transition: -o-transform 0.2s ease-in-out;
    -moz-transition: transform 0.2s ease-in-out, -moz-transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out, -moz-transform 0.2s ease-in-out, -o-transform 0.2s ease-in-out;
    width: 30px;
}

.ce_accordion > .toggler .acc-icon svg {
    height: 30px;
    width: 30px;
}

.ce_accordion > .toggler .acc-icon svg path {
    fill: #008237;
    -webkit-transition: fill 0.2s ease-in-out;
    -o-transition: fill 0.2s ease-in-out;
    -moz-transition: fill 0.2s ease-in-out;
    transition: fill 0.2s ease-in-out;
}

.ce_accordion > .toggler:hover,
.ce_accordion > .toggler:focus {
    color: #008237;
}

.ce_accordion > .toggler.js-active {
    color: #afca0b;
    overflow: hidden;
}

.ce_accordion > .toggler.js-active .acc-toggle-state {
    top: 50%;
}

.ce_accordion > .toggler.js-active .acc-icon {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.ce_accordion > .toggler.js-active .acc-icon svg path {
    fill: #afca0b;
}

.ce_accordion > .accordion {
    display: none;
    overflow: hidden;
    padding: 15px;
}

@media screen and (min-width: 50em) {
    .ce_accordion > .accordion > div {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.ce_accordion > .accordion p {
    margin-bottom: 0.4545454545rem;
}

.ce_accordion > .accordion p + h4 {
    margin-top: 1rem;
}

.ce_accordion > .accordion .btn {
    margin-bottom: 1.3636363636rem;
}

@media screen and (min-width: 50em) {
    .ce_accordion > .accordion .btn {
        bottom: 0;
        left: 50%;
        margin-bottom: 0;
        position: absolute;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
    }
}

.ce_accordion.centered-accordion > .toggler {
    text-align: center;
    text-transform: uppercase;
}

.ce_accordion.centered-accordion > .toggler .acc-toggle-state {
    display: none;
}

.ce_accordion.centered-accordion > .toggler .acc-icon {
    display: inline-block;
    height: 30px;
    -webkit-transition: -webkit-transform 0.2s ease-in-out;
    transition: -webkit-transform 0.2s ease-in-out;
    -o-transition: -o-transform 0.2s ease-in-out;
    -moz-transition: transform 0.2s ease-in-out, -moz-transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out, -moz-transform 0.2s ease-in-out, -o-transform 0.2s ease-in-out;
    width: 30px;
}

.ce_accordion.centered-accordion > .toggler .acc-icon svg {
    height: 30px;
    width: 30px;
}

.ce_accordion.centered-accordion > .toggler .acc-icon svg path {
    fill: #008237;
    stroke: #008237;
    stroke-miterlimit: 10;
    -webkit-transition: fill 0.2s ease-in-out;
    -o-transition: fill 0.2s ease-in-out;
    -moz-transition: fill 0.2s ease-in-out;
    transition: fill 0.2s ease-in-out;
}

.ce_accordion.centered-accordion > .toggler .acc-toggler-state--centered-accordion {
    display: inline-block !important;
    cursor: pointer;
    font-weight: normal;
    height: 30px;
    position: relative;
    top: 4px;
}

.ce_accordion.centered-accordion > .toggler.js-active {
    color: #008237;
}

.ce_accordion.centered-accordion > .toggler.js-active .acc-toggle-state {
    top: 8px;
}

.ce_accordion.centered-accordion > .toggler.js-active .acc-icon {
    -webkit-transform: scale(-1);
    -moz-transform: scale(-1);
    -ms-transform: scale(-1);
    -o-transform: scale(-1);
    transform: scale(-1);
}

.ce_accordion.centered-accordion > .toggler.js-active .acc-icon svg path {
    fill: #008237;
}

.ce_accordion.centered-accordion > .accordion {
    margin: 0 auto;
    max-width: 1560px;
}

form {
    padding-bottom: 2rem;
    padding-top: 1.5rem;
}

form:before,
form:after {
    content: " ";
    display: table;
}

form:after {
    clear: both;
}

form p.error {
    font-size: 0.75rem;
    margin-bottom: 5px;
}

form .error-message {
    color: #b2354a;
    display: inline-block;
    font-size: 0.75rem;
}

form .rhrWohnflaecheInput + .error-message {
    margin-top: 10px;
}

.form-padding {
    padding-top: 1.5rem;
}

.formbody ul {
    list-style: disc;
    margin-bottom: 20px;
    padding-left: 20px;
}

.formbody ul li {
    line-height: 1.25;
    margin-bottom: 0.25rem;
}

.formOnlineAntrag {
    padding-top: 20px;
}

.input-upload-field {
    color: #455b64;
    border: 2px solid #455b64;
    -webkit-border-radius: 0;
    border-radius: 0;
    margin-bottom: 0;
    padding: 0 0.5rem;
    font-size: 0.8rem;
    font-family: "font-regular", Arial, sans-serif;
    background-color: transparent;
    opacity: 1;
    position: relative;
    width: 100%;
    display: inline-block;
    margin-bottom: 20px !important;
    width: 100%;
}

@media screen and (min-width: 50em) {
    .input-upload-field {
        font-size: 1rem;
    }
}

.input-upload-field label {
    display: block;
    position: absolute;
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
    font-family: "font-medium", Arial, sans-serif;
    border-radius-top-left: 3px;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    z-index: 1;
    left: 0.5rem;
    top: -5px;
    background: #ffffff;
    padding: 0 4px;
    color: #455b64;
}

.input-upload-field input[type="file"] {
    position: absolute;
    top: 0;
    bottom: 0;
    height: 55px;
    width: 100%;
    opacity: 0;
    z-index: 1;
}

.input-upload-field .fakeButton {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    padding: 18px;
    background-color: #f6f6f6;
    border-left: 1px solid #455b64;
    color: #455b64;
    margin: 0 !important;
}

.input-upload-field .fakeFile {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 80%;
    z-index: -2;
    padding: 0 0 10px 0.5rem;
    overflow: hidden;
    line-height: 55px;
}

.fake-label {
    height: 45px;
    position: relative;
}

.fake-label .label-text {
    cursor: pointer;
    left: 0;
}

.fake-label .label-text span {
    display: inline-block;
    line-height: 1.2;
}

.form-widget.toggleInvisible {
    display: none;
}

.explanation small {
    font-size: 0.8rem;
}

.switch-toggler {
    background: #455b64;
    border: 2px solid #455b64;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    display: inline-block;
    height: 40px;
    position: relative;
    -webkit-transition: 300ms all ease-in-out 50ms;
    -o-transition: 300ms all ease-in-out 50ms;
    -moz-transition: 300ms all ease-in-out 50ms;
    transition: 300ms all ease-in-out 50ms;
    width: 80px;
    z-index: 2;
}

.switch-toggler label {
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
    cursor: pointer;
    z-index: 1;
}

.switch-toggler label .toggler-icon {
    height: 30px;
    width: 30px;
    background: #ffffff;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    position: absolute;
    top: 3px;
    left: 3px;
    -webkit-transition: 300ms all ease-in-out 50ms;
    -o-transition: 300ms all ease-in-out 50ms;
    -moz-transition: 300ms all ease-in-out 50ms;
    transition: 300ms all ease-in-out 50ms;
}

.switch-toggler label .toggler-icon::before {
    content: "";
    height: 30px;
    width: 3px;
    position: absolute;
    top: -webkit-calc(50% - 15px);
    top: -moz-calc(50% - 15px);
    top: calc(50% - 15px);
    left: -webkit-calc(50% - 1.5px);
    left: -moz-calc(50% - 1.5px);
    left: calc(50% - 1.5px);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.switch-toggler label .toggler-icon::after {
    content: "";
    height: 3px;
    width: 30px;
    position: absolute;
    top: -webkit-calc(50% - 1.5px);
    top: -moz-calc(50% - 1.5px);
    top: calc(50% - 1.5px);
    left: -webkit-calc(50% - 15px);
    left: -moz-calc(50% - 15px);
    left: calc(50% - 15px);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.switch-toggler label .toggler-icon::before,
.switch-toggler label .toggler-icon::after {
    background: transparent;
}

.label-text {
    cursor: pointer;
    display: block;
    position: absolute;
    left: 100px;
    top: 50%;
    width: -webkit-calc(100% - 117px);
    width: -moz-calc(100% - 117px);
    width: calc(100% - 117px);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 0.8rem;
    line-height: 1.12;
}

@media screen and (min-width: 50em) {
    .label-text {
        font-size: 1rem;
    }
}

@media screen and (min-width: 80em) {
    .label-text {
        font-size: 1rem;
        width: auto;
    }
}

.checkbox_container > span {
    position: relative;
}

input[type="checkbox"] {
    display: none;
}

input[type="checkbox"]:checked ~ .switch-toggler {
    background: #455b64;
}

input[type="checkbox"]:checked ~ .switch-toggler label .toggler-icon {
    background: #afca0b;
    left: 43px;
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
    -webkit-transition: 300ms all ease-in-out 50ms;
    -o-transition: 300ms all ease-in-out 50ms;
    -moz-transition: 300ms all ease-in-out 50ms;
    transition: 300ms all ease-in-out 50ms;
}

input[type="checkbox"]:checked ~ .switch-toggler label .toggler-icon:before {
    background: white;
    height: 20px;
    top: -webkit-calc(55% - 10px);
    top: -moz-calc(55% - 10px);
    top: calc(55% - 10px);
    left: -webkit-calc(60% - 0.5px);
    left: -moz-calc(60% - 0.5px);
    left: calc(60% - 0.5px);
}

input[type="checkbox"]:checked ~ .switch-toggler label .toggler-icon:after {
    background: white;
    width: 10px;
    top: -webkit-calc(95% - 12px);
    top: -moz-calc(95% - 12px);
    top: calc(95% - 12px);
    left: -webkit-calc(22.5% - 3px);
    left: -moz-calc(22.5% - 3px);
    left: calc(22.5% - 3px);
}

.radio_container {
    margin-bottom: 20px;
    position: relative;
}

.radio_container > span {
    display: block;
    min-height: 1.5rem;
    margin-top: 0.5rem;
}

input[type="radio"] {
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
    margin-left: 1.5rem;
    opacity: 0;
    padding: 0;
    position: absolute;
    width: auto;
}

input[type="radio"] + label {
    cursor: pointer;
    display: block;
    line-height: 1.25;
    min-height: 1.5rem;
    margin-left: 2.25rem;
}

input[type="radio"] + label:before {
    background: #ffffff;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    height: 1.5rem;
    border: 1px solid #cecdcc;
    position: absolute;
    text-align: center;
    vertical-align: top;
    width: 1.5rem;
    content: "";
    position: absolute;
    left: 0;
}

input[type="radio"]:checked + label:before {
    -webkit-box-shadow: inset 0 0 0 0.45rem #afca0b;
    box-shadow: inset 0 0 0 0.45rem #afca0b;
}

.row-eq-height .full-height .fl-wrap-textarea {
    height: 100%;
    padding-bottom: 22px;
}

.row-eq-height .full-height .widget,
.row-eq-height .full-height .fl-wrap-textarea textarea {
    height: 100%;
}

.nice-select {
    display: table;
}

.nice-select > span {
    display: table-cell;
    vertical-align: middle;
}

.nice-select:after {
    background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='icon-arrow-down' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 35.8 31.7' style='enable-background:new 0 0 35.8 31.7;' xml:space='preserve'%3E%3Cpath class='st0' d='M34.4,9.4C34,9,33.4,9,33,9.4L17.8,24.6L2.6,9.4C2.2,9,1.6,9,1.2,9.4c-0.4,0.4-0.4,1,0,1.4l15.9,15.9c0.2,0.2,0.5,0.3,0.7,0.3c0.3,0,0.5-0.1,0.7-0.3l15.9-15.9C34.8,10.5,34.8,9.8,34.4,9.4z'%3E%3C/path%3E%3C/svg%3E");
    border: 0px;
    border-color: transparent;
    bottom: auto;
    color: #455b64;
    content: "";
    display: inline-block;
    font-size: inherit;
    -webkit-font-smoothing: antialiased;
    font-style: normal;
    font-variant: normal;
    height: 15px;
    line-height: 1;
    margin-top: -7px;
    position: absolute;
    right: 1rem;
    speak: none;
    text-indent: 0;
    text-transform: none;
    -webkit-transform: scaleY(1);
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -o-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: inherit;
    -moz-transform-origin: inherit;
    -ms-transform-origin: inherit;
    -o-transform-origin: inherit;
    transform-origin: inherit;
    transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
    top: 50%;
    width: 15px;
}

@media screen and (min-width: 50em) {
    .nice-select:after {
        height: 18px;
        margin-top: -9px;
        width: 18px;
    }
}

@media screen and (min-width: 80em) {
    .nice-select:after {
        height: 20px;
        margin-top: -10px;
        width: 20px;
    }
}

@media screen and (min-width: 120em) {
    .nice-select:after {
        height: 22px;
        margin-top: -11px;
        width: 22px;
    }
}

.nice-select:hover,
.nice-select:focus {
    border-color: #455b64;
}

.nice-select.open {
    border-color: #455b64;
}

.nice-select.open:after {
    -webkit-transform: scaleY(-1);
    -moz-transform: scaleY(-1);
    -ms-transform: scaleY(-1);
    -o-transform: scaleY(-1);
    transform: scaleY(-1);
}

.nice-select > span {
    padding-top: 7px;
}

.nice-select .list {
    border: 1px solid #455b64;
    -webkit-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    max-height: 200px;
    overflow-y: auto;
}

.nice-select ul {
    width: 100%;
}

.nice-select ul li {
    border-top: 1px solid #c7cdd0;
    color: #455b64;
    display: block;
    font-size: inherit;
    line-height: 120% !important;
    list-style: none;
    margin-bottom: 0;
    padding: 10px;
}

.nice-select ul li:first-child {
    border-top: 0;
}

.nice-select .option {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
    font-weight: inherit;
    line-height: 40px;
    list-style: none;
    min-height: 40px;
    outline: none;
    padding-left: 18px;
    padding-right: 29px;
    text-align: left;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s;
}

.nice-select .option:hover {
    background-color: #c7cdd0;
}

.nice-select .option.selected,
.nice-select .option:focus,
.nice-select .option.selected.focus {
    background-color: #b1b1b1;
    color: inherit;
    text-decoration: underline;
}

.nice-select,
.fl-form input.fl-input,
.fl-form select.fl-select,
.fl-form textarea.fl-textarea,
.input-upload-field {
    color: #455b64;
    border: 2px solid #455b64;
    -webkit-border-radius: 0;
    border-radius: 0;
    margin-bottom: 0;
    padding: 0 0.5rem;
    font-size: 0.8rem;
    font-family: "font-regular", Arial, sans-serif;
}

@media screen and (min-width: 50em) {
    .nice-select,
    .fl-form input.fl-input,
    .fl-form select.fl-select,
    .fl-form textarea.fl-textarea,
    .input-upload-field {
        font-size: 1rem;
    }
}

.nice-select {
    margin-bottom: 20px;
    width: 100%;
}

.nice-select,
.fl-form input.fl-input,
.fl-form select.fl-select,
.input-upload-field {
    height: 55px;
}

.fl-form .fl-wrap {
    display: inline-block;
    margin-bottom: 20px;
    width: 100%;
}

.konfigurator-2018 .fl-form .fl-wrap {
    margin-bottom: 0;
}

.fl-form textarea.fl-textarea {
    padding-top: 0.7rem;
}

.fl-wrap-select {
    display: block !important;
    left: 0 !important;
    position: absolute;
    left: 0.5rem;
}

@media screen and (min-width: 50em) {
    .fl-wrap-select {
        margin: 0 !important;
    }
}

@media screen and (min-width: 50em) {
    select {
        display: block !important;
        opacity: 0;
        bottom: 0;
        top: 0;
        position: absolute !important;
        z-index: -1;
    }
}

.fl-form .fl-has-focus input.fl-input,
.fl-form .fl-has-focus select.fl-select,
.fl-form .fl-has-focus textarea.fl-textarea {
    color: #455b64;
    border-color: #455b64;
}

.fl-form .fl-is-active input.fl-input,
.fl-form .fl-is-active select.fl-select,
.fl-form .fl-is-active textarea.fl-textarea {
    color: #455b64;
    border-color: #455b64;
    padding-top: 7px;
}

.fl-form .fl-is-active textarea.fl-textarea {
    padding-top: 14px;
}

.fl-form input.fl-input.error,
.fl-form select.fl-select.error,
.fl-form textarea.fl-textarea.error,
.nice-select.error {
    color: #b2354a;
    border-color: #b2354a;
}

.fl-form label.fl-label {
    font-family: "font-medium", Arial, sans-serif;
    left: 0.5rem;
    top: -5px;
    background: #ffffff;
    padding: 0 4px;
}

.firefox .fl-form label.fl-label {
    top: -7px;
}

.fl-wrap.fl-wrap-select label.fl-label {
    opacity: 1;
    visibility: visible;
}

.fl-form .fl-is-active label.fl-label {
    color: #455b64;
}

.fl-form .fl-has-focus label.fl-label {
    color: #455b64;
}

.fl-form .fl-is-required:before {
    color: #455b64;
}

.widget-hint {
    font-size: 0.8rem;
    line-height: 1.5;
}

.widget-hint > strong {
    display: inline-block;
    font-family: "font-medium", Arial, sans-serif;
    font-size: 1rem;
    margin-bottom: 12px;
}

.form-widget {
    margin-bottom: 20px;
}

.form-widget fieldset > span {
    display: block;
    height: 40px;
    position: relative;
}

.form-widget.form-widget-error > p.error {
    display: none;
}

.widget-space {
    margin-bottom: 30px;
}

.widget-space:before,
.widget-space:after {
    content: " ";
    display: table;
}

.widget-space:after {
    clear: both;
}

@media screen and (min-width: 50em) {
    .widget-space {
        margin-bottom: 40px;
    }
}

.autocomplete-suggestions {
    background: #ffffff;
    border: 1px solid #455b64;
    border-width: 0 1px 1px 1px;
    overflow: scroll;
}

.autocomplete-suggestions .autocomplete-suggestion {
    border-top: 1px solid #c7cdd0;
    padding: 10px 29px 10px 18px;
    -webkit-transition: background-color 0.25s ease-in-out;
    -o-transition: background-color 0.25s ease-in-out;
    -moz-transition: background-color 0.25s ease-in-out;
    transition: background-color 0.25s ease-in-out;
}

.autocomplete-suggestions .autocomplete-suggestion:hover {
    background-color: #c7cdd0;
}

.autocomplete-suggestions .autocomplete-suggestion:first-child {
    border-top: 0;
}

.rangeInput {
    margin: 70px 0 22px;
    padding: 0 55px 0 50px;
    position: relative;
    width: 100%;
}

@media screen and (min-width: 50em) {
    .rangeInput {
        padding: 0 110px 0 110px;
    }
}

.rangeInput .range-content {
    position: relative;
    width: 100%;
}

.rangeInput .range-icon {
    left: 7px;
    margin-top: -21px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}

.rangeInput .range-icon svg {
    height: 35px;
    width: 35px;
}

@media screen and (min-width: 50em) {
    .rangeInput .range-icon svg {
        height: 70px;
        width: 70px;
    }
}

.rangeInput .range-icon svg .st0 {
    fill: none;
    stroke: #afca0b;
    stroke-width: 2;
    stroke-linejoin: round;
}

.rangeInput .range-icon.icon-right {
    left: auto;
    right: 0;
}

.rangeInput .range-icon.icon-right svg {
    height: 50px;
    width: 50px;
}

@media screen and (min-width: 50em) {
    .rangeInput .range-icon.icon-right svg {
        height: 100px;
        width: 100px;
    }
}

.rangeInput label {
    background: #afca0b;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    color: #ffffff;
    font-size: 1rem;
    padding: 16px 15px 10px;
    top: -68px;
    left: 0;
    position: absolute;
}

.rangeInput label:after {
    border-style: solid;
    border-left-color: #afca0b;
    border-width: 12px;
    color: transparent;
    content: "";
    height: 0;
    left: 8px;
    right: auto;
    top: 34px;
    position: absolute;
    width: 0;
    z-index: -1;
}

.rangeInput .range-description {
    font-size: 1rem;
    margin-top: 10px;
    display: inline-block;
}

input[type="range"] {
    -webkit-appearance: none;
    margin: 15px 0;
    padding: 0;
    width: 100%;
}

input[type="range"]:focus {
    outline: none;
}

input[type="range"]::-webkit-slider-runnable-track {
    width: 100%;
    height: 5px;
    cursor: pointer;
    animate: 0.2s;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: #ffffff;
    -webkit-border-radius: 1.3px;
    border-radius: 1.3px;
    border: 5px solid #afca0b;
}

input[type="range"]::-webkit-slider-thumb {
    border: 5px solid #afca0b;
    height: 30px;
    width: 30px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #afca0b;
    cursor: pointer;
    -webkit-appearance: none;
    margin-top: -14px;
}

input[type="range"]:focus::-webkit-slider-runnable-track {
    background: #afca0b;
}

input[type="range"]::-moz-range-track {
    width: 100%;
    height: 5px;
    cursor: pointer;
    animate: 0.2s;
    box-shadow: none;
    background: #afca0b;
    border-radius: 1.3px;
    border: 0.2px solid #afca0b;
}

input[type="range"]::-moz-range-thumb {
    border: 1px solid #afca0b;
    height: 30px;
    width: 30px;
    border-radius: 50%;
    background: #afca0b;
    cursor: pointer;
}

input[type="range"]::-ms-track {
    width: 100%;
    height: 3px;
    cursor: pointer;
    animate: 0.2s;
    background: transparent;
    border-color: transparent;
    border-width: 16px 0;
    color: transparent;
}

input[type="range"]::-ms-fill-lower {
    background: #ffffff;
    border: 5px solid #afca0b;
    border-radius: 2.6px;
}

input[type="range"]::-ms-fill-upper {
    background: #afca0b;
    border: 5px solid #afca0b;
    border-radius: 2.6px;
}

input[type="range"]::-ms-thumb {
    border: 1px solid #afca0b;
    height: 30px;
    width: 30px;
    border-radius: 50%;
    background: #afca0b;
    cursor: pointer;
}

input[type="range"]:focus::-ms-fill-lower {
    background: #afca0b;
}

input[type="range"]:focus::-ms-fill-upper {
    background: #afca0b;
}

.teaser-stage .teaser-content .teaser-tiles .row .col-xs-12:nth-child(3n) .teaser-tile:after {
    background-color: #008237;
    color: #ffffff;
    content: "Neue Tarife";
    font-size: 14px;
    line-height: 1;
    padding: 5px 6px 3px;
    position: absolute;
    right: 10px;
    top: 10px;
}

@media screen and (min-width: 50em) {
    .teaser-stage .teaser-content .teaser-tiles .row .col-xs-12:nth-child(3n) .teaser-tile:after {
        -webkit-transform: rotate(20deg);
        -moz-transform: rotate(20deg);
        -ms-transform: rotate(20deg);
        -o-transform: rotate(20deg);
        transform: rotate(20deg);
        top: 22px;
    }
}

.teaser-stage {
    margin-bottom: 2rem;
    position: relative;
}

.teaser-stage .teaser-image {
    line-height: 0;
}

.teaser-stage .teaser-image picture {
    display: inline-block;
    width: 100%;
}

.teaser-stage .teaser-image img {
    height: auto;
    width: 100%;
}

.teaser-stage .teaser-content {
    bottom: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.teaser-stage .teaser-content > div.row {
    position: relative;
    top: 20px;
}

@media screen and (min-width: 30em) {
    .teaser-stage .teaser-content > div.row {
        top: 60px;
    }
}

@media screen and (min-width: 50em) {
    .teaser-stage .teaser-content > div.row {
        top: 70px;
    }
}

@media screen and (min-width: 80em) {
    .teaser-stage .teaser-content {
        left: 50%;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
        max-width: 1560px;
    }

    .teaser-stage .teaser-content > div.row {
        top: 115px;
    }
}

@media screen and (min-width: 120em) {
    .teaser-stage .teaser-content > div.row {
        top: 125px;
    }
}

.teaser-stage .teaser-content .headline-wrapper-H1,
.teaser-stage .teaser-content .headline-wrapper-H2 {
    margin-left: 35px;
}

.teaser-stage .teaser-tiles {
    bottom: 0;
    position: absolute;
    -webkit-transition: margin 0.25s ease-out;
    -o-transition: margin 0.25s ease-out;
    -moz-transition: margin 0.25s ease-out;
    transition: margin 0.25s ease-out;
    width: 100%;
}

@media screen and (min-width: 23.4375em) {
    .teaser-stage .teaser-tiles {
        bottom: 15px;
    }
}

@media screen and (min-width: 30em) {
    .teaser-stage .teaser-tiles {
        bottom: 15%;
    }
}

@media screen and (min-width: 50em) {
    .teaser-stage .teaser-tiles {
        bottom: 5%;
        position: absolute;
    }
}

@media screen and (min-width: 80em) {
    .teaser-stage .teaser-tiles {
        bottom: 10%;
        padding: 0 15px;
    }
}

.teaser-stage .teaser-tiles .row > div:nth-child(1n) .teaser-tile.animated {
    -webkit-animation-delay: 0.5s;
    -moz-animation-delay: 0.5s;
    -o-animation-delay: 0.5s;
    animation-delay: 0.5s;
}

.teaser-stage .teaser-tiles .row > div:nth-child(2n) .teaser-tile.animated {
    -webkit-animation-delay: 1s;
    -moz-animation-delay: 1s;
    -o-animation-delay: 1s;
    animation-delay: 1s;
}

.teaser-stage .teaser-tiles .row > div:nth-child(3n) .teaser-tile.animated {
    -webkit-animation-delay: 1.5s;
    -moz-animation-delay: 1.5s;
    -o-animation-delay: 1.5s;
    animation-delay: 1.5s;
}

.teaser-stage .teaser-tiles .teaser-tile {
    background-color: #ffffff;
    background-color: rgba(255, 255, 255, 0.9);
    height: 100%;
    margin-bottom: 4px;
    opacity: 0;
    overflow: hidden;
    padding: 5px 10px 5px 15px;
    position: relative;
    -webkit-transition: background-color 0.25s ease-out;
    -o-transition: background-color 0.25s ease-out;
    -moz-transition: background-color 0.25s ease-out;
    transition: background-color 0.25s ease-out;
    width: 100%;
}

@media screen and (min-width: 30em) {
    .teaser-stage .teaser-tiles .teaser-tile {
        margin-bottom: 9px;
        padding: 10px;
    }
}

@media screen and (min-width: 80em) {
    .teaser-stage .teaser-tiles .teaser-tile {
        margin-bottom: 0;
        padding: 10px 15px 0 10px;
    }
}

.teaser-stage .teaser-tiles .teaser-tile a {
    color: #455b64;
    outline: none;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon {
    display: none;
}

@media screen and (min-width: 30em) {
    .teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon {
        display: block;
        float: left;
        height: 90px;
        width: 90px;
    }
}

@media screen and (min-width: 50em) {
    .teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon {
        margin-top: 0.5rem;
        height: 50px;
        width: 50px;
    }
}

@media screen and (min-width: 80em) {
    .teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon {
        margin-top: 0;
        height: 140px;
        width: 140px;
    }
}

@media screen and (min-width: 30em) {
    .teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg {
        height: 90px;
        width: 90px;
    }
}

@media screen and (min-width: 50em) {
    .teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg {
        height: 50px;
        width: 50px;
    }
}

@media screen and (min-width: 80em) {
    .teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg {
        height: 140px;
        width: 140px;
    }
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg#icon-hausrat .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg#icon-hausrat .st1 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg#icon-haftpflicht .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg#icon-haftpflicht .st1 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg#icon-glas .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg#icon-schadenmeldung .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg#icon-schadenmeldung .st1 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg#icon-kontoaenderung .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg#icon-kontoaenderung .st1 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg#icon-adressaenderung .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--icon svg#icon-adressaenderung .st1 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--text {
    display: block;
    margin-left: 0;
    padding-top: 5px;
}

@media screen and (min-width: 30em) {
    .teaser-stage .teaser-tiles .teaser-tile .teaser-tile--text {
        margin-left: 90px;
        padding-top: 0.75rem;
    }
}

@media screen and (min-width: 50em) {
    .teaser-stage .teaser-tiles .teaser-tile .teaser-tile--text {
        margin-left: 60px;
    }
}

@media screen and (min-width: 80em) {
    .teaser-stage .teaser-tiles .teaser-tile .teaser-tile--text {
        margin-left: 50px;
    }
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--text > p {
    font-size: 18px;
    line-height: 1.2;
    margin-bottom: 0;
}

@media screen and (min-width: 30em) {
    .teaser-stage .teaser-tiles .teaser-tile .teaser-tile--text > p {
        font-size: inherit;
    }
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--text > h3,
.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--text > p {
    -webkit-transition: color 0.25s ease-out;
    -o-transition: color 0.25s ease-out;
    -moz-transition: color 0.25s ease-out;
    transition: color 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile .teaser-tile--text > h3 {
    line-height: 0.8;
    margin-bottom: 0.5rem;
}

@media screen and (min-width: 30em) {
    .teaser-stage .teaser-tiles .teaser-tile .teaser-tile--text > h3 {
        line-height: 1;
    }
}

.teaser-stage .teaser-tiles .teaser-tile:hover,
.teaser-stage .teaser-tiles .teaser-tile:focus {
    background-color: #afca0b;
    background-color: rgba(175, 202, 11, 0.9);
}

.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-hausrat .st0,
.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-haftpflicht .st0,
.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-glas .st0,
.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-schadenmeldung .st0,
.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-kontoaenderung .st0,
.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-adressaenderung .st0,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-hausrat .st0,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-haftpflicht .st0,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-glas .st0,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-schadenmeldung .st0,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-kontoaenderung .st0,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-adressaenderung .st0 {
    stroke: #ffffff;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-hausrat .st1,
.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-haftpflicht .st1,
.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-glas .st1,
.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-schadenmeldung .st1,
.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-kontoaenderung .st1,
.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--icon svg#icon-adressaenderung .st1,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-hausrat .st1,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-haftpflicht .st1,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-glas .st1,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-schadenmeldung .st1,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-kontoaenderung .st1,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--icon svg#icon-adressaenderung .st1 {
    stroke: #ffffff;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--text h3,
.teaser-stage .teaser-tiles .teaser-tile:hover .teaser-tile--text p,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--text h3,
.teaser-stage .teaser-tiles .teaser-tile:focus .teaser-tile--text p {
    color: #ffffff;
}

.top-teaser {
    margin-bottom: 2rem;
    position: relative;
}

@media screen and (min-width: 50em) {
    .top-teaser {
        margin-bottom: 30px;
    }
}

.top-teaser .top-teaser-image {
    display: inline-block;
}

.top-teaser .top-teaser-image img {
    height: auto;
    width: 100%;
}

.top-teaser .top-teaser-content {
    margin: 0 auto;
    max-width: 1560px;
}

.top-teaser .top-teaser-headline {
    margin-top: -41px;
    overflow: hidden;
    position: relative;
}

@media screen and (min-width: 50em) {
    .top-teaser .top-teaser-headline {
        margin: 0 auto;
        top: 10%;
        position: absolute;
        top: 70px;
    }
}

@media screen and (min-width: 80em) {
    .top-teaser .top-teaser-headline {
        top: 115px;
    }
}

@media screen and (min-width: 120em) {
    .top-teaser .top-teaser-headline {
        top: 125px;
    }
}

.top-teaser .top-teaser-headline .headline-wrapper {
    margin-bottom: 15px;
}

.top-teaser .top-teaser-text {
    color: inherit;
    display: block;
    overflow: hidden;
    margin: 15px auto 0 auto;
    width: 100%;
}

@media screen and (min-width: 80em) {
    .top-teaser .top-teaser-text {
        text-align: center;
        max-width: 1560px;
    }
}

@media screen and (min-width: 80em) {
    .top-teaser .top-teaser-text {
        margin: 30px auto 0 auto;
    }
}

.tile-teaser {
    background-color: #ffffff;
    border: 2px solid #008237;
    height: -webkit-calc(100% - 15px);
    height: -moz-calc(100% - 15px);
    height: calc(100% - 15px);
    margin-bottom: 15px;
    overflow: hidden;
    padding: 5px 10px 5px 15px;
    position: relative;
    -webkit-transition: background-color 0.25s ease-out, border-color 0.25s ease-out;
    -o-transition: background-color 0.25s ease-out, border-color 0.25s ease-out;
    -moz-transition: background-color 0.25s ease-out, border-color 0.25s ease-out;
    transition: background-color 0.25s ease-out, border-color 0.25s ease-out;
    width: 100%;
}

.tile-teaser > a {
    display: block;
    overflow: hidden;
}

.tile-teaser > a:focus {
    outline: none;
}

.tile-teaser .tile-teaser--icon {
    display: none;
}

@media screen and (min-width: 30em) {
    .tile-teaser .tile-teaser--icon {
        display: block;
        float: left;
        height: 90px;
        width: 90px;
    }
}

@media screen and (min-width: 50em) {
    .tile-teaser .tile-teaser--icon {
        margin-top: 0.5rem;
        height: 50px;
        width: 50px;
    }
}

@media screen and (min-width: 80em) {
    .tile-teaser .tile-teaser--icon {
        margin-top: 0;
        height: 100px;
        width: 100px;
    }
}

@media screen and (min-width: 30em) {
    .tile-teaser .tile-teaser--icon svg {
        height: 90px;
        width: 90px;
    }
}

@media screen and (min-width: 50em) {
    .tile-teaser .tile-teaser--icon svg {
        height: 50px;
        width: 50px;
    }
}

@media screen and (min-width: 80em) {
    .tile-teaser .tile-teaser--icon svg {
        height: 100px;
        width: 100px;
    }
}

.tile-teaser .tile-teaser--icon svg#icon-kontakt .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.tile-teaser .tile-teaser--icon svg#icon-anregung .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.tile-teaser .tile-teaser--icon svg#icon-anregung .st1 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.tile-teaser .tile-teaser--icon svg#icon-hausrat .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.tile-teaser .tile-teaser--icon svg#icon-hausrat .st1 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.tile-teaser .tile-teaser--icon svg#icon-glas .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.tile-teaser .tile-teaser--icon svg#icon-haftpflicht .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.tile-teaser .tile-teaser--icon svg#icon-haftpflicht .st1 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.tile-teaser .tile-teaser--icon svg#icon-service .st0 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.tile-teaser .tile-teaser--icon svg#icon-service .st1 {
    fill: none;
    stroke: #008237;
    stroke-width: 2;
    stroke-linejoin: round;
    -webkit-transition: stroke 0.25s ease-out;
    -o-transition: stroke 0.25s ease-out;
    -moz-transition: stroke 0.25s ease-out;
    transition: stroke 0.25s ease-out;
}

.tile-teaser .tile-teaser--text {
    display: block;
    margin-left: 0;
    padding-top: 5px;
}

@media screen and (min-width: 30em) {
    .tile-teaser .tile-teaser--text {
        margin-left: 95px;
        padding-top: 0.75rem;
    }
}

@media screen and (min-width: 50em) {
    .tile-teaser .tile-teaser--text {
        margin-left: 60px;
    }
}

@media screen and (min-width: 80em) {
    .tile-teaser .tile-teaser--text {
        margin-left: 105px;
    }
}

.tile-teaser .tile-teaser--text > h3,
.tile-teaser .tile-teaser--text > p {
    color: #008237;
}

.tile-teaser .tile-teaser--text > p {
    font-size: 18px;
    line-height: 1.2;
    margin-bottom: 0;
    color: #455b64;
}

@media screen and (min-width: 30em) {
    .tile-teaser .tile-teaser--text > p {
        font-size: inherit;
    }
}

.tile-teaser .tile-teaser--text > h3,
.tile-teaser .tile-teaser--text > p {
    -webkit-transition: color 0.25s ease-out;
    -o-transition: color 0.25s ease-out;
    -moz-transition: color 0.25s ease-out;
    transition: color 0.25s ease-out;
}

.tile-teaser:hover,
.tile-teaser:focus {
    background-color: #afca0b;
    background-color: rgba(175, 202, 11, 0.9);
    border: 2px solid #afca0b;
}

.tile-teaser:hover .tile-teaser--icon svg#icon-kontakt .st0,
.tile-teaser:hover .tile-teaser--icon svg#icon-anregung .st0,
.tile-teaser:hover .tile-teaser--icon svg#icon-hausrat .st0,
.tile-teaser:hover .tile-teaser--icon svg#icon-glas .st0,
.tile-teaser:hover .tile-teaser--icon svg#icon-haftpflicht .st0,
.tile-teaser:hover .tile-teaser--icon svg#icon-service .st0,
.tile-teaser:focus .tile-teaser--icon svg#icon-kontakt .st0,
.tile-teaser:focus .tile-teaser--icon svg#icon-anregung .st0,
.tile-teaser:focus .tile-teaser--icon svg#icon-hausrat .st0,
.tile-teaser:focus .tile-teaser--icon svg#icon-glas .st0,
.tile-teaser:focus .tile-teaser--icon svg#icon-haftpflicht .st0,
.tile-teaser:focus .tile-teaser--icon svg#icon-service .st0 {
    stroke: #ffffff;
}

.tile-teaser:hover .tile-teaser--icon svg#icon-kontakt .st1,
.tile-teaser:hover .tile-teaser--icon svg#icon-anregung .st1,
.tile-teaser:hover .tile-teaser--icon svg#icon-hausrat .st1,
.tile-teaser:hover .tile-teaser--icon svg#icon-glas .st1,
.tile-teaser:hover .tile-teaser--icon svg#icon-haftpflicht .st1,
.tile-teaser:hover .tile-teaser--icon svg#icon-service .st1,
.tile-teaser:focus .tile-teaser--icon svg#icon-kontakt .st1,
.tile-teaser:focus .tile-teaser--icon svg#icon-anregung .st1,
.tile-teaser:focus .tile-teaser--icon svg#icon-hausrat .st1,
.tile-teaser:focus .tile-teaser--icon svg#icon-glas .st1,
.tile-teaser:focus .tile-teaser--icon svg#icon-haftpflicht .st1,
.tile-teaser:focus .tile-teaser--icon svg#icon-service .st1 {
    stroke: #ffffff;
}

.tile-teaser:hover .tile-teaser--text h3,
.tile-teaser:hover .tile-teaser--text p,
.tile-teaser:focus .tile-teaser--text h3,
.tile-teaser:focus .tile-teaser--text p {
    color: #ffffff;
    -webkit-transition: color 0.25s ease-out;
    -o-transition: color 0.25s ease-out;
    -moz-transition: color 0.25s ease-out;
    transition: color 0.25s ease-out;
}

.content-teaser {
    clear: both;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 100% 100%;
    grid-template-columns: 100% 100%;
    grid-template-areas: "left right";
    padding-bottom: 2rem;
}

.content-teaser > div {
    opacity: 0;
    padding: 0 15px 15px 15px;
    width: 100%;
}

@media screen and (min-width: 1560px) {
    .win .content-teaser > div:first-child {
        padding: 0 15px 15px 10px;
    }

    .win .content-teaser > div:last-child {
        padding: 0 10px 15px 15px;
    }
}

.content-teaser > div img {
    height: auto;
    width: 100%;
}

.content-teaser > div .headline-wrapper-H1,
.content-teaser > div .headline-wrapper-H2 {
    display: inline-block;
    margin-bottom: 15px;
    margin-top: 0;
}

@media screen and (min-width: 30em) {
    .content-teaser > div {
        padding: 0 15px 15px 15px;
    }

    .content-teaser > div .headline-wrapper-H1,
    .content-teaser > div .headline-wrapper-H2 {
        margin-bottom: 15px;
    }
}

@media screen and (min-width: 50em) {
    .content-teaser > div .headline-wrapper-H1,
    .content-teaser > div .headline-wrapper-H2 {
        margin-top: 30px;
    }
}

.content-teaser > div:first-child {
    -ms-grid-column-span: 1;
    -ms-grid-row: 1;
    grid-row: 1;
}

.content-teaser > div:last-child {
    -ms-grid-column-span: 1;
    -ms-grid-row: 2;
    grid-row: 2;
}

@media screen and (min-width: 50em) {
    .content-teaser {
        -ms-grid-columns: -webkit-calc((100vw - 1560px) / 2) 1fr 1fr -webkit-calc((100vw - 1560px) / 2);
        -ms-grid-columns: -moz-calc((100vw - 1560px) / 2) 1fr 1fr -moz-calc((100vw - 1560px) / 2);
        -ms-grid-columns: calc((100vw - 1560px) / 2) 1fr 1fr calc((100vw - 1560px) / 2);
        grid-template-columns: -webkit-calc((100vw - 1560px) / 2) 1fr 1fr -webkit-calc((100vw - 1560px) / 2);
        grid-template-columns: -moz-calc((100vw - 1560px) / 2) 1fr 1fr -moz-calc((100vw - 1560px) / 2);
        grid-template-columns: calc((100vw - 1560px) / 2) 1fr 1fr calc((100vw - 1560px) / 2);
        grid-template-areas: "sideleft left right sideright";
    }

    .content-teaser:before,
    .content-teaser:after {
        content: "";
    }

    .content-teaser > div:first-child {
        -ms-grid-row: 1;
        grid-row: 1;
        -ms-grid-column: 2;
        grid-area: left;
    }

    .content-teaser > div:last-child {
        -ms-grid-row: 1;
        grid-row: 1;
        -ms-grid-column: 3;
        grid-area: right;
    }
}

@media screen and (min-width: 1920px) {
    .content-teaser {
        -ms-grid-columns: -webkit-calc((1920px - 1560px)/2) 1fr 1fr -webkit-calc((1920px - 1560px)/2);
        -ms-grid-columns: -moz-calc((1920px - 1560px)/2) 1fr 1fr -moz-calc((1920px - 1560px)/2);
        -ms-grid-columns: calc((1920px - 1560px) / 2) 1fr 1fr calc((1920px - 1560px) / 2);
        grid-template-columns: -webkit-calc((1920px - 1560px)/2) 1fr 1fr -webkit-calc((1920px - 1560px)/2);
        grid-template-columns: -moz-calc((1920px - 1560px)/2) 1fr 1fr -moz-calc((1920px - 1560px)/2);
        grid-template-columns: calc((1920px - 1560px) / 2) 1fr 1fr calc((1920px - 1560px) / 2);
    }
}

.content-teaser--image-left > div:first-child {
    -ms-grid-row: 1;
    grid-row: 1;
    z-index: 1;
}

@media screen and (min-width: 50em) {
    .content-teaser--image-left > div:first-child {
        -ms-grid-row: 1;
        grid-row: 1;
        -ms-grid-column: 2;
        grid-area: left;
    }
}

.content-teaser--image-left > div:last-child {
    -ms-grid-row: 2;
    grid-row: 2;
    margin-top: -50px;
    z-index: 1;
}

@media screen and (min-width: 50em) {
    .content-teaser--image-left > div:last-child {
        -ms-grid-row: 1;
        grid-row: 1;
        -ms-grid-column: 3;
        grid-area: right;
        margin-top: 0;
    }
}

.content-teaser--image-right > div:first-child {
    margin-top: -50px;
    -ms-grid-row: 2;
    grid-row: 2;
    -ms-grid-column: 1;
    z-index: 1;
}

@media screen and (min-width: 50em) {
    .content-teaser--image-right > div:first-child {
        -ms-grid-row: 1;
        grid-row: 1;
        -ms-grid-column: 2;
        margin-top: 0;
    }
}

.content-teaser--image-right > div:last-child {
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-grid-column: 1;
}

@media screen and (min-width: 50em) {
    .content-teaser--image-right > div:last-child {
        -ms-grid-column: 3;
        grid-area: right;
    }
}

@media screen and (min-width: 80em) {
    .content-teaser--image-right {
        -ms-grid-columns: -webkit-calc((100vw - 1560px)/2) 1fr 2fr 0;
        -ms-grid-columns: -moz-calc((100vw - 1560px)/2) 1fr 2fr 0;
        -ms-grid-columns: calc((100vw - 1560px) / 2) 1fr 2fr 0;
        grid-template-columns: -webkit-calc((100vw - 1560px)/2) 1fr 2fr 0;
        grid-template-columns: -moz-calc((100vw - 1560px)/2) 1fr 2fr 0;
        grid-template-columns: calc((100vw - 1560px) / 2) 1fr 2fr 0;
    }
}

@media screen and (min-width: 1920px) {
    .content-teaser--image-right {
        -ms-grid-columns: -webkit-calc((1920px - 1560px)/2) 1fr 2fr 0;
        -ms-grid-columns: -moz-calc((1920px - 1560px)/2) 1fr 2fr 0;
        -ms-grid-columns: calc((1920px - 1560px) / 2) 1fr 2fr 0;
        grid-template-columns: -webkit-calc((1920px - 1560px)/2) 1fr 2fr 0;
        grid-template-columns: -moz-calc((1920px - 1560px)/2) 1fr 2fr 0;
        grid-template-columns: calc((1920px - 1560px) / 2) 1fr 2fr 0;
    }
}

.contact-teaser .contact-teaser--image {
    margin-bottom: 15px;
}

.contact-teaser .contact-teaser--image img {
    height: auto;
    width: 100%;
}

@media screen and (min-width: 30em) {
    .contact-teaser .contact-teaser--image img {
        max-width: 260px;
    }
}

.contact-teaser .contact-teaser--text {
    margin-bottom: 30px;
}

.contact-teaser .btn {
    margin-top: 0;
    padding-left: 15px;
    padding-right: 15px;
    width: auto;
}

.row--product-tiles {
    margin-left: -10px;
    margin-right: -10px;
}

.product-tiles {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
}

.product-tiles .product-tile {
    display: block;
    padding: 10px;
    position: relative;
    width: 100%;
}

@media screen and (min-width: 23.4375em) {
    .product-tiles .product-tile {
        width: 50%;
    }
}

@media screen and (min-width: 30em) {
    .product-tiles .product-tile {
        padding: 15px 10px 0 10px;
    }
}

@media screen and (min-width: 50em) {
    .product-tiles .product-tile {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        -moz-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        width: auto;
    }
}

.product-tiles .product-tile .product-tile--image {
    display: none;
}

@media screen and (min-width: 30em) {
    .product-tiles .product-tile .product-tile--image {
        display: block;
    }
}

.product-tiles .product-tile .product-tile--image img {
    display: block;
    height: auto;
    width: 100%;
}

.product-tiles .product-tile .product-tile--info {
    background: #afca0b;
    color: #ffffff;
    height: 100%;
    padding: 10px;
    text-align: center;
}

.product-tiles .product-tile .product-tile--info.selected {
    -webkit-box-shadow: inset 0 0 0px 3px #008237;
    box-shadow: inset 0 0 0px 3px #008237;
}

@media screen and (min-width: 30em) {
    .product-tiles .product-tile .product-tile--info {
        height: auto;
    }
}

.product-tiles .product-tile .product-tile--info .tooltip .tooltip-link {
    background: #ffffff;
}

.product-tiles .product-tile .product-tile--info .tooltip .tooltip-link:before {
    color: #afca0b;
}

.product-tiles .product-tile .product-tile--info h3 {
    color: #ffffff;
    display: block;
    font-size: 0.75rem;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
}

@media screen and (min-width: 30em) {
    .product-tiles .product-tile .product-tile--info h3 {
        font-size: 0.85rem;
    }
}

@media screen and (min-width: 50em) {
    .product-tiles .product-tile .product-tile--info h3 {
        font-size: 1rem;
    }
}

.product-tiles .product-tile .product-tile--info.selected h3 {
    color: #008237;
}

.product-tiles .product-tile .product-tile--info .price {
    font-family: "font-medium", Arial, sans-serif;
    display: block;
    font-size: 1rem;
    margin-bottom: 0.75rem;
}

@media screen and (min-width: 30em) {
    .product-tiles .product-tile .product-tile--info .price {
        font-size: 1.5rem;
    }
}

@media screen and (min-width: 50em) {
    .product-tiles .product-tile .product-tile--info .price {
        font-size: 2rem;
    }
}

.product-tiles .product-tile .product-tile--info .price-text {
    display: none;
}

.product-tiles .product-tile .product-tile--info .price-text.price-text--block {
    display: block;
    text-align: center !important;
    font-size: 0.75rem;
}

@media screen and (min-width: 30em) {
    .product-tiles .product-tile .product-tile--info .price-text.price-text--block {
        font-size: 0.85rem;
    }
}

@media screen and (min-width: 50em) {
    .product-tiles .product-tile .product-tile--info .price-text.price-text--block {
        font-size: 1rem;
    }
}

.product-tiles .product-tile .product-tile--info .btn {
    display: none;
}

@media screen and (min-width: 600px) {
    .product-tiles .product-tile .product-tile--info .btn {
        display: inline-block;
        margin-top: 0;
        margin-bottom: 0.5rem;
        padding: 13px 10px 10px;
    }

    .firefox .product-tiles .product-tile .product-tile--info .btn {
        padding: 10px 10px 13px;
    }
}

.product-tiles .product-tile .product-tile--info .mobile-btn {
    border-color: #ffffff;
}

.product-tiles .product-tile .product-tile--info .mobile-btn svg path {
    fill: #ffffff;
}

@media screen and (min-width: 600px) {
    .product-tiles .product-tile .product-tile--info .mobile-btn {
        display: none;
    }
}

.rs-table-wrapper {
    margin: 0 auto;
    width: 100%;
    max-width: 1560px;
    /*overwrite accordion style für table*/
    /*rs table styles*/
}

.rs-table-wrapper .ce_accordion > .toggler {
    padding-left: 15px;
    padding-right: 55px;
}

.rs-table-wrapper .ce_accordion > .accordion {
    padding: 0;
}

.rs-table-wrapper .service-overview {
    padding: 15px;
}

.rs-table-wrapper .rs-table-row-header {
    padding: 15px 15px 12px 15px;
    vertical-align: top;
}

.rs-table-wrapper .rs-table-row-header:nth-child(odd):not(.rs-table-header) {
    background: #f6f6f6;
}

.rs-table-wrapper .rs-table-row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
}

.rs-table-wrapper .rs-table-row > div {
    position: relative;
    text-align: left;
    line-height: 1.3;
    text-align: center;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 15px 5px 10px 5px;
    vertical-align: top;
}

@media screen and (min-width: 50em) {
    .rs-table-wrapper .rs-table-row > div {
        padding: 15px 15px 12px 15px;
    }
}

.rs-table-wrapper .rs-table-row > div svg#icon-check,
.rs-table-wrapper .rs-table-row > div svg#icon-dash {
    height: 20px;
    width: 20px;
}

.rs-table-wrapper .rs-table-row > div svg#icon-check path,
.rs-table-wrapper .rs-table-row > div svg#icon-dash path {
    fill: #455b64;
}

.rs-table-wrapper .rs-table-row.rs-table-header {
    background: #ffffff;
    -webkit-transition: position 0.25s ease-in-out;
    -o-transition: position 0.25s ease-in-out;
    -moz-transition: position 0.25s ease-in-out;
    transition: position 0.25s ease-in-out;
    overflow: hidden;
}

.rs-table-wrapper .rs-table-row.rs-table-header .product-tile {
    padding: 15px 2px 12px 2px;
}

@media screen and (min-width: 30em) {
    .rs-table-wrapper .rs-table-row.rs-table-header .product-tile {
        padding: 15px 5px 12px 5px;
    }
}

@media screen and (min-width: 80em) {
    .rs-table-wrapper .rs-table-row.rs-table-header .product-tile {
        padding: 15px 15px 12px 15px;
    }
}

.rs-table-wrapper .rs-table-row.rs-table-header .table-header-image,
.rs-table-wrapper .rs-table-row.rs-table-header .product-tile--image {
    display: none;
}

@media screen and (min-width: 30em) {
    .rs-table-wrapper .rs-table-row.rs-table-header .table-header-image,
    .rs-table-wrapper .rs-table-row.rs-table-header .product-tile--image {
        display: block;
    }
}

.rs-table-wrapper .rs-table-row.rs-table-header .table-header-image img,
.rs-table-wrapper .rs-table-row.rs-table-header .product-tile--image img {
    display: block;
    height: auto;
    width: 100%;
}

.rs-table-wrapper .rs-table-row.rs-table-header .hightlight-label {
    display: inline-block;
    height: 40px;
    left: 0;
    right: auto;
    position: absolute;
    top: 25px;
}

@media screen and (min-width: 50em) {
    .rs-table-wrapper .rs-table-row.rs-table-header .hightlight-label {
        left: 10px;
    }
}

@media screen and (min-width: 80em) {
    .rs-table-wrapper .rs-table-row.rs-table-header .hightlight-label {
        left: 5px;
    }
}

.rs-table-wrapper .rs-table-row.rs-table-header .hightlight-label span {
    background: #455b64;
    color: #ffffff;
    display: block;
    font-size: 0.75rem;
    font-family: "font-medium";
    line-height: 1.25;
    padding: 8px 5px 5px 7px;
    position: relative;
}

.firefox .rs-table-wrapper .rs-table-row.rs-table-header .hightlight-label span {
    padding: 3px 5px 5px 7px;
}

.rs-table-wrapper .rs-table-row.rs-table-header .hightlight-label:before {
    border-style: solid;
    border-right-color: #33434a;
    border-width: 5px;
    color: transparent;
    content: "";
    height: 0;
    left: -5px;
    right: auto;
    top: 26px;
    position: absolute;
    width: 0;
}

.firefox .rs-table-wrapper .rs-table-row.rs-table-header .hightlight-label:before {
    top: 22px;
    left: -4px;
}

@media screen and (min-width: 80em) {
    .rs-table-wrapper .rs-table-row.rs-table-header .hightlight-label:before {
        border-width: 10px;
        left: -10px;
        top: 23px;
    }

    .firefox .rs-table-wrapper .rs-table-row.rs-table-header .hightlight-label:before {
        left: -8px;
        top: 20px;
    }
}

.rs-table-wrapper .rs-table-row.rs-table-header .table-header-info,
.rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info {
    background: #afca0b;
    color: #ffffff;
    padding: 5px;
    height: 100%;
}

@media screen and (min-width: 30em) {
    .rs-table-wrapper .rs-table-row.rs-table-header .table-header-info,
    .rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info {
        padding: 10px;
    }
}

.rs-table-wrapper .rs-table-row.rs-table-header .table-header-info h3,
.rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info h3 {
    color: #ffffff;
    display: block;
    font-size: 0.85rem;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
}

@media screen and (min-width: 30em) {
    .rs-table-wrapper .rs-table-row.rs-table-header .table-header-info h3,
    .rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info h3 {
        font-size: 1rem;
    }
}

.rs-table-wrapper .rs-table-row.rs-table-header .table-header-info .price,
.rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info .price {
    font-family: "font-medium", Arial, sans-serif;
    display: block;
    font-size: 0.85rem;
    margin-bottom: 0.75rem;
}

@media screen and (min-width: 30em) {
    .rs-table-wrapper .rs-table-row.rs-table-header .table-header-info .price,
    .rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info .price {
        font-size: 1rem;
    }
}

@media screen and (min-width: 50em) {
    .rs-table-wrapper .rs-table-row.rs-table-header .table-header-info .price,
    .rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info .price {
        font-size: 2rem;
    }
}

.rs-table-wrapper .rs-table-row.rs-table-header .table-header-info .price-text,
.rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info .price-text {
    display: none;
}

.rs-table-wrapper .rs-table-row.rs-table-header .table-header-info .btn,
.rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info .btn {
    display: none;
}

@media screen and (min-width: 820px) {
    .rs-table-wrapper .rs-table-row.rs-table-header .table-header-info .btn,
    .rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info .btn {
        display: inline-block;
        margin-top: 0;
        margin-bottom: 0.5rem;
        padding: 13px 10px 10px;
    }

    .firefox .rs-table-wrapper .rs-table-row.rs-table-header .table-header-info .btn,
    .firefox .rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info .btn {
        padding: 10px 10px 13px;
    }
}

.rs-table-wrapper .rs-table-row.rs-table-header .table-header-info .mobile-btn,
.rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info .mobile-btn {
    border-color: #ffffff;
}

.rs-table-wrapper .rs-table-row.rs-table-header .table-header-info .mobile-btn svg path,
.rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info .mobile-btn svg path {
    fill: #ffffff;
}

@media screen and (min-width: 820px) {
    .rs-table-wrapper .rs-table-row.rs-table-header .table-header-info .mobile-btn,
    .rs-table-wrapper .rs-table-row.rs-table-header .product-tile--info .mobile-btn {
        display: none;
    }
}

.rs-table-wrapper .rs-table-row.rs-table-header > div.hv-configurator,
.rs-table-wrapper .rs-table-row.rs-table-header > div.product-tile {
    position: relative;
}

.rs-table-wrapper .rs-table-row.rs-table-header > div.hv-configurator .table-header-info,
.rs-table-wrapper .rs-table-row.rs-table-header > div.hv-configurator .product-tile--info,
.rs-table-wrapper .rs-table-row.rs-table-header > div.product-tile .table-header-info,
.rs-table-wrapper .rs-table-row.rs-table-header > div.product-tile .product-tile--info {
    -webkit-box-shadow: inset 0 2px 0 #455b64;
    box-shadow: inset 0 2px 0 #455b64;
}

@media screen and (min-width: 30em) {
    .rs-table-wrapper .rs-table-row.rs-table-header > div.hv-configurator .table-header-info,
    .rs-table-wrapper .rs-table-row.rs-table-header > div.hv-configurator .product-tile--info,
    .rs-table-wrapper .rs-table-row.rs-table-header > div.product-tile .table-header-info,
    .rs-table-wrapper .rs-table-row.rs-table-header > div.product-tile .product-tile--info {
        -webkit-box-shadow: none;
        box-shadow: none;
    }
}

.rs-table-wrapper .rs-table-row.rs-table-header > div .tooltip {
    display: none;
}

@media screen and (min-width: 50em) {
    .rs-table-wrapper .rs-table-row.rs-table-header > div .tooltip {
        display: inline-block;
    }
}

.rs-table-wrapper .rs-table-row.rs-table-header > div .tooltip .tooltip-link {
    background: #ffffff;
}

.rs-table-wrapper .rs-table-row.rs-table-header > div .tooltip .tooltip-link:before {
    content: "i";
    color: #afca0b;
}

.rs-table-wrapper .rs-table-row.rs-table-header > div .tooltip .tooltip-content {
    display: none;
}

.rs-table-wrapper .rs-table-row.rs-table-header.js-fixed {
    position: fixed;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    max-width: 1560px;
    z-index: 2;
}

@media screen and (min-width: 50em) {
    .rs-table-wrapper .rs-table-row.rs-table-header.js-fixed {
        padding: 0 15px;
    }
}

@media screen and (min-width: 1560px) {
    .rs-table-wrapper .rs-table-row.rs-table-header.js-fixed {
        padding: 0;
    }
}

.rs-table-wrapper .rs-table-row:nth-child(odd):not(.rs-table-header) > div {
    background: #f6f6f6;
}

html {
    height: 100%;
}

body {
    background: #ffffff;
    min-height: 100%;
    position: relative;
    overflow: hidden;
}

body:not(.js-mainnav-active):not(.ios).js-overlay-active {
    position: fixed;
    width: 100%;
}

#wrapper {
    height: 100%;
    max-width: 1920px;
    margin: 0 auto;
}

#footer {
    max-width: 1920px;
    margin: 0 auto;
}

#container {
    height: 100%;
}

#container #main {
    height: 100%;
}

#container #main.main-container {
    padding-bottom: 490px;
}

@media screen and (min-width: 30em) {
    #container #main.main-container {
        padding-bottom: 450px;
    }
}

@media screen and (min-width: 50em) {
    #container #main.main-container {
        padding-bottom: 220px;
    }
}

#header {
    background: #ffffff;
}

.content-form-space {
    padding-bottom: 4rem;
    padding-top: 1.5rem;
    margin-top: 0.5rem;
}

@media screen and (min-width: 50em) {
    .content-form-space {
        margin-top: 2rem;
    }
}

.content-form-space .ce_accordion {
    border-top: none;
}

#kontakt-abteilungen small {
    font-size: 0.8rem;
}

#kontakt-abteilungen small a {
    color: #008237 !important;
}

#kontakt-abteilungen .row {
    margin-bottom: 25px;
}

#kontakt-abteilungen .row div[class*="col-"] {
    margin-bottom: 10px;
}

#kontakt-abteilungen .row.no-margin-bottom {
    margin-bottom: 0;
}

#kontakt-abteilungen .ce_accordion {
    border: 1px solid #c7cdd0;
    border-width: 0 0 1px 0;
    margin-bottom: 0;
}

#kontakt-abteilungen .ce_accordion > .accordion {
    padding-left: 0;
    padding-right: 0;
}

/*cookiebar*/
.cookiebar__message {
    display: block;
    margin-right: 0;
    width: 100%;
}

@media screen and (min-width: 30em) {
    .cookiebar__message {
        margin-right: 1rem;
        width: auto;
    }
}

.cookiebar__text {
    font-size: 18px;
    margin-right: 0;
    width: 100%;
}

@media screen and (min-width: 30em) {
    .cookiebar__text {
        margin-right: 1rem;
        width: auto;
    }
}

.cookiebar__button {
    background-color: #afca0b;
    line-height: 1;
    margin-top: 10px;
    padding: 10px 10px 5px 10px !important;
    -webkit-transition: background-color 0.25s ease-in-out;
    -o-transition: background-color 0.25s ease-in-out;
    -moz-transition: background-color 0.25s ease-in-out;
    transition: background-color 0.25s ease-in-out;
}

@media screen and (min-width: 30em) {
    .cookiebar__button {
        margin-top: 0;
    }
}

.cookiebar__button:hover {
    background-color: #008237;
}

/*SPACE*/
@media screen and (min-width: 30em) {
    .mod_customnav .navigation_wrapper ul.level_1 > li {
        padding-left: 15px;
    }
}

@media screen and (min-width: 50em) {
    .mod_customnav .navigation_wrapper ul.level_1 > li {
        padding-left: 0;
    }
}

@media screen and (min-width: 30em) {
    #header .logo {
        padding-left: 30px;
    }
}

@media screen and (min-width: 1560px) {
    #header .logo {
        padding-left: 15px;
    }
}

@media screen and (min-width: 30em) {
    #header .menu-toggler_label {
        right: 30px;
    }
}

@media screen and (min-width: 1560px) {
    #header .menu-toggler_label {
        right: 15px;
    }
}

@media screen and (min-width: 30em) {
    #container #main.main-container > .inside > .mod_article {
        padding-left: 15px;
        padding-right: 15px;
    }

    #container #main.main-container > .inside > .mod_article[id*="stageteaser"],
    #container #main.main-container > .inside > .mod_article[id*="topteaser-"] {
        padding-left: 0;
        padding-right: 0;
    }
}

@media screen and (min-width: 1560px) {
    #container #main.main-container > .inside > .mod_article {
        padding-left: 0;
        padding-right: 0;
    }
}

.konfigurator-2018 {
    padding-left: 15px;
    padding-right: 15px;
}

@media screen and (min-width: 30em) {
    .teaser-stage .headline-wrapper-H1,
    .teaser-stage .headline-wrapper-H2 {
        padding-left: 15px;
    }
}

@media screen and (min-width: 1560px) {
    .teaser-stage .headline-wrapper-H1,
    .teaser-stage .headline-wrapper-H2 {
        padding-left: 0;
    }
}

@media screen and (min-width: 80em) {
    .teaser-stage .teaser-tiles {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media screen and (min-width: 1560px) {
    .teaser-stage .teaser-tiles {
        padding-left: 15px;
        padding-right: 15px;
    }
}

@media screen and (min-width: 30em) {
    .teaser-stage .teaser-tiles .teaser-tile {
        padding-left: 25px;
        padding-right: 15px;
    }
}

@media screen and (min-width: 80em) {
    .teaser-stage .teaser-tiles .teaser-tile {
        padding-left: 10px;
        padding-right: 15px;
    }
}

@media screen and (min-width: 30em) {
    .top-teaser .top-teaser-content {
        padding-left: 15px;
        padding-right: 15px;
    }
}

@media screen and (min-width: 1560px) {
    .top-teaser .top-teaser-content {
        padding-left: 0;
        padding-right: 0;
    }
}

.centered-headline .headline-wrapper-H1,
.centered-headline .headline-wrapper-H2 {
    padding-left: 15px;
}

@media screen and (min-width: 30em) {
    .centered-headline .headline-wrapper-H1,
    .centered-headline .headline-wrapper-H2 {
        padding-left: 15px;
    }
}

@media screen and (min-width: 1560px) {
    .centered-headline .headline-wrapper-H1,
    .centered-headline .headline-wrapper-H2 {
        padding-left: 0;
    }
}

.ce_text > .ce_text {
    padding-left: 0;
}

.col-md-6 > .ce_text {
    padding-left: 0;
}

@media screen and (min-width: 30em) {
    #footer {
        padding-left: 30px;
        padding-right: 30px;
    }
}

body.win .fancybox-iframe html {
    overflow-y: hidden;
}

.fancybox-wrap {
    position: absolute;
    top: 60px !important;
    left: 0;
    overflow: hidden;
    display: none;
    opacity: 1 !important;
    background: transparent !important;
}

.fancybox-wrap.fancybox-mobile.fancybox-opened {
    display: block !important;
    z-index: 9999999 !important;
    overflow: scroll;
    -webkit-overflow-scrolling: touch !important;
}

@media screen and (min-width: 30em) {
    .fancybox-wrap {
        top: 80px !important;
    }
}

@media screen and (min-width: 50em) {
    .fancybox-wrap {
        top: 75px !important;
    }
}

@media screen and (min-width: 1920px) {
    .fancybox-wrap {
        max-width: 1920px;
    }
}

.fancybox-skin {
    padding: 0 !important;
}

.fancybox-overlay {
    background: transparent !important;
}

.fancybox-inner {
    overflow: scroll;
    -webkit-overflow-scrolling: touch !important;
}

.fancybox-inner .cookiebar {
    display: none !important;
}

#fancybox-loading {
    background-color: #ffffff;
    border: 2px solid #afca0b;
    background-image: none;
    height: 153px;
    width: 202px;
    text-align: center;
    opacity: 1;
    margin-top: -76px;
    margin-left: -101px;
}

#fancybox-loading:after {
    content: "Bitte warten...";
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    padding: 11px 0 5px 0;
    color: #455b64;
}

#fancybox-loading div {
    width: 95px;
    height: 95px;
    background: none;
    position: relative;
    text-align: center;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-top: 35px;
}

#fancybox-loading div:before {
    content: url("data:image/svg+xml,%3Csvg version='1.1' id='loader-icon' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 66 68' style='enable-background:new 0 0 66 68;' xml:space='preserve'%3E%3Cpolygon class='st0' style='fill:none;stroke: %23afca0b;stroke-width: 2;stroke-linejoin: round;stroke-dasharray: 200;' points='48,25 48,12 42,12 42,19 31,8 6,33 10,37 12,35 12.1,58 49.9,58 50,35 52,37 56,33'/%3E%3C/svg%3E");
}

.ce_dma_three_col_item {
    margin-bottom: 2rem;
}

@media screen and (min-width: 50em) {
    .ce_dma_three_col_item {
        padding-bottom: 60px;
        text-align: center;
    }
}

@media screen and (min-width: 50em) {
    .ce_dma_three_col_item .btn {
        bottom: 0;
        left: 50%;
        margin-bottom: 0;
        position: absolute;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
    }
}

.timeline-container {
    margin-bottom: 60px;
    position: relative;
}

.timeline-container .timeline {
    background: #008237;
    position: relative;
    height: 100%;
    margin-left: 15px;
    width: 3px;
}

@media screen and (min-width: 50em) {
    .timeline-container .timeline {
        margin: 0 auto;
    }
}

.timeline-container .timeline div[class*="timeline-"] {
    background: #008237;
    height: 100%;
    position: absolute;
    width: 3px;
    z-index: 1;
}

.timeline-container .timeline div.timeline-active {
    background: #afca0b;
    height: 0;
    -webkit-transition: height 40ms linear;
    -o-transition: height 40ms linear;
    -moz-transition: height 40ms linear;
    transition: height 40ms linear;
    z-index: 2;
}

.timeline-container .timeline-point-wrapper {
    padding: 0 15px 0 0;
    position: absolute;
    top: 0;
    width: 100%;
}

@media screen and (min-width: 50em) {
    .timeline-container .timeline-point-wrapper {
        padding: 0;
    }
}

.timeline-container .timeline-point-wrapper .timeline-point {
    margin-left: 18px;
    padding: 15px;
    -webkit-transition: 400ms ease-in-out;
    -o-transition: 400ms ease-in-out;
    -moz-transition: 400ms ease-in-out;
    transition: 400ms ease-in-out;
    width: 100%;
}

@media screen and (min-width: 50em) {
    .timeline-container .timeline-point-wrapper .timeline-point {
        margin-left: 10%;
        width: 40%;
    }
}

@media screen and (min-width: 50em) {
    .timeline-container .timeline-point-wrapper .timeline-point > p {
        text-align: right;
    }
}

.timeline-container .timeline-point-wrapper .timeline-point:nth-child(even) {
    margin-left: 18px;
}

@media screen and (min-width: 50em) {
    .timeline-container .timeline-point-wrapper .timeline-point:nth-child(even) {
        margin-left: 50%;
    }
}

.timeline-container .timeline-point-wrapper .timeline-point:nth-child(even) .year {
    left: -15px;
}

.timeline-container .timeline-point-wrapper .timeline-point:nth-child(even) > p {
    text-align: left;
}

.timeline-container .timeline-point-wrapper .timeline-point .year {
    position: relative;
    width: 70%;
    left: -15px;
    bottom: 1rem;
    text-align: center;
    padding: 1rem 0 0.5rem 0;
    background: #008237;
    color: #ffffff;
    font-size: 2rem;
    -webkit-transition: 40ms ease-in-out;
    -o-transition: 40ms ease-in-out;
    -moz-transition: 40ms ease-in-out;
    transition: 40ms ease-in-out;
    z-index: 1;
}

@media screen and (min-width: 30em) {
    .timeline-container .timeline-point-wrapper .timeline-point .year {
        width: 50%;
    }
}

@media screen and (min-width: 50em) {
    .timeline-container .timeline-point-wrapper .timeline-point .year {
        left: -webkit-calc(50% - -15px);
        left: -moz-calc(50% - -15px);
        left: calc(50% - -15px);
    }
}

.timeline-container .timeline-point-wrapper .timeline-point .year p {
    margin: 0;
    z-index: 20;
}

.timeline-container .timeline-point-wrapper .timeline-point .year .year-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    max-height: 100%;
    background: #afca0b;
    -webkit-transition: height 40ms linear;
    -o-transition: height 40ms linear;
    -moz-transition: height 40ms linear;
    transition: height 40ms linear;
    z-index: -1;
}

.tooltip {
    position: relative;
    display: inline-block;
    height: 27px;
    margin-bottom: -8px;
    width: 27px;
}

.tooltip .tooltip-link {
    height: 27px;
    width: 27px;
    display: block;
    text-indent: -9999px;
    position: absolute;
    right: 0;
    margin-top: 0;
    background: #455b64;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    cursor: pointer;
    margin-left: 0;
    margin-bottom: -5px;
}

.tooltip .tooltip-link:before {
    content: "i";
    color: #ffffff;
    position: absolute;
    top: 50%;
    font-size: 1.2rem;
    display: block;
    text-transform: none;
    text-indent: 0;
    width: 27px;
    height: auto;
    text-align: center;
    top: 2px;
}

.firefox .tooltip .tooltip-link:before {
    top: 3px;
}

.win .tooltip .tooltip-link:before {
    top: 0;
}

.tooltip .tooltip-content {
    display: none;
}

.tooltipster-sidetip .tooltipster-box {
    background: #ffffff;
    border: 2px solid #455b64;
    -webkit-border-radius: 0;
    border-radius: 0;
    padding: 10px;
}

.tooltipster-sidetip .tooltipster-content {
    color: inherit;
    font-size: 0.8rem;
    padding: 5px 0 0 0;
    line-height: 1.25;
}

.tooltipster-sidetip .tooltipster-content h4 {
    color: #455b64;
    font-size: 1rem;
    font-weight: bold;
    margin-bottom: 0.5rem;
}

.tooltipster-sidetip.tooltipster-bottom .tooltipster-arrow-border {
    border-bottom-color: #455b64;
}

.tooltipster-sidetip.tooltipster-left .tooltipster-arrow-border {
    border-left-color: #455b64;
}

.tooltipster-sidetip.tooltipster-top .tooltipster-arrow-border {
    border-top-color: #455b64;
}

.tooltipster-sidetip.tooltipster-bottom .tooltipster-arrow-background {
    border-bottom-color: #ffffff;
}

.tooltipster-sidetip.tooltipster-left .tooltipster-arrow-background {
    border-left-color: #ffffff;
}

.tooltipster-sidetip.tooltipster-top .tooltipster-arrow-background {
    border-top-color: #ffffff;
}

.loader-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    background: rgba(255, 255, 255, 0.9);
    z-index: 1009;
}

.loader-content {
    width: 200px;
    background: #fff;
    padding: 10px;
    position: fixed;
    top: 50%;
    left: 50%;
    margin-left: -105px;
    margin-top: -75px;
    border: 1px solid #aec905;
    text-align: center;
}

.house-animated {
    -webkit-animation: svgfill 2.5s linear infinite forwards;
    -moz-animation: svgfill 2.5s linear infinite forwards;
    -o-animation: svgfill 2.5s linear infinite forwards;
    animation: svgfill 2.5s linear infinite forwards;
}

@-webkit-keyframes svgfill {
    100% {
        stroke-dashoffset: 400;
    }
}

@-moz-keyframes svgfill {
    100% {
        stroke-dashoffset: 400;
    }
}

@-o-keyframes svgfill {
    100% {
        stroke-dashoffset: 400;
    }
}

@keyframes svgfill {
    100% {
        stroke-dashoffset: 400;
    }
}

.house-animated svg {
    height: 100px;
    width: 100px;
}

.house-animated svg polygon {
    fill: none;
    stroke: #afca0b;
    stroke-width: 2;
    stroke-linejoin: round;
    stroke-dasharray: 200;
}

.configurator-wrapper {
    margin: 0 auto;
    max-width: 1560px;
}

.button-submit-form,
.btn--cta,
button[type="submit"]:not(.button-get-angebot):not(.button-reload-tarif) {
    border-color: #afca0b;
    background: #afca0b;
    color: #ffffff;
    margin-bottom: 25px;
    -webkit-transition: background-color 0.25s ease-in-out, border-color 0.25s ease-in-out;
    -o-transition: background-color 0.25s ease-in-out, border-color 0.25s ease-in-out;
    -moz-transition: background-color 0.25s ease-in-out, border-color 0.25s ease-in-out;
    transition: background-color 0.25s ease-in-out, border-color 0.25s ease-in-out;
}

.button-submit-form:before,
.btn--cta:before,
button[type="submit"]:not(.button-get-angebot):not(.button-reload-tarif):before {
    background: #008237;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0 50%;
    -moz-transform-origin: 0 50%;
    -ms-transform-origin: 0 50%;
    -o-transform-origin: 0 50%;
    transform-origin: 0 50%;
    -webkit-transition: -webkit-transform 0.4s ease-out;
    transition: -webkit-transform 0.4s ease-out;
    -o-transition: -o-transform 0.4s ease-out;
    -moz-transition: transform 0.4s ease-out, -moz-transform 0.4s ease-out;
    transition: transform 0.4s ease-out;
    transition: transform 0.4s ease-out, -webkit-transform 0.4s ease-out, -moz-transform 0.4s ease-out, -o-transform 0.4s ease-out;
}

.button-submit-form:hover,
.button-submit-form:focus,
.btn--cta:hover,
.btn--cta:focus,
button[type="submit"]:not(.button-get-angebot):not(.button-reload-tarif):hover,
button[type="submit"]:not(.button-get-angebot):not(.button-reload-tarif):focus {
    color: #ffffff;
    border-color: #008237;
}

.button-submit-form:hover:before,
.button-submit-form:focus:before,
.btn--cta:hover:before,
.btn--cta:focus:before,
button[type="submit"]:not(.button-get-angebot):not(.button-reload-tarif):hover:before,
button[type="submit"]:not(.button-get-angebot):not(.button-reload-tarif):focus:before {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
}

.mod_docuraOnlineAntragNew {
    margin: 0 auto;
    max-width: 1560px;
    margin-top: 0.5rem;
}

@media screen and (min-width: 50em) {
    .mod_docuraOnlineAntragNew {
        margin-top: 2rem;
    }
}

.mod_docuraOnlineAntragNew .ce_image {
    display: none;
}

.mod_docuraOnlineAntragNew .back-btn {
    display: block;
    text-transform: uppercase;
}

@media screen and (min-width: 50em) {
    .mod_docuraOnlineAntragNew .back-btn {
        float: left;
        margin-top: 25px;
        padding-top: 15px;
    }
}

.mod_docuraOnlineAntragNew .btn-offer {
    text-align: center;
}

.mod_docuraOnlineAntragNew .button-get-angebot {
    display: inline-block;
    margin-bottom: 20px;
}

.mod_docuraOnlineAntragNew .hau-header-select {
    border-bottom: 1px solid #f6f6f6;
}

@media screen and (min-width: 50em) {
    .mod_docuraOnlineAntragNew .hau-header-select {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        border-bottom: 5px solid #afca0b;
    }
}

.mod_docuraOnlineAntragNew .hau-header-select-inner {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    text-align: center;
}

.mod_docuraOnlineAntragNew .hau-header-select-inner a {
    display: block;
    height: 100%;
    padding: 15px;
    -webkit-transition: background-color 0.25s ease-in-out;
    -o-transition: background-color 0.25s ease-in-out;
    -moz-transition: background-color 0.25s ease-in-out;
    transition: background-color 0.25s ease-in-out;
}

.mod_docuraOnlineAntragNew .hau-header-select-inner a.selected {
    background-color: #afca0b;
}

.mod_docuraOnlineAntragNew .hau-header-select-inner .image_container {
    display: none;
}

.mod_docuraOnlineAntragNew .hau-header-select-inner .ce_text > h2 {
    color: #455b64;
    font-size: 1rem;
    -webkit-transition: color 0.25s ease-in-out;
    -o-transition: color 0.25s ease-in-out;
    -moz-transition: color 0.25s ease-in-out;
    transition: color 0.25s ease-in-out;
}

.mod_docuraOnlineAntragNew .hau-header-select-inner .ce_text > h2:hover,
.mod_docuraOnlineAntragNew .hau-header-select-inner .ce_text > h2:focus {
    color: #afca0b;
}

.mod_docuraOnlineAntragNew .hau-header-select-inner .ce_text > p {
    display: none;
}

.mod_docuraOnlineAntragNew .hau-header-select-inner a.selected {
    /*transform: scale(1.25);*/
}

.mod_docuraOnlineAntragNew .hau-header-select-inner a.selected h2 {
    color: #ffffff;
}

.mod_docuraOnlineAntragNew .hau-header-select-inner a.selected h2:hover,
.mod_docuraOnlineAntragNew .hau-header-select-inner a.selected h2:focus {
    color: #ffffff;
}

.mod_docuraOnlineAntragNew .form-widget {
    width: 100%;
    clear: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.mod_docuraOnlineAntragNew .tooltipster-fade-show {
    opacity: 1;
}

.konfigurator-einstieg .formbody,
#konfigurator-einstieg .formbody {
    padding-top: 5%;
}

.konfigurator-einstieg .formbody .btn,
#konfigurator-einstieg .formbody .btn {
    margin-bottom: 25px;
    margin-top: 0;
    width: 100%;
}

.calculator-wrapper .calculator-footer .calculated-price {
    color: #008237;
}

.calculator-wrapper .calculator-footer .calculated-price .summe,
.calculator-wrapper .calculator-footer .calculated-price .betrag {
    font-size: 1rem;
    line-height: 1.25;
}

.calculator-wrapper .calculator-footer .calculated-price .summe > span,
.calculator-wrapper .calculator-footer .calculated-price .betrag > span {
    display: inline-block;
    font-size: 1.25rem;
}

@media screen and (min-width: 50em) {
    .calculator-wrapper .calculator-footer .calculated-price .summe > span,
    .calculator-wrapper .calculator-footer .calculated-price .betrag > span {
        float: right;
    }
}

.calculator-wrapper .calculator-footer .calculated-price .summe {
    margin-bottom: 6px;
}

.calculator-wrapper .calculator-footer .calculated-price .betrag span.beitrag-summe {
    font-family: "font-medium", Arial, sans-serif;
    margin-top: 10px;
    display: block;
    font-size: 2rem;
}

@media screen and (min-width: 50em) {
    .calculator-wrapper .calculator-footer .calculated-price .betrag span.beitrag-summe {
        display: inline-block;
        margin-top: 0;
    }
}

@media screen and (min-width: 30em) {
    .calculator-wrapper .calculator-footer .calculated-price .tarif-summe_summe {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
    }

    .calculator-wrapper .calculator-footer .calculated-price .tarif-summe_summe span.beitrag-text {
        font-size: 1rem;
        -webkit-box-flex: 60%;
        -webkit-flex: 60%;
        -moz-box-flex: 60%;
        -ms-flex: 60%;
        flex: 60%;
        line-height: 1.5;
        -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
        align-self: flex-end;
    }

    .calculator-wrapper .calculator-footer .calculated-price .tarif-summe_summe span.beitrag-summe {
        text-align: right;
        -webkit-box-flex: 40%;
        -webkit-flex: 40%;
        -moz-box-flex: 40%;
        -ms-flex: 40%;
        flex: 40%;
        line-height: 1;
        -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
        align-self: flex-end;
    }
}

.calculator-wrapper .calculator-footer .btn {
    width: 100%;
}

.calculator-wrapper .form-widget-otiRasse.widget-hint-info > .tooltip {
    display: none;
}

.calculator-wrapper .tarif-summe.js-hidden {
    visibility: hidden;
    height: 0;
}

@media screen and (min-width: 50em) {
    .hau-second .calculator-wrapper > div {
        min-height: 400px;
    }
}

.datepicker--cell.-current- {
    color: #008237;
    font-family: "font-medium", Arial, sans-serif;
    text-decoration: underline;
}

.datepicker--day-name {
    color: #008237;
    font-family: "font-medium", Arial, sans-serif;
}

.datepicker--cell.-selected-,
.datepicker--cell.-selected-.-current-,
.datepicker--cell.-selected-.-focus- {
    background: #afca0b;
}

.ce_dma_content_wrapper_start {
    clear: both;
    overflow: hidden;
    max-width: 1560px;
    margin: 0 auto 2rem auto;
}

.ce_dma_content_wrapper_start.full-width {
    max-width: 100%;
}

.ce_dma_content_wrapper_start.content-form-space {
    margin-top: 0.5rem;
}

@media screen and (min-width: 50em) {
    .ce_dma_content_wrapper_start.content-form-space {
        margin-top: 2rem;
    }
}

/* Auszeichnungen Teaser */
.content-teaser--image-left.content-teaser--siegel > div:last-child {
    margin-top: 0;
}

@media screen and (min-width: 50em) {
    .content-teaser.content-teaser--siegel > div .headline-wrapper-H1,
    .content-teaser > div .headline-wrapper-H2 {
        margin-top: 0;
    }
}

.phv-target-selection {
    padding-bottom: 80px;
}

.phv-target-link {
    width: 47%;
    height: 47vw;
    border: 3px solid #008237;
    float: left;
    margin-left: 3px;
    margin-right: 3px;
    margin-bottom: 6px;
}

@media screen and (min-width: 50em) {
    .phv-target-link {
        display: inline-block;
        width: 260px;
        height: 260px;
        float: none;
        margin-left: 0;
        margin-right: 0;
    }
}

.phv-target-link:hover {
    border: 3px solid #afca0b;
}

.phv-target-link a:focus {
    outline: none;
}

.phv-target-link svg {
    height: 100px;
    margin-top: 20px;
    margin-bottom: 25px;
}

@media screen and (min-width: 50em) {
    .phv-target-link svg {
        height: 150px;
    }
}

.phv-target-link span {
    display: block;
    color: #afca0b;
}

.ce_image.full .image_container {
    margin: 0;
    margin-bottom: 20px;
}

.ce_image.full img {
    width: 100%;
    max-width: 100%;
    height: auto;
}

#gewinnspiel input[type="checkbox"] {
    display: inline;
    opacity: 0;
    width: 1px;
    position: absolute;
    left: 40px;
    bottom: 0;
}

@media screen and (max-width: 30em) {
    .widget-space {
        float: unset !important;
        /* overflow: visible; */
        height: 9em;
        /* clear: both; */
        /* min-height: auto !important; */
    }
}

@media screen and (max-width: 20em) {
    .widget-space {
        float: unset !important;
        /* overflow: visible; */
        height: 12em;
        /* clear: both; */
        /* min-height: auto !important; */
    }
}

@media screen and (max-width: 50em) {
    .carousel-wrapper {
        height: 400px;
    }
    .ce_sliderStart.carousel .ce_image {
        width: 30vw;
    }
    .ce_sliderStart.carousel .ce_image figure {
        margin: 0;
    }
    .ce_sliderStart.carousel .ce_image img {
        width: 100%;
        height: auto;
    }

    .ce_sliderStart.coverflow .ce_image {
        width: 30vw;
    }
    .ce_sliderStart.coverflow .ce_image figure {
        margin: 0;
    }
    .ce_sliderStart.coverflow .ce_image img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 30em) {
    .carousel-wrapper {
        height: 250px;
    }
}


#article-218 > div {
	background:white;
}
input[type="checkbox"] {
    display: block;
    width: 1px;
    /* height: 1px; */
    opacity: 0;
}

.ce_image .image_container img {
    width: 100%;
    height: auto;
}