html {
  --grid__columns: 12;
  --grid__gutter: 1.875rem;
}
.row {
  display: grid;
  grid-template-columns: repeat(var(--grid__columns), 1fr);
  grid-gap: var(--grid__gutter);
  grid-auto-columns: 1fr;
}

.row--show {
  position: relative;
  background: #f9f9f9;
  z-index: 0;
  padding-top: 0.9375rem;
}

.row--show:before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  top: 0;
  height: 100%;
  background: repeating-linear-gradient(to right, #f0f0f0 0%, #f0f0f0 calc((100% - (1.875rem * 11)) / 12), #f9f9f9 calc((100% - (1.875rem * 11)) / 12), #f9f9f9 calc(((100% - (1.875rem * 11)) / 12) + 1.875rem) );
}


/* ----- */
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
  grid-column: 1 / -1;
}

.row-span-xs-1, .row-span-xs-2, .row-span-xs-3, .row-span-xs-4, .row-span-xs-5, .row-span-xs-6, .row-span-xs-7, .row-span-xs-8, .row-span-xs-9, .row-span-xs-10, .row-span-xs-11, .row-span-xs-12, .row-span-sm-1, .row-span-sm-2, .row-span-sm-3, .row-span-sm-4, .row-span-sm-5, .row-span-sm-6, .row-span-sm-7, .row-span-sm-8, .row-span-sm-9, .row-span-sm-10, .row-span-sm-11, .row-span-sm-12, .row-span-md-1, .row-span-md-2, .row-span-md-3, .row-span-md-4, .row-span-md-5, .row-span-md-6, .row-span-md-7, .row-span-md-8, .row-span-md-9, .row-span-md-10, .row-span-md-11, .row-span-md-12, .row-span-lg-1, .row-span-lg-2, .row-span-lg-3, .row-span-lg-4, .row-span-lg-5, .row-span-lg-6, .row-span-lg-7, .row-span-lg-8, .row-span-lg-9, .row-span-lg-10, .row-span-lg-11, .row-span-lg-12, .row-span-xl-1, .row-span-xl-2, .row-span-xl-3, .row-span-xl-4, .row-span-xl-5, .row-span-xl-6, .row-span-xl-7, .row-span-xl-8, .row-span-xl-9, .row-span-xl-10, .row-span-xl-11, .row-span-xl-12 {
  grid-row: 1;
}

.justify-start {
  justify-self: start;
}

.justify-center {
  justify-self: center;
}

.justify-end {
  justify-self: end;
}

.justify-stretch {
  justify-self: stretch;
}

.align-start {
  align-self: start;
}

.align-center {
  align-self: center;
}

.align-end {
  align-self: end;
}

.align-stretch {
  align-self: stretch;
}

.col-1 {
  grid-column: span 1 / span 1;
}

.col-2 {
  grid-column: span 2 / span 2;
}

.col-3 {
  grid-column: span 3 / span 3;
}

.col-4 {
  grid-column: span 4 / span 4;
}

.col-5 {
  grid-column: span 5 / span 5;
}

.col-6 {
  grid-column: span 6 / span 6;
}

.col-7 {
  grid-column: span 7 / span 7;
}

.col-8 {
  grid-column: span 8 / span 8;
}

.col-9 {
  grid-column: span 9 / span 9;
}

.col-10 {
  grid-column: span 10 / span 10;
}

.col-11 {
  grid-column: span 11 / span 11;
}

.col-12 {
  grid-column: span 12 / span 12;
}

@media screen and (min-width: 0) {
  .col-xs-1 {
    grid-column: span 1 / span 1;
  }

  .col-xs-2 {
    grid-column: span 2 / span 2;
  }

  .col-xs-3 {
    grid-column: span 3 / span 3;
  }

  .col-xs-4 {
    grid-column: span 4 / span 4;
  }

  .col-xs-5 {
    grid-column: span 5 / span 5;
  }

  .col-xs-6 {
    grid-column: span 6 / span 6;
  }

  .col-xs-7 {
    grid-column: span 7 / span 7;
  }

  .col-xs-8 {
    grid-column: span 8 / span 8;
  }

  .col-xs-9 {
    grid-column: span 9 / span 9;
  }

  .col-xs-10 {
    grid-column: span 10 / span 10;
  }

  .col-xs-11 {
    grid-column: span 11 / span 11;
  }

  .col-xs-12 {
    grid-column: span 12 / span 12;
  }
}

@media screen and (min-width: 0) {
  .col-start-xs-1 {
    grid-column-start: 1;
  }

  .row-start-xs-1 {
    grid-row-start: 1;
  }

  .col-start-xs-2 {
    grid-column-start: 2;
  }

  .row-start-xs-2 {
    grid-row-start: 2;
  }

  .col-start-xs-3 {
    grid-column-start: 3;
  }

  .row-start-xs-3 {
    grid-row-start: 3;
  }

  .col-start-xs-4 {
    grid-column-start: 4;
  }

  .row-start-xs-4 {
    grid-row-start: 4;
  }

  .col-start-xs-5 {
    grid-column-start: 5;
  }

  .row-start-xs-5 {
    grid-row-start: 5;
  }

  .col-start-xs-6 {
    grid-column-start: 6;
  }

  .row-start-xs-6 {
    grid-row-start: 6;
  }

  .col-start-xs-7 {
    grid-column-start: 7;
  }

  .row-start-xs-7 {
    grid-row-start: 7;
  }

  .col-start-xs-8 {
    grid-column-start: 8;
  }

  .row-start-xs-8 {
    grid-row-start: 8;
  }

  .col-start-xs-9 {
    grid-column-start: 9;
  }

  .row-start-xs-9 {
    grid-row-start: 9;
  }

  .col-start-xs-10 {
    grid-column-start: 10;
  }
  .row-start-xs-10 {
    grid-row-start: 10;
  }

  .col-start-xs-11 {
    grid-column-start: 11;
  }

  .row-start-xs-11 {
    grid-row-start: 11;
  }

  .col-start-xs-12 {
    grid-column-start: 12;
  }

  .row-start-xs-12 {
    grid-row-start: 12;
  }
}

@media screen and (min-width: 0) {
  .pull-right-xs {
    grid-column-end: -1;
  }

  .pull-left-xs {
    grid-row-start: 1;
    grid-column-end: inherit;
  }
}

@media screen and (min-width: 0) {
  .justify-xs-start {
    justify-self: start;
  }

  .justify-xs-center {
    justify-self: center;
  }

  .justify-xs-end {
    justify-self: end;
  }

  .justify-xs-stretch {
    justify-self: stretch;
  }

  .align-xs-start {
    align-self: start;
  }

  .align-xs-center {
    align-self: center;
  }

  .align-xs-end {
    align-self: end;
  }

  .align-xs-stretch {
    align-self: stretch;
  }
}

@media screen and (min-width: 0) {
  .row-span-xs-1 {
    grid-row: span 1 / span 1;
  }

  .row-span-xs-2 {
    grid-row: span 2 / span 2;
  }

  .row-span-xs-3 {
    grid-row: span 3 / span 3;
  }

  .row-span-xs-4 {
    grid-row: span 4 / span 4;
  }

  .row-span-xs-5 {
    grid-row: span 5 / span 5;
  }

  .row-span-xs-6 {
    grid-row: span 6 / span 6;
  }

  .row-span-xs-7 {
    grid-row: span 7 / span 7;
  }

  .row-span-xs-8 {
    grid-row: span 8 / span 8;
  }

  .row-span-xs-9 {
    grid-row: span 9 / span 9;
  }

  .row-span-xs-10 {
    grid-row: span 10 / span 10;
  }

  .row-span-xs-11 {
    grid-row: span 11 / span 11;
  }

  .row-span-xs-12 {
    grid-row: span 12 / span 12;
  }
}

@media screen and (min-width: 34.375em) {
  .col-sm-1 {
    grid-column: span 1 / span 1;
  }

  .col-sm-2 {
    grid-column: span 2 / span 2;
  }

  .col-sm-3 {
    grid-column: span 3 / span 3;
  }

  .col-sm-4 {
    grid-column: span 4 / span 4;
  }

  .col-sm-5 {
    grid-column: span 5 / span 5;
  }

  .col-sm-6 {
    grid-column: span 6 / span 6;
  }

  .col-sm-7 {
    grid-column: span 7 / span 7;
  }

  .col-sm-8 {
    grid-column: span 8 / span 8;
  }

  .col-sm-9 {
    grid-column: span 9 / span 9;
  }

  .col-sm-10 {
    grid-column: span 10 / span 10;
  }

  .col-sm-11 {
    grid-column: span 11 / span 11;
  }

  .col-sm-12 {
    grid-column: span 12 / span 12;
  }
}

@media screen and (min-width: 34.375em) {
  .col-start-sm-1 {
    grid-column-start: 1;
  }

  .row-start-sm-1 {
    grid-row-start: 1;
  }

  .col-start-sm-2 {
    grid-column-start: 2;
  }

  .row-start-sm-2 {
    grid-row-start: 2;
  }

  .col-start-sm-3 {
    grid-column-start: 3;
  }

  .row-start-sm-3 {
    grid-row-start: 3;
  }

  .col-start-sm-4 {
    grid-column-start: 4;
  }

  .row-start-sm-4 {
    grid-row-start: 4;
  }

  .col-start-sm-5 {
    grid-column-start: 5;
  }

  .row-start-sm-5 {
    grid-row-start: 5;
  }

  .col-start-sm-6 {
    grid-column-start: 6;
  }

  .row-start-sm-6 {
    grid-row-start: 6;
  }

  .col-start-sm-7 {
    grid-column-start: 7;
  }

  .row-start-sm-7 {
    grid-row-start: 7;
  }

  .col-start-sm-8 {
    grid-column-start: 8;
  }

  .row-start-sm-8 {
    grid-row-start: 8;
  }

  .col-start-sm-9 {
    grid-column-start: 9;
  }

  .row-start-sm-9 {
    grid-row-start: 9;
  }

  .col-start-sm-10 {
    grid-column-start: 10;
  }

  .row-start-sm-10 {
    grid-row-start: 10;
  }

  .col-start-sm-11 {
    grid-column-start: 11;
  }

  .row-start-sm-11 {
    grid-row-start: 11;
  }

  .col-start-sm-12 {
    grid-column-start: 12;
  }

  .row-start-sm-12 {
    grid-row-start: 12;
  }
}

@media screen and (min-width: 34.375em) {
  .pull-right-sm {
    grid-column-end: -1;
  }

  .pull-left-sm {
    grid-row-start: 1;
    grid-column-end: inherit;
  }
}

@media screen and (min-width: 34.375em) {
  .justify-sm-start {
    justify-self: start;
  }

  .justify-sm-center {
    justify-self: center;
  }

  .justify-sm-end {
    justify-self: end;
  }

  .justify-sm-stretch {
    justify-self: stretch;
  }

  .align-sm-start {
    align-self: start;
  }

  .align-sm-center {
    align-self: center;
  }

  .align-sm-end {
    align-self: end;
  }

  .align-sm-stretch {
    align-self: stretch;
  }
}

