html,
body {
  padding: 0;
  margin: 0;
  width: 100%;
}

html {
  height: 100%;
}

.grid.fairplay {
  margin-top: 40px;
}

/* 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 */
.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 {

  margin: 0 auto;
  clear: both;
  position: relative;
  -webkit-flex-basis: 100%;
  flex-basis: 100%;

  background-color: #FFFFFF;
  max-width: 55vw;
  min-width: 440px;
  width: 1000px;
  display: inline-block;
  z-index: 0;
}

.cropped {
  overflow: hidden;
}

.module {
  box-sizing: border-box;
  padding-left: 20px;
  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: 50%;
  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: 100%;
  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][class] {
    display: none;
  }

  /*  */
  .l-fix {
    min-width: 0px;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }

  /*  */
  /*  */
  .l-l1[class] {
    margin-left: 7.96875vw;
  }

  .l-r1[class] {
    margin-right: 7.96875vw;
  }

  .l-l1.fix[class] {
    margin-left: 80px;
  }

  .l-r1.fix[class] {
    margin-right: 80px;
  }

  .l-fix > .l-l1[class] {
    margin-left: 80px;
  }

  .l-fix > .l-r1[class] {
    margin-right: 80px;
  }

  .l-l2[class] {
    margin-left: 15.9375vw;
  }

  .l-r2[class] {
    margin-right: 15.9375vw;
  }

  .l-l2.fix[class] {
    margin-left: 160px;
  }

  .l-r2.fix[class] {
    margin-right: 160px;
  }

  .l-fix > .l-l2[class] {
    margin-left: 160px;
  }

  .l-fix > .l-r2[class] {
    margin-right: 160px;
  }

  .l-l3[class] {
    margin-left: 23.90625vw;
  }

  .l-r3[class] {
    margin-right: 23.90625vw;
  }

  .l-l3.fix[class] {
    margin-left: 240px;
  }

  .l-r3.fix[class] {
    margin-right: 240px;
  }

  .l-fix > .l-l3[class] {
    margin-left: 240px;
  }

  .l-fix > .l-r3[class] {
    margin-right: 240px;
  }

  .l-l4[class] {
    margin-left: 31.875vw;
  }

  .l-r4[class] {
    margin-right: 31.875vw;
  }

  .l-l4.fix[class] {
    margin-left: 320px;
  }

  .l-r4.fix[class] {
    margin-right: 320px;
  }

  .l-fix > .l-l4[class] {
    margin-left: 320px;
  }

  .l-fix > .l-r4[class] {
    margin-right: 320px;
  }

  .l-l5[class] {
    margin-left: 39.84375vw;
  }

  .l-r5[class] {
    margin-right: 39.84375vw;
  }

  .l-l5.fix[class] {
    margin-left: 400px;
  }

  .l-r5.fix[class] {
    margin-right: 400px;
  }

  .l-fix .l-l5[class] {
    margin-left: 400px;
  }

  .l-fix .l-r5[class] {
    margin-right: 400px;
  }

  .l-l6[class] {
    margin-left: 47.8125vw;
  }

  .l-r6[class] {
    margin-right: 47.8125vw;
  }

  .l-l6.fix[class] {
    margin-left: 480px;
  }

  .l-r6.fix[class] {
    margin-right: 480px;
  }

  .l-fix .l-l6[class] {
    margin-left: 480px;
  }

  .l-fix .l-r6[class] {
    margin-right: 480px;
  }

  .l-t1[class] {
    margin-top: 80px;
  }

  .l-t2[class] {
    margin-top: 160px;
  }

  .l-t3[class] {
    margin-top: 240px;
  }

  .l-t4[class] {
    margin-top: 320px;
  }

  .l-b1[class] {
    margin-bottom: 80px;
  }

  .l-b2[class] {
    margin-bottom: 160px;
  }

  .l-b3[class] {
    margin-bottom: 240px;
  }

  .l-b4[class] {
    margin-bottom: 320px;
  }

  /*  */
  .no-flex .l-l1[class] {
    margin-left: 80px;
  }

  .no-flex .l-r1[class] {
    margin-right: 80px;
  }

  .no-flex .l-l2[class] {
    margin-left: 160px;
  }

  .no-flex .l-r2[class] {
    margin-right: 160px;
  }

  .no-flex .l-l3[class] {
    margin-left: 240px;
  }

  .no-flex .l-r3[class] {
    margin-right: 240px;
  }

  .no-flex .l-l4[class] {
    margin-left: 320px;
  }

  .no-flex .l-r4[class] {
    margin-right: 320px;
  }

  .no-flex .l-l5[class] {
    margin-left: 400px;
  }

  .no-flex .l-r5[class] {
    margin-right: 400px;
  }

  .no-flex .l-l6[class] {
    margin-left: 480px;
  }

  .no-flex .l-r6[class] {
    margin-right: 480px;
  }

  /*  */
  /*  */
  .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][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-l1[class] {
    margin-left: 11.6796875vw;
  }

  .m-r1[class] {
    margin-right: 11.6796875vw;
  }

  .m-l1.fix[class] {
    margin-left: 80px;
  }

  .m-r1.fix[class] {
    margin-right: 80px;
  }

  .m-fix > .m-l1[class] {
    margin-left: 80px;
  }

  .m-fix > .m-r1[class] {
    margin-right: 80px;
  }

  .m-l2[class] {
    margin-left: 23.359375vw;
  }

  .m-r2[class] {
    margin-right: 23.359375vw;
  }

  .m-l2.fix[class] {
    margin-left: 160px;
  }

  .m-r2.fix[class] {
    margin-right: 160px;
  }

  .m-fix > .m-l2[class] {
    margin-left: 160px;
  }

  .m-fix > .m-r2[class] {
    margin-right: 160px;
  }

  .m-l3[class] {
    margin-left: 35.0390625vw;
  }

  .m-r3[class] {
    margin-right: 35.0390625vw;
  }

  .m-l3.fix[class] {
    margin-left: 240px;
  }

  .m-r3.fix[class] {
    margin-right: 240px;
  }

  .m-fix > .m-l3[class] {
    margin-left: 240px;
  }

  .m-fix > .m-r3[class] {
    margin-right: 240px;
  }

  .m-l4[class] {
    margin-left: 46.71875vw;
  }

  .m-r4[class] {
    margin-right: 46.71875vw;
  }

  .m-l4.fix[class] {
    margin-left: 320px;
  }

  .m-r4.fix[class] {
    margin-right: 320px;
  }

  .m-fix > .m-l4[class] {
    margin-left: 320px;
  }

  .m-fix > .m-r4[class] {
    margin-right: 320px;
  }

  .m-t1[class] {
    margin-top: 80px;
  }

  .m-t2[class] {
    margin-top: 160px;
  }

  .m-t3[class] {
    margin-top: 240px;
  }

  .m-t4[class] {
    margin-top: 320px;
  }

  .m-b1[class] {
    margin-bottom: 80px;
  }

  .m-b2[class] {
    margin-bottom: 160px;
  }

  .m-b3[class] {
    margin-bottom: 240px;
  }

  .m-b4[class] {
    margin-bottom: 320px;
  }

  /*  */
  .no-flex .m-l1[class] {
    margin-left: 80px;
  }

  .no-flex .m-r1[class] {
    margin-right: 80px;
  }

  .no-flex .m-l2[class] {
    margin-left: 160px;
  }

  .no-flex .m-r2[class] {
    margin-right: 160px;
  }

  .no-flex .m-l3[class] {
    margin-left: 240px;
  }

  .no-flex .m-r3[class] {
    margin-right: 240px;
  }

  .no-flex .m-l4[class] {
    margin-left: 320px;
  }

  .no-flex .m-r4[class] {
    margin-right: 320px;
  }

  /*  */
  /*  */
  .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][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-l1[class] {
    margin-left: 21.71875vw;
  }

  .s-r1[class] {
    margin-right: 21.71875vw;
  }

  .s-l1.fix[class] {
    margin-left: 80px;
  }

  .s-r1.fix[class] {
    margin-right: 80px;
  }

  .s-l2[class] {
    margin-left: 43.4375vw;
  }

  .s-r2[class] {
    margin-right: 43.4375vw;
  }

  .s-l2.fix[class] {
    margin-left: 160px;
  }

  .s-r2.fix[class] {
    margin-right: 160px;
  }

  .s-t1[class] {
    margin-top: 80px;
  }

  .s-t2[class] {
    margin-top: 160px;
  }

  .s-t3[class] {
    margin-top: 240px;
  }

  .s-t4[class] {
    margin-top: 320px;
  }

  .s-b1[class] {
    margin-bottom: 80px;
  }

  .s-b2[class] {
    margin-bottom: 160px;
  }

  .s-b3[class] {
    margin-bottom: 240px;
  }

  .s-b4[class] {
    margin-bottom: 320px;
  }

  /*  */
  .no-flex .s-l1[class] {
    margin-left: 80px;
  }

  .no-flex .s-r1[class] {
    margin-right: 80px;
  }

  .no-flex .s-l2[class] {
    margin-left: 160px;
  }

  .no-flex .s-r2[class] {
    margin-right: 160px;
  }

  /*  */
  /*  */
  .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;
  }
}

/*  */

body {
  max-width: 1002px;
  min-width: 800px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  background-color: #E3EDFA;

  font-family: "RobotoRegular", Verdana, sans-serif;
  font-size: 16px;
  line-height: 24px;
  color: #525252;
  position: relative;

  min-height: 100%;
  word-wrap: break-word;
}

body > .grid {
  max-width: 55vw;
  min-width: 440px;
  width: 1000px;
  display: inline-block;
  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:not([class*="backdrop"]) > .grid {
  background-color: #FFFFFF;
}

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: 100%;
  min-width: auto;
  width: 960px;
  padding-right: 0;
  padding-left: 0;
}

/* 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;
}

body > .grid > .container > .container.carousel.l-12 > ol[role="navigation"] li[rel="prev"],
body > .grid > .container > .container.carousel.l-12 > ol[role="navigation"] li[rel="next"] {
  display: none !important;
}

body .navigation > ul > li {
  height: 48px;
}

@font-face {
  font-family: 'RobotoBold';
  src: url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Bold-webfont.eot');
  src: url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Bold-webfont.eot?#iefix') format('embedded-opentype'),
  url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Bold-webfont.woff') format('woff'),
  url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Bold-webfont.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'RobotoMedium';
  src: url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Medium-webfont.eot');
  src: url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Medium-webfont.eot?#iefix') format('embedded-opentype'),
  url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Medium-webfont.woff') format('woff'),
  url('https://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('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Regular-webfont.eot');
  src: url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Regular-webfont.eot?#iefix') format('embedded-opentype'),
  url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/Roboto-Regular-webfont.woff') format('woff'),
  url('https://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('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Regular-webfont.eot');
  src: url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Regular-webfont.eot?#iefix') format('embedded-opentype'),
  url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Regular-webfont.woff') format('woff'),
  url('https://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('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Light-webfont.eot');
  src: url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Light-webfont.eot?#iefix') format('embedded-opentype'),
  url('https://img.ui-portal.de/ci/gmx/global/fonts/roboto/RobotoCondensed-Light-webfont.woff') format('woff'),
  url('https://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: #2269C3;
  text-decoration: none;
}

a:active,
a:visited,
.link-visited {
  color: #2269C3;
}

a:hover,
a:focus,
.link-base:hover,
.link-hover {
  color: #2269C3;
  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, h1 big, [class].size-9 {
  font-size: 64px;
  font-family: RobotoCondensed;
  line-height: 72px;
}

h1, h2 big, [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, h3 big, h1 small, [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, h4 big, h2 small, [class].size-4 {
  font-size: 24px;
  font-family: RobotoMedium;
  line-height: 32px;
}

h4, h5 big, h6 big, h3 small, [class].size-3 {
  font-size: 20px;
  font-family: RobotoMedium;
  line-height: 28px;
}

p, h5, h6, p big, [class].size-2 {
  font-size: 16px;
  font-family: RobotoRegular;
  line-height: 24px;
}

p small, h5 small, h6 small, .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, h1 big, [class].size-9 {
    font-size: 40px;
    font-family: RobotoCondensed;
    line-height: 48px;
  }

  h1, h2 big, [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, h3 big, h1 small, [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, h4 big, h2 small, [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, h1 big, [class].size-9 {
    font-size: 32px;
    font-family: RobotoCondensed;
    line-height: 40px;
  }

  h1, h2 big, [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, h3 big, h1 small, [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, h4 big, h2 small, [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;
}

/* Several predefined base font colors */
.color-a1-base {
  color: #6E9804;
}

.color-b1-base {
  color: #1C449B;
}

.color-b2-base {
  color: #1C449B;
}

.color-c1-base {
  color: #FFFFFF;
}

.color-c2-light50,
.footnote {
  color: #999999;
}

.color-d1-base {
  color: #D40000;
}

.color-d2-base {
  color: #F0BC00;
}

.color-d3-base {
  color: #5CB82A;
}

.color-d4-base {
  color: #1C8AD9;
}

[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 */

.backdrop-b1-base *[class][class]:not(.key),
.inverted h1,
.inverted h2,
.inverted h3,
.inverted h4,
.inverted [class][class][class].script,
.inverted p,
.inverted a,
.inverted label,
.inverted legend,
.inverted strong,
.inverted .size-7,
.inverted .size-6,
.inverted .size-5,
.inverted .section-headline > *:not(p):not(.subheadline) {
  color: #FFFFFF;
  text-shadow: none;
}

.backdrop-b1-base p > a:not(.button),
.inverted p > a:not(.button) {
  text-decoration: underline;
}

.backdrop-b1-base .uninverted *[class][class],
.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;
}

.backdrop-b1-base .uninverted a[class][class],
.inverted .uninverted a[class] {
  color: #2269C3;
  text-decoration: none;
}

.button {
  display: inline-block;
  padding: 5px 15px 5px 0px;
  border: 1px solid;
  min-height: 40px;
  font-style: normal;
  width: auto;
  letter-spacing: 0;
  text-indent: 15px;
  -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;
  vertical-align: middle;
  word-wrap: normal;
  overflow: hidden;
  max-width: 100%;
  text-overflow: ellipsis;
}

.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 {
  font-family: RobotoMedium, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  padding-top: 3px;
  padding-bottom: 3px;
  min-height: 32px;
}

.button.xl {
  padding-top: 9px;
  padding-bottom: 9px;
  min-height: 48px;
}

.button.xxl {
  font-size: 24px;
  font-weight: 400;
  line-height: 32px;
  padding-top: 11px;
  padding-bottom: 11px;
  min-height: 56px;
}

.button.xxxl {
  font-size: 24px;
  font-weight: 400;
  line-height: 32px;
  padding-top: 15px;
  padding-bottom: 15px;
  min-height: 64px;
}

.button > .icon {
  float: left;
  position: relative;
  margin-left: 7px;
  margin-right: -7px;
}

.m.button > .s.icon {
  margin-top: -1px;
  margin-bottom: -1px;
}

.l.button > .m.icon {
  margin-top: 2px;
  margin-bottom: 2px;
}

.xl.button > .l.icon {
  margin-top: -2px;
  margin-bottom: -2px;
}

.xxl.button > .xl.icon {
  margin-top: -4px;
  margin-bottom: -4px;
}

.xxxl.button > .xxl.icon {
  margin-top: -8px;
  margin-bottom: -8px;
}

.key.button:hover,
.key.button:focus,
.backdrop-b1-base .key.button:hover,
.backdrop-b1-base .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;
}

.ghost.service.button[class][class][class]:hover .icon,
.ghost.service.button[class][class][class]:focus .icon {
  background-position-x: 25%;
}

.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,
.backdrop-b1-base .button.service:hover,
.backdrop-b1-base .button.service:focus,
.backdrop-b1-base .ghost.button[class][class][class]:hover,
.backdrop-b1-base .ghost.button[class][class][class]:focus {
  color: #333333;
  border-color: #F3F3F3;
  background-color: #F3F3F3;
}

.key.button,
.key.button:active,
.backdrop-b1-base .key.button,
.backdrop-b1-base .key.button:active,
.ghost.key.button[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;
}

.ghost.service.button[class][class][class]:active .icon {
  background-position-x: 25%;
}

.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,
.backdrop-b1-base .button.service,
.backdrop-b1-base .button.service:active,
.backdrop-b1-base .ghost.button[class][class][class]:active {
  border-color: #FFFFFF;
  background-color: #FFFFFF;
  color: #333333;
}

.key.button[disabled][class][class],
.key.button[aria-disabled][class][class],
.backdrop-b1-base .key.button[disabled][class][class],
.backdrop-b1-base .key.button[aria-disabled][class][class] {
  color: #FFFFFF;
  background-color: #E5ECD2;
  border-color: #E5ECD2;
  cursor: default;
  cursor: not-allowed;
  text-shadow: none;
}

.service.button[disabled][class][class],
.service.button[aria-disabled][class][class] {
  color: #FFFFFF;
  background-color: #D6DDED;
  border-color: #D6DDED;
  cursor: default;
  cursor: not-allowed;
  text-shadow: none;
}

.secondary.button[disabled][class][class],
.secondary.button[aria-disabled][class][class] {
  color: #FFFFFF;
  background-color: #DADADA;
  border-color: #DADADA;
  cursor: default;
  cursor: not-allowed;
  text-shadow: none;
}

.inverted.button[disabled][class][class],
.inverted.button[aria-disabled][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;
}

.ghost.key.button[class][class][class][disabled],
.ghost.key.button[class][class][class][aria-disabled] {
  color: #E5ECD2;
  border-color: #E5ECD2;
  background-color: transparent;
}

.ghost.service.button[class][class][class] {
  color: #1C449B;
  background-color: transparent;
}

.ghost.service.button[class][class][class][disabled],
.ghost.service.button[class][class][class][aria-disabled] {
  color: #D6DDED;
  border-color: #D6DDED;
  background-color: transparent;
}

.ghost.secondary.button[class][class][class] {
  color: #999999;
  background-color: transparent;
}

.ghost.secondary.button[class][class][class][disabled],
.ghost.secondary.button[class][class][class][aria-disabled] {
  color: #DADADA;
  border-color: #DADADA;
  background-color: transparent;
}

.backdrop-b1-base .ghost.button[class][class][class],
.ghost.inverted.button[class][class][class] {
  color: #FFFFFF;
}

.ghost.inverted.button[class][class][class][disabled],
.ghost.inverted.button[class][class][class][aria-disabled] {
  border-color: #D6DDED;
  color: #D6DDED;
  background-color: transparent;
}

/* APP Buttons */
.button.app.store {
  background: transparent 0 0 no-repeat;
  background-size: cover;
  border: 0px solid;
  border-radius: 0px;
  text-indent: -9999em;
  display: inline-block;
  padding-right: 0;
}

.button.app.apple.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_applestore.svg);
}

[lang="en"] .button.app.apple.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_applestore_en.svg);
}

[lang="es"] .button.app.apple.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_applestore_es.svg);
}

[lang="fr"] .button.app.apple.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_applestore_fr.svg);
}

.button.app.google.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_googlestore.svg);
}

html[lang="en"] .button.app.google.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_googlestore_en.svg);
}

html[lang="es"] .button.app.google.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_googlestore_es.svg);
}

html[lang="fr"] .button.app.google.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_googlestore_fr.svg);
}

.button.app.windows.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_windowsstore.svg);
}

html[lang="en"] .button.app.windows.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_windowsstore_en.svg);
}

html[lang="es"] .button.app.windows.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_windowsstore_es.svg);
}

