.hl, .component-footer-addendum .text-area h2 {
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 120%
}

@media only screen and (min-width: 40.063em) {
  .hl, .component-footer-addendum .text-area h2 {
    font-size: 3.125rem
  }
}

@media only screen and (min-width: 62.8125em) {
  .hl, .component-footer-addendum .text-area h2 {
    font-size: 3.75rem
  }
}

.text-group > .hl, .component-footer-addendum .text-area .text-group > h2 {
  margin-bottom: .9375rem
}

.component-footer-theme-light .component-footer .text {
  color: #fff
}

@media only screen and (max-width: 40em) {
  .component-footer-theme-light .component-header .text-group {
    color: #fff
  }
}

.component-footer-theme-dark .component-footer .text, .component-footer-theme-dark .component-footer .item-list-label {
  color: #434343
}

@media only screen and (max-width: 40em) {
  .component-footer-theme-dark .component-header .text-group {
    color: #434343
  }
}

.component-stage .component-footer, .component-stage .component-header {
  z-index: 10
}

.component-stage .component-footer, .component-stage .component-picture {
  background: currentColor
}

@media only screen and (min-width: 40.063em) {
  .component-stage .component-footer, .component-stage .component-picture {
    background: transparent
  }
}

@media only screen and (min-width: 40.063em) {
  .component-stage .component-picture, .component-stage .component-footer {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0
  }
}

.component-stage .component-footer {
  padding: 1.875rem 0
}

@media only screen and (min-width: 40.063em) {
  .component-stage .component-footer {
    z-index: 10;
    background: transparent;
    text-align: center;
    padding-bottom: 3.75rem;
    overflow: hidden
  }
}

@media only screen and (min-width: 62.8125em) {
  .component-stage .component-footer {
    padding-bottom: 1.875rem;
    height: 30%;
    min-height: 11.25rem;
    text-align: left
  }
}

.component-stage .item-list-label {
  -webkit-transition: color .3s;
  -o-transition: color .3s;
  transition: color .3s
}

.component-stage.component-footer-theme-dark .item-list:hover .item-list-label {
  color: #fff
}

.component-stage.component-footer-theme-light .item-list:hover .item-list-label {
  color: #434343
}

@media only screen and (min-width: 40.063em) {
  .component-stage-detail .component-footer {
    min-height: 16.25rem;
    text-align: left;
    height: 30%;
    padding-bottom: 1.875rem
  }
}

.component-meta .component-footer {
  padding: 2.5rem 0 1.25rem;
  color: #646363;
  font-size: 1.125rem
}

.component-meta .component-footer p {
  direction: initial
}

.component-meta .component-footer .form-field {
  -webkit-box-shadow: 0 0 .25rem 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 .25rem 0 rgba(0, 0, 0, 0.2);
  color: #858585
}

.component-meta .component-footer .item-half {
  -webkit-box-shadow: none;
  box-shadow: none
}

@media only screen and (min-width: 40.063em) {
  .component-meta .component-footer {
    min-height: 284.16px;
    min-height: 37vh
  }
}

.component-split .component-header .hl, .component-split .component-header .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-split .component-header h2 {
  color: #434343;
  word-wrap: break-word
}

@media only screen and (min-width: 40.063em) {
  .component-split .component-header .hl, .component-split .component-header .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-split .component-header h2 {
    padding-left: 1.25rem
  }
}

.component-split.component-split-inverted .component-header .hl, .component-split.component-split-inverted .component-header .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-split.component-split-inverted .component-header h2 {
  font-size: 2.5rem;
  color: #fff
}

@media only screen and (min-width: 40.063em) and (max-width: 62.75em) {
  .component-split.component-split-inverted .component-header .hl, .component-split.component-split-inverted .component-header .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-split.component-split-inverted .component-header h2 {
    font-size: 2rem
  }
}

.component-knowledge .hl, .component-knowledge .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-knowledge h2 {
  font-size: 3.75rem
}

@media only screen and (min-width: 40.063em) {
  .component-knowledge .hl, .component-knowledge .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-knowledge h2 {
    font-size: 5rem
  }
}

@media only screen and (min-width: 62.8125em) {
  .component-knowledge .hl, .component-knowledge .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-knowledge h2 {
    font-size: 6.25rem
  }
}

@media only screen and (min-width: 62.8125em) and (max-width: 87.5em) {
  .component-form .hl, .component-form .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-form h2 {
    font-size: 3rem
  }
}

.component-cover.component-cover-autoplay .component-content .hl, .component-cover.component-cover-autoplay .component-content .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-cover.component-cover-autoplay .component-content h2 {
  font-size: 2.3rem
}