@media screen and (min-width: 34.375em) {
  .row-span-sm-1 {
    grid-row: span 1 / span 1;
  }

  .row-span-sm-2 {
    grid-row: span 2 / span 2;
  }

  .row-span-sm-3 {
    grid-row: span 3 / span 3;
  }

  .row-span-sm-4 {
    grid-row: span 4 / span 4;
  }

  .row-span-sm-5 {
    grid-row: span 5 / span 5;
  }

  .row-span-sm-6 {
    grid-row: span 6 / span 6;
  }

  .row-span-sm-7 {
    grid-row: span 7 / span 7;
  }

  .row-span-sm-8 {
    grid-row: span 8 / span 8;
  }

  .row-span-sm-9 {
    grid-row: span 9 / span 9;
  }

  .row-span-sm-10 {
    grid-row: span 10 / span 10;
  }

  .row-span-sm-11 {
    grid-row: span 11 / span 11;
  }

  .row-span-sm-12 {
    grid-row: span 12 / span 12;
  }
}


@media screen and (min-width: 48em) {
  .col-md-1 {
    grid-column: span 1 / span 1;
  }

  .col-md-2 {
    grid-column: span 2 / span 2;
  }

  .col-md-3 {
    grid-column: span 3 / span 3;
  }

  .col-md-4 {
    grid-column: span 4 / span 4;
  }

  .col-md-5 {
    grid-column: span 5 / span 5;
  }

  .col-md-6 {
    grid-column: span 6 / span 6;
  }

  .col-md-7 {
    grid-column: span 7 / span 7;
  }

  .col-md-8 {
    grid-column: span 8 / span 8;
  }

  .col-md-9 {
    grid-column: span 9 / span 9;
  }

  .col-md-10 {
    grid-column: span 10 / span 10;
  }

  .col-md-11 {
    grid-column: span 11 / span 11;
  }

  .col-md-12 {
    grid-column: span 12 / span 12;
  }
}

@media screen and (min-width: 48em) {
  .col-start-md-1 {
    grid-column-start: 1;
  }

  .row-start-md-1 {
    grid-row-start: 1;
  }

  .col-start-md-2 {
    grid-column-start: 2;
  }

  .row-start-md-2 {
    grid-row-start: 2;
  }

  .col-start-md-3 {
    grid-column-start: 3;
  }

  .row-start-md-3 {
    grid-row-start: 3;
  }

  .col-start-md-4 {
    grid-column-start: 4;
  }

  .row-start-md-4 {
    grid-row-start: 4;
  }

  .col-start-md-5 {
    grid-column-start: 5;
  }

  .row-start-md-5 {
    grid-row-start: 5;
  }

  .col-start-md-6 {
    grid-column-start: 6;
  }

  .row-start-md-6 {
     grid-row-start: 6;
  }

  .col-start-md-7 {
    grid-column-start: 7;
  }

  .row-start-md-7 {
    grid-row-start: 7;
  }

  .col-start-md-8 {
    grid-column-start: 8;
  }

  .row-start-md-8 {
    grid-row-start: 8;
  }

  .col-start-md-9 {
    grid-column-start: 9;
  }

  .row-start-md-9 {
    grid-row-start: 9;
  }

  .col-start-md-10 {
    grid-column-start: 10;
  }

  .row-start-md-10 {
    grid-row-start: 10;
  }

  .col-start-md-11 {
    grid-column-start: 11;
  }
  
  .row-start-md-11 {
    grid-row-start: 11;
  }
  
  .col-start-md-12 {
    grid-column-start: 12;
  }
  
  .row-start-md-12 {
    grid-row-start: 12;
  }
}

@media screen and (min-width: 48em) {
  .pull-right-md {
    grid-column-end: -1;
  }
  
  .pull-left-md {
    grid-row-start: 1;
    grid-column-end: inherit;
  }
}

@media screen and (min-width: 48em) {
  .justify-md-start {
    justify-self: start;
  }

  .justify-md-center {
    justify-self: center;
  }

  .justify-md-end {
    justify-self: end;
  }

  .justify-md-stretch {
    justify-self: stretch;
  }

  .align-md-start {
    align-self: start;
  }

  .align-md-center {
    align-self: center;
  }

  .align-md-end {
    align-self: end;
  }

  .align-md-stretch {
    align-self: stretch;
  }
}

@media screen and (min-width: 48em) {
  .row-span-md-1 {
    grid-row: span 1 / span 1;
  }

  .row-span-md-2 {
    grid-row: span 2 / span 2;
  }

  .row-span-md-3 {
    grid-row: span 3 / span 3;
  }

  .row-span-md-4 {
    grid-row: span 4 / span 4;
  }

  .row-span-md-5 {
    grid-row: span 5 / span 5;
  }

  .row-span-md-6 {
    grid-row: span 6 / span 6;
  }

  .row-span-md-7 {
    grid-row: span 7 / span 7;
  }

  .row-span-md-8 {
    grid-row: span 8 / span 8;
  }

  .row-span-md-9 {
    grid-row: span 9 / span 9;
  }

  .row-span-md-10 {
    grid-row: span 10 / span 10;
  }

  .row-span-md-11 {
    grid-row: span 11 / span 11;
  }

  .row-span-md-12 {
    grid-row: span 12 / span 12;
  }
}

@media screen and (min-width: 58.75em) {
  .col-lg-1 {
    grid-column: span 1 / span 1;
  }
  
  .col-lg-2 {
    grid-column: span 2 / span 2;
  }
  
  .col-lg-3 {
    grid-column: span 3 / span 3;
  }
  
  .col-lg-4 {
    grid-column: span 4 / span 4;
  }
  
  .col-lg-5 {
    grid-column: span 5 / span 5;
  }
  
  .col-lg-6 {
    grid-column: span 6 / span 6;
  }
  
  .col-lg-7 {
    grid-column: span 7 / span 7;
  }
  
  .col-lg-8 {
    grid-column: span 8 / span 8;
  }
  
  .col-lg-9 {
    grid-column: span 9 / span 9;
  }
  
  .col-lg-10 {
    grid-column: span 10 / span 10;
  }
  
  .col-lg-11 {
    grid-column: span 11 / span 11;
  }
  
  .col-lg-12 {
    grid-column: span 12 / span 12;
  }
}

@media screen and (min-width: 58.75em) {
  .col-start-lg-1 {
    grid-column-start: 1;
  }
  
  .row-start-lg-1 {
    grid-row-start: 1;
  }
  
  .col-start-lg-2 {
    grid-column-start: 2;
  }
  
  .row-start-lg-2 {
    grid-row-start: 2;
  }
  
  .col-start-lg-3 {
    grid-column-start: 3;
  }
  
  .row-start-lg-3 {
    grid-row-start: 3;
  }
  
  .col-start-lg-4 {
    grid-column-start: 4;
  }
  
  .row-start-lg-4 {
    grid-row-start: 4;
  }
  
  .col-start-lg-5 {
    grid-column-start: 5;
  }
  
  .row-start-lg-5 {
    grid-row-start: 5;
  }
  
  .col-start-lg-6 {
    grid-column-start: 6;
  }
  
  .row-start-lg-6 {
    grid-row-start: 6;
  }
  
  .col-start-lg-7 {
    grid-column-start: 7;
  }
  
  .row-start-lg-7 {
    grid-row-start: 7;
  }
  
  .col-start-lg-8 {
    grid-column-start: 8;
  }
  
  .row-start-lg-8 {
    grid-row-start: 8;
  }
  
  .col-start-lg-9 {
    grid-column-start: 9;
  }
  
  .row-start-lg-9 {
    grid-row-start: 9;
  }
  
  .col-start-lg-10 {
    grid-column-start: 10;
  }
  
  .row-start-lg-10 {
    grid-row-start: 10;
  }
  
  .col-start-lg-11 {
    grid-column-start: 11;
  }
  
  .row-start-lg-11 {
    grid-row-start: 11;
  }
  
  .col-start-lg-12 {
    grid-column-start: 12;
  }
  
  .row-start-lg-12 {
    grid-row-start: 12;
  }
}

@media screen and (min-width: 58.75em) {
  .pull-right-lg {
    grid-column-end: -1;
  }
  
  .pull-left-lg {
    grid-row-start: 1;
    grid-column-end: inherit;
  }
}

@media screen and (min-width: 58.75em) {
  .justify-lg-start {
    justify-self: start;
  }

  .justify-lg-center {
    justify-self: center;
  }

  .justify-lg-end {
    justify-self: end;
  }

  .justify-lg-stretch {
    justify-self: stretch;
  }

  .align-lg-start {
    align-self: start;
  }

  .align-lg-center {
    align-self: center;
  }

  .align-lg-end {
    align-self: end;
  }

  .align-lg-stretch {
    align-self: stretch;
  }
}

@media screen and (min-width: 58.75em) {
  .row-span-lg-1 {
    grid-row: span 1 / span 1;
  }

  .row-span-lg-2 {
    grid-row: span 2 / span 2;
  }

  .row-span-lg-3 {
    grid-row: span 3 / span 3;
  }

  .row-span-lg-4 {
    grid-row: span 4 / span 4;
  }

  .row-span-lg-5 {
    grid-row: span 5 / span 5;
  }

  .row-span-lg-6 {
    grid-row: span 6 / span 6;
  }

  .row-span-lg-7 {
    grid-row: span 7 / span 7;
  }

  .row-span-lg-8 {
    grid-row: span 8 / span 8;
  }

  .row-span-lg-9 {
    grid-row: span 9 / span 9;
  }

  .row-span-lg-10 {
    grid-row: span 10 / span 10;
  }

  .row-span-lg-11 {
    grid-row: span 11 / span 11;
  }

  .row-span-lg-12 {
    grid-row: span 12 / span 12;
  }
}

@media screen and (min-width: 68.75em) {
  .col-xl-1 {
    grid-column: span 1 / span 1;
  }
  
  .col-xl-2 {
    grid-column: span 2 / span 2;
  }
  
  .col-xl-3 {
    grid-column: span 3 / span 3;
  }
  
  .col-xl-4 {
    grid-column: span 4 / span 4;
  }
  
  .col-xl-5 {
    grid-column: span 5 / span 5;
  }
  
  .col-xl-6 {
    grid-column: span 6 / span 6;
  }
  
  .col-xl-7 {
    grid-column: span 7 / span 7;
  }
  
  .col-xl-8 {
    grid-column: span 8 / span 8;
  }
  
  .col-xl-9 {
    grid-column: span 9 / span 9;
  }
  
  .col-xl-10 {
    grid-column: span 10 / span 10;
  }
  
  .col-xl-11 {
    grid-column: span 11 / span 11;
  }
  
  .col-xl-12 {
    grid-column: span 12 / span 12;
  }
}