html[lang="fr"] .button.app.windows.store {
  background-image: url(//img.ui-portal.de/cd/ci/btn_windowsstore_fr.svg);
}

/* additional class for key/service/ghost buttons to trigger the app width */
.button.app {
  height: 40px;
  width: 140px;
}

.button.xl.app {
  height: 48px;
  width: 168px;
}

/* Bei zentrierter Darstellung kein float => WIP: in ueberarbeiteter form kein float mehr
   Zusatz-Abstand bei 'inline-block' mit Btn-Abstand ausgleichen */
.btn-wrapper {
  margin-left: -15px;
  margin-top: 4px;
  z-index: 9999;
  position: relative;
}

.hero .btn-wrapper {
  margin-left: -15px;
}

.btn-wrapper + .button-wrapper {
  margin-top: 0px;
}

.btn-wrapper[class][class]:last-child {
  margin-bottom: -20px;
}

/* Btn-Abstand bei Buttons mit btn-wrapper */
.btn-wrapper .button {
  margin-left: 15px;
  margin-right: 0px;
  margin-bottom: 20px;
}

.hero .btn-wrapper .button {
  margin-left: 15px;
}

/* CSS aus teaser.css ueberschreiben */
.btn-wrapper[class][class][class] .button {
  margin-top: 0px;
}

/* in m-/s-View sollen die Buttons per default l-size haben */
@media screen and (max-width: 979.9px) {
  .btn-wrapper .button.xl.app,
  .btn-wrapper .button.app.store {
    height: 40px;
    width: 140px;
    min-height: 40px;
    padding-bottom: 5px;
    padding-top: 5px;
  }
}

/* Special Requirement: ghost button - no focus behaviour by touch screen */
.js.touch .ghost.service.button[class]:focus {
  color: #1C449B;
  background-color: transparent;
}

.js.touch .backdrop-b1-base .ghost.service.button[class]:focus {
  color: #FFFFFF;
}

.icon {
  display: inline-block;
  color: transparent;
  outline: none;
  padding: 0px;
  height: 0px;
  text-indent: -9999em;
  background: url(https://img.ui-portal.de/cd/ci/gmx.net/brand.svg) no-repeat 0% 0%, url(https://img.ui-portal.de/cd/splash/gmx.net/service.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.default-hover[aria-label]:hover:after {
  color: #333333;
}

.icon.white[aria-label]:after,
.icon.white-hover[aria-label]:hover:after,
.icon.white-hover[aria-label]:focus:after,
.icon.white[data-icon-prefix-text]:before,
.icon.white-hover[data-icon-prefix-text]:hover:before,
.icon.white-hover[data-icon-prefix-text]:focus:before {
  color: #FFFFFF;
}

.icon.inactive[aria-label]:after,
.icon.inactive-hover[aria-label]:hover:after,
.icon.inactive-hover[aria-label]:focus:after,
.icon.inactive[data-icon-prefix-text]:before,
.icon.inactive-hover[data-icon-prefix-text]:hover:before,
.icon.inactive-hover[data-icon-prefix-text]:focus:before {
  color: #525252;
}

.icon.service[aria-label]:after,
.icon.service-hover[aria-label]:hover:after,
.icon.service-hover[aria-label]:focus:after,
.icon.service[data-icon-prefix-text]:before,
.icon.service-hover[data-icon-prefix-text]:hover:before,
.icon.service-hover[data-icon-prefix-text]:focus:before {
  color: #1C449B;
}

/*  */
.icon.service-light[aria-label]:after,
.icon.service-light-hover[aria-label]:hover:after,
.icon.service-light-hover[aria-label]:focus:after,
.icon.service-light[data-icon-prefix-text]:before,
.icon.service-light-hover[data-icon-prefix-text]:hover:before,
.icon.service-light-hover[data-icon-prefix-text]:focus:before {
  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.default-hover:hover, body:not(.touch) a:hover > .up.icon.default-hover, body:not(.touch) .up.icon.default-hover:focus, body:not(.touch) a:focus > .up.icon.default-hover {
  background-position: 0% 0%;
}

.up.icon.white, body:not(.touch) .up.icon.white-hover:hover, body:not(.touch) a:hover > .up.icon.white-hover, body:not(.touch) .up.icon.white-hover:focus, body:not(.touch) a:focus > .up.icon.white-hover {
  background-position: 25% 0%;
}

.up.icon.inactive, body:not(.touch) .up.icon.inactive-hover:hover, body:not(.touch) a:hover > .up.icon.inactive-hover, body:not(.touch) .up.icon.inactive-hover:focus, body:not(.touch) a:focus > .up.icon.inactive-hover {
  background-position: 50% 0%;
}

.up.icon.service, body:not(.touch) .up.icon.service-hover:hover, body:not(.touch) a:hover > .up.icon.service-hover, body:not(.touch) .up.icon.service-hover:focus, body:not(.touch) a:focus > .up.icon.service-hover {
  background-position: 75% 0%;
}

/*  */
.up.icon.service-light, body:not(.touch) .up.icon.service-light-hover:hover, body:not(.touch) a:hover > .up.icon.service-light-hover, body:not(.touch) .up.icon.service-light-hover:focus, body:not(.touch) a:focus > .up.icon.service-light-hover {
  background-position: 100% 0%;
}

/*  */
.down.icon, .down.icon.default, body:not(.touch) .down.icon.default-hover:hover, body:not(.touch) a:hover > .down.icon.default-hover, body:not(.touch) .down.icon.default-hover:focus, body:not(.touch) a:focus > .down.icon.default-hover {
  background-position: 0% 1.25%;
}

.down.icon.white, body:not(.touch) .down.icon.white-hover:hover, body:not(.touch) a:hover > .down.icon.white-hover, body:not(.touch) .down.icon.white-hover:focus, body:not(.touch) a:focus > .down.icon.white-hover {
  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, body:not(.touch) .down.icon.inactive-hover:focus, body:not(.touch) a:focus > .down.icon.inactive-hover {
  background-position: 50% 1.25%;
}

.down.icon.service, body:not(.touch) .down.icon.service-hover:hover, body:not(.touch) a:hover > .down.icon.service-hover, body:not(.touch) .down.icon.service-hover:focus, body:not(.touch) a:focus > .down.icon.service-hover {
  background-position: 75% 1.25%;
}

/*  */
.down.icon.service-light, body:not(.touch) .down.icon.service-light-hover:hover, body:not(.touch) a:hover > .down.icon.service-light-hover, body:not(.touch) .down.icon.service-light-hover:focus, body:not(.touch) a:focus > .down.icon.service-light-hover {
  background-position: 100% 1.25%;
}

/*  */
.prev.icon, .prev.icon.default, body:not(.touch) .prev.icon.default-hover:hover, body:not(.touch) a:hover > .prev.icon.default-hover, body:not(.touch) .prev.icon.default-hover:focus, body:not(.touch) a:focus > .prev.icon.default-hover {
  background-position: 0% 2.5%;
}

.prev.icon.white, body:not(.touch) .prev.icon.white-hover:hover, body:not(.touch) a:hover > .prev.icon.white-hover, body:not(.touch) .prev.icon.white-hover:focus, body:not(.touch) a:focus > .prev.icon.white-hover {
  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, body:not(.touch) .prev.icon.inactive-hover:focus, body:not(.touch) a:focus > .prev.icon.inactive-hover {
  background-position: 50% 2.5%;
}

.prev.icon.service, body:not(.touch) .prev.icon.service-hover:hover, body:not(.touch) a:hover > .prev.icon.service-hover, body:not(.touch) .prev.icon.service-hover:focus, body:not(.touch) a:focus > .prev.icon.service-hover {
  background-position: 75% 2.5%;
}

/*  */
.prev.icon.service-light, body:not(.touch) .prev.icon.service-light-hover:hover, body:not(.touch) a:hover > .prev.icon.service-light-hover, body:not(.touch) .prev.icon.service-light-hover:focus, body:not(.touch) a:focus > .prev.icon.service-light-hover {
  background-position: 100% 2.5%;
}

/*  */
.next.icon, .next.icon.default, body:not(.touch) .next.icon.default-hover:hover, body:not(.touch) a:hover > .next.icon.default-hover, body:not(.touch) .next.icon.default-hover:focus, body:not(.touch) a:focus > .next.icon.default-hover {
  background-position: 0% 3.75%;
}

.next.icon.white, body:not(.touch) .next.icon.white-hover:hover, body:not(.touch) a:hover > .next.icon.white-hover, body:not(.touch) .next.icon.white-hover:focus, body:not(.touch) a:focus > .next.icon.white-hover {
  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, body:not(.touch) .next.icon.inactive-hover:focus, body:not(.touch) a:focus > .next.icon.inactive-hover {
  background-position: 50% 3.75%;
}

.next.icon.service, body:not(.touch) .next.icon.service-hover:hover, body:not(.touch) a:hover > .next.icon.service-hover, body:not(.touch) .next.icon.service-hover:focus, body:not(.touch) a:focus > .next.icon.service-hover {
  background-position: 75% 3.75%;
}

/*  */
.next.icon.service-light, body:not(.touch) .next.icon.service-light-hover:hover, body:not(.touch) a:hover > .next.icon.service-light-hover, body:not(.touch) .next.icon.service-light-hover:focus, body:not(.touch) a:focus > .next.icon.service-light-hover {
  background-position: 100% 3.75%;
}

/*  */
.burger.icon, .burger.icon.default, body:not(.touch) .burger.icon.default-hover:hover, body:not(.touch) a:hover > .burger.icon.default-hover, body:not(.touch) .burger.icon.default-hover:focus, body:not(.touch) a:focus > .burger.icon.default-hover {
  background-position: 0% 5%;
}

.burger.icon.white, body:not(.touch) .burger.icon.white-hover:hover, body:not(.touch) a:hover > .burger.icon.white-hover, body:not(.touch) .burger.icon.white-hover:focus, body:not(.touch) a:focus > .burger.icon.white-hover {
  background-position: 25% 5%;
}

.burger.icon.inactive, body:not(.touch) .burger.icon.inactive-hover:hover, body:not(.touch) a:hover > .burger.icon.inactive-hover, body:not(.touch) .burger.icon.inactive-hover:focus, body:not(.touch) a:focus > .burger.icon.inactive-hover {
  background-position: 50% 5%;
}

.burger.icon.service, body:not(.touch) .burger.icon.service-hover:hover, body:not(.touch) a:hover > .burger.icon.service-hover, body:not(.touch) .burger.icon.service-hover:focus, body:not(.touch) a:focus > .burger.icon.service-hover {
  background-position: 75% 5%;
}

/*  */
.burger.icon.service-light, body:not(.touch) .burger.icon.service-light-hover:hover, body:not(.touch) a:hover > .burger.icon.service-light-hover, body:not(.touch) .burger.icon.service-light-hover:focus, body:not(.touch) a:focus > .burger.icon.service-light-hover {
  background-position: 100% 5%;
}

/*  */
.home.icon, .home.icon.default, body:not(.touch) .home.icon.default-hover:hover, body:not(.touch) a:hover > .home.icon.default-hover, body:not(.touch) .home.icon.default-hover:focus, body:not(.touch) a:focus > .home.icon.default-hover {
  background-position: 0% 6.25%;
}

.home.icon.white, body:not(.touch) .home.icon.white-hover:hover, body:not(.touch) a:hover > .home.icon.white-hover, body:not(.touch) .home.icon.white-hover:focus, body:not(.touch) a:focus > .home.icon.white-hover {
  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, body:not(.touch) .home.icon.inactive-hover:focus, body:not(.touch) a:focus > .home.icon.inactive-hover {
  background-position: 50% 6.25%;
}

.home.icon.service, body:not(.touch) .home.icon.service-hover:hover, body:not(.touch) a:hover > .home.icon.service-hover, body:not(.touch) .home.icon.service-hover:focus, body:not(.touch) a:focus > .home.icon.service-hover {
  background-position: 75% 6.25%;
}

/*  */
.home.icon.service-light, body:not(.touch) .home.icon.service-light-hover:hover, body:not(.touch) a:hover > .home.icon.service-light-hover, body:not(.touch) .home.icon.service-light-hover:focus, body:not(.touch) a:focus > .home.icon.service-light-hover {
  background-position: 100% 6.25%;
}

/*  */
.close.icon, .close.icon.default, body:not(.touch) .close.icon.default-hover:hover, body:not(.touch) a:hover > .close.icon.default-hover, body:not(.touch) .close.icon.default-hover:focus, body:not(.touch) a:focus > .close.icon.default-hover {
  background-position: 0% 7.5%;
}

.close.icon.white, body:not(.touch) .close.icon.white-hover:hover, body:not(.touch) a:hover > .close.icon.white-hover, body:not(.touch) .close.icon.white-hover:focus, body:not(.touch) a:focus > .close.icon.white-hover {
  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, body:not(.touch) .close.icon.inactive-hover:focus, body:not(.touch) a:focus > .close.icon.inactive-hover {
  background-position: 50% 7.5%;
}

.close.icon.service, body:not(.touch) .close.icon.service-hover:hover, body:not(.touch) a:hover > .close.icon.service-hover, body:not(.touch) .close.icon.service-hover:focus, body:not(.touch) a:focus > .close.icon.service-hover {
  background-position: 75% 7.5%;
}

/*  */
.close.icon.service-light, body:not(.touch) .close.icon.service-light-hover:hover, body:not(.touch) a:hover > .close.icon.service-light-hover, body:not(.touch) .close.icon.service-light-hover:focus, body:not(.touch) a:focus > .close.icon.service-light-hover {
  background-position: 100% 7.5%;
}

/*  */
.logout.icon, .logout.icon.default, body:not(.touch) .logout.icon.default-hover:hover, body:not(.touch) a:hover > .logout.icon.default-hover, body:not(.touch) .logout.icon.default-hover:focus, body:not(.touch) a:focus > .logout.icon.default-hover {
  background-position: 0% 8.75%;
}

.logout.icon.white, body:not(.touch) .logout.icon.white-hover:hover, body:not(.touch) a:hover > .logout.icon.white-hover, body:not(.touch) .logout.icon.white-hover:focus, body:not(.touch) a:focus > .logout.icon.white-hover {
  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, body:not(.touch) .logout.icon.inactive-hover:focus, body:not(.touch) a:focus > .logout.icon.inactive-hover {
  background-position: 50% 8.75%;
}

.logout.icon.service, body:not(.touch) .logout.icon.service-hover:hover, body:not(.touch) a:hover > .logout.icon.service-hover, body:not(.touch) .logout.icon.service-hover:focus, body:not(.touch) a:focus > .logout.icon.service-hover {
  background-position: 75% 8.75%;
}

/*  */
.logout.icon.service-light, body:not(.touch) .logout.icon.service-light-hover:hover, body:not(.touch) a:hover > .logout.icon.service-light-hover, body:not(.touch) .logout.icon.service-light-hover:focus, body:not(.touch) a:focus > .logout.icon.service-light-hover {
  background-position: 100% 8.75%;
}

/*  */
.search.icon, .search.icon.default, body:not(.touch) .search.icon.default-hover:hover, body:not(.touch) a:hover > .search.icon.default-hover, body:not(.touch) .search.icon.default-hover:focus, body:not(.touch) a:focus > .search.icon.default-hover {
  background-position: 0% 10%;
}

.search.icon.white, body:not(.touch) .search.icon.white-hover:hover, body:not(.touch) a:hover > .search.icon.white-hover, body:not(.touch) .search.icon.white-hover:focus, body:not(.touch) a:focus > .search.icon.white-hover {
  background-position: 25% 10%;
}

.search.icon.inactive, body:not(.touch) .search.icon.inactive-hover:hover, body:not(.touch) a:hover > .search.icon.inactive-hover, body:not(.touch) .search.icon.inactive-hover:focus, body:not(.touch) a:focus > .search.icon.inactive-hover {
  background-position: 50% 10%;
}

.search.icon.service, body:not(.touch) .search.icon.service-hover:hover, body:not(.touch) a:hover > .search.icon.service-hover, body:not(.touch) .search.icon.service-hover:focus, body:not(.touch) a:focus > .search.icon.service-hover {
  background-position: 75% 10%;
}

/*  */
.search.icon.service-light, body:not(.touch) .search.icon.service-light-hover:hover, body:not(.touch) a:hover > .search.icon.service-light-hover, body:not(.touch) .search.icon.service-light-hover:focus, body:not(.touch) a:focus > .search.icon.service-light-hover {
  background-position: 100% 10%;
}

/*  */
.person.icon, .person.icon.default, body:not(.touch) .person.icon.default-hover:hover, body:not(.touch) a:hover > .person.icon.default-hover, body:not(.touch) .person.icon.default-hover:focus, body:not(.touch) a:focus > .person.icon.default-hover {
  background-position: 0% 11.25%;
}

.person.icon.white, body:not(.touch) .person.icon.white-hover:hover, body:not(.touch) a:hover > .person.icon.white-hover, body:not(.touch) .person.icon.white-hover:focus, body:not(.touch) a:focus > .person.icon.white-hover {
  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, body:not(.touch) .person.icon.inactive-hover:focus, body:not(.touch) a:focus > .person.icon.inactive-hover {
  background-position: 50% 11.25%;
}

.person.icon.service, body:not(.touch) .person.icon.service-hover:hover, body:not(.touch) a:hover > .person.icon.service-hover, body:not(.touch) .person.icon.service-hover:focus, body:not(.touch) a:focus > .person.icon.service-hover {
  background-position: 75% 11.25%;
}

/*  */
.person.icon.service-light, body:not(.touch) .person.icon.service-light-hover:hover, body:not(.touch) a:hover > .person.icon.service-light-hover, body:not(.touch) .person.icon.service-light-hover:focus, body:not(.touch) a:focus > .person.icon.service-light-hover {
  background-position: 100% 11.25%;
}

/*  */
.basket.icon, .basket.icon.default, body:not(.touch) .basket.icon.default-hover:hover, body:not(.touch) a:hover > .basket.icon.default-hover, body:not(.touch) .basket.icon.default-hover:focus, body:not(.touch) a:focus > .basket.icon.default-hover {
  background-position: 0% 12.5%;
}

.basket.icon.white, body:not(.touch) .basket.icon.white-hover:hover, body:not(.touch) a:hover > .basket.icon.white-hover, body:not(.touch) .basket.icon.white-hover:focus, body:not(.touch) a:focus > .basket.icon.white-hover {
  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, body:not(.touch) .basket.icon.inactive-hover:focus, body:not(.touch) a:focus > .basket.icon.inactive-hover {
  background-position: 50% 12.5%;
}

.basket.icon.service, body:not(.touch) .basket.icon.service-hover:hover, body:not(.touch) a:hover > .basket.icon.service-hover, body:not(.touch) .basket.icon.service-hover:focus, body:not(.touch) a:focus > .basket.icon.service-hover {
  background-position: 75% 12.5%;
}

/*  */
.basket.icon.service-light, body:not(.touch) .basket.icon.service-light-hover:hover, body:not(.touch) a:hover > .basket.icon.service-light-hover, body:not(.touch) .basket.icon.service-light-hover:focus, body:not(.touch) a:focus > .basket.icon.service-light-hover {
  background-position: 100% 12.5%;
}

/*  */
.eye.icon, .eye.icon.default, body:not(.touch) .eye.icon.default-hover:hover, body:not(.touch) a:hover > .eye.icon.default-hover, body:not(.touch) .eye.icon.default-hover:focus, body:not(.touch) a:focus > .eye.icon.default-hover {
  background-position: 0% 13.75%;
}

.eye.icon.white, body:not(.touch) .eye.icon.white-hover:hover, body:not(.touch) a:hover > .eye.icon.white-hover, body:not(.touch) .eye.icon.white-hover:focus, body:not(.touch) a:focus > .eye.icon.white-hover {
  background-position: 25% 13.75%;
}

.eye.icon.inactive, body:not(.touch) .eye.icon.inactive-hover:hover, body:not(.touch) a:hover > .eye.icon.inactive-hover, body:not(.touch) .eye.icon.inactive-hover:focus, body:not(.touch) a:focus > .eye.icon.inactive-hover {
  background-position: 50% 13.75%;
}

.eye.icon.service, body:not(.touch) .eye.icon.service-hover:hover, body:not(.touch) a:hover > .eye.icon.service-hover, body:not(.touch) .eye.icon.service-hover:focus, body:not(.touch) a:focus > .eye.icon.service-hover {
  background-position: 75% 13.75%;
}

/*  */
.eye.icon.service-light, body:not(.touch) .eye.icon.service-light-hover:hover, body:not(.touch) a:hover > .eye.icon.service-light-hover, body:not(.touch) .eye.icon.service-light-hover:focus, body:not(.touch) a:focus > .eye.icon.service-light-hover {
  background-position: 100% 13.75%;
}

/*  */
.hotline.icon, .hotline.icon.default, body:not(.touch) .hotline.icon.default-hover:hover, body:not(.touch) a:hover > .hotline.icon.default-hover, body:not(.touch) .hotline.icon.default-hover:focus, body:not(.touch) a:focus > .hotline.icon.default-hover {
  background-position: 0% 15%;
}

.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.inactive, body:not(.touch) .hotline.icon.inactive-hover:hover, body:not(.touch) a:hover > .hotline.icon.inactive-hover, body:not(.touch) .hotline.icon.inactive-hover:focus, body:not(.touch) a:focus > .hotline.icon.inactive-hover {
  background-position: 50% 15%;
}

.hotline.icon.service, body:not(.touch) .hotline.icon.service-hover:hover, body:not(.touch) a:hover > .hotline.icon.service-hover, body:not(.touch) .hotline.icon.service-hover:focus, body:not(.touch) a:focus > .hotline.icon.service-hover {
  background-position: 75% 15%;
}

/*  */
.hotline.icon.service-light, body:not(.touch) .hotline.icon.service-light-hover:hover, body:not(.touch) a:hover > .hotline.icon.service-light-hover, body:not(.touch) .hotline.icon.service-light-hover:focus, body:not(.touch) a:focus > .hotline.icon.service-light-hover {
  background-position: 100% 15%;
}

/*  */
.lock.icon, .lock.icon.default, body:not(.touch) .lock.icon.default-hover:hover, body:not(.touch) a:hover > .lock.icon.default-hover, body:not(.touch) .lock.icon.default-hover:focus, body:not(.touch) a:focus > .lock.icon.default-hover {
  background-position: 0% 16.25%;
}

.lock.icon.white, body:not(.touch) .lock.icon.white-hover:hover, body:not(.touch) a:hover > .lock.icon.white-hover, body:not(.touch) .lock.icon.white-hover:focus, body:not(.touch) a:focus > .lock.icon.white-hover {
  background-position: 25% 16.25%;
}

.lock.icon.inactive, body:not(.touch) .lock.icon.inactive-hover:hover, body:not(.touch) a:hover > .lock.icon.inactive-hover, body:not(.touch) .lock.icon.inactive-hover:focus, body:not(.touch) a:focus > .lock.icon.inactive-hover {
  background-position: 50% 16.25%;
}

.lock.icon.service, body:not(.touch) .lock.icon.service-hover:hover, body:not(.touch) a:hover > .lock.icon.service-hover, body:not(.touch) .lock.icon.service-hover:focus, body:not(.touch) a:focus > .lock.icon.service-hover {
  background-position: 75% 16.25%;
}

/*  */
.lock.icon.service-light, body:not(.touch) .lock.icon.service-light-hover:hover, body:not(.touch) a:hover > .lock.icon.service-light-hover, body:not(.touch) .lock.icon.service-light-hover:focus, body:not(.touch) a:focus > .lock.icon.service-light-hover {
  background-position: 100% 16.25%;
}

/*  */
.edit.icon, .edit.icon.default, body:not(.touch) .edit.icon.default-hover:hover, body:not(.touch) a:hover > .edit.icon.default-hover, body:not(.touch) .edit.icon.default-hover:focus, body:not(.touch) a:focus > .edit.icon.default-hover {
  background-position: 0% 17.5%;
}

.edit.icon.white, body:not(.touch) .edit.icon.white-hover:hover, body:not(.touch) a:hover > .edit.icon.white-hover, body:not(.touch) .edit.icon.white-hover:focus, body:not(.touch) a:focus > .edit.icon.white-hover {
  background-position: 25% 17.5%;
}

.edit.icon.inactive, body:not(.touch) .edit.icon.inactive-hover:hover, body:not(.touch) a:hover > .edit.icon.inactive-hover, body:not(.touch) .edit.icon.inactive-hover:focus, body:not(.touch) a:focus > .edit.icon.inactive-hover {
  background-position: 50% 17.5%;
}

.edit.icon.service, body:not(.touch) .edit.icon.service-hover:hover, body:not(.touch) a:hover > .edit.icon.service-hover, body:not(.touch) .edit.icon.service-hover:focus, body:not(.touch) a:focus > .edit.icon.service-hover {
  background-position: 75% 17.5%;
}

/*  */
.edit.icon.service-light, body:not(.touch) .edit.icon.service-light-hover:hover, body:not(.touch) a:hover > .edit.icon.service-light-hover, body:not(.touch) .edit.icon.service-light-hover:focus, body:not(.touch) a:focus > .edit.icon.service-light-hover {
  background-position: 100% 17.5%;
}

/*  */
.delete.icon, .delete.icon.default, body:not(.touch) .delete.icon.default-hover:hover, body:not(.touch) a:hover > .delete.icon.default-hover, body:not(.touch) .delete.icon.default-hover:focus, body:not(.touch) a:focus > .delete.icon.default-hover {
  background-position: 0% 18.75%;
}

.delete.icon.white, body:not(.touch) .delete.icon.white-hover:hover, body:not(.touch) a:hover > .delete.icon.white-hover, body:not(.touch) .delete.icon.white-hover:focus, body:not(.touch) a:focus > .delete.icon.white-hover {
  background-position: 25% 18.75%;
}

.delete.icon.inactive, body:not(.touch) .delete.icon.inactive-hover:hover, body:not(.touch) a:hover > .delete.icon.inactive-hover, body:not(.touch) .delete.icon.inactive-hover:focus, body:not(.touch) a:focus > .delete.icon.inactive-hover {
  background-position: 50% 18.75%;
}

.delete.icon.service, body:not(.touch) .delete.icon.service-hover:hover, body:not(.touch) a:hover > .delete.icon.service-hover, body:not(.touch) .delete.icon.service-hover:focus, body:not(.touch) a:focus > .delete.icon.service-hover {
  background-position: 75% 18.75%;
}

/*  */
.delete.icon.service-light, body:not(.touch) .delete.icon.service-light-hover:hover, body:not(.touch) a:hover > .delete.icon.service-light-hover, body:not(.touch) .delete.icon.service-light-hover:focus, body:not(.touch) a:focus > .delete.icon.service-light-hover {
  background-position: 100% 18.75%;
}

/*  */
.success.icon, .success.icon.default, body:not(.touch) .success.icon.default-hover:hover, body:not(.touch) a:hover > .success.icon.default-hover, body:not(.touch) .success.icon.default-hover:focus, body:not(.touch) a:focus > .success.icon.default-hover {
  background-position: 0% 22.5%;
}

.success.icon.white, body:not(.touch) .success.icon.white-hover:hover, body:not(.touch) a:hover > .success.icon.white-hover, body:not(.touch) .success.icon.white-hover:focus, body:not(.touch) a:focus > .success.icon.white-hover {
  background-position: 25% 22.5%;
}

.info.icon, .info.icon.default, body:not(.touch) .info.icon.default-hover:hover, body:not(.touch) a:hover > .info.icon.default-hover, body:not(.touch) .info.icon.default-hover:focus, body:not(.touch) a:focus > .info.icon.default-hover {
  background-position: 0% 23.75%;
}

.info.icon.white, body:not(.touch) .info.icon.white-hover:hover, body:not(.touch) a:hover > .info.icon.white-hover, body:not(.touch) .info.icon.white-hover:focus, body:not(.touch) a:focus > .info.icon.white-hover {
  background-position: 25% 23.75%;
}

.warning.icon, .warning.icon.default, body:not(.touch) .warning.icon.default-hover:hover, body:not(.touch) a:hover > .warning.icon.default-hover, body:not(.touch) .warning.icon.default-hover:focus, body:not(.touch) a:focus > .warning.icon.default-hover {
  background-position: 0% 25%;
}

.warning.icon.white, body:not(.touch) .warning.icon.white-hover:hover, body:not(.touch) a:hover > .warning.icon.white-hover, body:not(.touch) .warning.icon.white-hover:focus, body:not(.touch) a:focus > .warning.icon.white-hover {
  background-position: 25% 25%;
}

.error.icon, .error.icon.default, body:not(.touch) .error.icon.default-hover:hover, body:not(.touch) a:hover > .error.icon.default-hover, body:not(.touch) .error.icon.default-hover:focus, body:not(.touch) a:focus > .error.icon.default-hover {
  background-position: 0% 26.25%;
}

.error.icon.white, body:not(.touch) .error.icon.white-hover:hover, body:not(.touch) a:hover > .error.icon.white-hover, body:not(.touch) .error.icon.white-hover:focus, body:not(.touch) a:focus > .error.icon.white-hover {
  background-position: 25% 26.25%;
}

.telephone.icon, .telephone.icon.default, body:not(.touch) .telephone.icon.default-hover:hover, body:not(.touch) a:hover > .telephone.icon.default-hover, body:not(.touch) .telephone.icon.default-hover:focus, body:not(.touch) a:focus > .telephone.icon.default-hover {
  background-position: 0% 32.5%;
}

.telephone.icon.white, body:not(.touch) .telephone.icon.white-hover:hover, body:not(.touch) a:hover > .telephone.icon.white-hover, body:not(.touch) .telephone.icon.white-hover:focus, body:not(.touch) a:focus > .telephone.icon.white-hover {
  background-position: 25% 32.5%;
}

.telephone.icon.inactive, body:not(.touch) .telephone.icon.inactive-hover:hover, body:not(.touch) a:hover > .telephone.icon.inactive-hover, body:not(.touch) .telephone.icon.inactive-hover:focus, body:not(.touch) a:focus > .telephone.icon.inactive-hover {
  background-position: 50% 32.5%;
}

.telephone.icon.service, body:not(.touch) .telephone.icon.service-hover:hover, body:not(.touch) a:hover > .telephone.icon.service-hover, body:not(.touch) .telephone.icon.service-hover:focus, body:not(.touch) a:focus > .telephone.icon.service-hover {
  background-position: 75% 32.5%;
}

/*  */
.telephone.icon.service-light, body:not(.touch) .telephone.icon.service-light-hover:hover, body:not(.touch) a:hover > .telephone.icon.service-light-hover, body:not(.touch) .telephone.icon.service-light-hover:focus, body:not(.touch) a:focus > .telephone.icon.service-light-hover {
  background-position: 100% 32.5%;
}

/*  */
.label,
.label > img {
  display: inline-block;
}

.label.top-left,
.label.top-center,
.label.top-right,
.label.center-left,
.label.center,
.label.center-right,
.label.bottom-left,
.label.bottom-center,
.label.bottom-right {
  position: absolute;
  margin: 10px;
  z-index: 3;
}

.label.top-left {
  top: 0px;
  left: 0px;
}

.label.top-center {
  top: 0px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media screen and (max-width: 659.9px) {
  .label.s-top-center {
    top: 0px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    text-align: center;
  }
}

.label.top-right {
  top: 0px;
  right: 0px;
}

.label.center-left {
  top: 50%;
  left: 0px;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.label.center {
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  margin: 0px;
}

.label.center-right {
  top: 50%;
  right: 0px;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.label.bottom-left {
  bottom: 0px;
  left: 0px;
}

.label.bottom-center {
  bottom: 0px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.label.bottom-right {
  bottom: 0px;
  right: 0px;
}

.label.service {
  padding: 0px 3px;
  border-radius: 3px;
  background: #1C449B;
  color: #FFFFFF;
}

.list {
  list-style: none;
}

.list li {
  padding: 7px 0px;
  position: relative;
}

.list li:before {
  content: "";
  display: inline-block;
  background-color: #1C449B;
}

.backdrop-b1-base .list li:before {
  background-color: #FFFFFF;
}

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;
}

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.check.list:not([class*="size-2"]) li,
ol.list li {
  padding: 5px 0px;
}

ul.m.check.list li {
  padding: 7px 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.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);
}

.backdrop-b1-base ul.check.list li:after {
  -webkit-box-shadow: 0px 1px 0px #1C449B, 0px 2px 0px #1C449B, 0px 4px 0px #1C449B, 0px 6px 0px #1C449B, 0px 8px 0px #1C449B,
  2px 8px 0px #1C449B, 4px 8px 0px #1C449B, 6px 8px 0px #1C449B, 8px 8px 0px #1C449B, 10px 8px 0px #1C449B;
  box-shadow: 0px 1px 0px #1C449B, 0px 2px 0px #1C449B, 0px 4px 0px #1C449B, 0px 6px 0px #1C449B, 0px 8px 0px #1C449B,
  2px 8px 0px #1C449B, 4px 8px 0px #1C449B, 6px 8px 0px #1C449B, 8px 8px 0px #1C449B, 10px 8px 0px #1C449B;
}

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);
}

.backdrop-b1-base ul.m.check.list li:after {
  -webkit-box-shadow: 0px 2px 0px #1C449B, 0px 2px 0px #1C449B, 0px 4px 0px #1C449B, 0px 6px 0px #1C449B, 0px 8px 0px #1C449B,
  2px 8px 0px #1C449B, 4px 8px 0px #1C449B, 6px 8px 0px #1C449B, 8px 8px 0px #1C449B, 10px 8px 0px #1C449B;
  box-shadow: 0px 2px 0px #1C449B, 0px 2px 0px #1C449B, 0px 4px 0px #1C449B, 0px 6px 0px #1C449B, 0px 8px 0px #1C449B,
  2px 8px 0px #1C449B, 4px 8px 0px #1C449B, 6px 8px 0px #1C449B, 8px 8px 0px #1C449B, 10px 8px 0px #1C449B;
}

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;
}

.backdrop-b1-base ol.list li:before {
  color: #1C449B;
}

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;
}

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;
}

/* cat teaser 3.2.2 */
.teaser {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: stretch;
  align-items: stretch;
  position: relative;
}

.horizontal.teaser {
  -webkit-flex-direction: row;
  flex-direction: row;
}

.horizontal.horizontal-reverse.teaser {
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.container:not(.hero):not(.carousel) .group-content > .l-12.horizontal.horizontal-reverse.teaser {
  margin-top: 48px;
  margin-bottom: 48px;
}

/*
.horizontal.teaser.va-center {
    -webkit-align-items: center;
            align-items: center;
    -webkit-justify-content: flex-start;
            justify-content: flex-start;
}
*/
/* Test: Positionierung des Buttons in einer Hoehe bei unterschiedlichen Content-Hoehen */
.teaser > .content.posBottom-lastChild[class][class],
.teaser > .content.posBottom-order4[class][class] {
  flex-grow: 1;
}

.teaser > .posBottom-lastchild[class] > *:last-child,
.teaser > .posBottom-order4[class] > *.order-4 {
  margin-top: auto;
}

@media screen and (min-width: 980px) {
  .teaser > .l-posBottom-lastchild[class] > *:last-child,
  .teaser > .l-posBottom-order4[class] > .l-order-4,
  .teaser > .l-posBottom-order4[class] > .order-4 {
    margin-top: auto;
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .teaser > .m-posBottom-lastchild[class] > *:last-child,
  .teaser > .m-posBottom-order4[class] > .m-order-4,
  .teaser > .m-posBottom-order4[class] > .order-4 {
    margin-top: auto;
  }
}

@media screen and (max-width: 659.9px) {
  .teaser > .s-posBottom-lastchild[class] > *:last-child,
  .teaser > .s-posBottom-order4[class] > *.s-order-4,
  .teaser > .s-posBottom-order4[class] > *.order-4 {
    margin-top: auto;
  }
}

/* nur fuer dev */
/* Test, ob backdrop fuer den Teaser generell mit 10px padding und top: -10px ausgestattet werden soll */
/* wegen Hero */
.teaser:not(.hero)[class*="backdrop"]::before {
  border-radius: 4px;
  padding-top: 10px;
  padding-bottom: 10px;
  top: -10px;
}

.js .teaser.linked {
  cursor: pointer;
}

.js .backdrop-b1-base .teaser.

linked
(
[class*="backdrop-hover"]

)
:hover,
.js .inverted .teaser.

linked
(
[class*="backdrop-hover"]

)
:hover,
.js .teaser.inverted.

linked
(
[class*="backdrop-hover"]

)
:hover {
  background-color: transparent;
}

.backdrop-b1-base .teaser p > a:not(.button),
.backdrop-b1-base.teaser p > a:not(.button) {
  color: #FFFFFF;
}

/* Soll durch Alternative mit backdrop-hover abgeloest werden => bitte umstellen!!! */
/* Muss wegen den verlinkten Circled-Teasern (kein BG!) auskommentiert bleiben */
/*.js .linked.teaser:not([class*="backdrop-hover"]):not(.hero) {
    &:hover {
        background-color: ~"#D6DDED";
        border-radius: ~"4px";
    }
    padding-top: 10px;
    padding-bottom: 10px;
}
.js .inverted .teaser.linked:not([class*="backdrop-hover"]):not(.hero):hover,
.js .teaser.inverted.linked:not([class*="backdrop-hover"]):not(.hero):hover {
    background-color: transparent;
}
*/
/*.teaser[class*=" h-"],
.teaser[class^="h-"] {
    overflow: hidden;
}*/
/*
*:not([class*="vspace-"]) > .teaser[class] {
    margin-bottom: 40px;
}
*:not([class*="vspace-"]) > .tiled.teaser {
    margin-bottom: 20px;
}
*/
/* Abstaede m?ssen vspace ueberschreiben */
.teaser[class] {
  margin-bottom: 40px;
}

.tiled.teaser {
  margin-bottom: 20px;
}

/* im carousel kein abstand nach unten */
.carousel .teaser {
  margin-bottom: 0;
}

.h-1[class][class][class] {
  height: 60px;
}

.h-2[class][class][class] {
  height: 140px;
}

.h-3[class][class][class] {
  height: 220px;
}

.h-4[class][class][class] {
  height: 300px;
}

.h-5[class][class][class] {
  height: 380px;
}

.h-6[class][class][class] {
  height: 460px;
}

.h-7[class][class][class] {
  height: 540px;
}

.h-8[class][class][class] {
  height: 620px;
}

.h-9[class][class][class] {
  height: 700px;
}

.h-10[class][class][class] {
  height: 780px;
}

.h-11[class][class][class] {
  height: 860px;
}

.h-12[class][class][class] {
  height: 940px;
}

.h-full[class][class][class] {
  height: 100vh;
}

.h-half[class][class][class] {
  height: 50vh;
}

.h-auto[class][class][class] {
  height: auto;
  display: block;
}

.h-100[class][class][class] {
  height: 100%;
  display: block;
}

.order-1 {
  -webkit-order: 1;
  order: 1;
}

.order-2 {
  -webkit-order: 2;
  order: 2;
}

.order-3 {
  -webkit-order: 3;
  order: 3;
}

.order-4 {
  -webkit-order: 4;
  order: 4;
}

/*  */
@media screen and (min-width: 980px) {
  .l-horizontal.teaser {
    -webkit-flex-direction: row;
    flex-direction: row;
  }

  .horizontal.l-horizontal-reverse.teaser,
  .l-horizontal.l-horizontal-reverse.teaser {
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .container:not(.hero):not(.carousel) .group-content > .l-12.horizontal.l-horizontal-reverse.teaser,
  .container:not(.hero):not(.carousel) .group-content > .l-12.l-horizontal.l-horizontal-reverse.teaser {
    margin-top: 48px;
    margin-bottom: 48px;
  }

  /*
    .l-horizontal.teaser.va-center {
        -webkit-align-items: center;
                align-items: center;
    -webkit-justify-content: flex-start;
            justify-content: flex-start;
    }*/
  .l-h-1[class][class][class] {
    height: 60px;
  }

  .l-h-2[class][class][class] {
    height: 140px;
  }

  .l-h-3[class][class][class] {
    height: 220px;
  }

  .l-h-4[class][class][class] {
    height: 300px;
  }

  .l-h-5[class][class][class] {
    height: 380px;
  }

  .l-h-6[class][class][class] {
    height: 460px;
  }

  .l-h-7[class][class][class] {
    height: 540px;
  }

  .l-h-8[class][class][class] {
    height: 620px;
  }

  .l-h-9[class][class][class] {
    height: 700px;
  }

  .l-h-10[class][class][class] {
    height: 780px;
  }

  .l-h-11[class][class][class] {
    height: 860px;
  }

  .l-h-12[class][class][class] {
    height: 940px;
  }

  .l-h-full[class][class][class] {
    height: 100vh;
  }

  .l-h-half[class][class][class] {
    height: 50vh;
  }

  .l-h-auto[class][class][class] {
    height: auto;
    display: block;
  }

  .l-order-1 {
    -webkit-order: 1;
    order: 1;
  }

  .l-order-2 {
    -webkit-order: 2;
    order: 2;
  }

  .l-order-3 {
    -webkit-order: 3;
    order: 3;
  }

  .l-order-4 {
    -webkit-order: 4;
    order: 4;
  }
}

@media screen and (max-width: 979.9px) {
  .m-horizontal.m-horizontal-reverse.teaser {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
    align-items: center;
  }

  .m-horizontal.m-horizontal-reverse.teaser .visual {
    position: relative;
    top: 20px;
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .m-horizontal.teaser {
    -webkit-flex-direction: row;
    flex-direction: row;
  }

  .horizontal.m-horizontal-reverse.teaser {
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .container:not(.hero):not(.carousel) .group-content > .m-8.horizontal.m-horizontal-reverse.teaser,
  .container:not(.hero):not(.carousel) .group-content > .m-8.m-horizontal.m-horizontal-reverse.teaser {
    margin-top: 48px;
    margin-bottom: 48px;
  }

  /*
    .m-horizontal.teaser.va-center {
        -webkit-align-items: center;
                align-items: center;
    -webkit-justify-content: flex-start;
            justify-content: flex-start;
    }*/
  .m-h-1[class][class][class] {
    height: 60px;
  }

  .m-h-2[class][class][class] {
    height: 140px;
  }

  .m-h-3[class][class][class] {
    height: 220px;
  }

  .m-h-4[class][class][class] {
    height: 300px;
  }

  .m-h-5[class][class][class] {
    height: 380px;
  }

  .m-h-6[class][class][class] {
    height: 460px;
  }

  .m-h-7[class][class][class] {
    height: 540px;
  }

  .m-h-8[class][class][class] {
    height: 620px;
  }

  .m-h-9[class][class][class] {
    height: 700px;
  }

  .m-h-10[class][class][class] {
    height: 780px;
  }

  .m-h-11[class][class][class] {
    height: 860px;
  }

  .m-h-12[class][class][class] {
    height: 940px;
  }

  .m-h-full[class][class][class] {
    height: 100vh;
  }

  .m-h-half[class][class][class] {
    height: 50vh;
  }

  .m-h-auto[class][class][class] {
    height: auto;
    display: block;
  }

  .m-order-1 {
    -webkit-order: 1;
    order: 1;
  }

  .m-order-2 {
    -webkit-order: 2;
    order: 2;
  }

  .m-order-3 {
    -webkit-order: 3;
    order: 3;
  }

  .m-order-4 {
    -webkit-order: 4;
    order: 4;
  }
}

@media screen and (max-width: 659.9px) {
  .s-horizontal.teaser {
    -webkit-flex-direction: row;
    flex-direction: row;
  }

  .horizontal.s-horizontal-reverse.teaser,
  .s-horizontal.s-horizontal-reverse.teaser {
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  /*
    .s-horizontal.teaser.va-center {
        -webkit-align-items: center;
                align-items: center;
    -webkit-justify-content: flex-start;
            justify-content: flex-start;
    }*/
  .s-h-1[class][class][class] {
    height: 60px;
  }

  .s-h-2[class][class][class] {
    height: 140px;
  }

  .s-h-3[class][class][class] {
    height: 220px;
  }

  .s-h-4[class][class][class] {
    height: 300px;
  }

  .s-h-5[class][class][class] {
    height: 380px;
  }

  .s-h-6[class][class][class] {
    height: 460px;
  }

  .s-h-7[class][class][class] {
    height: 540px;
  }

  .s-h-8[class][class][class] {
    height: 620px;
  }

  .s-h-9[class][class][class] {
    height: 700px;
  }

  .s-h-10[class][class][class] {
    height: 780px;
  }

  .s-h-11[class][class][class] {
    height: 860px;
  }

  .s-h-12[class][class][class] {
    height: 940px;
  }

  .s-h-full[class][class][class] {
    height: 100vh;
  }

  .s-h-half[class][class][class] {
    height: 50vh;
  }

  .s-h-auto[class][class][class] {
    height: auto;
    display: block;
  }

  .s-order-1 {
    -webkit-order: 1;
    order: 1;
  }

  .s-order-2 {
    -webkit-order: 2;
    order: 2;
  }

  .s-order-3 {
    -webkit-order: 3;
    order: 3;
  }

  .s-order-4 {
    -webkit-order: 4;
    order: 4;
  }
}

.background {
  display: block;
  overflow: hidden;
}

/* Wozu ist das gut? (bei svg muss es weg wegen der Positionierung) */
.background img,
x.background svg {
  width: auto;
}

/* Wozu ist das gut? */
.background:not([class*=" h-"]):not([class^="h-"]) {
  bottom: 0;
}

/* if you need to forcefully disable automatic width/height scaling, use "h-size" to fulfil the :not requirement  => no positioning possible img fits on the right side */
.background img:not([class*=" h-"]):not([class^="h-"]) {
  /*min-height: 100%;
    min-width: 100%;
    width: auto;
    height: auto;*/
}

.background svg:not([class*=" h-"]):not([class^="h-"]) {
  width: 100%;
  height: 100%;
}

/* Wozu ist das gut? */
/*.background img[class*=" h-"],
.background img[class^="h-"],
.background svg[class*=" h-"],
.background svg[class^="h-"] {
    width: auto;
}*/
/*  */
@media screen and (min-width: 980px) {
  .background:not(.l-visual) {
    position: absolute;
    max-width: none;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0;
  }

  /*
    .background img.l-h-auto {
        xwidth: auto;
        xheight: auto;
    }*/
  /* Wird benoetigt, damit das IMG im BG sich in der Breite skaliert und nach oben/unten entsprechend uebersteht */
  /* Aber nur fuer BGs, die als Hintergrund eingebunden sind und keine Hoehe haben im l-View */
  /* bei no-flex im Browser reicht das nicht aus, wenn man ueber l-12 vergr??rt: */
  /* body:not(.no-flex) .background:not(.l-visual) img.xl-h-auto
    /* Deshlab 'body:not(.no-flex)' entfernt: */
  .background:not(.l-visual) > img:not([class*=" h-"]):not([class^="h-"]) {
    min-width: 100%;
  }

  .background.l-visual {
    position: relative;
  }

  .scaled.background.l-visual img,
  .background.l-visual img.scaled,
  .scaled.background.l-visual svg,
  .background.l-visual svg.scaled {
    width: 100%;
    height: auto;
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .background:not(.m-visual) {
    position: absolute;
    max-width: none;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0;
  }

  .background.m-visual {
    position: relative;
  }

  .scaled.background.m-visual img,
  .background.m-visual img.scaled,
  .scaled.background.m-visual svg,
  .background.m-visual svg.scaled {
    width: 100%;
    height: auto;
  }

  .background img.fog,
  .background svg.fog {
    width: 980px;
  }

  /*
    .background img.m-h-auto {
        xheight: auto;
        xwidth: auto;
    }*/
  /* bei no-flex im Browser reicht das nicht aus, wenn man ueber l-12 vergr??rt: */
  /* body:not(.no-flex) .background:not(.m-visual) img.xl-h-auto
    /* Deshlab ':not(.no-flex)' entfernt: */
  /*
    body .background:not(.m-visual) img.m-h-auto {
        min-width: 100%;
        xmin-height: 100%;
    }*/
}

@media screen and (max-width: 659.9px) {
  .background:not(.s-visual) {
    position: absolute;
    max-width: none;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0;
  }

  .background:not(.s-visual).s-h-100[class] {
    height: 100%;
  }

  /* Versuch beim Produkt-Hero im no-flex-Fall das BG ganz aufzuspannen,
    damit der BG auch bis zum Ende vom Visual/Button kommt */
  body.no-flex .hero-product > .background:not(.s-visual) {
    xheight: 100%;
  }

  .background.s-visual {
    position: relative;
  }

  .scaled.background.s-visual img,
  .background.s-visual img.scaled,
  .scaled.background.s-visual svg,
  .background.s-visual svg.scaled {
    width: 100%;
    height: auto;
  }

  /*
    .background img.s-h-auto {
        xwidth: auto;
        xheight: auto;
    }*/
  /* bei no-flex im Browser reicht das nicht aus, wenn man ueber l-12 vergr??rt: */
  /* body:not(.no-flex) .background:not(.s-visual) img.xl-h-auto
    /* Deshlab ':not(.no-flex)' entfernt: */
  /*body .background:not(.s-visual) img.s-h-auto {
        min-width: 100%;
        xmin-height: 100%;
    }*/
}

.xa-0.ya-0 img, .xa-0.ya-0 svg {
  position: absolute;
  top: 0%;
  left: 0%;
  -webkit-transform: translate(0%, 0%);
  -ms-transform: translate(0%, 0%);
  transform: translate(0%, 0%);
}

.xa-0.ya-12 img, .xa-0.ya-12 svg {
  position: absolute;
  top: 12%;
  left: 0%;
  -webkit-transform: translate(0%, -12%);
  -ms-transform: translate(0%, -12%);
  transform: translate(0%, -12%);
}

.xa-0.ya-25 img, .xa-0.ya-25 svg {
  position: absolute;
  top: 25%;
  left: 0%;
  -webkit-transform: translate(0%, -25%);
  -ms-transform: translate(0%, -25%);
  transform: translate(0%, -25%);
}

.xa-0.ya-37 img, .xa-0.ya-37 svg {
  position: absolute;
  top: 37%;
  left: 0%;
  -webkit-transform: translate(0%, -37%);
  -ms-transform: translate(0%, -37%);
  transform: translate(0%, -37%);
}

.xa-0.ya-50 img, .xa-0.ya-50 svg {
  position: absolute;
  top: 50%;
  left: 0%;
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
}

.xa-0.ya-63 img, .xa-0.ya-63 svg {
  position: absolute;
  top: 63%;
  left: 0%;
  -webkit-transform: translate(0%, -63%);
  -ms-transform: translate(0%, -63%);
  transform: translate(0%, -63%);
}

.xa-0.ya-75 img, .xa-0.ya-75 svg {
  position: absolute;
  top: 75%;
  left: 0%;
  -webkit-transform: translate(0%, -75%);
  -ms-transform: translate(0%, -75%);
  transform: translate(0%, -75%);
}

.xa-0.ya-88 img, .xa-0.ya-88 svg {
  position: absolute;
  top: 88%;
  left: 0%;
  -webkit-transform: translate(0%, -88%);
  -ms-transform: translate(0%, -88%);
  transform: translate(0%, -88%);
}

.xa-0.ya-100 img, .xa-0.ya-100 svg {
  position: absolute;
  top: 100%;
  left: 0%;
  -webkit-transform: translate(0%, -100%);
  -ms-transform: translate(0%, -100%);
  transform: translate(0%, -100%);
}

.xa-12.ya-0 img, .xa-12.ya-0 svg {
  position: absolute;
  top: 0%;
  left: 12%;
  -webkit-transform: translate(-12%, 0%);
  -ms-transform: translate(-12%, 0%);
  transform: translate(-12%, 0%);
}

.xa-12.ya-12 img, .xa-12.ya-12 svg {
  position: absolute;
  top: 12%;
  left: 12%;
  -webkit-transform: translate(-12%, -12%);
  -ms-transform: translate(-12%, -12%);
  transform: translate(-12%, -12%);
}

.xa-12.ya-25 img, .xa-12.ya-25 svg {
  position: absolute;
  top: 25%;
  left: 12%;
  -webkit-transform: translate(-12%, -25%);
  -ms-transform: translate(-12%, -25%);
  transform: translate(-12%, -25%);
}

.xa-12.ya-37 img, .xa-12.ya-37 svg {
  position: absolute;
  top: 37%;
  left: 12%;
  -webkit-transform: translate(-12%, -37%);
  -ms-transform: translate(-12%, -37%);
  transform: translate(-12%, -37%);
}

.xa-12.ya-50 img, .xa-12.ya-50 svg {
  position: absolute;
  top: 50%;
  left: 12%;
  -webkit-transform: translate(-12%, -50%);
  -ms-transform: translate(-12%, -50%);
  transform: translate(-12%, -50%);
}

.xa-12.ya-63 img, .xa-12.ya-63 svg {
  position: absolute;
  top: 63%;
  left: 12%;
  -webkit-transform: translate(-12%, -63%);
  -ms-transform: translate(-12%, -63%);
  transform: translate(-12%, -63%);
}

.xa-12.ya-75 img, .xa-12.ya-75 svg {
  position: absolute;
  top: 75%;
  left: 12%;
  -webkit-transform: translate(-12%, -75%);
  -ms-transform: translate(-12%, -75%);
  transform: translate(-12%, -75%);
}

.xa-12.ya-88 img, .xa-12.ya-88 svg {
  position: absolute;
  top: 88%;
  left: 12%;
  -webkit-transform: translate(-12%, -88%);
  -ms-transform: translate(-12%, -88%);
  transform: translate(-12%, -88%);
}

.xa-12.ya-100 img, .xa-12.ya-100 svg {
  position: absolute;
  top: 100%;
  left: 12%;
  -webkit-transform: translate(-12%, -100%);
  -ms-transform: translate(-12%, -100%);
  transform: translate(-12%, -100%);
}

.xa-25.ya-0 img, .xa-25.ya-0 svg {
  position: absolute;
  top: 0%;
  left: 25%;
  -webkit-transform: translate(-25%, 0%);
  -ms-transform: translate(-25%, 0%);
  transform: translate(-25%, 0%);
}

.xa-25.ya-12 img, .xa-25.ya-12 svg {
  position: absolute;
  top: 12%;
  left: 25%;
  -webkit-transform: translate(-25%, -12%);
  -ms-transform: translate(-25%, -12%);
  transform: translate(-25%, -12%);
}

.xa-25.ya-25 img, .xa-25.ya-25 svg {
  position: absolute;
  top: 25%;
  left: 25%;
  -webkit-transform: translate(-25%, -25%);
  -ms-transform: translate(-25%, -25%);
  transform: translate(-25%, -25%);
}

.xa-25.ya-37 img, .xa-25.ya-37 svg {
  position: absolute;
  top: 37%;
  left: 25%;
  -webkit-transform: translate(-25%, -37%);
  -ms-transform: translate(-25%, -37%);
  transform: translate(-25%, -37%);
}

.xa-25.ya-50 img, .xa-25.ya-50 svg {
  position: absolute;
  top: 50%;
  left: 25%;
  -webkit-transform: translate(-25%, -50%);
  -ms-transform: translate(-25%, -50%);
  transform: translate(-25%, -50%);
}

.xa-25.ya-63 img, .xa-25.ya-63 svg {
  position: absolute;
  top: 63%;
  left: 25%;
  -webkit-transform: translate(-25%, -63%);
  -ms-transform: translate(-25%, -63%);
  transform: translate(-25%, -63%);
}

.xa-25.ya-75 img, .xa-25.ya-75 svg {
  position: absolute;
  top: 75%;
  left: 25%;
  -webkit-transform: translate(-25%, -75%);
  -ms-transform: translate(-25%, -75%);
  transform: translate(-25%, -75%);
}

.xa-25.ya-88 img, .xa-25.ya-88 svg {
  position: absolute;
  top: 88%;
  left: 25%;
  -webkit-transform: translate(-25%, -88%);
  -ms-transform: translate(-25%, -88%);
  transform: translate(-25%, -88%);
}

.xa-25.ya-100 img, .xa-25.ya-100 svg {
  position: absolute;
  top: 100%;
  left: 25%;
  -webkit-transform: translate(-25%, -100%);
  -ms-transform: translate(-25%, -100%);
  transform: translate(-25%, -100%);
}

.xa-37.ya-0 img, .xa-37.ya-0 svg {
  position: absolute;
  top: 0%;
  left: 37%;
  -webkit-transform: translate(-37%, 0%);
  -ms-transform: translate(-37%, 0%);
  transform: translate(-37%, 0%);
}

.xa-37.ya-12 img, .xa-37.ya-12 svg {
  position: absolute;
  top: 12%;
  left: 37%;
  -webkit-transform: translate(-37%, -12%);
  -ms-transform: translate(-37%, -12%);
  transform: translate(-37%, -12%);
}

.xa-37.ya-25 img, .xa-37.ya-25 svg {
  position: absolute;
  top: 25%;
  left: 37%;
  -webkit-transform: translate(-37%, -25%);
  -ms-transform: translate(-37%, -25%);
  transform: translate(-37%, -25%);
}

.xa-37.ya-37 img, .xa-37.ya-37 svg {
  position: absolute;
  top: 37%;
  left: 37%;
  -webkit-transform: translate(-37%, -37%);
  -ms-transform: translate(-37%, -37%);
  transform: translate(-37%, -37%);
}

.xa-37.ya-50 img, .xa-37.ya-50 svg {
  position: absolute;
  top: 50%;
  left: 37%;
  -webkit-transform: translate(-37%, -50%);
  -ms-transform: translate(-37%, -50%);
  transform: translate(-37%, -50%);
}

.xa-37.ya-63 img, .xa-37.ya-63 svg {
  position: absolute;
  top: 63%;
  left: 37%;
  -webkit-transform: translate(-37%, -63%);
  -ms-transform: translate(-37%, -63%);
  transform: translate(-37%, -63%);
}

.xa-37.ya-75 img, .xa-37.ya-75 svg {
  position: absolute;
  top: 75%;
  left: 37%;
  -webkit-transform: translate(-37%, -75%);
  -ms-transform: translate(-37%, -75%);
  transform: translate(-37%, -75%);
}

.xa-37.ya-88 img, .xa-37.ya-88 svg {
  position: absolute;
  top: 88%;
  left: 37%;
  -webkit-transform: translate(-37%, -88%);
  -ms-transform: translate(-37%, -88%);
  transform: translate(-37%, -88%);
}

.xa-37.ya-100 img, .xa-37.ya-100 svg {
  position: absolute;
  top: 100%;
  left: 37%;
  -webkit-transform: translate(-37%, -100%);
  -ms-transform: translate(-37%, -100%);
  transform: translate(-37%, -100%);
}

.xa-50.ya-0 img, .xa-50.ya-0 svg {
  position: absolute;
  top: 0%;
  left: 50%;
  -webkit-transform: translate(-50%, 0%);
  -ms-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
}

.xa-50.ya-12 img, .xa-50.ya-12 svg {
  position: absolute;
  top: 12%;
  left: 50%;
  -webkit-transform: translate(-50%, -12%);
  -ms-transform: translate(-50%, -12%);
  transform: translate(-50%, -12%);
}

.xa-50.ya-25 img, .xa-50.ya-25 svg {
  position: absolute;
  top: 25%;
  left: 50%;
  -webkit-transform: translate(-50%, -25%);
  -ms-transform: translate(-50%, -25%);
  transform: translate(-50%, -25%);
}

.xa-50.ya-37 img, .xa-50.ya-37 svg {
  position: absolute;
  top: 37%;
  left: 50%;
  -webkit-transform: translate(-50%, -37%);
  -ms-transform: translate(-50%, -37%);
  transform: translate(-50%, -37%);
}

.xa-50.ya-50 img, .xa-50.ya-50 svg {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.xa-50.ya-63 img, .xa-50.ya-63 svg {
  position: absolute;
  top: 63%;
  left: 50%;
  -webkit-transform: translate(-50%, -63%);
  -ms-transform: translate(-50%, -63%);
  transform: translate(-50%, -63%);
}

.xa-50.ya-75 img, .xa-50.ya-75 svg {
  position: absolute;
  top: 75%;
  left: 50%;
  -webkit-transform: translate(-50%, -75%);
  -ms-transform: translate(-50%, -75%);
  transform: translate(-50%, -75%);
}

.xa-50.ya-88 img, .xa-50.ya-88 svg {
  position: absolute;
  top: 88%;
  left: 50%;
  -webkit-transform: translate(-50%, -88%);
  -ms-transform: translate(-50%, -88%);
  transform: translate(-50%, -88%);
}

.xa-50.ya-100 img, .xa-50.ya-100 svg {
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translate(-50%, -100%);
  -ms-transform: translate(-50%, -100%);
  transform: translate(-50%, -100%);
}

.xa-63.ya-0 img, .xa-63.ya-0 svg {
  position: absolute;
  top: 0%;
  left: 63%;
  -webkit-transform: translate(-63%, 0%);
  -ms-transform: translate(-63%, 0%);
  transform: translate(-63%, 0%);
}

.xa-63.ya-12 img, .xa-63.ya-12 svg {
  position: absolute;
  top: 12%;
  left: 63%;
  -webkit-transform: translate(-63%, -12%);
  -ms-transform: translate(-63%, -12%);
  transform: translate(-63%, -12%);
}

.xa-63.ya-25 img, .xa-63.ya-25 svg {
  position: absolute;
  top: 25%;
  left: 63%;
  -webkit-transform: translate(-63%, -25%);
  -ms-transform: translate(-63%, -25%);
  transform: translate(-63%, -25%);
}

.xa-63.ya-37 img, .xa-63.ya-37 svg {
  position: absolute;
  top: 37%;
  left: 63%;
  -webkit-transform: translate(-63%, -37%);
  -ms-transform: translate(-63%, -37%);
  transform: translate(-63%, -37%);
}

.xa-63.ya-50 img, .xa-63.ya-50 svg {
  position: absolute;
  top: 50%;
  left: 63%;
  -webkit-transform: translate(-63%, -50%);
  -ms-transform: translate(-63%, -50%);
  transform: translate(-63%, -50%);
}

.xa-63.ya-63 img, .xa-63.ya-63 svg {
  position: absolute;
  top: 63%;
  left: 63%;
  -webkit-transform: translate(-63%, -63%);
  -ms-transform: translate(-63%, -63%);
  transform: translate(-63%, -63%);
}

.xa-63.ya-75 img, .xa-63.ya-75 svg {
  position: absolute;
  top: 75%;
  left: 63%;
  -webkit-transform: translate(-63%, -75%);
  -ms-transform: translate(-63%, -75%);
  transform: translate(-63%, -75%);
}

.xa-63.ya-88 img, .xa-63.ya-88 svg {
  position: absolute;
  top: 88%;
  left: 63%;
  -webkit-transform: translate(-63%, -88%);
  -ms-transform: translate(-63%, -88%);
  transform: translate(-63%, -88%);
}

.xa-63.ya-100 img, .xa-63.ya-100 svg {
  position: absolute;
  top: 100%;
  left: 63%;
  -webkit-transform: translate(-63%, -100%);
  -ms-transform: translate(-63%, -100%);
  transform: translate(-63%, -100%);
}

.xa-75.ya-0 img, .xa-75.ya-0 svg {
  position: absolute;
  top: 0%;
  left: 75%;
  -webkit-transform: translate(-75%, 0%);
  -ms-transform: translate(-75%, 0%);
  transform: translate(-75%, 0%);
}

.xa-75.ya-12 img, .xa-75.ya-12 svg {
  position: absolute;
  top: 12%;
  left: 75%;
  -webkit-transform: translate(-75%, -12%);
  -ms-transform: translate(-75%, -12%);
  transform: translate(-75%, -12%);
}

.xa-75.ya-25 img, .xa-75.ya-25 svg {
  position: absolute;
  top: 25%;
  left: 75%;
  -webkit-transform: translate(-75%, -25%);
  -ms-transform: translate(-75%, -25%);
  transform: translate(-75%, -25%);
}

.xa-75.ya-37 img, .xa-75.ya-37 svg {
  position: absolute;
  top: 37%;
  left: 75%;
  -webkit-transform: translate(-75%, -37%);
  -ms-transform: translate(-75%, -37%);
  transform: translate(-75%, -37%);
}

.xa-75.ya-50 img, .xa-75.ya-50 svg {
  position: absolute;
  top: 50%;
  left: 75%;
  -webkit-transform: translate(-75%, -50%);
  -ms-transform: translate(-75%, -50%);
  transform: translate(-75%, -50%);
}

.xa-75.ya-63 img, .xa-75.ya-63 svg {
  position: absolute;
  top: 63%;
  left: 75%;
  -webkit-transform: translate(-75%, -63%);
  -ms-transform: translate(-75%, -63%);
  transform: translate(-75%, -63%);
}

.xa-75.ya-75 img, .xa-75.ya-75 svg {
  position: absolute;
  top: 75%;
  left: 75%;
  -webkit-transform: translate(-75%, -75%);
  -ms-transform: translate(-75%, -75%);
  transform: translate(-75%, -75%);
}

.xa-75.ya-88 img, .xa-75.ya-88 svg {
  position: absolute;
  top: 88%;
  left: 75%;
  -webkit-transform: translate(-75%, -88%);
  -ms-transform: translate(-75%, -88%);
  transform: translate(-75%, -88%);
}

.xa-75.ya-100 img, .xa-75.ya-100 svg {
  position: absolute;
  top: 100%;
  left: 75%;
  -webkit-transform: translate(-75%, -100%);
  -ms-transform: translate(-75%, -100%);
  transform: translate(-75%, -100%);
}

.xa-88.ya-0 img, .xa-88.ya-0 svg {
  position: absolute;
  top: 0%;
  left: 88%;
  -webkit-transform: translate(-88%, 0%);
  -ms-transform: translate(-88%, 0%);
  transform: translate(-88%, 0%);
}

.xa-88.ya-12 img, .xa-88.ya-12 svg {
  position: absolute;
  top: 12%;
  left: 88%;
  -webkit-transform: translate(-88%, -12%);
  -ms-transform: translate(-88%, -12%);
  transform: translate(-88%, -12%);
}

.xa-88.ya-25 img, .xa-88.ya-25 svg {
  position: absolute;
  top: 25%;
  left: 88%;
  -webkit-transform: translate(-88%, -25%);
  -ms-transform: translate(-88%, -25%);
  transform: translate(-88%, -25%);
}

.xa-88.ya-37 img, .xa-88.ya-37 svg {
  position: absolute;
  top: 37%;
  left: 88%;
  -webkit-transform: translate(-88%, -37%);
  -ms-transform: translate(-88%, -37%);
  transform: translate(-88%, -37%);
}

.xa-88.ya-50 img, .xa-88.ya-50 svg {
  position: absolute;
  top: 50%;
  left: 88%;
  -webkit-transform: translate(-88%, -50%);
  -ms-transform: translate(-88%, -50%);
  transform: translate(-88%, -50%);
}

.xa-88.ya-63 img, .xa-88.ya-63 svg {
  position: absolute;
  top: 63%;
  left: 88%;
  -webkit-transform: translate(-88%, -63%);
  -ms-transform: translate(-88%, -63%);
  transform: translate(-88%, -63%);
}

.xa-88.ya-75 img, .xa-88.ya-75 svg {
  position: absolute;
  top: 75%;
  left: 88%;
  -webkit-transform: translate(-88%, -75%);
  -ms-transform: translate(-88%, -75%);
  transform: translate(-88%, -75%);
}

.xa-88.ya-88 img, .xa-88.ya-88 svg {
  position: absolute;
  top: 88%;
  left: 88%;
  -webkit-transform: translate(-88%, -88%);
  -ms-transform: translate(-88%, -88%);
  transform: translate(-88%, -88%);
}

.xa-88.ya-100 img, .xa-88.ya-100 svg {
  position: absolute;
  top: 100%;
  left: 88%;
  -webkit-transform: translate(-88%, -100%);
  -ms-transform: translate(-88%, -100%);
  transform: translate(-88%, -100%);
}

.xa-100.ya-0 img, .xa-100.ya-0 svg {
  position: absolute;
  top: 0%;
  left: 100%;
  -webkit-transform: translate(-100%, 0%);
  -ms-transform: translate(-100%, 0%);
  transform: translate(-100%, 0%);
}

.xa-100.ya-12 img, .xa-100.ya-12 svg {
  position: absolute;
  top: 12%;
  left: 100%;
  -webkit-transform: translate(-100%, -12%);
  -ms-transform: translate(-100%, -12%);
  transform: translate(-100%, -12%);
}

.xa-100.ya-25 img, .xa-100.ya-25 svg {
  position: absolute;
  top: 25%;
  left: 100%;
  -webkit-transform: translate(-100%, -25%);
  -ms-transform: translate(-100%, -25%);
  transform: translate(-100%, -25%);
}

.xa-100.ya-37 img, .xa-100.ya-37 svg {
  position: absolute;
  top: 37%;
  left: 100%;
  -webkit-transform: translate(-100%, -37%);
  -ms-transform: translate(-100%, -37%);
  transform: translate(-100%, -37%);
}

.xa-100.ya-50 img, .xa-100.ya-50 svg {
  position: absolute;
  top: 50%;
  left: 100%;
  -webkit-transform: translate(-100%, -50%);
  -ms-transform: translate(-100%, -50%);
  transform: translate(-100%, -50%);
}

.xa-100.ya-63 img, .xa-100.ya-63 svg {
  position: absolute;
  top: 63%;
  left: 100%;
  -webkit-transform: translate(-100%, -63%);
  -ms-transform: translate(-100%, -63%);
  transform: translate(-100%, -63%);
}

.xa-100.ya-75 img, .xa-100.ya-75 svg {
  position: absolute;
  top: 75%;
  left: 100%;
  -webkit-transform: translate(-100%, -75%);
  -ms-transform: translate(-100%, -75%);
  transform: translate(-100%, -75%);
}

.xa-100.ya-88 img, .xa-100.ya-88 svg {
  position: absolute;
  top: 88%;
  left: 100%;
  -webkit-transform: translate(-100%, -88%);
  -ms-transform: translate(-100%, -88%);
  transform: translate(-100%, -88%);
}

.xa-100.ya-100 img, .xa-100.ya-100 svg {
  position: absolute;
  top: 100%;
  left: 100%;
  -webkit-transform: translate(-100%, -100%);
  -ms-transform: translate(-100%, -100%);
  transform: translate(-100%, -100%);
}

/*  */
@media screen and (min-width: 980px) {
  .l-xa-0.l-ya-0 img, .l-xa-0.l-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 0%;
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }

  .l-xa-0.l-ya-12 img, .l-xa-0.l-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 0%;
    -webkit-transform: translate(0%, -12%);
    -ms-transform: translate(0%, -12%);
    transform: translate(0%, -12%);
  }

  .l-xa-0.l-ya-25 img, .l-xa-0.l-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 0%;
    -webkit-transform: translate(0%, -25%);
    -ms-transform: translate(0%, -25%);
    transform: translate(0%, -25%);
  }

  .l-xa-0.l-ya-37 img, .l-xa-0.l-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 0%;
    -webkit-transform: translate(0%, -37%);
    -ms-transform: translate(0%, -37%);
    transform: translate(0%, -37%);
  }

  .l-xa-0.l-ya-50 img, .l-xa-0.l-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 0%;
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
  }

  .l-xa-0.l-ya-63 img, .l-xa-0.l-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 0%;
    -webkit-transform: translate(0%, -63%);
    -ms-transform: translate(0%, -63%);
    transform: translate(0%, -63%);
  }

  .l-xa-0.l-ya-75 img, .l-xa-0.l-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 0%;
    -webkit-transform: translate(0%, -75%);
    -ms-transform: translate(0%, -75%);
    transform: translate(0%, -75%);
  }

  .l-xa-0.l-ya-88 img, .l-xa-0.l-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 0%;
    -webkit-transform: translate(0%, -88%);
    -ms-transform: translate(0%, -88%);
    transform: translate(0%, -88%);
  }

  .l-xa-0.l-ya-100 img, .l-xa-0.l-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 0%;
    -webkit-transform: translate(0%, -100%);
    -ms-transform: translate(0%, -100%);
    transform: translate(0%, -100%);
  }

  .l-xa-12.l-ya-0 img, .l-xa-12.l-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 12%;
    -webkit-transform: translate(-12%, 0%);
    -ms-transform: translate(-12%, 0%);
    transform: translate(-12%, 0%);
  }

  .l-xa-12.l-ya-12 img, .l-xa-12.l-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 12%;
    -webkit-transform: translate(-12%, -12%);
    -ms-transform: translate(-12%, -12%);
    transform: translate(-12%, -12%);
  }

  .l-xa-12.l-ya-25 img, .l-xa-12.l-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 12%;
    -webkit-transform: translate(-12%, -25%);
    -ms-transform: translate(-12%, -25%);
    transform: translate(-12%, -25%);
  }

  .l-xa-12.l-ya-37 img, .l-xa-12.l-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 12%;
    -webkit-transform: translate(-12%, -37%);
    -ms-transform: translate(-12%, -37%);
    transform: translate(-12%, -37%);
  }

  .l-xa-12.l-ya-50 img, .l-xa-12.l-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 12%;
    -webkit-transform: translate(-12%, -50%);
    -ms-transform: translate(-12%, -50%);
    transform: translate(-12%, -50%);
  }

  .l-xa-12.l-ya-63 img, .l-xa-12.l-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 12%;
    -webkit-transform: translate(-12%, -63%);
    -ms-transform: translate(-12%, -63%);
    transform: translate(-12%, -63%);
  }

  .l-xa-12.l-ya-75 img, .l-xa-12.l-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 12%;
    -webkit-transform: translate(-12%, -75%);
    -ms-transform: translate(-12%, -75%);
    transform: translate(-12%, -75%);
  }

  .l-xa-12.l-ya-88 img, .l-xa-12.l-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 12%;
    -webkit-transform: translate(-12%, -88%);
    -ms-transform: translate(-12%, -88%);
    transform: translate(-12%, -88%);
  }

  .l-xa-12.l-ya-100 img, .l-xa-12.l-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 12%;
    -webkit-transform: translate(-12%, -100%);
    -ms-transform: translate(-12%, -100%);
    transform: translate(-12%, -100%);
  }

  .l-xa-25.l-ya-0 img, .l-xa-25.l-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 25%;
    -webkit-transform: translate(-25%, 0%);
    -ms-transform: translate(-25%, 0%);
    transform: translate(-25%, 0%);
  }

  .l-xa-25.l-ya-12 img, .l-xa-25.l-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 25%;
    -webkit-transform: translate(-25%, -12%);
    -ms-transform: translate(-25%, -12%);
    transform: translate(-25%, -12%);
  }

  .l-xa-25.l-ya-25 img, .l-xa-25.l-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 25%;
    -webkit-transform: translate(-25%, -25%);
    -ms-transform: translate(-25%, -25%);
    transform: translate(-25%, -25%);
  }

  .l-xa-25.l-ya-37 img, .l-xa-25.l-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 25%;
    -webkit-transform: translate(-25%, -37%);
    -ms-transform: translate(-25%, -37%);
    transform: translate(-25%, -37%);
  }

  .l-xa-25.l-ya-50 img, .l-xa-25.l-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 25%;
    -webkit-transform: translate(-25%, -50%);
    -ms-transform: translate(-25%, -50%);
    transform: translate(-25%, -50%);
  }

  .l-xa-25.l-ya-63 img, .l-xa-25.l-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 25%;
    -webkit-transform: translate(-25%, -63%);
    -ms-transform: translate(-25%, -63%);
    transform: translate(-25%, -63%);
  }

  .l-xa-25.l-ya-75 img, .l-xa-25.l-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 25%;
    -webkit-transform: translate(-25%, -75%);
    -ms-transform: translate(-25%, -75%);
    transform: translate(-25%, -75%);
  }

  .l-xa-25.l-ya-88 img, .l-xa-25.l-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 25%;
    -webkit-transform: translate(-25%, -88%);
    -ms-transform: translate(-25%, -88%);
    transform: translate(-25%, -88%);
  }

  .l-xa-25.l-ya-100 img, .l-xa-25.l-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 25%;
    -webkit-transform: translate(-25%, -100%);
    -ms-transform: translate(-25%, -100%);
    transform: translate(-25%, -100%);
  }

  .l-xa-37.l-ya-0 img, .l-xa-37.l-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 37%;
    -webkit-transform: translate(-37%, 0%);
    -ms-transform: translate(-37%, 0%);
    transform: translate(-37%, 0%);
  }

  .l-xa-37.l-ya-12 img, .l-xa-37.l-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 37%;
    -webkit-transform: translate(-37%, -12%);
    -ms-transform: translate(-37%, -12%);
    transform: translate(-37%, -12%);
  }

  .l-xa-37.l-ya-25 img, .l-xa-37.l-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 37%;
    -webkit-transform: translate(-37%, -25%);
    -ms-transform: translate(-37%, -25%);
    transform: translate(-37%, -25%);
  }

  .l-xa-37.l-ya-37 img, .l-xa-37.l-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 37%;
    -webkit-transform: translate(-37%, -37%);
    -ms-transform: translate(-37%, -37%);
    transform: translate(-37%, -37%);
  }

  .l-xa-37.l-ya-50 img, .l-xa-37.l-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 37%;
    -webkit-transform: translate(-37%, -50%);
    -ms-transform: translate(-37%, -50%);
    transform: translate(-37%, -50%);
  }

  .l-xa-37.l-ya-63 img, .l-xa-37.l-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 37%;
    -webkit-transform: translate(-37%, -63%);
    -ms-transform: translate(-37%, -63%);
    transform: translate(-37%, -63%);
  }

  .l-xa-37.l-ya-75 img, .l-xa-37.l-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 37%;
    -webkit-transform: translate(-37%, -75%);
    -ms-transform: translate(-37%, -75%);
    transform: translate(-37%, -75%);
  }

  .l-xa-37.l-ya-88 img, .l-xa-37.l-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 37%;
    -webkit-transform: translate(-37%, -88%);
    -ms-transform: translate(-37%, -88%);
    transform: translate(-37%, -88%);
  }

  .l-xa-37.l-ya-100 img, .l-xa-37.l-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 37%;
    -webkit-transform: translate(-37%, -100%);
    -ms-transform: translate(-37%, -100%);
    transform: translate(-37%, -100%);
  }

  .l-xa-50.l-ya-0 img, .l-xa-50.l-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 50%;
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
  }

  .l-xa-50.l-ya-12 img, .l-xa-50.l-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 50%;
    -webkit-transform: translate(-50%, -12%);
    -ms-transform: translate(-50%, -12%);
    transform: translate(-50%, -12%);
  }

  .l-xa-50.l-ya-25 img, .l-xa-50.l-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 50%;
    -webkit-transform: translate(-50%, -25%);
    -ms-transform: translate(-50%, -25%);
    transform: translate(-50%, -25%);
  }

  .l-xa-50.l-ya-37 img, .l-xa-50.l-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 50%;
    -webkit-transform: translate(-50%, -37%);
    -ms-transform: translate(-50%, -37%);
    transform: translate(-50%, -37%);
  }

  .l-xa-50.l-ya-50 img, .l-xa-50.l-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .l-xa-50.l-ya-63 img, .l-xa-50.l-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 50%;
    -webkit-transform: translate(-50%, -63%);
    -ms-transform: translate(-50%, -63%);
    transform: translate(-50%, -63%);
  }

  .l-xa-50.l-ya-75 img, .l-xa-50.l-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 50%;
    -webkit-transform: translate(-50%, -75%);
    -ms-transform: translate(-50%, -75%);
    transform: translate(-50%, -75%);
  }

  .l-xa-50.l-ya-88 img, .l-xa-50.l-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 50%;
    -webkit-transform: translate(-50%, -88%);
    -ms-transform: translate(-50%, -88%);
    transform: translate(-50%, -88%);
  }

  .l-xa-50.l-ya-100 img, .l-xa-50.l-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translate(-50%, -100%);
    -ms-transform: translate(-50%, -100%);
    transform: translate(-50%, -100%);
  }

  .l-xa-63.l-ya-0 img, .l-xa-63.l-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 63%;
    -webkit-transform: translate(-63%, 0%);
    -ms-transform: translate(-63%, 0%);
    transform: translate(-63%, 0%);
  }

  .l-xa-63.l-ya-12 img, .l-xa-63.l-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 63%;
    -webkit-transform: translate(-63%, -12%);
    -ms-transform: translate(-63%, -12%);
    transform: translate(-63%, -12%);
  }

  .l-xa-63.l-ya-25 img, .l-xa-63.l-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 63%;
    -webkit-transform: translate(-63%, -25%);
    -ms-transform: translate(-63%, -25%);
    transform: translate(-63%, -25%);
  }

  .l-xa-63.l-ya-37 img, .l-xa-63.l-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 63%;
    -webkit-transform: translate(-63%, -37%);
    -ms-transform: translate(-63%, -37%);
    transform: translate(-63%, -37%);
  }

  .l-xa-63.l-ya-50 img, .l-xa-63.l-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 63%;
    -webkit-transform: translate(-63%, -50%);
    -ms-transform: translate(-63%, -50%);
    transform: translate(-63%, -50%);
  }

  .l-xa-63.l-ya-63 img, .l-xa-63.l-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 63%;
    -webkit-transform: translate(-63%, -63%);
    -ms-transform: translate(-63%, -63%);
    transform: translate(-63%, -63%);
  }

  .l-xa-63.l-ya-75 img, .l-xa-63.l-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 63%;
    -webkit-transform: translate(-63%, -75%);
    -ms-transform: translate(-63%, -75%);
    transform: translate(-63%, -75%);
  }

  .l-xa-63.l-ya-88 img, .l-xa-63.l-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 63%;
    -webkit-transform: translate(-63%, -88%);
    -ms-transform: translate(-63%, -88%);
    transform: translate(-63%, -88%);
  }

  .l-xa-63.l-ya-100 img, .l-xa-63.l-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 63%;
    -webkit-transform: translate(-63%, -100%);
    -ms-transform: translate(-63%, -100%);
    transform: translate(-63%, -100%);
  }

  .l-xa-75.l-ya-0 img, .l-xa-75.l-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 75%;
    -webkit-transform: translate(-75%, 0%);
    -ms-transform: translate(-75%, 0%);
    transform: translate(-75%, 0%);
  }

  .l-xa-75.l-ya-12 img, .l-xa-75.l-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 75%;
    -webkit-transform: translate(-75%, -12%);
    -ms-transform: translate(-75%, -12%);
    transform: translate(-75%, -12%);
  }

  .l-xa-75.l-ya-25 img, .l-xa-75.l-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 75%;
    -webkit-transform: translate(-75%, -25%);
    -ms-transform: translate(-75%, -25%);
    transform: translate(-75%, -25%);
  }

  .l-xa-75.l-ya-37 img, .l-xa-75.l-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 75%;
    -webkit-transform: translate(-75%, -37%);
    -ms-transform: translate(-75%, -37%);
    transform: translate(-75%, -37%);
  }

  .l-xa-75.l-ya-50 img, .l-xa-75.l-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 75%;
    -webkit-transform: translate(-75%, -50%);
    -ms-transform: translate(-75%, -50%);
    transform: translate(-75%, -50%);
  }

  .l-xa-75.l-ya-63 img, .l-xa-75.l-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 75%;
    -webkit-transform: translate(-75%, -63%);
    -ms-transform: translate(-75%, -63%);
    transform: translate(-75%, -63%);
  }

  .l-xa-75.l-ya-75 img, .l-xa-75.l-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 75%;
    -webkit-transform: translate(-75%, -75%);
    -ms-transform: translate(-75%, -75%);
    transform: translate(-75%, -75%);
  }

  .l-xa-75.l-ya-88 img, .l-xa-75.l-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 75%;
    -webkit-transform: translate(-75%, -88%);
    -ms-transform: translate(-75%, -88%);
    transform: translate(-75%, -88%);
  }

  .l-xa-75.l-ya-100 img, .l-xa-75.l-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 75%;
    -webkit-transform: translate(-75%, -100%);
    -ms-transform: translate(-75%, -100%);
    transform: translate(-75%, -100%);
  }

  .l-xa-88.l-ya-0 img, .l-xa-88.l-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 88%;
    -webkit-transform: translate(-88%, 0%);
    -ms-transform: translate(-88%, 0%);
    transform: translate(-88%, 0%);
  }

  .l-xa-88.l-ya-12 img, .l-xa-88.l-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 88%;
    -webkit-transform: translate(-88%, -12%);
    -ms-transform: translate(-88%, -12%);
    transform: translate(-88%, -12%);
  }

  .l-xa-88.l-ya-25 img, .l-xa-88.l-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 88%;
    -webkit-transform: translate(-88%, -25%);
    -ms-transform: translate(-88%, -25%);
    transform: translate(-88%, -25%);
  }

  .l-xa-88.l-ya-37 img, .l-xa-88.l-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 88%;
    -webkit-transform: translate(-88%, -37%);
    -ms-transform: translate(-88%, -37%);
    transform: translate(-88%, -37%);
  }

  .l-xa-88.l-ya-50 img, .l-xa-88.l-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 88%;
    -webkit-transform: translate(-88%, -50%);
    -ms-transform: translate(-88%, -50%);
    transform: translate(-88%, -50%);
  }

  .l-xa-88.l-ya-63 img, .l-xa-88.l-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 88%;
    -webkit-transform: translate(-88%, -63%);
    -ms-transform: translate(-88%, -63%);
    transform: translate(-88%, -63%);
  }

  .l-xa-88.l-ya-75 img, .l-xa-88.l-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 88%;
    -webkit-transform: translate(-88%, -75%);
    -ms-transform: translate(-88%, -75%);
    transform: translate(-88%, -75%);
  }

  .l-xa-88.l-ya-88 img, .l-xa-88.l-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 88%;
    -webkit-transform: translate(-88%, -88%);
    -ms-transform: translate(-88%, -88%);
    transform: translate(-88%, -88%);
  }

  .l-xa-88.l-ya-100 img, .l-xa-88.l-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 88%;
    -webkit-transform: translate(-88%, -100%);
    -ms-transform: translate(-88%, -100%);
    transform: translate(-88%, -100%);
  }

  .l-xa-100.l-ya-0 img, .l-xa-100.l-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 100%;
    -webkit-transform: translate(-100%, 0%);
    -ms-transform: translate(-100%, 0%);
    transform: translate(-100%, 0%);
  }

  .l-xa-100.l-ya-12 img, .l-xa-100.l-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 100%;
    -webkit-transform: translate(-100%, -12%);
    -ms-transform: translate(-100%, -12%);
    transform: translate(-100%, -12%);
  }

  .l-xa-100.l-ya-25 img, .l-xa-100.l-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 100%;
    -webkit-transform: translate(-100%, -25%);
    -ms-transform: translate(-100%, -25%);
    transform: translate(-100%, -25%);
  }

  .l-xa-100.l-ya-37 img, .l-xa-100.l-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 100%;
    -webkit-transform: translate(-100%, -37%);
    -ms-transform: translate(-100%, -37%);
    transform: translate(-100%, -37%);
  }

  .l-xa-100.l-ya-50 img, .l-xa-100.l-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 100%;
    -webkit-transform: translate(-100%, -50%);
    -ms-transform: translate(-100%, -50%);
    transform: translate(-100%, -50%);
  }

  .l-xa-100.l-ya-63 img, .l-xa-100.l-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 100%;
    -webkit-transform: translate(-100%, -63%);
    -ms-transform: translate(-100%, -63%);
    transform: translate(-100%, -63%);
  }

  .l-xa-100.l-ya-75 img, .l-xa-100.l-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 100%;
    -webkit-transform: translate(-100%, -75%);
    -ms-transform: translate(-100%, -75%);
    transform: translate(-100%, -75%);
  }

  .l-xa-100.l-ya-88 img, .l-xa-100.l-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 100%;
    -webkit-transform: translate(-100%, -88%);
    -ms-transform: translate(-100%, -88%);
    transform: translate(-100%, -88%);
  }

  .l-xa-100.l-ya-100 img, .l-xa-100.l-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 100%;
    -webkit-transform: translate(-100%, -100%);
    -ms-transform: translate(-100%, -100%);
    transform: translate(-100%, -100%);
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .m-xa-0.m-ya-0 img, .m-xa-0.m-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 0%;
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }

  .m-xa-0.m-ya-12 img, .m-xa-0.m-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 0%;
    -webkit-transform: translate(0%, -12%);
    -ms-transform: translate(0%, -12%);
    transform: translate(0%, -12%);
  }

  .m-xa-0.m-ya-25 img, .m-xa-0.m-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 0%;
    -webkit-transform: translate(0%, -25%);
    -ms-transform: translate(0%, -25%);
    transform: translate(0%, -25%);
  }

  .m-xa-0.m-ya-37 img, .m-xa-0.m-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 0%;
    -webkit-transform: translate(0%, -37%);
    -ms-transform: translate(0%, -37%);
    transform: translate(0%, -37%);
  }

  .m-xa-0.m-ya-50 img, .m-xa-0.m-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 0%;
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
  }

  .m-xa-0.m-ya-63 img, .m-xa-0.m-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 0%;
    -webkit-transform: translate(0%, -63%);
    -ms-transform: translate(0%, -63%);
    transform: translate(0%, -63%);
  }

  .m-xa-0.m-ya-75 img, .m-xa-0.m-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 0%;
    -webkit-transform: translate(0%, -75%);
    -ms-transform: translate(0%, -75%);
    transform: translate(0%, -75%);
  }

  .m-xa-0.m-ya-88 img, .m-xa-0.m-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 0%;
    -webkit-transform: translate(0%, -88%);
    -ms-transform: translate(0%, -88%);
    transform: translate(0%, -88%);
  }

  .m-xa-0.m-ya-100 img, .m-xa-0.m-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 0%;
    -webkit-transform: translate(0%, -100%);
    -ms-transform: translate(0%, -100%);
    transform: translate(0%, -100%);
  }

  .m-xa-12.m-ya-0 img, .m-xa-12.m-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 12%;
    -webkit-transform: translate(-12%, 0%);
    -ms-transform: translate(-12%, 0%);
    transform: translate(-12%, 0%);
  }

  .m-xa-12.m-ya-12 img, .m-xa-12.m-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 12%;
    -webkit-transform: translate(-12%, -12%);
    -ms-transform: translate(-12%, -12%);
    transform: translate(-12%, -12%);
  }

  .m-xa-12.m-ya-25 img, .m-xa-12.m-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 12%;
    -webkit-transform: translate(-12%, -25%);
    -ms-transform: translate(-12%, -25%);
    transform: translate(-12%, -25%);
  }

  .m-xa-12.m-ya-37 img, .m-xa-12.m-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 12%;
    -webkit-transform: translate(-12%, -37%);
    -ms-transform: translate(-12%, -37%);
    transform: translate(-12%, -37%);
  }

  .m-xa-12.m-ya-50 img, .m-xa-12.m-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 12%;
    -webkit-transform: translate(-12%, -50%);
    -ms-transform: translate(-12%, -50%);
    transform: translate(-12%, -50%);
  }

  .m-xa-12.m-ya-63 img, .m-xa-12.m-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 12%;
    -webkit-transform: translate(-12%, -63%);
    -ms-transform: translate(-12%, -63%);
    transform: translate(-12%, -63%);
  }

  .m-xa-12.m-ya-75 img, .m-xa-12.m-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 12%;
    -webkit-transform: translate(-12%, -75%);
    -ms-transform: translate(-12%, -75%);
    transform: translate(-12%, -75%);
  }

  .m-xa-12.m-ya-88 img, .m-xa-12.m-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 12%;
    -webkit-transform: translate(-12%, -88%);
    -ms-transform: translate(-12%, -88%);
    transform: translate(-12%, -88%);
  }

  .m-xa-12.m-ya-100 img, .m-xa-12.m-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 12%;
    -webkit-transform: translate(-12%, -100%);
    -ms-transform: translate(-12%, -100%);
    transform: translate(-12%, -100%);
  }

  .m-xa-25.m-ya-0 img, .m-xa-25.m-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 25%;
    -webkit-transform: translate(-25%, 0%);
    -ms-transform: translate(-25%, 0%);
    transform: translate(-25%, 0%);
  }

  .m-xa-25.m-ya-12 img, .m-xa-25.m-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 25%;
    -webkit-transform: translate(-25%, -12%);
    -ms-transform: translate(-25%, -12%);
    transform: translate(-25%, -12%);
  }

  .m-xa-25.m-ya-25 img, .m-xa-25.m-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 25%;
    -webkit-transform: translate(-25%, -25%);
    -ms-transform: translate(-25%, -25%);
    transform: translate(-25%, -25%);
  }

  .m-xa-25.m-ya-37 img, .m-xa-25.m-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 25%;
    -webkit-transform: translate(-25%, -37%);
    -ms-transform: translate(-25%, -37%);
    transform: translate(-25%, -37%);
  }

  .m-xa-25.m-ya-50 img, .m-xa-25.m-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 25%;
    -webkit-transform: translate(-25%, -50%);
    -ms-transform: translate(-25%, -50%);
    transform: translate(-25%, -50%);
  }

  .m-xa-25.m-ya-63 img, .m-xa-25.m-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 25%;
    -webkit-transform: translate(-25%, -63%);
    -ms-transform: translate(-25%, -63%);
    transform: translate(-25%, -63%);
  }

  .m-xa-25.m-ya-75 img, .m-xa-25.m-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 25%;
    -webkit-transform: translate(-25%, -75%);
    -ms-transform: translate(-25%, -75%);
    transform: translate(-25%, -75%);
  }

  .m-xa-25.m-ya-88 img, .m-xa-25.m-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 25%;
    -webkit-transform: translate(-25%, -88%);
    -ms-transform: translate(-25%, -88%);
    transform: translate(-25%, -88%);
  }

  .m-xa-25.m-ya-100 img, .m-xa-25.m-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 25%;
    -webkit-transform: translate(-25%, -100%);
    -ms-transform: translate(-25%, -100%);
    transform: translate(-25%, -100%);
  }

  .m-xa-37.m-ya-0 img, .m-xa-37.m-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 37%;
    -webkit-transform: translate(-37%, 0%);
    -ms-transform: translate(-37%, 0%);
    transform: translate(-37%, 0%);
  }

  .m-xa-37.m-ya-12 img, .m-xa-37.m-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 37%;
    -webkit-transform: translate(-37%, -12%);
    -ms-transform: translate(-37%, -12%);
    transform: translate(-37%, -12%);
  }

  .m-xa-37.m-ya-25 img, .m-xa-37.m-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 37%;
    -webkit-transform: translate(-37%, -25%);
    -ms-transform: translate(-37%, -25%);
    transform: translate(-37%, -25%);
  }

  .m-xa-37.m-ya-37 img, .m-xa-37.m-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 37%;
    -webkit-transform: translate(-37%, -37%);
    -ms-transform: translate(-37%, -37%);
    transform: translate(-37%, -37%);
  }

  .m-xa-37.m-ya-50 img, .m-xa-37.m-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 37%;
    -webkit-transform: translate(-37%, -50%);
    -ms-transform: translate(-37%, -50%);
    transform: translate(-37%, -50%);
  }

  .m-xa-37.m-ya-63 img, .m-xa-37.m-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 37%;
    -webkit-transform: translate(-37%, -63%);
    -ms-transform: translate(-37%, -63%);
    transform: translate(-37%, -63%);
  }

  .m-xa-37.m-ya-75 img, .m-xa-37.m-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 37%;
    -webkit-transform: translate(-37%, -75%);
    -ms-transform: translate(-37%, -75%);
    transform: translate(-37%, -75%);
  }

  .m-xa-37.m-ya-88 img, .m-xa-37.m-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 37%;
    -webkit-transform: translate(-37%, -88%);
    -ms-transform: translate(-37%, -88%);
    transform: translate(-37%, -88%);
  }

  .m-xa-37.m-ya-100 img, .m-xa-37.m-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 37%;
    -webkit-transform: translate(-37%, -100%);
    -ms-transform: translate(-37%, -100%);
    transform: translate(-37%, -100%);
  }

  .m-xa-50.m-ya-0 img, .m-xa-50.m-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 50%;
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
  }

  .m-xa-50.m-ya-12 img, .m-xa-50.m-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 50%;
    -webkit-transform: translate(-50%, -12%);
    -ms-transform: translate(-50%, -12%);
    transform: translate(-50%, -12%);
  }

  .m-xa-50.m-ya-25 img, .m-xa-50.m-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 50%;
    -webkit-transform: translate(-50%, -25%);
    -ms-transform: translate(-50%, -25%);
    transform: translate(-50%, -25%);
  }

  .m-xa-50.m-ya-37 img, .m-xa-50.m-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 50%;
    -webkit-transform: translate(-50%, -37%);
    -ms-transform: translate(-50%, -37%);
    transform: translate(-50%, -37%);
  }

  .m-xa-50.m-ya-50 img, .m-xa-50.m-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .m-xa-50.m-ya-63 img, .m-xa-50.m-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 50%;
    -webkit-transform: translate(-50%, -63%);
    -ms-transform: translate(-50%, -63%);
    transform: translate(-50%, -63%);
  }

  .m-xa-50.m-ya-75 img, .m-xa-50.m-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 50%;
    -webkit-transform: translate(-50%, -75%);
    -ms-transform: translate(-50%, -75%);
    transform: translate(-50%, -75%);
  }

  .m-xa-50.m-ya-88 img, .m-xa-50.m-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 50%;
    -webkit-transform: translate(-50%, -88%);
    -ms-transform: translate(-50%, -88%);
    transform: translate(-50%, -88%);
  }

  .m-xa-50.m-ya-100 img, .m-xa-50.m-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translate(-50%, -100%);
    -ms-transform: translate(-50%, -100%);
    transform: translate(-50%, -100%);
  }

  .m-xa-63.m-ya-0 img, .m-xa-63.m-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 63%;
    -webkit-transform: translate(-63%, 0%);
    -ms-transform: translate(-63%, 0%);
    transform: translate(-63%, 0%);
  }

  .m-xa-63.m-ya-12 img, .m-xa-63.m-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 63%;
    -webkit-transform: translate(-63%, -12%);
    -ms-transform: translate(-63%, -12%);
    transform: translate(-63%, -12%);
  }

  .m-xa-63.m-ya-25 img, .m-xa-63.m-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 63%;
    -webkit-transform: translate(-63%, -25%);
    -ms-transform: translate(-63%, -25%);
    transform: translate(-63%, -25%);
  }

  .m-xa-63.m-ya-37 img, .m-xa-63.m-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 63%;
    -webkit-transform: translate(-63%, -37%);
    -ms-transform: translate(-63%, -37%);
    transform: translate(-63%, -37%);
  }

  .m-xa-63.m-ya-50 img, .m-xa-63.m-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 63%;
    -webkit-transform: translate(-63%, -50%);
    -ms-transform: translate(-63%, -50%);
    transform: translate(-63%, -50%);
  }

  .m-xa-63.m-ya-63 img, .m-xa-63.m-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 63%;
    -webkit-transform: translate(-63%, -63%);
    -ms-transform: translate(-63%, -63%);
    transform: translate(-63%, -63%);
  }

  .m-xa-63.m-ya-75 img, .m-xa-63.m-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 63%;
    -webkit-transform: translate(-63%, -75%);
    -ms-transform: translate(-63%, -75%);
    transform: translate(-63%, -75%);
  }

  .m-xa-63.m-ya-88 img, .m-xa-63.m-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 63%;
    -webkit-transform: translate(-63%, -88%);
    -ms-transform: translate(-63%, -88%);
    transform: translate(-63%, -88%);
  }

  .m-xa-63.m-ya-100 img, .m-xa-63.m-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 63%;
    -webkit-transform: translate(-63%, -100%);
    -ms-transform: translate(-63%, -100%);
    transform: translate(-63%, -100%);
  }

  .m-xa-75.m-ya-0 img, .m-xa-75.m-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 75%;
    -webkit-transform: translate(-75%, 0%);
    -ms-transform: translate(-75%, 0%);
    transform: translate(-75%, 0%);
  }

  .m-xa-75.m-ya-12 img, .m-xa-75.m-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 75%;
    -webkit-transform: translate(-75%, -12%);
    -ms-transform: translate(-75%, -12%);
    transform: translate(-75%, -12%);
  }

  .m-xa-75.m-ya-25 img, .m-xa-75.m-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 75%;
    -webkit-transform: translate(-75%, -25%);
    -ms-transform: translate(-75%, -25%);
    transform: translate(-75%, -25%);
  }

  .m-xa-75.m-ya-37 img, .m-xa-75.m-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 75%;
    -webkit-transform: translate(-75%, -37%);
    -ms-transform: translate(-75%, -37%);
    transform: translate(-75%, -37%);
  }

  .m-xa-75.m-ya-50 img, .m-xa-75.m-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 75%;
    -webkit-transform: translate(-75%, -50%);
    -ms-transform: translate(-75%, -50%);
    transform: translate(-75%, -50%);
  }

  .m-xa-75.m-ya-63 img, .m-xa-75.m-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 75%;
    -webkit-transform: translate(-75%, -63%);
    -ms-transform: translate(-75%, -63%);
    transform: translate(-75%, -63%);
  }

  .m-xa-75.m-ya-75 img, .m-xa-75.m-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 75%;
    -webkit-transform: translate(-75%, -75%);
    -ms-transform: translate(-75%, -75%);
    transform: translate(-75%, -75%);
  }

  .m-xa-75.m-ya-88 img, .m-xa-75.m-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 75%;
    -webkit-transform: translate(-75%, -88%);
    -ms-transform: translate(-75%, -88%);
    transform: translate(-75%, -88%);
  }

  .m-xa-75.m-ya-100 img, .m-xa-75.m-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 75%;
    -webkit-transform: translate(-75%, -100%);
    -ms-transform: translate(-75%, -100%);
    transform: translate(-75%, -100%);
  }

  .m-xa-88.m-ya-0 img, .m-xa-88.m-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 88%;
    -webkit-transform: translate(-88%, 0%);
    -ms-transform: translate(-88%, 0%);
    transform: translate(-88%, 0%);
  }

  .m-xa-88.m-ya-12 img, .m-xa-88.m-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 88%;
    -webkit-transform: translate(-88%, -12%);
    -ms-transform: translate(-88%, -12%);
    transform: translate(-88%, -12%);
  }

  .m-xa-88.m-ya-25 img, .m-xa-88.m-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 88%;
    -webkit-transform: translate(-88%, -25%);
    -ms-transform: translate(-88%, -25%);
    transform: translate(-88%, -25%);
  }

  .m-xa-88.m-ya-37 img, .m-xa-88.m-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 88%;
    -webkit-transform: translate(-88%, -37%);
    -ms-transform: translate(-88%, -37%);
    transform: translate(-88%, -37%);
  }

  .m-xa-88.m-ya-50 img, .m-xa-88.m-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 88%;
    -webkit-transform: translate(-88%, -50%);
    -ms-transform: translate(-88%, -50%);
    transform: translate(-88%, -50%);
  }

  .m-xa-88.m-ya-63 img, .m-xa-88.m-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 88%;
    -webkit-transform: translate(-88%, -63%);
    -ms-transform: translate(-88%, -63%);
    transform: translate(-88%, -63%);
  }

  .m-xa-88.m-ya-75 img, .m-xa-88.m-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 88%;
    -webkit-transform: translate(-88%, -75%);
    -ms-transform: translate(-88%, -75%);
    transform: translate(-88%, -75%);
  }

  .m-xa-88.m-ya-88 img, .m-xa-88.m-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 88%;
    -webkit-transform: translate(-88%, -88%);
    -ms-transform: translate(-88%, -88%);
    transform: translate(-88%, -88%);
  }

  .m-xa-88.m-ya-100 img, .m-xa-88.m-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 88%;
    -webkit-transform: translate(-88%, -100%);
    -ms-transform: translate(-88%, -100%);
    transform: translate(-88%, -100%);
  }

  .m-xa-100.m-ya-0 img, .m-xa-100.m-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 100%;
    -webkit-transform: translate(-100%, 0%);
    -ms-transform: translate(-100%, 0%);
    transform: translate(-100%, 0%);
  }

  .m-xa-100.m-ya-12 img, .m-xa-100.m-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 100%;
    -webkit-transform: translate(-100%, -12%);
    -ms-transform: translate(-100%, -12%);
    transform: translate(-100%, -12%);
  }

  .m-xa-100.m-ya-25 img, .m-xa-100.m-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 100%;
    -webkit-transform: translate(-100%, -25%);
    -ms-transform: translate(-100%, -25%);
    transform: translate(-100%, -25%);
  }

  .m-xa-100.m-ya-37 img, .m-xa-100.m-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 100%;
    -webkit-transform: translate(-100%, -37%);
    -ms-transform: translate(-100%, -37%);
    transform: translate(-100%, -37%);
  }

  .m-xa-100.m-ya-50 img, .m-xa-100.m-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 100%;
    -webkit-transform: translate(-100%, -50%);
    -ms-transform: translate(-100%, -50%);
    transform: translate(-100%, -50%);
  }

  .m-xa-100.m-ya-63 img, .m-xa-100.m-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 100%;
    -webkit-transform: translate(-100%, -63%);
    -ms-transform: translate(-100%, -63%);
    transform: translate(-100%, -63%);
  }

  .m-xa-100.m-ya-75 img, .m-xa-100.m-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 100%;
    -webkit-transform: translate(-100%, -75%);
    -ms-transform: translate(-100%, -75%);
    transform: translate(-100%, -75%);
  }

  .m-xa-100.m-ya-88 img, .m-xa-100.m-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 100%;
    -webkit-transform: translate(-100%, -88%);
    -ms-transform: translate(-100%, -88%);
    transform: translate(-100%, -88%);
  }

  .m-xa-100.m-ya-100 img, .m-xa-100.m-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 100%;
    -webkit-transform: translate(-100%, -100%);
    -ms-transform: translate(-100%, -100%);
    transform: translate(-100%, -100%);
  }
}

