﻿@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,700,700italic,400italic,600,600italic);
* {
  margin: 0;
  padding: 0; }

/* TEST TWT-4 */

h1, h2, h3 {
  font-weight: normal; }

body {
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

ol, ul {
  list-style: none; }

a img, a {
  border: none;
  outline: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block; }

.clfix::before,
.clfix::after {
  content: " ";
  display: table; }

.clfix::after {
  clear: both; }

/* ### Text_neu2 ### */
.fontred {
  color: #e60000 !important; }

input[type="text"], input[type="textarea"] {
  font-size: 16px; }

body, input, select, button, textarea, a {
  font-family: 'Open Sans', sans-serif;
  font-weight: normal;
  font-size-adjust: none;
  color: #191919; }

strong {
  font-weight: 700; }

p.copy {
  font-size: 15px;
  line-height: 20px; }

.headline-1 {
  font-size: 34px;
  line-height: 38px; }

.headline-2 {
  font-size: 28px;
  line-height: 34px;
  font-weight: 600; }
  .headline-2.padbot {
    padding-bottom: 24px; }
  .headline-2.thin {
    font-weight: 400; }
    .headline-2.thin strong {
      font-weight: 600; }
  .headline-2.sub {
    padding-bottom: 0; }

.headline-3 {
  font-size: 24px;
  line-height: 30px; }

.headline-4 {
  font-size: 20px;
  line-height: 24px;
  font-weight: 600; }

.fa-chevron-down:before {
  content: "\f078"; }

p.copy {
  font-size: 15px;
  line-height: 20px; }

body #wrapper #main .font-12 {
  font-size: 12px;
  line-height: 15px; }

body #wrapper #main .font-13 {
  font-size: 13px;
  line-height: 20px; }

body #wrapper #main .font-14 {
  font-size: 14px;
  line-height: 17px; }

body #wrapper #main .font-15 {
  font-size: 15px;
  line-height: 20px; }

body #wrapper #main .font-16 {
  font-size: 15px;
  line-height: 24px; }

body #wrapper #main .font-18 {
  font-size: 18px;
  line-height: 22px; }

body #wrapper #main .font-20 {
  font-size: 20px;
  line-height: 26px; }

body #wrapper #main .font-26 {
  font-size: 25px;
  line-height: 30px; }

body #wrapper #main .font-28 {
  font-size: 28px;
  line-height: 34px;
  font-weight: 600; }

body * {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box; }

.left {
  float: left; }

.right {
  float: right; }

.mobileonly {
  display: none; }
  @media all and (max-width: 640px) {
    .mobileonly {
      display: block; } }

.padonly {
  display: none; }
  @media all and (max-width: 768px) {
    .padonly {
      display: block; } }

.mobilesmallonly {
  display: none; }
  @media all and (max-width: 480px) {
    .mobilesmallonly {
      display: block; } }

.hidden-toggle-element {
  display: none; }

.clear {
  clear: both; }

.vcenter {
  display: table-cell;
  vertical-align: middle; }

.center {
  text-align: center; }

.fleft {
  float: left; }

.fright {
  float: right; }

.hidden {
  display: none; }

.multicol_2col {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px; }
  @media all and (max-width: 768px) {
    .multicol_2col {
      -webkit-column-count: 1;
      -moz-column-count: 1;
      column-count: 1;
      -webkit-column-gap: 0;
      -moz-column-gap: 0;
      column-gap: 0; } }

.alri {
  text-align: right; }

.plain {
  padding: 0 !important;
  margin: 0 !important; }