@media only screen and (min-width: 40.063em) {
  .component-cover.component-cover-autoplay .component-content .hl, .component-cover.component-cover-autoplay .component-content .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-cover.component-cover-autoplay .component-content h2 {
    font-size: 3.0rem
  }
}

.component-story .hl, .component-story .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-story h2 {
  font-size: 2.8rem;
  margin-bottom: 1.25rem
}

@media only screen and (min-width: 62.8125em) {
  .component-story .hl, .component-story .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-story h2 {
    font-size: 2.3rem
  }
}

@media only screen and (min-width: 87.5em) {
  .component-story .hl, .component-story .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-story h2 {
    font-size: 3.25rem
  }
}

.area-blog .text.hl, .area-blog .component-footer-addendum .text-area h2.text, .component-footer-addendum .text-area .area-blog h2.text {
  color: #ababab
}

.lp-search-results .area-blog .text.hl, .lp-search-results .area-blog .component-footer-addendum .text-area h2.text, .component-footer-addendum .text-area .lp-search-results .area-blog h2.text {
  margin-bottom: 2rem
}

.area-blog .editmode-error > .text.hl, .area-blog .component-footer-addendum .text-area .editmode-error > h2.text, .component-footer-addendum .text-area .area-blog .editmode-error > h2.text {
  color: #434343
}

.area-blog > .icon-list.text-theme-light .text.hl, .area-blog > .icon-list.text-theme-light .component-footer-addendum .text-area h2.text, .component-footer-addendum .text-area .area-blog > .icon-list.text-theme-light h2.text {
  color: #fff
}

.area-blog > .icon-list.text-theme-dark .text.hl, .area-blog > .icon-list.text-theme-dark .component-footer-addendum .text-area h2.text, .component-footer-addendum .text-area .area-blog > .icon-list.text-theme-dark h2.text {
  color: #434343
}

.component-footer {
  position: relative;
  -webkit-overflow-scrolling: touch
}

.component-footer .component-controls {
  top: -1.875rem;
  bottom: auto
}

.component-footer-addendum {
  text-align: left
}

.component-footer-addendum .text-area h2 {
  margin-bottom: 1.875rem
}

.component-footer-addendum .text {
  color: #434343
}

.component-footer-addendum .text-area {
  font-size: .9375rem
}

.component-footer-addendum .text-area h3 {
  font-size: 1.3333em
}

.component-footer-addendum .component-text {
  padding-top: 2em;
  padding-bottom: 2em
}

@media only screen and (min-width: 40.063em) {
  .component-footer-addendum .component-text {
    padding-top: 4.5em;
    padding-bottom: 8em
  }
}

@media only screen and (min-width: 40.063em) {
  .component-footer-addendum .component-picture {
    width: 31.25%;
    position: absolute;
    left: 0;
    top: 0
  }
}

@media only screen and (max-width: 40em) {
  .component-footer-addendum .component-picture {
    display: none
  }
}

@media only screen and (min-width: 62.8125em) and (max-width: 87.5em) {
  .form-cover .hl, .form-cover .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .form-cover h2 {
    font-size: 3rem
  }
}

@media only screen and (max-width: 40em) {
  .layer-header .hl, .layer-header .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .layer-header h2 {
    font-size: 2rem
  }
}

.component-mini-teaser .component-content > .hl, .component-mini-teaser .component-footer-addendum .text-area .component-content > h2, .component-footer-addendum .text-area .component-mini-teaser .component-content > h2 {
  color: #000;
  max-width: 90%;
  margin: 0 auto;
  text-align: center;
  width: 100%
}

.mini-teasers-wrapper > .hl, .component-footer-addendum .text-area .mini-teasers-wrapper > h2 {
  text-align: center
}

.mini-teaser.text .hl, .mini-teaser.text .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .mini-teaser.text h2 {
  margin-bottom: .375rem;
  font-size: 10vw;
  line-height: 10vw;
  color: #fff
}

@media only screen and (min-width: 40.063em) {
  .mini-teaser.text .hl, .mini-teaser.text .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .mini-teaser.text h2 {
    margin-bottom: 1rem;
    font-size: 6vw;
    line-height: 6vw
  }

  .mini-teaser.text .text-copy {
    margin-bottom: 0;
    font-size: 3vw;
    line-height: 3vw
  }
}

@media only screen and (min-width: 62.8125em) {
  .mini-teaser.text .hl, .mini-teaser.text .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .mini-teaser.text h2 {
    font-size: 2.8vw;
    line-height: 2.8vw;
    margin-bottom: 1rem
  }

  .mini-teaser.text .text-copy {
    margin-bottom: 0;
    font-size: 1.5vw;
    line-height: 1.5vw
  }
}