@media screen and (min-width: 68.75em) {
  .col-start-xl-1 {
     grid-column-start: 1;
  }
  
  .row-start-xl-1 {
    grid-row-start: 1;
  }
  
  .col-start-xl-2 {
    grid-column-start: 2;
  }
  
  .row-start-xl-2 {
    grid-row-start: 2;
  }
  
  .col-start-xl-3 {
    grid-column-start: 3;
  }
  
  .row-start-xl-3 {
    grid-row-start: 3;
  }
  
  .col-start-xl-4 {
    grid-column-start: 4;
  }
  
  .row-start-xl-4 {
    grid-row-start: 4;
  }
  
  .col-start-xl-5 {
    grid-column-start: 5;
  }
  
  .row-start-xl-5 {
    grid-row-start: 5;
  }
  
  .col-start-xl-6 {
    grid-column-start: 6;
  }
  
  .row-start-xl-6 {
    grid-row-start: 6;
  }
  
  .col-start-xl-7 {
    grid-column-start: 7;
  }
  
  .row-start-xl-7 {
    grid-row-start: 7;
  }
  
  .col-start-xl-8 {
    grid-column-start: 8;
  }
  
  .row-start-xl-8 {
    grid-row-start: 8;
  }
  
  .col-start-xl-9 {
    grid-column-start: 9;
  }
  
  .row-start-xl-9 {
    grid-row-start: 9;
  }
  
  .col-start-xl-10 {
    grid-column-start: 10;
  }
  
  .row-start-xl-10 {
    grid-row-start: 10;
  }
  
  .col-start-xl-11 {
    grid-column-start: 11;
  }
  
  .row-start-xl-11 {
    grid-row-start: 11;
  }
  
  .col-start-xl-12 {
    grid-column-start: 12;
  }
  
  .row-start-xl-12 {
    grid-row-start: 12;
  }
}

@media screen and (min-width: 68.75em) {
  .pull-right-xl {
    grid-column-end: -1;
  }
  
  .pull-left-xl {
    grid-row-start: 1;
    grid-column-end: inherit;
  }
}

@media screen and (min-width: 68.75em) {
  .justify-xl-start {
    justify-self: start;
  }

  .justify-xl-center {
    justify-self: center;
  }

  .justify-xl-end {
    justify-self: end;
  }

  .justify-xl-stretch {
    justify-self: stretch;
  }

  .align-xl-start {
    align-self: start;
  }

  .align-xl-center {
    align-self: center;
  }

  .align-xl-end {
    align-self: end;
  }

  .align-xl-stretch {
    align-self: stretch;
  }
}

@media screen and (min-width: 68.75em) {
  .row-span-xl-1 {
    grid-row: span 1 / span 1;
  }

  .row-span-xl-2 {
    grid-row: span 2 / span 2;
  }

  .row-span-xl-3 {
    grid-row: span 3 / span 3;
  }

  .row-span-xl-4 {
    grid-row: span 4 / span 4;
  }

  .row-span-xl-5 {
    grid-row: span 5 / span 5;
  }

  .row-span-xl-6 {
    grid-row: span 6 / span 6;
  }

  .row-span-xl-7 {
    grid-row: span 7 / span 7;
  }

  .row-span-xl-8 {
    grid-row: span 8 / span 8;
  }

  .row-span-xl-9 {
    grid-row: span 9 / span 9;
  }

  .row-span-xl-10 {
    grid-row: span 10 / span 10;
  }

  .row-span-xl-11 {
    grid-row: span 11 / span 11;
  }

  .row-span-xl-12 {
    grid-row: span 12 / span 12;
  }
}

.col-start-1 {
  grid-column-start: 1;
}

.row-start-1 {
  grid-row-start: 1;
}

.col-start-2 {
  grid-column-start: 2;
}

.row-start-2 {
  grid-row-start: 2;
}

.col-start-3 {
  grid-column-start: 3;
}

.row-start-3 {
  grid-row-start: 3;
}

.col-start-4 {
  grid-column-start: 4;
}

.row-start-4 {
  grid-row-start: 4;
}

.col-start-5 {
  grid-column-start: 5;
}

.row-start-5 {
  grid-row-start: 5;
}

.col-start-6 {
  grid-column-start: 6;
}

.row-start-6 {
  grid-row-start: 6;
}

.col-start-7 {
  grid-column-start: 7;
}

.row-start-7 {
  grid-row-start: 7;
}

.col-start-8 {
  grid-column-start: 8;
}

.row-start-8 {
  grid-row-start: 8;
}

.col-start-9 {
  grid-column-start: 9;
}

.row-start-9 {
  grid-row-start: 9;
}

.col-start-10 {
  grid-column-start: 10;
}
.row-start-10 {
  grid-row-start: 10;
}

.col-start-11 {
  grid-column-start: 11;
}

.row-start-11 {
  grid-row-start: 11;
}

.col-start-12 {
  grid-column-start: 12;
}

.row-start-12 {
  grid-row-start: 12;
}

.row-span-1 {
  grid-row: span 1 / span 1;
}

.row-span-2 {
  grid-row: span 2 / span 2;
}

.row-span-3 {
  grid-row: span 3 / span 3;
}

.row-span-4 {
  grid-row: span 4 / span 4;
}

.row-span-5 {
  grid-row: span 5 / span 5;
}

.row-span-6 {
  grid-row: span 6 / span 6;
}

.row-span-7 {
  grid-row: span 7 / span 7;
}

.row-span-8 {
  grid-row: span 8 / span 8;
}

.row-span-9 {
  grid-row: span 9 / span 9;
}

.row-span-10 {
  grid-row: span 10 / span 10;
}

.row-span-11 {
  grid-row: span 11 / span 11;
}

.row-span-12 {
  grid-row: span 12 / span 12;
}

body,div,h1,h2,h3,h4,h5,h6,p,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea{margin:0;padding:0}table{border-spacing:0;border-collapse:collapse}caption,th,td{text-align:left;text-align:start;vertical-align:top}abbr,acronym{font-variant:normal;border-bottom:1px dotted #666;cursor:help}blockquote,q{quotes:none}fieldset,img,iframe{border:0}ul{list-style-type:none}sup{vertical-align:text-top}sub{vertical-align:text-bottom}del{text-decoration:line-through}ins{text-decoration:none}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font:12px/1 "Lucida Grande","Lucida Sans Unicode",Verdana,sans-serif;color:#000}input,button,textarea,select{font-family:inherit;font-size:99%;font-weight:inherit}pre,code{font-family:Monaco,monospace}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}h1{font-size:1.8333em}h2{font-size:1.6667em}h3{font-size:1.5em}h4{font-size:1.3333em}table{font-size:inherit}caption,th{font-weight:700}a{color:#00f}h1,h2,h3,h4,h5,h6{margin-top:1em}h1,h2,h3,h4,h5,h6,p,pre,blockquote,table,ol,ul,form{margin-bottom:12px}
body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li{float:left}.ce_gallery>ul li.col_first{clear:left}.float_left{float:left}.float_right{float:right}.block{overflow:hidden}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
#colorbox,#cboxOverlay,#cboxWrapper{position:absolute;top:0;left:0;z-index:9999;overflow:hidden;-webkit-transform:translate3d(0,0,0)}#cboxWrapper{max-width:none}#cboxOverlay{position:fixed;width:100%;height:100%}#cboxMiddleLeft,#cboxBottomLeft{clear:left}#cboxContent{position:relative}#cboxLoadedContent{overflow:auto;-webkit-overflow-scrolling:touch}#cboxTitle{margin:0}#cboxLoadingOverlay,#cboxLoadingGraphic{position:absolute;top:0;left:0;width:100%;height:100%}#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow{cursor:pointer}.cboxPhoto{float:left;margin:auto;border:0;display:block;max-width:none;-ms-interpolation-mode:bicubic}.cboxIframe{width:100%;height:100%;display:block;border:0;padding:0;margin:0}#colorbox,#cboxContent,#cboxLoadedContent{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box}#cboxOverlay{background:#000;opacity:.9;filter:alpha(opacity = 90)}#colorbox{outline:0}#cboxContent{margin-top:20px;background:#000}.cboxIframe{background:#fff}#cboxError{padding:50px;border:1px solid #ccc}#cboxLoadedContent{border:5px solid #000;background:#fff}#cboxTitle{position:absolute;top:-20px;left:0;color:#ccc}#cboxCurrent{position:absolute;top:-20px;right:0;color:#ccc}#cboxLoadingGraphic{background:url(../../assets/colorbox/images/loading.gif) no-repeat center center}#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose{border:0;padding:0;margin:0;overflow:visible;width:auto;background:0 0}#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active{outline:0}#cboxSlideshow{position:absolute;top:-20px;right:90px;color:#fff}#cboxPrevious{position:absolute;top:50%;left:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top left;width:28px;height:65px;text-indent:-9999px}#cboxPrevious:hover{background-position:bottom left}#cboxNext{position:absolute;top:50%;right:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top right;width:28px;height:65px;text-indent:-9999px}#cboxNext:hover{background-position:bottom right}#cboxClose{position:absolute;top:5px;right:5px;display:block;background:url(../../assets/colorbox/images/controls.png) no-repeat top center;width:38px;height:19px;text-indent:-9999px}#cboxClose:hover{background-position:bottom center}
/* open-sans-300 - latin */
/*@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: local(''),
       url('../../files/wsk/theme/fonts/opensans/open-sans-v18-latin-300.woff2') format('woff2'), 
       url('../../files/wsk/theme/fonts/opensans/open-sans-v18-latin-300.woff') format('woff'); 
}
*/
/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('../../files/wsk/theme/fonts/opensans/open-sans-v18-latin-regular.woff2') format('woff2'), 
       url('../../files/wsk/theme/fonts/opensans/open-sans-v18-latin-regular.woff') format('woff'); 
}

/* open-sans-700 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: local(''),
       url('../../files/wsk/theme/fonts/opensans/open-sans-v18-latin-700.woff2') format('woff2'), 
       url('../../files/wsk/theme/fonts/opensans/open-sans-v18-latin-700.woff') format('woff'); 
}
/* roboto-300 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: local('Roboto Light'), local('Roboto-Light'),
       url('../../files/wsk/theme/fonts/roboto/roboto-v20-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../../files/wsk/theme/fonts/roboto/roboto-v20-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* roboto-900 - latin */