@media screen and (max-width: 659.9px) {
  .s-xa-0.s-ya-0 img, .s-xa-0.s-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 0%;
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }

  .s-xa-0.s-ya-12 img, .s-xa-0.s-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 0%;
    -webkit-transform: translate(0%, -12%);
    -ms-transform: translate(0%, -12%);
    transform: translate(0%, -12%);
  }

  .s-xa-0.s-ya-25 img, .s-xa-0.s-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 0%;
    -webkit-transform: translate(0%, -25%);
    -ms-transform: translate(0%, -25%);
    transform: translate(0%, -25%);
  }

  .s-xa-0.s-ya-37 img, .s-xa-0.s-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 0%;
    -webkit-transform: translate(0%, -37%);
    -ms-transform: translate(0%, -37%);
    transform: translate(0%, -37%);
  }

  .s-xa-0.s-ya-50 img, .s-xa-0.s-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 0%;
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
  }

  .s-xa-0.s-ya-63 img, .s-xa-0.s-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 0%;
    -webkit-transform: translate(0%, -63%);
    -ms-transform: translate(0%, -63%);
    transform: translate(0%, -63%);
  }

  .s-xa-0.s-ya-75 img, .s-xa-0.s-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 0%;
    -webkit-transform: translate(0%, -75%);
    -ms-transform: translate(0%, -75%);
    transform: translate(0%, -75%);
  }

  .s-xa-0.s-ya-88 img, .s-xa-0.s-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 0%;
    -webkit-transform: translate(0%, -88%);
    -ms-transform: translate(0%, -88%);
    transform: translate(0%, -88%);
  }

  .s-xa-0.s-ya-100 img, .s-xa-0.s-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 0%;
    -webkit-transform: translate(0%, -100%);
    -ms-transform: translate(0%, -100%);
    transform: translate(0%, -100%);
  }

  .s-xa-12.s-ya-0 img, .s-xa-12.s-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 12%;
    -webkit-transform: translate(-12%, 0%);
    -ms-transform: translate(-12%, 0%);
    transform: translate(-12%, 0%);
  }

  .s-xa-12.s-ya-12 img, .s-xa-12.s-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 12%;
    -webkit-transform: translate(-12%, -12%);
    -ms-transform: translate(-12%, -12%);
    transform: translate(-12%, -12%);
  }

  .s-xa-12.s-ya-25 img, .s-xa-12.s-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 12%;
    -webkit-transform: translate(-12%, -25%);
    -ms-transform: translate(-12%, -25%);
    transform: translate(-12%, -25%);
  }

  .s-xa-12.s-ya-37 img, .s-xa-12.s-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 12%;
    -webkit-transform: translate(-12%, -37%);
    -ms-transform: translate(-12%, -37%);
    transform: translate(-12%, -37%);
  }

  .s-xa-12.s-ya-50 img, .s-xa-12.s-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 12%;
    -webkit-transform: translate(-12%, -50%);
    -ms-transform: translate(-12%, -50%);
    transform: translate(-12%, -50%);
  }

  .s-xa-12.s-ya-63 img, .s-xa-12.s-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 12%;
    -webkit-transform: translate(-12%, -63%);
    -ms-transform: translate(-12%, -63%);
    transform: translate(-12%, -63%);
  }

  .s-xa-12.s-ya-75 img, .s-xa-12.s-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 12%;
    -webkit-transform: translate(-12%, -75%);
    -ms-transform: translate(-12%, -75%);
    transform: translate(-12%, -75%);
  }

  .s-xa-12.s-ya-88 img, .s-xa-12.s-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 12%;
    -webkit-transform: translate(-12%, -88%);
    -ms-transform: translate(-12%, -88%);
    transform: translate(-12%, -88%);
  }

  .s-xa-12.s-ya-100 img, .s-xa-12.s-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 12%;
    -webkit-transform: translate(-12%, -100%);
    -ms-transform: translate(-12%, -100%);
    transform: translate(-12%, -100%);
  }

  .s-xa-25.s-ya-0 img, .s-xa-25.s-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 25%;
    -webkit-transform: translate(-25%, 0%);
    -ms-transform: translate(-25%, 0%);
    transform: translate(-25%, 0%);
  }

  .s-xa-25.s-ya-12 img, .s-xa-25.s-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 25%;
    -webkit-transform: translate(-25%, -12%);
    -ms-transform: translate(-25%, -12%);
    transform: translate(-25%, -12%);
  }

  .s-xa-25.s-ya-25 img, .s-xa-25.s-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 25%;
    -webkit-transform: translate(-25%, -25%);
    -ms-transform: translate(-25%, -25%);
    transform: translate(-25%, -25%);
  }

  .s-xa-25.s-ya-37 img, .s-xa-25.s-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 25%;
    -webkit-transform: translate(-25%, -37%);
    -ms-transform: translate(-25%, -37%);
    transform: translate(-25%, -37%);
  }

  .s-xa-25.s-ya-50 img, .s-xa-25.s-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 25%;
    -webkit-transform: translate(-25%, -50%);
    -ms-transform: translate(-25%, -50%);
    transform: translate(-25%, -50%);
  }

  .s-xa-25.s-ya-63 img, .s-xa-25.s-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 25%;
    -webkit-transform: translate(-25%, -63%);
    -ms-transform: translate(-25%, -63%);
    transform: translate(-25%, -63%);
  }

  .s-xa-25.s-ya-75 img, .s-xa-25.s-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 25%;
    -webkit-transform: translate(-25%, -75%);
    -ms-transform: translate(-25%, -75%);
    transform: translate(-25%, -75%);
  }

  .s-xa-25.s-ya-88 img, .s-xa-25.s-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 25%;
    -webkit-transform: translate(-25%, -88%);
    -ms-transform: translate(-25%, -88%);
    transform: translate(-25%, -88%);
  }

  .s-xa-25.s-ya-100 img, .s-xa-25.s-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 25%;
    -webkit-transform: translate(-25%, -100%);
    -ms-transform: translate(-25%, -100%);
    transform: translate(-25%, -100%);
  }

  .s-xa-37.s-ya-0 img, .s-xa-37.s-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 37%;
    -webkit-transform: translate(-37%, 0%);
    -ms-transform: translate(-37%, 0%);
    transform: translate(-37%, 0%);
  }

  .s-xa-37.s-ya-12 img, .s-xa-37.s-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 37%;
    -webkit-transform: translate(-37%, -12%);
    -ms-transform: translate(-37%, -12%);
    transform: translate(-37%, -12%);
  }

  .s-xa-37.s-ya-25 img, .s-xa-37.s-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 37%;
    -webkit-transform: translate(-37%, -25%);
    -ms-transform: translate(-37%, -25%);
    transform: translate(-37%, -25%);
  }

  .s-xa-37.s-ya-37 img, .s-xa-37.s-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 37%;
    -webkit-transform: translate(-37%, -37%);
    -ms-transform: translate(-37%, -37%);
    transform: translate(-37%, -37%);
  }

  .s-xa-37.s-ya-50 img, .s-xa-37.s-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 37%;
    -webkit-transform: translate(-37%, -50%);
    -ms-transform: translate(-37%, -50%);
    transform: translate(-37%, -50%);
  }

  .s-xa-37.s-ya-63 img, .s-xa-37.s-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 37%;
    -webkit-transform: translate(-37%, -63%);
    -ms-transform: translate(-37%, -63%);
    transform: translate(-37%, -63%);
  }

  .s-xa-37.s-ya-75 img, .s-xa-37.s-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 37%;
    -webkit-transform: translate(-37%, -75%);
    -ms-transform: translate(-37%, -75%);
    transform: translate(-37%, -75%);
  }

  .s-xa-37.s-ya-88 img, .s-xa-37.s-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 37%;
    -webkit-transform: translate(-37%, -88%);
    -ms-transform: translate(-37%, -88%);
    transform: translate(-37%, -88%);
  }

  .s-xa-37.s-ya-100 img, .s-xa-37.s-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 37%;
    -webkit-transform: translate(-37%, -100%);
    -ms-transform: translate(-37%, -100%);
    transform: translate(-37%, -100%);
  }

  .s-xa-50.s-ya-0 img, .s-xa-50.s-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 50%;
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
  }

  .s-xa-50.s-ya-12 img, .s-xa-50.s-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 50%;
    -webkit-transform: translate(-50%, -12%);
    -ms-transform: translate(-50%, -12%);
    transform: translate(-50%, -12%);
  }

  .s-xa-50.s-ya-25 img, .s-xa-50.s-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 50%;
    -webkit-transform: translate(-50%, -25%);
    -ms-transform: translate(-50%, -25%);
    transform: translate(-50%, -25%);
  }

  .s-xa-50.s-ya-37 img, .s-xa-50.s-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 50%;
    -webkit-transform: translate(-50%, -37%);
    -ms-transform: translate(-50%, -37%);
    transform: translate(-50%, -37%);
  }

  .s-xa-50.s-ya-50 img, .s-xa-50.s-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .s-xa-50.s-ya-63 img, .s-xa-50.s-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 50%;
    -webkit-transform: translate(-50%, -63%);
    -ms-transform: translate(-50%, -63%);
    transform: translate(-50%, -63%);
  }

  .s-xa-50.s-ya-75 img, .s-xa-50.s-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 50%;
    -webkit-transform: translate(-50%, -75%);
    -ms-transform: translate(-50%, -75%);
    transform: translate(-50%, -75%);
  }

  .s-xa-50.s-ya-88 img, .s-xa-50.s-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 50%;
    -webkit-transform: translate(-50%, -88%);
    -ms-transform: translate(-50%, -88%);
    transform: translate(-50%, -88%);
  }

  .s-xa-50.s-ya-100 img, .s-xa-50.s-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translate(-50%, -100%);
    -ms-transform: translate(-50%, -100%);
    transform: translate(-50%, -100%);
  }

  .s-xa-63.s-ya-0 img, .s-xa-63.s-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 63%;
    -webkit-transform: translate(-63%, 0%);
    -ms-transform: translate(-63%, 0%);
    transform: translate(-63%, 0%);
  }

  .s-xa-63.s-ya-12 img, .s-xa-63.s-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 63%;
    -webkit-transform: translate(-63%, -12%);
    -ms-transform: translate(-63%, -12%);
    transform: translate(-63%, -12%);
  }

  .s-xa-63.s-ya-25 img, .s-xa-63.s-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 63%;
    -webkit-transform: translate(-63%, -25%);
    -ms-transform: translate(-63%, -25%);
    transform: translate(-63%, -25%);
  }

  .s-xa-63.s-ya-37 img, .s-xa-63.s-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 63%;
    -webkit-transform: translate(-63%, -37%);
    -ms-transform: translate(-63%, -37%);
    transform: translate(-63%, -37%);
  }

  .s-xa-63.s-ya-50 img, .s-xa-63.s-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 63%;
    -webkit-transform: translate(-63%, -50%);
    -ms-transform: translate(-63%, -50%);
    transform: translate(-63%, -50%);
  }

  .s-xa-63.s-ya-63 img, .s-xa-63.s-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 63%;
    -webkit-transform: translate(-63%, -63%);
    -ms-transform: translate(-63%, -63%);
    transform: translate(-63%, -63%);
  }

  .s-xa-63.s-ya-75 img, .s-xa-63.s-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 63%;
    -webkit-transform: translate(-63%, -75%);
    -ms-transform: translate(-63%, -75%);
    transform: translate(-63%, -75%);
  }

  .s-xa-63.s-ya-88 img, .s-xa-63.s-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 63%;
    -webkit-transform: translate(-63%, -88%);
    -ms-transform: translate(-63%, -88%);
    transform: translate(-63%, -88%);
  }

  .s-xa-63.s-ya-100 img, .s-xa-63.s-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 63%;
    -webkit-transform: translate(-63%, -100%);
    -ms-transform: translate(-63%, -100%);
    transform: translate(-63%, -100%);
  }

  .s-xa-75.s-ya-0 img, .s-xa-75.s-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 75%;
    -webkit-transform: translate(-75%, 0%);
    -ms-transform: translate(-75%, 0%);
    transform: translate(-75%, 0%);
  }

  .s-xa-75.s-ya-12 img, .s-xa-75.s-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 75%;
    -webkit-transform: translate(-75%, -12%);
    -ms-transform: translate(-75%, -12%);
    transform: translate(-75%, -12%);
  }

  .s-xa-75.s-ya-25 img, .s-xa-75.s-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 75%;
    -webkit-transform: translate(-75%, -25%);
    -ms-transform: translate(-75%, -25%);
    transform: translate(-75%, -25%);
  }

  .s-xa-75.s-ya-37 img, .s-xa-75.s-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 75%;
    -webkit-transform: translate(-75%, -37%);
    -ms-transform: translate(-75%, -37%);
    transform: translate(-75%, -37%);
  }

  .s-xa-75.s-ya-50 img, .s-xa-75.s-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 75%;
    -webkit-transform: translate(-75%, -50%);
    -ms-transform: translate(-75%, -50%);
    transform: translate(-75%, -50%);
  }

  .s-xa-75.s-ya-63 img, .s-xa-75.s-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 75%;
    -webkit-transform: translate(-75%, -63%);
    -ms-transform: translate(-75%, -63%);
    transform: translate(-75%, -63%);
  }

  .s-xa-75.s-ya-75 img, .s-xa-75.s-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 75%;
    -webkit-transform: translate(-75%, -75%);
    -ms-transform: translate(-75%, -75%);
    transform: translate(-75%, -75%);
  }

  .s-xa-75.s-ya-88 img, .s-xa-75.s-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 75%;
    -webkit-transform: translate(-75%, -88%);
    -ms-transform: translate(-75%, -88%);
    transform: translate(-75%, -88%);
  }

  .s-xa-75.s-ya-100 img, .s-xa-75.s-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 75%;
    -webkit-transform: translate(-75%, -100%);
    -ms-transform: translate(-75%, -100%);
    transform: translate(-75%, -100%);
  }

  .s-xa-88.s-ya-0 img, .s-xa-88.s-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 88%;
    -webkit-transform: translate(-88%, 0%);
    -ms-transform: translate(-88%, 0%);
    transform: translate(-88%, 0%);
  }

  .s-xa-88.s-ya-12 img, .s-xa-88.s-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 88%;
    -webkit-transform: translate(-88%, -12%);
    -ms-transform: translate(-88%, -12%);
    transform: translate(-88%, -12%);
  }

  .s-xa-88.s-ya-25 img, .s-xa-88.s-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 88%;
    -webkit-transform: translate(-88%, -25%);
    -ms-transform: translate(-88%, -25%);
    transform: translate(-88%, -25%);
  }

  .s-xa-88.s-ya-37 img, .s-xa-88.s-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 88%;
    -webkit-transform: translate(-88%, -37%);
    -ms-transform: translate(-88%, -37%);
    transform: translate(-88%, -37%);
  }

  .s-xa-88.s-ya-50 img, .s-xa-88.s-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 88%;
    -webkit-transform: translate(-88%, -50%);
    -ms-transform: translate(-88%, -50%);
    transform: translate(-88%, -50%);
  }

  .s-xa-88.s-ya-63 img, .s-xa-88.s-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 88%;
    -webkit-transform: translate(-88%, -63%);
    -ms-transform: translate(-88%, -63%);
    transform: translate(-88%, -63%);
  }

  .s-xa-88.s-ya-75 img, .s-xa-88.s-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 88%;
    -webkit-transform: translate(-88%, -75%);
    -ms-transform: translate(-88%, -75%);
    transform: translate(-88%, -75%);
  }

  .s-xa-88.s-ya-88 img, .s-xa-88.s-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 88%;
    -webkit-transform: translate(-88%, -88%);
    -ms-transform: translate(-88%, -88%);
    transform: translate(-88%, -88%);
  }

  .s-xa-88.s-ya-100 img, .s-xa-88.s-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 88%;
    -webkit-transform: translate(-88%, -100%);
    -ms-transform: translate(-88%, -100%);
    transform: translate(-88%, -100%);
  }

  .s-xa-100.s-ya-0 img, .s-xa-100.s-ya-0 svg {
    position: absolute;
    top: 0%;
    left: 100%;
    -webkit-transform: translate(-100%, 0%);
    -ms-transform: translate(-100%, 0%);
    transform: translate(-100%, 0%);
  }

  .s-xa-100.s-ya-12 img, .s-xa-100.s-ya-12 svg {
    position: absolute;
    top: 12%;
    left: 100%;
    -webkit-transform: translate(-100%, -12%);
    -ms-transform: translate(-100%, -12%);
    transform: translate(-100%, -12%);
  }

  .s-xa-100.s-ya-25 img, .s-xa-100.s-ya-25 svg {
    position: absolute;
    top: 25%;
    left: 100%;
    -webkit-transform: translate(-100%, -25%);
    -ms-transform: translate(-100%, -25%);
    transform: translate(-100%, -25%);
  }

  .s-xa-100.s-ya-37 img, .s-xa-100.s-ya-37 svg {
    position: absolute;
    top: 37%;
    left: 100%;
    -webkit-transform: translate(-100%, -37%);
    -ms-transform: translate(-100%, -37%);
    transform: translate(-100%, -37%);
  }

  .s-xa-100.s-ya-50 img, .s-xa-100.s-ya-50 svg {
    position: absolute;
    top: 50%;
    left: 100%;
    -webkit-transform: translate(-100%, -50%);
    -ms-transform: translate(-100%, -50%);
    transform: translate(-100%, -50%);
  }

  .s-xa-100.s-ya-63 img, .s-xa-100.s-ya-63 svg {
    position: absolute;
    top: 63%;
    left: 100%;
    -webkit-transform: translate(-100%, -63%);
    -ms-transform: translate(-100%, -63%);
    transform: translate(-100%, -63%);
  }

  .s-xa-100.s-ya-75 img, .s-xa-100.s-ya-75 svg {
    position: absolute;
    top: 75%;
    left: 100%;
    -webkit-transform: translate(-100%, -75%);
    -ms-transform: translate(-100%, -75%);
    transform: translate(-100%, -75%);
  }

  .s-xa-100.s-ya-88 img, .s-xa-100.s-ya-88 svg {
    position: absolute;
    top: 88%;
    left: 100%;
    -webkit-transform: translate(-100%, -88%);
    -ms-transform: translate(-100%, -88%);
    transform: translate(-100%, -88%);
  }

  .s-xa-100.s-ya-100 img, .s-xa-100.s-ya-100 svg {
    position: absolute;
    top: 100%;
    left: 100%;
    -webkit-transform: translate(-100%, -100%);
    -ms-transform: translate(-100%, -100%);
    transform: translate(-100%, -100%);
  }
}