@media only screen and (min-width: 100.8125em) {
  .mini-teaser.text .hl, .mini-teaser.text .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .mini-teaser.text h2 {
    font-size: 3.125rem;
    line-height: 1
  }

  .mini-teaser.text .text-copy {
    font-size: 1.6875rem;
    line-height: 1
  }
}

.teaser-size-secondary .hl, .teaser-size-secondary .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .teaser-size-secondary h2 {
  margin-bottom: .625rem;
  font-size: 2.5rem;
  line-height: 2.8125rem
}

@media only screen and (min-width: 40.063em) {
  .teaser-size-secondary .hl, .teaser-size-secondary .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .teaser-size-secondary h2 {
    margin-bottom: .375rem;
    font-size: 2.5rem;
    line-height: 2.5rem
  }
}

.blog-article .hl, .blog-article .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .blog-article h2 {
  text-transform: uppercase;
  font-size: 2.5rem;
  line-height: 2.8125rem;
  color: #434343
}

@media only screen and (min-width: 40.063em) {
  .blog-article .hl, .blog-article .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .blog-article h2 {
    font-size: 1.875rem;
    line-height: 2.125rem
  }
}

.blog-article .hl, .blog-article .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .blog-article h2, .blog-article p, .blog-article picture {
  display: block;
  margin-bottom: .9375rem
}

@media only screen and (min-width: 40.063em) {
  .blog-article .hl:last-child, .blog-article .component-footer-addendum .text-area h2:last-child, .component-footer-addendum .text-area .blog-article h2:last-child, .blog-article p:last-child, .blog-article picture:last-child {
    margin-bottom: 0
  }
}

.component-lp-homepage .carousel-item .component-content .row .column .text-group .hl, .component-lp-homepage .carousel-item .component-content .row .column .text-group .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-lp-homepage .carousel-item .component-content .row .column .text-group h2 {
  font-size: 3rem
}

@media only screen and (max-width: 40em) {
  .component-lp-homepage .carousel-item .component-content .row .column .text-group .hl, .component-lp-homepage .carousel-item .component-content .row .column .text-group .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-lp-homepage .carousel-item .component-content .row .column .text-group h2 {
    font-size: 1.875rem;
    margin-bottom: .437rem
  }

  .component-lp-homepage .carousel-item .component-content .row .column .text-group .text-major {
    font-size: 1.25rem;
    line-height: 1.475rem
  }
}

@media only screen and (min-width: 40.063em) and (max-width: 62.75em) {
  .component-lp-homepage .carousel-item .component-content .row .column .text-group .hl, .component-lp-homepage .carousel-item .component-content .row .column .text-group .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-lp-homepage .carousel-item .component-content .row .column .text-group h2 {
    font-size: 2.5rem;
    line-height: 100%
  }

  .component-lp-homepage .carousel-item .component-content .row .column .text-group .text-major {
    font-size: 1.5rem
  }
}

.component-lp-extended-product .component-teaser .component-footer {
  min-height: 0
}

.component-lp-extended-product .component-teaser .component-footer {
  min-height: 0
}

@media only screen and (max-width: 40em) {
  .component-lp-extended-product .component-teaser .component-footer {
    padding-top: .625rem;
    padding-bottom: 3.125rem;
    background-color: #fff
  }
}

@media only screen and (min-width: 40.063em) and (max-width: 62.75em) {
  .component-lp-extended-product .component-teaser .component-footer {
    overflow: visible;
    padding-bottom: 5rem
  }
}

@media only screen and (min-width: 62.8125em) {
  .component-lp-extended-product .component-teaser .component-footer {
    height: 32%
  }
}

@media only screen and (min-width: 62.8125em) {
  .component-lp-extended-product .component-teaser .component-footer .row {
    padding-top: 6rem
  }
}

.component-lp-extended-product .component-teaser .component-footer .row .component-stage-button {
  padding: 0
}

@media only screen and (min-width: 40.063em) and (max-width: 62.75em) {
  .component-lp-extended-product .component-teaser .component-footer .row .component-stage-button {
    top: 2.5rem;
    position: relative;
    width: 100%
  }
}

@media only screen and (max-width: 40em) {
  .component-lp-extended-product .component-teaser .component-footer .row .component-stage-button {
    top: 2.7rem
  }
}

@media only screen and (max-width: 40em) {
  .component-lp-extended-product .component-teaser .component-footer .row .component-stage-iconlist {
    padding: 0;
    position: relative
  }

  .component-lp-extended-product .component-teaser .component-footer .row .component-stage-iconlist a {
    display: block;
    width: 100%;
    position: relative
  }

  .component-lp-extended-product .component-teaser .component-footer .row .component-stage-iconlist .item-list {
    position: relative;
    width: 100%
  }
}