.button {
  text-align: center;
  color: #fff;
  text-decoration: none;
  display: inline-block;
  -webkit-border-radius: 25px;
  -moz-border-radius: 25px;
  -ms-border-radius: 25px;
  -o-border-radius: 25px;
  border-radius: 25px;
  font-size: 18px;
  line-height: 22px;
  font-weight: 700;
  border: none;
  cursor: pointer;
  display: inline-block;
  vertical-align: top;
  padding: 14px 20px;
  outline: none; }
  .button.cta {
    background-color: #fff;
    color: #e60000;
    border: 1px solid #e60000; }
    .button.cta:hover {
      background-color: #e60000;
      border-color: #e60000;
      color: #fff !important; }
  .button.wide {
    padding: 14px 60px; }
  .button.simple {
    border: 1px solid #ccc;
    font-size: 15px;
    line-height: 24px;
    font-weight: 400;
    color: #000;
    background: #fff; }
  .button.next:after {
    content: " ";
    width: 8px;
    height: 8px;
    border: solid #000;
    border-width: 1px 1px 0 0;
    transform: rotate(45deg);
    display: inline-block;
    margin-left: 34px;
    vertical-align: 2px; }
  .button.low {
    padding: 9px 20px; }

.arrowlist li {
  padding: 0 0 28px 27px;
  position: relative; }
  .arrowlist li svg {
    position: absolute;
    left: 0;
    top: 5px;
    width: 12px;
    height: 10px; }
  .arrowlist li img {
    margin-top: 4px;
    max-width: 100%; }

.calculator-col .listhead {
  font-size: 25px;
  line-height: 30px;
  font-weight: 600; }

.calculator-col .arrowlist li {
  padding: 15px 0 0 28px;
  font-size: 15px;
  line-height: 24px;
  height: 38px;
  display: inline-block; }
  .calculator-col .arrowlist li svg, .calculator-col .arrowlist li img {
    width: 18px;
    height: 16px;
    top: 0; }

.numberlist li {
  padding: 4px 0 27px 40px;
  position: relative;
  font-weight: 400; }
  .numberlist li i {
    position: absolute;
    left: 0;
    top: 0;
    width: 30px;
    height: 30px;
    text-align: center;
    line-height: 30px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%;
    font-style: normal; }
  .numberlist li .hint {
    color: #999; }

.accordion .content ul, .accordion .content ol,
.content_modul ul,
.content_modul ol {
  margin-left: 10px;
  padding-left: 10px;
  list-style-type: disc; }
  .accordion .content ul li, .accordion .content ol li,
  .content_modul ul li,
  .content_modul ol li {
    padding-bottom: 10px; }

.accordion .content ol,
.content_modul ol {
  list-style-type: decimal; }

.accordion .content ul ul, .accordion .content ul ol, .accordion .content ol ul, .accordion .content ol ol, .content_modul ul ul, .content_modul ul ol, .content_modul ol.accordion .content ul, .content_modul ol.accordion .content ol,
.content_modul ul,
.content_modul ol {
  margin-left: 10px;
  padding-left: 10px;
  list-style-type: disc; }
  .accordion .content ul ul li, .accordion .content ul ol li, .accordion .content ol ul li, .accordion .content ol ol li, .content_modul ul ul li, .content_modul ul ol li, .content_modul ol.accordion .content ul li, .content_modul ol.accordion .content ol li,
  .content_modul ul li,
  .content_modul ol li {
    padding-bottom: 10px; }
  .accordion .content ul ul.numberlist, .accordion .content ul ol.numberlist, .accordion .content ol ul.numberlist, .accordion .content ol ol.numberlist, .content_modul ul ul.numberlist, .content_modul ul ol.numberlist, .content_modul ol.accordion .content ul.numberlist, .content_modul ol.accordion .content ol.numberlist,
  .content_modul ul.numberlist,
  .content_modul ol.numberlist {
    margin-left: 0;
    padding-left: 0;
    list-style-type: none; }
    .accordion .content ul ul.numberlist li, .accordion .content ul ol.numberlist li, .accordion .content ol ul.numberlist li, .accordion .content ol ol.numberlist li, .content_modul ul ul.numberlist li, .content_modul ul ol.numberlist li, .content_modul ol.accordion .content ul.numberlist li, .content_modul ol.accordion .content ol.numberlist li,
    .content_modul ul.numberlist li,
    .content_modul ol.numberlist li {
      padding-bottom: 20px; }

.accordion .content ul ol, .accordion .content ol ol, .content_modul ul ol, .content_modul ol.accordion .content ol,
.content_modul ol {
  list-style-type: decimal; }

#wrapper {
  margin: 0 auto;
  min-width: 320px;
  max-width: 2400px;
  overflow: hidden; }

.menuopen #wrapper {
  max-height: 100%;
  overflow: hidden;
  position: absolute;
  width: 100%; }

.content-wrapper {
  max-width: 1140px;
  margin: 0 auto;
  position: relative; }
  .content-wrapper.padded {
    padding: 40px 0; }
  @media all and (max-width: 1200px) {
    .content-wrapper {
      max-width: 980px;
      padding: 0 20px; }
      .content-wrapper.padded {
        padding: 52px 20px 55px; } }
  @media all and (max-width: 768px) {
    .content-wrapper {
      max-width: 768px; } }

.sectionmarked {
  background-color: #f0f0f0; }

@media all and (max-width: 640px) {
  header {
    margin-bottom: 20px; } }

.metaheader {
  *zoom: 1;
  padding: 15px 0 31px; }
  .metaheader:before, .metaheader:after {
    content: "";
    display: table; }
  .metaheader:after {
    clear: both; }
  .metaheader a.toplogo_cc img {
    display: block;
    position: absolute;
    left: 0;
    top: 66px; }
  .metaheader a.toplogo_st img {
    display: block;
    position: absolute;
    right: 0;
    top: 82px;
    max-width: 300px; }
    @media all and (max-width: 1023px) {
      .metaheader a.toplogo_st img {
        max-width: 220px;
        top: 88px; } }
    @media all and (max-width: 880px) {
      .metaheader a.toplogo_st img {
        max-width: 180px;
        top: 91px; } }
    @media all and (max-width: 768px) {
      .metaheader a.toplogo_st img {
        max-width: 100%; } }
  .metaheader .navlogo img {
    width: 100%;
    max-width: 300px; }
  .metaheader .nav {
    max-width: 50%;
    margin: 0 auto;
    font-size: 18px;
    line-height: 22px; }
    .metaheader .nav .mainnav {
      padding-top: 31px; }
      .metaheader .nav .mainnav li {
        float: left;
        padding-left: 50px; }
        .metaheader .nav .mainnav li a {
          text-decoration: none;
          font-weight: bold;
          color: #494949; }
        .metaheader .nav .mainnav li.active a {
          border-bottom: 5px solid #e60000; }
        .metaheader .nav .mainnav li:first-child {
          padding-left: 0; }
  .metaheader .service {
    color: #a7a7a7;
    height: 89px;
    padding-top: 15px;
    padding-left: 25%;
    margin: 0 auto; }
    .metaheader .service .service-wrapper {
      display: inline-block;
      float: left; }
      .metaheader .service .service-wrapper span {
        display: block; }
    .metaheader .service strong {
      color: #494949;
      padding-right: 25px; }
      .metaheader .service strong i {
        font-style: normal; }
      .metaheader .service strong + span {
        padding-right: 25px; }
      .metaheader .service strong a.phone {
        text-decoration: none;
        font-weight: 700; }
    .metaheader .service span {
      display: inline-block;
      white-space: nowrap; }
      .metaheader .service span a {
        color: #a7a7a7; }
    .metaheader .service br {
      display: none; }
  .metaheader .menutoggle {
    display: none; }
  @media all and (max-width: 1200px) {
    .metaheader .nav {
      max-width: 42%;
      margin: 0 auto; }
      .metaheader .nav .mainnav li {
        padding-left: 40px; }
    .metaheader .service {
      max-width: none;
      padding-left: 29%; }
    .metaheader a.toplogo_cc img {
      left: 20px; }
    .metaheader a.toplogo_st img {
      right: 20px; } }
  @media all and (max-width: 768px) {
    .metaheader {
      height: 90px;
      padding: 25px 0 0; }
      .metaheader a.toplogo_cc img {
        position: relative;
        left: auto;
        top: auto;
        display: inline-block;
        margin-top: -5px; }
      .metaheader a.toplogo_st {
        display: none; }
      .metaheader .nav {
        width: auto;
        max-width: none; }
        .metaheader .nav .mainnav {
          position: fixed;
          top: 90px;
          right: -2px;
          max-width: 0;
          overflow: hidden;
          z-index: 10;
          background: #fff;
          height: 100%;
          border-left: 1px solid #dedede;
          min-width: 0;
          -webkit-transition: min-width 0.5s ease-in-out;
          -moz-transition: min-width 0.5s ease-in-out;
          -o-transition: min-width 0.5s ease-in-out;
          transition: min-width 0.5s ease-in-out; }
          .metaheader .nav .mainnav li {
            border-bottom: 1px solid #dedede;
            float: none;
            padding: 15px 20px;
            white-space: nowrap; }
            .metaheader .nav .mainnav li:first-child {
              padding: 15px 20px; }
            .metaheader .nav .mainnav li.active a {
              border: none; }
            .metaheader .nav .mainnav li.noborder, .metaheader .nav .mainnav li:last-child {
              border: none;
              padding-bottom: 5px; }
      .metaheader .service {
        float: right;
        height: auto;
        padding-top: 0;
        margin-top: -3px;
        padding-left: 0; }
        .metaheader .service strong {
          padding-right: 30px; }
          .metaheader .service strong i {
            font-weight: 400; }
        .metaheader .service .service-wrapper span {
          display: none; }
        .metaheader .service br {
          display: block; }
        .metaheader .service .reg {
          display: none; }
      .metaheader .menutoggle {
        display: inline-block;
        float: right;
        cursor: pointer;
        width: 40px;
        height: 40px;
        background: #e60000;
        position: relative; }
        .metaheader .menutoggle:before, .metaheader .menutoggle:after, .metaheader .menutoggle span {
          content: " ";
          width: 20px;
          height: 3px;
          background: #fff;
          position: absolute;
          left: 10px;
          display: block;
          -webkit-transition: all 0.2s ease-out;
          -moz-transition: all 0.2s ease-out;
          -o-transition: all 0.2s ease-out;
          transition: all 0.2s ease-out; }
        .metaheader .menutoggle:before {
          top: 11px; }
        .metaheader .menutoggle:after {
          bottom: 12px; }
        .metaheader .menutoggle span {
          top: 18px; } }
  @media all and (max-width: 480px) {
    .metaheader .service {
      display: none; }
    .metaheader a.left {
      margin: 0; }
      .metaheader a.left img {
        max-width: 140px; }
    .metaheader a.right img {
      max-width: 105px; }
    .metaheader img.left {
      margin: 0;
      max-width: 140px; }
    .metaheader img.right {
      max-width: 105px; }
    .metaheader .nav .mainnav {
      min-width: 0; } }

.menuoverlay {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out; }

.menuopen .menuoverlay {
  position: fixed;
  background: rgba(0, 0, 0, 0.7);
  width: 100%;
  height: 100%;
  z-index: 9; }
  @media all and (min-width: 769px) {
    .menuopen .menuoverlay {
      display: none; } }

.menuopen .nav .mainnav {
  min-width: 65%; }

@media all and (max-width: 1200px) {
  .menuopen .nav {
    max-width: 45%; }
    .menuopen .nav ul li {
      padding-right: 40px; } }

@media all and (max-width: 768px) {
  .menuopen .menutoggle {
    display: inline-block;
    float: right;
    cursor: pointer;
    width: 40px;
    height: 40px;
    background: #e60000;
    position: relative; }
    .menuopen .menutoggle:before {
      transform: rotate(-45deg);
      top: 50%;
      margin-top: -2px; }
    .menuopen .menutoggle:after {
      transform: rotate(45deg);
      bottom: 50%;
      margin-bottom: -1px; }
    .menuopen .menutoggle span {
      display: none; } }

.metaheader {
  height: 100px;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 10; }
  .metaheader a.toplogo_cc img {
    top: 8px; }
  .metaheader a.toplogo_st img {
    top: 14px; }
    @media all and (max-width: 1023px) {
      .metaheader a.toplogo_st img {
        top: 14px; } }
    @media all and (max-width: 880px) {
      .metaheader a.toplogo_st img {
        top: 14px; } }
  .metaheader .service {
    display: none; }
  @media all and (max-width: 768px) {
    .metaheader {
      height: 90px; }
      .metaheader a.toplogo_cc img {
        top: 1px; }
      .metaheader .service {
        display: block; } }
  @media all and (max-width: 480px) {
    .metaheader .service {
      display: none; } }

#wrapper {
  padding-top: 100px; }
  @media all and (max-width: 768px) {
    #wrapper {
      padding-top: 90px; } }

footer {
  padding: 11px 0 15px; }
  footer .content-wrapper {
    text-align: center; }
  footer li {
    font-size: 12px;
    line-height: 15px;
    display: inline-block;
    font-weight: 700; }
    footer li:before {
      content: "|";
      width: 2px;
      height: 12px;
      margin: 0 10px 0 5px; }
    footer li:first-child:before {
      content: ""; }
  footer a {
    text-decoration: none;
    display: inline-block;
    color: #e60000; }
  @media all and (max-width: 768px) {
    footer li:before {
      margin: 0 5px 0 2px; } }
  @media all and (max-width: 640px) {
    footer {
      padding: 21px 0 19px; }
      footer a {
        margin-bottom: 8px; } }

input[type=checkbox]:not(:checked), input[type=radio]:not(:checked), input[type=checkbox]:checked, input[type=radio]:checked {
  position: absolute;
  left: -100000px; }

input[type=radio] + label,
input[type=checkbox] + label {
  position: relative; }
  input[type=radio] + label:before,
  input[type=checkbox] + label:before {
    position: absolute;
    left: 0;
    top: 0;
    width: 30px;
    height: 30px;
    content: "";
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%; }

input[type=checkbox] + label:before {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  border-radius: 5px; }

input[type=radio]:not(:checked) + label,
input[type=checkbox]:not(:checked) + label {
  padding-left: 40px;
  padding-top: 0;
  line-height: 30px;
  display: inline-block;
  height: 30px; }

input[type=radio]:checked + label {
  padding-left: 40px;
  height: 30px;
  padding-top: 0;
  line-height: 30px;
  display: inline-block; }
  input[type=radio]:checked + label:after {
    position: absolute;
    left: 10px;
    top: 0; }
  input[type=radio]:checked + label:before {
    border-color: #abc111; }

input[type=checkbox]:checked + label {
  padding-left: 40px;
  height: 30px;
  line-height: 30px;
  padding-top: 0;
  display: inline-block; }
  input[type=checkbox]:checked + label:after {
    position: absolute;
    left: 11px;
    top: 6px;
    width: 6px;
    height: 13px;
    content: "";
    transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg); }

.rsvcheckrow input[type=radio]:checked + label,
.rsvcheckrow input[type=radio]:not(:checked) + label {
  padding-top: 5px;
  line-height: 20px;
  height: auto; }
  .rsvcheckrow input[type=radio]:checked + label:after,
  .rsvcheckrow input[type=radio]:not(:checked) + label:after {
    line-height: 30px; }

.formrow {
  padding: 20px 0;
  *zoom: 1; }
  .formrow:before, .formrow:after {
    content: "";
    display: table; }
  .formrow:after {
    clear: both; }
  .formrow.check, .formrow.radio {
    padding-bottom: 0; }
  .formrow label {
    width: 50%;
    padding: 5px 20px 0 0;
    display: block;
    float: left; }
  .formrow .formelement {
    width: 50%;
    padding-right: 40px;
    position: relative;
    float: left;
    margin-top: -2px; }
    .formrow .formelement .inner {
      display: table;
      width: 100%; }
    .formrow .formelement .tooltipp {
      display: inline-block;
      position: absolute;
      right: 0;
      top: 7px; }
    .formrow .formelement.radio .tooltipp, .formrow .formelement.check .tooltipp {
      top: 2px; }
    .formrow .formelement .svg {
      width: 16px;
      height: 26px; }
  .formrow.check label, .formrow.radio label {
    margin-bottom: 20px; }
  .formrow .pulldown, .formrow input.textfield, .formrow select {
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -ms-border-radius: 2px;
    -o-border-radius: 2px;
    border-radius: 2px;
    height: 40px;
    line-height: 38px;
    padding: 0 10px;
    width: 100%;
    font-size: initial; }
    .formrow .pulldown.small, .formrow input.textfield.small, .formrow select.small {
      width: 20.3125%; }
    .formrow .pulldown.half, .formrow input.textfield.half, .formrow select.half {
      width: 46.875%; }
    .formrow .pulldown.medium, .formrow input.textfield.medium, .formrow select.medium {
      width: 73.4375%; }
    .formrow .pulldown select.small, .formrow .pulldown select.half, .formrow .pulldown select.medium, .formrow input.textfield select.small, .formrow input.textfield select.half, .formrow input.textfield select.medium, .formrow select select.small, .formrow select select.half, .formrow select select.medium {
      width: 100%; }
  .formrow select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
  .formrow select::-ms-expand {
    display: none; }
  .formrow .pulldown {
    padding: 0;
    overflow: hidden; }
    .formrow .pulldown.small {
      width: 20.3125%; }
    .formrow .pulldown.half {
      width: 46.875%; }
    .formrow .pulldown.medium {
      width: 73.4375%; }
    .formrow .pulldown select.small, .formrow .pulldown select.half, .formrow .pulldown select.medium {
      width: 100%; }
  .formrow .multiinput .pulldown, .formrow .multiinput input.textfield {
    float: left;
    margin-left: 6.25%; }
    .formrow .multiinput .pulldown:first-child, .formrow .multiinput input.textfield:first-child {
      margin: 0; }
  .formrow .multiinput .tooltipster-base + input.textfield,
  .formrow .multiinput .tooltipster-base + .pulldown {
    margin-left: 0; }
  .formrow .multiinput .sublabel {
    padding: 10px 0 0 20px;
    float: left; }
  .formrow .pulldown {
    position: relative; }
    .formrow .pulldown .pulldown-main {
      cursor: pointer;
      padding-right: 32px;
      position: relative; }
      .formrow .pulldown .pulldown-main em {
        font-style: normal; }
      .formrow .pulldown .pulldown-main .svg {
        position: absolute;
        right: 10px;
        top: 16px; }
    .formrow .pulldown .pulldown-holder {
      position: absolute;
      top: 39px;
      left: 0;
      width: 100%;
      display: none;
      max-height: 165px;
      overflow: auto; }
      .formrow .pulldown .pulldown-holder .option {
        padding: 10px;
        cursor: pointer; }
        .formrow .pulldown .pulldown-holder .option:first-child {
          border: none; }
  @media all and (max-width: 640px) {
    .formrow label {
      width: auto;
      padding: 0 0 10px 0;
      float: none; }
    .formrow .formelement {
      width: 100%;
      padding-right: 40px;
      float: none;
      margin-top: 0; }
      .formrow .formelement .inner {
        width: 100%; }
      .formrow .formelement .tooltipp {
        display: inline-block;
        position: absolute;
        right: 0;
        bottom: 6px; }
    .formrow.radio .formelement .tooltipp, .formrow.check .formelement .tooltipp {
      top: 2px; }
    .formrow.radio .formelement label, .formrow.check .formelement label {
      padding-bottom: 0; }
    .formrow input[type=radio]:not(:checked) + label,
    .formrow input[type=radio]:checked + label,
    .formrow input[type=checkbox]:not(:checked) + label,
    .formrow input[type=checkbox]:checked + label {
      display: block;
      width: 50%;
      float: left; } }
  @media all and (max-width: 480px) {
    .formrow .pulldown.small, .formrow input.textfield.small {
      width: 27%; }
    .formrow .pulldown.half, .formrow input.textfield.half {
      width: 46.875%; }
    .formrow .pulldown.medium, .formrow input.textfield.medium {
      width: 66.75%; }
    .formrow .pulldown.small + .half, .formrow input.textfield.small + .half {
      width: 33.5%; }
    .formrow .pulldown select.small, .formrow .pulldown select.half, .formrow .pulldown select.medium, .formrow input.textfield select.small, .formrow input.textfield select.half, .formrow input.textfield select.medium {
      width: 100%; }
    .formrow .pulldown.small {
      width: 27%; }
    .formrow .pulldown.half {
      width: 46.875%; }
    .formrow .pulldown.medium {
      width: 66.75%; }
    .formrow .pulldown.small + .half {
      width: 33.5%; }
    .formrow .pulldown select.small, .formrow .pulldown select.half, .formrow .pulldown select.medium {
      width: 100%; } }
  @media all and (max-width: 360px) {
    .formrow .phonefull .pulldown.half, .formrow .phonefull input.half {
      width: 100%;
      float: none;
      margin: 0; }
      .formrow .phonefull .pulldown.half:first-child, .formrow .phonefull input.half:first-child {
        margin-bottom: 20px; }
    .formrow input[type=radio]:not(:checked) + label,
    .formrow input[type=radio]:checked + label,
    .formrow input[type=checkbox]:not(:checked) + label,
    .formrow input[type=checkbox]:checked + label {
      width: 100%;
      float: none;
      margin-bottom: 10px; }
      .formrow input[type=radio]:not(:checked) + label:last-child,
      .formrow input[type=radio]:checked + label:last-child,
      .formrow input[type=checkbox]:not(:checked) + label:last-child,
      .formrow input[type=checkbox]:checked + label:last-child {
        margin-bottom: 0; } }

.form_subheadline {
  padding: 23px 0 17px; }

.mfp-inline-holder .antrag_formblock button.mfp-close {
  width: 40px;
  height: 40px;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1; }
  .mfp-inline-holder .antrag_formblock button.mfp-close:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=65);
    opacity: 0.65; }

.mfp-inline-holder .antrag_formblock .formrow {
  padding: 10px 0; }
  .mfp-inline-holder .antrag_formblock .formrow .formelement {
    padding-right: 0; }
    .mfp-inline-holder .antrag_formblock .formrow .formelement.tipp {
      padding-right: 40px; }

.mfp-inline-holder .antrag_formblock .antrag_buttonrow {
  width: 50%;
  float: right;
  margin: 20px 0 10px; }
  .mfp-inline-holder .antrag_formblock .antrag_buttonrow input {
    width: 100%; }

.mfp-inline-holder .antrag_formblock .subline {
  padding-top: 20px; }

@media all and (max-width: 640px) {
  .mfp-inline-holder .antrag_formblock .antrag_buttonrow {
    width: 100%;
    float: none; } }

.hiddenblock {
  display: none;
  clear: both; }

.formrow .formrow {
  padding: 40px 0 0; }

.calculator-col input[type="checkbox"] + label,
.calculator-col input[type="checkbox"]:not(:checked) + label,
.calculator-col input[type="checkbox"]:checked + label {
  background: none;
  height: auto;
  line-height: 25px;
  padding-left: 35px;
  position: relative; }

.calculator-col input[type="checkbox"] + label::before {
  background-color: #fff;
  border: 1px solid #cccccc;
  border-radius: 3px;
  content: "";
  display: inline-block;
  height: 23px;
  overflow: hidden;
  width: 23px;
  text-align: center;
  vertical-align: middle;
  position: absolute;
  left: 0;
  line-height: 25px; }

.calculator-col input[type="checkbox"] + label::after {
  display: none; }

.calculator-col input[type="checkbox"]:checked + label::before {
  content: url("../img/icon-checkbox.svg");
  height: 19px;
  padding: 1px 3px 3px;
  width: 17px; }

input.button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

/* Fix zu breite Selectss */
.pulldown select {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
  width: 100%; }
  .pulldown select::-ms-expand {
    /* IE 8 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    /* IE 5-7 */
    filter: alpha(opacity=0);
    /* Good browsers :) */
    opacity: 0; }

/* Fallback inpit type="number" Desktop */
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0; }

input[type=number] {
  -moz-appearance: textfield; }

/* Arvato Selects */
.formrow select.arvato {
  background-color: #fff;
  border: 1px solid #ccc;
  left: 0; }

input.small + select.arvato {
  width: 103px !important; }

input.medium + select.arvato {
  width: 375px !important; }

/* Hiddenblock per Visibility gesteuert für Initialisierung Arvato */
#einzugdatum_dn1_hidden_content {
  visibility: hidden;
  overflow: hidden;
  height: 1px;
  transition: all 0.1s ease;
  -webkit-transition: all 0.1s ease;
  -ms-transition: all 0.1s ease;
  display: block; }

#einzugdatum_dn1_hidden_content.openhiddenform {
  display: block;
  visibility: visible;
  height: auto;
  overflow: visible; }

