html,
body {
  padding: 0;
  margin: 0;
  width: 100%;
}
html {
  height: 100%;
}
body {
  background-color: #FFFFFF;
  position: relative;
  min-width: 320px;
  min-height: 100%;
  word-wrap: break-word;
}
.grid,
.container,
.module {
  -webkit-flex: 1 0 auto;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
}
.grid.fix[class][class][class],
.container.fix[class][class][class],
.module.fix[class][class][class] {
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  min-width: 0px;
}
.grid.fullwidth,
.container.fullwidth,
.module.fullwidth {
  width: 100vw;
  -webkit-flex-basis: 100vw;
  flex-basis: 100vw;
  -webkit-flex-shrink: 1;
  -ms-flex-shrink: 1;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  justify-content: flex-start;
  max-width: 100%;
}
.grid,
.container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  -ms-flex-wrap: wrap;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}
.grid {
  width: auto;
  margin: 0 auto;
  clear: both;
  position: relative;
  -webkit-flex-basis: 100%;
  flex-basis: 100%;
}
.cropped {
  overflow: hidden;
}
.module {
  box-sizing: border-box;
  padding-left: 10px;
  padding-right: 10px;
  overflow: visible;
}
.no-flex .grid,
.no-flex .container,
.no-flex .module {
  display: block;
}
.no-flex .container,
.no-flex .module {
  float: left;
}
.no-flex .grid > #footer > .container.l-12:not(.fix),
.no-flex .grid > .container.l-12:not(.fix),
.no-flex .grid > .hero.l-12:not(.fix) {
  clear: left;
}
.align-center {
  text-align: center;
}
.align-right {
  text-align: right;
}
.align-left {
  text-align: left;
}
.align-justify {
  text-align: justify;
}
.grid.left,
.container.left,
.module.left {
  margin-left: 0;
  margin-right: auto;
}
.grid.center,
.container.center,
.module.center {
  margin-left: auto;
  margin-right: auto;
}
.grid.right,
.container.right,
.module.right {
  margin-left: auto;
  margin-right: 0px;
}
span.left:not(.icon),
a.left:not(.icon),
p.left,
h1.left,
h2.left,
h3.left,
h4.left,
h5.left,
h6.left {
  float: left;
}
span.right:not(.icon),
a.right:not(.icon),
p.right,
h1.right,
h2.right,
h3.right,
h4.right,
h5.right,
h6.right {
  float: right;
}
.container.center {
  -webkit-justify-content: center;
  -ms-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.container.left {
  -webkit-justify-content: flex-start;
  -ms-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.container.right {
  -webkit-justify-content: flex-end;
  -ms-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.container.row {
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  -ms-flex-align: space-between;
  justify-content: space-between;
}
.l-1 {
  width: 80px;
  min-width: 7.96875vw;
  -webkit-flex-basis: 7.96875vw;
  flex-basis: 7.96875vw;
  -webkit-flex-grow: 1;
  -ms-flex-grow: 1;
  flex-grow: 1;
}
.l-2 {
  width: 160px;
  min-width: 15.9375vw;
  -webkit-flex-basis: 15.9375vw;
  flex-basis: 15.9375vw;
  -webkit-flex-grow: 2;
  -ms-flex-grow: 2;
  flex-grow: 2;
}
.l-3 {
  width: 240px;
  min-width: 23.90625vw;
  -webkit-flex-basis: 23.90625vw;
  flex-basis: 23.90625vw;
  -webkit-flex-grow: 3;
  -ms-flex-grow: 3;
  flex-grow: 3;
}
.l-4 {
  width: 320px;
  min-width: 31.875vw;
  -webkit-flex-basis: 31.875vw;
  flex-basis: 31.875vw;
  -webkit-flex-grow: 4;
  -ms-flex-grow: 4;
  flex-grow: 4;
}
.l-5 {
  width: 400px;
  min-width: 39.84375vw;
  -webkit-flex-basis: 39.84375vw;
  flex-basis: 39.84375vw;
  -webkit-flex-grow: 5;
  -ms-flex-grow: 5;
  flex-grow: 5;
}
.l-6 {
  width: 480px;
  min-width: 47.8125vw;
  -webkit-flex-basis: 47.8125vw;
  flex-basis: 47.8125vw;
  -webkit-flex-grow: 6;
  -ms-flex-grow: 6;
  flex-grow: 6;
}
.l-7 {
  width: 560px;
  min-width: 55.78125vw;
  -webkit-flex-basis: 55.78125vw;
  flex-basis: 55.78125vw;
  -webkit-flex-grow: 7;
  -ms-flex-grow: 7;
  flex-grow: 7;
}
.l-8 {
  width: 640px;
  min-width: 63.75vw;
  -webkit-flex-basis: 63.75vw;
  flex-basis: 63.75vw;
  -webkit-flex-grow: 8;
  -ms-flex-grow: 8;
  flex-grow: 8;
}
.l-9 {
  width: 720px;
  min-width: 71.71875vw;
  -webkit-flex-basis: 71.71875vw;
  flex-basis: 71.71875vw;
  -webkit-flex-grow: 9;
  -ms-flex-grow: 9;
  flex-grow: 9;
}
.l-10 {
  width: 800px;
  min-width: 79.6875vw;
  -webkit-flex-basis: 79.6875vw;
  flex-basis: 79.6875vw;
  -webkit-flex-grow: 10;
  -ms-flex-grow: 10;
  flex-grow: 10;
}
.l-11 {
  width: 880px;
  min-width: 87.65625vw;
  -webkit-flex-basis: 87.65625vw;
  flex-basis: 87.65625vw;
  -webkit-flex-grow: 11;
  -ms-flex-grow: 11;
  flex-grow: 11;
}
.l-12 {
  width: 960px;
  min-width: 95.625vw;
  -webkit-flex-basis: 95.625vw;
  flex-basis: 95.625vw;
  -webkit-flex-grow: 12;
  -ms-flex-grow: 12;
  flex-grow: 12;
}
.fix[class][class] {
  min-width: 0px;
  flex-grow: 0;
  flex-basis: auto;
}
/*  */
.no-flex .l-1, .no-flex .l-2, .no-flex .l-3, .no-flex .l-4, .no-flex .l-5, .no-flex .l-6, .no-flex .l-7, .no-flex .l-8, .no-flex .l-9, .no-flex .l-10, .no-flex .l-11, .no-flex .l-12 {
  min-width: 0px;
}
/*  */
@media screen and (min-width: 980px) {
  .l-0[class][class][class] {
    display: none;
  }
  /*  */
  .l-fix {
    min-width: 0px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }
  /*  */
  /*  */
  .l-align-center {
    text-align: center;
  }
  .l-align-right {
    text-align: right;
  }
  .l-align-left {
    text-align: left;
  }
  .l-align-justify {
    text-align: justify;
  }
  .grid.l-center,
  .container.l-center,
  .module.l-center {
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .m-0[class][class][class] {
    display: none;
  }
  .l-1,
  .m-1[class] {
    width: 80px;
    min-width: 11.6796875vw;
    -webkit-flex-basis: 11.6796875vw;
    flex-basis: 11.6796875vw;
    -webkit-flex-grow: 1;
    -ms-flex-grow: 1;
    flex-grow: 1;
  }
  .l-2,
  .m-2[class] {
    width: 160px;
    min-width: 23.359375vw;
    -webkit-flex-basis: 23.359375vw;
    flex-basis: 23.359375vw;
    -webkit-flex-grow: 2;
    -ms-flex-grow: 2;
    flex-grow: 2;
  }
  .l-3,
  .m-3[class] {
    width: 240px;
    min-width: 35.0390625vw;
    -webkit-flex-basis: 35.0390625vw;
    flex-basis: 35.0390625vw;
    -webkit-flex-grow: 3;
    -ms-flex-grow: 3;
    flex-grow: 3;
  }
  .l-4,
  .m-4[class] {
    width: 320px;
    min-width: 46.71875vw;
    -webkit-flex-basis: 46.71875vw;
    flex-basis: 46.71875vw;
    -webkit-flex-grow: 4;
    -ms-flex-grow: 4;
    flex-grow: 4;
  }
  .l-5,
  .m-5[class] {
    width: 400px;
    min-width: 58.3984375vw;
    -webkit-flex-basis: 58.3984375vw;
    flex-basis: 58.3984375vw;
    -webkit-flex-grow: 5;
    -ms-flex-grow: 5;
    flex-grow: 5;
  }
  .l-6,
  .m-6[class] {
    width: 480px;
    min-width: 70.078125vw;
    -webkit-flex-basis: 70.078125vw;
    flex-basis: 70.078125vw;
    -webkit-flex-grow: 6;
    -ms-flex-grow: 6;
    flex-grow: 6;
  }
  .l-7,
  .m-7[class] {
    width: 560px;
    min-width: 81.7578125vw;
    -webkit-flex-basis: 81.7578125vw;
    flex-basis: 81.7578125vw;
    -webkit-flex-grow: 7;
    -ms-flex-grow: 7;
    flex-grow: 7;
  }
  .l-8,
  .m-8[class] {
    width: 640px;
    min-width: 93.4375vw;
    -webkit-flex-basis: 93.4375vw;
    flex-basis: 93.4375vw;
    -webkit-flex-grow: 8;
    -ms-flex-grow: 8;
    flex-grow: 8;
  }
  .l-9,
  .l-10,
  .l-11,
  .l-12 {
    width: 640px;
    min-width: 93.4375vw;
    -webkit-flex-basis: 93.4375vw;
    flex-basis: 93.4375vw;
    -webkit-flex-grow: 8;
    -ms-flex-grow: 8;
    flex-grow: 8;
  }
  .m-1.fix[class], .m-2.fix[class], .m-3.fix[class], .m-4.fix[class], .m-5.fix[class], .m-6.fix[class], .m-7.fix[class], .m-8.fix[class] {
    min-width: 0px;
    flex-grow: 0;
    flex-basis: auto;
  }
  /*  */
  .no-flex .m-1, .no-flex .m-2, .no-flex .m-3, .no-flex .m-4, .no-flex .m-5, .no-flex .m-6, .no-flex .m-7, .no-flex .m-8 {
    min-width: 0px;
  }
  /*  */
  /*  */
  .m-fix[class] {
    min-width: 0px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }
  /*  */
  /*  */
  .m-align-center {
    text-align: center;
  }
  .m-align-right {
    text-align: right;
  }
  .m-align-left {
    text-align: left;
  }
  .m-align-justify {
    text-align: justify;
  }
  .grid.m-center,
  .container.m-center,
  .module.m-center {
    margin-left: auto;
    margin-right: auto;
  }
  body.no-flex {
    max-width: 959.9px;
  }
}
@media screen and (max-width: 659.9px) {
  .grid > .container {
    max-width: 660px;
  }
  .s-0[class][class][class] {
    display: none;
  }
  .l-1,
  .m-1[class],
  .s-1[class][class] {
    width: 80px;
    min-width: 21.71875vw;
    -webkit-flex-basis: 21.71875vw;
    flex-basis: 21.71875vw;
    -webkit-flex-grow: 1;
    -ms-flex-grow: 1;
    flex-grow: 1;
  }
  .l-2,
  .m-2[class],
  .s-2[class][class] {
    width: 160px;
    min-width: 43.4375vw;
    -webkit-flex-basis: 43.4375vw;
    flex-basis: 43.4375vw;
    -webkit-flex-grow: 2;
    -ms-flex-grow: 2;
    flex-grow: 2;
  }
  .l-3,
  .m-3[class],
  .s-3[class][class] {
    width: 240px;
    min-width: 65.15625vw;
    -webkit-flex-basis: 65.15625vw;
    flex-basis: 65.15625vw;
    -webkit-flex-grow: 3;
    -ms-flex-grow: 3;
    flex-grow: 3;
  }
  .l-4,
  .m-4[class],
  .s-4[class][class] {
    width: 320px;
    min-width: 86.875vw;
    -webkit-flex-basis: 86.875vw;
    flex-basis: 86.875vw;
    -webkit-flex-grow: 4;
    -ms-flex-grow: 4;
    flex-grow: 4;
  }
  .l-5,
  .m-5[class],
  .l-6,
  .m-6[class],
  .l-7,
  .m-7[class],
  .l-8,
  .m-8[class],
  .l-9,
  .l-10,
  .l-11,
  .l-12 {
    width: 320px;
    min-width: 86.875vw;
    -webkit-flex-basis: 86.875vw;
    flex-basis: 86.875vw;
    -webkit-flex-grow: 4;
    -ms-flex-grow: 4;
    flex-grow: 4;
  }
  .s-1.fix[class][class], .s-2.fix[class][class], .s-3.fix[class][class], .s-4.fix[class][class] {
    min-width: 0px;
    flex-grow: 0;
    flex-basis: auto;
  }
  /*  */
  .no-flex > .grid {
    max-width: 660px;
  }
  .no-flex .s-1, .no-flex .s-2, .no-flex .s-3, .no-flex .s-4 {
    min-width: 0px;
  }
  /*  */
  /*  */
  .s-fix[class][class] {
    min-width: 0px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }
  /*  */
  /*  */
  .s-align-center {
    text-align: center;
  }
  .s-align-right {
    text-align: right;
  }
  .s-align-left {
    text-align: left;
  }
  .s-align-justify {
    text-align: justify;
  }
  .grid.s-center,
  .container.s-center,
  .module.s-center {
    margin-left: auto;
    margin-right: auto;
  }
  body.no-flex {
    max-width: 639.9px;
  }
}
/*  */
@media screen and (min-width: 980px) {
  body {
    max-width: 1002px;
    min-width: auto;
    width: 1002px;
    margin-left: auto;
    margin-right: auto;
    background-color: #E3EDFA;
  }
  body > .grid {
    max-width: 1000px;
    min-width: auto;
    width: 1000px;
    display: inline-block;
    border-left: 1px solid #C2C2C2;
    border-right: 1px solid #C2C2C2;
    background-color: #FFFFFF;
    z-index: 0;
    /* BUG-2423 - Abstand nach dem Footer - wenn kein overflow: hidden, der Bug ist gefixt */
    /* wof?r is t overflow: hidden hier ?berhaupt, wei?ich aktuell nicht... */
    /* overflow: hidden; */
  }
  body > .grid > .container.l-12,
  body > .grid > form > .container.l-12,
  body > .grid > .container.fullwidth .teaser.fullwidth,
  body > .grid > .container.carousel.l-12 .hero > .teaser,
  body > .grid > footer > .container.l-12 {
    max-width: 960px;
    min-width: auto;
    width: 960px;
    padding-right: 20px;
    padding-left: 20px;
  }
  /* Hotfix GMX Layout for Hero Modul + Slider */
  body > .grid > .container.expandable-wrapper.l-12,
  body > .grid > .container.expandable-wrapper.l-12 .container.l-12:not(.fix),
  body > .grid > .container.carousel.l-12,
  body > .grid > .container.carousel.l-12 .hero,
  body > .grid > .container.carousel.l-12 .hero > .background,
  body > .grid > .container.fullwidth,
  body > .grid > .container.fullwidth .teaser.fullwidth {
    width: 1000px;
    max-width: 1000px;
    min-width: auto;
    padding-right: 0;
    padding-left: 0;
  }
}
@font-face {
    font-family: 'RobotoMedium';
    src: url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Medium-webfont.eot');
    src: url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Medium-webfont.eot?#iefix') format('embedded-opentype'),
    url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Medium-webfont.woff') format('woff'),
    url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Medium-webfont.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'RobotoRegular';
    src: url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Regular-webfont.eot');
    src: url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Regular-webfont.eot?#iefix') format('embedded-opentype'),
    url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Regular-webfont.woff') format('woff'),
    url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Regular-webfont.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'RobotoCondensed';
    src: url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Regular-webfont.eot');
    src: url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Regular-webfont.eot?#iefix') format('embedded-opentype'),
    url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Regular-webfont.woff') format('woff'),
    url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Regular-webfont.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'RobotoCondensedLight';
    src: url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Light-webfont.eot');
    src: url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Light-webfont.eot?#iefix') format('embedded-opentype'),
    url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Light-webfont.woff') format('woff'),
    url('//img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Light-webfont.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}


body {
    font-family: "RobotoRegular", Verdana, sans-serif;
    font-size: 16px;
    line-height: 24px;
    color: #525252;
}
* {
    -webkit-text-size-adjust: none;
    -moz-text-size-adjust: none;
    -ms-text-size-adjust: none;
    text-size-adjust: none;
}

a,
.link-base {
    color: #1C449B;
    text-decoration: none;
}
a:active,
a:visited,
.link-visited {
    color: #617CB9;
}
a:hover,
a:focus,
.link-base:hover,
.link-hover {
    color: #1C449B;
    text-decoration: underline;
}
a img {
    border: 0px;
}
a.textstyle,
a.textstyle:hover,
a.textstyle:focus {
    color: inherit;
    text-decoration: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6,
.section-headline > strong,
.group-headline > strong,
.teaser > .content > strong,
.akkordeon .summary > strong,
footer .container > strong.module,
footer .container .module > strong {
    font-weight: 400;
}
footer .container .module > strong {
    display: block;
}

/* Defaults > können durch setzen der responsiven Size-Klassen überschrieben werden. .[screensize]-size-[headlineformat]  */
h1.xxl,    [class].size-10 { font-size: 72px; font-family: RobotoCondensed; line-height: 80px; }
h1.xl,     [class].size-9  { font-size: 64px; font-family: RobotoCondensed; line-height: 72px; }
h1,        [class].size-8  { font-size: 56px; font-family: RobotoCondensed; line-height: 64px; }
h2.xl,     [class].size-7  { font-size: 48px; font-family: RobotoCondensed; line-height: 56px; }
h2,        [class].size-6  { font-size: 40px; font-family: RobotoCondensed; line-height: 48px; }
h3.xl,     [class].size-5  { font-size: 32px; font-family: RobotoCondensed; line-height: 40px; }
h3,        [class].size-4  { font-size: 24px; font-family: RobotoMedium; line-height: 32px; }
h4,        [class].size-3  { font-size: 20px; font-family: RobotoMedium; line-height: 28px; }
p,         [class].size-2  { font-size: 16px; font-family: RobotoRegular; line-height: 24px; }
.note,     [class].size-1  { font-size: 14px; font-family: RobotoRegular; line-height: 22px; }
.icontext, [class].size-0  { font-size: 9px; font-family: Verdana; line-height: 16px; }



@media screen and (min-width: 980px) {
    [class][class].l-size-10 { font-size: 72px; font-family: RobotoCondensed; line-height: 80px; }
    [class][class].l-size-9  { font-size: 64px; font-family: RobotoCondensed; line-height: 72px; }
    [class][class].l-size-8  { font-size: 56px; font-family: RobotoCondensed; line-height: 64px; }
    [class][class].l-size-7  { font-size: 48px; font-family: RobotoCondensed; line-height: 56px; }
    [class][class].l-size-6  { font-size: 40px; font-family: RobotoCondensed; line-height: 48px; }
    [class][class].l-size-5  { font-size: 32px; font-family: RobotoCondensed; line-height: 40px; }
    [class][class].l-size-4  { font-size: 24px; font-family: RobotoMedium; line-height: 32px; }
    [class][class].l-size-3  { font-size: 20px; font-family: RobotoMedium; line-height: 28px; }
    [class][class].l-size-2  { font-size: 16px; font-family: RobotoRegular; line-height: 24px; }
    [class][class].l-size-1  { font-size: 14px; font-family: RobotoRegular; line-height: 22px; }
    [class][class].l-size-0  { font-size: 9px; font-family: Verdana; line-height: 16px; }
}




@media screen and (max-width: 979.9px) {
    /* Defaults Größe M > können durch setzen der responsiven Size-Klassen überschrieben werden. .m-size-[headlineformat]  */
    h1.xxl,[class].size-10 { font-size: 48px; font-family: RobotoCondensed; line-height: 56px; }
    h1.xl, [class].size-9  { font-size: 40px; font-family: RobotoCondensed; line-height: 48px; }
    h1,    [class].size-8  { font-size: 40px; font-family: RobotoCondensed; line-height: 48px; }
    h2.xl, [class].size-7  { font-size: 32px; font-family: RobotoCondensed; line-height: 40px; }
    h2,    [class].size-6  { font-size: 32px; font-family: RobotoCondensed; line-height: 40px; }
    h3.xl, [class].size-5  { font-size: 24px; font-family: RobotoMedium; line-height: 32px; }
    h3,    [class].size-4  { font-size: 20px; font-family: RobotoMedium; line-height: 28px; }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
    [class][class].m-size-10 { font-size: 72px; font-family: RobotoCondensed; line-height: 80px; }
    [class][class].m-size-9  { font-size: 64px; font-family: RobotoCondensed; line-height: 72px; }
    [class][class].m-size-8  { font-size: 56px; font-family: RobotoCondensed; line-height: 64px; }
    [class][class].m-size-7  { font-size: 48px; font-family: RobotoCondensed; line-height: 56px; }
    [class][class].m-size-6  { font-size: 40px; font-family: RobotoCondensed; line-height: 48px; }
    [class][class].m-size-5  { font-size: 32px; font-family: RobotoCondensed; line-height: 40px; }
    [class][class].m-size-4  { font-size: 24px; font-family: RobotoMedium; line-height: 32px; }
    [class][class].m-size-3  { font-size: 20px; font-family: RobotoMedium; line-height: 28px; }
    [class][class].m-size-2  { font-size: 16px; font-family: RobotoRegular; line-height: 24px; }
    [class][class].m-size-1  { font-size: 14px; font-family: RobotoRegular; line-height: 22px; }
    [class][class].m-size-0  { font-size: 9px; font-family: Verdana; line-height: 16px; }
}



@media screen and (max-width: 659.9px) {
    /* Defaults Größe S > können durch setzen der responsiven Size-Klassen überschrieben werden. .s-size-[headlineformat]  */
    h1.xxl,[class].size-10 { font-size: 40px; font-family: RobotoCondensed; line-height: 48px; }
    h1.xl, [class].size-9  { font-size: 32px; font-family: RobotoCondensed; line-height: 40px; }
    h1,    [class].size-8  { font-size: 32px; font-family: RobotoCondensed; line-height: 40px; }
    h2.xl, [class].size-7  { font-size: 32px; font-family: RobotoCondensed; line-height: 40px; }
    h2,    [class].size-6  { font-size: 32px; font-family: RobotoCondensed; line-height: 40px; }
    h3.xl, [class].size-5  { font-size: 24px; font-family: RobotoMedium; line-height: 32px; }
    h3,    [class].size-4  { font-size: 20px; font-family: RobotoMedium; line-height: 28px; }

    [class][class].s-size-10 { font-size: 72px; font-family: RobotoCondensed; line-height: 80px; }
    [class][class].s-size-9  { font-size: 64px; font-family: RobotoCondensed; line-height: 72px; }
    [class][class].s-size-8  { font-size: 56px; font-family: RobotoCondensed; line-height: 64px; }
    [class][class].s-size-7  { font-size: 48px; font-family: RobotoCondensed; line-height: 56px; }
    [class][class].s-size-6  { font-size: 40px; font-family: RobotoCondensed; line-height: 48px; }
    [class][class].s-size-5  { font-size: 32px; font-family: RobotoCondensed; line-height: 40px; }
    [class][class].s-size-4  { font-size: 24px; font-family: RobotoMedium; line-height: 32px; }
    [class][class].s-size-3  { font-size: 20px; font-family: RobotoMedium; line-height: 28px; }
    [class][class].s-size-2  { font-size: 16px; font-family: RobotoRegular; line-height: 24px; }
    [class][class].s-size-1  { font-size: 14px; font-family: RobotoRegular; line-height: 22px; }
    [class][class].s-size-0  { font-size: 9px; font-family: Verdana; line-height: 16px; }
}

sup, sub {
    line-height: 0;
}

h1,
h2,
.hero .size-7,
.hero .size-6,
.hero .size-5,
.section-headline > *:not(p):not(.subheadline) {
    color: #1C449B;
}

[class][class].script,
[class][class].subheadline {
    color: #525252;
    font-family: RobotoMedium;
}
/* please set/overwrite 'theme.font.subline-color' if there is a second service-color in the data-json of the services with theme.b2.base */
[class].size-4.script,
[class].size-4.subheadline {
    color: #525252;
}
[class*="backdrop"] {
    position: relative;
}
[class*="backdrop"]:before {
    content: "";
    position: absolute;
    left: 0px;
    right: 0px;
    top: 0px;
    height: 100%;
    z-index: -1;
    -webkit-transition: background-color 0.25s;
    -ms-transition: background-color 0.25s;
    transition: background-color 0.25s;
}
.teaser > [class*="backdrop"]:before {
    left: 10px;
    right: 10px;
}
[class*="backdrop"].rounded:before {
    border-radius: 4px;
}
[class*="backdrop"].circle:before {
    border-radius: 50%;
}

.backdrop-a1-dark20:before,  .backdrop-hover-a1-dark20:hover:before,  .teaser:hover .backdrop-hover-a1-dark20:before  { background-color: #587A03;  }
.backdrop-a1-dark10:before,  .backdrop-hover-a1-dark10:hover:before,  .teaser:hover .backdrop-hover-a1-dark10:before  { background-color: #638904;  }
.backdrop-a1-base:before,    .backdrop-hover-a1-base:hover:before,    .teaser:hover .backdrop-hover-a1-base:before    { background-color: #6E9804;    }
.backdrop-a1-light15:before, .backdrop-hover-a1-light15:hover:before, .teaser:hover .backdrop-hover-a1-light15:before { background-color: #84A72A; }
.backdrop-a1-light30:before, .backdrop-hover-a1-light30:hover:before, .teaser:hover .backdrop-hover-a1-light30:before { background-color: #9AB74F; }
.backdrop-a1-light50:before, .backdrop-hover-a1-light50:hover:before, .teaser:hover .backdrop-hover-a1-light50:before { background-color: #B7CC82; }
.backdrop-a1-light70:before, .backdrop-hover-a1-light70:hover:before, .teaser:hover .backdrop-hover-a1-light70:before { background-color: #D4E0B4; }
.backdrop-a1-light82:before, .backdrop-hover-a1-light82:hover:before, .teaser:hover .backdrop-hover-a1-light82:before { background-color: #E5ECD2; }
.backdrop-a1-light94:before, .backdrop-hover-a1-light94:hover:before, .teaser:hover .backdrop-hover-a1-light94:before { background-color: #F6F9F0; }

.backdrop-b1-dark20:before,  .backdrop-hover-b1-dark20:hover:before,  .teaser:hover .backdrop-hover-b1-dark20:before  { background-color: #16367C;  }
.backdrop-b1-dark10:before,  .backdrop-hover-b1-dark10:hover:before,  .teaser:hover .backdrop-hover-b1-dark10:before  { background-color: #193D8C;  }
.backdrop-b1-base:before,    .backdrop-hover-b1-base:hover:before,    .teaser:hover .backdrop-hover-b1-base:before    { background-color: #1C449B;    }
.backdrop-b1-light15:before, .backdrop-hover-b1-light15:hover:before, .teaser:hover .backdrop-hover-b1-light15:before { background-color: #3E60AA; }
.backdrop-b1-light30:before, .backdrop-hover-b1-light30:hover:before, .teaser:hover .backdrop-hover-b1-light30:before { background-color: #607CB9; }
.backdrop-b1-light50:before, .backdrop-hover-b1-light50:hover:before, .teaser:hover .backdrop-hover-b1-light50:before { background-color: #8EA2CD; }
.backdrop-b1-light70:before, .backdrop-hover-b1-light70:hover:before, .teaser:hover .backdrop-hover-b1-light70:before { background-color: #BBC7E1; }
.backdrop-b1-light82:before, .backdrop-hover-b1-light82:hover:before, .teaser:hover .backdrop-hover-b1-light82:before { background-color: #D6DDED; }
.backdrop-b1-light94:before, .backdrop-hover-b1-light94:hover:before, .teaser:hover .backdrop-hover-b1-light94:before { background-color: #F1F4F9; }

.backdrop-b2-dark20:before,  .backdrop-hover-b2-dark20:hover:before,  .teaser:hover .backdrop-hover-b2-dark20:before  { background-color: #16367C;  }
.backdrop-b2-dark10:before,  .backdrop-hover-b2-dark10:hover:before,  .teaser:hover .backdrop-hover-b2-dark10:before  { background-color: #193D8C;  }
.backdrop-b2-base:before,    .backdrop-hover-b2-base:hover:before,    .teaser:hover .backdrop-hover-b2-base:before    { background-color: #1C449B;    }
.backdrop-b2-light15:before, .backdrop-hover-b2-light15:hover:before, .teaser:hover .backdrop-hover-b2-light15:before { background-color: #3E60AA; }
.backdrop-b2-light30:before, .backdrop-hover-b2-light30:hover:before, .teaser:hover .backdrop-hover-b2-light30:before { background-color: #607CB9; }
.backdrop-b2-light50:before, .backdrop-hover-b2-light50:hover:before, .teaser:hover .backdrop-hover-b2-light50:before { background-color: #8EA2CD; }
.backdrop-b2-light70:before, .backdrop-hover-b2-light70:hover:before, .teaser:hover .backdrop-hover-b2-light70:before { background-color: #BBC7E1; }
.backdrop-b2-light82:before, .backdrop-hover-b2-light82:hover:before, .teaser:hover .backdrop-hover-b2-light82:before { background-color: #D6DDED; }
.backdrop-b2-light94:before, .backdrop-hover-b2-light94:hover:before, .teaser:hover .backdrop-hover-b2-light94:before { background-color: #F1F4F9; }

.backdrop-c1-base:before,    .backdrop-hover-c1-base:hover:before,    .teaser:hover .backdrop-hover-c1-base:before    { background-color: #FFFFFF;    }

.backdrop-c2-dark20:before,  .backdrop-hover-c2-dark20:hover:before,  .teaser:hover .backdrop-hover-c2-dark20:before  { background-color: #292929;  }
.backdrop-c2-dark10:before,  .backdrop-hover-c2-dark10:hover:before,  .teaser:hover .backdrop-hover-c2-dark10:before  { background-color: #2E2E2E;  }
.backdrop-c2-base:before,    .backdrop-hover-c2-base:hover:before,    .teaser:hover .backdrop-hover-c2-base:before    { background-color: #333333;    }
.backdrop-c2-light15:before, .backdrop-hover-c2-light15:hover:before, .teaser:hover .backdrop-hover-c2-light15:before { background-color: #525252; }
.backdrop-c2-light30:before, .backdrop-hover-c2-light30:hover:before, .teaser:hover .backdrop-hover-c2-light30:before { background-color: #707070; }
.backdrop-c2-light50:before, .backdrop-hover-c2-light50:hover:before, .teaser:hover .backdrop-hover-c2-light50:before { background-color: #999999; }
.backdrop-c2-light70:before, .backdrop-hover-c2-light70:hover:before, .teaser:hover .backdrop-hover-c2-light70:before { background-color: #C2C2C2; }
.backdrop-c2-light82:before, .backdrop-hover-c2-light82:hover:before, .teaser:hover .backdrop-hover-c2-light82:before { background-color: #DADADA; }
.backdrop-c2-light92:before, .backdrop-hover-c2-light92:hover:before, .teaser:hover .backdrop-hover-c2-light92:before { background-color: ; }
.backdrop-c2-light94:before, .backdrop-hover-c2-light94:hover:before, .teaser:hover .backdrop-hover-c2-light94:before { background-color: #F3F3F3; }


/* Hinweisfarben */
.backdrop-d1-dark20:before,  .backdrop-hover-d1-dark20:hover:before,  .teaser:hover .backdrop-hover-d1-dark20:before  { background-color: #AA0000;  }
.backdrop-d1-dark10:before,  .backdrop-hover-d1-dark10:hover:before,  .teaser:hover .backdrop-hover-d1-dark10:before  { background-color: #BF0000;  }
.backdrop-d1-base:before,    .backdrop-hover-d1-base:hover:before,    .teaser:hover .backdrop-hover-d1-base:before    { background-color: #D40000;    }
.backdrop-d1-light15:before, .backdrop-hover-d1-light15:hover:before, .teaser:hover .backdrop-hover-d1-light15:before { background-color: #DA2626; }
.backdrop-d1-light30:before, .backdrop-hover-d1-light30:hover:before, .teaser:hover .backdrop-hover-d1-light30:before { background-color: #E14D4D; }
.backdrop-d1-light50:before, .backdrop-hover-d1-light50:hover:before, .teaser:hover .backdrop-hover-d1-light50:before { background-color: #EA8080; }
.backdrop-d1-light70:before, .backdrop-hover-d1-light70:hover:before, .teaser:hover .backdrop-hover-d1-light70:before { background-color: #F2B3B3; }
.backdrop-d1-light82:before, .backdrop-hover-d1-light82:hover:before, .teaser:hover .backdrop-hover-d1-light82:before { background-color: #F7D1D1; }
.backdrop-d1-light94:before, .backdrop-hover-d1-light94:hover:before, .teaser:hover .backdrop-hover-d1-light94:before { background-color: #FCF0F0; }

.backdrop-d2-dark20:before,  .backdrop-hover-d2-dark20:hover:before,  .teaser:hover .backdrop-hover-d2-dark20:before  { background-color: #C09600;  }
.backdrop-d2-dark10:before,  .backdrop-hover-d2-dark10:hover:before,  .teaser:hover .backdrop-hover-d2-dark10:before  { background-color: #D8A900;  }
.backdrop-d2-base:before,    .backdrop-hover-d2-base:hover:before,    .teaser:hover .backdrop-hover-d2-base:before    { background-color: #F0BC00;    }
.backdrop-d2-light15:before, .backdrop-hover-d2-light15:hover:before, .teaser:hover .backdrop-hover-d2-light15:before { background-color: #F2C626; }
.backdrop-d2-light30:before, .backdrop-hover-d2-light30:hover:before, .teaser:hover .backdrop-hover-d2-light30:before { background-color: #F5D04D; }
.backdrop-d2-light50:before, .backdrop-hover-d2-light50:hover:before, .teaser:hover .backdrop-hover-d2-light50:before { background-color: #F8DE80; }
.backdrop-d2-light70:before, .backdrop-hover-d2-light70:hover:before, .teaser:hover .backdrop-hover-d2-light70:before { background-color: #FBEBB3; }
.backdrop-d2-light82:before, .backdrop-hover-d2-light82:hover:before, .teaser:hover .backdrop-hover-d2-light82:before { background-color: #FCF3D1; }
.backdrop-d2-light94:before, .backdrop-hover-d2-light94:hover:before, .teaser:hover .backdrop-hover-d2-light94:before { background-color: #FEFBF0; }

.backdrop-d3-dark20:before,  .backdrop-hover-d3-dark20:hover:before,  .teaser:hover .backdrop-hover-d3-dark20:before  { background-color: #4A9322;  }
.backdrop-d3-dark10:before,  .backdrop-hover-d3-dark10:hover:before,  .teaser:hover .backdrop-hover-d3-dark10:before  { background-color: #53A626;  }
.backdrop-d3-base:before,    .backdrop-hover-d3-base:hover:before,    .teaser:hover .backdrop-hover-d3-base:before    { background-color: #5CB82A;    }
.backdrop-d3-light15:before, .backdrop-hover-d3-light15:hover:before, .teaser:hover .backdrop-hover-d3-light15:before { background-color: #74C34A; }
.backdrop-d3-light30:before, .backdrop-hover-d3-light30:hover:before, .teaser:hover .backdrop-hover-d3-light30:before { background-color: #8DCD6A; }
.backdrop-d3-light50:before, .backdrop-hover-d3-light50:hover:before, .teaser:hover .backdrop-hover-d3-light50:before { background-color: #AEDC95; }
.backdrop-d3-light70:before, .backdrop-hover-d3-light70:hover:before, .teaser:hover .backdrop-hover-d3-light70:before { background-color: #CEEABF; }
.backdrop-d3-light82:before, .backdrop-hover-d3-light82:hover:before, .teaser:hover .backdrop-hover-d3-light82:before { background-color: #E2F2D9; }
.backdrop-d3-light94:before, .backdrop-hover-d3-light94:hover:before, .teaser:hover .backdrop-hover-d3-light94:before { background-color: #F5FBF2; }

.backdrop-d4-dark20:before,  .backdrop-hover-d4-dark20:hover:before,  .teaser:hover .backdrop-hover-d4-dark20:before  { background-color: #166EAE;  }
.backdrop-d4-dark10:before,  .backdrop-hover-d4-dark10:hover:before,  .teaser:hover .backdrop-hover-d4-dark10:before  { background-color: #197CC3;  }
.backdrop-d4-base:before,    .backdrop-hover-d4-base:hover:before,    .teaser:hover .backdrop-hover-d4-base:before    { background-color: #1C8AD9;    }
.backdrop-d4-light15:before, .backdrop-hover-d4-light15:hover:before, .teaser:hover .backdrop-hover-d4-light15:before { background-color: #3E9CDF; }
.backdrop-d4-light30:before, .backdrop-hover-d4-light30:hover:before, .teaser:hover .backdrop-hover-d4-light30:before { background-color: #60ADE4; }
.backdrop-d4-light50:before, .backdrop-hover-d4-light50:hover:before, .teaser:hover .backdrop-hover-d4-light50:before { background-color: #8EC5EC; }
.backdrop-d4-light70:before, .backdrop-hover-d4-light70:hover:before, .teaser:hover .backdrop-hover-d4-light70:before { background-color: #BBDCF4; }
.backdrop-d4-light82:before, .backdrop-hover-d4-light82:hover:before, .teaser:hover .backdrop-hover-d4-light82:before { background-color: #D6EAF8; }
.backdrop-d4-light94:before, .backdrop-hover-d4-light94:hover:before, .teaser:hover .backdrop-hover-d4-light94:before { background-color: #F1F8FD; }
/* Hinweisfarben Ende */


.backdrop-a1-dark20,  .backdrop-hover-a1-dark20:hover,  .teaser:hover .backdrop-hover-a1-dark20  { color: #FFFFFF; }
.backdrop-a1-dark10,  .backdrop-hover-a1-dark10:hover,  .teaser:hover .backdrop-hover-a1-dark10  { color: #FFFFFF; }
.backdrop-a1-base,    .backdrop-hover-a1-base:hover,    .teaser:hover .backdrop-hover-a1-base    { color: #525252; }
.backdrop-a1-light15, .backdrop-hover-a1-light15:hover, .teaser:hover .backdrop-hover-a1-light15 { color: #525252; }
.backdrop-a1-light30, .backdrop-hover-a1-light30:hover, .teaser:hover .backdrop-hover-a1-light30 { color: #525252; }
.backdrop-a1-light50, .backdrop-hover-a1-light50:hover, .teaser:hover .backdrop-hover-a1-light50 { color: #525252; }
.backdrop-a1-light70, .backdrop-hover-a1-light70:hover, .teaser:hover .backdrop-hover-a1-light70 { color: #525252; }
.backdrop-a1-light82, .backdrop-hover-a1-light82:hover, .teaser:hover .backdrop-hover-a1-light82 { color: #525252; }
.backdrop-a1-light94, .backdrop-hover-a1-light94:hover, .teaser:hover .backdrop-hover-a1-light94 { color: #525252; }

.backdrop-b1-dark20,  .backdrop-hover-b1-dark20:hover,  .teaser:hover .backdrop-hover-b1-dark20  { color: #FFFFFF; }
.backdrop-b1-dark10,  .backdrop-hover-b1-dark10:hover,  .teaser:hover .backdrop-hover-b1-dark10  { color: #FFFFFF; }
.backdrop-b1-base,    .backdrop-hover-b1-base:hover,    .teaser:hover .backdrop-hover-b1-base    { color: #FFFFFF; }
.backdrop-b1-light15, .backdrop-hover-b1-light15:hover, .teaser:hover .backdrop-hover-b1-light15 { color: #FFFFFF; }
.backdrop-b1-light30, .backdrop-hover-b1-light30:hover, .teaser:hover .backdrop-hover-b1-light30 { color: #FFFFFF; }
.backdrop-b1-light50, .backdrop-hover-b1-light50:hover, .teaser:hover .backdrop-hover-b1-light50 { color: #525252; }
.backdrop-b1-light70, .backdrop-hover-b1-light70:hover, .teaser:hover .backdrop-hover-b1-light70 { color: #525252; }
.backdrop-b1-light82, .backdrop-hover-b1-light82:hover, .teaser:hover .backdrop-hover-b1-light82 { color: #525252; }
.backdrop-b1-light94, .backdrop-hover-b1-light94:hover, .teaser:hover .backdrop-hover-b1-light94 { color: #525252; }

.backdrop-b2-dark20,  .backdrop-hover-b2-dark20:hover,  .teaser:hover .backdrop-hover-b2-dark20  { color: #FFFFFF; }
.backdrop-b2-dark10,  .backdrop-hover-b2-dark10:hover,  .teaser:hover .backdrop-hover-b2-dark10  { color: #FFFFFF; }
.backdrop-b2-base,    .backdrop-hover-b2-base:hover,    .teaser:hover .backdrop-hover-b2-base    { color: #FFFFFF; }
.backdrop-b2-light15, .backdrop-hover-b2-light15:hover, .teaser:hover .backdrop-hover-b2-light15 { color: #FFFFFF; }
.backdrop-b2-light30, .backdrop-hover-b2-light30:hover, .teaser:hover .backdrop-hover-b2-light30 { color: #FFFFFF; }
.backdrop-b2-light50, .backdrop-hover-b2-light50:hover, .teaser:hover .backdrop-hover-b2-light50 { color: #525252; }
.backdrop-b2-light70, .backdrop-hover-b2-light70:hover, .teaser:hover .backdrop-hover-b2-light70 { color: #525252; }
.backdrop-b2-light82, .backdrop-hover-b2-light82:hover, .teaser:hover .backdrop-hover-b2-light82 { color: #525252; }
.backdrop-b2-light94, .backdrop-hover-b2-light94:hover, .teaser:hover .backdrop-hover-b2-light94 { color: #525252; }

.backdrop-c2-dark20,  .backdrop-hover-c2-dark20:hover,  .teaser:hover .backdrop-hover-c2-dark20  { color: #FFFFFF; }
.backdrop-c2-dark10,  .backdrop-hover-c2-dark10:hover,  .teaser:hover .backdrop-hover-c2-dark10  { color: #FFFFFF; }
.backdrop-c2-base,    .backdrop-hover-c2-base:hover,    .teaser:hover .backdrop-hover-c2-base    { color: #FFFFFF; }
.backdrop-c2-light15, .backdrop-hover-c2-light15:hover, .teaser:hover .backdrop-hover-c2-light15 { color: #FFFFFF; }
.backdrop-c2-light30, .backdrop-hover-c2-light30:hover, .teaser:hover .backdrop-hover-c2-light30 { color: #FFFFFF; }
.backdrop-c2-light50, .backdrop-hover-c2-light50:hover, .teaser:hover .backdrop-hover-c2-light50 { color: #FFFFFF; }
.backdrop-c2-light70, .backdrop-hover-c2-light70:hover, .teaser:hover .backdrop-hover-c2-light70 { color: #525252; }
.backdrop-c2-light82, .backdrop-hover-c2-light82:hover, .teaser:hover .backdrop-hover-c2-light82 { color: #525252; }
.backdrop-c2-light94, .backdrop-hover-c2-light94:hover, .teaser:hover .backdrop-hover-c2-light94 { color: #525252; }


/* Hinweisfarben */
.backdrop-d1-dark20,  .backdrop-hover-d1-dark20:hover,  .teaser:hover .backdrop-hover-d1-dark20  { color: #FFFFFF; }
.backdrop-d1-dark10,  .backdrop-hover-d1-dark10:hover,  .teaser:hover .backdrop-hover-d1-dark10  { color: #FFFFFF; }
.backdrop-d1-base,    .backdrop-hover-d1-base:hover,    .teaser:hover .backdrop-hover-d1-base    { color: #FFFFFF; }
.backdrop-d1-light15, .backdrop-hover-d1-light15:hover, .teaser:hover .backdrop-hover-d1-light15 { color: #FFFFFF; }
.backdrop-d1-light30, .backdrop-hover-d1-light30:hover, .teaser:hover .backdrop-hover-d1-light30 { color: #FFFFFF; }
.backdrop-d1-light50, .backdrop-hover-d1-light50:hover, .teaser:hover .backdrop-hover-d1-light50 { color: #525252; }
.backdrop-d1-light70, .backdrop-hover-d1-light70:hover, .teaser:hover .backdrop-hover-d1-light70 { color: #525252; }
.backdrop-d1-light82, .backdrop-hover-d1-light82:hover, .teaser:hover .backdrop-hover-d1-light82 { color: #525252; }
.backdrop-d1-light94, .backdrop-hover-d1-light94:hover, .teaser:hover .backdrop-hover-d1-light94 { color: #525252; }

.backdrop-d2-dark20,  .backdrop-hover-d2-dark20:hover,  .teaser:hover .backdrop-hover-d2-dark20  { color: #FFFFFF; }
.backdrop-d2-dark10,  .backdrop-hover-d2-dark10:hover,  .teaser:hover .backdrop-hover-d2-dark10  { color: #FFFFFF; }
.backdrop-d2-base,    .backdrop-hover-d2-base:hover,    .teaser:hover .backdrop-hover-d2-base    { color: #525252; }
.backdrop-d2-light15, .backdrop-hover-d2-light15:hover, .teaser:hover .backdrop-hover-d2-light15 { color: #525252; }
.backdrop-d2-light30, .backdrop-hover-d2-light30:hover, .teaser:hover .backdrop-hover-d2-light30 { color: #525252; }
.backdrop-d2-light50, .backdrop-hover-d2-light50:hover, .teaser:hover .backdrop-hover-d2-light50 { color: #525252; }
.backdrop-d2-light70, .backdrop-hover-d2-light70:hover, .teaser:hover .backdrop-hover-d2-light70 { color: #525252; }
.backdrop-d2-light82, .backdrop-hover-d2-light82:hover, .teaser:hover .backdrop-hover-d2-light82 { color: #525252; }
.backdrop-d2-light94, .backdrop-hover-d2-light94:hover, .teaser:hover .backdrop-hover-d2-light94 { color: #525252; }

.backdrop-d3-dark20,  .backdrop-hover-d3-dark20:hover,  .teaser:hover .backdrop-hover-d3-dark20  { color: #FFFFFF; }
.backdrop-d3-dark10,  .backdrop-hover-d3-dark10:hover,  .teaser:hover .backdrop-hover-d3-dark10  { color: #FFFFFF; }
.backdrop-d3-base,    .backdrop-hover-d3-base:hover,    .teaser:hover .backdrop-hover-d3-base    { color: #FFFFFF; }
.backdrop-d3-light15, .backdrop-hover-d3-light15:hover, .teaser:hover .backdrop-hover-d3-light15 { color: #FFFFFF; }
.backdrop-d3-light30, .backdrop-hover-d3-light30:hover, .teaser:hover .backdrop-hover-d3-light30 { color: #FFFFFF; }
.backdrop-d3-light50, .backdrop-hover-d3-light50:hover, .teaser:hover .backdrop-hover-d3-light50 { color: #525252; }
.backdrop-d3-light70, .backdrop-hover-d3-light70:hover, .teaser:hover .backdrop-hover-d3-light70 { color: #525252; }
.backdrop-d3-light82, .backdrop-hover-d3-light82:hover, .teaser:hover .backdrop-hover-d3-light82 { color: #525252; }
.backdrop-d3-light94, .backdrop-hover-d3-light94:hover, .teaser:hover .backdrop-hover-d3-light94 { color: #525252; }

.backdrop-d4-dark20,  .backdrop-hover-d4-dark20:hover,  .teaser:hover .backdrop-hover-d4-dark20  { color: #FFFFFF; }
.backdrop-d4-dark10,  .backdrop-hover-d4-dark10:hover,  .teaser:hover .backdrop-hover-d4-dark10  { color: #FFFFFF; }
.backdrop-d4-base,    .backdrop-hover-d4-base:hover,    .teaser:hover .backdrop-hover-d4-base    { color: #FFFFFF; }
.backdrop-d4-light15, .backdrop-hover-d4-light15:hover, .teaser:hover .backdrop-hover-d4-light15 { color: #FFFFFF; }
.backdrop-d4-light30, .backdrop-hover-d4-light30:hover, .teaser:hover .backdrop-hover-d4-light30 { color: #FFFFFF; }
.backdrop-d4-light50, .backdrop-hover-d4-light50:hover, .teaser:hover .backdrop-hover-d4-light50 { color: #525252; }
.backdrop-d4-light70, .backdrop-hover-d4-light70:hover, .teaser:hover .backdrop-hover-d4-light70 { color: #525252; }
.backdrop-d4-light82, .backdrop-hover-d4-light82:hover, .teaser:hover .backdrop-hover-d4-light82 { color: #525252; }
.backdrop-d4-light94, .backdrop-hover-d4-light94:hover, .teaser:hover .backdrop-hover-d4-light94 { color: #525252; }
/* Hinweisfarben ende */

.inverted h1,
.inverted h2,
.inverted h3,
.inverted h4,
.inverted [class][class][class].script,
.inverted p,
.inverted a,
.inverted label,
.inverted legend,
.inverted strong,
.hero .inverted .size-7,
.hero .inverted .size-6,
.hero .inverted .size-5,
.inverted .section-headline > *:not(p):not(.subheadline) {
    color: #FFFFFF;
    text-shadow: none;
}
.inverted p > a:not(.button) {
    text-decoration: underline;
}

.inverted .uninverted h1,
.inverted .uninverted h2,
.inverted .uninverted h3,
.inverted .uninverted h4,
.inverted .uninverted [class][class][class].script,
.inverted .uninverted p,
.inverted .uninverted label,
.inverted .uninverted legend,
.inverted .uninverted strong,
.inverted .uninverted .size-7,
.inverted .uninverted .size-6,
.inverted .uninverted .size-5,
.inverted .uninverted .section-headline > *:not(p):not(.subheadline) {
    color: #525252;
}
.inverted .uninverted a[class] {
    color: #1C449B;
    text-decoration: none;
}
.icon {
  display: inline-block;
  color: transparent;
  outline: none;
  padding: 0px;
  height: 0px;
  text-indent: -9999em;
  background: url(//img.ui-portal.de/cd/ci/gmx.net/brand-update.svg) no-repeat 0% 0%, url(//img.ui-portal.de/cd/ci/gmx.net/service-update.svg) no-repeat 0% 0%;
  -ms-transform: translate3d(0, 0, 0);
  text-shadow: none;
}
.icon, .xs.icon {
  background-size: auto 1296px, auto 1296px;
  width: 16px;
  height: 16px;
}
.s.icon {
  background-size: auto 1620px, auto 1620px;
  width: 20px;
  height: 20px;
}
.m.icon {
  background-size: auto 1944px, auto 1944px;
  width: 24px;
  height: 24px;
}
.l.icon {
  background-size: auto 2592px, auto 2592px;
  width: 32px;
  height: 32px;
}
.xl.icon {
  background-size: auto 3240px, auto 3240px;
  width: 40px;
  height: 40px;
}
.xxl.icon {
  background-size: auto 3888px, auto 3888px;
  width: 48px;
  height: 48px;
}
.x3l.icon {
  background-size: auto 4536px, auto 4536px;
  width: 56px;
  height: 56px;
}
.x4l.icon {
  background-size: auto 5184px, auto 5184px;
  width: 64px;
  height: 64px;
}
.x5l.icon {
  background-size: auto 5832px, auto 5832px;
  width: 72px;
  height: 72px;
}
.x6l.icon {
  background-size: auto 7776px, auto 7776px;
  width: 96px;
  height: 96px;
}
.x7l.icon {
  background-size: auto 10368px, auto 10368px;
  width: 128px;
  height: 128px;
}
/* icon with subtext */
.icon[aria-label] {
  overflow: visible;
  position: relative;
}
.icon[aria-label]:after {
  content: attr(aria-label);
  color: #333333;
  white-space: nowrap;
  display: none;
  text-indent: 0px;
  font-family: Verdana, sans-serif;
  font-size: 9px;
  line-height: 16px;
  position: absolute;
  bottom: -18px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.icon.hover-default[aria-label]:hover:after {
  color: #333333;
}
.icon.white[aria-label]:after,
.icon.hover-white[aria-label]:hover:after {
  color: #FFFFFF;
}
.icon.inactive[aria-label]:after,
.icon.inactive-hover[aria-label]:hover:after {
  color: #525252;
}
.icon.service[aria-label]:after,
.icon.hover-service[aria-label]:hover:after {
  color: #1C449B;
}
/*  */
.icon.service-light[aria-label]:after,
.icon.hover-service-light[aria-label]:hover:after {
  color: #D6DDED;
}
/*  */
.icon.show-text {
  margin-bottom: 16px;
}
.icon.show-text:after {
  display: block;
}
/*  */
@media screen and (min-width: 980px)  {
  .icon.l-show-text {
    margin-bottom: 16px;
  }
  .icon.l-show-text:after {
    display: block;
  }
}
@media screen and (min-width: 680px) and (max-width: 979.9px) {
  .icon.m-show-text {
    margin-bottom: 16px;
  }
  .icon.m-show-text:after {
    display: block;
  }
}
@media screen and (max-width: 659.9px) {
  .icon.s-show-text {
    margin-bottom: 16px;
  }
  .icon.s-show-text:after {
    display: block;
  }
}
/* icon positioning inside list */
ul .icon,
ul .xs.icon,
ol .icon,
ol .xs.icon {
  vertical-align: -3px;
}
ul .s.icon,
ol .s.icon {
  vertical-align: -5px;
}
ul .m.icon,
ol .m.icon {
  vertical-align: -6px;
}
ul .l.icon,
ol .l.icon {
  vertical-align: -7px;
}
ul .xl.icon,
ol .xl.icon {
  vertical-align: -9px;
}
ul .xxl.icon,
ol .xxl.icon {
  vertical-align: -11px;
}
ul .x3l.icon,
ol .x3l.icon {
  vertical-align: -13px;
}
ul .x4l.icon,
ol .x4l.icon {
  vertical-align: -15px;
}
ul .x5l.icon,
ol .x5l.icon {
  vertical-align: -16px;
}
ul .x6l.icon,
ol .x6l.icon {
  vertical-align: -22px;
}
ul .x7l.icon,
ol .x7l.icon {
  vertical-align: -30px;
}
ul .x8l.icon,
ol .x8l.icon {
  vertical-align: -45px;
}
ul .x9l.icon,
ol .x9l.icon {
  vertical-align: -60px;
}
/*  icon + showhidetoggle + touch */
.touch .icon[data-show-nodes]:before,
.touch .icon[data-hide-nodes]:before,
.touch .icon[data-toggle-nodes]:before,
.touch .icon[data-set-nodes]:before,
.touch .icon[data-unset-nodes]:before {
  content: '';
  display: block;
  position: absolute;
  margin: -10px;
  padding: 10px;
  box-sizing: content-box;
  width: 16px;
  height: 16px;
}
.touch .s.icon[data-show-nodes]:before, .touch .s.icon[data-hide-nodes]:before, .touch .s.icon[data-toggle-nodes]:before, .touch .s.icon[data-set-nodes]:before, .touch .s.icon[data-unset-nodes]:before {
  width: 20px;
  height: 20px;
}
.touch .m.icon[data-show-nodes]:before, .touch .m.icon[data-hide-nodes]:before, .touch .m.icon[data-toggle-nodes]:before, .touch .m.icon[data-set-nodes]:before, .touch .m.icon[data-unset-nodes]:before {
  width: 24px;
  height: 24px;
}
.touch .l.icon[data-show-nodes]:before, .touch .l.icon[data-hide-nodes]:before, .touch .l.icon[data-toggle-nodes]:before, .touch .l.icon[data-set-nodes]:before, .touch .l.icon[data-unset-nodes]:before {
  width: 32px;
  height: 32px;
}
.touch .xl.icon[data-show-nodes]:before, .touch .xl.icon[data-hide-nodes]:before, .touch .xl.icon[data-toggle-nodes]:before, .touch .xl.icon[data-set-nodes]:before, .touch .xl.icon[data-unset-nodes]:before {
  width: 40px;
  height: 40px;
}
.touch .xxl.icon[data-show-nodes]:before, .touch .xxl.icon[data-hide-nodes]:before, .touch .xxl.icon[data-toggle-nodes]:before, .touch .xxl.icon[data-set-nodes]:before, .touch .xxl.icon[data-unset-nodes]:before {
  width: 48px;
  height: 48px;
}
.touch .x3l.icon[data-show-nodes]:before, .touch .x3l.icon[data-hide-nodes]:before, .touch .x3l.icon[data-toggle-nodes]:before, .touch .x3l.icon[data-set-nodes]:before, .touch .x3l.icon[data-unset-nodes]:before {
  width: 56px;
  height: 56px;
}
.touch .x4l.icon[data-show-nodes]:before, .touch .x4l.icon[data-hide-nodes]:before, .touch .x4l.icon[data-toggle-nodes]:before, .touch .x4l.icon[data-set-nodes]:before, .touch .x4l.icon[data-unset-nodes]:before {
  width: 64px;
  height: 64px;
}
.touch .x5l.icon[data-show-nodes]:before, .touch .x5l.icon[data-hide-nodes]:before, .touch .x5l.icon[data-toggle-nodes]:before, .touch .x5l.icon[data-set-nodes]:before, .touch .x5l.icon[data-unset-nodes]:before {
  width: 72px;
  height: 72px;
}
.touch .x6l.icon[data-show-nodes]:before, .touch .x6l.icon[data-hide-nodes]:before, .touch .x6l.icon[data-toggle-nodes]:before, .touch .x6l.icon[data-set-nodes]:before, .touch .x6l.icon[data-unset-nodes]:before {
  width: 96px;
  height: 96px;
}
.touch .x7l.icon[data-show-nodes]:before, .touch .x7l.icon[data-hide-nodes]:before, .touch .x7l.icon[data-toggle-nodes]:before, .touch .x7l.icon[data-set-nodes]:before, .touch .x7l.icon[data-unset-nodes]:before {
  width: 128px;
  height: 128px;
}
/*  */
.up.icon, .up.icon.default, body:not(.touch) .up.icon.hover-default:hover, body:not(.touch) a:hover > .up.icon.hover-default {
  background-position: 0% 0%;
}
.up.icon.white, body:not(.touch) .up.icon.hover-white:hover, body:not(.touch) a:hover > .up.icon.hover-white {
  background-position: 25% 0%;
}
.up.icon.inactive, body:not(.touch) .up.icon.inactive-hover:hover, body:not(.touch) a:hover > .up.icon.inactive-hover {
  background-position: 50% 0%;
}
.up.icon.service, body:not(.touch) .up.icon.hover-service:hover, body:not(.touch) a:hover > .up.icon.hover-service {
  background-position: 75% 0%;
}
/*  */
.up.icon.service-light, body:not(.touch) .up.icon.hover-service-light:hover, body:not(.touch) a:hover > .up.icon.hover-service-light {
  background-position: 100% 0%;
}
/*  */
.down.icon, .down.icon.default, body:not(.touch) .down.icon.hover-default:hover, body:not(.touch) a:hover > .down.icon.hover-default {
  background-position: 0% 1.25%;
}
.down.icon.white, body:not(.touch) .down.icon.hover-white:hover, body:not(.touch) a:hover > .down.icon.hover-white {
  background-position: 25% 1.25%;
}
.down.icon.inactive, body:not(.touch) .down.icon.inactive-hover:hover, body:not(.touch) a:hover > .down.icon.inactive-hover {
  background-position: 50% 1.25%;
}
.down.icon.service, body:not(.touch) .down.icon.hover-service:hover, body:not(.touch) a:hover > .down.icon.hover-service {
  background-position: 75% 1.25%;
}
/*  */
.down.icon.service-light, body:not(.touch) .down.icon.hover-service-light:hover, body:not(.touch) a:hover > .down.icon.hover-service-light {
  background-position: 100% 1.25%;
}
/*  */
.prev.icon, .prev.icon.default, body:not(.touch) .prev.icon.hover-default:hover, body:not(.touch) a:hover > .prev.icon.hover-default {
  background-position: 0% 2.5%;
}
.prev.icon.white, body:not(.touch) .prev.icon.hover-white:hover, body:not(.touch) a:hover > .prev.icon.hover-white {
  background-position: 25% 2.5%;
}
.prev.icon.inactive, body:not(.touch) .prev.icon.inactive-hover:hover, body:not(.touch) a:hover > .prev.icon.inactive-hover {
  background-position: 50% 2.5%;
}
.prev.icon.service, body:not(.touch) .prev.icon.hover-service:hover, body:not(.touch) a:hover > .prev.icon.hover-service {
  background-position: 75% 2.5%;
}
/*  */
.prev.icon.service-light, body:not(.touch) .prev.icon.hover-service-light:hover, body:not(.touch) a:hover > .prev.icon.hover-service-light {
  background-position: 100% 2.5%;
}
/*  */
.next.icon, .next.icon.default, body:not(.touch) .next.icon.hover-default:hover, body:not(.touch) a:hover > .next.icon.hover-default {
  background-position: 0% 3.75%;
}
.next.icon.white, body:not(.touch) .next.icon.hover-white:hover, body:not(.touch) a:hover > .next.icon.hover-white {
  background-position: 25% 3.75%;
}
.next.icon.inactive, body:not(.touch) .next.icon.inactive-hover:hover, body:not(.touch) a:hover > .next.icon.inactive-hover {
  background-position: 50% 3.75%;
}
.next.icon.service, body:not(.touch) .next.icon.hover-service:hover, body:not(.touch) a:hover > .next.icon.hover-service {
  background-position: 75% 3.75%;
}
/*  */
.next.icon.service-light, body:not(.touch) .next.icon.hover-service-light:hover, body:not(.touch) a:hover > .next.icon.hover-service-light {
  background-position: 100% 3.75%;
}
/*  */
.burger.icon, .burger.icon.default, body:not(.touch) .burger.icon.hover-default:hover, body:not(.touch) a:hover > .burger.icon.hover-default {
  background-position: 0% 5%;
}
.burger.icon.white, body:not(.touch) .burger.icon.hover-white:hover, body:not(.touch) a:hover > .burger.icon.hover-white {
  background-position: 25% 5%;
}
.burger.icon.inactive, body:not(.touch) .burger.icon.inactive-hover:hover, body:not(.touch) a:hover > .burger.icon.inactive-hover {
  background-position: 50% 5%;
}
.burger.icon.service, body:not(.touch) .burger.icon.hover-service:hover, body:not(.touch) a:hover > .burger.icon.hover-service {
  background-position: 75% 5%;
}
/*  */
.burger.icon.service-light, body:not(.touch) .burger.icon.hover-service-light:hover, body:not(.touch) a:hover > .burger.icon.hover-service-light {
  background-position: 100% 5%;
}
/*  */
.home.icon, .home.icon.default, body:not(.touch) .home.icon.hover-default:hover, body:not(.touch) a:hover > .home.icon.hover-default {
  background-position: 0% 6.25%;
}
/* fuer die navigation zu ueberschreiben */
.navigation .home.icon,
.navigation .home.icon.default,
body:not(.touch) .navigation .home.icon.hover-default:hover,
body:not(.touch) .navigation a:hover > .home.icon.hover-default {
  background-position: 50% 6.25%;
}

.home.icon.white, body:not(.touch) .home.icon.hover-white:hover, body:not(.touch) a:hover > .home.icon.hover-white {
  background-position: 25% 6.25%;
}
.home.icon.inactive, body:not(.touch) .home.icon.inactive-hover:hover, body:not(.touch) a:hover > .home.icon.inactive-hover {
  background-position: 50% 6.25%;
}
.home.icon.service, body:not(.touch) .home.icon.hover-service:hover, body:not(.touch) a:hover > .home.icon.hover-service {
  background-position: 75% 6.25%;
}
/*  */
.home.icon.service-light, body:not(.touch) .home.icon.hover-service-light:hover, body:not(.touch) a:hover > .home.icon.hover-service-light {
  background-position: 100% 6.25%;
}
/*  */
.close.icon, .close.icon.default, body:not(.touch) .close.icon.hover-default:hover, body:not(.touch) a:hover > .close.icon.hover-default {
  background-position: 0% 7.5%;
}
/* fuer die navigation zu ueberschreiben */
.navigation .close.icon,
.navigation .close.icon.default,
body:not(.touch) .navigation .close.icon.hover-default:hover,
body:not(.touch) .navigation a:hover > .close.icon.hover-default {
  background-position: 50% 7.5%;
}

.close.icon.white, body:not(.touch) .close.icon.hover-white:hover, body:not(.touch) a:hover > .close.icon.hover-white {
  background-position: 25% 7.5%;
}
.close.icon.inactive, body:not(.touch) .close.icon.inactive-hover:hover, body:not(.touch) a:hover > .close.icon.inactive-hover {
  background-position: 50% 7.5%;
}
.close.icon.service, body:not(.touch) .close.icon.hover-service:hover, body:not(.touch) a:hover > .close.icon.hover-service {
  background-position: 75% 7.5%;
}
/*  */
.close.icon.service-light, body:not(.touch) .close.icon.hover-service-light:hover, body:not(.touch) a:hover > .close.icon.hover-service-light {
  background-position: 100% 7.5%;
}
/*  */
.logout.icon, .logout.icon.default, body:not(.touch) .logout.icon.hover-default:hover, body:not(.touch) a:hover > .logout.icon.hover-default {
  background-position: 0% 8.75%;
}
.logout.icon.white, body:not(.touch) .logout.icon.hover-white:hover, body:not(.touch) a:hover > .logout.icon.hover-white {
  background-position: 25% 8.75%;
}
.logout.icon.inactive, body:not(.touch) .logout.icon.inactive-hover:hover, body:not(.touch) a:hover > .logout.icon.inactive-hover {
  background-position: 50% 8.75%;
}
.logout.icon.service, body:not(.touch) .logout.icon.hover-service:hover, body:not(.touch) a:hover > .logout.icon.hover-service {
  background-position: 75% 8.75%;
}
/*  */
.logout.icon.service-light, body:not(.touch) .logout.icon.hover-service-light:hover, body:not(.touch) a:hover > .logout.icon.hover-service-light {
  background-position: 100% 8.75%;
}
/*  */
.search.icon, .search.icon.default, body:not(.touch) .search.icon.hover-default:hover, body:not(.touch) a:hover > .search.icon.hover-default {
  background-position: 0% 10%;
}
.search.icon.white, body:not(.touch) .search.icon.hover-white:hover, body:not(.touch) a:hover > .search.icon.hover-white {
  background-position: 25% 10%;
}
.search.icon.inactive, body:not(.touch) .search.icon.inactive-hover:hover, body:not(.touch) a:hover > .search.icon.inactive-hover {
  background-position: 50% 10%;
}
.search.icon.service, body:not(.touch) .search.icon.hover-service:hover, body:not(.touch) a:hover > .search.icon.hover-service {
  background-position: 75% 10%;
}
/*  */
.search.icon.service-light, body:not(.touch) .search.icon.hover-service-light:hover, body:not(.touch) a:hover > .search.icon.hover-service-light {
  background-position: 100% 10%;
}
/*  */
.person.icon, .person.icon.default, body:not(.touch) .person.icon.hover-default:hover, body:not(.touch) a:hover > .person.icon.hover-default {
  background-position: 0% 11.25%;
}
.person.icon.white, body:not(.touch) .person.icon.hover-white:hover, body:not(.touch) a:hover > .person.icon.hover-white {
  background-position: 25% 11.25%;
}
.person.icon.inactive, body:not(.touch) .person.icon.inactive-hover:hover, body:not(.touch) a:hover > .person.icon.inactive-hover {
  background-position: 50% 11.25%;
}
.person.icon.service, body:not(.touch) .person.icon.hover-service:hover, body:not(.touch) a:hover > .person.icon.hover-service {
  background-position: 75% 11.25%;
}
/*  */
.person.icon.service-light, body:not(.touch) .person.icon.hover-service-light:hover, body:not(.touch) a:hover > .person.icon.hover-service-light {
  background-position: 100% 11.25%;
}
/*  */
.basket.icon, .basket.icon.default, body:not(.touch) .basket.icon.hover-default:hover, body:not(.touch) a:hover > .basket.icon.hover-default {
  background-position: 0% 12.5%;
}
.basket.icon.white, body:not(.touch) .basket.icon.hover-white:hover, body:not(.touch) a:hover > .basket.icon.hover-white {
  background-position: 25% 12.5%;
}
.basket.icon.inactive, body:not(.touch) .basket.icon.inactive-hover:hover, body:not(.touch) a:hover > .basket.icon.inactive-hover {
  background-position: 50% 12.5%;
}
.basket.icon.service, body:not(.touch) .basket.icon.hover-service:hover, body:not(.touch) a:hover > .basket.icon.hover-service {
  background-position: 75% 12.5%;
}
/*  */
.basket.icon.service-light, body:not(.touch) .basket.icon.hover-service-light:hover, body:not(.touch) a:hover > .basket.icon.hover-service-light {
  background-position: 100% 12.5%;
}
/*  */
.success.icon, .success.icon.default, body:not(.touch) .success.icon.hover-default:hover, body:not(.touch) a:hover > .success.icon.hover-default {
  background-position: 0% 22.5%;
}
.success.icon.white, body:not(.touch) .success.icon.hover-white:hover, body:not(.touch) a:hover > .success.icon.hover-white {
  background-position: 25% 22.5%;
}
.info.icon, .info.icon.default, body:not(.touch) .info.icon.hover-default:hover, body:not(.touch) a:hover > .info.icon.hover-default {
  background-position: 0% 23.75%;
}
.info.icon.white, body:not(.touch) .info.icon.hover-white:hover, body:not(.touch) a:hover > .info.icon.hover-white {
  background-position: 25% 23.75%;
}
.warning.icon, .warning.icon.default, body:not(.touch) .warning.icon.hover-default:hover, body:not(.touch) a:hover > .warning.icon.hover-default {
  background-position: 0% 25%;
}
.warning.icon.white, body:not(.touch) .warning.icon.hover-white:hover, body:not(.touch) a:hover > .warning.icon.hover-white {
  background-position: 25% 25%;
}
.error.icon, .error.icon.default, body:not(.touch) .error.icon.hover-default:hover, body:not(.touch) a:hover > .error.icon.hover-default {
  background-position: 0% 26.25%;
}
.error.icon.white, body:not(.touch) .error.icon.hover-white:hover, body:not(.touch) a:hover > .error.icon.hover-white {
  background-position: 25% 26.25%;
}
.hotline.icon, .hotline.icon.default, body:not(.touch) .hotline.icon.hover-default:hover, body:not(.touch) a:hover > .hotline.icon.hover-default {
  background-position: 0% 32.5%;
}
.hotline.icon.white, body:not(.touch) .hotline.icon.hover-white:hover, body:not(.touch) a:hover > .hotline.icon.hover-white {
  background-position: 25% 32.5%;
}
.hotline.icon.inactive, body:not(.touch) .hotline.icon.inactive-hover:hover, body:not(.touch) a:hover > .hotline.icon.inactive-hover {
  background-position: 50% 32.5%;
}
.hotline.icon.service, body:not(.touch) .hotline.icon.hover-service:hover, body:not(.touch) a:hover > .hotline.icon.hover-service {
  background-position: 75% 32.5%;
}
/*  */
.hotline.icon.service-light, body:not(.touch) .hotline.icon.hover-service-light:hover, body:not(.touch) a:hover > .hotline.icon.hover-service-light {
  background-position: 100% 32.5%;
}
/*  */
.list {
    list-style: none;
}
.list li {
    padding: 7px 0px;
    position: relative;
}
.list li:before {
    content: "";
    display: inline-block;
    background-color: #1C449B;
}
ul.list {
    padding-left: 24px;
}
ul.list li:before {
    width: 16px;
    height: 16px;
    border-radius: 8px;
    margin: 0px 8px 0px -24px;
    vertical-align: -2px;
}

/* s-List mit Bullets 8px durchmesser */
ul.s.list {
    padding-left: 16px;
}
ul.s.list li {
    padding: 4px 0px;
}
ul.s.list li:before {
    width: 8px;
    height: 8px;
    border-radius: 4px;
    margin: 0px 8px 0px -16px;
    vertical-align: 2px;
}
/* */

ul.check.list {
    padding-left: 32px;
}
ul.m.check.list {
    padding-left: 28px;
}
ul.s.check.list {
    padding-left: 24px;
}
ol.list {
    padding-left: 40px;
    counter-reset: section 1;
}
ul.check.list:not([class*="size-2"]),
ol.list {
    font-family: 'RobotoMedium', Arial, sans-serif;
    font-size: 20px;
    line-height: 28px;
}
ul.m.check.list {
    font-family: 'RobotoRegular', Verdana, sans-serif;
    font-size: 16px;
    line-height: 24px;
}
ul.s.check.list {
    font-family: 'RobotoRegular', Verdana, sans-serif;
    font-size: 16px;
    line-height: 24px;
}
ul.check.list:not([class*="size-2"]) li,
ol.list li {
    padding: 5px 0px;
}
ul.m.check.list li {
    padding: 7px 0px;
}
ul.s.check.list li {
    padding: 3px 0px;
}
ul.check.list li:before {
    width: 24px;
    height: 24px;
    border-radius: 12px;
    margin: 0px 8px 0px -32px;
    vertical-align: -4px
}
ul.m.check.list li:before {
    width: 20px;
    height: 20px;
    border-radius: 10px;
    margin: 0px 8px 0px -28px;
    vertical-align: -4px
}
ul.s.check.list li:before {
    width: 16px;
    height: 16px;
    border-radius: 8px;
    margin: 0px 8px 0px -24px;
    vertical-align: -2px
}
ul.check.list li:after {
    content: "";
    position: absolute;
    top: 15px;
    left: -29px;
    width: 3px;
    height: 3px;
    background: transparent;
    -webkit-box-shadow: 0px 1px 0px #FFFFFF, 0px 2px 0px #FFFFFF, 0px 4px 0px #FFFFFF, 0px 6px 0px #FFFFFF, 0px 8px 0px #FFFFFF,
                        2px 8px 0px #FFFFFF, 4px 8px 0px #FFFFFF, 6px 8px 0px #FFFFFF, 8px 8px 0px #FFFFFF, 10px 8px 0px #FFFFFF;
    box-shadow: 0px 1px 0px #FFFFFF, 0px 2px 0px #FFFFFF, 0px 4px 0px #FFFFFF, 0px 6px 0px #FFFFFF, 0px 8px 0px #FFFFFF,
                2px 8px 0px #FFFFFF, 4px 8px 0px #FFFFFF, 6px 8px 0px #FFFFFF, 8px 8px 0px #FFFFFF, 10px 8px 0px #FFFFFF;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
ul.m.check.list li:after {
    content: "";
    position: absolute;
    top: 16px;
    left: -26px;
    width: 3px;
    height: 3px;
    background: transparent;
    -webkit-box-shadow: 0px 2px 0px #FFFFFF, 0px 2px 0px #FFFFFF, 0px 4px 0px #FFFFFF, 0px 6px 0px #FFFFFF, 0px 8px 0px #FFFFFF,
                        2px 8px 0px #FFFFFF, 4px 8px 0px #FFFFFF, 6px 8px 0px #FFFFFF, 8px 8px 0px #FFFFFF, 10px 8px 0px #FFFFFF;
    box-shadow: 0px 2px 0px #FFFFFF, 0px 2px 0px #FFFFFF, 0px 4px 0px #FFFFFF, 0px 6px 0px #FFFFFF, 0px 8px 0px #FFFFFF,
                2px 8px 0px #FFFFFF, 4px 8px 0px #FFFFFF, 6px 8px 0px #FFFFFF, 8px 8px 0px #FFFFFF, 10px 8px 0px #FFFFFF;
    -webkit-transform: scale(0.85) rotate(-45deg);
    -ms-transform: scale(0.85) rotate(-45deg);
    transform: scale(0.85) rotate(-45deg);
}
ul.s.check.list li:after {
    content: "";
    position: absolute;
    top: 12px;
    left: -23px;
    width: 3px;
    height: 3px;
    background: transparent;
    -webkit-box-shadow: 0px 1px 0px #FFFFFF, 0px 2px 0px #FFFFFF, 0px 4px 0px #FFFFFF, 0px 6px 0px #FFFFFF, 0px 8px 0px #FFFFFF,
                        2px 8px 0px #FFFFFF, 4px 8px 0px #FFFFFF, 6px 8px 0px #FFFFFF, 8px 8px 0px #FFFFFF, 10px 8px 0px #FFFFFF;
    box-shadow: 0px 1px 0px #FFFFFF, 0px 2px 0px #FFFFFF, 0px 4px 0px #FFFFFF, 0px 6px 0px #FFFFFF, 0px 8px 0px #FFFFFF,
                2px 8px 0px #FFFFFF, 4px 8px 0px #FFFFFF, 6px 8px 0px #FFFFFF, 8px 8px 0px #FFFFFF, 10px 8px 0px #FFFFFF;
    -webkit-transform: scale(0.68) rotate(-45deg);
    -ms-transform: scale(0.68) rotate(-45deg);
    transform: scale(0.68) rotate(-45deg);
}

ul.check.list[class*="size-"] li:before {
    vertical-align: -6px
}
ul.check.list[class*="size-"] li:after {
    top: 16px;
}

ol.list[start="2"] { counter-reset: section 2; }
ol.list[start="3"] { counter-reset: section 3; }
ol.list[start="4"] { counter-reset: section 4; }
ol.list[start="5"] { counter-reset: section 5; }
ol.list[start="6"] { counter-reset: section 6; }
ol.list[start="7"] { counter-reset: section 7; }
ol.list[start="8"] { counter-reset: section 8; }
ol.list[start="9"] { counter-reset: section 9; }
ol.list[start="10"] { counter-reset: section 10; }
ol.list[start="11"] { counter-reset: section 11; }
ol.list[start="12"] { counter-reset: section 12; }
ol.list[start="13"] { counter-reset: section 13; }
ol.list[start="14"] { counter-reset: section 14; }
ol.list[start="15"] { counter-reset: section 15; }
ol.list[start="16"] { counter-reset: section 16; }
ol.list[start="17"] { counter-reset: section 17; }
ol.list[start="18"] { counter-reset: section 18; }
ol.list[start="19"] { counter-reset: section 19; }
ol.list[start="20"] { counter-reset: section 20; }

ol.list li:before {
    content: counter(section, decimal);
    width: 32px;
    height: 32px;
    border-radius: 16px;
    margin: 0px 8px 0px -40px;
    color: #FFFFFF;
    text-align: center;
    line-height: 32px;
}
ol.list li:after {
    content: "";
    counter-increment: section;
}

ul.text.list,
ol.text.list,
ol.footnotes.list,
ol.default.list {
    padding-left: 0px;
}
ol.default.list {
    list-style: decimal;
    margin-left: 25px;
}
ul.text.list li:before,
ol.text.list li:before,
ol.footnotes.list li:before,
ol.default.list li:before {
    content: none;
    width: 0px;
    height: 0px;
    margin: 0px;
}
ol.footnotes.list li {
    margin-left: 15px;
    padding: 0;
}
ol.footnotes.list li sup {
    position: absolute;
    left: -15px;
    top: 5px;
}
/* Im Firefox Subpixel Rendering Problem, wenn die Y-Position Berechnung mit Kommastelle .5, dann BG (hier Icon) abgeschnitten*/
ul.text.list .m.icon:first-child {
    float: left;
    height: 25px; /*Quick-Fix abgeschnittenes Icon Problem*/
    margin: -1px 8px 0px 0px; /*Ohne Quick-Fix margin-top: 0px*/
}
ul.text.list .s.icon:first-child {
    float: left;
    height: 17px;  /*Quick-Fix abgeschnittenes Icon Problem*/
    margin: 3px 8px 0px 0px; /*Ohne Quick-Fix margin-top: 4px*/
}

ul.inline.list li {
    display: inline;
}
ul.inline-block.list li {
    display: inline-block;
}

ul.horizontal.list li {
    float: left;
}
ul.horizontal.list.align-right {
    float: right;
}
ul.horizontal.badge {
    float: left;
}

ul.inline.list li,
ul.inline-block.list li,
ul.horizontal.list li {
    margin-right: 20px;
}
ul.inline.list.align-center li,
ul.inline-block.list.align-center li {
    margin-left: 10px;
    margin-right: 10px;
}
ul.inline.list.align-right li,
ul.inline-block.list.align-right li,
ul.horizontal.list.align-right li {
    margin-left: 20px;
}
ul.horizontal.index.list li {
    margin-right: 0px;
}
ul.inline.list:not(.align-center) li:last-child,
ul.inline-block.list:not(.align-center) li:last-child,
ul.horizontal.list:not(.align-center) li:last-child {
    margin-right: 0px;
}
ul.single-line.list li {
    white-space: nowrap;
    text-overflow: ellipsis;
}

dl.list dt[class], dd[class] {
  display: inline-block;
  vertical-align: top;
}
dl.list dd[class] {
    margin-left: 0px;
    padding-left: 40px;
    display: inline;
}
.header {
  padding: 0px;
  display: block;
  height: 96px;
  line-height: 97px;
  box-sizing: border-box;
}
.header[class="header"],
.header[class="vline header"] {
  width: 100%;
}
.header > * {
  display: inline-block;
}
.header.center {
  margin: 0 auto;
}
.header > *:first-child,
.header > *:first-child > * {
  color: #FFFFFF;
  font-family: 'RobotoCondensedLight', Verdana, sans-serif;
  font-size: 53px;
  font-weight: 400;
  display: inline-block;
  line-height: inherit;
}
.header > *:first-child > *:first-child {
  display: block;
  background: url(//img.ui-portal.de/cd/ci/gmx.net/brand-logo.svg) no-repeat 0 0;
  background-size: auto 40px;
  color: transparent;
  width: 123px;
  height: 40px;
  overflow: hidden;
  float: left;
  margin: 28px 16px 0px 10px;
  text-indent: -1000px;
}
.header:before {
  content: "";
  position: absolute;
  left: 0px;
  right: 0px;
  min-width: 100%;
  height: 96px;
  border-top: 96px solid #1C449B;
  border-left: 0px;
  border-right: 0px;
  border-bottom: 0px;
  background: #FFFFFF;
  box-sizing: border-box;
  z-index: -1;
}
.header.vline:before {
  border-bottom: 0px solid;
}
.header.vline,
.header.vline:before {
  height: 97px;
}
.header .left {
  float: left;
}
.header .right {
  float: right;
}
.header > .container,
.header > .module {
  margin-top: 28px;
}
.header .module {
  line-height: 22px;
}
.header a:hover,
.header a:focus {
  text-decoration: none;
}
@media screen and (min-width: 980px) {
  .header.vline ~ .navigation[class][class] {
    margin-top: -1px;
  }
}
/* Dieser Block wurde nicht geprüft oder getestet!!! */
@media screen and (min-width: 980px) {
  .header.header-layer {
    height: 72px;
    line-height: 73px;
    padding: 0px;
    float: left;
  }
  .header.header-layer[class]:before {
    border-top-width: 72px;
    height: 72px;
    margin-top: 0px;
  }
  .header.header-layer[class].vline,
  .header.header-layer[class].vline:before {
    height: 72px;
  }
  .header.header-layer _::-webkit-full-page-media,
  .header.header-layer _:future,
  :root .header.header-layer:not(.fix, .m-fix) {
    float: none;
    position: relative;
    z-index: 999;
  }
  .no-flex .header.header-layer + * {
    float: none;
    display: inline-block;
  }
  .header.header-layer > *:first-child {
    vertical-align: bottom;
    left: 0px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    margin-left: 20px;
  }
  .header.header-layer > *:first-child,
  .header.header-layer > *:first-child > * {
    font-size: 42px;
  }
  .header.header-layer > *:first-child > *:first-child {
    background: url(//img.ui-portal.de/cd/ci/gmx.net/brand-logo.svg) no-repeat 0 0;
    background-size: auto 32px;
    color: transparent;
    width: 98px;
    height: 32px;
    margin: 20px 13px 0px 0px;
  }
  .header.header-layer > *:first-child + .left {
    margin-left: 10px;
    margin-right: -26px;
  }
  .header.header-layer ~ .navigation,
  .header.header-layer ~ .settings,
  .header.header-layer ~ .wishlist {
    position: absolute;
    margin-top: 0px;
    top: 0px;
    z-index: 9999;
  }
  .header.header-layer ~ .navigation {
    right: 100%;
  }
  .header.header-layer ~ .settings > .head,
  .header.header-layer ~ .wishlist > .head {
    height: 72px;
    line-height: 73px;
  }
  .header.header-layer.vline ~ .settings > .head,
  .header.header-layer.vline ~ .wishlist > .head {
    box-sizing: content-box;
    z-index: 9999;
  }
  .no-flex .header.header-layer ~ .navigation,
  .no-flex .header.header-layer ~ .settings,
  .no-flex .header.header-layer ~ .wishlist {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .header.header-layer > .container,
  .header.header-layer > .module[class] {
    margin-top: 21px;
  }
  .header.header-layer > .container.right,
  .header.header-layer > .module.right {
    margin-top: 20px;
  }
  .header.header-layer .icon[aria-label]:after {
    bottom: -14px;
  }
  .toggle-nav .header.header-layer:before {
    left: 0px;
  }
  .toggle-settings .header.header-layer:before,
  .toggle-wishlist .header.header-layer:before {
    right: 0px;
  }
}
@media screen and (min-width: 980px) and \\0 screen {
  .header.header-layer:not(.fix, .m-fix) {
    float: none;
    position: relative;
    z-index: 999;
  }
}
@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .header {
    height: 72px;
    line-height: 73px;
    padding: 0px;
    float: left;
  }
  .header[class]:before {
    border-top-width: 72px;
    height: 72px;
    margin-top: 0px;
  }
  .header[class].vline,
  .header[class].vline:before {
    height: 72px;
  }
  .header _::-webkit-full-page-media,
  .header _:future,
  :root .header:not(.fix, .m-fix) {
    float: none;
    position: relative;
    z-index: 999;
  }
  .no-flex .header + * {
    float: none;
    display: inline-block;
  }
  .header > *:first-child {
    vertical-align: bottom;
    left: 0px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    margin-left: 20px;
  }
  .header > *:first-child,
  .header > *:first-child > * {
    font-size: 42px;
  }
  .header > *:first-child > *:first-child {
    background: url(//img.ui-portal.de/cd/ci/gmx.net/brand-logo.svg) no-repeat 0 0;
    background-size: auto 32px;
    color: transparent;
    width: 98px;
    height: 32px;
    margin: 20px 13px 0px 0px;
  }
  .header > *:first-child + .left {
    margin-left: 10px;
    margin-right: -26px;
  }
  .header ~ .navigation,
  .header ~ .settings,
  .header ~ .wishlist {
    position: absolute;
    margin-top: 0px;
    top: 0px;
    z-index: 9999;
  }
  .header ~ .navigation {
    right: 100%;
  }
  .header ~ .settings > .head,
  .header ~ .wishlist > .head {
    height: 72px;
    line-height: 73px;
  }
  .header.vline ~ .settings > .head,
  .header.vline ~ .wishlist > .head {
    box-sizing: content-box;
    z-index: 9999;
  }
  .no-flex .header ~ .navigation,
  .no-flex .header ~ .settings,
  .no-flex .header ~ .wishlist {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .header > .container,
  .header > .module[class] {
    margin-top: 21px;
  }
  .header > .container.right,
  .header > .module.right {
    margin-top: 20px;
  }
  .header .icon[aria-label]:after {
    bottom: -14px;
  }
  .toggle-nav .header:before {
    left: 0px;
  }
  .toggle-settings .header:before,
  .toggle-wishlist .header:before {
    right: 0px;
  }
}
@media screen and (min-width: 660px) and (max-width: 979.9px) and \\0 screen {
  .header:not(.fix, .m-fix) {
    float: none;
    position: relative;
    z-index: 999;
  }
}
@media screen and (max-width: 659.9px) {
  .header {
    height: 48px;
    line-height: 50px;
    padding-top: 0px;
    padding-bottom: 0px;
  }
  .header > *:first-child {
    text-indent: -1000px;
    margin: 0px;
    width: 0px;
  }
  .header > *:first-child a:hover {
    text-decoration: none;
  }
  .header:before,
  .header.vline,
  .header.vline:before {
    height: 48px;
    margin-top: 0px;
    border-top-width: 48px;
    border-bottom: 0px;
  }
  .header > *:first-child > *:first-child {
    position: absolute;
    top: 0px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    margin: 14px 0px 0px 0px;
    font-size: 20px;
    line-height: 50px;
    color: #FFFFFF;
    /*  */
    background: url(//img.ui-portal.de/cd/ci/gmx.net/brand-logo-s.svg) no-repeat 0 0;
    background-size: auto 20px;
    height: 20px;
    width: 62px;
    /*  */
  }
  .header > *:first-child > *:first-child ~ * {
    display: none;
  }
  .header > .container.right[class] {
    margin: 7px 26px 0px 0px;
    min-width: auto;
    width: auto;
  }
  .header > .module.left[class] {
    margin: 8px 0px 0px 10px;
  }
  .header .l-1.module[class][class] {
    min-width: 32px;
    width: auto;
    padding: 0 0 0 8px;
  }
  .header ~ .navigation,
  .header ~ .settings,
  .header ~ .wishlist {
    position: absolute;
    top: 0px;
  }
  .header ~ .navigation {
    right: 100%;
  }
  .header ~ .settings > .head,
  .header ~ .wishlist > .head {
    height: 48px;
    line-height: 48px;
  }
  .header ~ .navigation,
  .header ~ .settings,
  .header ~ .wishlist,
  .no-flex .header ~ .navigation,
  .no-flex .header ~ .settings,
  .no-flex .header ~ .wishlist {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    margin-top: 0px;
  }
  .toggle-nav .header:before {
    left: 0;
  }
  .toggle-settings .header:before,
  .toggle-wishlist .header:before {
    right: 0;
  }
}
/*  */
.header ~ .settings,
.header ~ .wishlist {
  display: none;
  right: -300px;
  width: 300px;
  overflow: hidden;
  position: absolute;
  flex-grow: 0;
}
.header ~ .settings > .head,
.header ~ .wishlist > .head {
  position: relative;
  box-sizing: border-box;
  border-bottom: 1px solid #DADADA;
  margin-bottom: 10px;
}
.header ~ .settings > .head .l.icon,
.header ~ .wishlist > .head .l.icon {
  margin: -10px 10px -10px 10px;
}
.header ~ .settings > .head .close.icon,
.header ~ .wishlist > .head .close.icon {
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
body {
  -webkit-transition: -webkit-transform 0.12s ease-in-out;
  -ms-transition: -ms-transform 0.12s ease-in-out;
  transition: transform 0.12s ease-in-out;
}
.toggle-nav {
  -webkit-transform: translateX(300px);
  -ms-transform: translateX(300px);
  transform: translateX(300px);
  overflow-x: hidden;
}
@media screen and (max-width: 659.9px) {
  .toggle-nav {
    -webkit-transform: translateX(256px);
    -ms-transform: translateX(256px);
    transform: translateX(256px);
  }
}
.toggle-settings,
.toggle-wishlist {
  -webkit-transform: translateX(-300px);
  -ms-transform: translateX(-300px);
  transform: translateX(-300px);
  overflow-x: hidden;
}
.toggle-settings .header ~ .settings,
.toggle-wishlist .header ~ .wishlist {
  display: block;
}
/*  */
/*  */
.header .dialog {
  background: #FFFFFF;
  border-radius: 4px;
  box-sizing: border-box;
  -webkit-box-shadow: 0px 0px 4px 0px #AAAAAA;
  -moz-box-shadow: 0px 0px 4px 0px #AAAAAA;
  box-shadow: 0px 0px 4px 0px #AAAAAA;
  cursor: default;
  position: absolute;
  -webkit-transform: translateX(-100%);
  -moz-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%);
  margin-top: 10px;
  margin-left: 68px;
  z-index: 1200;
  padding: 20px 10px;
}
.header .dialog:before {
  content: "";
  background: #FFFFFF;
  -webkit-box-shadow: -2px -2px 4px -1px #aaaaaa;
  -moz-box-shadow: -2px -2px 4px -1px #aaaaaa;
  box-shadow: -2px -2px 4px -1px #aaaaaa;
  display: block;
  position: absolute;
  margin-top: -26px;
  margin-left: 100%;
  -webkit-transform: translateX(-55px) rotate(45deg);
  -moz-transform: translateX(-55px) rotate(45deg);
  -ms-transform: translateX(-55px) rotate(45deg);
  transform: translateX(-55px) rotate(45deg);
  width: 12px;
  height: 12px;
  z-index: 1;
}
.header .dialog button.fullsize {
  width: 100%;
}
@media all and (min-width:0\0) and (min-resolution: .001dpcm) {
  .header .dialog {
    -ms-transform: translateX(-100%) translateX(-44px) translateY(45px);
  }
}
/*  */
/* Bugfix von Bo aus der Bestellstrecke, damit die Dialog-/Settings-Box keine Skrollbar erzeugt */
/* IE10+ begin: avoid the horizontal scrollbar */
@media screen and (min-width: 660px) {
  _:-ms-lang(x),
  _:-webkit-full-screen,
  body {
    overflow-x: hidden;
  }
}
@media screen and (-ms-high-contrast: active) and (min-width: 660px), (-ms-high-contrast: none) and (min-width: 660px) {
  body {
    overflow-x: hidden;
  }
}
/* IE10+ end: avoid the horizontal scrollbar */
.navigation {
    display: block;
    overflow: visible;
    z-index: 999;
    height: 48px;
}
.navigation > ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
}
.navigation .up.icon,
.navigation .down.icon {
    margin-left: 0px;
    vertical-align: -5px;
}
.navigation li span.open .down.icon,
.navigation li span:not(.open) .up.icon,
.navigation li span:not(.open) ~ ul {
    display: none;
}
/* Active und Hover in Servicefarbe */
.navigation li.active span:not(.open) .down.icon,
.navigation li span:not(.open) .down.icon.service,
.navigation li span:not(.open):hover .down.icon {
    display: none;
}

@media screen and (min-width: 980px) {
    .navigation li.active span:not(.open) .down.icon.service:not(.l-0),
    .navigation li span:not(.open):hover .down.icon.service:not(.l-0) {
        display: inline-block;
    }
}

/* Open in grau und Open+Active und Open+Hover in Servicefarbe */
@media screen and (max-width: 979.9px) {
    .navigation li span.open .down.icon {
        -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    }
    .navigation li span.open:hover .down.icon:not(.service):not(.m-0),
    .navigation li.active span.open .down.icon:not(.service):not(.m-0) {
        display: none;
    }
    .navigation li.active span:not(.open) .down.icon.service:not(.m-0),
    .navigation li span:not(.open):hover .down.icon.service:not(.m-0) {
        display: inline-block;
    }
    .navigation li span.open:hover .down.icon.service:not(.m-0),
    .navigation li.active span.open .down.icon.service:not(.m-0),
    .navigation li span.open .down.icon:not(.service):not(.m-0) {
        display: inline-block;
    }
}

.navigation a,
.navigation a:hover {
    color: #525252;
    text-decoration: none;
}
.navigation li.active > *:not(.open):first-child {
    color: #1C449B;
}

/* Hintergrund bei Active */
.navigation li ul li a:focus,
.navigation li ul li.active a {
    background-color: #F3F3F3;
}
/* Hintergrund bei Hover */
.navigation li ul li a:hover,
.navigation li ul li.active a:hover,
.navigation li ul li a:focus a:hover {
    background-color: #D6DDED;
}

/* M-Icons Submenü */
/* Im Firefox gibt es ein Subpixel Rendering Problem.
   Wenn die Y-Position Berechnung mit Kommastelle .5 berechnet wird, dann wird der BG (hier Icon) abgeschnitten */
/* Falls dies auftritt, muss der BG-Container um 1px erhöht werden */
.navigation ul.text.list .m.icon:first-child {
    height: 24px; /*Quick-Fix abgeschnittenes Icon Problem => 25px*/
    margin: 0px 8px 0px 0px; /*Ohne Quick-Fix margin-top: 0px => margin-top: -1px*/
}

/*l-view*/
@media screen and (min-width: 980px) {
/* for boxed layout */
    .navigation > ul {
        width: 1000px;
    }
    .navigation > ul > li:first-child {
        overflow: hidden;
        max-height: 48px;
        margin-left: 20px;
    }
    .navigation:before {
        content: "";
        position: absolute;
        background-color: #F3F3F3;
        left: 0px;
        width: 100%;
        height: 48px;
        z-index: -1;
    }
    .navigation.center {
        margin: 0 auto;
    }
    .navigation > ul > li {
        float: left;
        position: relative;
    }
    .navigation > ul > li + li > span > .icon:not(.down):not(.up) {
        display: none;
    }
    /* 1. Listenpunkte der Hauptnavi, Home-Icon a-tag */
    .navigation > ul > li > *:first-child {
        display: inline-block;
        padding: 12px 20px;
        height: 24px;
    }
    /* gefloatete wegen Abstand zur Linie */
    .navigation > ul > li > *:first-child .home {
        float: left;
    }
    /* blaue Linie */
    .navigation > ul > li + li.active > *:first-child::after,
    .navigation > ul > li + li:hover > *:first-child::after {
        content: "";
        background-color: #1C449B;
        position: absolute;
        bottom: 0px;
        left: 20px;
        right: 20px;
        height: 4px;
    }
    .navigation > ul > li > * > .m.icon {
        vertical-align: -5px;
    }
    .navigation ul ul {
        position: absolute;
    }
    .navigation ul ul li {
        padding: 0px;
    }

    /* Grauer Trennstrich nach dem Home-Icon */
    .navigation > ul > li:nth-child(2)::after {
        content: "";
        height: 20px;
        width: 1px;
        left: 0;
        top: 15px;
        position: absolute;
        background-color: #C2C2C2;
    }
    /* Flyout */
     .navigation span.open {
        color: #FFFFFF;
        border-radius: 4px 4px 0px 0px;
        position: relative;
        z-index: 1000;
    }

    /* Blaue Hinterlegung - offenes Submenue Desktop */
    .navigation > ul > li + li > span.open[class]::before {
        content: "";
        background-color: #1C449B;
        border-radius: 4px 4px 0px 0px;
        position: absolute;
        height: 46px;
        top: 2px;
        left: 1px;
        right: 1px;
        z-index: -1;
    }
    .navigation > ul > li + li:hover > span[class].open::after,
    .navigation > ul > li + li > span[class].open::after {
        content: "";
        display: block;
        position: absolute;
        background-color: transparent;
        border-radius: 4px 4px 0px 0px;
        border-right: 1px solid #DADADA;
        border-left: 1px solid #DADADA;
        border-top: 1px solid #DADADA;
        height: 41px;
        top: 1px;
        right: 0px;
        left: 0px;
    }
    .navigation > ul > li + li > span > .icon {
        margin-right: -2px;
    }
    /* Blaue Linie */
    .navigation ul.text.list {
        background-color: #FFFFFF;
        border: 1px solid #DADADA;
        border-radius: 0px 4px 4px 4px;
        margin-top: -5px;
        padding-top: 24px;
        padding-bottom: 20px;
        width: 340px;
        z-index: 999;
    }
    .navigation ul.text.list:before {
        content: "";
        display: block;
        position: absolute;
        height: 4px;
        border-radius: 0 4px 0 0;
        border-top: 4px solid #1C449B;
        top: 0px;
        right: 0px;
        left: 0;
        z-index: -1;
    }
    /* Breite Listenpunkte */
    .navigation ul.text.list li a {
        box-sizing: border-box;
        width: 340px;
        line-height: 24px;
        z-index: 9999;
        padding: 8px 20px;
        position: relative;
        display: block;
    }
    /* weiße Hinterlegung der Sub-Listen */
    .navigation ul.text.list li:before {
        content: "";
        display: block;
        position: absolute;
        background-color: #FFFFFF;
        min-height: 100%;
        top: 0px;
        left: 0px;
        margin-left: 0px;
        border-radius: 0px;
        z-index: 9999;
        width: 340px;
    }
    /* Rundung des Flyouts unten (beim letzten Listenpunkt) */
    x.navigation ul.text.list li:last-child a,
    x.navigation ul.text.list li:last-child:before {
        border-radius: 0px 0px 4px 4px;
    }

    .navigation .double.text.list {
        width: 660px;
    }
    /* Breite Listenpunkte */
    .navigation .double.text.list li a {
        width: 330px;
    }
    /* weiße Hinterlegung der Sub-Listen */
    .navigation .double.text.list li:nth-of-type(odd):before {
        width: 660px;
    }
    .navigation .double.text.list li:nth-of-type(odd) a {
        padding-right: 10px;
    }
    .navigation .double.text.list li:nth-of-type(even) a {
        left: 330px;
        margin-top: -40px;
        padding-left: 10px;
    }
    .navigation .double.text.list li:nth-of-type(even):before {
        content: none;
    }
    /* li + li würde verhindern, dass das erste li jemals ausgewählt wird */
    /* odd = ungerade,
       even = gerade
       li:nth-of-type(odd):last-child => letzter Navipunkt steht links */
    /* li:nth-of-type(odd):nth-last-child(2) => letzter Navipunkt rechts, aber li links davon wird gewählt */
    /* Rundungen der weißen Hinterlegung unten */
    x.navigation .double.text.list li:nth-of-type(odd):last-child:before,
    x.navigation .double.text.list li:nth-of-type(odd):nth-last-child(2):before {
        border-radius: 0px 0px 4px 4px;
    }
    /* Rundungen der blauen Hinterlegung bei hover */
    x.navigation .double.text.list li:nth-of-type(odd):last-child a,
    x.navigation .double.text.list li:nth-of-type(odd):nth-last-child(2) a {
        border-radius: 0px 0px 0px 4px;
    }
    x.navigation .double.text.list li:nth-of-type(even):last-child a {
        border-radius: 0px 0px 4px 0px;
    }
    /* Linie im aufgeklappten Zustand oben */
    .navigation .triple.text.list {
        width: 980px;
    }
    /* 1. Spalte */
    .navigation .triple.text.list li:nth-of-type(3n+1) a {
        width: 330px;
        padding-right: 10px;
    }
    /* 2. Spalte - nur 320px */
    .navigation .triple.text.list li:nth-of-type(3n+2) a {
        left: 330px;
        margin-top: -40px;
        width: 320px;
        padding-left: 10px;
        padding-right: 10px;
    }
    /* 3. Spalte */
    .navigation .triple.text.list li:nth-of-type(3n+3) a {
        left: 650px;
        margin-top: -40px;
        width: 330px;
        padding-left: 10px;
    }
    /* weiße Hinterlegung der Sub-Listen */
    .navigation .triple.text.list li:nth-of-type(3n+1):before {
        width: 980px;
    }
    .navigation .triple.text.list li:nth-of-type(3n+2):before,
    .navigation .triple.text.list li:nth-of-type(3n+3):before {
        content: none;
    }
    /* von der letzten Reihe, die Li's => Zugriff immer auf den linken */
    x.navigation .triple.text.list li:nth-of-type(3n+1):last-child:before,
    x.navigation .triple.text.list li:nth-of-type(3n+1):nth-last-child(2):before,
    x.navigation .triple.text.list li:nth-of-type(3n+1):nth-last-child(3):before {
        border-radius: 0px 0px 4px 4px;
    }
    /* Rundungen der blauen Hinterlegung bei hover, a von linker Reihe */
    x.navigation .triple.text.list li:nth-of-type(3n+1):last-child a,
    x.navigation .triple.text.list li:nth-of-type(3n+1):nth-last-child(2) a,
    x.navigation .triple.text.list li:nth-of-type(3n+1):nth-last-child(3) a {
        border-radius: 0px 0px 0px 4px;
    }
    /* Keine Rundung der blauen Hinterlegung bei hover, a von mittlerer Reihe */
    x.navigation .triple.text.list li:nth-of-type(3n+2):last-child a,
    x.navigation .triple.text.list li:nth-of-type(3n+2):nth-last-child(2) a {
        border-radius: 0px 0px 0px 0px;
    }
    /* Rundungen der blauen Hinterlegung bei hover, a von rechter Reihe */
    x.navigation .triple.text.list li:nth-of-type(3n+3):last-child a {
        border-radius: 0px 0px 4px 0px;
    }
}

/* mobile/tablet view */
@media screen and (max-width: 979.9px) {
    .navigation {
        position: relative;
        left: -301px;
        height: 0px;
    }
    /* Min-Width ist nötig, damit klick auf burger funktioniert */
    .navigation > ul {
        min-width: 0px;
        margin: 0px;
        padding: 0px;
    }
    /* wegen IE9 Spezifität erhöhen */
    body[class] .navigation,
    body[class] .navigation > ul {
        width: 300px;
    }
    .navigation ul li {
        padding: 0px;
    }
    .navigation > ul > li {
        border-bottom: 1px solid #DADADA;
    }

    /* Home-Icon, Dienstname, X */
    .navigation > ul > li:first-child {
        padding-right: 54px;
        height: 72px;
        /* die Ausrichtung wegen der Border-Top-Linie bei WEB.DE anpassen */
    }
    .navigation > ul > li:first-child > a {
        height: 72px;
        padding: 20px 0 21px 20px;
        /* die Ausrichtung wegen der Border-Top-Linie bei WEB.DE anpassen */
        width: 246px; /* fixe Breite (300-54px=246px) nötig wegen IE9 */
        box-sizing: border-box;
    }
    .navigation > ul > li:first-child > a:after {
        content: attr(data-title);
        font-size: 16px;
        position: relative;
        top: -2px;
        left: 8px;
    }

    /* 1. Ebene span- oder a-tag, Höhe 40px ohne Icon, 72px mit Icon  */
    .navigation ul > li > *:first-child {
        display: block;
        width: 300px;
        min-height: 24px;
        line-height: 24px;
        padding: 8px 20px;
        box-sizing: border-box;
        position: relative;

    }
    .navigation ul > li > span:first-child {
        padding-right: 54px;
    }
    .navigation ul > li > span .l.icon {
        margin: 12px 4px 12px 0px; /* 4px + Leerzeichen => 8px */
        vertical-align: -22px;
    }
    /* Safari 7.1+ (9.0 is the latest version of Safari at this time) */
    _::-webkit-full-page-media, _:future, :root .navigation[class] ul > li > span .l.icon {
        vertical-align: 3px;
    }
    .navigation ul > li > span .up.icon,
    .navigation ul > li > span .down.icon {
        margin-left: 0px;
        margin-top: -12px;
        top: 50%;
        right: 20px;
        position: absolute;
    }

    /* Hinterlegung - offenes Submenü */
    .navigation ul > li > span.open,
    .navigation ul > li > span.open + ul {
        background-color: #F3F3F3;
    }

    /* Hintergrund. Textfarbe bei Active */
    .navigation > ul li.active > span,
    .navigation > ul li.active > a {
        color: #1C449B;
        text-decoration: none;
        background-color: #F3F3F3;
    }

    /* Hintergrund bei Hover */
    .navigation > ul li:not(:first-child) > span:hover,
    .navigation > ul li.active > span:hover,
    .navigation > ul li a:focus > span:hover {
        background-color: #D6DDED;
    }
    .navigation > ul li a:hover {
        text-decoration: none;
        background-color: #D6DDED;
    }
    /* erster Navipunkt mit Home-Icon bei Hover Hinterlegung nach rechts erweitert */
    .navigation > ul > li:first-child > a:hover:before {
        content: "";
        border-left: 4px solid #1C449B;
        height: 100%;
        position: absolute;
        left: 0px;
        top: 0px;
        right: -54px;
        background-color: #D6DDED;
        z-index: 0;
    }
    .navigation ul > li:first-child > a .l.icon {
        position: relative;
        z-index: 999;
    }

    /* blauer Balken links */
    .navigation > ul > li > span.open:before,
    .navigation > ul > li:not(:first-child) > span:hover:before,
    .navigation > ul > li:not(:first-child) > a:hover:before,
    .navigation > ul > li.active > span:before,
    .navigation > ul > li.active > a:before {
        content: "";
        width: 4px;
        height: 100%;
        position: absolute;
        left: 0px;
        top: 0px;
        background-color: #1C449B;
    }
    /* Textfarbe geöffnetes Submenu span */
    .navigation > ul > li > span.open {
        color: #1C449B;
    }

    /* improve click area for mobile navigation close button */
    .navigation .close.icon {
        position: absolute;
        top: 24px;
        /* die Ausrichtung wegen der Border-Top-Linie bei WEB.DE anpassen */
        right: 20px;
        cursor: pointer;
        z-index: 20;
        overflow: visible;
        color: transparent;
    }
    .navigation .close.icon:before {
        content: "";
        position: absolute;
        display: block;
        width: 24px;
        height: 24px;
        padding: 26px 20px 22px 10px;
        margin: -26px 0 0 -10px;
        /* die Ausrichtung wegen der Border-Top-Linie bei WEB.DE anpassen */
        z-index: 999;
        box-sizing: content-box;
    }
}

@media screen and (max-width: 659.9px) {
    .navigation {
        left: -257px;
    }
    /* wegen IE9 Spezifität erhöhen */
    body[class] .navigation,
    body[class] .navigation > ul,
    .navigation ul > li > *:first-child {
        width: 256px;
    }
    .navigation > ul > li:first-child {
        height: 48px;
        border-top: 0px solid;
    }
    .navigation > ul > li:first-child > a {
        height: 48px;
        padding: 8px 0 8px 16px;
        width: 202px; /* fixe Breite (256-54px=202px) nötig wegen IE9 */
    }
    .navigation .close.icon {
        top: 12px;
    }
    .navigation .close.icon:before {
        padding: 12px 20px 12px 10px;
        margin: -12px 0 0 -10px;
    }
}

/* fix for extra-wide screens */
@media screen and (min-width: 1919.9px) {
    .fullwidth.navigation {
        width: 100%;
    }
    .fullwidth.center.navigation ul.l-12.fix,
    .fullwidth.center.navigation ul.l-12.l-fix {
        display: block;
        position: relative;
        width: 960px;
        margin: 0 auto;
    }
}

/* */
body.toggle-nav > .grid {
    border-left: 1px solid #DADADA;
}
#footer {
    display: block;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -ms-flex-direction: row;
    -ms-flex-wrap: wrap;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
}
.no-flex #footer {
    clear: left;
    display: block;
}
.no-flex #footer > .fullwidth {
    width: 100%;
}
#footer .backdrop-c2-light94,
#footer .backdrop-c2-light94 .list a {
    color: #707070;
}
#footer ul.inline.list.align-center li,
#footer ul.inline-block.list.align-center li {
    margin-left: 16px;
    margin-right: 16px;
}
/* DP-13044: Lieferung neues CSS/HTML für Footer Icons (mehr als 2 Logos) */
#footer .horizontal.badge li:nth-child(even) {
    margin-right: 0;
}


/* Abstaede nach oben wegnehmen in den footer-linklisten */
@media screen and (min-width: 980px) {
    #footer .container.vspace-s.l-4 > h4 + .module.l-4 > ul,
    #footer .container.vspace-s.l-8 > .module.l-4 > ul {
        margin-top: -7px;
    }
}
@media screen and (min-width: 660px) and (max-width: 979.9px) {
    #footer .container.vspace-s.m-4 > h4 + .module.l-4 > ul,
    #footer .container.vspace-s.m-8 > .module.l-4 > ul {
        margin-top: -7px;
    }
}
@media screen and (max-width: 659.9px) {
    #footer .container.vspace-s > h4 + .module.l-4 > ul {
        margin-top: -7px;
    }
}
#footer .container.vspace-s > .module.l-4 > h4 + ul {
    margin-top: -7px;
}
#footer .container.vspace-s > .module.l-4 > h4 + ul.badge {
    margin-top: -5px;
}
.button {
    display: inline-block;
    padding: 5px 20px 5px 20px;
    border: 1px solid;
    min-height: 40px;
    font-style: normal;
    width: auto;
    letter-spacing: 0;
-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
        box-sizing: border-box;
-webkit-user-select: none;
   -moz-user-select: none;
    -ms-user-select: none;
        user-select: none;
-webkit-transition: background-color 0.15s ease-out, border-color 0.15s ease-out, color 0.15s ease-out;
        transition: background-color 0.15s ease-out, border-color 0.15s ease-out, color 0.15s ease-out;
    border-radius: 4px;
    font-family: RobotoMedium, sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 28px;
 -webkit-appearance: none;
    -moz-appearance: none;
}
.fullwidth.button {
    width: 100%;
}
.button,
.button:hover,
.button:visited,
.button:focus {
    text-decoration: none;
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    outline: none;
}
input.button::-moz-focus-inner,
button.button::-moz-focus-inner {
    padding: 0;
    border: 0;
}
.button.m,
.button.m:hover,
.button.m:visited {
    padding: 3px 20px 1px 20px;
    min-height: 32px;
    font-family: RobotoMedium, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}
.button.xl,
.button.xl:hover,
.button.xl:visited {
    padding: 9px 20px 9px 20px;
    min-height: 48px;
}
a.button.m[class],
span.button.m[class] {
    padding: 4px 20px 0px 20px;
}
.key.button:hover,
.key.button:focus,
.ghost.key.button[class][class][class]:hover,
.ghost.key.button[class][class][class]:focus {
    color: #FFFFFF;
    border-color: #587A03;
    background-color: #587A03;
}
.service.button:hover,
.service.button:focus,
.ghost.service.button[class][class][class]:hover,
.ghost.service.button[class][class][class]:focus {
    color: #FFFFFF;
    border-color: #16367C;
    background-color: #16367C;
}
.secondary.button:hover,
.secondary.button:focus,
.ghost.secondary.button[class][class][class]:hover,
.ghost.secondary.button[class][class][class]:focus {
    color: #FFFFFF;
    border-color: #707070;
    background-color: #707070;
}
.inverted.button:hover,
.inverted.button:focus,
.ghost.inverted.button[class][class][class]:hover,
.ghost.inverted.button[class][class][class]:focus {
    color: #333333;
    border-color: #F3F3F3;
    background-color: #F3F3F3;
}
.key.button,
.key.button:active,
.ghost.key.button[class][class][class]:active {
    border-color: #6E9804;
    background-color: #6E9804;
    color: #FFFFFF;
}
.service.button,
.service.button:active,
.ghost.service.button[class][class][class]:active {
    border-color: #1C449B;
    background-color: #1C449B;
    color: #FFFFFF;
}
.secondary.button,
.secondary.button:active,
.ghost.secondary.button[class][class][class]:active {
    border-color: #999999;
    background-color: #999999;
    color: #FFFFFF;
}
.inverted.button,
.inverted.button:active,
.ghost.inverted.button[class][class][class]:active {
    border-color: #FFFFFF;
    background-color: #FFFFFF;
    color: #333333;
}
.key.button[disabled][class][class][class],
.key.button[aria-disabled][class][class][class] {
    color: #FFFFFF;
    background-color: #E5ECD2;
    border-color: #E5ECD2;
    cursor: default;
    cursor: not-allowed;
    text-shadow: none;
}
.service.button[disabled][class][class][class],
.service.button[aria-disabled][class][class][class] {
    color: #FFFFFF;
    background-color: #D6DDED;
    border-color: #D6DDED;
    cursor: default;
    cursor: not-allowed;
    text-shadow: none;
}
.secondary.button[disabled][class][class][class],
.secondary.button[aria-disabled][class][class][class] {
    color: #FFFFFF;
    background-color: #DADADA;
    border-color: #DADADA;
    cursor: default;
    cursor: not-allowed;
    text-shadow: none;
}
.inverted.button[disabled][class][class][class],
.inverted.button[aria-disabled][class][class][class] {
    color: #707070;
    background-color: #D6DDED;
    border-color: #D6DDED;
    cursor: default;
    cursor: not-allowed;
    text-shadow: none;
}
.ghost.key.button[class][class][class] {
    color: #6E9804;
    background-color: transparent; /* or white? */
}
.ghost.key.button[class][class][class][class][class][disabled],
.ghost.key.button[class][class][class][class][class][aria-disabled] {
    color: #E5ECD2;
    border-color: #E5ECD2;
    background-color: transparent; /* or white? */
}
.ghost.service.button[class][class][class] {
    color: #1C449B;
    background-color: transparent; /* or white? */
}
.ghost.service.button[class][class][class][class][disabled],
.ghost.service.button[class][class][class][class][aria-disabled] {
    color: #D6DDED;
    border-color: #D6DDED;
    background-color: transparent; /* or white? */
}
.ghost.secondary.button[class][class][class] {
    color: #999999;
    background-color: transparent; /* or white? */
}
.ghost.secondary.button[class][class][class][class][disabled],
.ghost.secondary.button[class][class][class][class][aria-disabled] {
    color: #DADADA;
    border-color: #DADADA;
    background-color: transparent; /* or white? */
}
.ghost.inverted.button[class][class][class] {
    color: #FFFFFF;
    background-color: transparent;
}
.ghost.inverted.button[class][class][class][class][class][disabled],
.ghost.inverted.button[class][class][class][class][class][aria-disabled] {
    border-color: #D6DDED;
    color: #D6DDED;
    background-color: transparent;
}
/* Im Firefox Subpixel Rendering Problem, wenn die Y-Position Berechnung mit Kommastelle .5,
dann BG (hier Icon) abgeschnitten => Höhe des Icons um 1px erhöhen und Margin entsprechend anpassen */
.button.xl .icon.l {
    float: left;
    margin: -3px 10px -2px -10px;
    position: relative;
}
.button.l .icon.m {
    float: left;
    margin: 1px 10px 2px -10px;
    position: relative;
}
.button.m .icon.s {
    float: left;
    margin: 1px 10px -1px -10px;
    position: relative;
}
/* form.css 1.4 - cat */
form {
    position: relative;
    width: 100%;
    display: block;
}
fieldset {
    display: table;
    border: 0px;
    padding: 0px;
    margin-left: 0px;
    margin-right: 0px;
    max-width: 620px;
    width: 100%;
}
@media all and (min-width: 660px) {
    fieldset.inline {margin-left: 16px;}
    fieldset.inline:first-child,
    fieldset.unaligned:first-child {margin-left: 0px;}
}

.xl fieldset,
fieldset.xl {
    max-width: 940px;
}
p > fieldset {
    display: inline-table;
    width: auto;
}
fieldset.unaligned {
    display: inline-block;
    position: relative;
}
@media all and (max-width: 659.9px) {
    fieldset.unaligned { width: 100%; }
}
.field {
    display: block;
    position: relative;
}
fieldset:last-child .field {
    padding-bottom: 0px;
}
fieldset .field {
    display: table-cell;
    vertical-align: bottom;
    width: 620px;
    margin-left: 0px;
}
fieldset .field + .field {
    padding-left: 20px;
}
form > .field {
    box-sizing: border-box;
    max-width: 620px;
}
form.xl > .field,
form > .xl > .field,
form > .field.xl {
    max-width: 940px;
}
fieldset.unaligned .field {
    display: inline-block;
    float: left;
    min-height: 40px;
}

fieldset.fix,
.field.fix {
    max-width: none;
}
.field input[type="text"],
.field input[type="password"],
.field input[type="number"],
.field input[type="date"],
.field input[type="month"],
.field input[type="week"],
.field input[type="time"],
.field input[type="datetime"],
.field input[type="datetime-local"],
.field input[type="email"],
.field input[type="search"],
.field input[type="tel"],
.field input[type="color"],
.field select {
    display: block;
    width: 100%;
    box-sizing: border-box;
    border-radius: 4px;
    border: 1px solid #525252;
    position: relative;
    height: 40px;
    padding: 0px 10px;
    line-height: 20px;
    background-color: #FFFFFF;
    color: #525252;
    font-family: "RobotoRegular", Verdana, sans-serif;
    font-size: 16px;
    box-shadow: none;
}
.field select {
    padding: 8px 10px;
}
.xl .field input[type="text"],
.xl .field input[type="password"],
.xl .field input[type="number"],
.xl .field input[type="date"],
.xl .field input[type="month"],
.xl .field input[type="week"],
.xl .field input[type="time"],
.xl .field input[type="datetime"],
.xl .field input[type="datetime-local"],
.xl .field input[type="email"],
.xl .field input[type="search"],
.xl .field input[type="tel"],
.xl .field input[type="color"],
.xl .field select,
.field.xl input[type="text"],
.field.xl input[type="password"],
.field.xl input[type="number"],
.field.xl input[type="date"],
.field.xl input[type="month"],
.field.xl input[type="week"],
.field.xl input[type="time"],
.field.xl input[type="datetime"],
.field.xl input[type="datetime-local"],
.field.xl input[type="email"],
.field.xl input[type="search"],
.field.xl input[type="tel"],
.field.xl input[type="color"],
.field.xl select {
    height: 48px;
    font-size: 20px;
}
.field.xl select {
    text-indent: 5px;
}
.field textarea {
    display: block;
    width: 100%;
    font-family: Arial, sans-serif;
    box-sizing: border-box;
    box-shadow: none;
    border-radius: 4px;
    border: 1px solid #525252;
    position: relative;
    padding: 10px;
    font-size: 16px;
    resize: vertical;
}
.field.xl select {
    font-size: 20px;
}
/* eye icon for password input field */
.field.password .icon.eye {
    position: absolute;
    display: inline-block;
    right: 8px;
    bottom: 8px;
    margin-left: 10px;
    cursor: pointer;
    z-index: 10;
    overflow: visible;
    background-color: #FFFFFF;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.field.password .icon.eye:before {
    content: "";
    position: absolute;
    width: 40px;
    height: 40px;
    top: -10px;
    right: -10px;
}

/* IE10+: no text-indent in select - use padding instead */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
.field select{
    padding-left: 10px;
}
}
/* Webkit-based browsers: replace Select Icon */
.field select:not(*:root) {
    -webkit-appearance: none;
    line-height: 24px;
    /* fix for android webkit */
    outline: none !important;
}
.field.select:not(*:root):before {
    content: "";
    position: absolute;
    right: 12px;
    bottom: 15px;
    background-color: transparent;
    border-left: 3px solid #1C449B;
    border-bottom: 3px solid #1C449B;
    border-radius: 0px 0px 0px 4px;
    width: 12px;
    height: 12px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    pointer-events:none;
    z-index: 100;
}
/* IE10+: style Select Icon */
.field.select ::-ms-expand {
    background: none;
    border: none;
    padding-right: 2px;
}
/* Webkit/Firefox: disable spinner on Number fields */
.field input[type="number"]::-webkit-inner-spin-button,
.field input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
}
/* Sarafi (Mac): By default, older versions of Safari will not apply even the most basic CSS styles to <input type="search"> fields. */
.field input[type="search"] {
    -webkit-appearance: none;
}

.field input[type="number"] {
    -moz-appearance:textfield;
}
/* Webkit: disable cancel button in search fields when JS is active */
.js .field input[type="search"]::-webkit-search-cancel-button {
    display: none;
}
/* IE10+: disable reset button in form fields */
.field input::-ms-clear {
    display: none;
}
/* Format Placeholder - needs one selector each, otherwise the clients disregard the selector as invalid */
.field ::-webkit-input-placeholder {
    font-size: 16px;
    color: #999999;
}
.field ::-moz-placeholder {
    font-size: 16px;
    color: #999999;
}
.field :-moz-placeholder {
    font-size: 16px;
    color: #999999;
}
.field :-ms-input-placeholder {
    color: #999999 !important;
    font-size: 16px;
}
.field .placeholder[class][class] {
    color: #999999;
}
.xl .field ::-webkit-input-placeholder {
    font-size: 20px;
}
.xl .field ::-moz-placeholder {
    font-size: 20px;
}
.xl .field :-moz-placeholder {
    font-size: 20px;
}
.xl .field ::-ms-input-placeholder {
    font-size: 20px;
}
/* fix the wrong position of the placeholder-text in android 4.x */
.no-flex .field input[type="text"][placeholder],
.no-flex .field input[type="password"][placeholder],
.no-flex .field input[type="number"][placeholder],
.no-flex .field input[type="date"][placeholder],
.no-flex .field input[type="month"][placeholder],
.no-flex .field input[type="week"][placeholder],
.no-flex .field input[type="time"][placeholder],
.no-flex .field input[type="datetime"][placeholder],
.no-flex .field input[type="datetime-local"][placeholder],
.no-flex .field input[type="email"][placeholder],
.no-flex .field input[type="search"][placeholder],
.no-flex .field input[type="tel"][placeholder],
.no-flex .field input[type="color"][placeholder] {
    line-height: normal;
}
.field {
    width: 100%;
    max-width: 620px;
}
.field.half-size {
    width: 50%;
    max-width: 310px;
    min-width: 140px;
}
.field.quarter-size {
    width: 22.581%;
    max-width: 155px;
    min-width: 100px;
}
.field:not(.quarter-size) + .field.quarter-size {
    width: 25.808%;
}
.field.min-size {
    width: 1%;
}

fieldset .field.half-size {
    width: 300px;
}
fieldset .field.custom-size.size-160    { width: 160px; }
fieldset .field.custom-size.size-200    { width: 200px; }
fieldset .field.custom-size.size-240    { width: 240px; }
fieldset .field.custom-size.size-280    { width: 280px; }
fieldset .field.custom-size.size-320    { width: 320px; }
@media all and (max-width: 659.9px) {
    fieldset .field.custom-size.size-160,
    fieldset .field.custom-size.size-200,
    fieldset .field.custom-size.size-240,
    fieldset .field.custom-size.size-280,
    fieldset .field.custom-size.size-320    { width: 100%; }
}
.field label,
fieldset legend {
    /* Avoid selecting label content instead of focussing input * /
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    /**/
    cursor: pointer;
    display: block;
    line-height: 24px;
    padding: 8px 0px;
    width: 100%;
    font-family: "RobotoRegular", Verdana, sans-serif;
}
fieldset legend {
    display: table-header-group;
}
.field label .note,
fieldset legend .note {
    color: #707070;
}
fieldset legend ~ .field label {
    display: block;
    position: absolute;
    margin-left: -10000px;
}
fieldset.show-labels legend ~ .field label {
    position: relative;
    margin-left: 0px;
}
fieldset legend ~ .field.checkbox input ~ label,
fieldset legend ~ .field.radio input ~ label {
    position: relative;
    margin-left: 0px;
    display: block;
    padding: 5px 0px 3px 0px;
}
fieldset legend ~ .select.field {
    position: relative;
}
fieldset legend ~ .field {
    position: static;
}
fieldset legend ~ .field .helper,
fieldset .text.field + .text.field + .text.field > .helper {
    position: absolute;
    top: 0px;
    right: 0px;
}
fieldset legend ~ .field .helper,
fieldset .text.field + .text.field + .text.field > .helper,
x:-moz-any-link {
    top: -40px;
}
.field:not(.error) > .icon:first-child,
.field .helper:first-child {
    float: right;
    position: relative;
    margin-top: 8px;
    margin-left: 8px;
}
fieldset legend .helper {
    float: right;
    position: relative;
    margin-top: 0px;
    margin-left: 8px;
}
.xl .field label ~ .icon,
.xl .field label ~ .helper,
.xl .field:not(.error) > .icon:first-child,
.xl .field .helper:first-child {
    margin-bottom: 5px;
}
.action.field > .button {
    top: 40px;
}
.action.field.nolabel > .button {
    top: 0px;
}
.action.field > .icon {
    float: right;
    margin: 5px 0px 10px 10px;
    position: relative;
}
/* Checkbox/Radio always requires a label */
.field.radio label,
.field.checkbox label {
    margin-left: 0px;
    line-height: 24px;
}
.field.radio label.icon,
.field.checkbox label.icon {
    display: none;
}
.field.radio a.icon,
.field.checkbox a.icon {
    float: right;
    margin-top: 8px;
    position: relative;
}
.field.radio input,
.field.checkbox input {
    float: left;
    margin: 10px 10px 0px 0px;
}
.no-flex .checkbox.field.inline {
    clear: both;
}
/* Checkbox/Radio with Legend */
legend ~ .radio.field input:checked ~ label::after,
legend + .field.checkbox input:checked ~ label::after {
    top: 15px;
}
/* Radio - Vertical */
fieldset .radio.field,
fieldset [class][class][class] ~ .radio.field {
    display: block;
    width: auto;
}
/* Radio - Horizontal */
fieldset .radio.field.horizontal,
fieldset [class][class][class] ~ .radio.field.horizontal  {
    display: inline-block;
    min-width: 50px;
}
@media all and (min-width: 0px) {
    .field.radio,
    .field.checkbox,
    .field.radio + .field.radio,
    .field.checkbox + .field.checkbox {
        padding-left: 43px;
    }
    .field.radio label,
    .field.checkbox label {
        display: inline;
        position: relative;
    }
    .field.radio.block label,
    .field.checkbox.block label {
        display: block;
    }
    .field.radio input,
    .field.checkbox input {
        position: absolute;
        opacity: 0;
    }
    .field.checkbox input ~ label:before,
    .field.radio input ~ label:before {
        content: "";
        display: inline-block;
        vertical-align: 0px;
        border: 1px solid #525252;
        background: #FFFFFF;
        width: 32px;
        height: 32px;
        left: -45px;
        margin: 2px -35px -10px 0px;
        box-sizing: border-box;
        position: relative;
    }
    .field.checkbox input ~ label:before {
        border-radius: 4px;
        margin-left: 2px;
    }
    .field.radio input ~ label:before {
        border-radius: 50%;
    }
    .field.radio input:checked ~ label:after {
        content: "";
        position: absolute;
        top: 10px;
        left: -37px;
        border-radius: 50%;
        width: 16px;
        height: 16px;
        background: #1C449B;
    }
    .field.checkbox input:checked ~ label:after {
        content: "";
        position: absolute;
        top: 10px;
        left: -37px;
        width: 16px;
        height: 6px;
        border-left: 4px solid #1C449B;
        border-bottom: 4px solid #1C449B;
        -webkit-transform: rotate(-50deg);
        -moz-transform: rotate(-50deg);
        -ms-transform: rotate(-50deg);
        transform: rotate(-50deg);
    }
    .field.checkbox.indented input ~ label:after,
    .field.radio.indented input ~ label:after {
        left: -37px;
    }
    .field.checkbox input ~ label ~ label:before,
    .field.radio input ~ label ~ label:before,
    .field.checkbox input:checked ~ label ~ label:after {
        content: none;
    }
}
/* focus */
.field input[type="text"][type]:focus,
.field input[type="password"][type]:focus,
.field input[type="number"][type]:focus,
.field input[type="date"][type]:focus,
.field input[type="month"][type]:focus,
.field input[type="week"][type]:focus,
.field input[type="time"][type]:focus,
.field input[type="datetime"][type]:focus,
.field input[type="datetime-local"][type]:focus,
.field input[type="email"][type]:focus,
.field input[type="search"][type]:focus,
.field input[type="tel"][type]:focus,
.field input[type="color"][type]:focus,
.field select[class]:focus,
.field textarea[class]:focus {
    outline: none;
    border-color: #1C449B;
}
@media all and (min-width: 0px) {
    .field.checkbox input[type]:focus + label:before,
    .field.radio input[type]:focus + label:before {
        border-color: #1C449B;
    }
}
/* suggest */
/* IE hides the suggest too early, so we have to resort to an evil animations trick */
-ms-keyframes hide-suggest { 0% {display: block; opacity: 1;} 99% {display: block;} 100% { display: none; opacity: 0;}}
.suggest {
    display: none;
    -ms-animation: hide-suggest 0.25s linear;
    position: absolute;
    width: 100%;
    margin: -1px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    background: #FFFFFF;
    box-sizing: border-box;
    z-index: 9999;
    font-family: RobotoRegular;
    list-style: none;
}
.suggest-subline {
    display: none;
    padding: 5px 10px;
}
input:focus ~ .suggest,
.suggest:hover {
    display: block;
    animation: none;
}
input:focus ~ .suggest:empty,
.suggest:empty:hover {
    display: none;
}
.suggest > * {
    box-sizing: border-box;
    display: block;
    border: solid #C2C2C2;
    border-width: 0px 1px;
}
.suggest > *:first-child {
    border-top: 1px solid #DADADA;
}
.suggest > *:first-child:before {
    content: "";
    position: absolute;
    left: 0px;
    margin-top: -9px;
    width: 100%;
    height: 3px;
    box-sizing: border-box;
    background: #FFFFFF;
    border: solid #1C449B;
    border-width: 0px 1px;
}
.suggest > *:last-child {
    border-width: 0px 1px 1px 1px;
    border-radius: 0px 0px 4px 4px;
}
.js input::-webkit-calendar-picker-indicator {
    display: none;
}
.suggest a {
    text-decoration: none;
    color: #525252;
    display: block;
}
.suggest > a,
.suggest > option,
.suggest > li {
    display: block;
    padding: 5px 10px;
    color: #525252;
    margin: 0px;
    cursor: pointer;
}
.suggest > li > a {
    margin: -5px -10px;
    padding: 5px 10px;
}
.suggest > a:hover,
.suggest > a:focus,
.suggest > option:hover,
.suggest > option:focus,
.suggest > li:hover,
.suggest > li:focus,
.suggest > .active,
.suggest > .active * {
    background: #DADADA;
}
.suggest > * > * {
    display: inline;
}
.suggest strong,
.suggest em {
    font-style: normal;
    font-weight: 700;
}
/* form actions */
form fieldset.actions {
    display: block;
}
form .actions {
    margin-top: 0px;
    overflow: hidden;
}
form .actions .right {
    float: right;
}
form *:not(.nolabel) + .actions {
    margin-top: 20px;
}
/* error message */
form .error.message {
    display: block;
    position: relative;
    overflow: hidden;
    top: 0px;
    background-color: transparent;
    color: #D40000;
    margin-bottom: 0px;
    width: auto;
}
form .vspace-xs > .error.message {
    top: -8px;
}
form .message.field .icon + *:not(.icon) {
    font-weight: 400;
    font-family: "RobotoRegular", Verdana, sans-serif;
}
/*.field input:not([type="submit"]):not([type="reset"]):not([type="image"]):not([type="range"]):not([type="url"]):not([type="button"]):not([type="radio"]):not([type="checkbox"])[aria-invalid],*/
.field input[type="text"][aria-invalid],
.field input[type="password"][aria-invalid],
.field input[type="number"][aria-invalid],
.field input[type="date"][aria-invalid],
.field input[type="month"][aria-invalid],
.field input[type="week"][aria-invalid],
.field input[type="time"][aria-invalid],
.field input[type="datetime"][aria-invalid],
.field input[type="datetime-local"][aria-invalid],
.field input[type="email"][aria-invalid],
.field input[type="search"][aria-invalid],
.field input[type="tel"][aria-invalid],
.field input[type="color"][aria-invalid],
.field select[aria-invalid], /* added error border color for select as well */
.field textarea[aria-invalid],
/*.field input[aria-invalid],*/
.field.checkbox input[aria-invalid] ~ label::before {
    border-color: #D40000;
}
/* 2 halfsize fields with long labels for tablets */
@media screen and (max-width: 979.9px) {
    fieldset .field.half-size.long-label,
    fieldset .field.half-size.long-label + .field {
        display: block;
        width: 100%;
        max-width: 620px;
        padding-left: 0px;
    }
}
/* Smartphone size */
@media all and (max-width: 659.9px) {
    fieldset .field {
        width: 300px;
    }
    fieldset .field + .field {
        padding-left: 20px;
    }
    fieldset .field.half-size,
    fieldset .field.half-size + .field {
        display: block;
        width: 100%;
        max-width: 620px;
        padding-left: 0px;
    }
    form.joined fieldset .field.half-size,
    form.joined fieldset .field.half-size + .field {
        display: table-cell;
    }
    fieldset .field.half-size + .action.field {
        margin-top: 10px;
        text-align: right;
    }
    fieldset .field.quarter-size {
        width: 24.5%;
        min-width: 86px;
    }
    .field.quarter-size label ~ .icon, .field.quarter-size label ~ .helper,
    .field.quarter-size > .icon:first-child, .field.quarter-size .helper:first-child {
        margin-left: 5px;
    }
    /* single button that is wrapped in a new line takes up all the space */
    form:not(.joined) .half-size + .quarter-size.action.field button:first-child:last-child,
    form:not(.joined) .half-size + .min-size.action.field button:first-child:last-child {
        width: 100%;
    }
    form:not(.joined) .half-size + .quarter-size.action.field button:first-child:last-child .icon,
    form:not(.joined) .half-size + .min-size.action.field button:first-child:last-child .icon {
        float: none;
        display: inline-block;
        margin-right: 5px;
        vertical-align: bottom;
    }
    label.compact,
    fieldset legend.compact {
        line-height: 24px;
    }
    .s-oneline fieldset .field.half-size,
    .s-oneline fieldset .field.half-size + .field {
        display: table-cell;
    }
    form:not(.joined).s-oneline .half-size + .min-size.action.field button:first-child:last-child {
        width: auto;
    }
    form:not(.joined).s-oneline .half-size + .min-size.action.field {
        padding-left: 10px;
    }
}
/* info box as tooltip */
.info.message.field {
    padding: 20px 35px 20px 20px;
    margin-bottom: 3px;
    will-change: transform;
    width: auto;
    border-radius: 4px;
    background-color: #1C449B;
    border-color: #1C449B;
}
.info.message.field img {
    max-width: 260px;
    height: auto;
    margin-top: 10px;
}
.info.message.field .close.icon {
    margin-top: 0px;
    position: absolute;
    right: 10px;
    top: 10px;
}
/* old school - field color */
.field input:disabled,
.field select:disabled  {
    border-color: #999999;
    color: #999999;
    background-color: #FFFFFF;
    cursor: not-allowed;
}
.field.checkbox input[disabled] + label:before,
.field.radio input[disabled] + label:before {
    background: #C2C2C2;
    cursor: not-allowed;
}
/* basic teaser format */
.teaser {
    position: relative;
    align-self: flex-start;
}
.teaser.module {
    padding-left: 0px;
    padding-right: 0px;
}
.row .teaser {
    align-self: stretch;
}

.teaser .visual img,
.teaser .visual svg {
    width: 100%;
    height: auto;
}

.teaser .visual.unscaled img,
.teaser .visual.unscaled svg {
    width: auto;
    height: auto;
    margin-left: auto;
    margin-right: auto;
}

.teaser.module .visual.scaled img {
    width: 100%;
    height: 100%;
}
.teaser .visual.align-center img,
.teaser .visual.align-center svg {
    margin-left: auto;
    margin-right: auto;
}

@media screen and (min-width: 980px) {
    .teaser [class][class].l-center {
        float: none;
    }
    .teaser [class][class].l-left {
        float: left;
    }
    .teaser [class][class].l-right {
        float: right;
    }
}
@media screen and (min-width: 660px) and (max-width: 979.9px) {
    .teaser [class][class].m-center {
        float: none;
    }
    .teaser [class][class].m-left {
        float: left;
    }
    .teaser [class][class].m-right {
        float: right;
    }
}
@media screen and (max-width: 659.9px) {
    .teaser [class][class].s-center {
        float: none;
    }
    .teaser [class][class].s-left {
        float: left;
    }
    .teaser [class][class].s-right {
        float: right;
    }
}

/* apply 100% size only to background img (not for visual) */
.teaser .background img,
.teaser .background svg {
    width: 100%;
    height: auto;
    border-radius: 0px;
}

.teaser .content img:not([class*="l-"]),
.teaser .content svg:not([class*="l-"]) {
    width: auto;
}
.teaser .content img[class*="l-"],
.teaser .content svg[class*="l-"] {
    height: auto;
}
/*.content * + h1, .content * + h2, .content * + h3, .content * + h4,
.content * + .headline-1, .content * + .headline-2, .content * + .headline-3, .content * + .headline-4 {
    margin-top: 10px;
    margin-bottom: 0px;
}*/
/*.content h1 + p, .content .headline-1 + p,
.content h2 + p, .content .headline-2 + p,
.content h3 + p, .content .headline-3 + p,
.content h4 + p, .content .headline-4 + p {
    margin-top: 0px;
}
.content p + p {
    margin-top: 10px;
}*/
.background {
    position: relative;
    margin-right: -100%;
    z-index: -1;
    max-width: none;
    float: left;
    width: 100%;
    height: auto;
}
.background > img,
.background > svg {
    margin-top: 0px;
}
.background + .content .button,
.background + .content [role="button"] {
    text-shadow: none;
}

.teaser .visual,
.teaser .content {
    padding-left: 10px;
    padding-right: 10px;
    box-sizing: border-box;
    position: relative;
    float: left;
}
.teaser .content.fix.center {
    float: none;
}
.teaser .content .content,
.teaser .unpadded.content {
    padding-left: 0px;
    padding-right: 0px;
}
.visual > img,
.visual > svg,
.visual > .icon {
    display: block;
}
.teaser .top {
    height: 50%;
}
.teaser .bottom {
    height: 50%;
}
.content.left,
.visual.left {
    width: 50%;
    float: left;
}
.content.right,
.visual.right {
    width: 50%;
    float: right;
}
.content.center,
.visual.center {
    margin-left: auto;
    margin-right: auto;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
}
a.teaser {
    display: block;
}
.teaser.row {
    display: table;
}
.teaser.row > * {
    display: table-cell;
    float: none;
    vertical-align: top;
}
.teaser.row > .middle {
    vertical-align: middle;
}
.teaser.row > .bottom {
    vertical-align: bottom;
}
@media screen and (min-width: 980px) {
    .l-top {
        max-height: 50%;
    }
    .l-bottom {
        max-height: 50%;
    }
    .l-left {
        max-width: 50%;
        float: left;
    }
    .l-right {
        max-width: 50%;
        float: right;
    }
    .l-center,
    [class].visual.l-center {
        -webkit-justify-content: center;
        -ms-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        float: none;
        margin-left: auto;
        margin-right: auto;
    }
    .teaser.l-row {
        display: table;
    }
    .teaser.l-row > * {
        display: table-cell;
        float: none;
        vertical-align: top;
    }
    .teaser.l-row > .middle {
        vertical-align: middle;
    }
    .teaser.l-row > .bottom {
        vertical-align: bottom;
    }
}
@media screen and (min-width: 660px) and (max-width: 979.9px) {
    .m-top {
        max-height: 50%;
    }
    .m-bottom {
        max-height: 50%;
    }
    .m-left {
        max-width: 50%;
        float: left;
    }
    .m-right {
        max-width: 50%;
        float: right;
    }
    .m-center,
    [class].visual.m-center {
        -webkit-justify-content: center;
        -ms-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        float: none;
        margin-left: auto;
        margin-right: auto;
    }
    .teaser.m-row {
        display: table;
    }
    .teaser.m-row > * {
        display: table-cell;
        float: none;
        vertical-align: top;
    }
    .teaser.m-row > .middle {
        vertical-align: middle;
    }
    .teaser.m-row > .bottom {
        vertical-align: bottom;
    }
}
@media screen and (max-width: 659.9px) {
    .s-top {
        max-height: 50%;
    }
    .visual.s-top {
        display: table-caption;
    }
    .s-bottom {
        max-height: 50%;
    }
    .s-left {
        max-width: 50%;
        float: left;
    }
    .s-right {
        max-width: 50%;
        float: right;
    }
    .s-center,
    [class].visual.s-center {
        -webkit-justify-content: center;
        -ms-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        float: none;
        margin-left: auto;
        margin-right: auto;
    }
    .teaser.s-row {
        display: table;
    }
    .teaser.s-row > * {
        display: table-cell;
        float: none;
        vertical-align: top;
    }
    .teaser.s-row > .middle {
        vertical-align: middle;
    }
    .teaser.s-row > .bottom {
        vertical-align: bottom;
    }
}
.vertical {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
}
.vertical > .vertical {
    height: 100%;
    min-height: 200px;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-around;
    -ms-justify-content: space-around;
    justify-content: space-around;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-align-self: flex-start;
    -ms-align-self: flex-start;
    align-self: flex-start;
}
.vertical > .vertical:before {
    content: "";
    height: 10%;
    display: block;
}
.fullsize,
.fullsize .background {
    width: 100%;
    height: 100vh;
}
.vspace-xxxl .fullsize { margin-top: -100px; }
.vspace-xxl .fullsize { margin-top: -70px; }
.vspace-xl .fullsize { margin-top: -50px; }
.vspace-l .fullsize { margin-top: -40px; }
.vspace-m .fullsize { margin-top: -30px; }
.vspace-s .fullsize { margin-top: -20px; }
.vspace-xs .fullsize { margin-top: -10px; }
.halfsize,
.halfsize .background {
    width: 100%;
    height: 50vh;
}
.vertical > .vertical > * {
    padding-left: 10px;
    padding-right: 10px;
    max-width: 100%;
    flex: 1 0 auto;
}
.fullsize .background,
.halfsize .background {
    overflow: hidden;
}
.fullsize .background > img,
.fullsize .background > svg,
.halfsize .background > img,
.halfsize .background > svg {
    position: relative;
    width: auto;
    z-index: -1;
}
.fullsize .background > img,
.fullsize .background > svg {
    height: 100vh;
}
.halfsize .background > img,
.halfsize .background > svg {
    height: 50vh;
}
.background.top-center > img,
.background.top-center > svg {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.background.top-right > img,
.background.top-right > svg {
    left: 100%;
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
}
.background.center-left > img,
.background.center-left > svg {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.background.center > img,
.background.center > svg {
    left: 50%;
    top: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
.background.center-right > img,
.background.center-right > svg {
    left: 100%;
    top: 50%;
    -webkit-transform: translateX(-100%) translateY(-50%);
    -moz-transform: translateX(-100%) translateY(-50%);
    -ms-transform: translateX(-100%) translateY(-50%);
    transform: translateX(-100%) translateY(-50%);
}
.background.bottom-left > img,
.background.bottom-left > svg {
    top: 100%;
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
}
.background.bottom-center > img,
.background.bottom-center > svg {
    left: 50%;
    top: 100%;
    -webkit-transform: translateX(-50%) translateY(-100%);
    -moz-transform: translateX(-50%) translateY(-100%);
    -ms-transform: translateX(-50%) translateY(-100%);
    transform: translateX(-50%) translateY(-100%);
}
.background.bottom-right > img,
.background.bottom-right > svg {
    left: 100%;
    top: 100%;
    -webkit-transform: translateX(-100%) translateY(-100%);
    -moz-transform: translateX(-100%) translateY(-100%);
    -ms-transform: translateX(-100%) translateY(-100%);
    transform: translateX(-100%) translateY(-100%);
}
@media screen and (min-aspect-ratio: 16/9) {
    .fullsize .background > img,
    .fullsize .background > svg,
    .halfsize .background > img,
    .halfsize .background > svg {
        width: 100vw;
        height: auto !important;
    }
}
.fullsize .vertical,
.halfsize .vertical {
    box-sizing: border-box;
}
/* fullwidth teaser formats */
.teaser.fullwidth .background[class*="height"] {
    overflow: hidden;
    display: block;
}
.teaser.fullwidth .background[class*="height"] img {
    position: relative;
    width: auto;
    height: 100%;
}
/* add 620 height */
.teaser.fullwidth .background.height-620 { height: 620px; }
/**/
.teaser.fullwidth .background.height-460 { height: 460px; }
.teaser.fullwidth .background.height-300 { height: 300px; }
.teaser.fullwidth .background.height-220 { height: 220px; }
.teaser.fullwidth .background[class*="height"].sector-25 img { left: 25%; }
.teaser.fullwidth .background[class*="height"].sector-50 img { left: 50%; }
.teaser.fullwidth .background[class*="height"].sector-75 img { left: 75%; }
.teaser.fullwidth .background[class*="height"].sector-100 img { left: 100%; }
.teaser.fullwidth .background[class*="height"] img.sector-25 {
    -webkit-transform: translateX(-25%);
    -moz-transform: translateX(-25%);
    -ms-transform: translateX(-25%);
    -o-transform: translateX(-25%);
    transform: translateX(-25%);
}
.teaser.fullwidth .background[class*="height"] img.sector-50 {
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}
.teaser.fullwidth .background[class*="height"] img.sector-75 {
    -webkit-transform: translateX(-75%);
    -moz-transform: translateX(-75%);
    -ms-transform: translateX(-75%);
    -o-transform: translateX(-75%);
    transform: translateX(-75%);
}
.teaser.fullwidth .background[class*="height"] img.sector-100 {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
}
@media screen and (min-width: 812px) {
    .teaser.fullwidth .background.height-300 img[width="1680"][height="620"] {
        width: 100vw;
        height: auto;
    }
}
@media screen and (min-width: 1095px) {
    .teaser.fullwidth .background.height-300 img[width="1680"][height="460"] {
        width: 100vw;
        height: auto;
    }
}
@media screen and (min-width: 1232px) {
    .teaser.fullwidth .background.height-220 img[width="1680"][height="300"] {
        width: 100vw;
        height: auto;
    }
}
@media screen and (min-width: 1246px) {
    .teaser.fullwidth .background.height-460 img[width="1680"][height="620"] {
        width: 100vw;
        height: auto;
    }
}
@media screen and (min-width: 1280px) {
    .teaser.fullwidth .vertical.background.height-460 img[width="1680"][height="460"] {
        width: 100vw;
        height: auto;
    }
}
@media screen and (min-width: 1681px) {
    .teaser.fullwidth .background.height-220 img[width="1680"][height="220"],
    .teaser.fullwidth .background.height-300 img[width="1680"][height="300"],
    .teaser.fullwidth .background.height-460 img[width="1680"][height="460"],
    .teaser.fullwidth .background.height-620 img[width="1680"][height="620"] {
        width: 100vw;
        height: auto;
    }
}
@media screen and (min-width: 980px) {
    .teaser.fullwidth .background.l-height-460 { height: 460px; }
    .teaser.fullwidth .background.l-height-300 { height: 300px; }
    .teaser.fullwidth .background.l-height-220 { height: 220px; }
    .teaser.fullwidth .background[class*="height"].l-sector-25 img { left: 25%; }
    .teaser.fullwidth .background[class*="height"].l-sector-50 img { left: 50%; }
    .teaser.fullwidth .background[class*="height"].l-sector-75 img { left: 75%; }
    .teaser.fullwidth .background[class*="height"].l-sector-100 img { left: 100%; }
    .teaser.fullwidth .background[class*="height"] img.l-sector-25 {
        -webkit-transform: translateX(-25%);
        -moz-transform: translateX(-25%);
        -ms-transform: translateX(-25%);
        -o-transform: translateX(-25%);
        transform: translateX(-25%);
    }
    .teaser.fullwidth .background[class*="height"] img.l-sector-50 {
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .teaser.fullwidth .background[class*="height"] img.l-sector-75 {
        -webkit-transform: translateX(-75%);
        -moz-transform: translateX(-75%);
        -ms-transform: translateX(-75%);
        -o-transform: translateX(-75%);
        transform: translateX(-75%);
    }
    .teaser.fullwidth .background[class*="height"] img.l-sector-100 {
        -webkit-transform: translateX(-100%);
        -moz-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        -o-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}
@media screen and (min-width: 660px) and (max-width: 979.9px) {
    .teaser.fullwidth .background.m-height-620 { height: 620px; }
    .teaser.fullwidth .background.m-height-460 { height: 460px; }
    .teaser.fullwidth .background.m-height-300 { height: 300px; }
    .teaser.fullwidth .background.m-height-220 { height: 220px; }
    .teaser.fullwidth .background[class*="height"].m-sector-25 img { left: 25%; }
    .teaser.fullwidth .background[class*="height"].m-sector-50 img { left: 50%; }
    .teaser.fullwidth .background[class*="height"].m-sector-75 img { left: 75%; }
    .teaser.fullwidth .background[class*="height"].m-sector-100 img { left: 100%; }
    .teaser.fullwidth .background[class*="height"] img.m-sector-25 {
        -webkit-transform: translateX(-25%);
        -moz-transform: translateX(-25%);
        -ms-transform: translateX(-25%);
        -o-transform: translateX(-25%);
        transform: translateX(-25%);
    }
    .teaser.fullwidth .background[class*="height"] img.m-sector-50 {
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .teaser.fullwidth .background[class*="height"] img.m-sector-75 {
        -webkit-transform: translateX(-75%);
        -moz-transform: translateX(-75%);
        -ms-transform: translateX(-75%);
        -o-transform: translateX(-75%);
        transform: translateX(-75%);
    }
    .teaser.fullwidth .background[class*="height"] img.m-sector-100 {
        -webkit-transform: translateX(-100%);
        -moz-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        -o-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}
@media screen and (max-width: 659.9px) {
    .teaser.fullwidth .background.s-height-620 { height: 620px; }
    .teaser.fullwidth .background.s-height-460 { height: 460px; }
    .teaser.fullwidth .background.s-height-300 { height: 300px; }
    .teaser.fullwidth .background.s-height-220 { height: 220px; }
    .teaser.fullwidth .background[class*="height"].s-sector-25 img { left: 25%; }
    .teaser.fullwidth .background[class*="height"].s-sector-50 img { left: 50%; }
    .teaser.fullwidth .background[class*="height"].s-sector-75 img { left: 75%; }
    .teaser.fullwidth .background[class*="height"].s-sector-100 img { left: 100%; }
    .teaser.fullwidth .background[class*="height"] img.s-sector-25 {
        -webkit-transform: translateX(-25%);
        -moz-transform: translateX(-25%);
        -ms-transform: translateX(-25%);
        -o-transform: translateX(-25%);
        transform: translateX(-25%);
    }
    .teaser.fullwidth .background[class*="height"] img.s-sector-50 {
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .teaser.fullwidth .background[class*="height"] img.s-sector-75 {
        -webkit-transform: translateX(-75%);
        -moz-transform: translateX(-75%);
        -ms-transform: translateX(-75%);
        -o-transform: translateX(-75%);
        transform: translateX(-75%);
    }
    .teaser.fullwidth .background[class*="height"] img.s-sector-100 {
        -webkit-transform: translateX(-100%);
        -moz-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        -o-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}
.teaser .linked-content {
    color: #525252;
}
.teaser .linked-content:hover {
    text-decoration: none;
}
.js .linked.teaser {
    cursor: pointer;
}
/* cat - akkordeon - 1.3 */
/**
 * Information about the accordion begins with an icon:
 *  - there should be only one icon before the headline of summary
 *  - the sizes of icons could only be: xs->16px(default), s->20px, m->24px, l->32px, xl->40px,
 *    xxl->48px, x3l->56px, x4l->64px, x5l->72px, x6l->96px, x7l->128px, x8l->192px, x9l->256px
 *  - Option:
 *      - vertical: by setting class "vertical" in summary, the icon will jump above the headline
 */
.akkordeon {
    display: block;
    overflow: hidden;
    padding: 0px;
    border-top: 1px solid #DADADA;
    border-bottom: 1px solid #DADADA;
}
.fullwidth.akkordeon {
    padding-left: 0px;
    padding-right: 0px;
}
.akkordeon + .akkordeon {
    border-top: none;
}
.akkordeon > *:first-child {
    cursor: pointer;
    outline: none;
    /* Firefox 48+ styles summary as a list to add the marker */
    list-style: none;
}
.akkordeon[open] > *:first-child,
.akkordeon.open > *:first-child {
    /*display: block;*/
    display: flex;
}
/*
 * Akkordeonm mit hover - um nur bei der Überschrift (summary) Hintergrund bei hover zu ändern,
 * müssen wir die Abstände im Akkordeon anderes formulieren
 */
.akkordeon .summary {
    padding: 7px 20px;
    display: flex;
    display: -webkit-flex;
    width: 100%;
    box-sizing: border-box;
    align-items: center;
    align-content: stretch;
}
.akkordeon .summary:hover {
    background-color: #F3F3F3;
}
.akkordeon .summary h1,
.akkordeon .summary h2 {
    color: inherit;
}

.akkordeon .summary > .icon {
    flex-shrink: 0;
    align-self: flex-start;
    position: relative;
}
.akkordeon .summary > .icon.xs {
    top: 6px;
}
.akkordeon .summary > .icon.s {
    top: 4px;
}
.akkordeon .summary > .icon.m {
    top: 2px;
}

.akkordeon .summary > *:not(.icon) {
    flex-grow: 1;
}
.akkordeon .summary > .icon + * {
    padding-left: 10px;
}
.akkordeon .akkordeon-content {
    padding: 5px 20px 7px;
}
/*
 * Nötig, um vspace direkt in einem'module'-Container anwenden zu können, welcher die Akkordeon-
 * 'details'-Container umschließt.
 */
.vspace-l > .akkordeon,
.vspace-s > .akkordeon,
.vspace-xs > .akkordeon {
    margin-bottom: 0px;
}
.vspace-l > .akkordeon:last-child { margin-bottom: 30px; }
.vspace-s > .akkordeon:last-child { margin-bottom: 20px; }
.vspace-xs > .akkordeon:last-child { margin-bottom: 10px; }
/* vspace im Akkordeon */
.akkordeon:not(.open):not([open])[class*=" vspace-"] > *:first-child,
.akkordeon:not(.open):not([open])[class^="vspace-"] > *:first-child {
    margin-bottom: 0px !important;
}

.js .akkordeon > *:first-child > *:first-of-type:not(.icon):before {
    content: "";
    background: url(//img.ui-portal.de/cd/ci/gmx.net/brand-update.svg) no-repeat 0% 0%,
                url(//img.ui-portal.de/cd/ci/gmx.net/service-update.svg) no-repeat 0% 0%;
    background-size: auto 2592px, auto 2592px;
    background-position: 75% 1.25%;
    width: 32px;
    height: 32px;
    display: inline-block;
    float: right;
    margin-top: -2px;
    margin-bottom: -4px;
    margin-left: 20px;
    color: transparent;
}
.akkordeon[open] > *:first-child *:first-of-type:not(.icon):before,
.js .akkordeon.open > *:first-child *:first-of-type:not(.icon):before {
    background-position: 75% 0%;
}
.inverted .akkordeon > *:first-child *:first-of-type:not(.icon):before {
    background-position: 25% 1.25%;
}
.inverted .akkordeon[open] > *:first-child *:first-of-type:not(.icon):before,
.js .inverted .akkordeon.open > *:first-child *:first-of-type:not(.icon):before {
    background-position: 25% 0%;
}
.secondary.akkordeon {
    color: #999999;
}
.secondary.akkordeon > *:first-child *:first-of-type:not(.icon):before {
    background-position: 50% 1.25%;
}
.secondary.akkordeon[open] > *:first-child *:first-of-type:not(.icon):before,
.js .secondary.akkordeon.open > *:first-child *:first-of-type:not(.icon):before {
    background-position: 50% 0%;
}

.js .akkordeon summary::-webkit-details-marker {
    display:none;
}
.js .akkordeon summary::-o-details-marker {
    display:none;
}
.js .akkordeon summary::-moz-details-marker {
    display:none;
}
.js .akkordeon summary::details-marker {
    display:none;
}
@media screen and (min-width: 980px) {
    .js .akkordeon:not([open]):not(.l-disable) > *:first-child ~ * {
        display: none;
    }
    .akkordeon.l-disable {
        border: none;
    }
    .akkordeon.l-disable > *:first-child {
        cursor: default;
    }
    .akkordeon.l-disable > *:first-child:focus {
        outline: none;
    }
    .akkordeon.l-disable + .akkordeon {
        border-top: 1px solid #DADADA;
    }
    .akkordeon.l-disable + .akkordeon.l-disable {
        border-top: none;
    }
    .js .akkordeon.l-disable > *:first-child ~ * {
        position: relative;
        top: auto;
    }
    .js .akkordeon.l-disable > *:first-child > *:first-of-type:not(.icon):before {
        content: none;
    }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
    .js .akkordeon:not([open]):not(.m-disable) > *:first-child ~ * {
        display: none;
    }
    .akkordeon.m-disable {
        border: none;
    }
    .akkordeon.m-disable > *:first-child {
        cursor: default;
    }
    .akkordeon.m-disable > *:first-child:focus {
        outline: none;
    }
    .akkordeon.m-disable + .akkordeon {
        border-top: 1px solid #DADADA;
    }
    .akkordeon.m-disable + .akkordeon.m-disable {
        border-top: none;
    }
    .js .akkordeon.m-disable > *:first-child ~ * {
        position: relative;
        top: auto;
    }
    .js .akkordeon.m-disable > *:first-child > *:first-of-type:not(.icon):before {
        content: none;
    }
}

@media screen and (max-width: 659.9px) {
    .js .akkordeon:not([open]):not(.s-disable) > *:first-child ~ * {
        display: none;
    }
    .akkordeon.s-disable {
        border: none;
    }
    .akkordeon.s-disable > *:first-child {
        cursor: default;
    }
    .akkordeon.s-disable > *:first-child:focus {
        outline: none;
    }
    .akkordeon.s-disable + .akkordeon {
        border-top: 1px solid #DADADA;
    }
    .akkordeon.s-disable + .akkordeon.s-disable {
        border-top: none;
    }
    .js .akkordeon.s-disable > *:first-child ~ * {
        position: relative;
        top: auto;
    }
    .js .akkordeon.s-disable > *:first-child > *:first-of-type:not(.icon):before {
        content: none;
    }
}

/* No-flex browsers */
.no-flex .akkordeon .summary {
    display: block;
    width: 100%;
}
.no-flex .akkordeon .summary > .icon {
    float: left;
    margin-right: 10px;
}
.no-flex .akkordeon .summary > .xs.icon + * {
    padding-left: 26px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .s.icon + * {
    padding-left: 30px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .m.icon + * {
    padding-left: 34px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .l.icon + * {
    padding-left: 42px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .xl.icon + * {
    padding-left: 50px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .xxl.icon + * {
    padding-left: 58px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .x3l.icon + * {
    padding-left: 66px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .x4l.icon + * {
    padding-left: 74px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .x5l.icon + * {
    padding-left: 82px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .x6l.icon + * {
    padding-left: 106px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .x7l.icon + * {
    padding-left: 138px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .x8l.icon + * {
    padding-left: 202px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > .x9l.icon + * {
    padding-left: 266px;
    box-sizing: border-box;
}
.no-flex .akkordeon .summary > *:not(.icon) {
    width: 100%;
}
.no-flex .akkordeon .akkordeon-content {
    clear: both;
}
.no-flex .akkordeon .summary.vertical > * {
    display: block;
    float: none;
}
.no-flex .akkordeon .summary.vertical > .icon {
    margin-left: auto;
    margin-right: auto;
}
.no-flex .akkordeon .summary.vertical > .icon + * {
    padding-left: 0px;
}

/* Option - vertical: icon jump above the headline if summary has a class vertical */
.akkordeon .summary.vertical {
    flex-direction: column;
    align-items: flex-start;
}
.akkordeon .summary.vertical > .icon {
    align-self: center;
}
.akkordeon .summary.vertical > .icon + * {
    padding-left: 0px;
    padding-top: 10px;
    align-self: stretch;
}
/* Option - footer: akkordeon in footer is a little different */
#footer .akkordeon {
    border: none;
}
#footer .akkordeon .summary:hover {
    background-color: transparent;
}
#footer .akkordeon .summary,
#footer .akkordeon .akkordeon-content,
#footer .akkordeon > .akkordeon-content > .container > .module:first-child,
#footer .akkordeon > .akkordeon-content > .container > .module:last-child {
    padding-left: 0px;
    padding-right: 0px;
}
#footer .backdrop-c2-light94.inverted .akkordeon * {
    color: #707070;
}
.no-flex #footer .akkordeon .summary > .icon + * {
    padding-left: 0px;
    padding-top: 18px;
}
@media screen and (max-width: 659.9px) {
    .no-flex #footer .akkordeon .summary > .icon + * {
        padding-top: 4px;
    }
}
.breadcrumb > ol {
  list-style: none;
  padding: 8px 0px 5px;
}
.breadcrumb > ol.module {
  padding-left: 10px;
}
.breadcrumb > ol > li {
  margin: 0px 10px 0px 0px;
  display: inline;
  /* wegen Umbruchverhalten von display-block geaendert - Bug DITA-885 */
}
.breadcrumb > ol > li:last-child {
  margin-right: 0;
}
.breadcrumb > ol > li > a,
.breadcrumb > ol > li > span {
  display: inline;
  /* wegen Umbruchverhalten von display-block geaendert - Bug DITA-885 */
}
.breadcrumb > ol > li > a .icon,
.breadcrumb > ol > li > span .icon {
  vertical-align: middle;
  margin-top: -4px;
}
.breadcrumb > ol > li.active > a,
.breadcrumb > ol > li.active > span {
  text-decoration: none;
}
.breadcrumb li:after {
  content: "\3E";
  font-weight: 600;
  margin-left: 10px;
}
.breadcrumb li:last-child span,
.breadcrumb li:last-child {
  display: inline;
}
.breadcrumb li:last-child:after {
  content: none;
}
form.search .field {
	padding-top: 0px;
	vertical-align: top;
	float: none;
}
form.search .field * {
	float: none;
}
form.search .search.field input {
	padding-right: 40px;
}
/* IE10+: remove native reset button */
form.search .search.field input::-ms-clear {
	display: none;
}
form.search button[type="reset"] {
	display: none;
	cursor: pointer;
	background: transparent;
	border: 0px;
	position: absolute;
	padding: 0px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 6px;
	z-index: 10;
  outline: none;
}
form.search.xl button[type="reset"] {
	top: 14px;
}
/* using form validation to activate reset button */
form.search .search.field input:valid ~ button[type="reset"] {
	display: inline-block;
}
/* we need to separate this, otherwise the selector fails */
form.search .search.field input.valid ~ button[type="reset"] {
	display: inline-block;
}
/* input and button are conjoined */
form.search.joined .field + .field {
	padding: 0px;
}
form.search.joined .search.field input {
	border-radius: 3px 0px 0px 3px;
}
form.search.joined .action.field button {
	border-radius: 0px 5px 5px 0px;
	margin: 0px;
}
form.search .action.field {
	white-space: nowrap;
	word-wrap: normal;
}
/* if we floated the icon, the table cell would only use the width of the text to calculate its size, thus removing a vital part of the padding */
form.search.fullwidth:not(.small-icon):not(.large-icon) .action.field button .icon {
	float: none;
	margin: 2px 6px -5px -10px;
	vertical-align: inherit !important;
/* font-size for icons is globaly set to 0px; vertical-alignment is wrong when there is 0 font-size */
/* maybe there is a better soution, maybe not, maybe we should go back to float:left :-) */
	font-size: 16px;
	text-shadow: none;
}
form.search.large-icon .action.field button {
	padding-left: 30px;
	padding-right: 10px;
}
form.search.small-icon .action.field button {
	padding-left: 20px;
	padding-right: 0px;
}
form:not(.joined).search.fullwidth:not(.small-icon):not(.large-icon) .half-size + .quarter-size.action.field button:first-child:last-child .icon,
form:not(.joined).search.fullwidth:not(.small-icon):not(.large-icon) .half-size + .min-size.action.field button:first-child:last-child .icon {
	vertical-align: inherit;
}
/* Suchergebnisse */
.search-result {
    display: block;
}
/* Title */
.search-result > a {
    font-size: 20px;
}
/* DomainLink */
.search-result > span {
    color: #008000;
    display: block;
}
/* DocType */
.search-result span.doc-type {
    color: #707070;
    text-transform: uppercase;
    display: inline-block;
    font-size: 20px;
    margin-right: 10px;
}
.search-result p.doc-type {
    color: #707070;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
}
p > img {
  display: block;
}
.vspace-xxxl {
  padding-top: 100px;
  padding-bottom: 0px;
}
.vspace-xxxl > * {
  margin-top: 0px;
  margin-bottom: 100px;
}
.vspace-xxl {
  padding-top: 70px;
  padding-bottom: 0px;
}
.vspace-xxl > * {
  margin-top: 0px;
  margin-bottom: 70px;
}
.vspace-xl {
  padding-top: 50px;
  padding-bottom: 0px;
}
.vspace-xl > * {
  margin-top: 0px;
  margin-bottom: 50px;
}
.vspace-l {
  padding-top: 40px;
  padding-bottom: 0px;
}
.vspace-l > * {
  margin-top: 0px;
  margin-bottom: 40px;
}
.vspace-m {
  padding-top: 30px;
  padding-bottom: 0px;
}
.vspace-m > * {
  margin-top: 0px;
  margin-bottom: 30px;
}
.vspace-s {
  padding-top: 20px;
  padding-bottom: 0px;
}
.vspace-s > * {
  margin-top: 0px;
  margin-bottom: 20px;
}
.vspace-xs {
  padding-top: 10px;
  padding-bottom: 0px;
}
.vspace-xs > * {
  margin-top: 0px;
  margin-bottom: 10px;
}
.vspace-xxs {
  padding-top: 4px;
  padding-bottom: 0px;
}
.vspace-xxs > * {
  margin-top: 0px;
  margin-bottom: 4px;
}
@media screen and (max-width: 979.9px) {
  .vspace-xxxl {
    padding-top: 75px;
  }
  .vspace-xxxl > * {
    margin-bottom: 75px;
  }
  .vspace-xxl {
    padding-top: 38px;
  }
  .vspace-xxl > * {
    margin-bottom: 38px;
  }
  .vspace-xl {
    padding-top: 38px;
  }
  .vspace-xl > * {
    margin-bottom: 38px;
  }
  .vspace-l {
    padding-top: 30px;
  }
  .vspace-l > * {
    margin-bottom: 30px;
  }
  .vspace-m {
    padding-top: 22px;
  }
  .vspace-m > * {
    margin-bottom: 22px;
  }
  .vspace-s {
    padding-top: 15px;
  }
  .vspace-s > * {
    margin-bottom: 15px;
  }
  .vspace-xs {
    padding-top: 10px;
  }
  .vspace-xs > * {
    margin-bottom: 10px;
  }
  .vspace-xxs {
    padding-top: 4px;
  }
  .vspace-xxs > * {
    margin-bottom: 4px;
  }
}
.vspace-top-0 {
  padding-top: 0px;
}
.vspace-bottom-0 {
  margin-bottom: 0;
}
@media screen and (min-width: 980px) {
  .l-vspace-top-0 {
    padding-top: 0px;
  }
  .l-vspace-bottom-0 {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .m-vspace-top-0 {
    padding-top: 0px;
  }
  .m-vspace-bottom-0 {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 659.9px) {
  .s-vspace-top-0 {
    padding-top: 0px;
  }
  .s-vspace-bottom-0 {
    margin-bottom: 0;
  }
}
/**/
.debug.debug .vspace-xxxl {
  background-color: #FFCCCC;
}
.debug.debug .vspace-xxl {
  background-color: #CCFFCC;
}
.debug.debug .vspace-xl {
  background-color: #CCCCFF;
}
.debug.debug .vspace-l {
  background-color: #FFFFCC;
}
.debug.debug .vspace-m {
  background-color: #FFCCFF;
}
.debug.debug .vspace-s {
  background-color: #CCFFFF;
}
.debug.debug .vspace-xs {
  background-color: #FFCCAA;
}
[class][class][class].hidden { display: none; }

body [data-show-nodes],
body [data-hide-nodes],
body [data-set-nodes],
body [data-unset-nodes],
body [data-toggle-nodes] {
    cursor: pointer;
}
body [data-show-nodes="#empty"],
body [data-hide-nodes="#empty"],
body [data-set-nodes="#empty"],
body [data-unset-nodes="#empty"],
body [data-toggle-nodes="#empty"] {
    cursor: default;
}
hr {
	border: none;
	margin: 0;
	height: 10px;
	width: 100%;
	background-color: #DADADA;
}

hr.thin {
    height: 2px;
}

hr.thinnest {
    height: 1px;
}

hr.nose.only {
    height: 0px;
}

table {
    border-collapse: collapse;
}
table.fullwidth {
    width: 100%;
}
thead {
    background: #EEEEEE;
}
tr {
    border-bottom: 1px solid #EEEEEE;
}
th {
    text-align: left;
    font-weight: 400;
}
th[scope="col"]:first-child {
    width: 50%;
}
th[scope="col"],
th[scope="rowgroup"] {
    font-family: 'WebdeSans', Arial, Verdana, sans-serif;
    font-size: 20px;
    line-height: 32px;
}
th,
td {
    position: relative;
    padding: 5px 10px;
}
th:first-child,
td:first-child {
    padding-left: 20px;
}

th[scope="rowgroup"],
[scope="rowgroup"] th {
    cursor: pointer;
}
.js table th[scope="rowgroup"]:after,
.js thead[scope="rowgroup"] th:last-child:after {
    content: "";
    float: right;
    margin-top: 9px;
    margin-right: 10px;
    width: 16px;
    height: 16px;
    background-image: url(//img.ui-portal.de/helpcenter/gmx.net/ci/icon-s.png);
    background-image: url(//img.ui-portal.de/helpcenter/gmx.net/ci/icon.svg), none;
    background-size: 80px 600px;
    background-repeat: no-repeat;
    background-position: 0px -2px;
}
.js table thead[scope="rowgroup"] th:last-child:after {
    margin-right: 0px;
    margin-left: 10px;
}
.no-svg table th[scope="rowgroup"]:after,
.no-svg table thead[scope="rowgroup"] th:last-child:after {
    background-image: url(//img.ui-portal.de/helpcenter/gmx.net/ci/icon-s.png);
}
tbody.collapsed th[scope="rowgroup"]:after,
.js thead[scope="rowgroup"].collapsed th:last-child:after {
    background-position: 0px -20px;
}
.js tbody.collapsed > tr > td,
.js tbody.collapsed > tr > th,
.js thead[scope="rowgroup"].collapsed + tbody > tr > td,
.js thead[scope="rowgroup"].collapsed + tbody > tr > th {
    display: none;
}
.js tbody.collapsed > tr > td[scope="rowgroup"],
.js tbody.collapsed > tr > th[scope="rowgroup"],
.js tbody.collapsed > tr.summary > td,
.js tbody.collapsed > tr.summary > th,
.js thead[scope="rowgroup"].collapsed + tbody > tr > td[scope="rowgroup"],
.js thead[scope="rowgroup"].collapsed + tbody > tr > th[scope="rowgroup"],
.js thead[scope="rowgroup"].collapsed + tbody > tr.summary > td,
.js thead[scope="rowgroup"].collapsed + tbody > tr.summary > th {
    display: table-cell;
}

@media screen and (max-width: 600px) {
    table {
        width: 100%;
    }
    thead {
        display: none;
    }
    .js thead[scope="rowgroup"] {
        display: table-header-group;
    }
    .js thead[scope="rowgroup"] tr {
        display: table-row;
    }
    .js thead[scope="rowgroup"] th:first-child {
        width: auto;
        display: table-cell;
    }
    .js thead[scope="rowgroup"] th:first-child:after {
        content: "";
        float: right;
        margin-top: 9px;
        margin-left: 10px;
        width: 16px;
        height: 16px;
        background-image: url(//img.ui-portal.de/helpcenter/gmx.net/ci/icon-s.png);
        background-image: url(//img.ui-portal.de/helpcenter/gmx.net/ci/icon.svg), none;
        background-size: 80px 600px;
        background-repeat: no-repeat;
        background-position: 0px -2px;
    }
    .no-svg thead[scope="rowgroup"] th:first-child:after {
        background-image: url(//img.ui-portal.de/helpcenter/gmx.net/ci/icon-s.png);
    }
    table thead[scope="rowgroup"].collapsed th:first-child:after {
        background-position: 0px -20px;
    }
    .js thead[scope="rowgroup"] th + * {
        display: none;
    }
    .js tbody.collapsed > tr > td[scope="rowgroup"],
    .js tbody.collapsed > tr > th[scope="rowgroup"],
    .js tbody.collapsed > tr.summary > td,
    .js tbody.collapsed > tr.summary > th,
    .js thead[scope="rowgroup"].collapsed + tbody > tr > td[scope="rowgroup"],
    .js thead[scope="rowgroup"].collapsed + tbody > tr > th[scope="rowgroup"],
    .js thead[scope="rowgroup"].collapsed + tbody > tr.summary > td,
    .js thead[scope="rowgroup"].collapsed + tbody > tr.summary > th {
        display: block;
    }
    td,
    th {
        display: block;
    }
    th:first-child {
        background: #EEEEEE;
        padding-left: 10px;
        font-family: 'WebdeSans', Arial, Verdana, sans-serif;
        font-size: 20px;
        line-height: 32px;
    }
    td[data-table-headline] {
        padding-left: 50%;
        overflow: hidden;
    }
    td[data-table-headline]:before {
        content: attr(data-table-headline);
        display: inline-block;
        float: left;
        position: relative;
        left: -100%;
        margin-bottom: -1.5em;
        box-sizing: border-box;
        padding-right: 10px;
        font-family: 'WebdeSans', Arial, Verdana, sans-serif;
        font-size: 20px;
        line-height: 32px;
    }
    td[scope="row"]:before {
        display: none;
    }
    .js table th[scope="rowgroup"]:after {
        margin-right: 0px;
    }
}
/* catom helpcenter - message 3.0 gmx.net */
.message {
	border-bottom: 3px solid black;
	/*padding: 20px;*/
	padding: 10px 10px 10px 44px;
	display: block;
	/**/border-radius: 5px;
	border-bottom: 0 none;/**/
	min-height: 44px;
	box-sizing: border-box;
}
.message .close.icon {
	display: none;
	float: right;
	margin: 0px 0px 0px 10px;
	overflow: visible;
}
.js .message .close.icon {
	display: block;
	cursor: pointer;
}
/* easier closing for touch-enabled devices */
.touch .message .close.icon:before {
	content: "";
	position: absolute;
	margin: -10px 0px 0px -10px;
	width: 36px;
	height: 36px;
	display: block;
}
.touch .message.big .close.icon:before {
	width: 42px;
	height: 42px;
}
.message.big {
	padding: 20px 20px 20px 88px;
	min-height: 88px;
}
.message .icon {
	float: left;
	margin-right: 10px;
	margin-left: -34px;
	position: relative;
}
.message.big .icon {
	margin-right: 20px;
	margin-left: -68px;
}
.message.big .close.icon {
	margin: 0px 0px 0px 20px;
}
.message .icon + * {
	margin-top: 0px;
}
.message.error {
	background-color: #F7D1D1;
	border-color: #F7D1D1;
}
.message.warning,
.message.attention {
	background-color: #FCF3D1;
	border-color: #FCF3D1;
}
.message.success {
	background-color: #E2F2D9;
	border-color: #E2F2D9;
}
.message.info {
	background-color: #EEEEEE;
	border-color: #EEEEEE;
}
.icon.info {
	background-image: url(//img.ui-portal.de/helpcenter/gmx.net/ci/brand.svg),
                    url(//img.ui-portal.de/helpcenter/gmx.net/ci/service.svg);
}
/* Die Zusammenfassung der Selektoren aus Revision 18509 mach soviele Probleme, dass ich sie wieder rausnehmen muss */
/*.message .icon + *:not(.icon) {*/
.message .m.icon + h1,
.message .m.icon + h2,
.message .m.icon + h3,
.message .m.icon + h4,
.message .m.icon + h5,
.message .m.icon + h6 {
	font-family: "RobotoMedium", Arial, sans-serif;
	display: inline;
}
.message:not(.big) .icon + h1,
.message:not(.big) .icon + h2,
.message:not(.big) .icon + h3,
.message:not(.big) .icon + h4,
.message:not(.big) .icon + h5,
.message:not(.big) .icon + h6 {
	font-size: 16px;
	line-height: 25px;
	font-weight: 700;
}
.message .icon:not(.close) ~ p {
	display: inline;
}

@media all and (max-width: 979.9px) {
	/* Die Zusammenfassung der Selektoren aus Revision 18509 mach soviele Probleme, dass ihc sie wieder rausnehmen muss */
	/*.message.big .icon + *:not(.icon) {*/
	.message.big h1,
	.message.big h2,
	.message.big h3,
	.message.big h4,
	.message.big h5,
	.message.big h6 {
		font-size: 20px;
		line-height: 28px;
	}
}

@media all and (max-width: 659.9px) {
	.message.big {
		text-align: center;
		padding-left: 20px;
	}

	.message.big .icon {
		float: none;
		margin: 0;
	}
	.message.big .icon.close {
		float: right;
		margin: 0 0 0 -20px;
	}
}
.fullwidth.message {
	padding-left: 0px;
	padding-right: 0px;
	width: 100%;
	overflow: hidden;
	border-radius: 0;
}
.fullwidth.message > div {
	box-sizing: border-box;
	padding: 0px 10px 0px 54px;
}
.fullwidth.message.big > div {
	padding: 0px 20px 0px 88px;
}
.message > div.center {
	margin-left: auto;
	margin-right: auto;
}
/* helpcenter - local.css */
/* Verlinkte Teaser */
a.teaser:hover {
    text-decoration: none;
}
a.teaser .content {
    color: #525252;
}
/* ENDE: Verlinkte Teaser */

/* Icon in Teaser (zentriert) */
.teaser .height140 {
    height: 140px;
}
.no-flex .teaser .height140 + .content {
    height: 56px;
}
.teaser .unscaled.visual {
    float: none;
}
.teaser .unscaled.visual img {
    width: auto;
    margin: 0px auto;
}
.teaser .visual[class*="height"] > img,
.teaser .visual img + img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.teaser .visual img + img {
    opacity: 0;
    -webkit-transition: opacity 0.25s;
    -ms-transition: opacity 0.25s;
    transition: opacity 0.25s;
}
.teaser:hover .visual img + img {
    opacity: 1;
}
/* Ende: Icon in Teaser */

/* Bei 2-Spalten Layout */
/* nötig, damit der Inhalt oben anfängt */
.container.align-content-top {
    align-content: flex-start;
}
/* Falls erste/linke Spalte rechts angezeigt werden soll */
.container.flex-direction-reverse {
    flex-direction: row-reverse;
}
/* Ende: 2-Spalten Layout */

/* Formular ohne Breitenbeschränkung */
.fullwidth.form fieldset {
    max-width: none;
}
/* Rahmenfarbe für joined Formulare zurücksetzen */
form.joined[class][class][class] .field[class][class][class] input[type="text"],
form.joined[class][class][class] .field[class][class][class] input[type="search"] {
    border-color: #C2C2C2;
    border-right: 0px solid;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
}

figure {
    margin: 0;
    white-space: nowrap;
}
figure > .icon,
figure > img,
figure a > img,
figure > svg {
    height: auto;
    width: auto;
    max-width: 100%;
    display: inline-block;
}
figure.scale > .icon,
figure.scale > img,
figure.scale a > img,
figure.scale > svg,
figure > .icon.scale,
figure > img.scale,
figure > svg.scale {
    width: 100%;
}

code, pre, xmp, .keyword.shortcut {
    background-color: #DADADA;
    border-radius: 3px;
    font-size: 13px;
    color: #333333;
    line-height: 18px;
    overflow-x: auto;
    padding: 2px 5px;
    white-space: pre;
}

strong.figure {
    white-space: nowrap;
}
strong.figure code {
    font-family: WebdeScript, Verdana, Arial, sans-serif;
    font-weight: bold;
    background-color: #1C449B;
    border-radius: 11px;
    font-size: 16px;
    line-height: 20px;
    color: #ffffff;
    padding: 0px 5px;
    text-align: center;
    vertical-align: text-bottom;
}

footer .logo-1and1 {
    background: #FFFFFF url("//img.ui-portal.de/helpcenter/mail.com/ci/logo_1and1.svg") no-repeat scroll 0 0;
    background-size: 50px 50px;
    display: inline-block;
    height: 50px;
    position: relative;
    width: 50px;
}

footer .akkordeon {
    border-bottom: none;
    border-top: none;
    color: #333333;
    padding: 7px 0px;
}
footer .akkordeon h4 {
    font-size: 20px;
    line-height: 28px;
}
.js footer .akkordeon > *:first-child {
    display: inline-block;
}
footer .akkordeon .vspace-xs p span.spacer {
    height: 10px;
    verflow: hidden;
    display: block;
}


#feedback-yes {
    color: #5CB82A;
}
.akkordeon.message {
    padding-top: 10px;
    padding-bottom: 10px;
}
.fullwidth.akkordeon.message > div,
.fullwidth.akkordeon.message > .module.fix {
    padding-left: 44px;
}
.akkordeon.message:not(.big) .icon + *:not(.icon) {
    vertical-align: 2px;
}
/* Akkordeon-Icon in schwarz */
.js .akkordeon.message > *:first-child > *:first-child:before {
    background-position: 0% 1.25%;
}
.js .akkordeon.message.open > *:first-child > *:first-child:before {
    background-position: 0% 0%;
}
/* Fix no-flex Header wg. zu langem Text */
.no-flex .header > *:first-child {
    margin-right: -20px;
}

/* zusaetzlich im message.css geloeschtes, aber noch benoetigtes Message CSS hinzugefueegn: */
/* h4 wird bald mit strong ersetzt, aktuell beide Selektoren nötig */
@media all and (min-width: 660px) {
    .message.big[class][class] h4,
    .message.big[class][class] strong {
        font-size: 20px;
        line-height: 28px;
        font-weight: 400;
        display: block;
        font-family: RobotoMedium;
    }
}
@media all and (max-width: 659.9px) {
    .akkordeon.message[class][class] h4,
    .akkordeon.message[class][class] h4 span,
    .akkordeon.message[class][class] strong,
    .akkordeon.message[class][class] strong span {
        line-height: 24px;
    }
}
/* Kennzeichnung externe Links: */
/* Browser unterbinden fuer visited-Links direkt im a-tag eine andere BG-Grafik anzuzeigen */
a.external {
    background: url(//img.ui-portal.de/helpcenter/gmx.net/icons/external-link_update.svg) no-repeat 0 100%;
    background-size: 20px 20px;
    padding-left: 24px;
}
/**/

/* mobiles Formular: half-size + quarter-size -> full-size + full-size */
@media screen and (max-width: 659.9px) {
    form .half-size.field + .quarter-size.field {
        width: 100%;
    }
}
/* Trennlinie */
/* Hinweis: es gibt im CAT ein spacer Modul - für Helpcenter ist es einfacher separator.json und nötiges CSS hier zu schreiben, HTML ist trivial */
/* hier nur noch zusätzliche Angaben, alles andere schon im CAT-CSS drin */
hr.separator {
    background-color: #DADADA;
    height: 1px;
    line-height: 1px;
}

/* Fussnoten */
/* Fussnoten-Labels */
[aria-describedby="footnote-label"] {
    white-space: nowrap;
}
/* nachfolgendes auskommentiert, da die Zählung bei versteckten Elementen nicht funktioniert */
/*
body {
    counter-reset: footnotes;
}
[aria-describedby="footnote-label"] {
    counter-increment: footnotes;
    white-space: nowrap;
}
[aria-describedby="footnote-label"]::after {
    content: ' [' counter(footnotes) ']';
} */

/* Fussnoten-Layout */
.footnotes {
    font-size: 14px;
    line-height: 22px;
    position: relative;
    color: #858585;
}
.footnotes li {
    position: relative;
    margin-bottom: 5px;
}
/* Fussnoten-Trennlinie */
.footnotes:before {
    content: "";
    background-color: #DADADA;
    position: absolute;
    height: 2px;
    left: 10px;
    right: 10px;
    top: 0px;
    z-index: -1;
}
/* Farbige Hinterlegung Auswahl */
.footnotes li:target::before {
    content: "";
    background-color: #D6DDED;
    position: absolute;
    left: -40px;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: -1;
}
/* zurueck-Link */
.footnotes .icon.up {
    top: 2px;
    position: relative;
    margin-left: 5px;
    margin-right: 5px;
}
/* Sonderzeichnen Layout */
.footnote-back,
.footnote-back:hover {
    color: #1C449B;
    font-weight: 700;
    font-size: 16px;
    line-height: 16px;
    position: relative;
    top: -1px;
    text-decoration: none;
}
/* end Fussnoten */
/* Messages im Formular */
form .error.message.field .icon + span {
    font-family: RobotoRegular, sans-serif;
    font-weight: 400;
}
/* end Messages im Formular */

/* tables in mobile hotfix */
@media screen and (max-width: 659.9px) {
    table {
        table-layout: fixed;
        width: 100%;
    }
}
/* end tables in mobile hotfix */


/* Highlight-Funktion */
.suggest mark {
    background-color: transparent;
    font-weight: 400;
    color: inherit;
}
mark {
    background-color: #FCF3D1;
}
mark.direct-match {
    background-color: #FBEBB3;
}
/**/


/* searchbox */
body:not(.js) .searchbox { display: none; }
/* end searchbox */


/* benötigtes css für dita übernommen */
span.uicontrol {
    font-weight: 700;
    /*white-space: pre;*/
    color: #525252;
}
p.shortdesc {
    font-style: italic;
}
.module section {
    margin-top: 0px;
    margin-bottom: 20px;
}
article.nested1 {
    margin-top: 0px;
    margin-bottom: 20px;
    padding-top: 20px;
    padding-bottom: 0px;
}
article.nested1 > * {
    margin-top: 0px;
    margin-bottom: 20px;
}



/* Hotfix, da zuviel Abstand wegen neuem Form-Modul */
.error.message.field {
    margin-top: -10px;
}


/* Ticket DPB-1189 - Hotline Icon im header */
@media screen and (min-width: 660px) and (max-width: 979.9px) {
    .header > .container.right,
    .header > .module.right {
        margin-top: 18px;
    }
}
.hotline.icon,
.hotline.icon.service-hover-light {
    display: inline-block;
    color: transparent;
    outline: none;
    padding: 0px;
    text-indent: -9999em;
    background: url("https://img.ui-portal.de/cd/ci/gmx.net/brand-410.svg") no-repeat 0% 0%, url("https://img.ui-portal.de/cd/ci/gmx.net/service-410.svg") no-repeat 0% 0%;
    -ms-transform: translate3d(0, 0, 0);
    text-shadow: none;
}
.hotline.icon.white, body:not(.touch) .hotline.icon.white-hover:hover, body:not(.touch) a:hover > .hotline.icon.white-hover, body:not(.touch) .hotline.icon.white-hover:focus, body:not(.touch) a:focus > .hotline.icon.white-hover {
    background-position: 25% 15%;
}
.hotline.icon.service-light, body:not(.touch) .hotline.icon.hover-service-light:hover, body:not(.touch) a:hover > .hotline.icon.hover-service-light {
    background-position: 100% 15%;
}
.hotline.l.icon,
.hotline.icon.service-hover-light {
    background-size: auto 2592px, auto 2592px;
    width: 32px;
    height: 32px;
}
@media screen and (min-width: 980px) {
    .header .right .module > .icon.show-prefix-text[data-icon-prefix-text]:before {
        display: block;
        content: attr(data-icon-prefix-text);
        color: #FFFFFF;
        white-space: nowrap;
        text-indent: 0px;
        font-family: RobotoRegular;
        font-size: 20px;
        line-height: 28px;
        position: absolute;
        right: 100%;
        margin: 0;
        padding: 0 8px 0 0;
        top: 4px;
        width: auto;
        height: auto;
    }
}