@-webkit-keyframes slideshow-iii {
  0% {
    opacity: 0;
  }
  3.33% {
    opacity: 1;
  }
  33.33% {
    opacity: 1;
  }
  36.66% {
    opacity: 0;
  }
}

@-webkit-keyframes slideshow-iiii {
  0% {
    opacity: 0;
  }
  2.25% {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  27.25% {
    opacity: 0;
  }
}

@-webkit-keyframes slideshow-iiiii {
  0% {
    opacity: 0;
  }
  2% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  22% {
    opacity: 0;
  }
}

@-ms-keyframes slideshow-iii {
  0% {
    opacity: 0;
  }
  3.33% {
    opacity: 1;
  }
  33.33% {
    opacity: 1;
  }
  36.66% {
    opacity: 0;
  }
}

@-ms-keyframes slideshow-iiii {
  0% {
    opacity: 0;
  }
  2.25% {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  27.25% {
    opacity: 0;
  }
}

@-ms-keyframes slideshow-iiiii {
  0% {
    opacity: 0;
  }
  2% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  22% {
    opacity: 0;
  }
}

@keyframes slideshow-iii {
  0% {
    opacity: 0;
  }
  3.33% {
    opacity: 1;
  }
  33.33% {
    opacity: 1;
  }
  36.66% {
    opacity: 0;
  }
}

@keyframes slideshow-iiii {
  0% {
    opacity: 0;
  }
  2.25% {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  27.25% {
    opacity: 0;
  }
}

@keyframes slideshow-iiiii {
  0% {
    opacity: 0;
  }
  2% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  22% {
    opacity: 0;
  }
}

.slideshow {
  overflow: hidden;
  position: relative;
}

.slideshow > img {
  display: block;
  margin-bottom: 6px;
}

.slideshow:not([class*="ya-"]) > img + img {
  top: 0%;
}

.slideshow > img:nth-of-type(2):nth-last-of-type(2) {
  position: absolute;
  opacity: 0;
  -webkit-animation: slideshow-iii 12s linear 4s infinite;
  -ms-animation: slideshow-iii 12s linear 4s infinite;
  animation: slideshow-iii 12s linear 4s infinite;
}

.slideshow > img:nth-of-type(3):nth-last-of-type(1) {
  position: absolute;
  opacity: 0;
  -webkit-animation: slideshow-iii 12s linear 8s infinite;
  -ms-animation: slideshow-iii 12s linear 8s infinite;
  animation: slideshow-iii 12s linear 8s infinite;
}

.slideshow > img:nth-of-type(2):nth-last-of-type(3) {
  position: absolute;
  opacity: 0;
  -webkit-animation: slideshow-iiii 16s linear 4s infinite;
  -ms-animation: slideshow-iiii 16s linear 4s infinite;
  animation: slideshow-iiii 16s linear 4s infinite;
}

.slideshow > img:nth-of-type(3):nth-last-of-type(2) {
  position: absolute;
  opacity: 0;
  -webkit-animation: slideshow-iiii 16s linear 8s infinite;
  -ms-animation: slideshow-iiii 16s linear 8s infinite;
  animation: slideshow-iiii 16s linear 8s infinite;
}

.slideshow > img:nth-of-type(4):nth-last-of-type(1) {
  position: absolute;
  opacity: 0;
  -webkit-animation: slideshow-iiii 16s linear 12s infinite;
  -ms-animation: slideshow-iiii 16s linear 12s infinite;
  animation: slideshow-iiii 16s linear 12s infinite;
}

.slideshow > img:nth-of-type(2):nth-last-of-type(4) {
  position: absolute;
  opacity: 0;
  -webkit-animation: slideshow-iiiii 20s linear 4s infinite;
  -ms-animation: slideshow-iiiii 20s linear 4s infinite;
  animation: slideshow-iiiii 20s linear 4s infinite;
}

.slideshow > img:nth-of-type(3):nth-last-of-type(3) {
  position: absolute;
  opacity: 0;
  -webkit-animation: slideshow-iiiii 20s linear 8s infinite;
  -ms-animation: slideshow-iiiii 20s linear 8s infinite;
  animation: slideshow-iiiii 20s linear 8s infinite;
}

.slideshow img:nth-of-type(4):nth-last-of-type(2) {
  position: absolute;
  opacity: 0;
  -webkit-animation: slideshow-iiiii 20s linear 12s infinite;
  -ms-animation: slideshow-iiiii 20s linear 12s infinite;
  animation: slideshow-iiiii 20s linear 12s infinite;
}

.slideshow img:nth-of-type(5):nth-last-of-type(1) {
  position: absolute;
  opacity: 0;
  -webkit-animation: slideshow-iiiii 20s linear 16s infinite;
  -ms-animation: slideshow-iiiii 20s linear 16s infinite;
  animation: slideshow-iiiii 20s linear 16s infinite;
}

.fade-in::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 50px;
  z-index: 1;
  background: -moz-linear-gradient(top, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
  background: -webkit-linear-gradient(top, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#00ffffff', GradientType=0);
}

.fade-out::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 50px;
  z-index: 1;
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=0);
}

@media screen and (min-width: 1300px) {
  .xl-fade-in::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50px;
    z-index: 1;
    background: -moz-linear-gradient(top, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(top, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to bottom, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#00ffffff', GradientType=0);
  }

  .xl-fade-out::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50px;
    z-index: 1;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=0);
  }
}

@media screen and (min-width: 980px) {
  .l-fade-in::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50px;
    z-index: 1;
    background: -moz-linear-gradient(top, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(top, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to bottom, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#00ffffff', GradientType=0);
  }

  .l-fade-out::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50px;
    z-index: 1;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=0);
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .m-fade-in::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50px;
    z-index: 1;
    background: -moz-linear-gradient(top, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(top, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to bottom, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#00ffffff', GradientType=0);
  }

  .m-fade-out::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50px;
    z-index: 1;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=0);
  }
}