@font-face {
  font-family: 'RobotoBlack';
  font-style: normal;
  font-weight: 900;
  src: local('Roboto Black'), local('Roboto-Black'),
       url('../../files/wsk/theme/fonts/roboto/roboto-v20-latin-900.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../../files/wsk/theme/fonts/roboto/roboto-v20-latin-900.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
@font-face {
  font-family: 'Iconfont';
  src:
    url('../../files/wsk/theme/fonts/iconfont/Iconfont.ttf?2ljypp') format('truetype'),
    url('../../files/wsk/theme/fonts/iconfont/Iconfont.woff?2ljypp') format('woff'),
    url('../../files/wsk/theme/fonts/iconfont/Iconfont.svg?2ljypp#Iconfont') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

i {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'Iconfont' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-asterisk:before {
  content: "\f069";
}
.icon-plus1:before {
  content: "\f067";
}
.icon-question:before {
  content: "\f128";
}
.icon-minus1:before {
  content: "\f068";
}
.icon-search:before {
  content: "\f002";
}
.icon-envelope-o:before {
  content: "\f003";
}
.icon-heart:before {
  content: "\f004";
}
.icon-star:before {
  content: "\f005";
}
.icon-star-o:before {
  content: "\f006";
}
.icon-user:before {
  content: "\f007";
}
.icon-check:before {
  content: "\f00c";
}
.icon-close:before {
  content: "\f00d";
}
.icon-remove:before {
  content: "\f00d";
}
.icon-times:before {
  content: "\f00d";
}
.icon-cog:before {
  content: "\f013";
}
.icon-gear:before {
  content: "\f013";
}
.icon-home:before {
  content: "\f015";
}
.icon-download:before {
  content: "\f019";
}
.icon-repeat:before {
  content: "\f01e";
}
.icon-rotate-right:before {
  content: "\f01e";
}
.icon-tag:before {
  content: "\f02b";
}
.icon-bookmark:before {
  content: "\f02e";
}
.icon-print:before {
  content: "\f02f";
}
.icon-image:before {
  content: "\f03e";
}
.icon-photo:before {
  content: "\f03e";
}
.icon-picture-o:before {
  content: "\f03e";
}
.icon-pencil:before {
  content: "\f040";
}
.icon-map-marker:before {
  content: "\f041";
}
.icon-check-square-o:before {
  content: "\f046";
}
.icon-chevron-left:before {
  content: "\f053";
}
.icon-chevron-right:before {
  content: "\f054";
}
.icon-ban:before {
  content: "\f05e";
}
.icon-exclamation-circle:before {
  content: "\f06a";
}
.icon-exclamation-triangle:before {
  content: "\f071";
}
.icon-warning1:before {
  content: "\f071";
}
.icon-comment:before {
  content: "\f075";
}
.icon-chevron-up:before {
  content: "\f077";
}
.icon-chevron-down:before {
  content: "\f078";
}
.icon-cogs:before {
  content: "\f085";
}
.icon-gears:before {
  content: "\f085";
}
.icon-comments:before {
  content: "\f086";
}
.icon-star-half1:before {
  content: "\f089";
}
.icon-sign-out:before {
  content: "\f08b";
}
.icon-upload:before {
  content: "\f093";
}
.icon-phone1:before {
  content: "\f095";
}
.icon-square-o:before {
  content: "\f096";
}
.icon-facebook1:before {
  content: "\f09a";
}
.icon-facebook-f:before {
  content: "\f09a";
}
.icon-bars:before {
  content: "\f0c9";
}
.icon-navicon:before {
  content: "\f0c9";
}
.icon-reorder:before {
  content: "\f0c9";
}
.icon-envelope:before {
  content: "\f0e0";
}
.icon-linkedin:before {
  content: "\f0e1";
}
.icon-angle-double-up:before {
  content: "\f102";
}
.icon-angle-double-down:before {
  content: "\f103";
}
.icon-angle-right:before {
  content: "\f105";
}
.icon-desktop:before {
  content: "\f108";
}
.icon-laptop:before {
  content: "\f109";
}
.icon-tablet:before {
  content: "\f10a";
}
.icon-mobile1:before {
  content: "\f10b";
}
.icon-mobile-phone:before {
  content: "\f10b";
}
.icon-circle-o:before {
  content: "\f10c";
}
.icon-quote-left:before {
  content: "\f10d";
}
.icon-quote-right:before {
  content: "\f10e";
}
.icon-spinner:before {
  content: "\f110";
}
.icon-circle:before {
  content: "\f111";
}
.icon-mail-reply:before {
  content: "\f112";
}
.icon-reply:before {
  content: "\f112";
}
.icon-smile-o:before {
  content: "\f118";
}
.icon-frown-o:before {
  content: "\f119";
}
.icon-terminal:before {
  content: "\f120";
}
.icon-code:before {
  content: "\f121";
}
.icon-star-half-empty:before {
  content: "\f123";
}
.icon-star-half-full:before {
  content: "\f123";
}
.icon-star-half-o:before {
  content: "\f123";
}
.icon-exclamation:before {
  content: "\f12a";
}
.icon-chevron-circle-left:before {
  content: "\f137";
}
.icon-chevron-circle-right:before {
  content: "\f138";
}
.icon-chevron-circle-up:before {
  content: "\f139";
}
.icon-chevron-circle-down:before {
  content: "\f13a";
}
.icon-html5:before {
  content: "\f13b";
}
.icon-css31:before {
  content: "\f13c";
}
.icon-ellipsis-h:before {
  content: "\f141";
}
.icon-ellipsis-v:before {
  content: "\f142";
}
.icon-file:before {
  content: "\f15b";
}
.icon-xing:before {
  content: "\f168";
}
.icon-instagram1:before {
  content: "\f16d";
}
.icon-sliders:before {
  content: "\f1de";
}
.icon-share-alt:before {
  content: "\f1e0";
}
.icon-yelp:before {
  content: "\f1e9";
}
.icon-paypal1:before {
  content: "\f1ed";
}
.icon-cc-paypal:before {
  content: "\f1f4";
}
.icon-copyright:before {
  content: "\f1f9";
}
.icon-toggle-off:before {
  content: "\f204";
}
.icon-toggle-on:before {
  content: "\f205";
}
.icon-whatsapp1:before {
  content: "\f232";
}
.icon-contao:before {
  content: "\f26d";
}
.icon-user-circle:before {
  content: "\f2bd";
}

/* main styles */
:root {
    --color-logo-orange1: #F07920;
    --color-logo-orange2: #ED3D2F;
    --color-logo-red1: #af1747;
    --color-logo-red2: #670124;
    --color-logo-text: #1E0D0D;
    --color-text: #222222;
    --color-lightgold: #F5F5EB;
    --color-grey: #596074;
    --color-lightgrey: #F0F0F0;
}
html {
    min-height:101%;
    font-size:100%;
    line-height:150%;
}
body {
    font:1.3rem/160% Open Sans;
    font-weight: 400;
    color: var(--color-logo-text);
    background-color: #FFF;
    /* hyphens */
    -moz-hyphens: auto;
    -o-hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}
@media all and (max-width: 550px) {
    body {
        font-size:1.15rem;
        font-weight: 400;
    }
}
/*no hyphens*/
.nohyphen, footer, h1, h2, h3, h4, p.projektlink, table, .cta {
    -moz-hyphens: none;
    -o-hyphens: auto;
    -webkit-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}

#wrapper {
    width:100%;
}
i {
    font-family:Iconfont!important;
}
#header {
    width: 100%;
}
.mainlayout #header {
    /*height: 60vh;
    min-height: 400px;*/
    background-image: url(https://www.webstudio-kelkheim.de/files/wsk/theme/background/background-1000.png);
    background-size: contain;
    background-repeat: repeat-x;
    background-position: left top;
}
.simplelayout #header {
    /*height: 20vh;
    min-height: 150px;*/
}
#header .inside {
    width: 100%;
    height:100%;
}
.header_top,
.header_top .logo,
.header_top .logo img,
.header_top .nav .header_top .header_right,
.header_top span.openmenu, .header_top i,
.overlay .closebtn,
.overlay li a,
.ce_accordionSingle h3::after {
       transition: 1s ease; 
}
.header_top {
    position: fixed;
    display: block;
    width: 100%;
    height: auto;
    max-height: 110px;
    z-index:90;
}
.header_top .logo {
    float:left;
    margin: 10px 10px 5px 5%;
    max-width: 60%;
    vertical-align: top;
    transition: 0.5s;
}
.header_top .logo img {
    width:100%;
}
.header_top .nav {
    cursor:pointer;
    display: block;
    line-height: 100%;
    float: right;
    margin: 10px 5% 10px 10px;
    transition: 0.5s;
    color: var(--color-logo-orange2);
    /*vertical-align: top;*/
}
.header_top .nav:hover {
    color: var(--color-logo-text);
}
.header_top .openmenu, .overlay .closemenu {
    cursor:pointer;
    display: inline-block;
    margin: 0 0.5rem 0 0;
    font: 1.75rem/100% RobotoBlack;
    cursor:pointer;
    vertical-align: middle; 
    margin-top: 0.175rem;
    text-transform: uppercase;
}
.header_top i, .overlay .closebtn i {
    font-size:3.5rem;
    display:inline-block;
    vertical-align: middle;
    margin-left: 0.5rem;
}
.header_top .openmenu {
    display:none;
}
@media all and (max-width: 1344px) {
    .header_top .openmenu {
        display:inline-block;
    }
    .mainnav {
        display:none!important;
    }
}
/* Menu Overlay 
REQUIRES Template "menu_overlay.js" in Seitenlayout */
#myNav {
    display: none;
    height: 100%;
    width: 100%;
    position: fixed;
    z-index: 99;
    top: 0;
    left: 0;
    background-color: var(--color-lightgold);
    overflow-y: auto;
    text-align: left;
    transition: 1s ease;
}
.overlay-content li {
    margin: 0 0 0.25rem 0.5rem;
}
.overlay-content li, .overlay-content li a {
    text-decoration: none;
    /*font: 1.25rem/115% Open Sans;*/
    color: var(--color-text);
    list-style: none;
}
.overlay-content {
    position: relative;
    top: 0;
    width: 98%;
    max-width:1280px;
    margin:0 auto;
    margin-top:60px;
}
.overlay ul.level_1, .overlay ul.level_2, .overlay ul.level_2 {
    margin-left:10px;
}
.overlay ul.level_1 li.first, .overlay ul.level_1 li.first a  {
    font:1.25rem/150% Open Sans!important;
    font-weight:700!important;
    margin:0 0 10px 0!important;
    padding: 0 0 5px 0;
    color: var(--color-logo-orange2)!important;
}
.overlay ul.level_1 li.first {
    border-bottom: 2px solid var(--color-logo-orange2);
}