div#einzugdatum_dn1_hidden_content[style*="display:block"],
div#einzugdatum_dn1_hidden_content[style*="display: block"] {
  visibility: visible;
  height: auto;
  overflow: inherit; }

slider, [slider] {
  display: block;
  position: relative;
  height: 16px;
  top: -4px;
  width: 100%; }

slider span.bar, [slider] span.bar {
  height: 50%;
  z-index: 0;
  left: 0;
  top: 25%;
  cursor: pointer; }

slider span.bar.unselected, [slider] span.bar.unselected {
  width: auto;
  opacity: 0.5; }

slider span.bar.selection, [slider] span.bar.selection {
  opacity: 0.5; }

slider span.pointer, [slider] span.pointer {
  cursor: pointer;
  width: 42px;
  height: 17px;
  top: 0; }

slider span.bubble, [slider] span.bubble {
  display: none !important; }

.dragger_selection {
  height: 8px;
  position: absolute;
  display: block; }

.kreditrechner .kreditrechner_inner ul li.monatliche_rate #rate_abweichung {
  display: block; }

.rechner-holder {
  *zoom: 1; }
  .rechner-holder:before, .rechner-holder:after {
    content: "";
    display: table; }
  .rechner-holder:after {
    clear: both; }
  .rechner-holder .rechner {
    width: 320px;
    overflow: hidden; }
    .rechner-holder .rechner .rechner-top {
      padding: 20px 13px; }
  @media all and (max-width: 640px) {
    .rechner-holder .rechner {
      border-width: 1px 0;
      width: auto;
      height: auto;
      margin: 0 -20px; } }

.teaser-calculator .calculator-col {
  background-color: #fff;
  padding: 20px 20px 19px;
  *zoom: 1;
  border-top: 1px solid #dedede; }
  .teaser-calculator .calculator-col:before, .teaser-calculator .calculator-col:after {
    content: "";
    display: table; }
  .teaser-calculator .calculator-col:after {
    clear: both; }
  .teaser-calculator .calculator-col:first-child {
    border: none; }
  .teaser-calculator .calculator-col .col-headline {
    float: left;
    width: 250px; }
  .teaser-calculator .calculator-col .t-field {
    float: right;
    line-height: 16px;
    margin-top: -3px; }
    .teaser-calculator .calculator-col .t-field em {
      font-style: normal;
      font-size: 15px;
      line-height: 24px;
      font-size: 20px; }
  .teaser-calculator .calculator-col .slider-wrapper {
    height: 31px;
    position: relative;
    clear: both; }
  .teaser-calculator .calculator-col .slider {
    height: 6px;
    position: absolute;
    width: 100%;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px; }
  .teaser-calculator .calculator-col .ui-slider-range {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    height: 6px; }
  .teaser-calculator .calculator-col .dragger_outer {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    height: 6px;
    margin: 20px 0 10px; }
  .teaser-calculator .calculator-col .dragger_main {
    height: 30px; }
  .teaser-calculator .calculator-col .pointer {
    width: 26px;
    height: 26px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%;
    outline: none;
    border: none;
    cursor: pointer;
    position: absolute;
    top: -6px; }
    .teaser-calculator .calculator-col .pointer:before {
      content: "";
      width: 14px;
      height: 14px;
      position: absolute;
      left: 6px;
      top: 6px;
      displaY: block;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      -ms-border-radius: 50%;
      -o-border-radius: 50%;
      border-radius: 50%; }
  .teaser-calculator .calculator-col .input-row {
    position: relative;
    padding-top: 3px;
    *zoom: 1;
    clear: both; }
    .teaser-calculator .calculator-col .input-row:before, .teaser-calculator .calculator-col .input-row:after {
      content: "";
      display: table; }
    .teaser-calculator .calculator-col .input-row:after {
      clear: both; }
    .teaser-calculator .calculator-col .input-row input {
      width: 250px;
      height: 36px;
      line-height: 40px;
      float: left;
      padding: 0 10px;
      -webkit-border-radius: 2px;
      -moz-border-radius: 2px;
      -ms-border-radius: 2px;
      -o-border-radius: 2px;
      border-radius: 2px; }
    .teaser-calculator .calculator-col .input-row p {
      float: right;
      margin-top: 12px; }
  .teaser-calculator .calculator-col p {
    padding-bottom: 0; }
  .teaser-calculator .calculator-col .img-holder {
    width: 18px;
    height: 18px;
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 20px; }
    .teaser-calculator .calculator-col .img-holder img {
      height: 18px;
      margin-top: 0; }
  .teaser-calculator .calculator-col.calculator-col-result .t-field {
    margin-top: 0;
    font-size: 32px;
    line-height: 34px; }
  .teaser-calculator .calculator-col.calculator-col-result .col-headline {
    line-height: 20px; }
  .teaser-calculator .calculator-col .button {
    width: 100%;
    background-color: #fff;
    color: #e60000;
    border: 1px solid #e60000; }
    .teaser-calculator .calculator-col .button:hover {
      background-color: #e60000;
      border-color: #e60000;
      color: #fff !important; }
  .teaser-calculator .calculator-col .check {
    @inlcude clearfix;
    padding: 7px 0 4px; }
  .teaser-calculator .calculator-col #credit_value span, .teaser-calculator .calculator-col #runtime_value span {
    font-size: 16px; }

.teaser-calculator label[for="input-netto-einkommen"] {
  position: absolute;
  top: 13px;
  left: 5px;
  font-size: 12px;
  cursor: text;
  color: #444; }

.teaser-calculator #input-netto-einkommen.emptyborder + label {
  color: #e60000; }

@media all and (max-width: 768px) {
  .teaser-calculator .calculator-col .dragger_outer {
    width: 90%;
    margin: 20px auto 10px; } }

@media all and (max-width: 640px) {
  .teaser-calculator.calculator-col-result {
    padding-bottom: 20px; }
  .teaser-calculator .input-row p {
    float: left !important;
    margin-left: 20px; } }

.tabsection-calculator .rechner-holder .rechner {
  margin-right: 0; }

@media all and (max-width: 768px) {
  .tabsection-calculator .rechner-holder .rechner {
    float: none;
    width: auto;
    height: auto; }
    .tabsection-calculator .rechner-holder .rechner .calculator-col {
      width: 50%;
      float: right; }
      .tabsection-calculator .rechner-holder .rechner .calculator-col:first-child {
        float: left; }
      .tabsection-calculator .rechner-holder .rechner .calculator-col.calculator-col-result {
        padding-bottom: 15px; }
        .tabsection-calculator .rechner-holder .rechner .calculator-col.calculator-col-result .result {
          *zoom: 1; }
          .tabsection-calculator .rechner-holder .rechner .calculator-col.calculator-col-result .result:before, .tabsection-calculator .rechner-holder .rechner .calculator-col.calculator-col-result .result:after {
            content: "";
            display: table; }
          .tabsection-calculator .rechner-holder .rechner .calculator-col.calculator-col-result .result:after {
            clear: both; }
        .tabsection-calculator .rechner-holder .rechner .calculator-col.calculator-col-result .button {
          width: 50%;
          float: right; }
  .tabsection-calculator .teaser-calculator .calculator-col .slider {
    width: 60%; } }

@media all and (max-width: 640px) {
  .tabsection-calculator .rechner-holder .rechner .calculator-col {
    width: 100%;
    float: none; }
    .tabsection-calculator .rechner-holder .rechner .calculator-col:first-child {
      float: none; }
    .tabsection-calculator .rechner-holder .rechner .calculator-col.calculator-col-result .result {
      width: auto;
      float: none;
      padding-right: 0; }
    .tabsection-calculator .rechner-holder .rechner .calculator-col.calculator-col-result .button {
      width: 100%;
      float: none; } }

.rechner-strecke {
  display: block;
  visibility: hidden;
  height: 1px;
  overflow: hidden;
  transition: all 0.1s ease;
  -webkit-transition: all 0.1s ease;
  -ms-transition: all 0.1s ease; }
  .rechner-strecke.open {
    display: block;
    visibility: visible;
    height: auto;
    overflow: auto; }
  .rechner-strecke .teaser-calculator {
    width: auto; }
    .rechner-strecke .teaser-calculator .calculator-col .label, .rechner-strecke .teaser-calculator .calculator-col .value {
      width: 25%;
      margin: 10px 0 0;
      padding-right: 20px; }
    .rechner-strecke .teaser-calculator .calculator-col .value {
      text-align: right;
      margin-top: 12px;
      padding: 0; }
    .rechner-strecke .teaser-calculator .calculator-col .dragger_outer {
      width: 50%;
      clear: none;
      float: left; }
    .rechner-strecke .teaser-calculator .calculator-col.calculator-col-result a.modal {
      margin-top: 30px;
      display: inline-block; }
    .rechner-strecke .teaser-calculator .calculator-col.calculator-col-result .t-field {
      margin-top: 10px; }
    .rechner-strecke .teaser-calculator .calculator-col .clear {
      display: none; }
  @media all and (max-width: 768px) {
    .rechner-strecke .teaser-calculator .calculator-col .label {
      width: auto;
      float: none; }
    .rechner-strecke .teaser-calculator .calculator-col .clear {
      display: block; }
    .rechner-strecke .teaser-calculator .calculator-col .value {
      width: 40%; }
    .rechner-strecke .teaser-calculator .calculator-col .dragger_outer {
      width: 60%; } }
  @media all and (max-width: 640px) {
    .rechner-strecke .teaser-calculator .calculator-col .value {
      width: auto;
      float: none;
      clear: both;
      padding-top: 10px;
      display: block;
      text-align: left; }
    .rechner-strecke .teaser-calculator .calculator-col .dragger_outer {
      width: 100%; } }

.visual-stage {
  position: relative; }
  .visual-stage .stage-inner {
    overflow: hidden;
    position: relative;
    padding-bottom: 45%; }
    .visual-stage .stage-inner .keyvisual {
      position: absolute;
      left: 50%;
      top: 50%;
      width: 100%;
      -ms-transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      z-index: 1; }
    .visual-stage .stage-inner .fade {
      position: absolute;
      left: 0;
      top: 0;
      width: 60%;
      height: 100%;
      z-index: 2;
      display: none; }
    .visual-stage .stage-inner.visualright .keyvisual {
      left: auto;
      right: 0;
      -ms-transform: translate(0, -50%);
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%); }
    .visual-stage .stage-inner.visualleft .keyvisual {
      left: 0;
      -ms-transform: translate(0, -50%);
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%); }
    .visual-stage .stage-inner.visualleft .fade {
      left: auto;
      right: 0; }
    .visual-stage .stage-inner .rechner-holder {
      max-width: 1140px;
      left: 0;
      top: 50%;
      position: absolute;
      z-index: 3;
      width: 100%;
      padding: 0; }
      @media all and (min-width: 641px) {
        .visual-stage .stage-inner .rechner-holder {
          -ms-transform: translate(0, -50%);
          -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%); } }
    .visual-stage .stage-inner .content-wrapper {
      position: absolute;
      z-index: 3;
      left: 50%;
      top: 0;
      width: 100%;
      height: 100%; }
      @media all and (min-width: 641px) {
        .visual-stage .stage-inner .content-wrapper {
          transform: translate(-50%, 0);
          -ms-transform: translate(-50%, 0);
          -webkit-transform: translate(-50%, 0); } }
    .visual-stage .stage-inner .stoerer {
      position: absolute;
      left: 20px;
      bottom: 104px;
      margin-right: 20px;
      font-weight: 600;
      background: rgba(255, 255, 255, 0.6);
      padding: 15px; }
      .visual-stage .stage-inner .stoerer.lefttop {
        bottom: auto;
        top: 40px; }
      .visual-stage .stage-inner .stoerer.leftbottom {
        bottom: 104px; }
      .visual-stage .stage-inner .stoerer.righttop {
        bottom: auto;
        top: 40px;
        left: auto;
        right: 0; }
      .visual-stage .stage-inner .stoerer.rightbottom {
        right: 0;
        left: auto; }
      .visual-stage .stage-inner .stoerer.rightcenter {
        right: 0;
        left: auto;
        top: 50%;
        bottom: auto;
        transform: translate(0, -50%); }
      .visual-stage .stage-inner .stoerer.leftcenter {
        top: 50%;
        bottom: auto;
        transform: translate(0, -50%); }
      .visual-stage .stage-inner .stoerer.calculator {
        left: 360px; }
      .visual-stage .stage-inner .stoerer .inner {
        padding: 20px 30px;
        position: relative; }
      .visual-stage .stage-inner .stoerer .cramp {
        width: 30px;
        height: 30px;
        position: absolute; }
        .visual-stage .stage-inner .stoerer .cramp.cramp_tl {
          border-width: 6px 0 0 6px;
          left: 0;
          top: 0; }
        .visual-stage .stage-inner .stoerer .cramp.cramp_tr {
          border-width: 6px 6px 0 0;
          right: 0;
          top: 0; }
        .visual-stage .stage-inner .stoerer .cramp.cramp_bl {
          border-width: 0 0 6px 6px;
          left: 0;
          bottom: 0; }
        .visual-stage .stage-inner .stoerer .cramp.cramp_br {
          border-width: 0 6px 6px 0;
          right: 0;
          bottom: 0; }
      .visual-stage .stage-inner .stoerer .headline {
        font-size: 34px;
        line-height: 38px;
        padding-bottom: 10px; }
      .visual-stage .stage-inner .stoerer .small {
        font-size: 20px;
        line-height: 26px; }
    @media all and (min-width: 1201px) {
      .visual-stage .stage-inner .stoerer {
        left: 0;
        margin-right: 0; } }
    @media all and (min-width: 1801px) {
      .visual-stage .stage-inner {
        height: 600px;
        padding-bottom: 0; }
        .visual-stage .stage-inner .keyvisual {
          width: 100%;
          height: auto;
          top: 0;
          transform: translate(0) !important; }
        .visual-stage .stage-inner #picture_caravan .keyvisual {
          top: auto;
          bottom: 0; }
        .visual-stage .stage-inner #picture_auto .keyvisual {
          top: -50px; } }
    @media all and (max-width: 1200px) {
      .visual-stage .stage-inner {
        padding-bottom: 56%; }
        .visual-stage .stage-inner .rechner-holder {
          left: 20px; } }
    @media all and (max-width: 1023px) {
      .visual-stage .stage-inner {
        padding-bottom: 0;
        height: 600px; }
        .visual-stage .stage-inner .rechner-holder {
          left: 20px; }
        .visual-stage .stage-inner .keyvisual {
          width: auto;
          height: 100%; } }
    @media all and (max-width: 768px) {
      .visual-stage .stage-inner .stoerer.righttop, .visual-stage .stage-inner .stoerer.rightbottom, .visual-stage .stage-inner .stoerer.rightcenter {
        left: 360px;
        right: 0; } }
    @media all and (max-width: 640px) {
      .visual-stage .stage-inner {
        height: auto; }
        .visual-stage .stage-inner .rechner-holder {
          left: auto;
          top: auto;
          position: relative;
          margin-top: 20px;
          transform: translate(0); }
        .visual-stage .stage-inner .content-wrapper {
          position: relative;
          left: 0;
          transform: none; }
        .visual-stage .stage-inner .keyvisual {
          display: none; }
        .visual-stage .stage-inner .stoerer {
          bottom: auto;
          left: auto;
          right: auto;
          top: auto;
          position: relative;
          margin: 0; }
          .visual-stage .stage-inner .stoerer.lefttop, .visual-stage .stage-inner .stoerer.righttop, .visual-stage .stage-inner .stoerer.leftbottom, .visual-stage .stage-inner .stoerer.rightbottom, .visual-stage .stage-inner .stoerer.rightcenter, .visual-stage .stage-inner .stoerer.leftcenter {
            bottom: auto;
            left: auto;
            right: auto;
            top: auto;
            position: relative;
            margin: 0;
            transform: none; } }