@media screen and (max-width: 659.9px) {
  .s-fade-in::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50px;
    z-index: 1;
    background: -moz-linear-gradient(top, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(top, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to bottom, #ffffff 0%, #ffffff 20%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#00ffffff', GradientType=0);
  }

  .s-fade-out::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50px;
    z-index: 1;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=0);
  }
}

.visual {
  position: relative;
  overflow: hidden;
}

.visual img,
.visual svg {
  display: block;
}

.visual.align-center img,
.visual.align-center svg {
  margin-left: auto;
  margin-right: auto;
}

/* das ist unlogisch, da es fuer alle 3 Views g?ltig ist, aber l- eigentlich fuer l-View steht */
/* Wann treffen diese Selektoren zu? */
/*
.teaser img[class*=" h-"].l-auto,
.teaser img[class^="h-"].l-auto,
.teaser svg[class*=" h-"].l-auto,
.teaser svg[class^="h-"].l-auto {
    width: auto;
}*/
.scaled.visual img,
.visual img.scaled,
.scaled.visual svg,
.visual svg.scaled {
  width: 100%;
  height: auto;
}

.teaser img[class^="l-"].h-auto,
.teaser img[class*=" l-"].h-auto,
.teaser svg[class^="l-"].h-auto,
.teaser svg[class*=" l-"].h-auto {
  height: auto;
}