.overlay li a {
    opacity: 1;
    transition: 0.5s ease;
}
.overlay li a:hover {
    opacity: 0.5;
}
.overlay li.active {
    opacity: 1;
    color: var(--color-logo-orange2);
}
/*.overlay li:hover {
    color: var(--color-logo-orange2);
    opacity: 1;
}
*/
.overlay li a:hover {
    color: var(--color-logo-orange2);
    opacity: 1;
}
.overlay .closebtn {
    position: absolute;
    top: 0;
    right: 24px;
    margin: 10px 5% 10px 10px;
    font-size: 3.5rem;
    z-index:100;
    display: block;
    color: var(--color-logo-orange2);
    text-decoration: none;
}
.overlay a.closebtn:hover {
    text-decoration: none;
    opacity: 0.5;
    color: var(--color-logo-text)
}
/* Overlay Kontakt */
.overlay-content #kontakt ul {
    text-align: center;
}
.overlay-content #kontakt li{
    display: inline-block;
    margin: 0 1rem;
}
.overlay-content #kontakt i {
    margin-right:10px;
}
@media all and (max-width: 550px) {
    .overlay-content ul {
        margin-bottom: 0; 
    }
    .overlay-content #kontakt ul {
        text-align: left;
    }
    .overlay-content #kontakt li{
        display: block;
        margin: 0.25rem 0;
    }
    .overlay-content {
        margin-top:0;
    }
    .overlay-content {
        --grid__gutter: 1.25rem;
    }
}
@media all and (max-height: 450px) {
  .overlay {overflow-y: auto;}
  .overlay a {font-size: 20px;}
  .overlay .closebtn {
    font-size: 2.5rem;
    top: 10px;
    right: 10px;
    line-height: 100%;;
  }
}
/* Stick Header 
REQUIRES Template "stickyheader.js" in Seitenlayout */
#stickyheader {
    height: auto;
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
}
#stickyheader.sticky .header_top {
    background-color: var(--color-lightgrey);
    height:auto;
    -webkit-box-shadow: 0 0 5px 0 var(--color-grey);
    box-shadow: 0 0 5px 0 var(--color-grey);
}
#stickyheader.sticky .header_top .logo {
    margin: 10px 5px 5px 1%;
}
#stickyheader.sticky .logo img {
	height:40px;
	width:auto;	
}
#stickyheader.sticky .header_top .nav {
    margin: 5px 1% 5px 5px;
    float: right;
}
#stickyheader.sticky .header_top span.openmenu {
    font-size:1.5rem;
}
#stickyheader.sticky .header_top i {
    font-size:3rem;
}
#myNav.sticky .closebtn {
    margin: 5px 1%;
    font-size: 3rem;
    text-decoration: none;
}
/* Hero Text */
#header .hero, #header .hero .article-inside {
    height:100%;
}
#header .hero .article-inside {
    margin-bottom: 0;
    min-height: 300px;
}
#header .hero_text {
    height: auto;
    margin: 300px 0 100px 0;
}
#header .hero_text p, #header .hero_text h1 {
    width:100%;
    text-align: left;
    margin:0!important;
}
#header .hero_text p {
    font: 2.25rem/125% Open Sans!important;
    font-weight: 700!important;
    color: var(--color-text); 
    letter-spacing: -2px;
}
#header .hero_text h1 {
    font: 3.75rem/125% RobotoBlack!important;
    font-weight: 900!important;
    color: var(--color-logo-orange2);
}
h1,h2,h3,h4,h1 a,h2 a,h3 a,h4 a  {
    margin-top:0;
    margin-bottom:2rem;
    font-family: RobotoBlack;
    line-height: 125%;
    color:var(--color-logo-text);
    transition: 1s ease;
    text-decoration:none;
    letter-spacing: -1px;
}
h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover {
    text-decoration:underline;
    text-decoration-skip-ink: auto;
}
h1,h1 a {
    font-size: 3.75rem;
    /*font-size: calc(90px + 310*(100vw - 480px)/760);*/
    margin: 200px 0 75px 0;
    padding: 0 0 1rem 0;
    color: var(--color-logo-orange2);
}
h2, h2 a {
    font-size:2.25rem;
    margin: 4.25rem 0 2.25rem 0;
}
h3, h3 a {
    font-size:1.75rem;
    margin: 2rem 0 2rem 0;
    color: var(--color-logo-red2);
}
h4, h4 a {
    font-size:1.35rem;
    margin: 1.5rem 0 1.5rem 0;
    color: var(--color-text);
}
p, p a, li, li a {
    font: 1.3rem/150% Open Sans;
    font-weight: 400;
    text-align: left;
    color: var(--color-text);
    margin: 0 0 1rem 0;
}
p a {
    color: var(--color-lila);
}
.welcome p {
    font-size: 1.5rem;
    line-height:175%;
    font-weight: 400;
}
@media all and (max-width: 768px) {
    h1,h1 a {
        font-size: 2.75rem;
        margin: 150px 0 0 0;
        text-align: center;
    }
    h2, h2 a {
        font-size:1.75rem;
        margin: 50px 0 40px 0;
    }
    h3, h3 a {
        font-size:1.5rem;
    }
    h4, h4 a {
        font-size:1.25rem;
        margin: 1.5rem 0 1.5rem 0;
        color: var(--color-text);
    }
    #header .hero_text {
        height: auto;
        margin: 150px 0 4rem 0;
    }
    #header .hero_text h1 {
        font: 2.75rem/125% RobotoBlack!important;
        text-align: center;
    }
    #header .hero_text p {
        font: 1.5rem/125% Open Sans!important;
        font-weight: 700!important;
        text-align: center;
    }
}
@media all and (max-width: 550px) {
    h1,h1 a {
        font-size: 2rem;
        margin: 150px 0 0 0;
        text-align: center;
    }
    h2, h2 a {
        font-size:1.5rem;
        margin: 50px 0 40px 0;
    }
    h3, h3 a {
        font-size:1.25rem;
    }
    h4, h4 a {
        font-size:1.15rem;
        margin: 1.5rem 0 1.5rem 0;
        letter-spacing: -1px;
        color: var(--color-text);
    }
    #header .hero_text {
        height: auto;
        margin: 150px 0 4rem 0;
    }
    #header .hero_text h1 {
        font: 2.75rem/125% RobotoBlack!important;
        text-align: center;
    }
    #header .hero_text p {
        font: 1.5rem/125% Open Sans!important;
        font-weight: 700!important;
        text-align: center;
    }
    p, p a, li, li a {
        font: 1.15rem/150% Open Sans;
        font-weight: 400;
        text-align: left;
        color: var(--color-text);
        margin: 0 0 1rem 0;
    }
    .welcome p {
        font: 1.5rem/175% Open Sans!important;
        font-weight: 400;
    }
}
.txtsmall p, .txtsmall p a {
    font-size: 0.95rem;
}
#main ul li {
    list-style-type: none;
    margin-left: 60px;
    margin-bottom: 0.25rem;
}
#main ul li::before {
    content:"\f068";
    width:16px;
    margin-right:28px;
    margin-left: -40px;
    font-size: 1rem;
    font-family: Iconfont;
    color: var(--color-logo-orange2);
}
#main ol {
    list-style: none;
    counter-reset: li-counter;
    padding-left:10px;
  }
#main ol li {
    counter-increment: li-counter;
    list-style-position:outside;
    margin-left: 40px;
    margin-bottom: 0.5rem;
    line-height: 115%;
    text-indent: 0;
  }
#main ol li::before {
    content: counter(li-counter,decimal) ".";
    color:var(--color-logo-orange2);
    font-weight: 700;
    font-family: RobotoBlack;
    margin-right:1rem;
    margin-right: 20px;
    margin-left: -40px;
    width: 0;
    background-color: none;
}
.mod_article.bggold {
    background-color: var(--color-lightgold);
    /*transform: rotate(-2deg);
}
.mod_article.bggold .article-inside {
    transform: rotate(2deg);
*/
}

/* Images */
.ce_image img {
    width: 100%;
    max-width:100%;
    height: auto;
}
.mod_faqreader .image_container {
    margin: 4rem 0;
}
.mod_faqreader img {
    width: 100%;
    height: auto;
    padding:5px;
    width: calc(100% - 12px);
    border: 1px solid #ED3D2F;
}
.ce_text .image_container.float_right {
    margin: 0.5rem 0 0.5rem 1rem;
}
.ce_text .image_container.float_left {
    margin: 0.5rem 2rem 0.5rem 0;
}
.ce_text .image_container figcaption {
    font-size: 0.85rem;
    text-align: left;
    font-family: RobotoBlack;
    line-height: 115%;
    margin:0 5px;
}
.ce_text.nofigcaption figcaption,
.ce_gallery.nofigcaption figcaption {  
    display:none;
}

.imgbdr .image_container {
    margin: 0.5rem;
}
.imgbdr img {
    border: 1px solid #ED3D2F;
    padding:5px;
    width: calc(100% - 12px);
    height:auto;
}
.imgbdr figcaption {
    font-size: 1rem;
    text-align: left;
    font-family: RobotoBlack;
    line-height: 115%;
    margin:0 5px;
}
.ce_image.expertise {
    text-align: center;
}
.ce_image.expertise .image_container {
    text-align: center!important;
}
.ce_image.expertise img {
    width: auto;
    text-align: center;
}
.ce_image.expertise figcaption {
    font-size: 1.25rem;
    text-align: center;
    font-family: RobotoBlack;
    line-height: 115%;
    margin:0 5px 2rem 0;
}
@media screen and (max-width: 768px) {
    .imgbdr {
        margin: 1rem 0;
    }
    .imgbdr .image_container  {
        margin: 0;
        width:100%;
        float: left;
    }
    .imgbdr figcaption {
        margin:0 5px 1.5rem 5px;
    }
    .ce_text .image_container.float_right {
        margin-left: 0;
    }
}
/*CTA
.cta {
    width:auto;
    display:inline-block;
    margin-top:1rem;
    background-color:var(--color-lila);
    border:none;
    height:36px;
}
.cta p {
    margin-bottom:0;
}
.cta p a {
    text-decoration:none;
}
.cta p a {
    font:21px/21px RobotoBlack!important;
    color:#FFF!important;
    padding: 0 16px!important;
    vertical-align: middle!important;
}
.cta p i {
    padding: 0;
    padding-left: 16px;
    border-left: 1px solid #fff;
    height: 36px;
    line-height: 36px;
    display: inline-block;
    margin-left: 16px;
    vertical-align: middle;
    color:#FFF;
}
*/

/* CTA ce_text , FORM Submit , mocre*/
.ce_text .cta,
.more {
    width:auto;
    display:inline-block;
    margin: 1rem 0 ;
    background-color:var(--color-logo-orange2);
    height:auto;
    /*margin-bottom: -4px;*/
}
.ce_text .cta a,
.more a {
    font:21px/200% RobotoBlack!important;
    color:#FFF!important;
    padding: 0 16px!important;
    /*vertical-align: middle!important;*/
    text-decoration:none;
    margin:0;
}
.ce_text .cta a::after,
.more a::after {
    padding: 0;
    height:420px;
    padding-left: 1rem;
    border-left: 1px solid var(--color-lightgold);
    height: auto;
    display: inline-block;
    margin-left: 1rem;
    margin-top: -4px;
    vertical-align: middle;
    color:#FFF;
    content:"\f054";
    font-family: Iconfont;
    /*line-height: 220%!important;*/
    transition: 0.2s;
}
.ce_text .cta:hover a::after,
.more:hover a::after {
    border-left: 10px solid var(--color-lightgold);;
}
.kunden .ce_text .cta {
    margin-bottom: 4rem;
}
@media all and (max-width: 768px) {
    .ce_text .cta a,
    .more a {
        font:18px/36px RobotoBlack!important;
    }
}
/*#leistungen .ce_text .cta {
    margin-top:-2px;
}
#leistungen .ce_text .cta {
    height:28px;
}
#leistungen .ce_text .cta a::after {
    line-height: 34px;
    height: 34px;
} 
*/
#leistungen .ce_text .cta, #solutions .ce_text .cta {
    height:32px;
}
#leistungen .ce_text .cta a, #solutions .ce_text .cta a {
    font:16px/32px RobotoBlack!important;
}
#leistungen .ce_text .cta a::after, #solutions .ce_text .cta a::after {
    height:32px;
}