section.visual-stage nav {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%; }

@media all and (max-width: 640px) {
  section.visual-stage nav {
    position: relative;
    top: auto;
    left: auto;
    height: auto; } }

nav {
  z-index: 4;
  height: 60px;
  background: rgba(51, 51, 51, 0.8); }
  nav .navholder {
    position: relative;
    z-index: 5; }
  @media all and (max-width: 640px) {
    nav.main {
      background: #fff;
      padding: 20px 0; } }
  nav .mainnav li {
    float: left;
    padding: 10px 0 0 25px; }
    nav .mainnav li:first-child {
      padding-left: 0; }
    nav .mainnav li a {
      display: inline-block;
      padding: 11px 25px 12px;
      font-size: 14px;
      line-height: 17px;
      font-weight: 700;
      text-decoration: none;
      color: #fff;
      -webkit-border-radius: 5px;
      -moz-border-radius: 5px;
      -ms-border-radius: 5px;
      -o-border-radius: 5px;
      border-radius: 5px; }
      nav .mainnav li a:hover {
        background-color: #f0f0f0;
        color: #191919; }
    nav .mainnav li.active a {
      background-color: #f0f0f0;
      color: #191919; }
  nav .navholder.form .mainnav li {
    float: right; }
    nav .navholder.form .mainnav li:first-child {
      float: left; }
  nav .navholder.form a.phone {
    display: inline-block;
    padding: 11px 25px 12px;
    font-size: 14px;
    line-height: 17px;
    font-weight: 700;
    text-decoration: none;
    color: #000;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
    background-color: #f0f0f0; }
    nav .navholder.form a.phone .svg {
      display: inline-block;
      margin: 0 10px -3px -5px;
      width: 15px;
      height: 15px; }
  nav .navholder.form span.secure {
    display: inline-block;
    padding: 11px 0 12px;
    font-size: 14px;
    line-height: 17px;
    font-weight: 700;
    color: #fff; }
    nav .navholder.form span.secure .svg {
      display: inline-block;
      margin: 0 10px -3px 0;
      width: 13px;
      height: 17px; }
  @media all and (min-width: 641px) {
    nav {
      overflow-x: auto;
      overflow-y: hidden; }
      nav .mainnav {
        display: block !important; }
      nav .content-wrapper {
        min-width: 800px; }
      nav.form {
        overflow: hidden; }
        nav.form .content-wrapper {
          min-width: 0; } }
  @media all and (max-width: 1200px) {
    nav .mainnav li {
      padding: 10px 0 0 20px; }
      nav .mainnav li:first-child {
        padding-left: 0; }
      nav .mainnav li a {
        padding: 11px 20px 12px; } }
  @media all and (max-width: 640px) {
    nav .navholder {
      padding-bottom: 10px; }
    nav .pulldown-main {
      font-size: 18px;
      line-height: 22px;
      font-weight: 700;
      height: 50px;
      line-height: 50px;
      padding: 0 20px;
      -webkit-border-radius: 10px;
      -moz-border-radius: 10px;
      -ms-border-radius: 10px;
      -o-border-radius: 10px;
      border-radius: 10px;
      color: #fff;
      background-color: #e60000;
      cursor: pointer;
      position: relative;
      z-index: 1; }
      nav .pulldown-main svg {
        position: absolute;
        right: 20px;
        top: 20px;
        width: 16px;
        height: 9px; }
    nav .active .pulldown-main {
      -webkit-border-radius: 10px 10px 0 0;
      -moz-border-radius: 10px 10px 0 0;
      border-radius: 10px 10px 0 0; }
      nav .active .pulldown-main svg {
        transform: rotate(180deg); }
    nav.main .mainnav {
      display: none;
      background-color: #e60000;
      -webkit-border-radius: 0 0 10px 10px;
      -moz-border-radius: 0 0 10px 10px;
      border-radius: 0 0 10px 10px;
      position: relative;
      z-index: 2;
      padding-top: 10px;
      margin-top: -10px; }
      nav.main .mainnav li {
        float: none;
        border-top: 1px solid #fff;
        padding: 0; }
        nav.main .mainnav li a {
          color: #fff;
          padding: 16px 20px;
          display: block; }
          nav.main .mainnav li a:hover {
            background: none;
            color: #fff; }
        nav.main .mainnav li.active {
          display: none; }
    nav.form .mainnav li {
      padding-left: 0; }
      nav.form .mainnav li a.phone {
        padding: 11px 17px 12px; }
      nav.form .mainnav li .secure {
        font-size: 12px;
        line-height: 15px; } }

@media all and (max-width: 640px) {
  .contentseite nav.main {
    display: none; } }

.teaser_maininfo {
  position: relative;
  padding: 40px 0 20px; }
  .teaser_maininfo .back {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1; }
    .teaser_maininfo .back .left, .teaser_maininfo .back .right {
      position: absolute;
      height: 100%;
      width: 50%;
      top: 0; }
    .teaser_maininfo .back .left {
      left: 0; }
    .teaser_maininfo .back .right {
      right: 0; }
  .teaser_maininfo .content-wrapper {
    position: relative;
    z-index: 2;
    *zoom: 1; }
    .teaser_maininfo .content-wrapper:before, .teaser_maininfo .content-wrapper:after {
      content: "";
      display: table; }
    .teaser_maininfo .content-wrapper:after {
      clear: both; }
  .teaser_maininfo .col {
    width: 50%;
    position: relative; }
    .teaser_maininfo .col.left {
      padding: 8px 20px 0 20px; }
    .teaser_maininfo .col.right {
      padding: 12px 20px 0 90px; }
    .teaser_maininfo .col .headline-2 {
      padding-bottom: 20px; }
    .teaser_maininfo .col .bulb {
      width: 50px;
      height: 50px;
      position: absolute;
      left: 20px;
      top: 5px; }
      .teaser_maininfo .col .bulb svg {
        margin: 9px 0 0 14px; }
    .teaser_maininfo .col p {
      padding-bottom: 15px; }
    .teaser_maininfo .col .numberlist {
      padding-top: 10px; }
      .teaser_maininfo .col .numberlist i {
        cursor: pointer; }
  @media all and (max-width: 768px) {
    .teaser_maininfo {
      padding: 40px 0 0; }
      .teaser_maininfo .back {
        display: none; }
      .teaser_maininfo .col {
        width: auto;
        float: none; }
        .teaser_maininfo .col.left {
          *zoom: 1;
          padding: 0; }
          .teaser_maininfo .col.left:before, .teaser_maininfo .col.left:after {
            content: "";
            display: table; }
          .teaser_maininfo .col.left:after {
            clear: both; }
          .teaser_maininfo .col.left .arrowlist {
            float: left;
            width: 50%; }
            .teaser_maininfo .col.left .arrowlist .awards {
              position: absolute;
              right: 0;
              top: 0;
              max-width: 50%; }
        .teaser_maininfo .col.right {
          margin: 0 -20px;
          padding: 40px 20px 20px 90px; }
        .teaser_maininfo .col .bulb {
          top: 40px; } }
  @media all and (max-width: 640px) {
    .teaser_maininfo .col {
      width: auto;
      float: none; }
      .teaser_maininfo .col.left .arrowlist {
        float: none;
        width: 100%; }
        .teaser_maininfo .col.left .arrowlist .awards {
          position: relative;
          right: auto;
          top: auto;
          max-width: 100%; }
      .teaser_maininfo .col.right {
        padding: 22px 20px 10px; }
      .teaser_maininfo .col .bulb {
        display: none; } }

.modul_video {
  padding: 20px 0;
  max-width: 1140px;
  margin: 0 auto; }
  .modul_video .inner {
    position: relative;
    overflow: hidden;
    position: relative;
    display: block; }
    .modul_video .inner .holder {
      position: relative; }
    .modul_video .inner .keyvisual {
      position: absolute;
      left: 50%;
      top: 50%;
      -ms-transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      z-index: 1; }
    .modul_video .inner .content-wrapper {
      position: absolute;
      z-index: 2;
      height: 100%;
      width: 100%;
      left: 50%;
      top: 0;
      transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      -webkit-transform: translate(-50%, 0); }
    .modul_video .inner .headline-2 {
      font-weight: 600;
      padding-top: 22px; }
    .modul_video .inner a {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%); }
    .modul_video .inner .overlay {
      display: none; }
      .modul_video .inner .overlay .play {
        position: absolute;
        left: 50%;
        top: 50%;
        margin: -35px 0 0 -35px; }
    .modul_video .inner.paused .overlay {
      display: block; }
    .modul_video .inner video {
      position: relative;
      z-index: 1;
      display: block; }
  .modul_video video {
    width: 100%; }
  .modul_video .iframe_holder {
    display: none; }
  .modul_video.antrag_modul {
    padding: 20px 0 40px; }
    .modul_video.antrag_modul .headline-2 {
      padding: 12px 0 20px; }
    .modul_video.antrag_modul p {
      padding-bottom: 20px; }
    .modul_video.antrag_modul .inner .content-wrapper {
      padding: 0 20px; }
  @media all and (min-width: 1801px) {
    .modul_video .inner .keyvisual {
      width: 100%; } }
  @media all and (max-width: 640px) {
    .modul_video {
      position: relative; }
      .modul_video .iframe_holder {
        padding-bottom: 56.25%;
        /* Default for 1600x900 videos 16:9 ratio*/
        padding-top: 0px;
        height: 0;
        overflow: hidden;
        display: block;
        position: relative; }
      .modul_video iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; } }

.mfp-inline-holder .mfp-content {
  max-width: 100%; }
  .mfp-inline-holder .mfp-content video {
    max-width: 100%; }

.holdersmall .mfp-inline-holder .mfp-content {
  max-width: 800px;
  padding: 30px; }

.modul_faq {
  background-color: #ddd;
  padding: 32px 0 37px; }
  .modul_faq .inner {
    padding: 0 20px; }
    @media all and (max-width: 1200px) {
      .modul_faq .inner {
        padding: 0; } }
  .modul_faq .headline-2 {
    color: #000; }
  .modul_faq.light {
    background: none; }
  .modul_faq .accordion {
    padding-top: 24px; }
    .modul_faq .accordion .item {
      background-color: #f0f0f0;
      -webkit-border-radius: 3px;
      -moz-border-radius: 3px;
      -ms-border-radius: 3px;
      -o-border-radius: 3px;
      border-radius: 3px;
      padding: 16px 20px 0;
      margin-bottom: 1px; }
      .modul_faq .accordion .item h3 {
        font-size: 14px;
        line-height: 17px;
        font-weight: 600;
        padding: 0 50px 17px 0;
        cursor: pointer;
        position: relative; }
        .modul_faq .accordion .item h3 svg {
          position: absolute;
          top: 6px;
          right: 0;
          width: 13px;
          height: 8px; }
      .modul_faq .accordion .item .content {
        display: none;
        font-size: 15px;
        line-height: 20px;
        padding-top: 20px;
        position: relative; }
        .modul_faq .accordion .item .content p {
          padding-bottom: 20px; }
        .modul_faq .accordion .item .content i {
          position: absolute;
          left: 0;
          top: 0;
          width: 20px;
          height: 3px;
          background-color: #e6e6e6; }
      .modul_faq .accordion .item.active {
        background-color: #fff; }
        .modul_faq .accordion .item.active h3 svg {
          transform: rotate(180deg); }
  .modul_faq .subline {
    padding-top: 15px; }
  @media all and (max-width: 640px) {
    .modul_faq .accordion {
      margin: 0 -20px; } }

.subline_small {
  padding-top: 10px; }
  .subline_small p {
    padding-bottom: 10px; }

.content_modul {
  padding: 30px 0; }

.content_text_bild {
  *zoom: 1;
  padding-top: 25px;
  padding-bottom: 0; }
  .content_text_bild:before, .content_text_bild:after {
    content: "";
    display: table; }
  .content_text_bild:after {
    clear: both; }
  .content_text_bild .headline-2 {
    padding-bottom: 18px; }
  .content_text_bild .img_holder {
    float: left;
    margin: 0 20px 0 0;
    padding: 6px 0 30px; }
    .content_text_bild .img_holder img {
      -webkit-border-radius: 3px;
      -moz-border-radius: 3px;
      -ms-border-radius: 3px;
      -o-border-radius: 3px;
      border-radius: 3px;
      display: block; }
  .content_text_bild.img_right .img_holder {
    float: right;
    margin: 0 0 0 20px; }
  .content_text_bild .text .headline-4 {
    padding-bottom: 20px; }
  .content_text_bild .text p {
    font-size: 15px;
    line-height: 20px;
    padding-bottom: 15px; }
  .content_text_bild .text p + .headline-4 {
    padding-top: 15px; }
  .content_text_bild .text .button {
    margin-top: 11px; }
  .content_text_bild .text li {
    font-size: 15px;
    line-height: 20px; }
  .content_text_bild.antrag_modul {
    padding: 35px 0 9px; }
  @media all and (max-width: 640px) {
    .content_text_bild .img_holder {
      max-width: 50%; }
      .content_text_bild .img_holder img {
        width: 100%; }
    .content_text_bild.antrag_modul {
      padding: 25px 0 11px; } }

.gloss {
  padding-bottom: 30px;
  padding-top: 10px;
  margin-top: 10px;
  font-size: 12px;
  line-height: 15px;
  border-top: 1px solid #dedede; }
  .gloss p {
    padding-bottom: 15px; }
  .gloss #getit {
    font-size: 14px;
    line-height: 17px;
    font-weight: 700;
    cursor: pointer;
    padding-bottom: 10px; }

.content_modul .headline-2 {
  padding-bottom: 19px; }

.content_liste {
  padding-top: 23px;
  padding-bottom: 26px; }
  .content_liste ul, .content_liste ol {
    padding-left: 10px;
    margin-left: 10px;
    font-size: 15px;
    line-height: 20px; }
  .content_liste ul {
    list-style-type: disc; }
  .content_liste ol {
    list-style-type: decimal; }

.content_infobox {
  padding-top: 22px; }
  .content_infobox .infobox {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    padding: 20px 20px 0;
    margin-top: 5px; }
    .content_infobox .infobox svg {
      margin-left: 9px;
      display: none;
      width: 13px;
      height: 11px; }
    .content_infobox .infobox .check svg {
      display: inline-block; }
  .content_infobox.antrag_modul {
    padding: 32px 0 40px; }
    .content_infobox.antrag_modul .headline-2 {
      padding-bottom: 19px; }
    .content_infobox.antrag_modul p {
      padding-bottom: 20px; }
    .content_infobox.antrag_modul .infobox {
      margin-top: 15px; }

.content_table {
  padding-top: 22px;
  padding-bottom: 26px; }
  .content_table table {
    width: 63.6363%;
    border-collapse: collapse; }
    .content_table table th, .content_table table td {
      text-align: left;
      padding: 9px 20px 11px; }
    .content_table table tbody tr:nth-child(odd) td {
      -webkit-border-radius: 3px;
      -moz-border-radius: 3px;
      -ms-border-radius: 3px;
      -o-border-radius: 3px;
      border-radius: 3px; }
    .content_table table.full {
      width: 100%; }
      .content_table table.full td {
        vertical-align: top; }
        .content_table table.full td:first-child {
          font-weight: 700; }
  .content_table .subline {
    padding: 15px 60px 0 12px;
    position: relative; }
    .content_table .subline em {
      position: absolute;
      left: 0;
      top: 16px;
      font-style: normal; }
  @media all and (max-width: 768px) {
    .content_table table {
      width: 100%; }
    .content_table .subline {
      padding-right: 20px; } }
  @media all and (max-width: 640px) {
    .content_table table th {
      display: none; }
    .content_table table td {
      display: block; }
      .content_table table td:first-child {
        padding-bottom: 0; }
    .content_table .subline {
      padding-right: 20px; } }

.modul_credit_steps {
  *zoom: 1;
  padding: 0 0 33px;
  margin-top: -12px; }
  .modul_credit_steps:before, .modul_credit_steps:after {
    content: "";
    display: table; }
  .modul_credit_steps:after {
    clear: both; }
  .modul_credit_steps li {
    float: left;
    width: 17%;
    position: relative;
    display: table; }
    .modul_credit_steps li:first-child {
      padding-left: 0;
      background: none; }
    .modul_credit_steps li.separator {
      width: 2%;
      padding: 0;
      height: 40px; }
    .modul_credit_steps li:last-child {
      padding-right: 0; }
    .modul_credit_steps li span {
      display: table-cell;
      width: 40px;
      height: 40px;
      position: relative;
      z-index: 2;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      -ms-border-radius: 50%;
      -o-border-radius: 50%;
      border-radius: 50%;
      text-align: center;
      float: left;
      margin-right: 10px;
      display: block; }
      .modul_credit_steps li span em {
        font-style: normal; }
    .modul_credit_steps li label {
      display: inline-block;
      display: table-cell;
      width: 100%;
      vertical-align: middle; }
    .modul_credit_steps li .svg {
      position: absolute;
      left: 13px;
      top: 13px;
      visibility: hidden; }
    .modul_credit_steps li.check {
      position: relative; }
      .modul_credit_steps li.check em {
        display: none; }
      .modul_credit_steps li.check .svg {
        display: block;
        width: 13px;
        height: 11px;
        visibility: visible; }
      .modul_credit_steps li.check span {
        border-color: #abc111; }
  @media all and (max-width: 768px) {
    .modul_credit_steps li {
      text-align: center;
      display: block; }
      .modul_credit_steps li label {
        display: none; }
      .modul_credit_steps li span {
        float: none;
        display: inline-block; } }
  @media all and (max-width: 480px) {
    .modul_credit_steps li.separator {
      width: 10px;
      background: none; } }
  @media all and (min-width: 1201px) {
    .modul_credit_steps li {
      white-space: nowrap; } }

.modul_credit_overview {
  padding-bottom: 10px; }
  .modul_credit_overview ul {
    margin: 15px -10px 0;
    *zoom: 1; }
    .modul_credit_overview ul:before, .modul_credit_overview ul:after {
      content: "";
      display: table; }
    .modul_credit_overview ul:after {
      clear: both; }
    .modul_credit_overview ul li {
      padding: 0 10px;
      margin: 10px 0;
      width: 50%;
      float: left;
      position: relative; }
      .modul_credit_overview ul li .inner {
        padding: 10px 20px 8px;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        -ms-border-radius: 3px;
        -o-border-radius: 3px;
        border-radius: 3px;
        display: table;
        width: 100%; }
      .modul_credit_overview ul li label {
        width: 50%;
        display: table-cell; }
      .modul_credit_overview ul li p {
        width: 50%;
        text-align: right;
        display: table-cell;
        position: relative; }
      .modul_credit_overview ul li.full {
        width: 100%;
        text-align: left; }
        .modul_credit_overview ul li.full .inner {
          padding: 16px 20px; }
        .modul_credit_overview ul li.full label {
          display: block;
          width: auto; }
      .modul_credit_overview ul li.toggle {
        cursor: pointer;
        color: #e60000; }
        .modul_credit_overview ul li.toggle label {
          vertical-align: middle;
          cursor: pointer;
          white-space: nowrap;
          width: 100%; }
          .modul_credit_overview ul li.toggle label:after {
            width: 28px;
            height: 28px;
            border-radius: 50%;
            background-color: #e60000;
            position: absolute;
            right: 20px;
            top: 10px;
            content: ""; }
        .modul_credit_overview ul li.toggle .inner {
          padding-bottom: 10px; }
        .modul_credit_overview ul li.toggle svg {
          position: absolute;
          top: 11px;
          right: -3px;
          width: 13px;
          height: 8px; }
      .modul_credit_overview ul li label.open {
        display: table-cell; }
      .modul_credit_overview ul li label.close {
        display: none; }
  .modul_credit_overview.active ul li label.open {
    display: none; }
  .modul_credit_overview.active ul li label.close {
    display: table-cell; }
  .modul_credit_overview.active ul li.toggle svg {
    transform: rotate(180deg);
    top: 9px; }
  .modul_credit_overview .toggle-element {
    display: none;
    *zoom: 1; }
    .modul_credit_overview .toggle-element:before, .modul_credit_overview .toggle-element:after {
      content: "";
      display: table; }
    .modul_credit_overview .toggle-element:after {
      clear: both; }
    .modul_credit_overview .toggle-element .col {
      padding: 30px 20px 0 30px;
      width: 50%;
      float: left;
      display: table; }
      .modul_credit_overview .toggle-element .col:first-child {
        padding: 30px 30px 0 20px; }
    .modul_credit_overview .toggle-element label {
      width: 50%;
      clear: both;
      float: left;
      padding-bottom: 14px; }
    .modul_credit_overview .toggle-element p {
      width: 50%;
      text-align: right;
      float: right;
      position: relative;
      padding-bottom: 14px; }
    .modul_credit_overview .toggle-element .inner {
      padding: 0 20px; }
  @media all and (max-width: 640px) {
    .modul_credit_overview ul li {
      margin: 10px 0 20px;
      width: 100%;
      float: none; }
    .modul_credit_overview .toggle-element .col {
      padding: 0 20px;
      width: 100%;
      float: none; }
      .modul_credit_overview .toggle-element .col:first-child {
        padding: 0 20px; } }

.antrag_formblock {
  padding: 22px 0 10px; }
  .antrag_formblock .headline-2 {
    padding-bottom: 18px; }

.wohnartchange .eigen {
  display: none; }

.lowlabel input[type=radio]:checked + label, .lowlabel input[type=radio]:not(:checked) + label {
  padding-top: 5px;
  line-height: 20px;
  height: auto; }
  .lowlabel input[type=radio]:checked + label:before, .lowlabel input[type=radio]:checked + label:after, .lowlabel input[type=radio]:not(:checked) + label:before, .lowlabel input[type=radio]:not(:checked) + label:after {
    line-height: 30px; }

.formrow span.tooltipp {
  text-decoration: underline;
  display: inline-block;
  cursor: pointer; }

.formblock_absicherung {
  padding: 34px 0 20px;
  position: relative; }
  .formblock_absicherung p {
    padding-bottom: 15px; }
  .formblock_absicherung .inner {
    padding-top: 20px; }
  .formblock_absicherung .safety {
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    margin-bottom: 20px;
    padding: 30px 20px;
    position: relative; }
  @media all and (max-width: 640px) {
    .formblock_absicherung .safety {
      padding-right: 100px; } }
  .formblock_absicherung .rsvagreement {
    padding-top: 15px;
    display: none; }
    .formblock_absicherung .rsvagreement input[type="checkbox"] + label {
      line-height: 25px;
      padding-top: 4px;
      padding-left: 45px; }
    .formblock_absicherung .rsvagreement a {
      color: #e60000;
      text-decoration: none;
      font-weight: 700; }

.antrag_formblock .subline {
  margin: 5px 0 16px; }

/* Donatdiagramm */
.radial-progress {
  border-radius: 50%;
  height: 60px;
  width: 60px;
  position: absolute;
  right: 20px;
  top: 15px; }

.radial-progress .circle .mask, .radial-progress .circle .fill, .radial-progress .circle .shadow {
  border-radius: 50%;
  height: 60px;
  position: absolute;
  width: 60px; }

.radial-progress .circle .mask, .radial-progress .circle .fill {
  border-radius: 50%;
  transition: transform 1s ease 0s; }

.radial-progress .circle .mask {
  clip: rect(0px, 60px, 60px, 30px); }

.radial-progress .circle .mask .fill {
  background-color: #abc111;
  clip: rect(0px, 30px, 60px, 0px); }

.none .radial-progress .circle .mask .fill {
  background: none; }

.radial-progress .inset {
  border-radius: 50%;
  height: 52px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute;
  width: 52px; }

.radial-progress[data-progress="33"] .circle .mask.full, .radial-progress[data-progress="40"] .circle .fill {
  transform: rotate(66deg); }

.radial-progress[data-progress="33"] .circle .fill.fix {
  transform: rotate(132deg); }

.radial-progress[data-progress="33"] .inset .percentage .numbers {
  width: 2337px; }

.radial-progress[data-progress="66"] .circle .mask.full, .radial-progress[data-progress="66"] .circle .fill {
  transform: rotate(117deg); }

.radial-progress[data-progress="66"] .circle .fill.fix {
  transform: rotate(234deg); }

.radial-progress[data-progress="66"] .inset .percentage .numbers {
  width: 3762px; }

.radial-progress[data-progress="100"] .circle .mask.full, .radial-progress[data-progress="100"] .circle .fill {
  transform: rotate(180deg); }

.radial-progress[data-progress="100"] .circle .fill.fix {
  transform: rotate(360deg); }

.radial-progress[data-progress="100"] .inset .percentage .numbers {
  width: 5757px; }

.formelement.full {
  width: 100%;
  float: none; }

.rsvblock {
  display: none; }

.antrag_buttonrow {
  *zoom: 1;
  margin: 40px 0 -15px; }
  .antrag_buttonrow:before, .antrag_buttonrow:after {
    content: "";
    display: table; }
  .antrag_buttonrow:after {
    clear: both; }
  @media all and (max-width: 360px) {
    .antrag_buttonrow .button {
      display: block;
      float: none;
      width: 100%; }
    .antrag_buttonrow input {
      margin-bottom: 20px; } }
  .antrag_buttonrow input[type=submit]:disabled {
    background: #ccc !important; }
  .antrag_buttonrow .errortext {
    display: none;
    margin-top: -20px;
    text-align: right;
    padding-bottom: 10px;
    color: #e60000; }
  .antrag_buttonrow.error .errortext {
    display: block; }

.formblock_rate .creditdetails {
  padding: 17px 0 20px;
  border: solid #dedede;
  border-width: 2px 0;
  margin: 20px 0 0 0 !important; }
  .formblock_rate .creditdetails .col {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    margin: 0;
    width: 100%;
    float: none; }
  .formblock_rate .creditdetails .item {
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 100%;
    padding: 10px 0; }
  .formblock_rate .creditdetails .inner {
    background: #eeefef;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    padding: 8px 15px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: flex-end; }
    .formblock_rate .creditdetails .inner .label {
      -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
      flex: 0 1 auto;
      width: 100%;
      font-size: 13px;
      line-height: 20px;
      padding-bottom: 5px; }
    .formblock_rate .creditdetails .inner .value {
      -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
      flex: 0 1 auto;
      white-space: nowrap;
      font-size: 20px;
      line-height: 26px;
      font-weight: 700; }
  .formblock_rate .creditdetails .item:nth-child(odd) {
    padding-left: 0; }
  .formblock_rate .creditdetails .item:nth-child(even) {
    padding-right: 0; }
  .formblock_rate .creditdetails .headline-2.innerhl {
    padding: 0;
    width: 100%; }
  @media all and (min-width: 769px) {
    .formblock_rate .creditdetails {
      padding: 27px 0 40px;
      margin: 40px 0 0 0 !important; }
      .formblock_rate .creditdetails .item {
        width: 50%;
        padding: 10px; } }

@media all and (min-width: 1201px) {
  .formblock_rate table {
    width: 100%; } }

.content_text.antrag_modul {
  padding-top: 20px; }
  .content_text.antrag_modul .headline-2 {
    padding: 12px 0 20px; }
  .content_text.antrag_modul p {
    padding-bottom: 20px; }

.antrag_modul:last-child {
  border: none;
  padding-bottom: 0;
  margin-bottom: -20px; }

.labeltd {
  display: inline-block;
  width: 200px;
  font-weight: bold; }
  @media all and (max-width: 480px) {
    .labeltd {
      width: auto;
      display: block;
      padding-top: 5px; } }

.info-modal {
  padding-bottom: 0; }
  .info-modal p {
    padding-bottom: 10px; }

.formblock_angaben {
  padding-bottom: 30px; }
  .formblock_angaben .itemholder {
    margin: 0 -10px; }
  .formblock_angaben .item {
    width: 33.3333%;
    padding: 0 10px;
    float: left; }
    .formblock_angaben .item .inner {
      padding: 20px;
      background: #f0f0f0;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      -ms-border-radius: 4px;
      -o-border-radius: 4px;
      border-radius: 4px; }
  .formblock_angaben .formrow label {
    font-weight: 400;
    width: auto;
    padding: 0 0 8px; }
  .formblock_angaben .formrow .inner {
    display: table;
    width: 100%; }
    .formblock_angaben .formrow .inner input, .formblock_angaben .formrow .inner span {
      display: table-cell; }
    .formblock_angaben .formrow .inner span {
      padding-left: 20px;
      font-weight: 600;
      vertical-align: bottom;
      padding-bottom: 9px; }
  .formblock_angaben .formrow .button {
    width: 100%; }
  @media all and (max-width: 768px) {
    .formblock_angaben .item {
      width: 50%; }
      .formblock_angaben .item:last-child {
        width: 100%;
        margin-top: 20px; } }
  @media all and (max-width: 640px) {
    .formblock_angaben .item {
      width: 100%;
      margin-top: 20px; } }

.teaser {
  padding: 70px 0 45px; }
  @media all and (max-width: 768px) {
    .teaser {
      padding: 20px 0; } }

.sectionmarked .teaser {
  padding: 25px 0; }
  @media all and (max-width: 768px) {
    .sectionmarked .teaser {
      padding: 20px 0; } }

.teaser_2col {
  margin: 0 -40px;
  color: #494949; }
  .teaser_2col .col {
    width: 50%;
    float: left;
    padding: 0 40px;
    /*
        .awards {
            img {
                max-width: 160px;
                vertical-align: top;
                margin-right: 10px;
                &:last-child {
                    margin-right: 0;
                }
            }
        }
        */ }
    .teaser_2col .col.full {
      width: 100%;
      float: none; }
    .teaser_2col .col.padbot {
      padding-bottom: 40px; }
    .teaser_2col .col.imgcolright {
      padding-right: 220px;
      position: relative; }
      .teaser_2col .col.imgcolright img {
        vertical-align: text-bottom; }
      .teaser_2col .col.imgcolright .rightcol {
        position: absolute;
        right: 40px;
        bottom: 0; }
    .teaser_2col .col p {
      padding-bottom: 20px;
      font-size: 15px;
      line-height: 24px; }
    .teaser_2col .col .check li {
      padding-left: 40px;
      padding-bottom: 25px;
      position: relative;
      font-weight: 700; }
      .teaser_2col .col .check li:before {
        content: url("../img/icon-checkbox.svg");
        width: 24px;
        height: 19px;
        position: absolute;
        left: 0;
        top: 0; }
  .teaser_2col .four_col {
    padding: 20px 0;
    isplay: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start; }
    .teaser_2col .four_col .col {
      -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
      flex: 0 1 auto;
      flex-wrap: wrap;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      width: 25%;
      padding: 0 40px; }
      .teaser_2col .four_col .col .inner {
        position: relative;
        font-size: 14px;
        line-height: 17px;
        font-weight: 700; }
      @media all and (max-width: 1023px) {
        .teaser_2col .four_col .col {
          width: 50%;
          padding-bottom: 20px; } }
    .teaser_2col .four_col.check .col .inner {
      padding-left: 36px; }
      .teaser_2col .four_col.check .col .inner:before {
        content: url("../img/icon-checkbox.svg");
        width: 24px;
        height: 19px;
        position: absolute;
        left: 0;
        top: 0; }
  .teaser_2col .headline-2 {
    padding-bottom: 16px; }
  .teaser_2col .antrag_bewertung {
    clear: both; }
    .teaser_2col .antrag_bewertung .bewertung {
      text-align: center;
      float: none;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      padding: 0 40px; }
      .teaser_2col .antrag_bewertung .bewertung .item {
        -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        width: 25%; }
      .teaser_2col .antrag_bewertung .bewertung img {
        max-width: 200px;
        margin: 0 20px; }
      .teaser_2col .antrag_bewertung .bewertung .ekomi-widget-container {
        margin: 3px 20px 0; }
      @media all and (max-width: 1023px) {
        .teaser_2col .antrag_bewertung .bewertung .item {
          width: 50%;
          padding-bottom: 20px; }
          .teaser_2col .antrag_bewertung .bewertung .item img {
            max-width: 80%; } }
      @media all and (max-width: 480px) {
        .teaser_2col .antrag_bewertung .bewertung .item {
          width: 100%; }
          .teaser_2col .antrag_bewertung .bewertung .item img {
            max-width: 50%; } }
  @media all and (max-width: 768px) {
    .teaser_2col .col {
      width: auto;
      float: none; }
      .teaser_2col .col:first-child {
        padding-bottom: 40px; }
    .teaser_2col .antrag_bewertung .bewertung .ekomi-widget-container {
      margin: 20px auto 0;
      display: block; }
      .teaser_2col .antrag_bewertung .bewertung .ekomi-widget-container .widget-wrap {
        margin: 0 auto; } }
  @media all and (max-width: 640px) {
    .teaser_2col .antrag_bewertung .bewertung img {
      margin: 0 auto 30px; }
    .teaser_2col .antrag_bewertung .bewertung div {
      margin-top: 0; } }

.teaser_video .col.image img {
  width: 100%;
  display: block; }

.teaserform {
  margin: 0 -1%; }
  .teaserform select, .teaserform input.textfield {
    width: 48%;
    float: left;
    margin: 0 1% 10px; }
  .teaserform .button {
    margin-top: 10px; }
  @media all and (max-width: 480px) {
    .teaserform select, .teaserform input.textfield {
      width: 100%;
      margin: 0 0 10px;
      float: none; } }

.markedblock {
  background: #f0f0f0;
  padding: 35px 40px; }
  .markedblock a.phone {
    text-decoration: none;
    font-weight: 700; }

.teaser_2col .col:first-child .markedblock {
  margin: 0 -40px 0 -10px; }

.teaser_2col .col:last-child .markedblock {
  margin: 0 -10px 0 -40px; }

@media all and (max-width: 768px) {
  .teaser_2col .col:first-child .markedblock, .teaser_2col .col:last-child .markedblock {
    margin: 0; } }

.formblock_rate {
  border-bottom: 2px solid #dedede;
  padding-bottom: 30px; }
  .formblock_rate .headline-2 {
    padding-bottom: 30px; }
  .formblock_rate .colholder {
    margin: 0 -30px; }
  .formblock_rate .col {
    width: 50%;
    padding: 0 30px;
    float: left; }
  .formblock_rate .colhead {
    font-weight: 600;
    font-size: 22px;
    line-height: 28px;
    color: #e60000;
    padding-bottom: 6px;
    padding-right: 25px;
    display: inline-block;
    position: relative; }
    .formblock_rate .colhead .tooltipp-html {
      position: absolute;
      right: 0;
      top: 0; }
  .formblock_rate p {
    font-size: 15px;
    line-height: 24px;
    padding-bottom: 18px; }
  .formblock_rate table {
    border-collapse: collapse;
    margin-top: 15px; }
    .formblock_rate table th {
      background: #eee;
      font-weight: 400; }
    .formblock_rate table th, .formblock_rate table td {
      padding: 9px 8px;
      text-align: center;
      border-bottom: 1px solid #dedede; }
      .formblock_rate table th:last-child, .formblock_rate table th:nth-child(3), .formblock_rate table td:last-child, .formblock_rate table td:nth-child(3) {
        text-align: center; }
      .formblock_rate table th:nth-child(5), .formblock_rate table td:nth-child(5) {
        text-align: center; }
    .formblock_rate table td {
      white-space: nowrap; }
  .formblock_rate .subline {
    padding-top: 40px; }
  @media all and (max-width: 1023px) {
    .formblock_rate table {
      width: 100%; }
      .formblock_rate table thead {
        display: none; }
      .formblock_rate table tr {
        position: relative;
        displaY: block;
        padding-bottom: 50px;
        border-bottom: 1px solid #dedede;
        margin-bottom: 20px; }
        .formblock_rate table tr:nth-child(even) {
          background: #f1f1f1;
          padding-top: 20px; }
        .formblock_rate table tr:nth-child(odd) {
          margin-bottom: 0; }
      .formblock_rate table td {
        display: block;
        width: 100%;
        text-align: right;
        border: none;
        padding: 0 10px; }
        .formblock_rate table td:last-child, .formblock_rate table td:nth-child(3) {
          text-align: right; }
        .formblock_rate table td:first-child {
          text-align: left;
          position: absolute;
          right: 20px;
          bottom: 10px;
          width: 30px; }
        .formblock_rate table td:nth-child(2) {
          font-weight: 700; }
        .formblock_rate table td:before {
          content: attr(data-label);
          width: 20%;
          float: left;
          text-align: left; } }
  @media all and (max-width: 640px) {
    .formblock_rate .col {
      width: auto;
      float: none; }
      .formblock_rate .col:first-child {
        padding-bottom: 40px; } }

.antrag_bewertung {
  padding-top: 30px; }
  .antrag_bewertung .headline-2 {
    padding-bottom: 20px; }
  .antrag_bewertung .bewertung {
    float: right;
    text-align: center; }
    .antrag_bewertung .bewertung img {
      margin: 0 15px;
      max-width: 200px;
      vertical-align: top; }
    .antrag_bewertung .bewertung .ekomi-widget-container {
      display: inline-block;
      margin-left: 15px; }
  .antrag_bewertung a {
    text-decoration: none;
    color: #e60000;
    font-weight: 600; }
  @media all and (max-width: 880px) {
    .antrag_bewertung .bewertung {
      justify-content: center;
      padding-bottom: 20px;
      float: none; }
      .antrag_bewertung .bewertung img {
        margin-bottom: 20px; } }
  @media all and (max-width: 640px) {
    .antrag_bewertung .bewertung img {
      display: block;
      margin: 0 auto 20px; }
      .antrag_bewertung .bewertung img:first-child {
        margin-left: auto; }
    .antrag_bewertung .bewertung .ekomi-widget-container {
      margin-left: 0; } }

.accordion-table {
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 14px; }
  .accordion-table.col-4 td {
    width: 25%; }
  .accordion-table.col-3 td {
    width: 33.3333%; }
  .accordion-table.col-2 td {
    width: 50%; }
  .accordion-table tr {
    position: relative; }
    .accordion-table tr.bordered {
      border-bottom: 3px solid #e6e6e6; }
      .accordion-table tr.bordered + tr td {
        padding-top: 20px; }
    .accordion-table tr td {
      vertical-align: top;
      padding: 0 10px 20px; }
      .accordion-table tr td:first-child {
        padding-left: 0; }
      .accordion-table tr td:last-child {
        padding-right: 0; }
  .accordion-table small {
    display: block; }
  .accordion-table i {
    background-color: #e6e6e6;
    width: 20px;
    height: 3px;
    background-color: #e6e6e6;
    position: relative !important;
    display: block; }
  @media all and (max-width: 768px) {
    .accordion-table {
      display: none; } }
  @media all and (min-width: 769px) {
    .accordion-table {
      font-size: 15px; } }

.accordion .download-holder {
  display: none; }
  @media all and (max-width: 768px) {
    .accordion .download-holder {
      display: block;
      padding: 10px 0 20px; }
      .accordion .download-holder em {
        display: block;
        padding-bottom: 20px; }
      .accordion .download-holder a {
        padding-left: 30px;
        background: url(../img/download.png) 0 2px no-repeat;
        display: block;
        text-decoration: none; }
        .accordion .download-holder a:hover {
          background: url(../img/download_ho.png) 0 2px no-repeat; }
        .accordion .download-holder a span {
          font-weight: 700;
          position: relative; }
        .accordion .download-holder a small {
          float: right;
          font-size: 10px;
          padding-top: 2px;
          color: #9B9B9B; } }

.contactlayer {
  display: none;
  position: fixed;
  left: 100%;
  top: 20%;
  z-index: 1000000;
  -webkit-box-shadow: 7px 0 20px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 7px 0 20px rgba(0, 0, 0, 0.2);
  box-shadow: 7px 0 20px rgba(0, 0, 0, 0.2);
  -webkit-transition: transform 0.5s ease-in-out;
  -moz-transition: transform 0.5s ease-in-out;
  -o-transition: transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out;
  -webkit-transform: translate(0%, 0%);
  -moz-transform: translate(0%, 0%);
  -ms-transform: translate(0%, 0%);
  -o-transform: translate(0%, 0%);
  transform: translate(0%, 0%); }
  @media all and (min-width: 641px) {
    .contactlayer {
      display: block; } }
  .contactlayer .layer_inner {
    display: inline-block;
    position: relative;
    z-index: 2; }
    .contactlayer .layer_inner .inner {
      border: solid #dedede;
      border-width: 1px 0 1px 1px;
      padding: 12px 20px 18px;
      background: #f0f0f0;
      min-width: 300px; }
    .contactlayer .layer_inner .headline-2 {
      padding-bottom: 7px; }
    .contactlayer .layer_inner strong {
      display: block; }
    .contactlayer .layer_inner a.phone {
      color: #191919;
      text-decoration: none;
      font-weight: 700; }
    .contactlayer .layer_inner p {
      padding-bottom: 10px; }
  .contactlayer .layer_toggle {
    width: 50px;
    height: 60px;
    background: #e60000;
    -webkit-border-radius: 10px 0 0 10px;
    -moz-border-radius: 10px 0 0 10px;
    border-radius: 10px 0 0 10px;
    -webkit-box-shadow: 7px 0 20px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 7px 0 20px rgba(0, 0, 0, 0.2);
    box-shadow: 7px 0 20px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    position: absolute;
    top: 0;
    left: -50px;
    z-index: 1;
    background: url(../img/phone_envelope.svg) center center no-repeat #e60000;
    background-size: 25px 25px; }
  .contactlayer.open {
    -webkit-transform: translate(-100%, 0%);
    -moz-transform: translate(-100%, 0%);
    -ms-transform: translate(-100%, 0%);
    -o-transform: translate(-100%, 0%);
    transform: translate(-100%, 0%); }
    .contactlayer.open .layer_toggle {
      background-image: url(../img/exit.svg);
      background-size: 20px 20px; }

.ewew {
  padding-right: 40px;
  position: relative; }
  .ewew .infotext p {
    padding-bottom: 15px; }
  .ewew .infotext a {
    color: #e60000;
    font-weight: 700;
    text-decoration: none; }

.dyncheck .formelement {
  width: 100%; }

.dyncheck input[type=checkbox] + label {
  width: auto;
  display: block;
  float: none;
  margin-bottom: 20px;
  padding-top: 2px;
  height: auto; }
  .dyncheck input[type=checkbox] + label:last-child {
    margin-bottom: 0; }

@media all and (max-width: 640px) {
  .dyncheck .formelement {
    padding-right: 0; }
    .dyncheck .formelement input[type=checkbox] + label {
      width: 100%;
      float: none;
      display: block; } }

#cookiebar {
  position: fixed;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.7);
  padding: 20px 0;
  width: 100%;
  z-index: 999;
  transform: translate(0, 100%);
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out; }
  #cookiebar.open {
    transform: translate(0, 0); }
  #cookiebar .content-wrapper {
    display: table;
    width: 100%; }
  #cookiebar .info {
    display: table-cell;
    width: 100%;
    padding: 0 20px 0 0;
    color: #fff;
    font-size: 15px;
    line-height: 25px; }
    #cookiebar .info a {
      color: #fff; }
  #cookiebar .buttonholder {
    display: table-cell;
    width: 1%;
    vertical-align: middle; }
  @media all and (max-width: 768px) {
    #cookiebar .info {
      display: block;
      padding-bottom: 20px; }
    #cookiebar .buttonholder {
      width: 100%;
      text-align: center;
      display: block; }
      #cookiebar .buttonholder .button {
        display: inline-block;
        width: auto; } }

.modul_text {
  background-color: #f0f0f0;
  padding: 70px 0; }
  .modul_text h1, .modul_text p {
    color: #000;
    padding-bottom: 25px; }
  .modul_text h2, .modul_text h3 {
    padding-bottom: 5px; }
  .modul_text h3 {
    font-weight: 700; }
  .modul_text p {
    line-height: 1.5; }
  @media all and (max-width: 768px) {
    .modul_text {
      padding: 40px 0; } }

.modul_teaser_video {
  background: #ddd; }
  .modul_teaser_video .content-wrapper {
    padding: 40px 120px; }
    .modul_teaser_video .content-wrapper .embed-container {
      position: relative;
      padding-bottom: 56.25%;
      /* ratio 16x9 */
      height: 0;
      overflow: hidden;
      width: 100%;
      height: auto; }
      .modul_teaser_video .content-wrapper .embed-container iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
    @media all and (max-width: 880px) {
      .modul_teaser_video .content-wrapper {
        padding: 40px; } }
    @media all and (max-width: 640px) {
      .modul_teaser_video .content-wrapper {
        padding: 20px; } }

/* This is the default Tooltipster theme (feel free to modify or duplicate and create multiple themes!): */
.tooltipster-default {
  max-width: 300px;
  cursor: default;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px; }

/* Use this next selector to style things like font-size and line-height: */
.tooltipster-default .tooltipster-content {
  padding: 15px 20px; }
  .tooltipster-default .tooltipster-content img {
    max-width: 200px;
    margin-top: 5px; }

/* This next selector defines the color of the border on the outside of the arrow. This will automatically match the color and size of the border set on the main tooltip styles. Set display: none; if you would like a border around the tooltip but no border around the arrow */
.tooltipster-default .tooltipster-arrow .tooltipster-arrow-border {
  /* border-color: ... !important; */ }

/* If you're using the icon option, use this next selector to style them */
.tooltipster-icon {
  cursor: help;
  margin-left: 4px; }

/* This is the base styling required to make all Tooltipsters work */
.tooltipster-base {
  padding: 0;
  font-size: 0;
  line-height: 0;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 999999;
  pointer-events: none;
  width: auto;
  overflow: visible; }

.formrow .tooltipster-base {
  z-index: 10; }

.tooltipster-base .tooltipster-content {
  overflow: hidden; }

/* These next classes handle the styles for the little arrow attached to the tooltip. By default, the arrow will inherit the same colors and border as what is set on the main tooltip itself. */
.tooltipster-arrow {
  display: block;
  text-align: center;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  z-index: -1; }

.tooltipster-arrow span, .tooltipster-arrow-border {
  display: block;
  width: 0;
  height: 0;
  position: absolute; }

.tooltipster-arrow-top span, .tooltipster-arrow-top-right span, .tooltipster-arrow-top-left span {
  border-left: 10px solid transparent !important;
  border-right: 10px solid transparent !important;
  border-top: 15px solid;
  bottom: -9px; }

.tooltipster-arrow-top .tooltipster-arrow-border, .tooltipster-arrow-top-right .tooltipster-arrow-border, .tooltipster-arrow-top-left .tooltipster-arrow-border {
  border-left: 9px solid transparent !important;
  border-right: 9px solid transparent !important;
  border-top: 9px solid;
  bottom: -7px; }

.tooltipster-arrow-bottom span, .tooltipster-arrow-bottom-right span, .tooltipster-arrow-bottom-left span {
  border-left: 10px solid transparent !important;
  border-right: 10px solid transparent !important;
  border-bottom: 15px solid;
  top: -9px; }

.tooltipster-arrow-bottom .tooltipster-arrow-border, .tooltipster-arrow-bottom-right .tooltipster-arrow-border, .tooltipster-arrow-bottom-left .tooltipster-arrow-border {
  border-left: 9px solid transparent !important;
  border-right: 9px solid transparent !important;
  border-bottom: 9px solid;
  top: -7px; }

.tooltipster-arrow-top span, .tooltipster-arrow-top .tooltipster-arrow-border, .tooltipster-arrow-bottom span, .tooltipster-arrow-bottom .tooltipster-arrow-border {
  left: 0;
  right: 0;
  margin: 0 auto; }

.tooltipster-arrow-top-left span, .tooltipster-arrow-bottom-left span {
  left: 6px; }

.tooltipster-arrow-top-left .tooltipster-arrow-border, .tooltipster-arrow-bottom-left .tooltipster-arrow-border {
  left: 5px; }

.tooltipster-arrow-top-right span, .tooltipster-arrow-bottom-right span {
  right: 6px; }

.tooltipster-arrow-top-right .tooltipster-arrow-border, .tooltipster-arrow-bottom-right .tooltipster-arrow-border {
  right: 5px; }

.tooltipster-arrow-left span, .tooltipster-arrow-left .tooltipster-arrow-border {
  border-top: 10px solid transparent !important;
  border-bottom: 10px solid transparent !important;
  border-left: 10px solid;
  top: 50%;
  margin-top: -5px;
  right: -9px; }

.tooltipster-arrow-left .tooltipster-arrow-border {
  border-top: 9px solid transparent !important;
  border-bottom: 9px solid transparent !important;
  border-left: 9px solid;
  margin-top: -8px; }

.tooltipster-arrow-right span, .tooltipster-arrow-right .tooltipster-arrow-border {
  border-top: 8px solid transparent !important;
  border-bottom: 8px solid transparent !important;
  border-right: 8px solid;
  top: 50%;
  margin-top: -7px;
  left: -7px; }

.tooltipster-arrow-right .tooltipster-arrow-border {
  border-top: 9px solid transparent !important;
  border-bottom: 9px solid transparent !important;
  border-right: 9px solid;
  margin-top: -8px; }

/* Some CSS magic for the awesome animations - feel free to make your own custom animations and reference it in your Tooltipster settings! */
.tooltipster-fade {
  opacity: 1;
  -webkit-transition-property: opacity;
  -moz-transition-property: opacity;
  -o-transition-property: opacity;
  -ms-transition-property: opacity;
  transition-property: opacity; }

.tooltipster-fade-show {
  opacity: 1; }

.tooltipster-grow {
  -webkit-transform: scale(0, 0);
  -moz-transform: scale(0, 0);
  -o-transform: scale(0, 0);
  -ms-transform: scale(0, 0);
  transform: scale(0, 0);
  -webkit-transition-property: -webkit-transform;
  -moz-transition-property: -moz-transform;
  -o-transition-property: -o-transform;
  -ms-transition-property: -ms-transform;
  transition-property: transform;
  -webkit-backface-visibility: hidden; }

.tooltipster-grow-show {
  -webkit-transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  -o-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  transform: scale(1, 1);
  -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  -moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  -ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  -o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15); }

.tooltipster-swing {
  opacity: 0;
  -webkit-transform: rotateZ(4deg);
  -moz-transform: rotateZ(4deg);
  -o-transform: rotateZ(4deg);
  -ms-transform: rotateZ(4deg);
  transform: rotateZ(4deg);
  -webkit-transition-property: -webkit-transform, opacity;
  -moz-transition-property: -moz-transform;
  -o-transition-property: -o-transform;
  -ms-transition-property: -ms-transform;
  transition-property: transform; }

.tooltipster-swing-show {
  opacity: 1;
  -webkit-transform: rotateZ(0deg);
  -moz-transform: rotateZ(0deg);
  -o-transform: rotateZ(0deg);
  -ms-transform: rotateZ(0deg);
  transform: rotateZ(0deg);
  -webkit-transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 1);
  -webkit-transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 2.4);
  -moz-transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 2.4);
  -ms-transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 2.4);
  -o-transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 2.4);
  transition-timing-function: cubic-bezier(0.23, 0.635, 0.495, 2.4); }

.tooltipster-fall {
  top: 0;
  -webkit-transition-property: top;
  -moz-transition-property: top;
  -o-transition-property: top;
  -ms-transition-property: top;
  transition-property: top;
  -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  -moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  -ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  -o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15); }

.tooltipster-fall.tooltipster-dying {
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -o-transition-property: all;
  -ms-transition-property: all;
  transition-property: all;
  top: 0px !important;
  opacity: 0; }

.tooltipster-slide {
  left: -40px;
  -webkit-transition-property: left;
  -moz-transition-property: left;
  -o-transition-property: left;
  -ms-transition-property: left;
  transition-property: left;
  -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  -moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  -ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  -o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15);
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.15); }