@media only screen and (min-width: 40.063em) and (max-width: 62.75em) {
  .component-lp-extended-product .component-teaser .component-footer .row .component-stage-iconlist {
    margin: 0;
    padding: 0;
    width: 100%;
    position: relative;
    left: 0
  }

  .component-lp-extended-product .component-teaser .component-footer .row .component-stage-iconlist a {
    display: block;
    width: 100%;
    position: relative
  }

  .component-lp-extended-product .component-teaser .component-footer .row .component-stage-iconlist .item-list {
    position: relative;
    width: 100%
  }
}

@media only screen and (min-width: 62.8125em) {
  .component-lp-extended-product .component-teaser .component-footer .row .component-stage-iconlist {
    display: block;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    margin-left: 1.25rem
  }
}

.component-lp-extended-product .component-teaser .component-footer .row .component-stage-iconlist .item-list {
  font-size: 1rem;
  min-height: 2.5rem;
  margin-top: .8125rem
}

.component-lp-extended-product .component-teaser .component-footer .row .component-stage-iconlist .item-list .item-size-small {
  width: 2.5rem;
  height: 2.5rem
}

.component-lp-extended-product .component-teaser .component-footer .row .component-stage-iconlist .item-list .item-list-label {
  padding-left: 3rem
}

@media only screen and (min-width: 40.063em) {
  .component-lp-extended-product .component-teaser .component-footer .row .component-stage-iconlist .item-list {
    font-size: .8rem
  }
}

.component-lp-extended-product .component-teaser .component-footer:after {
  min-height: 0
}

@media only screen and (min-width: 40.063em) {
  .component-lp-extended-product .component-teaser .component-footer:after {
    min-height: 14.25rem
  }
}

.component-lp-extended-product .component-teaser .component-header .text-group .hl, .component-lp-extended-product .component-teaser .component-header .text-group .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-lp-extended-product .component-teaser .component-header .text-group h2 {
  font-size: 3rem;
  line-height: 3.1875rem
}

@media only screen and (max-width: 40em) {
  .component-lp-extended-product .component-teaser .component-header .text-group .hl, .component-lp-extended-product .component-teaser .component-header .text-group .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-lp-extended-product .component-teaser .component-header .text-group h2 {
    margin-bottom: .3rem
  }
}

@media only screen and (min-width: 40.063em) and (max-width: 62.75em) {
  .component-lp-extended-product .component-teaser .component-header .text-group .hl, .component-lp-extended-product .component-teaser .component-header .text-group .component-footer-addendum .text-area h2, .component-footer-addendum .text-area .component-lp-extended-product .component-teaser .component-header .text-group h2 {
    font-size: 2.5rem;
    line-height: 2.5rem
  }
}

.component-lp-extended-product .component-teaser.component-footer-theme-dark .component-header .text-group {
  color: #ababab
}

.component-lp-extended-product .component-teaser.component-footer-theme-dark .item-list:hover .item-list-label {
  color: #ababab
}

.component-lp-extended-product .component-teaser.component-footer-theme-dark .component-footer .product-rating .product-rating-count {
  color: #ababab
}

.component-lp-extended-product .component-teaser.component-footer-theme-light .component-header .text-group {
  color: #fff
}

.component-lp-extended-product .component-teaser.component-footer-theme-light .item-list-label {
  color: #fff
}

.component-lp-extended-product .component-teaser.component-footer-theme-light .item-list:hover .item-list-label {
  color: #fff
}

.component-lp-extended-product .component-teaser.component-footer-theme-light .component-footer .product-rating .product-rating-count {
  color: #fff
}

@media only screen and (min-width: 40.063em) and (max-width: 62.75em) {
  .component-lp-extended-product.component-lp-extended-product-direction-right .component-content .component-footer .column.component-stage-iconlist {
    margin-left: -66.6666666667% !important
  }
}

@media only screen and (min-width: 62.8125em) {
  .component-lp-extended-product.component-lp-extended-product-direction-right .component-content .component-footer .column.component-stage-iconlist {
    margin-left: -75% !important
  }
}

@media only screen and (min-width: 40.063em) and (max-width: 62.75em) {
  .component-lp-extended-product.component-lp-extended-product-direction-right .component-content .component-footer .column.component-stage-button {
    margin-left: 60.3333333333% !important
  }
}

@media only screen and (min-width: 62.8125em) {
  .component-lp-extended-product.component-lp-extended-product-direction-right .component-content .component-footer .column.component-stage-button {
    margin-left: 50.3333333333% !important
  }
}