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;
}
.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%;
}
.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;
}
.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: stretch;
  -ms-justify-content: stretch;
  -ms-flex-align: stretch;
  justify-content: stretch;
}
.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;
}
.l-1.fix, .l-2.fix, .l-3.fix, .l-4.fix, .l-5.fix, .l-6.fix, .l-7.fix, .l-8.fix, .l-9.fix, .l-10.fix, .l-11.fix, .l-12.fix {
  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;
  }
}
@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;
  }
  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;
  }
  body.no-flex {
    max-width: 639.9px;
  }
}
/*  */

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;
}


@font-face {
    font-family: 'SourceSansProBold';
    src: url('../fonts/SourceSansProBold/SourceSansPro-Bold.eot');
    src: url('../fonts/SourceSansProBold/SourceSansPro-Bold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/SourceSansProBold/SourceSansPro-Bold.woff') format('woff'),
    url('../fonts/SourceSansProBold/SourceSansPro-Bold.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'SourceSansProRegular';
    src: url('../fonts/SourceSansProRegular/SourceSansPro-Regular.eot');
    src: url('../fonts/SourceSansProRegular/SourceSansPro-Regular.eot?#iefix') format('embedded-opentype'),
    url('../fonts/SourceSansProRegular/SourceSansPro-Regular.woff') format('woff'),
    url('../fonts/SourceSansProRegular/SourceSansPro-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}


body {
    font-family: "SourceSansProRegular", 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: #197cc3;
    text-decoration: none;
}
a:active,
a:visited,
.link-visited {
    color: #61ade4;
}
a:hover,
a:focus,
.link-base:hover,
.link-hover {
    color: #197cc3;
    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;
}


.subheadline,
[class][class][class].script {
    color: #128BDC;
    font-family: SourceSansProBold;
}


/* Defaults > können durch setzen der responsiven Size-Klassen überschrieben werden. .[screensize]-size-[headlineformat]  */
h1.xxl,    [class].size-10 { font-size: ; font-family: ; line-height: ; }
h1.xl,     [class].size-9  { font-size: 64px; font-family: SourceSansProBold; line-height: 72px; }
h1,        [class].size-8  { font-size: 56px; font-family: SourceSansProBold; line-height: 64px; }
h2.xl,     [class].size-7  { font-size: 48px; font-family: SourceSansProBold; line-height: 56px; }
h2,        [class].size-6  { font-size: 40px; font-family: SourceSansProBold; line-height: 48px; }
h3.xl,     [class].size-5  { font-size: 32px; font-family: SourceSansProBold; line-height: 40px; }
h3,        [class].size-4  { font-size: 24px; font-family: SourceSansProBold; line-height: 32px; }
h4,        [class].size-3  { font-size: 20px; font-family: SourceSansProBold; line-height: 28px; }
p,         [class].size-2  { font-size: 16px; font-family: SourceSansProRegular; line-height: 24px; }
.note,     [class].size-1  { font-size: 14px; font-family: SourceSansProRegular; line-height: 22px; }
.icontext, [class].size-0  { font-size: 9px; font-family: SourceSansProRegular; line-height: 16px; }



@media screen and (min-width: 980px) {
    [class][class].l-size-10 { font-size: ; font-family: ; line-height: ; }
    [class][class].l-size-9  { font-size: 64px; font-family: SourceSansProBold; line-height: 72px; }
    [class][class].l-size-8  { font-size: 56px; font-family: SourceSansProBold; line-height: 64px; }
    [class][class].l-size-7  { font-size: 48px; font-family: SourceSansProBold; line-height: 56px; }
    [class][class].l-size-6  { font-size: 40px; font-family: SourceSansProBold; line-height: 48px; }
    [class][class].l-size-5  { font-size: 32px; font-family: SourceSansProBold; line-height: 40px; }
    [class][class].l-size-4  { font-size: 24px; font-family: SourceSansProBold; line-height: 32px; }
    [class][class].l-size-3  { font-size: 20px; font-family: SourceSansProBold; line-height: 28px; }
    [class][class].l-size-2  { font-size: 16px; font-family: SourceSansProRegular; line-height: 24px; }
    [class][class].l-size-1  { font-size: 14px; font-family: SourceSansProRegular; line-height: 22px; }
    [class][class].l-size-0  { font-size: 9px; font-family: SourceSansProRegular; 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: SourceSansProBold; line-height: 56px; }
    h1.xl, [class].size-9  { font-size: 40px; font-family: SourceSansProBold; line-height: 48px; }
    h1,    [class].size-8  { font-size: 40px; font-family: SourceSansProBold; line-height: 48px; }
    h2.xl, [class].size-7  { font-size: 32px; font-family: SourceSansProBold; line-height: 40px; }
    h2,    [class].size-6  { font-size: 32px; font-family: SourceSansProBold; line-height: 40px; }
    h3.xl, [class].size-5  { font-size: 24px; font-family: SourceSansProBold; line-height: 32px; }
    h3,    [class].size-4  { font-size: 20px; font-family: SourceSansProBold; line-height: 28px; }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
    [class][class].m-size-10 { font-size: ; font-family: ; line-height: ; }
    [class][class].m-size-9  { font-size: 64px; font-family: SourceSansProBold; line-height: 72px; }
    [class][class].m-size-8  { font-size: 56px; font-family: SourceSansProBold; line-height: 64px; }
    [class][class].m-size-7  { font-size: 48px; font-family: SourceSansProBold; line-height: 56px; }
    [class][class].m-size-6  { font-size: 40px; font-family: SourceSansProBold; line-height: 48px; }
    [class][class].m-size-5  { font-size: 32px; font-family: SourceSansProBold; line-height: 40px; }
    [class][class].m-size-4  { font-size: 24px; font-family: SourceSansProBold; line-height: 32px; }
    [class][class].m-size-3  { font-size: 20px; font-family: SourceSansProBold; line-height: 28px; }
    [class][class].m-size-2  { font-size: 16px; font-family: SourceSansProRegular; line-height: 24px; }
    [class][class].m-size-1  { font-size: 14px; font-family: SourceSansProRegular; line-height: 22px; }
    [class][class].m-size-0  { font-size: 9px; font-family: SourceSansProRegular; 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: SourceSansProBold; line-height: 48px; }
    h1.xl, [class].size-9  { font-size: 32px; font-family: SourceSansProBold; line-height: 40px; }
    h1,    [class].size-8  { font-size: 32px; font-family: SourceSansProBold; line-height: 40px; }
    h2.xl, [class].size-7  { font-size: 32px; font-family: SourceSansProBold; line-height: 40px; }
    h2,    [class].size-6  { font-size: 32px; font-family: SourceSansProBold; line-height: 40px; }
    h3.xl, [class].size-5  { font-size: 24px; font-family: SourceSansProBold; line-height: 32px; }
    h3,    [class].size-4  { font-size: 20px; font-family: SourceSansProBold; line-height: 28px; }

    [class][class].s-size-10 { font-size: ; font-family: ; line-height: ; }
    [class][class].s-size-9  { font-size: 64px; font-family: SourceSansProBold; line-height: 72px; }
    [class][class].s-size-8  { font-size: 56px; font-family: SourceSansProBold; line-height: 64px; }
    [class][class].s-size-7  { font-size: 48px; font-family: SourceSansProBold; line-height: 56px; }
    [class][class].s-size-6  { font-size: 40px; font-family: SourceSansProBold; line-height: 48px; }
    [class][class].s-size-5  { font-size: 32px; font-family: SourceSansProBold; line-height: 40px; }
    [class][class].s-size-4  { font-size: 24px; font-family: SourceSansProBold; line-height: 32px; }
    [class][class].s-size-3  { font-size: 20px; font-family: SourceSansProBold; line-height: 28px; }
    [class][class].s-size-2  { font-size: 16px; font-family: SourceSansProRegular; line-height: 24px; }
    [class][class].s-size-1  { font-size: 14px; font-family: SourceSansProRegular; line-height: 22px; }
    [class][class].s-size-0  { font-size: 9px; font-family: SourceSansProRegular; line-height: 16px; }
}

sup, sub {
    line-height: 0;
}

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;
}

/* 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 - message-1.2 */
.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: ;
    border-color: ;
}
.message.warning {
    background-color: #FCF3D1;
    border-color: #FCF3D1;
}
.message.success {
    background-color: ;
    border-color: ;
}
.message.info {
    background-color: ;
    border-color: ;
}
.message .icon + *:not(.icon) {
    font-family: "SourceSansProBold", Arial, sans-serif;
}
.message:not(.big) .icon + *:not(.icon) {
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
}
@media all and (min-width: 660px) {
    .message .icon + *:not(.icon) {
        font-size: 20px;
        line-height: 28px;
        font-weight: 400;
    }
}
.inline.message .icon + *:not(.icon),
.message .icon:not(.close) ~ p {
    display: inline;
}

@media all and (max-width: 979.9px) {
    .message.big .icon + *:not(.icon) {
        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 {
    width: 1000px;
    max-width: 1000px;
    min-width: auto;
    padding-right: 0;
    padding-left: 0;
    overflow: hidden;
    border-radius: 0;
}
.fullwidth.message > div {
    width: 100%;
    max-width: 1000px;
    min-width: auto;
    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;
}

/* animate toggle of info field */
.message.info.field {
    max-height: 1000px;
    opacity: 1;
    -webkit-transition: 0.25s ease-in;
    -moz-transition: 0.25s ease-in;
    -ms-transition: 0.25s ease-in;
    -o-transition: 0.25s ease-in;
    transition: 0.25s ease-in;
}

.message.info.hidden {
    display: block;
    max-height: 0px;
    min-height: 0px;
    overflow: hidden;
    opacity: 0;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
    margin-bottom: 0;
    -webkit-transition: 0.15s ease-out;
    -moz-transition: 0.15s ease-out;
    -ms-transition: 0.15s ease-out;
    -o-transition: 0.15s ease-out;
    transition: 0.15s ease-out;
}



.icon {
    outline: none;
    overflow: hidden;
}
.icon,
.s.icon {
    display: inline-block;
    width: 16px;
    height: 16px;
    background: url(../static/icon-s.png) no-repeat;
    background: url(../static/icon.svg) no-repeat, none;
    background-size: 80px 600px;
    padding: 0px;
    text-align: left;
    text-indent: -10000px;
}
.m.icon {
    width: 24px;
    height: 24px;
    background: url(../static/icon-m.png) no-repeat;
    background: url(../static/icon.svg) no-repeat, none;
    background-size: 120px 900px;
}
.l.icon {
    width: 32px;
    height: 32px;
    background: url(../static/icon-l.png) no-repeat;
    background: url(../static/icon.svg) no-repeat, none;
    background-size: 160px 1200px;
}
.xl.icon {
    width: 40px;
    height: 40px;
    background: url(../static/icon-xl.png) no-repeat;
    background: url(../static/icon.svg) no-repeat, none;
    background-size: 200px 1500px;
}
.xxl.icon {
    width: 48px;
    height: 48px;
    background: url(../static/icon-xxl.png) no-repeat;
    background: url(../static/icon.svg) no-repeat, none;
    background-size: 240px 1800px;
}
.xxxl.icon {
    width: 60px;
    height: 60px;
    background: url(../static/icon-xxxl.png) no-repeat;
    background: url(../static/icon.svg) no-repeat, none;
    background-size: 300px 2250px;
}
.xxxxl.icon {
    width: 72px;
    height: 72px;
    background: url(../static/icon-xxxxl.png) no-repeat;
    background: url(../static/icon.svg) no-repeat, none;
    background-size: 360px 2700px;
}
.no-svg .s.icon { background-image: url(../static/icon-s.png); }
.no-svg .m.icon { background-image: url(../static/icon-m.png); }
.no-svg .l.icon { background-image: url(../static/icon-l.png); }
.no-svg .xl.icon { background-image: url(../static/icon-xl.png); }
.no-svg .xxl.icon { background-image: url(../static/icon-xxl.png); }
.no-svg .xxxl.icon { background-image: url(../static/icon-xxxl.png); }
.no-svg .xxxxl.icon { background-image: url(../static/icon-xxxxl.png); }
.icon.up,
body:not(.touch) .icon.up.hover-default:hover,
body:not(.touch) a:hover > .icon.up.hover-default { background-position: 0% 0%; }
.icon.down,
body:not(.touch) .icon.down.hover-default:hover,
body:not(.touch) a:hover > .icon.down.hover-default { background-position: 0% 3.425%; }
.icon.back,
body:not(.touch) .icon.back.hover-default:hover,
body:not(.touch) a:hover > .icon.back.hover-default { background-position: 0% 6.85%; }
.icon.next,
body:not(.touch) .icon.next.hover-default:hover,
body:not(.touch) a:hover > .icon.next.hover-default { background-position: 0% 10.275%; }
.icon.burger,
body:not(.touch) .icon.burger.hover-default:hover,
body:not(.touch) a:hover > .icon.burger.hover-default { background-position: 0% 13.7%; }
.icon.home,
body:not(.touch) .icon.home.hover-default:hover,
body:not(.touch) a:hover > .icon.home.hover-default { background-position: 0% 17.125%; }
.icon.close,
body:not(.touch) .icon.close.hover-default:hover,
body:not(.touch) a:hover > .icon.close.hover-default { background-position: 0% 20.55%; }
.icon.logout,
body:not(.touch) .icon.logout.hover-default:hover,
body:not(.touch) a:hover > .icon.logout.hover-default { background-position: 0% 23.975%; }
.icon.search,
body:not(.touch) .icon.search.hover-default:hover,
body:not(.touch) a:hover > .icon.search.hover-default { background-position: 0% 27.4%; }
.icon.person,
body:not(.touch) .icon.person.hover-default:hover,
body:not(.touch) a:hover > .icon.person.hover-default { background-position: 0% 30.825%; }
.icon.basket,
body:not(.touch) .icon.basket.hover-default:hover,
body:not(.touch) a:hover > .icon.basket.hover-default { background-position: 0% 34.25%; }
.icon.apps,
body:not(.touch) .icon.apps.hover-default:hover,
body:not(.touch) a:hover > .icon.apps.hover-default { background-position: 0% 37.675%; }
.icon.email,
body:not(.touch) .icon.email.hover-default:hover,
body:not(.touch) a:hover > .icon.email.hover-default { background-position: 0% 41.1%; }
.icon.demail,
body:not(.touch) .icon.demail.hover-default:hover,
body:not(.touch) a:hover > .icon.demail.hover-default { background-position: 0% 44.525%; }
.icon.mailcheck,
body:not(.touch) .icon.mailcheck.hover-default:hover,
body:not(.touch) a:hover > .icon.mailcheck.hover-default { background-position: 0% 47.95%; }
.icon.calendar,
body:not(.touch) .icon.calendar.hover-default:hover,
body:not(.touch) a:hover > .icon.calendar.hover-default { background-position: 0% 51.375%; }
.icon.clock,
body:not(.touch) .icon.clock.hover-default:hover,
body:not(.touch) a:hover > .icon.clock.hover-default { background-position: 0% 54.8%; }
.icon.office,
body:not(.touch) .icon.office.hover-default:hover,
body:not(.touch) a:hover > .icon.office.hover-default { background-position: 0% 58.225%; }
.icon.cloud,
body:not(.touch) .icon.cloud.hover-default:hover,
body:not(.touch) a:hover > .icon.cloud.hover-default { background-position: 0% 61.65%; }
.icon.security,
body:not(.touch) .icon.security.hover-default:hover,
body:not(.touch) a:hover > .icon.security.hover-default { background-position: 0% 65.075%; }
.icon.overview,
body:not(.touch) .icon.overview.hover-default:hover,
body:not(.touch) a:hover > .icon.overview.hover-default { background-position: 0% 68.5%; }
.icon.hint,
body:not(.touch) .icon.hint.hover-default:hover,
body:not(.touch) a:hover > .icon.hint.hover-default { background-position: 0% 71.925%; }
.icon.google,
body:not(.touch) .icon.google.hover-default:hover,
body:not(.touch) a:hover > .icon.google.hover-default { background-position: 0% 75.35%; }
.icon.facebook,
body:not(.touch) .icon.facebook.hover-default:hover,
body:not(.touch) a:hover > .icon.facebook.hover-default { background-position: 0% 78.775%; }
.icon.twitter,
body:not(.touch) .icon.twitter.hover-default:hover,
body:not(.touch) a:hover > .icon.twitter.hover-default { background-position: 0% 82.2%; }
.icon.mail,
body:not(.touch) .icon.mail.hover-default:hover,
body:not(.touch) a:hover > .icon.mail.hover-default { background-position: 0% 85.625%; }

.icon.success { background-position: 0% 89.05%; }

.icon.info { background-position: 0% 92.475%; }

.icon.warning { background-position: 0% 95.9%; }

.icon.error { background-position: 0% 99.325%; }
.icon.up.white,
body:not(.touch) .icon.up.hover-white:hover,
body:not(.touch) a:hover > .icon.up.hover-white { background-position: 31.2% 0%; }
.icon.down.white,
body:not(.touch) .icon.down.hover-white:hover,
body:not(.touch) a:hover > .icon.down.hover-white { background-position: 31.2% 3.425%; }
.icon.back.white,
body:not(.touch) .icon.back.hover-white:hover,
body:not(.touch) a:hover > .icon.back.hover-white { background-position: 31.2% 6.85%; }
.icon.next.white,
body:not(.touch) .icon.next.hover-white:hover,
body:not(.touch) a:hover > .icon.next.hover-white { background-position: 31.2% 10.275%; }
.icon.burger.white,
body:not(.touch) .icon.burger.hover-white:hover,
body:not(.touch) a:hover > .icon.burger.hover-white { background-position: 31.2% 13.7%; }
.icon.home.white,
body:not(.touch) .icon.home.hover-white:hover,
body:not(.touch) a:hover > .icon.home.hover-white { background-position: 31.2% 17.125%; }
.icon.close.white,
body:not(.touch) .icon.close.hover-white:hover,
body:not(.touch) a:hover > .icon.close.hover-white { background-position: 31.2% 20.55%; }
.icon.logout.white,
body:not(.touch) .icon.logout.hover-white:hover,
body:not(.touch) a:hover > .icon.logout.hover-white { background-position: 31.2% 23.975%; }
.icon.search.white,
body:not(.touch) .icon.search.hover-white:hover,
body:not(.touch) a:hover > .icon.search.hover-white { background-position: 31.2% 27.4%; }
.icon.person.white,
body:not(.touch) .icon.person.hover-white:hover,
body:not(.touch) a:hover > .icon.person.hover-white { background-position: 31.2% 30.825%; }
.icon.basket.white,
body:not(.touch) .icon.basket.hover-white:hover,
body:not(.touch) a:hover > .icon.basket.hover-white { background-position: 31.2% 34.25%; }
.icon.apps.white,
body:not(.touch) .icon.apps.hover-white:hover,
body:not(.touch) a:hover > .icon.apps.hover-white { background-position: 31.2% 37.675%; }
.icon.email.white,
body:not(.touch) .icon.email.hover-white:hover,
body:not(.touch) a:hover > .icon.email.hover-white { background-position: 31.2% 41.1%; }
.icon.demail.white,
body:not(.touch) .icon.demail.hover-white:hover,
body:not(.touch) a:hover > .icon.demail.hover-white { background-position: 31.2% 44.525%; }
.icon.mailcheck.white,
body:not(.touch) .icon.mailcheck.hover-white:hover,
body:not(.touch) a:hover > .icon.mailcheck.hover-white { background-position: 31.2% 47.95%; }
.icon.calendar.white,
body:not(.touch) .icon.calendar.hover-white:hover,
body:not(.touch) a:hover > .icon.calendar.hover-white { background-position: 31.2% 51.375%; }
.icon.clock.white,
body:not(.touch) .icon.clock.hover-white:hover,
body:not(.touch) a:hover > .icon.clock.hover-white { background-position: 31.2% 54.8%; }
.icon.office.white,
body:not(.touch) .icon.office.hover-white:hover,
body:not(.touch) a:hover > .icon.office.hover-white { background-position: 31.2% 58.225%; }
.icon.cloud.white,
body:not(.touch) .icon.cloud.hover-white:hover,
body:not(.touch) a:hover > .icon.cloud.hover-white { background-position: 31.2% 61.65%; }
.icon.security.white,
body:not(.touch) .icon.security.hover-white:hover,
body:not(.touch) a:hover > .icon.security.hover-white { background-position: 31.2% 65.075%; }
.icon.overview.white,
body:not(.touch) .icon.overview.hover-white:hover,
body:not(.touch) a:hover > .icon.overview.hover-white { background-position: 31.2% 68.5%; }
.icon.hint.white,
body:not(.touch) .icon.hint.hover-white:hover,
body:not(.touch) a:hover > .icon.hint.hover-white { background-position: 31.2% 71.925%; }
.icon.google.white,
body:not(.touch) .icon.google.hover-white:hover,
body:not(.touch) a:hover > .icon.google.hover-white { background-position: 31.2% 75.35%; }
.icon.facebook.white,
body:not(.touch) .icon.facebook.hover-white:hover,
body:not(.touch) a:hover > .icon.facebook.hover-white { background-position: 31.2% 78.775%; }
.icon.twitter.white,
body:not(.touch) .icon.twitter.hover-white:hover,
body:not(.touch) a:hover > .icon.twitter.hover-white { background-position: 31.2% 82.2%; }
.icon.mail.white,
body:not(.touch) .icon.mail.hover-white:hover,
body:not(.touch) a:hover > .icon.mail.hover-white { background-position: 31.2% 85.625%; }
.icon.up.inactive,
body:not(.touch) .icon.up.hover-inactive:hover,
body:not(.touch) a:hover > .icon.up.hover-inactive { background-position: 62.4% 0%; }
.icon.down.inactive,
body:not(.touch) .icon.down.hover-inactive:hover,
body:not(.touch) a:hover > .icon.down.hover-inactive { background-position: 62.4% 3.425%; }
.icon.back.inactive,
body:not(.touch) .icon.back.hover-inactive:hover,
body:not(.touch) a:hover > .icon.back.hover-inactive { background-position: 62.4% 6.85%; }
.icon.next.inactive,
body:not(.touch) .icon.next.hover-inactive:hover,
body:not(.touch) a:hover > .icon.next.hover-inactive { background-position: 62.4% 10.275%; }
.icon.burger.inactive,
body:not(.touch) .icon.burger.hover-inactive:hover,
body:not(.touch) a:hover > .icon.burger.hover-inactive { background-position: 62.4% 13.7%; }
.icon.home.inactive,
body:not(.touch) .icon.home.hover-inactive:hover,
body:not(.touch) a:hover > .icon.home.hover-inactive { background-position: 62.4% 17.125%; }
.icon.close.inactive,
body:not(.touch) .icon.close.hover-inactive:hover,
body:not(.touch) a:hover > .icon.close.hover-inactive { background-position: 62.4% 20.55%; }
.icon.logout.inactive,
body:not(.touch) .icon.logout.hover-inactive:hover,
body:not(.touch) a:hover > .icon.logout.hover-inactive { background-position: 62.4% 23.975%; }
.icon.search.inactive,
body:not(.touch) .icon.search.hover-inactive:hover,
body:not(.touch) a:hover > .icon.search.hover-inactive { background-position: 62.4% 27.4%; }
.icon.person.inactive,
body:not(.touch) .icon.person.hover-inactive:hover,
body:not(.touch) a:hover > .icon.person.hover-inactive { background-position: 62.4% 30.825%; }
.icon.basket.inactive,
body:not(.touch) .icon.basket.hover-inactive:hover,
body:not(.touch) a:hover > .icon.basket.hover-inactive { background-position: 62.4% 34.25%; }
.icon.apps.inactive,
body:not(.touch) .icon.apps.hover-inactive:hover,
body:not(.touch) a:hover > .icon.apps.hover-inactive { background-position: 62.4% 37.675%; }
.icon.email.inactive,
body:not(.touch) .icon.email.hover-inactive:hover,
body:not(.touch) a:hover > .icon.email.hover-inactive { background-position: 62.4% 41.1%; }
.icon.demail.inactive,
body:not(.touch) .icon.demail.hover-inactive:hover,
body:not(.touch) a:hover > .icon.demail.hover-inactive { background-position: 62.4% 44.525%; }
.icon.mailcheck.inactive,
body:not(.touch) .icon.mailcheck.hover-inactive:hover,
body:not(.touch) a:hover > .icon.mailcheck.hover-inactive { background-position: 62.4% 47.95%; }
.icon.calendar.inactive,
body:not(.touch) .icon.calendar.hover-inactive:hover,
body:not(.touch) a:hover > .icon.calendar.hover-inactive { background-position: 62.4% 51.375%; }
.icon.clock.inactive,
body:not(.touch) .icon.clock.hover-inactive:hover,
body:not(.touch) a:hover > .icon.clock.hover-inactive { background-position: 62.4% 54.8%; }
.icon.office.inactive,
body:not(.touch) .icon.office.hover-inactive:hover,
body:not(.touch) a:hover > .icon.office.hover-inactive { background-position: 62.4% 58.225%; }
.icon.cloud.inactive,
body:not(.touch) .icon.cloud.hover-inactive:hover,
body:not(.touch) a:hover > .icon.cloud.hover-inactive { background-position: 62.4% 61.65%; }
.icon.security.inactive,
body:not(.touch) .icon.security.hover-inactive:hover,
body:not(.touch) a:hover > .icon.security.hover-inactive { background-position: 62.4% 65.075%; }
.icon.overview.inactive,
body:not(.touch) .icon.overview.hover-inactive:hover,
body:not(.touch) a:hover > .icon.overview.hover-inactive { background-position: 62.4% 68.5%; }
.icon.hint.inactive,
body:not(.touch) .icon.hint.hover-inactive:hover,
body:not(.touch) a:hover > .icon.hint.hover-inactive { background-position: 62.4% 71.925%; }
.icon.google.inactive,
body:not(.touch) .icon.google.hover-inactive:hover,
body:not(.touch) a:hover > .icon.google.hover-inactive { background-position: 62.4% 75.35%; }
.icon.facebook.inactive,
body:not(.touch) .icon.facebook.hover-inactive:hover,
body:not(.touch) a:hover > .icon.facebook.hover-inactive { background-position: 62.4% 78.775%; }
.icon.twitter.inactive,
body:not(.touch) .icon.twitter.hover-inactive:hover,
body:not(.touch) a:hover > .icon.twitter.hover-inactive { background-position: 62.4% 82.2%; }
.icon.mail.inactive,
body:not(.touch) .icon.mail.hover-inactive:hover,
body:not(.touch) a:hover > .icon.mail.hover-inactive { background-position: 62.4% 85.625%; }
.icon.up.service,
body:not(.touch) .icon.up.hover-service:hover,
body:not(.touch) a:hover > .icon.up.hover-service { background-position: 93.6% 0%; }
.icon.down.service,
body:not(.touch) .icon.down.hover-service:hover,
body:not(.touch) a:hover > .icon.down.hover-service { background-position: 93.6% 3.425%; }
.icon.back.service,
body:not(.touch) .icon.back.hover-service:hover,
body:not(.touch) a:hover > .icon.back.hover-service { background-position: 93.6% 6.85%; }
.icon.next.service,
body:not(.touch) .icon.next.hover-service:hover,
body:not(.touch) a:hover > .icon.next.hover-service { background-position: 93.6% 10.275%; }
.icon.burger.service,
body:not(.touch) .icon.burger.hover-service:hover,
body:not(.touch) a:hover > .icon.burger.hover-service { background-position: 93.6% 13.7%; }
.icon.home.service,
body:not(.touch) .icon.home.hover-service:hover,
body:not(.touch) a:hover > .icon.home.hover-service { background-position: 93.6% 17.125%; }
.icon.close.service,
body:not(.touch) .icon.close.hover-service:hover,
body:not(.touch) a:hover > .icon.close.hover-service { background-position: 93.6% 20.55%; }
.icon.logout.service,
body:not(.touch) .icon.logout.hover-service:hover,
body:not(.touch) a:hover > .icon.logout.hover-service { background-position: 93.6% 23.975%; }
.icon.search.service,
body:not(.touch) .icon.search.hover-service:hover,
body:not(.touch) a:hover > .icon.search.hover-service { background-position: 93.6% 27.4%; }
.icon.person.service,
body:not(.touch) .icon.person.hover-service:hover,
body:not(.touch) a:hover > .icon.person.hover-service { background-position: 93.6% 30.825%; }
.icon.basket.service,
body:not(.touch) .icon.basket.hover-service:hover,
body:not(.touch) a:hover > .icon.basket.hover-service { background-position: 93.6% 34.25%; }
.icon.apps.service,
body:not(.touch) .icon.apps.hover-service:hover,
body:not(.touch) a:hover > .icon.apps.hover-service { background-position: 93.6% 37.675%; }
.icon.email.service,
body:not(.touch) .icon.email.hover-service:hover,
body:not(.touch) a:hover > .icon.email.hover-service { background-position: 93.6% 41.1%; }
.icon.demail.service,
body:not(.touch) .icon.demail.hover-service:hover,
body:not(.touch) a:hover > .icon.demail.hover-service { background-position: 93.6% 44.525%; }
.icon.mailcheck.service,
body:not(.touch) .icon.mailcheck.hover-service:hover,
body:not(.touch) a:hover > .icon.mailcheck.hover-service { background-position: 93.6% 47.95%; }
.icon.calendar.service,
body:not(.touch) .icon.calendar.hover-service:hover,
body:not(.touch) a:hover > .icon.calendar.hover-service { background-position: 93.6% 51.375%; }
.icon.clock.service,
body:not(.touch) .icon.clock.hover-service:hover,
body:not(.touch) a:hover > .icon.clock.hover-service { background-position: 93.6% 54.8%; }
.icon.office.service,
body:not(.touch) .icon.office.hover-service:hover,
body:not(.touch) a:hover > .icon.office.hover-service { background-position: 93.6% 58.225%; }
.icon.cloud.service,
body:not(.touch) .icon.cloud.hover-service:hover,
body:not(.touch) a:hover > .icon.cloud.hover-service { background-position: 93.6% 61.65%; }
.icon.security.service,
body:not(.touch) .icon.security.hover-service:hover,
body:not(.touch) a:hover > .icon.security.hover-service { background-position: 93.6% 65.075%; }
.icon.overview.service,
body:not(.touch) .icon.overview.hover-service:hover,
body:not(.touch) a:hover > .icon.overview.hover-service { background-position: 93.6% 68.5%; }
.icon.hint.service,
body:not(.touch) .icon.hint.hover-service:hover,
body:not(.touch) a:hover > .icon.hint.hover-service { background-position: 93.6% 71.925%; }
.icon.google.service,
body:not(.touch) .icon.google.hover-service:hover,
body:not(.touch) a:hover > .icon.google.hover-service { background-position: 93.6% 75.35%; }
.icon.facebook.service,
body:not(.touch) .icon.facebook.hover-service:hover,
body:not(.touch) a:hover > .icon.facebook.hover-service { background-position: 93.6% 78.775%; }
.icon.twitter.service,
body:not(.touch) .icon.twitter.hover-service:hover,
body:not(.touch) a:hover > .icon.twitter.hover-service { background-position: 93.6% 82.2%; }
.icon.mail.service,
body:not(.touch) .icon.mail.hover-service:hover,
body:not(.touch) a:hover > .icon.mail.hover-service { background-position: 93.6% 85.625%; }

.icon[aria-label] {
    overflow: visible;
    position: relative;
}
.icon[aria-label]:after {
    content: attr(aria-label);
    color: #333333;
    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.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; }
}
.white.icon[aria-label]:after,
.icon.hover-white[aria-label]:hover:after,
a:hover > .icon.hover-white[aria-label]:after {
    color: #FFFFFF;
}
.inactive.icon[aria-label]:after,
.icon.hover-inactive[aria-label]:hover:after,
a:hover > .icon.hover-inactive[aria-label]:after {
    color: #707070;
}
.service.icon[aria-label]:after,
.icon.hover-service[aria-label]:hover:after,
a:hover > .icon.hover-service[aria-label]:after {
    color: #128BDC;
}

.list {
    list-style: none;
}
.list li {
    padding: 7px 0px;
    position: relative;
}
.list li:before {
    content: "";
    display: inline-block;
    background-color: #128BDC;
}
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: 'SourceSansProBold', Arial, sans-serif;
    font-size: 20px;
    line-height: 28px;
}
ul.m.check.list {
    font-family: 'SourceSansProRegular', Verdana, sans-serif;
    font-size: 16px;
    line-height: 24px;
}
ul.s.check.list {
    font-family: 'SourceSansProRegular', 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;
}