.tooltipster-slide.tooltipster-dying {
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -o-transition-property: all;
  -ms-transition-property: all;
  transition-property: all;
  left: 0px !important;
  opacity: 0; }

/* CSS transition for when contenting is changing in a tooltip that is still open. The only properties that will NOT transition are: width, height, top, and left */
.tooltipster-content-changing {
  opacity: 0.5;
  -webkit-transform: scale(1.1, 1.1);
  -moz-transform: scale(1.1, 1.1);
  -o-transform: scale(1.1, 1.1);
  -ms-transform: scale(1.1, 1.1);
  transform: scale(1.1, 1.1); }

.formelement .inner .tooltipster-base, .formblock_absicherung .inner .tooltipster-base {
  display: none; }

.formelement .error .tooltipster-base, .formblock_absicherung .error .tooltipster-base {
  top: auto;
  bottom: 0;
  cursor: default;
  max-width: 100%;
  display: block;
  position: relative;
  clear: both;
  display: block;
  background: none;
  border: none; }
  .formelement .error .tooltipster-base .tooltipster-content, .formblock_absicherung .error .tooltipster-base .tooltipster-content {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    padding: 14px 20px;
    margin-bottom: 20px;
    width: 100%; }

.formelement .error .tooltipster-arrow, .formblock_absicherung .error .tooltipster-arrow {
  bottom: 1px;
  top: auto;
  z-index: 1; }
  .formelement .error .tooltipster-arrow .tooltipster-arrow-border, .formblock_absicherung .error .tooltipster-arrow .tooltipster-arrow-border {
    margin-bottom: -3px; }