/* Formulare */
.ce_form .widget, .mod_login .widget   {
    display: inline-block;
    margin:0;
}
.ce_form .textarea {
    padding: 0.5rem;
    line-height: 115%;
}
label {
    margin: 1px;
    display: block;
    font: 1.25rem/100% RobotoBlack;
    color: var(--color-text);
}
.submit:hover {
    cursor: pointer;
}
.widget-text .text:focus, .widget-password .text:focus  {
    background-color: var(--color-lightgold);
}
.overlay #Search {
    text-align: center;
    margin: 2rem 0;
}
.overlay #Search .formbody {
    height: auto;
    display: inline-block;
    background-color: var(--color-lightgreyrey);
    padding: 0;
    border: 1px solid var(--color-logo-orange2);
}
.overlay #Search .formbody .text:focus {
    border: 1px solid var(--color-logo-orange2);
    color:#000;
}
.ce_form .submit, 
.ce_form .text, 
.mod_personalData .submit, 
.mod_personalData .text,
.mod_lostPassword .submit, 
.mod_lostPassword .text,
.mod_lostPassword .submit,
.mod_lostPassword .text,
.mod_lostPassword .captcha {
    margin:0;
    padding: 0 8px;
    border:none;
    height: 50px;
    line-height: 100%;
    background-color: #fff;
    vertical-align: middle;
    overflow: hidden;
}
.overlay #Search .text {
    font-size: 20px;
    color: var(--color-text);
}
.overlay #Search .submit {
    font-size: 24px;
    font-family: Iconfont;
    color: var(--color-logo-orange2);
    margin-left:-6px;
    border-left: 1px solid var(--color-logo-orange2);
    color: #fff;
}
.mod_login .widget-text, .mod_login .widget-password {
    display: inline-block;
    margin-right: 4rem;
}
.mod_login .widget-text .text, .mod_login .widget-password .text {
    border: 1px solid var(--color-logo-orange2);
    margin: 1px;
    margin-bottom: 1rem;
    padding: 0 8px;
    line-height: 200%;
    font-size: 1.125rem;
}
.mod_login .widget.widget-submit, 
#anfrage .ce_form .widget-submit,
.mod_personalData .widget-submit
.mod_lostPassword .widget-submit {
    display: block;
}
.mod_login .widget-submit button, 
.ce_form .widget-submit button,
.mod_personalData .widget-submit button,
.mod_lostPassword .widget-submit button {
    background-color: var(--color-logo-orange2);
    color: #FFF;
    font:21px/200% RobotoBlack;
    border:none;
    padding: 0 1rem;
}

#anfrage .ce_form .widget-submit button {
    margin: 2rem 0 4rem 0;
}
.mod_search .submit {
    width:auto;
    display:inline-block;
    margin: 1rem 0 ;
    background-color:var(--color-logo-orange2);
    border:none;
    height:auto;
    font:21px/42px RobotoBlack!important;
    color:#FFF!important;
    padding: 0 16px!important;
    vertical-align: middle!important;
    text-decoration:none;
}
.mod_search .submit::after {
    padding: 0;
    height: 100%;
    padding-left: 1rem;
    border-left: 1px solid #fff;
    height: auto;
    display: inline-block;
    margin-left: 1rem;
    vertical-align: middle;
    color:#FFF;
    content:"\f054";
    font-family: Iconfont;
    line-height: 220%!important;
}
.mod_search .text {
    border: 1px solid var(--color-logo-orange2);
    margin: 1rem 0;
    display: inline;
    padding: 0.25rem 0.5rem;
    font-size: 20px;
    width: 100%;
    max-width: 640px;
}
/* Suchmaschine */
.mod_search h2 {
    margin:1rem 0;
}
.mod_search .search_result {
    border-top: 1px solid var(--color-logo-orange2);
    margin-top: 2rem;
}
.mod_search .search_result h3, .mod_search .search_result p {
    margin-left:2rem;
    margin-right:2rem;
}
.mod_search h3 .relevance {
    font-size:70%;
    margin-left: 2rem;
    color: var(--color-logo-text);
}
.mod_search .filesize {
    display:none;
}
.mod_search .url::before {
    content:"URL:";
}
.mod_search .context::before {
    content:"Context:";
}
.mod_search .context::before, 
.mod_search .url::before {
    margin-right: 1rem;
    font:1.125rem/100% Open Sans;
    font-weight: 700;
}
.mod_search  mark.highlight {
    background-color: var(--color-logo-orange2);
    color: #FFF;

}
/* Formular Anfrage */
.ce_form #anfrage .widget, 
.mod_personalData .widget,
.mod_lostPassword .widget {
    display: block!important;
    margin-bottom: 2rem;
}
.ce_form #anfrage .widget-select, 
.mod_personalData .widget-select,
.mod_lostPassword .widget-select {
    display: inline-block!important;
    margin-bottom: 2rem;
}
.ce_form #anfrage label, 
.ce_form #anfrage legend, 
.mod_personalData label, 
.mod_personalData legend,
.mod_lostPassword label,
.mod_lostPassword legend {
    display: block;
    font: 1.25rem/150% RobotoBlack;
    color: var(--color-text);
}
.ce_form #anfrage label, 
.ce_form #anfrage fieldset legend,
.mod_personalData label,
.mod_personalData fieldset legend,
.mod_lostPassword label,
.mod_lostPassword fieldset legend {
    margin-bottom: 0.5rem;
}
.ce_form #anfrage fieldset label, 
.mod_personalData fieldset label,
.mod_lostPassword fieldset label {
    font: 1.25rem/150% Open Sans;
    width:auto;
}
.ce_form #anfrage .widget-radio span input,
.ce_form #anfrage .widget-radio span label,
.ce_form #anfrage .widget-checkbox span input,
.ce_form #anfrage .widget-checkbox span label {
    display:inline;
}
.ce_form #anfrage .submit:hover, 
.mod_personalData .submit:hover {
    cursor: pointer;
}
.ce_form #anfrage .widget-text .text:focus, 
.mod_personalData .widget-text .text:focus,
.mod_lostPassword .widget-text .text:focus,
.mod_lostPassword .widget-captcha .captcha:focus {
    background-color: var(--color-lightgrey);
}
.ce_form #anfrage .text, 
.ce_form #anfrage .textarea,
.ce_form #anfrage .select .select, 
.mod_personalData .text,
.mod_personalData .textarea, 
.mod_personalData .select,
.mod_lostPassword .text,
.mod_lostPassword .textarea,
.mod_lostPassword .select,
.mod_lostPassword .captcha   {
    border:1px solid var(--color-logo-orange2);
    width:calc(98% - 1rem);
}
.ce_form #anfrage .select {
    width:calc(98% - 1rem);
}
.ce_form #anfrage select,
.mod_personalData select {
    width: auto;
    min-width:25%;
}
.ce_form #anfrage .explanation {
    width:98%;
}
.ce_form #anfrage fieldset div {
    margin-left:35px;
}
.ce_form #anfrage fieldset .widget-explanation{
    margin-bottom: 0;
}
.ce_form #anfrage .widget-checkbox span {
        display: inline-block;
        margin-bottom: 0;
        /*padding: 0.5rem 1rem;*/
        line-height: 2rem;
}
        /* Change Checkbox CSS */
        div + p {
            color: var(--color-logo-orange2);
        }
        /*
        Hide radio button (the round disc)
        we will use just the label to create pushbutton effect
        */
        .ce_form #anfrage span input[type=radio],.ce_form #anfrage span input[type=checkbox] {
            display:none!important; 
            margin:10px;
        }
        /*
        Change the look'n'feel of labels (which are adjacent to radiobuttons).
        Add some margin, padding to label
        */
        .ce_form #anfrage span input[type=radio] + label, .ce_form #anfrage span input[type=checkbox] + label {
            display:inline-block;
            /*margin:-2px;
            padding: 4px 12px;*/
        }
        /*
        Change background color for label next to checked radio button
        to make it look like highlighted button
        */
        .ce_form #anfrage span label::before, .ce_form #anfrage span label::before {
            content:"\f096";
            font: 1.25rem/1.25rem Iconfont;
            color: var(--color-text);
            margin:0 1rem 0 0;
            
        }
        /*
        .ce_form #anfrage span input[type=radio]:checked + label, .ce_form #anfrage span input[type=checkbox]:checked + label { 
        }
        */
        .ce_form #anfrage span input[type=radio]:checked + label::before, .ce_form #anfrage span input[type=checkbox]:checked + label::before {
            content:"\f046"; 
            font: 1.25rem/1.25rem Iconfont;
            color: var(--color-logo-orange2);
            margin-right: 0.8rem;
        }
.ce_form #anfrage .widget-checkbox.w25p span {
    width: calc(33% - 1rem);
    margin:0 0 1rem 0;
}
@media all and (max-width: 1280px) {
    .ce_form #anfrage .widget-checkbox.w25p span {
        width: calc(50% - 1rem);
    }
}
@media all and (max-width: 768px) {
    .ce_form #anfrage .widget-checkbox.w25p span {
        width: calc(100% - 1rem);
    }
}

/* Pages */
.pageID8 h2 {
    display:none;
}
.pageID8 .erecht img {
    margin-top: 3rem;
}
.p40X .mod_newslist {
    margin-left: 0;
}
.p40X .layout_simple {
    margin-left: 60px;
    margin-bottom: 0.25rem;
}
.p40X .blog-simple-title a {
    color:var(--color-text);
}
.p40X .blog-simple-title::before {
    content:"\f068";
    width:16px;
    margin-right:28px;
    margin-left: -40px;
    font-size: 1rem;
    font-family: Iconfont;
    color: var(--color-logo-orange2);
}
.sitemap .layout_simple {
    line-height: 125%;
    margin-bottom: 0.75rem;
    display: block;
}
.sitemap .layout_simple a {
    color: var(--color-text);
}
.sitemap .layout_simple time {
    font-size: 75%;
}

/* Akkordion */
.ce_accordion  {
    margin-top: 0;  
}
.ce_accordion h3, .ce_accordion h2 {
    color: var(--color-logo-orange2);
    font-size:1.5rem;
    margin: 1rem 0;
}
.ce_accordion h2 {
    font-size:2rem;
}
.ce_accordion .toggler:hover {
    cursor: pointer;
    text-decoration: underline;
    color: var(--color-logo-orange2);
}
.ce_accordion h3::after, .ce_accordion h2::after  {
    content: "\f103";
    font-family: Iconfont;
    float:right;
    margin: 0;
    font-size: 1.75rem;
    transition: 0.5s;
}
.ce_accordion .ui-accordion-header-active h3::after, .ce_accordion .ui-accordion-header-active h2::after  {
    /*content: "\f103";
    font-family: Iconfont;
    float:right;
    margin: 0;
    font-size: 1.75rem;*/
    transform: rotate(180deg);
}
.ce_accordion .accordion {
    margin:1rem 0 0 2.25rem;
    font-size: 1.15rem;
}
.ce_accordion .accordion p, .ce_accordionStart .accordion p a, .ce_accordion .accordion li {
    font-size: 1.15rem;
}
.ce_accordion .ui-accordion-content h3 {
    font-size:1.75rem;
    color: var(--color-logo-red2);
}


/* Galerie */
.ce_gallery > ul li.col_first {
    clear: none;
  } 
#main .ce_gallery ul li {
    list-style-type: none;
    margin:10px;
}