@media screen and (min-width: 980px) {
  .teaser img[class*=" l-h-"].l-auto,
  .teaser img[class^="l-h-"].l-auto,
  .teaser svg[class*=" l-h-"].l-auto,
  .teaser svg[class^="l-h-"].l-auto {
    width: auto;
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .teaser img[class*=" m-h-"].m-auto,
  .teaser img[class^="m-h-"].m-auto,
  .teaser svg[class*=" m-h-"].m-auto,
  .teaser svg[class^="m-h-"].m-auto {
    width: auto;
  }
}

@media screen and (max-width: 659.9px) {
  .teaser img[class*=" s-h-"].s-auto,
  .teaser img[class^="s-h-"].s-auto,
  .teaser svg[class*=" s-h-"].s-auto,
  .teaser svg[class^="s-h-"].s-auto {
    width: auto;
  }
}

.framed.visual,
.circled.visual,
.squared.visual {
  position: relative;
}

.circled.visual::before {
  content: "";
  position: relative;
  /*padding-left: 100%; macht zusaezlichen Abstand :-( */
  padding-top: 100%;
  margin: 0;
  border-radius: 50%;
  box-shadow: inset #1C449B 0px 0px 0px 2px;
  box-sizing: border-box;
  display: block;
}

.framed.visual::before,
.squared.visual::before {
  content: "";
  position: relative;
  padding-top: 100%;
  margin: 0;
  border-radius: 4px;
  background-color: #F1F4F9;
  box-sizing: border-box;
  display: block;
}

.framed.visual::before {
  border-radius: 4px;
  background-color: #FFFFFF;
  box-shadow: inset #DADADA 0px 0px 0px 1px;
}

.backdrop-b1-base .circled.visual::before,
.backdrop-b1-base .framed.visual::before,
.backdrop-b1-base .squared.visual::before {
  box-shadow: inset #FFFFFF 0px 0px 0px 2px;
  background-color: transparent;
}

.framed.visual > a,
.circled.visual > a,
.squared.visual > a {
  display: block;
  width: 100%;
  height: 100%;
}

.framed.visual > *,
.circled.visual > *,
.squared.visual > *,
.framed.visual > a > *,
.circled.visual > a > *,
.squared.visual > a > * {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.framed.visual > * + *,
.circled.visual > * + *,
.squared.visual > * + *,
.framed.visual.linked > a > * + *,
.circled.visual.linked > a > * + *,
.squared.visual.linked > a > * + * {
  display: none;
}

/* Wenn Visual verlinkt gibt es einen hover-Effekt */
.circled.visual.linked:hover::before,
.squared.visual.linked:hover::before {
  background: #1C449B;
}

.framed.visual.linked:hover::before {
  background: #1C449B;
  box-shadow: inset #1C449B 0px 0px 0px 1px;
}

.backdrop-b1-base .circled.visual.linked:hover::before,
.backdrop-b1-base .squared.visual.linked:hover::before {
  background: #FFFFFF;
}

.backdrop-b1-base .framed.visual.linked:hover::before {
  background: #FFFFFF;
  box-shadow: inset #FFFFFF 0px 0px 0px 1px;
}

.framed.visual.linked:hover > a > *:first-of-type:not(:last-of-type),
.circled.visual.linked:hover > a > *:first-of-type:not(:last-of-type),
.squared.visual.linked:hover > a > *:first-of-type:not(:last-of-type) {
  display: none;
}

.framed.visual.linked:hover > a > *:last-of-type:not(:first-of-type),
.circled.visual.linked:hover > a > *:last-of-type:not(:first-of-type),
.squared.visual.linked:hover > a > *:last-of-type:not(:first-of-type) {
  display: inline-block;
}

/* vollverlinkte Teaser */
/* Wenn Teaser verlinkt gibt es einen hover-Effekt */
.teaser.linked:hover .circled.visual::before,
.teaser.linked:hover .squared.visual::before {
  background: #1C449B;
}

.teaser.linked:hover .framed.visual::before {
  background: #1C449B;
  box-shadow: inset #1C449B 0px 0px 0px 1px;
}

.backdrop-b1-base .teaser.linked:hover .circled.visual::before,
.backdrop-b1-base .teaser.linked:hover .squared.visual::before,
.teaser.inverted .linked:hover .circled.visual::before,
.teaser.inverted .linked:hover .squared.visual::before {
  background: #FFFFFF;
}

.backdrop-b1-base .teaser.linked:hover .framed.visual::before {
  background: #FFFFFF;
  box-shadow: inset #FFFFFF 0px 0px 0px 1px;
}

.teaser.linked:hover .framed.visual > *:first-of-type:not(:last-of-type),
.teaser.linked:hover .circled.visual > *:first-of-type:not(:last-of-type),
.teaser.linked:hover .squared.visual > *:first-of-type:not(:last-of-type),
.teaser.linked:hover .framed.visual > a > *:first-of-type:not(:last-of-type),
.teaser.linked:hover .circled.visual > a > *:first-of-type:not(:last-of-type),
.teaser.linked:hover .squared.visual > a > *:first-of-type:not(:last-of-type) {
  display: none;
}

.teaser.linked:hover .framed.visual > *:last-of-type:not(:first-of-type),
.teaser.linked:hover .circled.visual > *:last-of-type:not(:first-of-type),
.teaser.linked:hover .squared.visual > *:last-of-type:not(:first-of-type),
.teaser.linked:hover .framed.visual > a > *:last-of-type:not(:first-of-type),
.teaser.linked:hover .circled.visual > a > *:last-of-type:not(:first-of-type),
.teaser.linked:hover .squared.visual > a > *:last-of-type:not(:first-of-type) {
  display: inline-block;
}

/* legt den Content ueber die Backgroundcontainer (z.b. Buttons) */
.teaser .content > *:not(.background) {
  z-index: 1;
}

.no-flex .teaser .content > *:not(.background) {
  position: relative;
}

.content {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
}

.va-start[class] {
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}

.va-start-self {
  -webkit-align-self: flex-start;
  align-self: flex-start;
}

.va-end[class] {
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}

.va-end-self {
  -webkit-align-self: flex-end;
  align-self: flex-end;
}

.va-center[class] {
  -webkit-justify-content: center;
  justify-content: center;
}

.va-center-self {
  -webkit-align-self: center;
  align-self: center;
}

.va-spread[class] {
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

.va-spread-self {
  -webkit-align-self: stretch;
  align-self: stretch;
}

.overlay-top[class] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 99;
  padding: 16px 20px;
  box-sizing: border-box;
}

.overlay-bottom[class] {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 99;
  padding: 16px 20px;
  box-sizing: border-box;
}

[class*="overlay-"][class*="backdrop"]:not(.opaque)::before {
  opacity: 0.7;
}

body:not(.touch) .overlay-top .hover-content,
body:not(.touch) .overlay-bottom .hover-content {
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.5s linear;
  -moz-transition: max-height 0.5s linear;
  -ms-transition: max-height 0.5s linear;
  transition: max-height 0.5s linear;
}

body:not(.touch) .h-8.teaser:hover .overlay-top .hover-content,
body:not(.touch) .h-8.teaser:hover .overlay-bottom .hover-content {
  max-height: 310px;
}

body:not(.touch) .h-4.teaser:hover .overlay-top .hover-content,
body:not(.touch) .h-4.teaser:hover .overlay-bottom .hover-content {
  max-height: 160px;
}

/*  */
@media screen and (min-width: 980px) {
  .l-va-start[class] {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }

  .l-va-start-self {
    -webkit-align-self: flex-start;
    align-self: flex-start;
  }

  .l-va-end[class] {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }

  .l-va-end-self {
    -webkit-align-self: flex-end;
    align-self: flex-end;
  }

  .l-va-center[class] {
    -webkit-justify-content: center;
    justify-content: center;
  }

  .l-va-center-self {
    -webkit-align-self: center;
    align-self: center;
  }

  .l-va-spread[class] {
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .l-va-spread-self {
    -webkit-align-self: stretch;
    align-self: stretch;
  }

  .l-overlay-top[class] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 99;
    padding: 16px 20px;
    box-sizing: border-box;
  }

  .l-overlay-bottom[class] {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 99;
    padding: 16px 20px;
    box-sizing: border-box;
  }

  [class*="l-overlay-"][class*="backdrop"]:not(.opaque):not(.l-opaque)::before {
    opacity: 0.7;
  }

  body:not(.touch) [class*="l-overlay-"] .hover-content {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.5s linear;
    -moz-transition: max-height 0.5s linear;
    -ms-transition: max-height 0.5s linear;
    transition: max-height 0.5s linear;
  }

  body:not(.touch) .h-8.teaser:hover [class*="l-overlay-"] .hover-content {
    max-height: 310px;
  }

  body:not(.touch) .h-4.teaser:hover [class*="l-overlay-"] .hover-content {
    max-height: 160px;
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .m-va-start[class] {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }

  .m-va-start-self {
    -webkit-align-self: flex-start;
    align-self: flex-start;
  }

  .m-va-end[class] {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }

  .m-va-end-self {
    -webkit-align-self: flex-end;
    align-self: flex-end;
  }

  .m-va-center[class] {
    -webkit-justify-content: center;
    justify-content: center;
  }

  .m-va-center-self {
    -webkit-align-self: center;
    align-self: center;
  }

  .m-va-spread[class] {
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .m-va-spread-self {
    -webkit-align-self: stretch;
    align-self: stretch;
  }

  .m-overlay-top[class] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 99;
    padding: 16px 20px;
    box-sizing: border-box;
  }

  .m-overlay-bottom[class] {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 99;
    padding: 16px 20px;
    box-sizing: border-box;
  }

  [class*="m-overlay-"][class*="backdrop"]:not(.opaque):not(.m-opaque)::before {
    opacity: 0.7;
  }

  body:not(.touch) [class*="m-overlay-"] .hover-content {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.5s linear;
    -moz-transition: max-height 0.5s linear;
    -ms-transition: max-height 0.5s linear;
    transition: max-height 0.5s linear;
  }

  body:not(.touch) .h-8.teaser:hover [class*="m-overlay-"] .hover-content {
    max-height: 310px;
  }

  body:not(.touch) .h-4.teaser:hover [class*="m-overlay-"] .hover-content {
    max-height: 160px;
  }
}

@media screen and (max-width: 659.9px) {
  .s-va-start[class] {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }

  .s-va-start-self {
    -webkit-align-self: flex-start;
    align-self: flex-start;
  }

  .s-va-end[class] {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }

  .s-va-end-self {
    -webkit-align-self: flex-end;
    align-self: flex-end;
  }

  .s-va-center[class] {
    -webkit-justify-content: center;
    justify-content: center;
  }

  .s-va-center-self {
    -webkit-align-self: center;
    align-self: center;
  }

  .s-va-spread[class] {
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .s-va-spread-self {
    -webkit-align-self: stretch;
    align-self: stretch;
  }

  .s-overlay-top[class] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 99;
    padding: 16px 20px;
    box-sizing: border-box;
  }

  .s-overlay-bottom[class] {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 99;
    padding: 16px 20px;
    box-sizing: border-box;
  }

  [class*="s-overlay-"][class*="backdrop"]:not(.opaque):not(.s-opaque)::before {
    opacity: 0.7;
  }

  body:not(.touch) [class*="s-overlay-"] .hover-content {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.5s linear;
    -moz-transition: max-height 0.5s linear;
    -ms-transition: max-height 0.5s linear;
    transition: max-height 0.5s linear;
  }

  body:not(.touch) .h-8.teaser:hover [class*="s-overlay-"] .hover-content {
    max-height: 310px;
  }

  body:not(.touch) .h-4.teaser:hover [class*="s-overlay-"] .hover-content {
    max-height: 160px;
  }
}

/* Zentrierung von Bildern innerhalb des Teaser-Contents */
.teaser .content img.center {
  margin-left: auto;
  margin-right: auto;
}

.teaser > *:not(.background) + .content:not(.overlay-top):not(.overlay-bottom) {
  /*padding-top: 14px;*/
}

.teaser > .teaser-headline {
  padding-top: 10px;
  padding-bottom: 20px;
}

.teaser > .teaser-headline + .content:not(.overlay-top):not(.overlay-bottom),
.teaser.horizontal > *:not(.background) + .content:not(.overlay-top):not(.overlay-bottom) {
  padding-top: 0;
}

@media screen and (min-width: 980px) {
  .teaser.l-horizontal > *:not(.background) + .content:not(.overlay-top):not(.overlay-bottom) {
    padding-top: 0;
  }
}

/* vollbreiter m-8 Content unterhalb vom Visual benoetigt Abstand nach oben => :not(m-8) */
@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .teaser.m-horizontal > *:not(.background) + .content:not(.overlay-top):not(.overlay-bottom):not(.m-8) {
    padding-top: 0;
  }
}

@media screen and (max-width: 659.9px) {
  .teaser.s-horizontal > *:not(.background) + .content:not(.overlay-top):not(.overlay-bottom) {
    padding-top: 0;
  }
}

.teaser:not(.tiled) .content > * {
  margin-bottom: 10px;
}

.teaser .content > *.background,
.teaser .content > *:last-child {
  margin-bottom: 0;
}

.teaser[class] .content p .button {
  margin-top: 4px;
}

/* Anpassungen fuer Akkordeon im Teaser-Content */
/* Beispiel siehe paymail/page-rate-comparison in cat-proj-products */
.teaser .content > .akkordeon {
  margin-bottom: 0;
}

.teaser .content > .akkordeon .summary,
.teaser .content > .akkordeon .akkordeon-content {
  padding-left: 0;
  padding-right: 0;
}

.teaser .content > .akkordeon .summary:hover {
  background-color: transparent;
}

.teaser .content > .akkordeon .akkordeon-content,
.teaser .content > .akkordeon .akkordeon-content *:first-child {
  padding-top: 0;
}

/**/
/* Expandable Modul */
/* expandable: Zentrierter Container Groesse l-12 (ohne fix!), der die Teaser + Info-Boxen mit Teaser-Inhalten enthaelt
   expander: Teaser mit 'mehr'-Link, der die Info-Boxen oeffnet
   expanding: Fullsize Info-Box, die geoeffent wird, mit Teaser-Inhalt
   Vorrausetzung: Pro expandable-Container (l-12) gibt es:
   2 expander-Module (l-6),
   2 expanding-Info-Module,
   1 expanding-noflex Fallback-Info-Modul (noetig wegen IE9 + aelteren androids, Klasse no-flex im body)
   Der Inhalt des noflex-Fallbacks entspricht dem Inhalt des linken Info-Teasers.
   Reihenfolge im HTML-Code pro expandable-Container:
   teaser_module_01
   infobox_01
   teaser_module_02
   infobox_02
   infobox_01_noflex
*/
/* Festlegen der Reihenfolge im l-/m-View */
.expandable .expander {
  order: 1;
}

.expandable .expanding {
  order: 2;
}

.expandable .expanding {
  padding-top: 20px;
  padding-bottom: 20px;
}

.expandable .expanding .teaser {
  margin-bottom: 20px;
  margin-top: 20px;
}

.expandable.group-content:last-child .expanding {
  margin-bottom: -40px;
}

/* Festlegen der Reihenfolge im s-View */
@media screen and (max-width: 659.9px) {
  .expandable .expander.s-4,
  .expandable .expander.s-4 + .expanding {
    order: 1;
  }

  /* Bugfix for DP-12908 - MMNAPPSRVS-4275 */
  .expandable.group-content:last-child .expanding {
    margin-bottom: 20px;
  }

  .expandable.group-content:last-child .expanding:nth-child(4) {
    margin-bottom: -40px;
  }
}

/* Fallback ausblenden */
body:not(.no-flex) .expandable .expanding-noflex {
  display: none;
}

/* no-flex - Fall => Fallback wird eingeblendet */
@media screen and (min-width: 660px) {
  .no-flex .l-12.expandable .expander.l-6:nth-child(4n+1) + .expanding {
    display: none !important;
  }
}

/* no-flex - Fall => Zentrierung analog ie9 */
.no-flex .container.ie-center > .teaser {
  float: none;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.no-flex .container.ie-center > .teaser > .content.module {
  float: none;
  display: inline-block;
}

/* Positionierun der Nase: in s-View immer zentriert */
.expandable .expanding .teaser::before {
  content: "";
  position: absolute;
  top: -52px;
  left: 50%;
  margin-left: -12px;
  width: 0;
  height: 0;
  border: 0;
  border-bottom: 12px solid #1C449B;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
}

/* Positionierung des Close-Icons */
.expandable .expanding .close {
  right: 10px;
  top: 10px;
  position: absolute;
  z-index: 1;
}

@media screen and (max-width: 959.9px) {
  .expandable .expanding .teaser::before {
    top: -62px;
  }

  .expandable .expanding {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

@media screen and (min-width: 980px) {
  /* Nase mittig zum darueberliegenden l-6 Modul bei eigener l-8 Breite */
  .l-12.expandable .expander.l-6:nth-child(4n+1) + .expanding .teaser.l-8::before,
  .l-12.expandable .expander.l-6:nth-child(4n+3) + .expanding + .expanding-noflex .teaser.l-8::before {
    left: 12.5%;
  }

  .l-12.expandable .expander.l-6:nth-child(4n+3) + .expanding .teaser.l-8::before {
    left: 87.5%;
  }

  /* Nase mittig zum darueberliegenden l-6 Modul bei eigener l-12 Breite */
  .l-12.expandable .expander.l-6:nth-child(4n+1) + .expanding .teaser.l-12::before,
  .l-12.expandable .expander.l-6:nth-child(4n+3) + .expanding + .expanding-noflex .teaser.l-12::before {
    left: 25%;
  }

  .l-12.expandable .expander.l-6:nth-child(4n+3) + .expanding .teaser.l-12::before {
    left: 75%;
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  /* Nase mittig zum darueberliegenden m-4 Modul bei eigener m/l-8 Breite */
  .l-12.expandable .expander.m-4:nth-child(4n+1) + .expanding .teaser.l-8::before,
  .l-12.expandable .expander.m-4:nth-child(4n+1) + .expanding .teaser.m-8::before,
  .l-12.expandable .expander.m-4:nth-child(4n+3) + .expanding + .expanding-noflex .teaser.l-8::before,
  .l-12.expandable .expander.m-4:nth-child(4n+3) + .expanding + .expanding-noflex .teaser.m-8::before {
    left: 25%;
  }

  .l-12.expandable .expander.m-4:nth-child(4n+3) + .expanding .teaser.l-8::before,
  .l-12.expandable .expander.m-4:nth-child(4n+3) + .expanding .teaser.m-8::before {
    left: 75%;
  }

  /* Nase mittig zum darueberliegenden m-4 Modul bei eigener m-6 Breite */
  .l-12.expandable .expander.m-4:nth-child(4n+1) + .expanding .teaser.m-6::before,
  .l-12.expandable .expander.m-4:nth-child(4n+3) + .expanding + .expanding-noflex .teaser.m-6::before {
    left: 16.66%;
  }

  .l-12.expandable .expander.m-4:nth-child(4n+3) + .expanding .teaser.m-6::before {
    left: 83.34%;
  }
}

/**/
.no-flex .teaser .content .module {
  float: none;
}

.no-flex .teaser:not(.horizontal) .module.visual.center {
  float: none;
}

@media screen and (min-width: 980px) {
  .no-flex .teaser.l-horizontal .module.visual.center {
    float: left;
  }

  .no-flex .teaser:not(.l-horizontal):not(.horizontal) .module.visual.center {
    float: none;
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .no-flex .teaser.m-horizontal .module.visual.center {
    float: left;
  }

  .no-flex .teaser:not(.m-horizontal):not(.horizontal) .module.visual.center {
    float: none;
  }
}

@media screen and (max-width: 659.9px) {
  .no-flex .teaser.s-horizontal .module.visual.center {
    float: left;
  }

  .no-flex .teaser:not(.s-horizontal):not(.horizontal) .module.visual.center {
    float: none;
  }
}

/* 3 Cols Teaser - Comparison */
/* [WIP] Spacefix - Teaser with tip after groupheadline / sectionheadline needs more space */
/* Wireframe Teaser with tip */
@media screen and (min-width: 980px) {
  .grid > .container:not(.hero):not(.carousel) .section-headline + .group-content > .tip {
    margin-top: 32px;
  }

  .grid > .container:not(.hero):not(.carousel) .group-headline + .group-content > .tip {
    margin-top: 56px;
  }
}

/* provides that more than one teaser can be highlighted */
.backdrop-b1-light82 + .backdrop-b1-light82:not(:hover)::before,
.backdrop-b1-light82 + .wireframe + .backdrop-b1-light82:not(:hover)::before {
  background-color: #F1F4F9;
}

/* Wireframe Teaser */
.teaser.wireframe {
  box-sizing: border-box;
  border-left: 1px #FFFFFF solid;
  border-right: 1px #FFFFFF solid;
  padding-bottom: 10px;
  /* shield */
  /* TIP V1 */
  /* Price format */
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .teaser.wireframe.m-horizontal {
    border-left-width: 0px;
    border-right-width: 0px;
    padding-bottom: 0px;
  }
}

.teaser.wireframe.step {
  align-self: flex-start;
}

.teaser.wireframe > .content[class][class] {
  align-self: center;
  flex-grow: 1;
}

.teaser.wireframe > .content > *:last-child {
  align-self: stretch;
  margin-top: auto;
}

.teaser.wireframe .list {
  padding-left: 55px;
  padding-right: 25px;
}

.teaser.wireframe .list.bonus {
  background-color: #FBEBB3;
  border-radius: 4px;
  font-family: 'RobotoMedium', Arial, sans-serif;
  font-size: 20px;
  line-height: 28px;
  margin-top: 10px;
  margin-bottom: 20px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.teaser.wireframe .list.bonus img {
  position: absolute;
  left: -32px;
  top: 9px;
}

.teaser.wireframe .list.simplelink,
.teaser.wireframe .list.simplelink li {
  padding: 0;
}

.teaser.wireframe .visual.shield {
  align-self: flex-start;
}

.teaser.wireframe .visual.shield > * {
  background-color: #FFFFFF;
}

.teaser.wireframe .visual.shield-down::after {
  content: "";
  position: relative;
  display: block;
  width: 0px;
  height: 0px;
  top: unset;
  right: 0px;
  bottom: 0px;
  left: unset;
  border-top: 20px solid #FFFFFF;
  border-right: 150px solid transparent;
  border-bottom: none;
  border-left: 150px solid transparent;
}

.teaser.wireframe .visual.shield-up::before {
  content: "";
  position: relative;
  display: block;
  width: 0px;
  height: 0px;
  top: 0px;
  right: unset;
  bottom: unset;
  left: 0px;
  border-top: none;
  border-right: 150px solid transparent;
  border-bottom: 20px solid #FFFFFF;
  border-left: 150px solid transparent;
}

.teaser.wireframe .visual.shield-left::before {
  content: "";
  position: absolute;
  display: block;
  width: 0px;
  height: 0px;
  top: 50%;
  right: unset;
  bottom: unset;
  left: 0px;
  border-top: 150px solid transparent;
  border-right: 10px solid #FFFFFF;
  border-bottom: 150px solid transparent;
  border-left: none;
  transform: translateY(-50%);
}

.teaser.wireframe .visual.shield-right::after {
  content: "";
  position: absolute;
  display: block;
  width: 0px;
  height: 0px;
  top: 50%;
  right: 0px;
  bottom: unset;
  left: unset;
  border-top: 150px solid transparent;
  border-right: none;
  border-bottom: 150px solid transparent;
  border-left: 10px solid #FFFFFF;
  transform: translateY(-50%);
}

@media screen and (min-width: 980px) {
  .teaser.wireframe .visual.l-shield-down::after {
    content: "";
    position: relative;
    display: block;
    width: 0px;
    height: 0px;
    top: unset;
    right: 0px;
    bottom: 0px;
    left: unset;
    border-top: 20px solid #FFFFFF;
    border-right: 150px solid transparent;
    border-bottom: none;
    border-left: 150px solid transparent;
  }

  .teaser.wireframe .visual.l-shield-up::before {
    content: "";
    position: relative;
    display: block;
    width: 0px;
    height: 0px;
    top: 0px;
    right: unset;
    bottom: unset;
    left: 0px;
    border-top: none;
    border-right: 150px solid transparent;
    border-bottom: 20px solid #FFFFFF;
    border-left: 150px solid transparent;
  }

  .teaser.wireframe .visual.l-shield-left::before {
    content: "";
    position: absolute;
    display: block;
    width: 0px;
    height: 0px;
    top: 50%;
    right: unset;
    bottom: unset;
    left: 0px;
    border-top: 150px solid transparent;
    border-right: 10px solid #FFFFFF;
    border-bottom: 150px solid transparent;
    border-left: none;
    transform: translateY(-50%);
  }

  .teaser.wireframe .visual.l-shield-right::after {
    content: "";
    position: absolute;
    display: block;
    width: 0px;
    height: 0px;
    top: 50%;
    right: 0px;
    bottom: unset;
    left: unset;
    border-top: 150px solid transparent;
    border-right: none;
    border-bottom: 150px solid transparent;
    border-left: 10px solid #FFFFFF;
    transform: translateY(-50%);
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .teaser.wireframe .visual.m-shield-down::after {
    content: "";
    position: relative;
    display: block;
    width: 0px;
    height: 0px;
    top: unset;
    right: 0px;
    bottom: 0px;
    left: unset;
    border-top: 20px solid #FFFFFF;
    border-right: 150px solid transparent;
    border-bottom: none;
    border-left: 150px solid transparent;
  }

  .teaser.wireframe .visual.m-shield-up::before {
    content: "";
    position: relative;
    display: block;
    width: 0px;
    height: 0px;
    top: 0px;
    right: unset;
    bottom: unset;
    left: 0px;
    border-top: none;
    border-right: 150px solid transparent;
    border-bottom: 20px solid #FFFFFF;
    border-left: 150px solid transparent;
  }

  .teaser.wireframe .visual.m-shield-left::before {
    content: "";
    position: absolute;
    display: block;
    width: 0px;
    height: 0px;
    top: 50%;
    right: unset;
    bottom: unset;
    left: 0px;
    border-top: 150px solid transparent;
    border-right: 10px solid #FFFFFF;
    border-bottom: 150px solid transparent;
    border-left: none;
    transform: translateY(-50%);
  }

  .teaser.wireframe .visual.m-shield-right::after {
    content: "";
    position: absolute;
    display: block;
    width: 0px;
    height: 0px;
    top: 50%;
    right: 0px;
    bottom: unset;
    left: unset;
    border-top: 150px solid transparent;
    border-right: none;
    border-bottom: 150px solid transparent;
    border-left: 10px solid #FFFFFF;
    transform: translateY(-50%);
  }
}

@media screen and (max-width: 659.9px) {
  .teaser.wireframe .visual.s-shield-down::after {
    content: "";
    position: relative;
    display: block;
    width: 0px;
    height: 0px;
    top: unset;
    right: 0px;
    bottom: 0px;
    left: unset;
    border-top: 20px solid #FFFFFF;
    border-right: 150px solid transparent;
    border-bottom: none;
    border-left: 150px solid transparent;
  }

  .teaser.wireframe .visual.s-shield-up::before {
    content: "";
    position: relative;
    display: block;
    width: 0px;
    height: 0px;
    top: 0px;
    right: unset;
    bottom: unset;
    left: 0px;
    border-top: none;
    border-right: 150px solid transparent;
    border-bottom: 20px solid #FFFFFF;
    border-left: 150px solid transparent;
  }

  .teaser.wireframe .visual.s-shield-left::before {
    content: "";
    position: absolute;
    display: block;
    width: 0px;
    height: 0px;
    top: 50%;
    right: unset;
    bottom: unset;
    left: 0px;
    border-top: 150px solid transparent;
    border-right: 10px solid #FFFFFF;
    border-bottom: 150px solid transparent;
    border-left: none;
    transform: translateY(-50%);
  }

  .teaser.wireframe .visual.s-shield-right::after {
    content: "";
    position: absolute;
    display: block;
    width: 0px;
    height: 0px;
    top: 50%;
    right: 0px;
    bottom: unset;
    left: unset;
    border-top: 150px solid transparent;
    border-right: none;
    border-bottom: 150px solid transparent;
    border-left: 10px solid #FFFFFF;
    transform: translateY(-50%);
  }
}

.teaser.wireframe .visual > strong,
.teaser.wireframe .visual > h3,
.teaser.wireframe .visual > h4 {
  display: block;
  padding-top: 16px;
  font-weight: 400;
}

.teaser.wireframe[class*="backdrop"][data-tip-content] {
  position: relative;
  border-radius: 0px 0px 4px 4px;
}

.teaser.wireframe[class*="backdrop"][data-tip-content]::before {
  border-radius: 0px 0px 4px 4px;
}

.teaser.wireframe[class*="backdrop"][data-tip-content]::after {
  content: attr(data-tip-content);
  border-radius: 4px 4px 0px 0px;
  text-transform: uppercase;
  font-family: RobotoMedium;
  font-size: 16px;
  color: #FFFFFF;
  background-color: #1C449B;
  position: absolute;
  display: block;
  line-height: 24px;
  text-align: center;
  top: -34px;
  right: 0px;
  width: 100%;
  height: 24px;
}

.teaser.wireframe[class*="backdrop"][data-tip-content].tip-big::after {
  line-height: 40px;
  height: 40px;
  top: -50px;
}

@media screen and (max-width: 979.9px) {
  .teaser.wireframe[class*="backdrop"][data-tip-content][class][class][class] {
    margin-top: 44px;
  }

  .teaser.wireframe[class*="backdrop"][data-tip-content].tip-big::after {
    line-height: 24px;
    height: 24px;
    top: -34px;
  }
}

.teaser.wireframe[class*="backdrop-b1-light82"][data-tip-content]::after {
  line-height: 40px;
  height: 40px;
  top: -50px;
}

@media screen and (max-width: 979.9px) {
  .teaser.wireframe[class*="backdrop-b1-light82"][data-tip-content]::after {
    line-height: 24px;
    height: 24px;
    top: -34px;
  }
}

.teaser.wireframe .price.xxl {
  padding-top: 10px;
  padding-bottom: 10px;
  font-weight: 700;
}

.teaser.wireframe .price.xxl .supplement {
  display: block;
  font-weight: 400;
  margin-top: -4px;
  line-height: 18px;
}

.teaser.wireframe .price.xxl strong,
.teaser.wireframe .price.xxl em {
  font-style: normal;
}

.teaser.wireframe .price.xxl strong sup,
.teaser.wireframe .price.xxl em sup {
  display: inline-block;
  position: relative;
  bottom: 24px;
}

.teaser.wireframe .price.xxl strong sup:first-of-type,
.teaser.wireframe .price.xxl em sup:first-of-type {
  top: -34px;
  left: -8px;
}

.teaser.wireframe .price.xxl strong sup:last-of-type,
.teaser.wireframe .price.xxl em sup:last-of-type {
  left: 10px;
}

.teaser.wireframe .price.xxl strong sub,
.teaser.wireframe .price.xxl em sub {
  position: relative;
  left: 11px;
  bottom: 4px;
}

.teaser.wireframe .price.xxl strong span + sup:before,
.teaser.wireframe .price.xxl em span + sup:before {
  content: ',';
  position: absolute;
  top: 28px;
  left: -9px;
}

@media screen and (max-width: 979.9px) {
  .teaser.wireframe .price.xxl strong sup,
  .teaser.wireframe .price.xxl em sup {
    bottom: 10px;
  }

  .teaser.wireframe .price.xxl strong sup:first-of-type,
  .teaser.wireframe .price.xxl em sup:first-of-type {
    top: -10px;
  }

  .teaser.wireframe .price.xxl strong sub,
  .teaser.wireframe .price.xxl em sub {
    left: unset;
    margin-left: -16px;
  }

  .teaser.wireframe .price.xxl strong sub.size-2,
  .teaser.wireframe .price.xxl em sub.size-2 {
    font-size: 14px;
  }

  .teaser.wireframe .price.xxl strong span + sup:before,
  .teaser.wireframe .price.xxl em span + sup:before {
    top: 14px;
    left: -10px;
  }
}

.teaser.wireframe .price.xxl {
  font-size: 100%;
}

_:-ms-lang(x) sub,
:root .teaser.wireframe .price.xxl em sub {
  margin-left: -24px;
}

_:-ms-lang(x) span + sup:before,
:root .teaser.wireframe .price.xxl em span + sup:before {
  top: 30px;
}

@media screen and (max-width: 979.9px) {
  _:-ms-lang(x) sup,
  :root .teaser.wireframe .price.xxl em sup {
    bottom: 8px;
  }

  _:-ms-lang(x) span + sup:before,
  :root .teaser.wireframe .price.xxl em span + sup:before {
    top: 15px;
  }

  _:-ms-lang(x) sub,
  :root .teaser.wireframe .price.xxl em sub {
    margin-left: -20px;
  }
}

/* make sure the carousel will not register without JS */
.carousel {
  position: relative;
}

.carousel > div {
  overflow: hidden;
  margin: 0px;
  max-width: 100%;
  -ms-touch-action: pan-y pinch-zoom;
}

body:not(.touch) .carousel:hover {
  max-height: 10000px;
}

/* added .touch because of a firefox image select bug on desktop */
.touch .carousel img {
  pointer-events: none;
}

.touch .carousel a img {
  pointer-events: auto;
}

.carousel > div > ol[role="row"],
.carousel > div > ol[role="row"] > li {
  list-style: none;
  padding: 0;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
  position: relative;
}

.no-flex .carousel-hero,
.carousel-hero > div > ol[role="row"] > li,
  /* begin: BUG-754 - safari fix */
.carousel-hero > div > ol[role="row"] > li > * {
  /* end: BUG-754 - safari fix */
  width: 100vw;
  max-width: 100%;
}

.no-flex .carousel > div > ol[role="row"] {
  display: block;
}

.no-flex .carousel > div > ol[role="row"] > li {
  display: block;
  float: left;
  position: relative;
}

.no-flex .carousel-hero > div > ol[role="row"] > li:not(.hidden) + li {
  visibility: hidden;
}

.carousel > ol[role="navigation"] {
  display: none;
}

/* JS on: format carousel accordingly */
.js .carousel > div > ol[role="row"] {
  -ms-flex-direction: row;
  flex-wrap: nowrap;
  position: relative;
}

.js .carousel > div > ol[role="row"].animate {
  -webkit-transition: transform 0.25s;
  -ms-transition: transform 0.25s;
  transition: transform 0.25s;
}

.js.no-flex .carousel > div > ol[role="row"] {
  display: table;
}

.js.no-flex .carousel > div > ol[role="row"] > li {
  float: none;
  display: table-cell;
  vertical-align: top;
}

.carousel > div > ol[role="row"] > li.hidden[class][class] {
  position: absolute;
  left: -200vw;
  z-index: -1;
}

.no-flex .carousel > div > ol[role="row"] > li.hidden[class][class] {
  left: -100%;
}

/* Auskommentiert, da der SLider im s-View im iOS 6s und 6 plus nicht vollbreit dargestellt wird */
/*
_::-webkit-full-page-media, _:future, :root .js .carousel > div > ol[role="row"] {
    display: table;
}
_::-webkit-full-page-media, _:future, :root .js .carousel > div > ol[role="row"] > li {
    display: table-cell;
}
*/

.js .carousel > ol[role="navigation"] {
  display: block;
  /*height: 0px;*/
  width: 100%;
  text-align: center;
  padding: 10px 0px;
  margin: 0px;
}

.js .inline.carousel > ol[role="navigation"] {
  margin-top: -30px;
  padding: 0px;
}

.js .inline.carousel-hero.carousel-nav-icons > ol[role="navigation"] {
  margin-top: -48px;
}

@media screen and (max-width: 659.9px) {
  .js .inline.carousel-hero.carousel-nav-icons > ol[role="navigation"] {
    margin-top: 24px;
  }
}

.carousel > ol[role="navigation"] li {
  display: inline-block;
  margin: 10px 3px 0px 3px;
  position: relative;
  box-sizing: border-box;
  border: 2px solid #717171;
  border-radius: 50%;
  min-width: 16px;
  min-height: 16px;
  background: #FFFFFF;
  -webkit-transition: background 0.25s;
  -ms-transition: background 0.25s;
  transition: background 0.25s;
  outline: none;
  cursor: pointer;
  z-index: 100;
}

.inline.carousel > ol[role="navigation"] li {
  margin-top: -20px;
}

.carousel > ol[role="navigation"] li:empty {
  border-width: 1px 1px 1px 1px;
}

.inline.carousel > ol[role="navigation"] li:empty:not([rel]) {
  margin: 0px 3px;
}

@media screen and (max-width: 659.9px) {
  .carousel > ol[role="navigation"] li:empty {
    margin-left: 3px;
    margin-right: 3px;
  }

  .js .inline.carousel > ol[role="navigation"] {
    margin-top: 0px;
  }

  .no-flex .carousel {
    min-width: 86vw;
  }
}

.carousel > ol[role="navigation"] li:hover,
.carousel > ol[role="navigation"] li:focus {
  border-color: #1C449B;
}

.carousel > ol[role="navigation"] li:active,
.carousel > ol[role="navigation"] li.active {
  border-color: #1C449B;
  background: #1C449B;
}

.carousel > ol[role="navigation"] li .icon {
  margin: 10px;
}

.carousel > ol[role="navigation"] li[rel="prev"],
.carousel > ol[role="navigation"] li[rel="next"] {
  position: absolute;
  background: transparent;
  top: 50%;
  margin-top: -36px;
  border: none;
  border-radius: 0px;
  width: 72px;
  height: 72px;
  display: none;
}

.carousel > ol[role="navigation"] li[rel="prev"]:hover,
.carousel > ol[role="navigation"] li[rel="next"]:hover,
.carousel > ol[role="navigation"] li[rel="prev"]:focus,
.carousel > ol[role="navigation"] li[rel="next"]:focus {
  background: #1C449B;
}

.carousel > ol[role="navigation"] li[rel="prev"] {
  left: -68px;
  margin-left: 6px;
}

.carousel > ol[role="navigation"] li[rel="next"] {
  right: -68px;
  margin-right: 6px;
}

@media screen and (min-width: 1424px) {
  body:not(.touch) .carousel:not(.no-arrows) > ol[role="navigation"] li[rel="prev"]:not([aria-disabled]),
  body:not(.touch) .carousel:not(.no-arrows) > ol[role="navigation"] li[rel="next"]:not([aria-disabled]),
  body.touch .carousel.touch-arrows > ol[role="navigation"] li[rel="prev"]:not([aria-disabled]),
  body.touch .carousel.touch-arrows > ol[role="navigation"] li[rel="next"]:not([aria-disabled]) {
    display: block;
  }
}

.inline.carousel > ol[role="navigation"] li[rel="prev"] {
  left: -6px;
}

.inline.carousel > ol[role="navigation"] li[rel="next"] {
  right: -6px;
}

@media screen and (min-width: 1114px), screen and (min-width: 804px) and (max-width: 979.9px), screen and (min-width: 464px) and (max-width: 659.9px) {
  body:not(.touch) .inline.carousel:not(.no-arrows) > ol[role="navigation"] li[rel="prev"]:not([aria-disabled]),
  body:not(.touch) .inline.carousel:not(.no-arrows) > ol[role="navigation"] li[rel="next"]:not([aria-disabled]),
  body.touch .inline.carousel.touch-arrows > ol[role="navigation"] li[rel="prev"]:not([aria-disabled]),
  body.touch .inline.carousel.touch-arrows > ol[role="navigation"] li[rel="next"]:not([aria-disabled]) {
    display: block;
  }

  body:not(.touch) .carousel.l-12.fix > ol[role="navigation"] li[rel="prev"]:not([aria-disabled]),
  body:not(.touch) .carousel.l-12.fix > ol[role="navigation"] li[rel="next"]:not([aria-disabled]),
  body.touch .carousel.touch-arrows.l-12.fix > ol[role="navigation"] li[rel="prev"]:not([aria-disabled]),
  body.touch .carousel.touch-arrows.l-12.fix > ol[role="navigation"] li[rel="next"]:not([aria-disabled]) {
    display: block;
  }
}

.carousel > ol[role="navigation"] li[rel="prev"]:before,
.carousel > ol[role="navigation"] li[rel="next"]:before,
.carousel > ol[role="navigation"] li[rel="prev"]:after,
.carousel > ol[role="navigation"] li[rel="next"]:after {
  content: "";
  display: block;
  position: absolute;
  top: 8px;
  width: 8px;
  height: 36px;
  border-radius: 4px;
  background: #1C449B;
  -webkit-transition: background 0.25s;
  -ms-transition: background 0.25s;
  transition: background 0.25s;
}

.carousel > ol[role="navigation"] li[rel="prev"]:before,
.carousel > ol[role="navigation"] li[rel="prev"]:after {
  left: 30px;
}

.carousel > ol[role="navigation"] li[rel="next"]:before,
.carousel > ol[role="navigation"] li[rel="next"]:after {
  left: 34px;
}

.carousel > ol[role="navigation"] li[rel="prev"]:before,
.carousel > ol[role="navigation"] li[rel="next"]:after {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.carousel > ol[role="navigation"] li[rel="next"]:before,
.carousel > ol[role="navigation"] li[rel="prev"]:after {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.carousel > ol[role="navigation"] li[rel="prev"]:after,
.carousel > ol[role="navigation"] li[rel="next"]:after {
  top: 28px;
}

.carousel > ol[role="navigation"] li[rel="prev"]:hover:before,
.carousel > ol[role="navigation"] li[rel="next"]:hover:before,
.carousel > ol[role="navigation"] li[rel="prev"]:hover:after,
.carousel > ol[role="navigation"] li[rel="next"]:hover:after,
.carousel > ol[role="navigation"] li[rel="prev"]:focus:before,
.carousel > ol[role="navigation"] li[rel="next"]:focus:before,
.carousel > ol[role="navigation"] li[rel="prev"]:focus:after,
.carousel > ol[role="navigation"] li[rel="next"]:focus:after {
  background: #FFFFFF;
}

.carousel > ol[role="navigation"] li[rel="prev"][aria-disabled],
.carousel > ol[role="navigation"] li[rel="next"][aria-disabled] {
  display: none;
}

.carousel > ol[role="navigation"] li[rel="next"] img,
.carousel > ol[role="navigation"] li[rel="prev"] img {
  width: 72px;
  height: 72px;
  -webkit-transform: translateX(-36px) scaleX(0);
  -moz-transform: translateX(-36px) scaleX(0);
  -ms-transform: translateX(-36px) scaleX(0);
  transform: translateX(-36px) scaleX(0);
  -webkit-transition: transform 0.12s linear;
  -moz-transition: transform 0.12s linear;
  -ms-transition: transform 0.12s linear;
  transition: transform 0.12s linear;
  z-index: -1;
}

.carousel > ol[role="navigation"] li[rel="prev"] img {
  -webkit-transform: translateX(36px) scaleX(0);
  -moz-transform: translateX(36px) scaleX(0);
  -ms-transform: translateX(36px) scaleX(0);
  transform: translateX(36px) scaleX(0);
}

.carousel > ol[role="navigation"] li[rel="prev"]:hover img,
.carousel > ol[role="navigation"] li[rel="prev"]:focus img {
  -webkit-transform: translateX(72px) scaleX(1);
  -moz-transform: translateX(72px) scaleX(1);
  -ms-transform: translateX(72px) scaleX(1);
  transform: translateX(72px) scaleX(1);
}

.carousel > ol[role="navigation"] li[rel="next"]:hover img,
.carousel > ol[role="navigation"] li[rel="next"]:focus img {
  -webkit-transform: translateX(-72px) scaleX(1);
  -moz-transform: translateX(-72px) scaleX(1);
  -ms-transform: translateX(-72px) scaleX(1);
  transform: translateX(-72px) scaleX(1);
}

/* Karusell ausschaltbar machen */
@media screen and (min-width: 980px) {
  .carousel.l-disabled > ol[role="navigation"] {
    display: none;
  }

  .carousel.l-disabled > div {
    min-width: 100%;
  }

  .carousel.l-disabled > div > ol[role="row"] {
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    transition: none;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    min-width: 100%;
  }

  .carousel.l-disabled > div > ol[role="row"] > li {
    flex-grow: 1;
  }

  /* fix for boxed layout */
  body#top .l-12.carousel ol[role="navigation"] li[rel="prev"],
  body#top .l-12.carousel ol[role="navigation"] li[rel="next"] {
    display: none;
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .carousel.m-disabled > ol[role="navigation"] {
    display: none;
  }

  .carousel.m-disabled > div {
    min-width: 100%;
  }

  .carousel.m-disabled > div > ol[role="row"] {
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    transition: none;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    min-width: 100%;
  }

  .carousel.m-disabled > div > ol[role="row"] > li {
    flex-grow: 1;
  }
}

@media screen and (max-width: 659.9px) {
  .carousel.s-disabled > ol[role="navigation"] {
    display: none;
  }

  .carousel.s-disabled > div {
    min-width: 100%;
  }

  .carousel.s-disabled > div > ol[role="row"] {
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    transition: none;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    min-width: 100%;
  }

  .carousel.s-disabled > div > ol[role="row"] > li {
    flex-grow: 1;
  }
}

/* DP-15283: navigation bullets with numbers and icons, possible only for hero carousel and teaser xl carousel */
.carousel > ol[role="navigation"] li .icon,
.carousel > ol[role="navigation"] li .number {
  display: none;
}

.carousel.carousel-hero > ol[role="navigation"] li .icon,
.carousel.carousel-hero > ol[role="navigation"] li .number,
.carousel.carousel-teaser-xl > ol[role="navigation"] li .icon,
.carousel.carousel-teaser-xl > ol[role="navigation"] li .number {
  display: block;
}

.carousel > ol[role="navigation"] li .number {
  padding: 2px 13px;
  width: 18px;
}

.carousel > ol[role="navigation"] li .number.white {
  color: #FFFFFF;
}

.carousel > ol[role="navigation"] li:hover .number.inactive {
  color: #1C449B;
}

@media screen and (max-width: 659.9px) {
  .carousel > ol[role="navigation"] li .number {
    padding: 2px 7px;
  }
}

#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;
}

/* needed to center altough 'center' used in parent-container by the hero text, because inner teaser smaller then outer */
/* you can give the innner teaser container also 'center' then the following isn't needed (have to be testet) */
.hero.teaser {
  -webkit-align-items: center;
  align-items: center;
}

/* Hilfscontainer für weitere Elemente, z.B. Spoiler (WIP) */
/* z-index: 1, because of the button who could be under the backing container */
.hero .backing.container {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  z-index: 1;
}

@media screen and (max-width: 659.9px) {
  .hero .backing.s-visual {
    position: relative;
    left: 0;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
  }

  .hero .backing.s-h-auto[class][class] {
    display: flex;
    bottom: 0;
  }
}

/* logointegration in hero (interdisciplinary checked :-) */
.hero .flag {
  position: absolute;
  top: 0;
  right: 0px;
  text-align: right;
  margin: 0 16px 0 0;
  z-index: 3;
}

.hero .flag .note {
  margin: 0;
  font-size: 12px;
}

.hero .flag img {
  position: static;
  display: inline-block;
  margin-bottom: -5px;
  transform: translate(0, 0);
}

.hero .flag[data-type="default"],
.hero .flag[data-type="partner"] {
  margin-top: 16px;
}

/* height of partnerlogo fix: 48px l-view, 40px m-/s-view, width flexible */
.hero .flag[data-type="default"] img,
.hero .flag[data-type="partner"] img {
  height: 40px;
}

.hero .flag[data-type="default"]:not(.no-border) img,
.hero .flag[data-type="partner"]:not(.no-border) img {
  background-color: #FFFFFF;
  padding: 4px;
  border-radius: 4px;
}

/* video-teaser mit flag => flag abstand setzen */
.hero-product-video .flag + .teaser {
  margin-top: 24px;
}

@media screen and (min-width: 980px) {
  .hero .flag {
    margin-right: 36px;
  }

  .hero .flag[data-type="default"] img,
  .hero .flag[data-type="partner"] img {
    height: 48px;
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .hero .flag[data-type="premium"] img {
    width: 83%;
  }
}

@media screen and (max-width: 659.9px) {
  /* set the logo on the top of the herocontent */
  .hero > .flag {
    position: relative;
    margin: 0 auto 0 auto;
    text-align: center;
  }

  /* hero text xl with icon has to be set to default, because the teasercontainer has here the fullheight of the hero */
  /* hero product size xl with icon has also to be set to default, because this is a special case, not like size l and size m */
  /* 'default' means same behavior as in l-/m-View */
  .hero.hero-text.h-8 > .flag,
  .hero.hero-product.h-8 > .flag,
  .hero-product .background.s-h-5 + .flag,
  .hero-product .background.s-h-4 + .flag {
    position: absolute;
    margin: 11px 16px 0 0;
    text-align: right;
  }

  /* hero product var1 - the position could only work when you have a bg container with the height 380px and a visual with the height 300px or bg container with the height 300px and a visual with the height 220px */
  /* fits for hero product var1 sizes m and l*/
  .hero-product .background.s-h-5 + .flag {
    top: 80px;
  }

  /* fits for hero product var1 sizes s*/
  .hero-product .background.s-h-4 + .flag {
    top: 80px;
  }

  /* width of premiumlogo fix 72px in s-view, height flexible */
  /* the premium logo in s-view is a different img/svg as used in l-/m-View */
  .hero .flag[data-type="premium"] img {
    width: 72px;
  }
}

/* Spoiler im Hero (WIP) */
.hero .spoiler {
  z-index: 1000;
}

/* Ev. muss die Klasse 'withSpoiler' hinzugefügt werden, falls es zu Darstllungs-Problemen wegen flexbox kommt */
/*.hero .visual.withSpoiler {*/
@media screen and (max-width: 659.9px) {
  .hero .visual,
  .hero .s-visual {
    display: flex;
    flex-direction: row;
  }

  .hero .visual .container,
  .hero .s-visual .container {
    z-index: 1000;
  }
}

/* Abstandskonzept (vspace-Ersatz) für Heros */
.grid > .hero {
  margin-bottom: 0px;
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  .grid > .hero-text.m-h-auto {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .m-visual.m-h-auto img {
    position: static;
    transform: translate(0, 0);
  }
}

@media screen and (max-width: 659.9px) {
  .grid > .hero:not(.hero-text) {
    margin-top: 0px;
    margin-bottom: 40px;
  }

  .grid > .hero ~ .hero:not(.hero-text) {
    margin-top: 40px;
  }

  .grid > .hero[class*="backdrop"] {
    margin-bottom: 0px;
    padding-bottom: 40px;
  }

  .grid > .hero ~ .hero[class*="backdrop"] {
    margin-top: 0px;
    padding-top: 40px;
  }

  .grid > .hero-text.s-h-auto {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .grid > .hero.hero-product:not([class*="backdrop"]) + footer {
    margin-top: -40px;
  }
}

/* Da die Höhenangaben der Hauptcontainer nicht durch Abstände verfälscht werden dürfen,
   müssen die Abstände über die Kindelemente erfolgen.*/
/* Generell für im Hero vorhandene Teaser das margin auf 0 setzen. */
.hero .teaser[class] {
  margin-bottom: 0px;
  margin-top: 0px;
}

/* Abstand überschreiben zwischen Visual und Content */
.hero .teaser > *:not(.background) + .content[class] {
  padding-top: 0px;
}

/* define gaps between hero content */
.hero .teaser .content > *:not(.btn-wrapper),
.hero .teaser .content > *.l-visual {
  margin-bottom: 20px;
}

.hero .teaser .content > *.background,
.hero .teaser .content:last-child > *:last-child:not(.btn-wrapper) {
  margin-bottom: 0px;
}

/* if va-spread then we need gabs on bottom */
.hero .teaser.va-spread .content:last-child {
  margin-bottom: 20px;
}

/* remove the gaps on top and bottom of the list used in a hero */
.hero .teaser .list li:first-child {
  margin-top: -5px;
}

.hero .teaser .list li:last-child {
  margin-bottom: -5px;
}

/* Listen sollen, falls zentriert, generell textabhängig zentriert werden.
   Text spannt sich dann max auf die Teaserbreite aus. */
.hero .teaser .content.module.fix .list.va-center-self {
  box-sizing: border-box;
}

/* Im s-order-1 Container ist immer die Headline zu finden. Diese kann entweder zusätzlich in ihr oder danach
   (je nach SEO Wunsch) ein Subheadline besitzen mit nur 5px Abstand dazwischen */
/* wenn innerhalb oder nach H-Tags eine subheadline => 5px Abstand dazwischen */
.hero .teaser .s-order-1 .subheadline,
.hero .teaser .s-order-2 .subheadline {
  margin-top: 1px;
  display: block;
}

/* nimmt den Abstand zur Subheadline weg wenn diese nach der Headline im code vorkommt */
.hero .teaser .s-order-1 > * + .subheadline,
.hero .teaser .s-order-2 > * + .subheadline {
  margin-top: -19px;
}

/* Hero mit Icon und APP-Buttons
   Beim Text-Hero mit Icon tritt der Spezialfall auf, dass sich innerhalb des Teaser-Containers 2 Container befinden, die per Klasse va-spread oben und unten angedockt werden. Der Teaser-Container benötigt dafür die Höhe des Heros. In der Variante, bei der die Buttons unterhalb des Backgrounds positioniert werden sollen, benötigt der erste Content-Container
   innerhalb des Teasers ebenfalls eine fixe Höhe im s-View, damit die Buttons unter den Hero rutschen.
   Das Icon wird per img-Tag eingebunden und befindet sich im s-order-1 Container innerhalb eines visual-Containers. */
/* Abstand Icon */
.hero .teaser .s-order-1 .visual {
  margin-bottom: 5px;
}

.hero .teaser.va-spread .s-order-1 > *:first-child {
  margin-top: 16px;
}

.hero .teaser .s-order-1 .visual img {
  vertical-align: middle;
}

/* Beim Produkt Hero Var 2 wird die Skalierung der Visual-Grafik über die Breite und nicht über die Höhe geregelt, da die Höhe variabel sein kann. Hierfür müssen bei Verwendung der Breitenklassen die Eigenschaften von 'fix' hinzugefügt werden. */
.hero-product .teaser .background img.h-auto {
  flex-basis: auto;
  flex-grow: 0;
  min-width: 0;
}

/* for removing the gap to the additional text after the buttongroup */
.hero-product .btn-wrapper + p {
  margin-top: -20px;
}

@media screen and (min-width: 980px) {
  /* verhindert, dass zu hoher Content das Layout zerschießt */
  .hero.l-h-8,
  .hero.l-h-6,
  .hero.l-h-4,
  .hero.l-h-3 {
    overflow: hidden;
  }

  /* Liste spannt sich max auf die Teaserbreite aus */
  .hero .teaser .content.module.l-6.fix .list.va-center-self {
    max-width: 460px;
  }

  /* Abstand Icon */
  .hero .teaser .s-order-1 .visual {
    margin-bottom: 16px;
  }

  .hero .teaser.va-spread .s-order-1 > *:first-child {
    margin-top: 32px;
  }

  /* Hero S und XS, Abstand wegnehmen um Headline zu zentrieren, da dies der Hauptusecase ist */
  .hero.h-2 .teaser .s-order-1 *:last-child,
  .hero.h-3 .teaser .s-order-1 *:last-child {
    margin-bottom: 0;
  }

  /* Hero S, Abstand fuer den Fall Fliesstext und Button nach oben wieder hinzufuegen */
  .hero.h-3 .teaser .s-order-1 ~ .s-order-3,
  .hero.h-3 .teaser .s-order-1 ~ .s-order-4,
  .hero.h-3 .teaser .s-order-1 ~ .content.module.fix {
    margin-top: 20px;
  }
}

@media screen and (min-width: 660px) and (max-width: 979.9px) {
  /* verhindert, dass zu hoher Content das Layout zerschießt */
  .hero.m-h-8,
  .hero.m-h-6,
  .hero.m-h-4,
  .hero.m-h-3 {
    overflow: hidden;
  }

  /* define gaps between hero content */
  .hero .teaser .content > *.m-visual {
    margin-bottom: 20px;
  }

  /* Liste spannt sich max auf die Teaserbreite aus */
  .hero .teaser .content.module.m-6.fix .list.va-center-self {
    max-width: 460px;
  }

  .hero .teaser .content.module.m-4.fix .list.va-center-self {
    max-width: 300px;
  }

  /* m-h-auto => height will be spread by content */
  /* muss dem Teaser display: flex geben, damit Positionierung funktioniert */
  .hero > .teaser.m-h-auto[class],
  .hero.hero-text.m-h-auto[class] {
    display: flex;
  }

  /* damit der Hintergrund so hoch wird wie der Content */
  .hero .background.m-h-100[class]:not(.m-visual) {
    height: 100%;
  }

  .hero .background.m-h-100[class]:not(.m-visual) img {
    height: 100%;
  }

  /* Hero sollen im m-View nicht direkt am Header/Nav andocken, falls der Container keine fixe Höhe hat */
  .hero.m-h-auto > .teaser .s-order-1 > *:first-child {
    margin-top: 16px;
  }

  .hero.m-h-auto > .teaser > .content:last-child {
    margin-bottom: 20px;
  }

  /* Beim Produkt Hero Var 2 wird die Skalierung der Visual-Grafik über die Breite und nicht über die Höhe geregelt, da die Höhe variabel sein kann. Hierfür müssen bei Verwendung der Breitenklassen die Eigenschaften von 'fix' und 20px padding hinzugefügt werden. */
  .hero-product .teaser .background img.h-auto,
  .hero-product .teaser .background img.m-h-auto {
    box-sizing: border-box;
    padding-left: 20px;
    flex-basis: auto;
    flex-grow: 0;
    min-width: 0;
  }

  .hero .teaser form .button {
    width: auto;
  }

  .hero .teaser p > form {
    margin-top: 4px;
  }

  /* Hero S und XS, Abstand wegnehmen um Headline zu zentrieren, da dies der Hauptusecase ist */
  .hero.h-2 .teaser .s-order-1 *:last-child,
  .hero.h-3 .teaser .s-order-1 *:last-child {
    margin-bottom: 0;
  }

  /* Hero S, Abstand fuer den Fall Fliesstext und Button nach oben wieder hinzufuegen */
  .hero.h-3 .teaser .s-order-1 ~ .s-order-3,
  .hero.h-3 .teaser .s-order-1 ~ .s-order-4,
  .hero.h-3 .teaser .s-order-1 ~ .content.module.fix {
    margin-top: 20px;
  }
}

@media screen and (max-width: 659.9px) {
  /* verhindert, dass zu hoher Content das Layout zerschießt */
  .hero.s-h-8,
  .hero.s-h-6,
  .hero.s-h-4,
  .hero.s-h-3 {
    overflow: hidden;
  }

  /* define gaps between hero content */
  .hero .teaser .content > *.s-visual {
    margin-bottom: 20px;
  }

  .hero .teaser .s-overlay-bottom {
    padding-left: 0px;
    padding-right: 0px;
    padding-bottom: 20px;
  }

  /* Liste spannt sich max auf die Teaserbreite aus */
  .hero .teaser .content.module.fix .list.va-center-self {
    max-width: 300px;
  }

  /* s-h-auto => height will be spread by content */
  /* muss dem Teaser display: flex geben, damit Positionierung funktioniert */
  .hero > .teaser.s-h-auto[class],
  .hero.hero-text.s-h-auto[class] {
    display: flex;
  }

  /* damit der Hintergrund so hoch wird wie der Content */
  .hero .background.s-h-100[class]:not(.s-visual) {
    height: 100%;
  }

  .hero .background.s-h-100[class]:not(.s-visual) img {
    height: 100%;
  }

  /* Hero sollen im s-View nicht direkt am Header/Nav andocken, falls der Container keine fixe Höhe hat */
  .hero.s-h-auto > .teaser .s-order-1 > *:first-child {
    margin-top: 16px;
  }

  .hero.s-h-auto > .teaser > .content:last-child {
    margin-bottom: 20px;
  }

  /* muss noch geprüft werden, ob für alle Heros nötig oder nur für Product */
  .hero .s-visual.s-h-auto img {
    position: static;
    transform: translate(0, 0);
  }

  /* Visual Hero */
  /* Der erste Button soll über dem Visual liegen, wenn er im s-order-3 Container drin steckt */
  .hero-visual .teaser .s-order-1 > *:only-child {
    margin-bottom: 5px;
  }

  .hero-visual .teaser .s-order-2 {
    margin-bottom: 20px;
  }

  .hero-visual .teaser .content.s-order-3:last-child {
    margin-bottom: 0px;
  }

  .hero-visual .teaser .s-order-3 .btn-wrapper {
    margin-top: -88px;
  }

  .hero-visual .teaser .s-order-3 .btn-wrapper .button {
    margin-bottom: 40px;
  }

  .hero-visual .teaser .s-order-3 .btn-wrapper .button.store:first-child,
  .hero-visual .teaser .s-order-3 .btn-wrapper .button.store:nth-child(2) {
    margin-top: 8px;
  }

  /* Das Formular soll über dem Visual liegen, wenn es im s-order-3 Container drin steckt */
  .hero-visual .teaser .s-order-3 form.s-oneline {
    margin-top: -88px;
  }

  /* Hero mit BG => Fadefarbe anpassen*/
  .hero-visual.backdrop-b1-light94 .s-fade-in::after {
    background: -moz-linear-gradient(top, #f1f8fd 0%, #f1f8fd 10%, rgba(241, 248, 253, 0) 100%);
    background: -webkit-linear-gradient(top, #f1f8fd 0%, #f1f8fd 10%, rgba(241, 248, 253, 0) 100%);
    background: linear-gradient(to bottom, #f1f8fd 0%, #f1f8fd 10%, rgba(241, 248, 253, 0) 100%);
  }

  .hero-visual.backdrop-c2-light94 .s-fade-in::after {
    background: -moz-linear-gradient(top, #f3f3f3 0%, #f3f3f3 10%, #f3f3f3 100%);
    background: -webkit-linear-gradient(top, #f3f3f3 0%, #f3f3f3 10%, #f3f3f3 100%);
    background: linear-gradient(to bottom, #f3f3f3 0%, #f3f3f3 10%, #f3f3f3 100%);
  }

  /* Produkt Hero */
  .hero-product .teaser .s-h-6.s-order-1,
  .hero-product .teaser .s-h-5.s-order-1,
  .hero-product .teaser .s-h-4.s-order-1,
  .hero-product .teaser .visual.s-order-2,
  .hero-product .teaser .s-visual.s-h-auto {
    margin-bottom: 20px;
  }

  /* Beim Produkt Hero Var 2 wird die Skalierung der Visual-Grafik über die Breite und nicht über die Höhe geregelt, da die Höhe variabel sein kann. Hierfür müssen bei Verwendung der Breitenklassen die Eigenschaften von 'fix' und 20px padding hinzugefügt werden. */
  .hero-product .teaser .background.s-visual img.h-auto,
  .hero-product .teaser .background.s-visual img.s-h-auto {
    box-sizing: border-box;
    padding-left: 10px;
    padding-right: 10px;
    flex-basis: auto;
    flex-grow: 0;
    min-width: 0;
  }

  /* muss noch geprüft werden, ob für alle Heros nötig oder nur für Product */
  /* zum Test um Grafiken zu skalieren bei fixer containerbreite */
  /*.hero .s-visual.s-fix.s-4 img {
        width: 100%;
    }*/
  /* BUG-4567 */
  /* Anmerkung: wenn fixe containerbreite generell gesetzt wird, ist dieser Hack nicht mehr noetig */
  /* ie11 hack fuer zentrierte Ausrichtung des Img im Visual container von product var 2 */
  _:-ms-fullscreen,
  :root .hero .s-visual.s-center img {
    margin-left: auto;
    margin-right: auto;
  }

  /* Text Hero */
  /* Buttons im s-View unterhalb des Visuals (nur Hero Text XL) */
  .hero-text .s-h-auto.va-spread .s-h-6.s-order-1 {
    margin-top: -40px;
    margin-bottom: 20px;
  }

  /* Button-Breite im s-View auf 300px setzen */
  .hero .teaser .button {
    width: 300px;
  }

  .hero .teaser form .button {
    width: auto;
  }

  /* Label im Text-Hero mit flexibler Höhe im s-View */
  /* not proved by refactoring for v1.5.*/
  .hero.hero-text.s-h-auto .teaser[class] .s-order-1 .label {
    margin-top: 16px;
    margin-bottom: 5px;
  }

  /* Video-Teaser, additional gaps */
  /* not proved by refactoring for v1.5.*/
  .hero.hero-product-video.s-h-auto {
    padding-bottom: 60px;
    padding-top: 60px;
  }

  .hero.hero-product-video .teaser {
    margin-top: 0px;
  }

  .hero .teaser[class][class]:not(.fix):not(.s-fix),
  .hero .teaser > .content:not(.fix):not(.s-fix) {
    width: 100%;
    padding-left: 0px;
    padding-right: 0px;
  }
}

/* Form im Hero */
.hero form {
  margin-top: 10px;
}

.hero form .field {
  margin-bottom: 16px;
}

.hero form .field + .field.message {
  margin-bottom: 8px;
  margin-top: -18px;
}

.hero form .field label {
  margin-top: -8px;
}

.hero form p.inp-info {
  margin-top: -12px;
  margin-bottom: 16px;
}

.hero form .field + .actions,
.hero form .fieldset + .actions {
  margin-top: 24px;
}

.hero form .actions .button {
  min-width: 300px;
}

@media screen and (max-width: 659.9px) {
  /* Bug: Brandname in header wrong possitioned => necessary for messages over the header */
  .header {
    position: relative;
  }

  .hero .s-order-4 > p + form {
    margin-top: 6px;
  }
}

/* login-Hero (DEPRECATED) - needed for downward compatibility until login-Hero canceld */
.hero-login > .teaser > [class*="backdrop"]::before,
.hero-login.teaser > .background[class*="backdrop"]::before {
  left: 0px;
  right: 0px;
}

.hero-login form.login p {
  margin-top: -12px;
  margin-bottom: 16px;
}

@media screen and (max-width: 659.9px) {
  .hero-login .s-order-4 > form,
  .hero-login .s-order-4 > p {
    margin-top: 24px;
  }

  .hero-login .s-order-4 > p + form {
    margin-top: 0px;
  }
}

/* Visual Hero mit Carousel - Notlösung - Abstände abgestimmt auf Visual Hero XL mit 2-zeiliger Headline und 4-zeiligem Text
   Beispiel siehe cat-proj-teasertest */
/* Für jeden Slider muss das innerhalb des CAT-Projektes separat angepasst/ergänzt werden */
@media screen and (max-width: 659.9px) {
  /* um das Springen der Punkte zu verhindern un diese hoch zu positionieren */
  .js .carousel-hero-visual-xl.inline .hero-visual .teaser .s-order-1 > *:first-child {
    height: 80px;
    max-height: 80px;
    overflow: hidden;
  }

  .js .carousel-hero-visual-xl.inline .hero-visual .teaser .s-order-2 {
    height: 300px;
    max-height: 300px;
    overflow: hidden;
  }

  .js .carousel-hero-visual-xl.inline .hero-visual .teaser .s-order-3.slider-nav-placeholder {
    margin-top: 40px;
    height: 112px;
    max-height: 112px;
    overflow: hidden;
  }

  /* Bullets Hochpositionieren direkt nach Visual - nicht in ältern Androids! */
  .js .carousel-hero-visual-xl.inline > ol[role="navigation"] {
    margin-top: -140px;
  }
}

/* Um Standardwert vom Browser zu überschreiben */
p {
  margin-top: 0;
  margin-bottom: 0;
}

/* close button */
#close-wrapper {
  min-width: auto;
  z-index: 0;
  margin: 0 auto;
  -webkit-flex-basis: 100%;
  flex-basis: 100%;
  padding: 11px 0 9px;
}

@media screen and (min-width: 980px) {
  #close-wrapper {
    max-width: 1000px;
    width: 1000px;
  }
}

#close-wrapper > .module {
  margin-right: 20px;
}


/* clip */
#clip-wrapper {
  height: 50px;
  width: 100%;
  position: absolute;
  z-index: 999;
  padding: 0;
  margin-top: 20px;
}

#clip-wrapper + .hero {
  padding-top: 40px;
}

#clip-wrapper + .teaser,
#clip-wrapper + .teaser + .teaser {
  padding-top: 80px;
}

@media screen and (min-width: 660px) {
  #clip-wrapper + .hero {
    padding-top: 0;
  }
}

.clip {
  display: inline-block;
  background-color: #1C449B;
  color: #FFFFFF;
  font-family: 'RobotoCondensedLight', Verdana, sans-serif;
  font-size: 16px;
  font-weight: 400;
  height: 32px;
  padding: 5px 10px 0px;
  /* padding-top: 8px; */
  box-sizing: border-box;
  border-radius: 4px;
  position: relative;
  top: 0;
  margin-left: 0;
}

.clip strong {
  margin-right: 8px;
  font-family: 'RobotoBold', Arial, sans-serif;
  font-weight: 400;
}

.grid > .hero[class],
.grid > .carousel .hero[class] {
  margin-bottom: 0;
}

/* Überschreibt Hero-CSS BUG-4083, muss nach Rück-QA ins Hero-CSS übernommen und geprüft werden */
.hero .backing.container {
  left: 0;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  z-index: 0;
  width: 100%;
}

.hero:after {
  content: "";
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0;
  min-width: 100%;
  height: 4px;
  background-color: #1C449B;
  z-index: 1;
}

.label[class] img {
  background-color: #FFFFFF;
  padding: 4px;
  border-radius: 4px;
  height: 48px;
}

.label[class] p {
  margin: 0;
}

.label .note {
  font-size: 12px;
}

.label.top-right {
  margin-right: 30px;
  margin-top: 16px;
}

@media screen and (max-width: 979.9px) {
  .label[class] img {
    height: 40px;
  }
}

@media screen and (max-width: 659.9px) {
  .label[class] img {
    float: right;
    position: static;
  }
}


/* lasche */
.hero-product .premium-label,
.hero-visual .premium-label {
  top: 0px;
  right: 0px;
  position: absolute;
  z-index: 3;
}

.hero-product .premium-label,
.hero-visual .premium-label img {
  position: relative;
  left: 0;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  margin-right: 20px;
  width: 64px;
}

@media screen and (min-width: 660px) {
  .hero-product .premium-label img,
  .hero-visual .premium-label img {
    width: auto;
  }
}


.button-group-wrapper .button {
  margin-bottom: 8px;
  width: 320px;
}

@media screen and (min-width: 660px) {
  .button-group-wrapper .button {
    margin-left: 16px;
    width: auto;
  }
}

.grid > .container:not(.hero):not(.carousel),
.grid > .container:not(.hero).carousel .hero {
  padding-top: 40px;
  padding-bottom: 40px;
}

.grid > .container:not(.hero).carousel > ol[role="navigation"] {
  margin-top: -30px;
}

@media screen and (min-width: 660px) {
  .grid > .container:not(.hero).carousel .hero {
    padding-top: 0;
    padding-bottom: 0;
  }
}

footer {
  margin-top: 88px;
}

#button-wrapper {
  padding-top: 0;
}


/* content of formerly style.css */
[data-show-if] {
  display: none;
}

[data-show-matches="true"] {
  display: flex;
}

body .step-2 {
  display: none;
}

[data-browser-name="Safari"] body {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: auto;
}

.info.icon {
  position: relative;
  top: 10px;
  padding-right: 5px;
}

.abp-upgrade {
  display: flex;
  flex-direction: column;
  margin-top: 40px;
}

.abp-upgrade[data-show-if] {
  display: none;
}

.abp-upgrade[data-show-matches="true"] {
  display: flex;
}

.abp-footer {
  display: flex;
  flex-flow: row-reverse;
  padding-right: 20px;
  padding-bottom: 20px;
}

.abp-footer a {
  display: flex;
  align-items: center;
  margin-left: 20px;
}

footer.abp-footer {
  margin-top: 20px;
}

.abp-arrow {
  position: absolute;
  top: -30px;
  right: -350px;
}

[data-browser-name="Safari"] .abp-arrow {
  display: none;
}

.teaser.abp-active,
.teaser.abp-inactive {
  justify-content: flex-start;
}

.teaser.abp-active .visual,
.teaser.abp-inactive .visual {
  max-width: 50%;
}

.teaser.abp-active .visual img,
.teaser.abp-inactive .visual img {
  width: 100%;
}

.abp-upgrade {
  max-width: 55vw;
  min-width: 440px;
  width: 1000px;
}

.footer {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  line-height: 50px;
}

#clip-wrapper > div {
  padding-left: 20px;
}

.abp-active .abp-headline {
  font-size: 32px;
  line-height: 40px;
}

.abp-inactive .abp-headline {
  font-size: 32px;
  line-height: 40px;
}

.spaceholder {
  width: 100%;
  height: 100px;
  visibility: hidden;
}

select {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border-radius: 4px;
  border: 1px solid #C2C2C2;
  position: relative;
  height: 40px;
  padding: 0 10px;
  background-color: #FFFFFF;
  color: #525252;
  font-family: "WebdeSansRegular", Verdana, sans-serif;
  font-size: 16px;
  box-shadow: none;
  margin-top: 20px;

  -webkit-appearance: none;
  -moz-appearance: none;
  line-height: 24px;
  outline: none !important;
}

.select {
  position: relative;
}

.select:before {
  content: "";
  position: absolute;
  right: 12px;
  bottom: 15px;
  background-color: transparent;
  border-left: 3px solid #1C449B;;
  border-bottom: 3px solid #1C449B;;
  border-radius: 0 0 0 4px;
  width: 12px;
  height: 12px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  pointer-events: none;
  z-index: 100;
}

/* IE10+: style Select Icon */
.select ::-ms-expand {
  background: none;
  border: none;
  display: none;
  padding-right: 2px;
}

select:focus::-ms-value {
  color: #525252;
  background-color: transparent;
}

.ad-container {
  height: 2px;
}

.label-select {
  position: relative;
  top: 10px;
}