input:-moz-ui-invalid,
input:invalid,
select:-moz-ui-invalid,
select:invalid {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none; }

.formblock_absicherung .error .tooltipster-base {
  width: 100%;
  position: relative;
  top: -20px;
  bottom: auto; }

.tooltip_templates {
  display: none; }

.tooltipster-sidetip.tooltipster-light .tooltipster-box {
  border-radius: 3px;
  border: 1px solid #dedede;
  background: #ffffff; }

.tooltipster-sidetip.tooltipster-light .tooltipster-content {
  color: #666; }

.tooltipster-sidetip.tooltipster-light .tooltipster-arrow,
.tooltipster-sidetip.tooltipster-default .tooltipster-arrow {
  height: 9px;
  margin-left: -9px;
  width: 18px;
  z-index: 10; }

.tooltipster-sidetip.tooltipster-light.tooltipster-right .tooltipster-arrow,
.tooltipster-sidetip.tooltipster-default.tooltipster-right .tooltipster-arrow {
  margin-left: -1px;
  left: -25px; }

.tooltipster-sidetip.tooltipster-light.tooltipster-left .tooltipster-arrow,
.tooltipster-sidetip.tooltipster-default.tooltipster-left .tooltipster-arrow {
  margin-right: -1px;
  right: -7px;
  left: auto; }

.tooltipster-sidetip.tooltipster-light.tooltipster-top .tooltipster-arrow {
  margin-top: -1px; }

.tooltipster-sidetip.tooltipster-default.tooltipster-top .tooltipster-arrow {
  margin-top: 0; }

.tooltipster-sidetip.tooltipster-light.tooltipster-bottom .tooltipster-arrow {
  margin-bottom: -1px;
  top: -25px; }

.tooltipster-sidetip.tooltipster-default.tooltipster-bottom .tooltipster-arrow {
  margin-bottom: -1px;
  top: -26px; }

.tooltipster-sidetip.tooltipster-light.tooltipster-left .tooltipster-arrow,
.tooltipster-sidetip.tooltipster-light.tooltipster-right .tooltipster-arrow {
  height: 18px;
  margin-left: 0;
  margin-top: -9px;
  width: 9px; }

.tooltipster-sidetip.tooltipster-light .tooltipster-arrow-background,
.tooltipster-sidetip.tooltipster-default .tooltipster-arrow-background {
  border: 13px solid transparent; }

.tooltipster-sidetip.tooltipster-light.tooltipster-bottom .tooltipster-arrow-background {
  border-bottom-color: #dedede;
  top: 1px;
  margin-left: -1px; }

.tooltipster-sidetip.tooltipster-default.tooltipster-bottom .tooltipster-arrow-background {
  border-bottom-color: #a9c12f;
  top: 1px;
  margin-left: -1px; }

.tooltipster-sidetip.tooltipster-light.tooltipster-left .tooltipster-arrow-background {
  border-left-color: #dedede;
  left: -1px; }

.tooltipster-sidetip.tooltipster-default.tooltipster-left .tooltipster-arrow-background {
  border-left-color: #a9c12f;
  left: -1px; }

.tooltipster-sidetip.tooltipster-light.tooltipster-right .tooltipster-arrow-background {
  border-right-color: #dedede; }

.tooltipster-sidetip.tooltipster-default.tooltipster-right .tooltipster-arrow-background {
  border-right-color: #a9c12f; }

.tooltipster-sidetip.tooltipster-light.tooltipster-top .tooltipster-arrow-background {
  border-top-color: #dedede;
  top: -2px;
  margin-left: -1px; }

.tooltipster-sidetip.tooltipster-default.tooltipster-top .tooltipster-arrow-background {
  border-top-color: #a9c12f;
  top: -2px;
  margin-left: -1px; }

.tooltipster-sidetip.tooltipster-light .tooltipster-arrow-border,
.tooltipster-sidetip.tooltipster-default .tooltipster-arrow-border {
  border: 12px solid transparent; }

.tooltipster-sidetip.tooltipster-light.tooltipster-bottom .tooltipster-arrow-border {
  border-bottom-color: #fff;
  margin-top: 2px; }

.tooltipster-sidetip.tooltipster-default.tooltipster-bottom .tooltipster-arrow-border {
  border-bottom-color: #f2f6dd;
  margin-top: 2px; }

.tooltipster-sidetip.tooltipster-light.tooltipster-left .tooltipster-arrow-border {
  border-left-color: #fff;
  margin-top: 1px; }

.tooltipster-sidetip.tooltipster-default.tooltipster-left .tooltipster-arrow-border {
  border-left-color: #f2f6dd;
  margin-top: 1px; }

.tooltipster-sidetip.tooltipster-light.tooltipster-right .tooltipster-arrow-border {
  border-right-color: #fff;
  margin-left: 2px;
  margin-top: 1px; }

.tooltipster-sidetip.tooltipster-default.tooltipster-right .tooltipster-arrow-border {
  border-right-color: #f2f6dd;
  margin-left: 2px;
  margin-top: 1px; }

.tooltipster-sidetip.tooltipster-light.tooltipster-top .tooltipster-arrow-border {
  border-top-color: #fff; }

.tooltipster-sidetip.tooltipster-default.tooltipster-top .tooltipster-arrow-border {
  border-top-color: #f2f6dd; }

.tooltipster-sidetip.tooltipster-light.tooltipster-bottom .tooltipster-arrow-uncropped,
.tooltipster-sidetip.tooltipster-default.tooltipster-bottom .tooltipster-arrow-uncropped {
  top: -9px; }

.tooltipster-sidetip.tooltipster-light.tooltipster-right .tooltipster-arrow-uncropped,
.tooltipster-sidetip.tooltipster-default.tooltipster-right .tooltipster-arrow-uncropped {
  left: -9px; }

.tooltip_content {
  color: #191919;
  font-size: 15px;
  line-height: 20px;
  max-width: 800px;
  padding: 21px 30px 10px; }
  .tooltip_content p {
    padding-bottom: 17px; }
  .tooltip_content .headline-2 {
    padding-bottom: 5px;
    color: #e60000; }
  .tooltip_content a {
    color: #e60000;
    text-decoration: none; }
  .tooltip_content strong a {
    font-weight: 700; }
  .tooltip_content .close {
    width: 26px;
    height: 26px;
    position: absolute;
    top: 15px;
    right: 15px;
    cursor: pointer;
    background: url(../img/tooltipp_close.png) center no-repeat #d0d0d0; }
  .tooltip_content:before {
    content: '';
    display: block;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: .5;
    z-index: -1; }

.tooltipster-content {
  color: #191919;
  font-size: 15px;
  line-height: 20px;
  padding: 10px; }

/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.3;
  filter: alpha(opacity=30); }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
  max-width: 800px;
  padding: 20px; }

.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
  width: auto;
  cursor: auto;
  background-color: #f0f0f0; }
  .mfp-inline-holder .mfp-content video, .mfp-ajax-holder .mfp-content video {
    display: block; }
  .mfp-inline-holder .mfp-content .video_overlay .mfp-close, .mfp-ajax-holder .mfp-content .video_overlay .mfp-close {
    right: -10px;
    top: -10px; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }

.mfp-preloader a {
  color: #CCC; }

.mfp-preloader a:hover {
  color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  -webkit-box-shadow: none;
  box-shadow: none; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  filter: alpha(opacity=65);
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }

.mfp-close:hover, .mfp-close:focus {
  opacity: 1;
  filter: alpha(opacity=100); }

.mfp-close:active {
  top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  filter: alpha(opacity=65);
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

.mfp-arrow:active {
  margin-top: -54px; }

.mfp-arrow:hover, .mfp-arrow:focus {
  opacity: 1;
  filter: alpha(opacity=100); }

.mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent; }

.mfp-arrow:after, .mfp-arrow .mfp-a {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px; }

.mfp-arrow:before, .mfp-arrow .mfp-b {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }

.mfp-arrow-left:after, .mfp-arrow-left .mfp-a {
  border-right: 17px solid #FFF;
  margin-left: 31px; }

.mfp-arrow-left:before, .mfp-arrow-left .mfp-b {
  margin-left: 25px;
  border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }

.mfp-arrow-right:after, .mfp-arrow-right .mfp-a {
  border-left: 17px solid #FFF;
  margin-left: 39px; }

.mfp-arrow-right:before, .mfp-arrow-right .mfp-b {
  border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px; }

.mfp-iframe-holder .mfp-close {
  top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }

.mfp-figure:after {
  content: '';
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444; }

.mfp-figure small {
  color: #BDBDBD;
  display: block;
  font-size: 12px;
  line-height: 14px; }

.mfp-figure figure {
  margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; } }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; } }

.mfp-ie7 .mfp-img {
  padding: 0; }

.mfp-ie7 .mfp-bottom-bar {
  width: 600px;
  left: 50%;
  margin-left: -300px;
  margin-top: 5px;
  padding-bottom: 5px; }

.mfp-ie7 .mfp-container {
  padding: 0; }

.mfp-ie7 .mfp-content {
  padding-top: 44px; }

.mfp-ie7 .mfp-close {
  top: 0;
  right: 0;
  padding-top: 0; }

.magnific_info_layer {
  max-width: 65%;
  margin: 0 auto;
  position: relative;
  padding: 15px 20px; }
  .magnific_info_layer .headline-3 {
    padding-bottom: 10px; }
  .magnific_info_layer .bottom_close {
    text-align: right; }