#main .ce_gallery ul li::before {
    content: "";
    margin:0;
}
#citations .ce_gallery li {
    width: 14%;
    text-align: center;
    margin: 2rem 1%!important;
}
#citations .ce_gallery img {
    width:100%;
    max-width: 100px;
    height: auto;
}
#citations .ce_gallery figcaption, 
#projekte .ce_gallery figcaption,
.blog-reader .ce_gallery figcaption {
    font-size: 0.75rem;
    text-align: center;
    font-family: RobotoBlack;
    line-height: 115%;
}
.ce_gallery li {
    width: 31%;
    text-align: center;
    margin: 1rem 1%!important
}
.ce_gallery img {
    width:100%;
    height: auto;
}
@media screen and (max-width: 992px) {
    .ce_gallery li {
        width: 48%;
        text-align: center;
    }
    .ce_gallery figcaption {
        display: none;
    }
}
@media screen and (max-width: 768px) {
    #citations .ce_gallery img  {
        max-width: 75px;
    }
}
@media screen and (max-width: 576px) {
    .ce_gallery li {
        width: 98%;
    }
    #citations .ce_gallery li {
        width: 28%;
    }
}

p.projektlink {
    font-style: 90%;
    font-family: RobotoBlack;
}
p.projektlink a {
    color: var(--color-logo-orange2);
    margin: 0 0.5rem 0 0;
    font-family: RobotoBlack;
}
/*
.erecht .float_right img {
    margin: 0 0 1rem 1rem;
}
.erecht .float_left img {
    margin: 0 1rem 1rem 0;
}
*/
/* Tabellen */
table thead {
    border-bottom: 2px solid var(--color-logo-orange2);
}
table th {
    padding: 0 2rem 0.125rem 0.5rem;
    white-space: nowrap;
}
table td {
    padding: 0.125rem 1rem 0.125rem 0.5rem;
    width:auto;
}
table tbody tr {
    border-bottom: 1px solid var(--color-logo-orange2);
}
.tabcenter table td {
    text-align: center;
}
.kunden table caption {
    font-weight: 400;
    margin: 0 0 1rem 0;
}
.angebot td {
    text-align: center;
}
/* Downloads */
#main .ce_downloads ul li a:hover {
    color: var(--color-logo-orange2);
    text-decoration: none;
    transition: 0.5s;
}
#main .ce_downloads ul li::before {
    content:"\f019";
}
.ce_downloads .size {
    font-size: 1rem;
}
/* Projekte */
.mod_newsreader .projekte figure {
    margin: 0 2rem 2rem 0;
}
.mod_newsreader .projekte figcaption {
    display: none;
}
/* Glossar */
#main .mod_glossary {
    margin-top: 4rem;
}
#main .mod_glossary .grouplist ul li::before, #main .mod_glossary .glossary ul li::before {
    content:"";
    margin:0;
}
#main .mod_glossary .grouplist ul li {
    display: inline;
    margin: 2px;
    text-align: center;
    padding: 0;
    font: 2.25rem/200% RobotoBlack;
    border: 1px solid var(--color-logo-orange2);
}
#main .mod_glossary .grouplist ul li a {
    margin:0;
    color: var(--color-logo-orange2);
    text-decoration: none;
    padding: 0.25rem 0.5rem;
    font: 2.25rem/200% RobotoBlack;
}
#main .mod_glossary .grouplist ul li:hover {
    background-color: var(--color-logo-orange2);
}
#main .mod_glossary .grouplist ul li:hover a {
    color: #FFF;
}
#main .mod_glossary .grouplist {
    margin-bottom: 0;
}
.mod_glossary .grouplist ul {}
.glossary .group ul {
    margin-top:-2.5rem;
}
.glossary .group .letter, .glossary .group ul {}

.glossary .group {
    padding-top: 80px;
    /*border-bottom: 1px solid var(--color-logo-orange2);*/
}
.glossary .group .letter {
    color: var(--color-logo-orange2);
    margin: 0 2rem 0 0;
    font: 2.5rem/125% RobotoBlack;
}
#main .glossary .group li {
    margin-bottom: 1rem;
    margin-left: calc(80px);
}
.glossar-reader h1 {
    margin-top:2rem;
}
.glossar-reader .glossar-head {
    margin-top: 200px;
    margin-bottom: -2rem;
}
.glossar-reader .glossar-head p, .glossar-reader .glossar-head p a {
    font-weight: bold;
    text-decoration: none;
}
.glossar-reader .glossar-head p a {
    margin-right: 1rem;
}
/* FAQ */
.faq-item {
    margin: 1rem 1%;
    width: 31%;
    float:left;
    /*border: 1px solid var(--color-logo-orange2); */
}
.faq-item h2, .faq-item h2 a {
    font-size:1.5rem!important;
    margin: 0!important;
    letter-spacing: -1px;
    text-align: left;
}
.faq-item h2 a span.faq-h2-sm {
    font:1rem/150% Open Sans!important;
}
/* max width 768 = grid md */
@media all and (max-width: 768px) {
    .faq-item {
        width: 48%;
    }
}
/* max width 550 = grid sm */
@media all and (max-width: 550px) {
    .faq-item {
        width: 98%;
        margin: 0.5rem 1%;
    } 
}
/* Lösugnen */
#solutions figcaption, #partner figcaption {
    display:none
}
#solutions h3, #solutions .image_container {
    text-align: center;
}

/* Footer */
footer {
    width:100%;
    background-color: var(--color-lightgold);
    /*transform: rotate(1deg);*/
}
footer .inside {
    padding: 4rem 1%;
    /*transform: rotate(-1deg);*/
}
footer, footer a, footer li, footer li a {
    font:1rem/150% Open Sans;
    color: var(--color-text);
    text-decoration: none;
    font-weight: 400;
}
footer a:hover {
    text-decoration: underline;
    text-decoration-skip-ink: auto;
}
footer .ce_image {
    margin-bottom: 5px;
}
footer .cookie_link {
    list-style-type: none;
    margin-top:-3rem;
}
footer .cookie_link img {
    float:left;
    height: 20px;
    width: auto;
    margin: 5px;
}
footer .mod_customnav.navinline li {
    margin: 0 0.5rem 0 0.5rem!important;
    float:right;
}

footer .setcookie li {
    float:right;
}
@media screen and (max-width: 940px) {
    footer ul {
        display:block;
        float:none;
        margin: 0 0 2rem 0;
    }
    footer .legal  {
        margin-top:-2rem;
    }
    footer .setcookie li,
    footer .mod_customnav.navinline li {
        float:left;
        margin-left:0!important;
        margin-right:2rem!important;
        text-align: left;
    }
}
@media screen and (max-width: 550px) {
    footer .erechtbadge  {
        float:left;
        margin-bottom: 1rem;
    }
    footer, footer a, footer li, footer li a {
        font-weight: 400;
    }
}
/* Profiles */
#main ul.webprofile {
    margin: 4rem 0 0 0;
    text-align: center;
}
#main ul.webprofile li{
    margin:0 2rem;
    display: inline;
}
#main ul.webprofile li::before{
    content:"";
}
.webprofile i {
    font-size: 4rem;
}
.webprofile a {
    color: var(--color-logo-orange2);
    text-decoration: none;
    padding: 0.5rem 1rem
}
.mod_lostPassword .confirm.message {
    font-family: RobotoBlack;
    line-height: 125%;
    color:var(--color-logo-text);
}
/* News Kategories / Pagination*/

#main .mod_newscategories ul li::before, #main .pagination ul li::before {
    content:none;
}
#main .mod_newscategories ul li, #main .mod_newscategories ul li a, #main .pagination ul li, #main .pagination ul li a, #main .pagination p {
    font: 1.15rem/125% RobotoBlack;
}
#main .pagination p {
    font-size: 1.5rem;
    text-align: center;
}
#main .pagination ul {
    text-align: center;
}
#main .mod_newscategories ul li, #main .pagination ul li {
    display: inline-block;
    margin: 0.5rem 0.25rem 0 0;
    background-color: var(--color-lightgrey);
    color: var(--color-grey);
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--color-logo-orange2);
}
#main .mod_newscategories ul li a, #main .pagination ul li a {
    color: var(--color-grey);
    text-decoration: none;
}
#main .mod_newscategories ul li.active, #main .pagination ul li.active {
    background-color: var(--color-logo-orange2);
    color: #fff;
}
.blog-home .mod_newslist h3, .blog-home .mod_newslist h3 a {
    margin:0.5rem 0!important;
}
.blog-home .mod_newslist .subheadline p {
    font-size: 1rem;
}
.blog-reader .mod_newsreader {
    margin-top: 200px;
} 
.blog-reader .mod_newsreader h1, .blog-reader .mod_newsreader h1 a {
    margin: 0 0 2rem 0;
}
.blog-reader .mod_newsreader .header p, .blog-reader .mod_newsreader .header p a{
    font-size: 1.25rem;
    font-weight:bold;
}
.blog-reader .mod_newsreader .header p.info {
    font-size:0.9rem;
    font-weight: normal;
    text-align: right;
    font-style: italic;
    margin: 1rem 0;
}
.mod_newsreader .teaser-image figcaption {
    display:none;
}
.mod_newsreader .teaser-image img {
    margin-bottom: 2rem;
}
/*Pagination
#main .pagination ul li {
    display: inline-block;
    margin:0;
    border: 1px solid var(--color-logo-orange2);
    padding: 0.25rem 0.5rem;
    font: 1.15rem/125% RobotoBlack;
}
#main .pagination ul li a {
    text-decoration: none;
    font: 1.15rem/125% RobotoBlack;
}
*/
/* Iconstyle*/
.iconstyle img {
    width:100%;
    max-width:200px;
    height:auto;
    opacity: 0.75;
    /*
    filter: 
    grayscale(1)
    hue-rotate(40deg)
    brightness(1)    
    contrast(1);
    */    
}
.iconstyle figcaption {
    display:none;
}
.iconstyle .image_container {
    float:left!important;
    margin: 0.5rem 2rem 0.5rem 0;
}
.mod_newsreader .verzeichnis .blog-inhalt{
    padding:10px;
    border-left:4px solid var(--color-logo-orange2);
}
/*
.mod_newsreader p.inhaltarticle {
    margin:0 0 1rem 0;
    font: 1.75rem/100% RobotoBlack;
}
*/
.mod_newsreader .verzeichnis ol li a {
    font-weight: bold;
}
.mod_newsreader .ce_text .info {
    float:right;
    font-size: 1rem;
    font-style: italic;
    margin:2rem 0;
}
.quote p {
    font-size:2rem;
    font-style: italic;
    text-align: center;
    color: var(--color-logo-text);
    margin:4rem 0 2rem 0;
}
.quote p::before, .quote p::after {
    content: "\f10d";
    font-family: Iconfont;
    font-size:1.5rem;
    color: var(--color-logo-text);
}
.quote p::before {
    content: "\f10d";
    margin: 2rem 1rem 0 0;
}
.quote p::after {
    content: "\f10e";
    margin: 2rem 0 0 1rem;
}
/* Share Buttons */

#main .share_buttons ul li::before {
    content: none;
}
#main .share_buttons ul li .link_text {
    display: none;
}
#main .share_buttons ul {
    margin-left:1rem;
}
#main .share_buttons ul li {
    width:38px;
    height: 38px;
    margin:0 0.5rem 0 0;
    display: inline-block;
    text-align: left;
}
#main .share_buttons ul li a {
    text-decoration: none;
    color:var(--color-logo-orange2);
    padding:4px;
    font-size: 32px;
    line-height: 38px;
}
#main aside .aside-title {
    margin:0 0 0.5rem 0;
    font: 1.5rem/100% RobotoBlack;
}
/* ANIMATED */
/* .animate-in {
    opacity: 0;
}
.animate-in.animated {
    opacity: 1;
    -webkit-transition: all 600ms ease-out 100ms;
    -moz-transition: all 600ms ease-out 100ms;
    transition: all 600ms ease-out 100ms
}
.animate-fade {
    opacity: 0;
    visibility: hidden;
}
.animate-fade.animated {
    opacity: 1;
    visibility: visible;
}
============================
*/

@media all and (min-width: 1100px) {
    .animate-down {
        opacity: 0;
        visibility: hidden;
        -webkit-transform: translate(0, -100px);
        -moz-transform: translate(0, -100px);
        transform: translate(0, -100px)
    }
    .animate-down.animated {
        opacity: 1;
        visibility: visible;
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        transform: translate(0, 0);
        -webkit-transition: all 600ms ease-out 100ms;
        -moz-transition: all 600ms ease-out 100ms;
        transition: all 600ms ease-out 100ms
    }
    .animate-up {
        opacity: 0;
        visibility: hidden;
        -webkit-transform: translate(0, 100px);
        -moz-transform: translate(0, 100px);
        transform: translate(0, 100px)
    }
    .animate-up.animated {
        opacity: 1;
        visibility: visible;
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        transform: translate(0, 0);
        -webkit-transition: -webkit-transform 400ms ease-out 100ms, opacity 400ms ease-out 100ms;
        -moz-transition: -moz-transform 400ms ease-out 100ms, opacity 400ms ease-out 100ms;
        transition: transform 400ms ease-out 100ms, opacity 400ms ease-out 100ms
    }
    .animate-right {
        opacity: 0;
        visibility: hidden;
        transform: translate(-100px, 0)
    }
    .animate-right.animated {
        opacity: 1;
        visibility: visible;
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        transform: translate(0, 0);
        -webkit-transition: -webkit-transform 400ms ease-out 100ms, opacity 400ms ease-out 100ms;
        -moz-transition: -moz-transform 400ms ease-out 100ms, opacity 400ms ease-out 100ms;
        transition: transform 400ms ease-out 100ms, opacity 400ms ease-out 100ms
    }
    .animate-left {
        opacity: 0;
        visibility: hidden;
        transform: translate(100px, 0)
    }
    .animate-left.animated {
        opacity: 1;
        visibility: visible;
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        transform: translate(0, 0);
        -webkit-transition: -webkit-transform 400ms ease-out 100ms, opacity 400ms ease-out 100ms;
        -moz-transition: -moz-transform 400ms ease-out 100ms, opacity 400ms ease-out 100ms;
        transition: transform 400ms ease-out 100ms, opacity 400ms ease-out 100ms
    }
}
:root {
    --color-logo-orange1: #F48A1E;
    --color-logo-orange2: #ED3D2F;
    --color-logo-red1: #C31D50;
    --color-logo-red2: #670124;
    --color-logo-text: #1E0D0D;
    --color-text: #222222;
    --color-lightgold: #F5F5EB;
    --color-grey: #596074;
    --color-lightgrey: #F0F0F0;
}
/* Navigation */
.mod_navigation.navinline li, .mod_customnav.navinline li, .navinline .mod_customnav li {
    display: inline;
    margin-right: 1rem;
}
.mod_breadcrumb {
    margin-top:-40px!important;
    margin:0;
}
.mod_breadcrumb ul {
    margin:0;
}
.mod_breadcrumb .first {
    display: none;
}
.mod_breadcrumb li {
    vertical-align: baseline;
    list-style: none;
    display: inline;
    font-family: Open Sans;
}
.mod_breadcrumb li, .mod_breadcrumb li a{
    font-size: 16px!important;
    line-height: 16px!important;
}
.mod_breadcrumb li:after {
    font-family: Iconfont;
    content:"\f105";
    margin: 0 0.5rem;
}
#header .mainnav {
    width: auto;
    display: block;
    margin: 20px 0;
    text-align: right;
}
#header .sticky .mainnav {
    margin: 11px 0;
}
#header .mainnav ul {
    margin: 0.25rem 5%;
}
#header .mainnav li {
    margin: 0 0.25rem!important;
}
#header .mainnav li a {
    padding: 0.25rem;
}
#header .mainnav li, #header .mainnav li a {
    color: var(--color-text);
    font: 1.5rem/100% Open Sans;
    font-weight: 700;
    text-decoration: none;
    letter-spacing: -1px;
    text-decoration: none;
}
#header .mainnav li:hover {
    border-bottom:2px solid var(--color-text);
    text-decoration: none;
}
#header .mainnav .active {
    color: var(--color-logo-orange2);
} 
#header .mainnav .active:hover {
    border-bottom:2px solid transparent;
}
#footer .mod_customnav {}

@media all and (max-width: 940px) {

}

@media all and (max-width: 768px) {
    .mod_breadcrumb {
        display:none;
    }
}
/* Back To Top
REQUIRES scroll-to-top.js im Seitenlayout */
.back_to_top {
    text-decoration:none!important;
    bottom:20px;
    right:20px;
    position:fixed; 
    width: 40px;
    height: auto; 
    background-color: var(--color-logo-orange2);
    text-align: center;
    vertical-align: middle;
    padding: 0.25rem;
    padding-top:0;
    transition: 0.2s ease;
}
.back_to_top .icon-chevron-up {
    padding:0;
    font-size:2.5rem;
    text-decoration:none;
    color:var(--color-lightgold);
    /*border: 1px solid var(--color-logo-text);*/
}
.back_to_top:hover {
    bottom:40px;
}
/* === MOBILE SWITCH === */
.phone .computer,
.computer .phone,
.tablet .computer {
    display:none!important;
}
.phone .phone,
.computer .comuter,
.tablet .tablet {
    display:inline-block!important;
}
.mod_article .article-inside {
    margin: 4rem auto;
    margin-top: 0;
    width:98%;
    max-width: 1280px;
}
strong {
    font-weight:600;
}
/* Tooltip }*/
sup, sup a {
    
    text-decoration: none;
}
sup, sup a { 
    font-size: 0.875rem;
    line-height: 125%;    
    margin: 0 0 0 0.15rem;
}
sup a {
    margin: 0;
}
sup a:hover {
    text-decoration: underline;
}
.tooltip {
    position: relative;
    color: var(--color-text);
	text-decoration: underline;
    cursor: help;
}
.tooltip .tooltiptext {
    opacity: 0;
    min-width: 200px;
    height: auto;
    color: var(--color-lightgrey);
    padding: 5px;
    transition: 0.2s ease;
    transition-delay: 0.2s;
    font: 1rem/125% Open Sans;
    text-align: center;
    padding: 5px 5px 20px 15px;
    background-image: url(https://dev.webstudio-kelkheim.de/files/wsk/theme/images/tooltip.png);
    background-position: left bottom;
    background-repeat: no-repeat;
  
    /* Position the tooltip */
	position: absolute;
    z-index: 100;
    bottom: 0.75rem;
    left: 0.5rem;
}
.tooltip:hover .tooltiptext {
    opacity: 1;
}
/* Gloabl Classes */
.error {
    font-weight:bold;
}
h2.h2-no-top-margin, h2-no-top-margin h2 {
    margin-top: 0!important;
}
.ce_text h2.h2-no-top-margin {
    margin-top: -1rem!important;
}
.first_element {
    margin-top: 0!important;
}
.zitat {
    font-size:2rem; 
    font-weight: bold;
}
.zitat::before {
    content:"\f10d";
    font-family: Iconfont;
}
.zitat::after {
    content:"\f10e";
    font-family: Iconfont;
}
#quellen h2 {
    font-size: 1.5rem;
    margin-bottom: 1rem;
}
#quellen p, #quellen a  {
    font-size: 0.9rem;
    margin-bottom:0;
    line-height: 150%;
}
.fazit p {
    font-size: 1.5rem;
    text-align: center
    ;
}
.asterisk p {
    font-size: 0.9rem!important;
}
.asterisk p::before {
    content:"*";
    font-size: 20px;
    font-weight: 700;
    display:inline;
    margin: 0 10px 10px 0;
}
.mtop4rem {
    margin-top:4rem;
}
p.back {
    width:auto;
    display:inline-block;
    margin: 4rem 0 ;
    background-color:var(--color-logo-orange2);
    border:none;
    height:36px;
}
p.back a {
    font:21px/36px RobotoBlack!important;
    color:#FFF!important;
    padding: 0 16px!important;
    vertical-align: middle!important;
    text-decoration:none;
}
p.back a::before {
    padding: 0;
    padding-right: 16px;
    border-right: 1px solid #fff;
    height: auto;
    line-height: 40px;
    display: inline-block;
    margin-right: 16px;
    vertical-align: middle;
    color:#FFF;
    content:"\f053";
    font-family: Iconfont;
}
.important {
    background-color: var(--color-logo-red1);
    margin-bottom: 4rem 0;
}
.important p {
    color: var(--color-text);
    padding:1rem 1rem 0 0;
    font-size: 1rem;
    margin:0;
    background-color: var(--color-lightgrey);
}
.important p.important_first {
    font-weight: 700;
    border-left: 1px solid #fff;
    margin-left: 5.5rem;
    padding-left: 1rem;
}
.important p.important_second {
    border-left: 1px solid #fff;
    margin-left: 5.5rem;
    padding-left: 1rem;
    font-size: 0.9rem;
    padding-bottom: 1rem;
}
.important p.important_first::before {
    content:"\f06a";
    font-family: Iconfont;
    font-size: 4rem;
    color:#fff;
    float:left;
    margin: 0 0 0 -5.5rem;
    line-height: 100%;
    font-weight: normal;
}
.important p strong {
    margin-bottom:0.5rem;
}
p.check  {
    margin-left:1rem;
    font-weight: 700;
}
p.check::before {
    content:"\f00c";
    font-family: Iconfont;
    font-size: 2rem;
    color: var(--color-logo-orange2);
    margin-right:1rem;
    vertical-align: text-bottom;
}
#main .check ul li::before, #main .cross li::before, #main .heart li::before {
    font-family: Iconfont;
    font-size: 1.25rem;
    color: var(--color-logo-orange2);
    margin-right:1rem;
    vertical-align: text-bottom;
}
#main .check ul li::before {
    content: "\f00c";
}
#main .cross li::before {
    content: "\f00d";
    color: var(--color-text);
}
#main .heart ul li::before {
    content: "\f004";
}
/* max width 1100 = grid xl */
@media all and (max-width: 1100px) {
   
}
/* max width 940 = grid lg */
@media all and (max-width: 940px) {
    .header_top .openmenu {
        display:none;
    }
}
/* max width 768 = grid md */
@media all and (max-width: 768px) {
}
/* max width 550 = grid sm */
@media all and (max-width: 550px) {
   
}
