@charset "UTF-8";
/*
 *  Build File
 *_______________________*/
/*
 *  Bits: Webfonts
 *________________________*/
@font-face {
  font-family: "HelveticaNeueW02-57Cn";
  src: url("abf5b6e2-74e5-446b-b924-22c9749b33b6.eot?#iefix");
  src: url("abf5b6e2-74e5-446b-b924-22c9749b33b6.eot?#iefix") format("eot"), url("21f9012d-b72a-422e-84c3-96619ee09ae4.woff2") format("woff2"), url("c6206d3d-1ef8-44ad-96fa-c25e22252eb0.woff") format("woff"), url("6fddd219-58f2-42d3-99d5-5abbfcfde1a1.ttf") format("truetype"), url("f620604b-846b-4517-95c0-aa8a60dbb16c.svg#f620604b-846b-4517-95c0-aa8a60dbb16c") format("svg");
}
@font-face {
  font-family: "HelveticaNeueW02-67MdCn_694060";
  src: url("06b85ec8-4a05-49b4-91c2-f44ec792102b.eot?#iefix");
  src: url("06b85ec8-4a05-49b4-91c2-f44ec792102b.eot?#iefix") format("eot"), url("1d0835c8-a06f-45d8-be7f-31caedf5b2d8.woff2") format("woff2"), url("11398868-5e58-467f-86d1-650e10dd998a.woff") format("woff"), url("285f76f1-9aeb-40f3-8df6-f87eb061df28.ttf") format("truetype"), url("95e9b167-72f4-4e05-8337-e993a249b8b5.svg#95e9b167-72f4-4e05-8337-e993a249b8b5") format("svg");
}
/*
 *  Core: Config
 *________________________*/
/*
    Settings
*/
/*
    Breakpoints
*/
/*
    Colors
*/
/*
    Fonts
*/
/*
    Directories
 */
/*
 *  Core: Functions
 *________________________*/
/*
    get()
    _____

    Find and return the matching value
    from the given map and key.

    @param <map> Name of map
    @param <string> Key

    @return <string>

*/
/*
    breakpoint()
    ____________

    Find and return the matching
    breakpoint definition.

    @param <string> Breakpoint name

    @return <string> Condition

*/
/*
    color()
    _______

    Find and return the matching color.
    Returns red if not found.

    @param <string> Color name

    @return <string> Hex value

*/
/*
    rem()
    _____

    Converts a pixel value to a
    rem value.

    @param <string> Your value, in pixels
    @param <string> The base font-size to use

    @return <string>
*/
/*
    ease()
    _____

    @param <string> Name of easing function

    @return easing function
*/
/*
    round()
    _____

    @param <string> The value
    @param <string> Number of places to round to
    @param <string> The rounding mode e.g. round, ceil, floor...

    @return Rounded number
*/
/*
 *  Core: Mixins
 *______________________*/
/*
    media()
    _______

    Add a given media query and css ruleset to
    a sensible data structure.

    Usage:
        .selector {
            attribute: value;

            @include media(
                $query: <condition>,
                $declarations: (
                    attribute: value,
                    attribute: value
                )
            );
        }

    @param <map> The media query condition
    @param <list> CSS
*/
/*
    qualify()
    _________

    Qualify a selector to a specific tag.
    Only meant for use in unfortunate cases. :/

    Usage:
        .selector {
            color: blue;

            @include qualify(a) {
                color: yellow;
            }
        }

    CSS:
        .selector {
            color: blue;
        }

        a.selector {
            color: yellow;
        }

    @param <string> The tag you want to target
    @param <string> A tag specific ruleset
*/
/*
 *  Base: Normalise
 *________________________

    A very simple CSS reset.
    Nothing else should ever
    go in here.

*/
*,
*:before,
*:after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  font: 100%/1.6 Arial, sans-serif;
  margin: 0;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}
@media print {
  body {
    font-size: 85%;
  }
}

hr {
  background: #959faa;
  border: 0;
  height: 1px;
  margin: 1.875rem 0;
}

/*
 *  Base: Typography
 *________________________*/
h1, h2, h3, h4, .legacyCss h2, h5, h6 {
  color: #2c3e50;
  font-weight: 400;
  line-height: 1.2;
  page-break-after: avoid;
}

h1, h4, .legacyCss h2 {
  font-family: "HelveticaNeueW02-67MdCn_694060", sans-serif;
}

h1:before, h1:after, h2:before, h2:after, h3:before, h3:after {
  content: "";
  display: table;
}
h1:before, h2:before, h3:before {
  margin-top: -0.1em;
}
h1:after, h2:after, h3:after {
  margin-bottom: -0.1em;
}

h2, h3, h5, h6 {
  font-family: "HelveticaNeueW02-57Cn", sans-serif;
}

a {
  color: inherit;
  text-decoration: none;
}

blockquote {
  margin: 3.125rem 0;
}

cite {
  color: #2c3e50;
  font-style: normal;
}

ol,
ul {
  list-style-type: none;
  margin: 0;
  padding-left: 0;
}

p {
  margin: 1.25rem 0;
}

small {
  display: block;
  font-size: 0.875rem;
  page-break-after: avoid;
}

sub,
sup {
  line-height: 1;
}

/*
 *  Base: Media
 *______________________*/
img {
  border: 0;
  display: block;
  max-width: 100%;
}

figure {
  margin: 0;
}

iframe {
  border: 0;
  display: block;
  height: auto;
  width: 100%;
}

/*
 *  Base: Form
 *________________________*/
/*
 *  Base: Table
 *________________________*/
table {
  border-collapse: collapse !important;
  margin: 3.125rem 0;
  max-width: 100%;
}
table input {
  width: 6.25rem;
}

tr {
  border-bottom: 1px solid #cacfd3;
}

td,
th {
  vertical-align: top;
}
td.left,
th.left {
  text-align: left;
}
td.center,
th.center {
  text-align: center;
}
td.right,
th.right {
  text-align: right;
}

td {
  padding: 0.625rem;
}

th {
  font-size: 0.9375rem;
  padding: 0 0.625rem 0.625rem;
}

/*
 *  Bits: Typography
 *______________________*/
/*
    Headlines
*/
h1,
.h1 {
  font-size: 2.25rem;
}
@media print {
  h1,
.h1 {
    font-size: 2.25rem !important;
  }
}

h1 {
  margin: 0 0 2.5rem;
}

h2,
.h2 {
  font-size: 1.875rem;
}
@media print {
  h2,
.h2 {
    font-size: 1.875rem !important;
  }
}

h2 {
  margin: 3.125rem 0 1.875rem;
}

h3,
h4,
.legacyCss h2,
h5 {
  margin: 2.5rem 0 1.25rem;
}

h3 {
  font-size: 1.5rem;
}
@media print {
  h3 {
    font-size: 1.5rem !important;
  }
}

h4, .legacyCss h2 {
  font-size: 1.375rem;
}
@media print {
  h4, .legacyCss h2 {
    font-size: 1.375rem !important;
  }
}

h5 {
  font-size: 1.25rem;
}
@media print {
  h5 {
    font-size: 1.25rem !important;
  }
}

h6 {
  font-size: 1.125rem;
  margin: 1.875rem 0 0;
}
h6 + * {
  margin-top: 10px !important;
}
@media print {
  h6 {
    font-size: 1.125rem !important;
  }
}

/*
    Copy Text
*/
.hr-bright {
  background: #fbb900;
}

.hr-dark {
  background: #000;
}

.hr-large {
  background: #cacfd3;
  height: 2px;
}

.hero,
.meta {
  color: #919191;
}

.hero {
  font-size: 1.25em;
  margin-bottom: 2.8125rem;
}
.hero + .hero {
  margin-top: -1.5625rem;
}

.desc {
  color: #2c3e50;
  font-weight: 400;
}

.caption {
  color: #2c3e50;
  font-size: 0.875rem;
  margin: 1.875rem 0;
  position: relative;
}
.caption:after {
  background: #cacfd3;
  content: "";
  display: block;
  height: 1px;
  margin-top: 1.875rem;
  width: 40px;
}

/*
 *  Bits: Images
 *______________________*/
.image {
  margin: 2.5rem 0;
  page-break-inside: avoid;
}

.image--narrow {
  max-width: 27.5rem;
}

.image--large {
  min-width: 5.625rem;
  margin: 2.5rem;
}

.image--drop-shadow {
  filter: drop-shadow(0 0 16px #EEEEEE);
}

/*
 *  Bits: Box
 *______________________*/
.box {
  display: block;
  width: 100%;
}
.box > :first-child {
  margin-top: 0;
}
.box > :last-child {
  margin-bottom: 0;
}

.box--rounded {
  border-radius: 5px;
}

.box--well {
  box-shadow: inset 0 3px 6px rgba(0, 0, 0, 0.1);
}
@media print {
  .box--well {
    box-shadow: none;
  }
}

.box--fill {
  background-color: #eee;
}
@media print {
  .box--fill {
    background: none;
    border: 1px solid #dfdfdf;
  }
}

.box--fill-dark {
  background-color: #dfdfdf;
}
@media print {
  .box--fill-dark {
    background: none;
    border: 1px solid #919191;
  }
}

.box--highlight {
  border-top: 2px solid #fbb900;
}

.box--forward {
  background-image: url("box-arrow.svg");
  background-repeat: no-repeat;
  background-size: auto 100%;
}
@media print {
  .box--forward {
    background-image: none;
  }
}

.box--pad-s,
.box--pad-m,
.box--pad-l {
  padding: 0.875rem;
}

.boxes {
  margin: 2.5rem 0;
}
.boxes .box + .box {
  margin-top: 5px;
}

.boxes__title {
  background: #dfdfdf;
  border-bottom: 1px solid #cacfd3;
  margin: 0;
  position: relative;
  z-index: 1;
}

.boxes__title--dark {
  background: #2c3e50;
  color: #fbb900;
}

.boxes__content + .boxes__content {
  margin-top: 0.625rem;
}

/*
 *  Bits: Table
 *______________________*/
table {
  page-break-inside: avoid;
}
table .center {
  text-align: center;
}
table .right {
  text-align: right;
}

thead {
  color: #2c3e50;
  text-align: left;
}
thead tr {
  border-bottom-color: #2c3e50;
}

tbody {
  font-size: 1rem;
}

.table-wrap {
  margin: 3.125rem 0;
  overflow: auto;
}
.table-wrap table {
  margin: 0;
}

.table--trans tr {
  border-bottom: 0;
}

.table--alt thead tr {
  border-bottom: 2px solid #fbb900;
}
.table--alt tbody tr:nth-child(odd) {
  background: #eee;
}

.table__caption {
  margin: -1.875rem 0 2.5rem;
}

.transtab tr {
  border: 0;
}

/*
 *  Bits: Icon
 *______________________*/
.icon {
  background: url("icons.svg") no-repeat;
  background-size: 239em 2em;
  display: inline-block;
  height: 1em;
  width: 1em;
}

button.icon {
  border: 0;
  padding: 0;
}

.icon--mar-l {
  margin-left: 0.5rem;
}

.icon--mar-r {
  margin-right: 0.5rem;
}

.icon--rotate180 {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.icon--arrow-fat--blue {
  background-position: -2em 0;
}

a:hover .icon--arrow-fat--blue {
  background-position: -4em 0;
}

.facet__toggle:hover .icon, .icon--arrow--blue {
  background-position: -6em 0;
}

.no-touchevents .accordion__toggle:hover .icon, .slider__link:hover .icon, .link:hover .icon--arrow--blue, .pagination__control:hover .icon--arrow--yellow, .icon--arrow--dark {
  background-position: -8em 0;
}

.icon--arrow--yellow {
  background-position: -10em 0;
}

.nav-desktop__title.is-active .icon, .btn--diamond:hover .icon--arrow--yellow, .no-touchevents .nav-desktop__title:hover .icon--arrow--dark, .icon--arrow--white {
  background-position: -12em 0;
}

.icon--arrow-fill--grey {
  background-position: -20em 0;
}

.icon--grid--dark {
  background-position: -26em 0;
}

.icon--cart--dark {
  background-position: -30em 0;
}

.icon--cart--yellow {
  background-position: -32em 0;
}

.icon--cart--grey {
  background-position: -34em 0;
}

.icon--overview {
  background-position: -36em 0;
}

.btn:hover .icon--overview, .btn--diamond:hover .icon--overview {
  background-position: -38em 0;
}

.popup--error .popup__icon, .icon--attention {
  background-position: -40em 0;
}

.popup--success .popup__icon, .icon--tick--green {
  background-position: -42em 0;
}

.popup--info .popup__icon, .icon--info--blue {
  background-position: -44em 0;
}

input[type=checkbox]:checked + .check .icon {
  background-position: -48em 0;
}

a:hover .icon--write--blue, .icon--write {
  background-position: -50em 0;
}

a:hover .icon--write {
  background-position: -52em 0;
}

.icon--write--blue {
  background-position: -54em 0;
}

.icon--measure {
  background-position: -56em 0;
}

a:hover .icon--measure {
  background-position: -58em 0;
}

.icon--signal {
  background-position: -60em 0;
}

a:hover .icon--signal {
  background-position: -62em 0;
}

.icon--book {
  background-position: -64em 0;
}

a:hover .icon--book {
  background-position: -66em 0;
}

.icon--wrench {
  background-position: -68em 0;
}

a:hover .icon--wrench {
  background-position: -70em 0;
}

.icon--list {
  background-position: -72em 0;
}

.icon--star {
  background-position: -74em 0;
}

.icon--apps {
  background-position: -76em 0;
}

.icon--lock {
  background-position: -78em 0;
}

.icon--box-grid {
  background-position: -80em 0;
}

.icon--box-list {
  background-position: -82em 0;
}

.icon--play {
  background-position: -88em 0;
}

.icon--box-corners {
  background-position: -90em 0;
}

.icon--cross--yellow, a:hover .icon--cross {
  background-position: -94em 0;
}

.icon--cross {
  background-position: -96em 0;
}

.popup__close:hover .icon--cross-fat, .icon--cross--blue {
  background-position: -98em 0;
}

.icon--cross-fat, a:hover .icon--cross--blue {
  background-position: -100em 0;
}

.icon--download {
  background-position: -106em 0;
}

a:hover .icon--download {
  background-position: -108em 0;
}

.icon--swap {
  background-position: -110em 0;
}

.icon--save {
  background-position: -114em 0;
}

.icon--exit--dark {
  background-position: -116em 0;
}

.icon--exit {
  background-position: -118em 0;
}

.icon--location--grey {
  background-position: -120em 0;
}

.icon--location--yellow {
  background-position: -122em 0;
}

.icon--figure--grey {
  background-position: -124em 0;
}

.icon--figure--yellow {
  background-position: -126em 0;
}

.icon--search {
  background-position: -128em 0;
}

.icon--search:hover {
  background-position: -130em 0;
}

.icon--mail--grey {
  background-position: -132em 0;
}

a:hover .icon--mail--grey {
  background-position: -134em 0;
}

.icon--printer--grey {
  background-position: -136em 0;
}

a:hover .icon--printer--grey {
  background-position: -138em 0;
}

.icon--write--thin {
  background-position: -140em 0;
}

.icon--mail--thin {
  background-position: -142em 0;
}

.icon--case {
  background-position: -144em 0;
}

.icon--portal {
  background-position: -146em 0;
}

.icon--document--dark {
  background-position: -148em 0;
}

a:hover .icon--document--dark {
  background-position: -150em 0;
}

.icon--badge--dark {
  background-position: -152em 0;
}

a:hover .icon--badge--dark {
  background-position: -154em 0;
}

.icon--tool--dark {
  background-position: -156em 0;
}

a:hover .icon--tool--dark {
  background-position: -158em 0;
}

.icon--text--dark {
  background-position: -160em 0;
}

a:hover .icon--text--dark {
  background-position: -162em 0;
}

.icon--phone {
  background-position: -164em 0;
}

.icon--fax {
  background-position: -166em 0;
}

.icon--letter--yellow {
  background-position: -168em 0;
}

.icon--subscribe {
  background-position: -172em 0;
}

.icon--subscribe:hover {
  background-position: -174em 0;
}

a:hover .icon--xing {
  background-position: -176em 0;
}

.icon--xing {
  background-position: -178em 0;
}

a:hover .icon--linkedin {
  background-position: -180em 0;
}

.icon--linkedin {
  background-position: -182em 0;
}

a:hover .icon--facebook {
  background-position: -184em 0;
}

.icon--facebook {
  background-position: -186em 0;
}

a:hover .icon--twitter {
  background-position: -188em 0;
}

.icon--twitter {
  background-position: -190em 0;
}

a:hover .icon--rss {
  background-position: -192em 0;
}

.icon--rss {
  background-position: -194em 0;
}

.icon--burger {
  background-position: -196em 0;
}

.icon--burger--dark {
  background-position: -198em 0;
}

.icon--facebook-badge {
  background-position: -200em 0;
}

a:hover .icon--youtube {
  background-position: -210em 0;
}

.icon--youtube {
  background-position: -212em 0;
}

a:hover .icon--flickr {
  background-position: -214em 0;
}

.icon--flickr {
  background-position: -216em 0;
}

.icon--service-portal {
  background-position: -218em 0;
}

.icon--box-play {
  background-position: -220em 0;
}

.icon--metering {
  background-position: -222em 0;
}

a:hover .icon--metering {
  background-position: -224em 0;
}

a:hover .icon--pinterest {
  background-position: -226em 0;
}

.icon--pinterest {
  background-position: -228em 0;
}

a:hover .icon--vimeo {
  background-position: -230em 0;
}

.icon--vimeo {
  background-position: -232em 0;
}

a:hover .icon--instagram {
  background-position: -234em 0;
}

.icon--instagram {
  background-position: -236em 0;
}

.icon--cup--yellow {
  background-position: -238em 0;
}

.icon--large {
  font-size: 1.5rem !important;
}

.icon--blank, .popup--default .popup__icon {
  background-position: 0 2em;
}

.icon--facebook-badge {
  top: 0.25rem !important;
}

/*
 *  Bits: Aligned
 *______________________*/
.inline .btn {
  min-width: 0;
}

.inline__secondary > * {
  min-width: 0;
  max-width: none;
  width: 100%;
}

/*
 *  Bits: Button
 *______________________*/
.btn--toggle:hover, .btn--toggle.is-active, .btn--secondary:hover, .btn--secondary:focus, .btn--secondary:active, .btn--primary, input[type=submit] {
  background: #fbb900;
  color: #2c3e50;
}

.btn--secondary {
  background: transparent;
  color: #fbb900;
}

.btn {
  border-radius: 5px;
  border: 1px solid #fbb900;
  display: inline-table;
  font-weight: 700;
  max-width: 100%;
  text-align: center;
  transition: background 0.1s, color 0.1s;
}
.btn .icon {
  font-size: 1.5em;
  margin: -1px 0.5em 0 0;
  position: relative;
  vertical-align: middle;
}
.btn--primary:hover, input[type=submit]:hover, .btn--primary:focus, input[type=submit]:focus, .btn--primary:active, input[type=submit]:active {
  background: transparent;
}
.footer .btn--primary:hover, .footer input[type=submit]:hover, .footer .btn--primary:focus, .footer input[type=submit]:focus, .footer .btn--primary:active, .footer input[type=submit]:active {
  color: #fbb900;
}

.btn--mono {
  background: #ccc;
  border-color: #ccc;
  color: #2c3e50;
}
.btn--mono:hover, .btn--mono:focus, .btn--mono:active {
  background: transparent;
}

.btn--toggle {
  background: transparent;
  color: #2c3e50;
}
.btn--block {
  width: 100%;
}

.btn--tiny,
.btn--small,
.btn--medium {
  font-size: 0.875rem;
  padding: 0.575em 1em;
}
@media print {
  .btn--tiny,
.btn--small,
.btn--medium {
    font-size: 0.85em;
  }
}

@media print {
  .btn--medium {
    font-size: 1em !important;
  }
}

.btn--diamond {
  display: inline-block;
  position: relative;
  height: 3rem;
  width: 3rem;
}
.btn--diamond:after {
  border: 2px solid #fbb900;
  bottom: 14.75%;
  content: "";
  left: 14.75%;
  position: absolute;
  right: 14.75%;
  top: 14.75%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.btn--diamond:hover:after {
  background: #fbb900;
}
.btn--diamond .icon {
  font-size: 1.25rem;
  margin: 0.875rem;
  position: relative;
  z-index: 1;
}
.btn--diamond .icon--arrow--yellow {
  margin-left: 1rem;
}
.btn--diamond .icon--arrow--yellow.icon--rotate180 {
  margin-left: 0.75rem;
}

/*
 *  Bits: Field
 *______________________*/
.check, input,
select,
textarea {
  background: #fff;
  border: 1px solid #fbb900;
  border-radius: 5px;
  color: #2c3e50;
  font-size: 1rem;
  max-width: 100%;
  padding: 0.625rem;
  width: 100%;
}

button {
  cursor: pointer;
  line-height: 1.5;
}

input:focus, input:active,
select:focus,
select:active,
textarea:focus,
textarea:active {
  border-color: #2c3e50;
  outline: none;
}

input[type=file],
select {
  cursor: pointer;
}

input {
  appearance: none;
}

input[type=submit] {
  cursor: pointer;
  width: auto;
}

input[type=file] {
  padding: 0.4375rem;
}

label {
  color: #2c3e50;
  cursor: pointer;
  display: block;
  font-weight: 700;
}

select {
  padding-right: 1em;
}
.dataTables_length select {
  width: auto;
}

textarea {
  appearance: none;
  color: #919191;
  font-family: inherit;
  line-height: 1.6;
  max-width: 100%;
  min-height: 9.375rem;
}

.field {
  margin-bottom: 1.25rem;
}

.field--dark {
  position: relative;
}
.field--dark input {
  background: #2c3e50;
  border: 2px solid #959faa;
  box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.2);
  color: #959faa;
  margin: 0;
}
.field--dark input:focus, .field--dark input:active {
  border-color: #ebebeb;
}

.field__icon {
  font-size: 1.25rem;
  margin: 0.6875rem;
  position: absolute;
  right: 0;
  top: 0;
}
.field__icon + input {
  padding-right: 2.5rem;
}

.field--inline {
  display: inline-block;
  margin-right: 1em;
}

.field--wide {
  width: 100%;
}

.field--error .check, .field--error input,
.field--error select,
.field--error textarea {
  border-color: #d83500;
}
.field--error label {
  color: #d83500;
}

.field__label {
  margin-bottom: 0.625rem;
}

.field__toggle input {
  display: none;
}

.check {
  background: #ebebeb;
  font-weight: 400;
  padding-top: 0.375rem;
  padding-bottom: 0.4375rem;
  padding-left: 2.8125rem;
  position: relative;
}
@media print {
  .check {
    background: none !important;
  }
}
.check .icon {
  background-color: #fff;
  border: 1px solid #fbb900;
  font-size: 1.125em;
  left: 0.575em;
  position: absolute;
  top: 0.575em;
}
input[type=radio] + .check .icon {
  border-radius: 50%;
  box-shadow: inset 0 0 0 4px white;
}
input[type=radio]:checked + .check .icon {
  background: #2c3e50;
}

input[type=checkbox]:checked + .check,
input[type=radio]:checked + .check {
  background: #dfdfdf;
  border-color: #2c3e50;
}
@media print {
  input[type=checkbox]:checked + .check,
input[type=radio]:checked + .check {
    background: none !important;
  }
}
input[type=checkbox]:checked + .check .icon,
input[type=radio]:checked + .check .icon {
  border-color: #2c3e50;
}

.select {
  background: #fff;
  padding-top: 20px;
  padding-bottom: 20px;
  overflow: hidden;
  position: relative;
}
.select select {
  background: transparent;
  height: 100%;
  left: 0;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  position: absolute;
  top: 0;
}
.select .icon {
  float: right;
  font-size: 0.75em;
  position: absolute;
  right: 1.2em;
  top: 1.2em;
}

.hs-input[type=checkbox] {
  appearance: auto;
  width: auto;
  margin-right: 0.3em;
  padding: 0;
}

.hs-richtext {
  margin-top: 10px;
  margin-bottom: 10px;
}

/*
 *  Bits: Indicator
 *______________________*/
.indicator {
  background: #ccc;
  display: inline-block;
  font-size: 1.125rem;
  height: 1em;
  margin-right: 0.5em;
  width: 1em;
}

.indicator--yellow {
  background: #f9db18;
}

.indicator--green {
  background: #2db200;
}

/*
 *  Pieces/UI: Logo
 *______________________*/
.header__logo {
  margin: 1.375rem 0 1rem;
  width: 100px;
}

.header__logo__img {
  height: 100%;
}

.footer__logo {
  display: inline-block;
  margin-bottom: 1.5rem;
  width: 120px;
}

.slogan {
  color: #fff;
  display: none;
  font-size: 0.875rem;
  line-height: 1.2;
  margin: 2.375rem 0 1rem 1rem;
}

/*
 *  Pieces/UI: Link
 *______________________*/
.link {
  color: #00619b;
}
.link:hover {
  color: #2c3e50;
}
.link.ob-container {
  font-weight: 700;
  margin: 1.25rem 0;
}
.link.ob-container:hover {
  background: #dfdfdf;
}
p .link {
  margin: -0.25em;
  padding: 0.25em;
  position: relative;
}
.link .icon {
  font-size: 0.75rem;
  position: relative;
  top: 0;
}

.link--alt {
  color: #2c3e50;
}
.link--alt:hover, .link--alt.is-active {
  color: #00619b;
}

.link--items {
  font-size: 0.875rem;
  margin-left: 1.5rem !important;
}
.link--items .icon {
  position: absolute !important;
  left: 0 !important;
  font-size: 0.875rem !important;
}
.link--items a:hover, .link--items a.is-active {
  color: #00619b;
}

.link--bright {
  color: #fbb900;
}
.link--bright:hover {
  text-decoration: underline;
}

.link--inline {
  text-decoration: underline;
}

.link--block {
  display: block;
  position: relative;
}
.link--block.ob-container {
  padding-left: 2.25rem;
}
.link--block .icon {
  left: 0.825em;
  font-size: 1rem;
  position: absolute;
  top: 1.1em;
}

.link--large {
  font-size: 1.375rem;
  font-weight: 400 !important;
  padding: 0.625rem 1.25rem !important;
}
.link--large .icon {
  float: right;
  font-size: 0.875rem;
  margin: 0;
  position: relative;
  top: 0.875rem;
}

.link--large__meta {
  color: #919191;
  font-size: 1rem;
  margin-bottom: 0.5rem;
  position: relative;
  top: 0.5rem;
}

.link--pill {
  background: #fff;
  border-radius: 5px;
  color: #2c3e50;
  display: block;
  padding: 0.5em 0.8em;
}
.link--pill:hover {
  background: #2c3e50;
  color: #fff;
}
.link--pill .icon {
  font-size: inherit;
  margin-right: 1em;
  top: 0.2em;
}

/*
 *  Pieces/UI: List
 *______________________*/
.list, .legacyCss ul {
  margin: 2.5rem 0;
}
.list li, .legacyCss ul li {
  padding-left: 1.875rem;
  position: relative;
}
.list li + li, .legacyCss ul li + li {
  margin-top: 0.5rem;
}
.list li:before, .legacyCss ul li:before, .list:not(.list--links).icon, .legacyCss ul:not(.list--links).icon {
  left: 0;
  position: absolute;
}
.list .list, .legacyCss ul .list, .list .legacyCss ul, .legacyCss .list ul, .legacyCss ul ul {
  margin: 0.625rem 0 0;
}

.list--bullets li:before, .legacyCss ul li:before {
  background: #2c3e50;
  content: "";
  top: 0.55em;
  height: 0.5em;
  width: 0.5em;
}
.list--bullets li li:before, .legacyCss ul li li:before {
  background: #919191;
}

.list--ordered {
  counter-reset: item;
}
.list--ordered li {
  counter-increment: item;
}
.list--ordered li:before {
  color: #2c3e50;
  font-weight: 700;
  top: 0;
}
.list--ordered li li {
  padding-left: 2.5rem;
}
.list--ordered li li:before {
  color: #919191;
}

.list--numbered > li:before {
  content: counters(item, ".") ".";
}

.list--lettered > li:before {
  content: counter(item, lower-alpha) ".";
}
.list--lettered .list--lettered > li:before {
  content: counter(item, lower-roman) ".";
}

.list--icons .icon {
  left: 0;
  position: absolute;
  top: 0.3em;
}

.list--checks {
  color: #2c3e50;
  font-weight: bold;
}

.list--checks--old li {
  background: url("tick.svg") no-repeat left 4px;
  background-size: 16px 16px;
}

.list--links {
  border-top: 1px solid #cacfd3;
}
.list--links li {
  border-bottom: 1px solid #cacfd3;
  padding-left: 0;
}
.list--links li + li,
.list--links .link {
  margin: 0;
}

/*
 *  Pieces/UI: Quote
 *______________________*/
.quote__content {
  color: #616d7b;
  font-size: 1.125rem;
  font-style: italic;
  position: relative;
}
.quote__content:before, .quote__content:after {
  font-weight: 700;
}
.quote__content:before {
  content: "“";
  font-style: normal;
  line-height: 1;
}
.quote__content:after {
  content: "”";
}

.quote__footer {
  display: inline-block;
}
.quote__footer:before {
  background: #2c3e50;
  content: "";
  display: block;
  height: 1px;
  margin-bottom: 1em;
  max-width: 5em;
  width: 100%;
}

/*
 *  Pieces/UI: Title
 *______________________*/
.title {
  clear: both;
  margin: 1.875rem 0;
}

/*
 *  Pieces/UI: Footnote
 *______________________*/
.footnote {
  color: #919191;
  font-size: 0.875rem;
  margin: 2.5rem 0;
}
.footnote:before {
  background: #cacfd3;
  content: "";
  display: block;
  height: 1px;
  margin-bottom: 1.875rem;
  width: 2.5rem;
}
.footnote li {
  padding-left: 2.5rem;
  position: relative;
}
.footnote li + li {
  margin-top: 1rem;
}
.footnote sup {
  font-weight: 700;
  left: 0;
  position: absolute;
  top: 0.3em;
}

/*
 *  Pieces/UI: Filter
 *______________________*/
.filter__toggle {
  cursor: pointer;
  margin: 0 1em 1em 0;
}

/*
 *  Pieces/UI: facet
 *______________________*/
.facet {
  display: none;
  margin-bottom: 1.25rem;
}
.js-drop--active + .facet {
  display: block;
}
.facet .check {
  border-width: 0;
  border-color: rgba(0, 0, 0, 0.25) !important;
  border-radius: 0;
  font-size: 0.875rem;
  margin-bottom: 0.625rem;
  padding-left: 2rem;
}
.facet .check:first-of-type {
  border-top-width: 1px;
}
.facet .check:last-of-type {
  border-bottom-width: 1px;
}

.facet__toggle {
  border-bottom: 1px solid #2c3e50;
  color: #2c3e50;
  cursor: pointer;
  font-weight: 700;
  margin-bottom: 1rem;
  padding: 0 1.875rem 0.625rem 0;
  position: relative;
}
.facet__toggle.js-drop--active .icon {
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}
.facet__toggle .icon {
  font-size: 0.875rem;
  position: absolute;
  right: 0.4em;
  top: 0.4em;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.facet__clear {
  font-size: 0.875rem;
}
.facet__clear .icon {
  font-size: 0.625rem;
  margin-right: 0.75em;
}

/*
 *  Pieces/UI: Nav-Desktop
 *______________________*/
.nav-desktop {
  background: #626e7c;
  display: none;
  position: relative;
  z-index: 2;
}
@media print {
  .nav-desktop {
    display: none !important;
  }
}
.nav-desktop .link + .link {
  border-top: 1px solid #dfdfdf;
}

.nav-desktop__list {
  display: flex;
  position: relative;
  width: 100%;
}
.nav-desktop__list a {
  display: block;
}

.nav-desktop__item {
  flex-grow: 1;
}
.ie9 .nav-desktop__item {
  display: inline-block;
}

.nav-desktop__title {
  color: #fff;
  padding: 1.125rem 0;
  position: relative;
  text-align: center;
}
.no-touchevents .nav-desktop__title:hover, .nav-desktop__title.is-active, .nav-desktop__title.js-drop--active {
  background: #2c3e50;
}
.nav-desktop__title.js-drop--active .icon {
  background-position: -10em 0 !important;
}
.nav-desktop__title .icon {
  bottom: 0.5em;
  font-size: 0.875rem;
  left: 50%;
  margin-left: -0.5em;
  position: absolute;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.ie9 .nav-desktop__title {
  padding: 1.125rem 1.125rem;
}

.nav-desktop__dropdown {
  background: #fff;
  border: solid #2c3e50;
  border-width: 0 1px 1px;
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.2);
  display: none;
  left: 0;
  position: absolute;
  top: 100%;
  min-width: 100%;
}
.js-drop--active + .nav-desktop__dropdown {
  display: block;
}

/*
 *  Pieces/UI: Nav-Dropmenu
 *______________________*/
.dropmenu {
  left: 0;
  min-width: 295px;
  position: absolute;
  top: 100%;
}
.dropmenu__box:nth-last-child(2) .dropmenu {
  left: auto;
  right: 0;
}
.dropmenu a {
  padding: 0.625rem 2.5rem 0.625rem 1.25rem;
}

.dropmenu__box {
  position: relative;
}

/*
 *  Pieces/UI: Nav-Megamenu
 *______________________*/
.megamenu {
  color: #2c3e50;
}

.megamenu__title {
  display: inline-block !important;
  font-size: 1.125rem;
  font-weight: 700;
  margin: 1.25rem 0;
  padding-right: 0.5em;
}
.megamenu__title .icon {
  margin-right: 0.75em;
  vertical-align: text-top;
}
.megamenu__title + .megamenu__title {
  margin-top: 0;
}

.megamenu__list {
  border: solid #dfdfdf;
  border-width: 1px 0;
}
.megamenu__list a {
  padding: 0.625rem 0.625rem 0.625rem 0;
}

.megamenu__pane {
  float: left;
  padding: 1.25rem;
}

.megamenu__pane--main {
  box-shadow: 2px 0 0 #ebebeb;
  width: 67%;
}

.megamenu__pane--sub {
  box-shadow: inset 2px 0 0 #ebebeb;
  padding-right: 0;
  width: 33%;
}

.megamenu__bar {
  background: #2c3e50;
  color: #fff;
  padding: 0.625rem 1.25rem;
}
.megamenu__bar a {
  display: inline;
}
.megamenu__bar a:hover {
  color: #fbb900;
}
.megamenu__bar a + a {
  margin-right: 3.75rem;
}
.megamenu__bar .icon {
  margin-right: 1em;
  vertical-align: text-top;
}

.megamenu__close {
  float: right;
  font-size: 0.875rem;
  padding: 0.0625rem 0;
}
.megamenu__close .icon {
  margin: 0 0 0 0.5em;
  vertical-align: middle;
}

/*
 *  Pieces/UI: Nav-Overlay
 *______________________*/
.nav-overlay {
  background: #fff;
  box-shadow: inset -4px 0 0 rgba(0, 0, 0, 0.5);
  min-height: 100%;
  position: absolute;
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%);
  transition: transform 0.5s;
  width: 100%;
  z-index: 3;
}
.nav-overlay.is-active {
  box-shadow: 4px 0 0 rgba(0, 0, 0, 0.5);
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}
@media print {
  .nav-overlay {
    display: none !important;
  }
}

.nav-overlay__header {
  background: #2c3e50;
  box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2);
  color: #fff;
  height: 4.8125rem;
  padding: 0 0.625rem;
  position: relative;
  z-index: 1;
}
.nav-overlay__header .icon {
  cursor: pointer;
  font-size: 2rem;
  margin-top: -0.5em;
  position: relative;
  top: 50%;
}

.nav-overlay__link {
  font-weight: 700;
  padding: 0.75em 1.25em;
  position: relative;
  z-index: 2;
}
.nav-overlay__link.js-drop--active {
  background: #ebebeb;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
  color: #00619b;
}

.nav-overlay__link__icon {
  float: right;
  margin-top: 0.3125rem !important;
  position: static !important;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.js-drop--active > .nav-overlay__link__icon {
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}

.nav-overlay__main__item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.nav-overlay__main__item > .nav-overlay__link {
  text-transform: uppercase;
}

.nav-overlay__sub {
  background: #ebebeb;
  display: none;
  position: relative;
  z-index: 1;
}
.js-drop--active + .nav-overlay__sub {
  display: block;
}
.nav-overlay__sub .nav-overlay__link {
  padding-left: 3.125rem;
}
.nav-overlay__sub .nav-overlay__link .icon {
  left: 1.25rem;
  top: 1.05em;
}

.nav-overlay__sub__item {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.nav-overlay__sub__item > .js-drop--active {
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
  border-color: transparent;
}

.nav-overlay__lowest {
  background: #dfdfdf;
  display: none;
  padding: 1.25rem;
}
.js-drop--active + .nav-overlay__lowest {
  display: block;
}

.nav-overlay__meta {
  margin: 0.5rem 0 1.5rem;
}
.nav-overlay__meta a {
  padding: 0.3125rem 1.25rem;
}

/*
 *  Pieces/UI: Nav Footer
 *______________________*/
.nav-social {
  font-size: 1.5rem;
  line-height: 1;
  margin: -0.5em 0 1.5rem;
  text-align: center;
}
.nav-social a {
  background: #626e7c;
  border-radius: 3px;
  display: inline-block;
  height: 1.66667em;
  margin: 0.5em 0.2em 0;
  width: 1.66667em;
}
.nav-social .icon {
  margin: 0.33334em;
}

.nav-meta {
  font-size: 0.875rem;
  text-align: center;
}
.nav-meta.header__widget {
  margin-right: -0.75em;
}
.nav-meta a:not(:first-child) {
  padding-left: 0.5em;
}
.nav-meta a:not(:last-child) {
  border-right: 1px solid #fff;
  padding-right: 0.75em;
}
.footer .nav-meta a:hover {
  text-decoration: underline;
}

/*
 *  Pieces/UI: Language Switch
 *______________________*/
.lang-switch {
  border: 2px solid #959faa;
  border-radius: 5px;
  box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.2);
  display: table;
  float: right;
  font-size: 0.875rem;
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.lang-switch li,
.lang-switch a {
  display: table-cell;
}
.lang-switch a {
  border-radius: 3px;
  padding: 0.375rem 0.625rem;
}
.lang-switch a:hover, .lang-switch a.is-active {
  background: #626e7c;
}
.lang-switch a.is-active {
  box-shadow: 0 0 0 2px #959faa;
  color: #fbb900;
  position: relative;
  z-index: 1;
}

/*
 *  Pieces/UI: Banner
 *______________________*/
.banner {
  background: #ebebeb;
  border-bottom: 2px solid #fbb900;
  display: table;
  width: 100%;
}
@media print {
  .banner {
    background: none !important;
  }
}

.banner--small {
  min-height: 7.5rem;
}
.banner--small .banner__content {
  vertical-align: bottom;
}

.banner--large {
  min-height: 11.25rem;
}
.banner--large .banner__content {
  padding-bottom: 0.625rem;
  vertical-align: middle;
}
.banner--large .banner__headline {
  max-width: 40rem;
}

@-moz-document url-prefix() {
  .banner--large {
    min-height: 11.25rem;
    height: 11.25rem;
  }
}
.banner--large-dark {
  background: #2c3e50;
  border-bottom: none;
  display: block;
  position: relative;
}
.banner--large-dark .banner__bg {
  bottom: 0;
  position: relative;
}
.banner--large-dark .banner__bg img {
  bottom: auto;
  left: 0;
  max-width: 100%;
  min-height: 0;
  position: relative;
  top: 0;
  height: auto;
  transform: none;
}
.banner--large-dark .banner__content {
  display: block;
  padding-top: 0;
}
.banner--large-dark .banner__content .banner__headline {
  font-size: 2.5rem;
  color: #fbb900;
}
.banner--large-dark .banner__logo {
  position: absolute;
  width: 108px;
  top: 24px;
  right: 24px;
}
@media print {
  .banner--large-dark .banner__logo {
    display: none !important;
  }
}
.banner--large-dark .banner__logo img {
  max-width: 100%;
  height: auto;
}

.banner__content {
  display: table-cell;
  padding-top: 0.625rem;
  position: relative;
  width: 100%;
}

.banner__headline {
  margin-bottom: 0;
}
.banner--small .banner__headline {
  padding-top: 1.875rem !important;
}

.banner__headline--fill {
  background: rgba(255, 255, 255, 0.9);
}
.banner--small .banner__headline--fill {
  padding-right: 1.875rem !important;
  padding-left: 1.875rem !important;
}

.banner__bg {
  bottom: 2px;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
}
@media print {
  .banner__bg {
    display: none;
  }
}
.banner__bg img {
  bottom: 0;
  left: 50%;
  max-width: none;
  min-height: 100%;
  position: absolute;
  top: 0;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.banner__shape {
  bottom: 2px;
  position: absolute;
  right: 0;
}
@media print {
  .banner__shape {
    display: none;
  }
}

/*
 *  Pieces/UI: Slider
 *______________________*/
.slider {
  overflow: hidden;
  z-index: 1;
}

.slider__banner__content {
  overflow: hidden;
}

.slider__content {
  position: absolute;
  width: 100%;
}

.slider__content__width {
  max-width: 43.75rem;
}

.slider__headline {
  margin-bottom: 0;
  padding: 30px 10px;
}

.slider__link {
  color: #fab800;
}
.slider__link .h2 {
  color: #fab800;
}
.slider__link:hover .h2 {
  color: #2c3e50;
}
.slider__link .icon {
  margin-left: 10px;
}

.slider__content--fill,
.slider__headline--fill {
  background: rgba(255, 255, 255, 0.9);
}

.slider-box-wide {
  background: rgba(255, 255, 255, 0.9);
}

.slider__pagination {
  padding: 16px 20px;
  background: #fff;
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0 !important;
}

.swiper-button-prev .icon {
  background: none;
}

/*
 *  Pieces/UI: cta
 *______________________*/
.cta-banner {
  position: relative;
}
@media print {
  .cta-banner {
    display: none;
  }
}

.cta-banner__content {
  padding: 0 1.875rem;
}
.cta-banner__graphic {
  border-color: #959faa transparent transparent transparent;
  border-style: solid;
  border-width: 3em 3em 0;
  font-size: 1.5rem;
  height: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 0;
}
.cta-banner__graphic:after {
  background: #2c3e50;
  content: "";
  height: 2.1em;
  left: 0;
  position: absolute;
  bottom: 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: 0 100%;
  -ms-transform-origin: 0 100%;
  transform-origin: 0 100%;
  width: 2.125em;
}
.cta-banner__graphic .icon {
  bottom: 50%;
  left: 50%;
  margin: 0 0 1em -0.5em;
  position: absolute;
  z-index: 1;
}

/*
 *  Pieces/UI: Catalog Links
 *______________________*/
.catalog-link,
.catalog-link__img {
  border-radius: 5px;
}

.catalog-link {
  display: block;
  height: 4.75rem;
  padding: 0.5rem 1rem;
  position: relative;
}

.catalog-link--dark {
  background: #ebebeb;
}
.catalog-link--dark:hover, .catalog-link--dark.is-active {
  background: #dfdfdf;
}

.catalog-link--light {
  background: #fff;
}
.catalog-link--light:hover, .catalog-link--light.is-active {
  background: #2c3e50;
  color: #fff;
}
.catalog-link--light:hover .catalog-link__desc, .catalog-link--light.is-active .catalog-link__desc {
  color: inherit;
}

.catalog-link__img {
  border-radius: 5px;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
}

.catalog-link__content {
  left: 1rem;
  padding-right: 1rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.catalog-link__title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.2;
}

.catalog-link__desc {
  color: #919191;
  font-size: 0.75rem;
  margin-top: 4px;
}

/*
 *  Pieces/UI: Form Search
 *______________________*/
.search-form {
  bottom: 0;
  left: 0;
}
.search-form .field--dark {
  display: block;
  margin: auto;
  max-width: 30rem;
}

/*
 *  Pieces/UI: Form Login
 *______________________*/
.login-form {
  background: #fff;
  border-bottom: 2px solid #2c3e50;
  color: #2c3e50;
  min-width: 17.5rem;
  padding: 1rem;
  right: 0;
  top: 0;
  z-index: 1;
}

/*
 *  Pieces/UI: Breadcrumb
 *______________________*/
.breadcrumb {
  color: #959faa;
  font-size: 0.875rem;
}
.breadcrumb:after {
  background: #fbb900;
  bottom: -1px;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  right: 0;
}
.breadcrumb a {
  margin-right: -4px;
  white-space: nowrap;
}
.breadcrumb a:hover {
  color: #fbb900;
}
.breadcrumb a:last-child {
  color: #2c3e50;
}
.breadcrumb .icon {
  margin: 0 0.5em;
  position: relative;
  top: 0.15em;
}

.breadcrumb--noborder:after {
  display: none;
}

/*
 *  Pieces/UI: Page Actions
 *______________________*/
.page-actions {
  float: right;
  margin-left: 1rem;
}
.page-actions a {
  display: inline-block;
  margin-left: 1rem;
  vertical-align: middle;
}
.page-actions .icon {
  font-size: 1.25rem;
}

/*
 *  Pieces/UI: Pagination
 *______________________*/
.pagination {
  display: table;
  font-weight: 700;
  margin-top: 0.5rem;
}

.pagination__list,
.pagination__control {
  display: table-cell;
  vertical-align: middle;
}

.pagination__control {
  font-size: 1.125rem;
  line-height: 1;
}

.pagination__list:not(:first-child) {
  padding-left: 2.5rem;
}
.pagination__list:not(:last-child) {
  padding-right: 2.5rem;
}
.pagination__list li {
  display: inline-block;
  padding: 0 0.75em;
}
.pagination__list a {
  color: #fbb900;
}
.pagination__list a:hover, .pagination__list a.is-active {
  color: #000;
}

/*
 *  Pieces/UI: Tabs
 *______________________*/
.tabs {
  margin: 2.5rem 0;
}

.tab__toggles {
  border: 1px solid #dfdfdf;
  border-bottom: 2px solid #2c3e50;
  box-shadow: 0 2px 1px 0 rgba(0, 0, 0, 0.2);
  color: #2c3e50;
  font-family: "HelveticaNeueW02-57Cn", sans-serif;
  font-size: 1.25rem;
  margin: 0.5rem;
  max-width: 100%;
  overflow: auto;
}
.tab__toggles a {
  display: block;
  padding: 0.625rem 1.5rem;
}
.tab__toggles a:hover,
.tab__toggles .is-active a {
  background: #f5f5f5;
}
.tab__select {
  background: #fbb900;
  border-radius: 7px;
  color: #2c3e50;
  cursor: pointer;
  font-family: "HelveticaNeueW02-57Cn", sans-serif;
  font-size: 1.25rem;
  margin-bottom: 0.5rem;
  padding: 0.625rem 1.5rem;
  position: relative;
}
.tab__select.is-active + .tab__toggles {
  display: block;
}
.tab__select .icon {
  position: absolute;
  right: 1rem;
  top: 1rem;
}

.tab__toggle {
  border-bottom: 1px solid #ebebeb;
}

.tab__toggle--wide {
  min-width: 18.75rem;
}

/*
 *  Pieces/UI: Video
 *______________________*/
.video {
  margin: 1.25rem 0;
  position: relative;
}
.video iframe {
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.video--4-3:before {
  display: block;
  content: "";
  padding-top: 75%;
  width: 100%;
}

.video--8-3:before {
  display: block;
  content: "";
  padding-top: 37.5%;
  width: 100%;
}

.video--16-9:before {
  display: block;
  content: "";
  padding-top: 56.25%;
  width: 100%;
}

/*
 *  Pieces/UI: Autocomplete
 *______________________*/
.autocomplete {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 3px;
  display: none;
  left: 0;
  margin-top: 4px;
  padding: 0.25rem;
  position: absolute;
  top: 100%;
  min-width: 100%;
}
input:focus + .autocomplete, input:active + .autocomplete {
  display: block;
}
.autocomplete a {
  display: block;
  padding: 0.25rem 0.5rem;
}
.autocomplete a:hover {
  background: #ebebeb;
}

/*
 *  Pieces/UI: Cart Progress
 *______________________*/
.cart-progress {
  border-spacing: 2px 0;
  display: table;
  font-size: 0.875rem;
  font-weight: 700;
  margin-bottom: 3.75rem;
  text-align: center;
  width: 100%;
}
@media print {
  .cart-progress {
    display: none;
  }
}

.cart-progress__item {
  background: #2c3e50;
  border-radius: 5px;
  color: #fbb900;
  display: table-cell;
  padding: 0.25rem;
  width: 20%;
}
.cart-progress__item:hover {
  color: #fff;
}
.cart-progress__item.is-active {
  color: #fbb900;
  position: relative;
}
.cart-progress__item.is-active:after {
  border-style: solid;
  border-width: 10px 10px 0 10px;
  border-color: #2c3e50 transparent transparent transparent;
  content: "";
  height: 0;
  margin-left: -10px;
  left: 50%;
  position: absolute;
  top: 100%;
  width: 0;
}
.cart-progress__item.is-active ~ .cart-progress__item {
  background: #ebebeb;
  color: #2c3e50;
}
.cart-progress__item .tx-chubby {
  display: inline-block;
  vertical-align: middle;
}
.cart-progress__item .tx-chubby + span {
  margin-left: 1em;
}

.cart-progress__label {
  display: none;
}
/*
 *  Pieces/UI: Carousel
 *______________________*/
.carousel__items {
  overflow: hidden;
  position: relative;
}
.carousel__items img {
  margin: auto;
}

.carousel__tag {
  position: absolute;
  right: 0.625rem;
  top: 0.625rem;
  z-index: 2;
}

.carousel__item {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity 0.4s;
  width: 100%;
  border: 4px solid #ebebeb;
  padding: 1.25rem;
}
.carousel__item.is-active {
  opacity: 1;
  position: relative;
  z-index: 1;
}
.carousel__item img {
  border: 4px solid #fff;
  width: 100%;
}
@media print {
  .carousel__item img {
    max-width: 200px;
  }
}

.carousel__caption {
  background: rgba(255, 255, 255, 0.5);
  bottom: 0;
  display: inline-block;
  font-size: 0.875rem;
  max-width: calc(100% - 40px);
  left: 50%;
  padding: 0.125rem 0.375rem;
  position: absolute;
  text-align: center;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.carousel__bullets {
  text-align: center;
  margin-top: 1.25rem;
}
@media print {
  .carousel__bullets {
    display: none;
  }
}

.carousel__thumb,
.carousel__bullet {
  cursor: pointer;
}

.carousel__bullet {
  border: 2px solid #fbb900;
  border-radius: 50%;
  cursor: pointer;
  display: inline-block;
  height: 1.25rem;
  margin: 0 0.25rem;
  width: 1.25rem;
}
.no-touchevents .carousel__bullet:hover, .carousel__bullet.is-active {
  background: #fbb900;
}

.carousel__thumbs {
  margin: 2.5rem 0;
}
.carousel__thumbs .column {
  position: relative;
}

.carousel__thumb {
  border: 2px solid #ebebeb;
}
.is-active .carousel__thumb {
  border-color: #fbb900;
}

.carousel__thumb__icon {
  cursor: pointer;
  font-size: 1.875rem;
  left: 50%;
  margin: -0.9375rem 0 0 -0.9375rem;
  position: absolute;
  top: 50%;
}

/*
 *  Carousel Video
 *______________________*/
.carousel-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.carousel-video {
  position: relative;
  padding-bottom: 75%; /* for videos 4:3 ratio*/
  padding-top: 0px;
  margin-bottom: 12.5%;
  margin-top: 12.5%;
  height: 0;
  overflow: hidden;
}

/*
 *  Pieces/UI: Popup
 *______________________*/
.popup {
  box-shadow: 0 5px 45px rgba(0, 0, 0, 0.5);
  left: 0;
  max-height: 100%;
  max-width: 40rem;
  overflow: auto;
  position: fixed;
  top: 0;
  -webkit-transform: translateY(-150%);
  -ms-transform: translateY(-150%);
  transform: translateY(-150%);
  -webkit-transition: transform 0.2s;
  transition: transform 0.2s;
  width: 100%;
  z-index: 5;
}
@media print {
  .popup {
    display: none;
  }
}
.popup.is-open {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

.popup--default .popup__header {
  border-color: #fbb900;
}
.popup--success .popup__header {
  border-color: #2db200;
}
.popup--error .popup__header {
  border-color: #ff0000;
}
.popup--info .popup__header {
  border-color: #0080ff;
}
.popup__header {
  background: #ebebeb;
  border-bottom: 2px solid transparent;
  padding: 0.625rem 0 0.625rem 1rem;
}

.popup__title {
  overflow: hidden;
}

.popup__icon {
  font-size: 1.25rem;
  left: 0.625rem;
  position: absolute;
  top: 1rem;
}

.popup__close {
  cursor: pointer;
  font-size: 0.875rem;
  font-weight: 700;
  margin: 0.25rem 0.625rem 0 1.25rem;
}
.popup__close .icon {
  font-size: 1.125rem;
}

.popup__close__text {
  margin: 0 0.5rem 0 0.25rem;
}

.popup__content {
  background: #fff;
  padding: 1rem;
}

.inline-popup {
  border: 1px solid #0080ff;
  cursor: pointer;
  display: inline-block;
  height: 1.5em;
  margin: 0 0.5em;
  vertical-align: middle;
  width: 1.5em;
}
.inline-popup .icon {
  margin: 0.1875rem;
}

/*
 *  Pieces/UI: Nav Toggle Widget
 *______________________*/
.nav-toggle-widget {
  cursor: pointer;
  margin: 2.375rem 1em 0 0;
}

/*
 *  Pieces/UI: Cart Widget
 *______________________*/
.cart-widget {
  color: #fbb900;
  position: relative;
}
.cart-widget--empty {
  color: #959faa;
}

.cart-widget__count {
  color: #fff;
}
.cart-widget--empty .cart-widget__count {
  color: inherit;
}

.cart-widget__popup {
  background: #fbb900;
  border-radius: 3px;
  bottom: 120%;
  color: #2c3e50;
  font-size: 0.75rem;
  font-weight: bold;
  left: 50%;
  line-height: 1;
  padding: 0.125rem 0.375rem;
  position: absolute;
  -webkit-transform: translate(-50%);
  -ms-transform: translate(-50%);
  transform: translate(-50%);
}

/*
 *  Pieces/UI: Login Widget
 *______________________*/
.login-widget {
  position: relative;
}
.login-widget__arrow {
  font-size: 0.625rem !important;
}

.login-widget__dropdown {
  box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.2);
  display: none;
  min-width: 17.5rem;
  padding-top: 1rem;
  position: absolute;
  right: 0;
  top: 100%;
  z-index: 1;
}
.login-widget__dropdown:after {
  border-style: solid;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent #fff transparent;
  content: "";
  height: 0;
  position: absolute;
  right: 20px;
  top: 6px;
  width: 0;
}

/*
 *  Pieces/UI: Message Box
 *______________________*/
.message {
  border-top: 4px solid;
  margin: 1.875rem 0;
  min-height: 4.5rem;
  padding: 0 1.875rem 0 4.375rem;
  overflow: auto;
  position: relative;
}
.message p {
  margin: 0.625rem;
}

.message--success {
  background: #d7fecd;
  border-color: #2db200;
  color: #2db200;
}
.message--success .message__icon:before {
  border-color: #2db200;
}

.message--error {
  background: #ffcfbf;
  border-color: #d83500;
  color: #d83500;
}
.message--error .message__icon:before {
  border-color: #d83500;
}

.message--info {
  background: #e1f0ff;
  border-color: #0080ff;
  color: #0080ff;
}
.message--info .message__icon:before {
  border-color: #0080ff;
}

.message__icon {
  font-size: 1.5rem;
  left: 1.125rem;
  position: absolute;
  top: 1.125rem;
}
.message__icon:before {
  background: #fff;
  border: 1px solid;
  content: "";
  font-size: 2.125rem;
  height: 1em;
  position: absolute;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 1em;
}
.message__icon .icon {
  left: 0.3125rem;
  position: absolute;
  top: 0.3125rem;
  z-index: 1;
}

/*
 *  Pieces/UI: News
 *______________________*/
.results {
  margin: 2.5rem 0;
}

.result {
  border-bottom: 1px solid #cacfd3;
}
.result + .result {
  margin-top: 1.25rem;
}

/*
 *  Pieces/UI: Accordion
 *______________________*/
.accordion__toggle {
  cursor: pointer;
  padding-right: 3rem;
  position: relative;
}
.no-touchevents .accordion__toggle:hover {
  background: #fbb900;
  color: #2c3e50;
}
.accordion__toggle .icon {
  font-size: 1rem;
  position: absolute;
  right: 1.125rem;
  top: 1.125rem;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.accordion__toggle.js-drop--active {
  margin-bottom: 0.625rem;
}
.accordion__toggle.js-drop--active .icon {
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}

.accordion__content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
}
.js-drop--active + .accordion__content {
  max-height: 20000px;
  transition: max-height 0.5s cubic-bezier(0, 0, 0.95, 1);
}

/*
 *  Pieces/UI: Teaser
 *______________________*/
.teaser {
  position: relative;
}

.no-touchevents .teaser:hover .teaser--border {
  border-color: transparent;
}
.no-touchevents .teaser:hover .teaser__headline {
  color: #2c3e50;
}
.no-touchevents .teaser:hover .teaser__overlay,
.no-touchevents .teaser:hover .teaser__asset {
  opacity: 1;
}

.teaser__asset {
  bottom: 1.25rem;
  color: #fbb900;
  display: block;
  left: 1.25rem;
  margin: auto;
  min-width: 0 !important;
  opacity: 0;
  position: absolute;
  right: 1.25rem;
  text-align: center;
  width: auto !important;
  z-index: 2;
}
.no-touchevents .teaser__asset:hover {
  text-decoration: underline;
}

.teaser__overlay {
  background: rgba(0, 0, 0, 0.8);
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: opacity 0.2s;
  z-index: 1;
}

.teaser__overlay__content {
  color: #fff;
  font-family: "HelveticaNeueW02-67MdCn_694060", sans-serif;
  font-size: 1.5rem;
  left: 0;
  padding: 0 1em;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 100%;
  z-index: 1;
}
.teaser__overlay__content .icon {
  bottom: 100%;
  left: 50%;
  margin-left: -0.5em;
  position: absolute;
}

.teaser__img {
  overflow: hidden;
  position: relative;
}
.teaser__img img {
  width: 100%;
}

.teaser--border {
  border: 1px solid #fbb900;
  padding: 1.25rem;
}

.teaser__caption {
  background: #fbb900;
  border-radius: 5px 0 0 5px;
  bottom: 1.25rem;
  color: #2c3e50;
  font-family: "HelveticaNeueW02-67MdCn_694060", sans-serif;
  font-size: 1.25rem;
  left: 1.25rem;
  line-height: 1.2;
  padding: 0.625rem 0.75rem;
  right: 0;
  position: absolute;
}

.teaser__headline {
  margin-top: 0;
  padding-top: 1.25rem;
}
a.teaser .teaser__headline {
  color: #00619b;
}

.product-teaser {
  margin: 0.625rem auto;
  max-width: 17.5rem;
}

.service-teaser {
  background: #fbb900;
  box-shadow: inset 0 0 0 1px #fbb900;
  color: #2c3e50;
  display: block;
  font-weight: 700;
  line-height: 1.2;
  margin: auto;
  max-width: 10.625rem;
  text-align: center;
  transition: background 0.2s, color 0.2s;
}
.service-teaser:after {
  display: block;
  content: "";
  width: 100%;
  padding-top: 100%;
}
.service-teaser:hover {
  background: transparent;
  color: #fbb900;
}

.service-teaser__icon {
  font-size: 3rem;
  left: 50%;
  margin: -1.5rem 0 0 -1.5rem;
  position: absolute;
  top: 45%;
}

.service-teaser__title {
  bottom: 0.5em;
  left: 1em;
  margin-bottom: 0;
  min-height: 2em;
  position: absolute;
  right: 1em;
}

.catalog-teaser {
  border-top: 6px solid #2c3e50;
  position: relative;
}
@media print {
  .catalog-teaser {
    background: none !important;
    border: 1px solid #2c3e50;
  }
}

.catalog-teaser__img {
  width: 100%;
}
@media print {
  .catalog-teaser__img {
    max-width: 200px;
    max-height: 200px;
  }
}

.catalog-teaser__content {
  padding: 1.875rem;
}

/*
 *  Pieces/UI: SVG Map
 *______________________*/
.world-map {
  display: none;
  position: relative;
}
.world-map:before {
  content: "";
  display: block;
  padding-top: 65%;
}

.world-map__tooltip {
  background: #2c3e50;
  border-radius: 5px;
  color: #fbb900;
  display: none;
  font-weight: bold;
  left: 50%;
  min-width: 12.5rem;
  opacity: 0;
  padding: 0.5rem 1.25rem;
  pointer-events: none;
  position: absolute;
  top: 45%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transition: opacity 0.25s;
  transition: opacity 0.25s;
}
.world-map__tooltip.active {
  opacity: 1;
}

.svg-map {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

/*
 *  Pieces/UI: CTA Links
 *______________________*/
.cta-links {
  color: #2c3e50;
  font-family: "HelveticaNeueW02-67MdCn_694060", sans-serif;
  font-size: 1.125rem;
  width: 100%;
}
@media print {
  .cta-links {
    display: none;
  }
}
.cta-links .icon {
  font-size: 1.5rem;
}

.cta-link {
  background: #dfdfdf;
  padding: 1em 0;
  text-align: center;
}
.cta-link:hover {
  background: #2c3e50 !important;
  color: #fff;
}

/*
 *  Pieces/Layout: Media
 *______________________*/
.media {
  margin: 2.5rem 0;
}

.media__body {
  overflow: auto;
}

.media__obj {
  display: table;
  margin: 0 0 1.25rem;
}

.media__iframe {
  height: 43.75rem;
}

.block--obj-teaser .media__obj {
  margin: -208px 0 0 0;
  width: 100%;
  text-align: center;
}
.block--obj-teaser-vcenter .media__obj {
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 50%, #ebebeb 50%, #ebebeb 100%);
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin: 0 -0.625rem 0 -0.625rem;
}
.block--obj-teaser-vcenter .media__obj img {
  height: auto;
  margin: 2.5rem 0.625rem;
  max-width: 18.75rem;
}

/*
 *  Pieces/Layout: Grid
 *______________________*/
/*
    Grid Options
*/
.grid {
  clear: both;
}

.grid--gutter {
  margin: -10px;
}
.grid--gutter > .column {
  padding: 10px;
}

.grid--equal {
  display: flex;
  flex-wrap: wrap;
}
.grid--equal > .column {
  display: flex;
  flex-wrap: nowrap;
  margin-right: 0;
}
.grid--equal > .column > * {
  width: 100%;
}

/*
    Columns
*/
.column {
  display: inline-block;
  margin-right: -0.3em;
  vertical-align: top;
  width: 100%;
}

.column--mid {
  align-items: center;
  vertical-align: middle;
}

.column--bot {
  vertical-align: bottom;
}

.column--1-2 {
  width: 50%;
}

.column--1-3 {
  width: 33.33334%;
}

.column--2-3 {
  width: 66.66666%;
}

/*
 *  Pieces/Layout: Block
 *______________________*/
.block {
  position: relative;
}

.block--padded {
  padding: 2.5rem 0;
}

.block--padded--bottom-small {
  padding-bottom: 1.25rem;
}

.block--obj-teaser {
  padding: 1.25rem 0;
  margin-top: 12.5rem;
}

.block--obj-teaser-vcenter {
  padding: 1.25rem 0;
}

.block--blank + .block--obj-teaser {
  margin-top: 10rem;
}

.block--blank + .block--blank {
  padding-top: 0;
}

.block--light {
  background: #ebebeb;
}

.block--dark {
  background: #2c3e50;
  color: #fff;
}
@media print {
  .block--dark {
    border: 1px solid #2c3e50;
    background: none;
  }
  .block--dark .tx-light {
    color: #2c3e50 !important;
  }
}

.block__bg {
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
@media print {
  .block__bg {
    display: none;
  }
}

.block__bg--top {
  top: 0;
}

.block__bg--bot {
  bottom: 0;
}

/*
 *  Pieces/Layout: Sidebar
 *______________________*/
.sidebar__widget {
  border: 1px solid #dfdfdf;
  border-bottom: 2px solid #2c3e50;
  box-shadow: 0 2px 1px 0 rgba(0, 0, 0, 0.2);
  margin: -0.625rem 0 1.875rem !important;
  padding: 0.875rem 0.875rem 1.5rem;
}
.js-drop--active + .sidebar__widget {
  display: block;
}

.sidebar__title {
  border-bottom: 1px solid #fbb900;
  padding-bottom: 1.5rem;
}

.sidebar__list {
  margin-top: -0.5rem;
}
.sidebar__list a {
  border-bottom: 1px solid #dfdfdf;
  margin: 0;
  padding: 0.5rem 0 0.5rem 1.5em;
  position: relative;
}
.sidebar__list .icon {
  font-size: 1rem;
  left: 0;
  margin-top: 0;
  position: absolute;
  top: 0.75rem;
}

@media print {
  .sidebar .accordion__toggle {
    display: none;
  }
}
/*
 *  Pieces/Layout: Header
 *______________________*/
.header {
  color: #fff;
  margin: auto;
  position: relative;
  max-width: 100rem;
  z-index: 2;
}

.header__widgets {
  background: rgba(44, 62, 80, 0.9);
  font-size: 0.875rem;
  padding-bottom: 3.625rem;
  position: relative;
  z-index: 3;
}
@media print {
  .header__widgets {
    display: none;
  }
}
.header__widgets a:hover {
  color: #fbb900;
}

.header__widgets__section {
  display: inline-block;
  vertical-align: bottom;
}

.header__widgets__section--right {
  float: right;
  margin-top: 2.25rem;
}
.header__widgets__section--right .header__widget {
  margin: 0 0.375rem;
}

.header__widgets__group {
  display: inline-block;
  text-align: right;
}
.header__widget {
  display: inline-block;
  text-align: left;
  vertical-align: top;
}

.header__widget__icon {
  font-size: 1.3125rem;
  vertical-align: middle;
}

.header__widget__text {
  display: inline-block;
  line-height: 1.2;
  vertical-align: middle;
}

.header__meta {
  background: #fff;
  margin: auto;
  max-width: 100rem;
  padding: 0.625rem 0;
  position: relative;
  z-index: 1;
}
@media print {
  .header__meta {
    display: none;
  }
}

.header--badge-special {
  display: none;
}
.header--badge-special img {
  width: 56px;
}

/*
 *  Pieces/Layout: Footer
 *______________________*/
.footer {
  background: #2c3e50;
  border-top: 2px solid #fbb900;
  box-shadow: inset 0 20px 20px rgba(0, 0, 0, 0.2);
  color: #fff;
  overflow: hidden;
  padding-top: 2em;
  padding-bottom: 4em;
  position: relative;
}
@media print {
  .footer {
    display: none;
  }
}

.footer__top {
  border-color: transparent transparent #fbb900 transparent;
  border-style: solid;
  border-width: 0 2.5em 2.5em;
  bottom: -4em;
  cursor: pointer;
  height: 0;
  margin-right: -2.5em;
  position: absolute;
  right: 50%;
  width: 0;
}
.footer__top .icon {
  left: 50%;
  margin: 1em 0 0 -0.5em;
  position: absolute;
  top: 50%;
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}

.footer__widget__title {
  border-bottom: 1px solid #959faa;
  cursor: pointer;
  font-family: "HelveticaNeueW02-67MdCn_694060", sans-serif;
  font-size: 1.5rem;
  margin: -0.5em 0 0;
  padding: 0.25em 0;
}
.footer__widget__title .icon {
  float: right;
  font-size: 1.125rem;
  margin: 0.54em 0 0 1em;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.footer__widget__title.js-drop--active {
  margin-bottom: 0.5em;
}
.footer__widget__title.js-drop--active .icon {
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}

.js-drop--active + .footer__widget__group {
  display: block;
}

/*
 *  Pieces/Layout: Page
 *______________________*/
/*
 *  Bullshit File
 *_______________________*/
.legacyCss img {
  display: inline-block;
}
.legacyCss li + li {
  margin-top: 0 !important;
}
.legacyCss li:before {
  background: #fbb900 !important;
}
.legacyCss p + ul {
  margin-top: -1.25rem;
  margin-bottom: 0;
}
.legacyCss .table-wrap {
  margin: 1.875rem 0 !important;
}
.legacyCss .table--alt {
  width: 100%;
}
.legacyCss .bestelltab {
  width: 100%;
}
.legacyCss .bestelltab tr:first-child {
  border-bottom: 2px solid #fbb900;
}
.legacyCss .bestelltab tr:nth-child(even) {
  background: #f4f5f7;
}
.legacyCss .texttab th {
  font-weight: 400;
}
.legacyCss .transtab td {
  padding: 0 1.25rem 0 0;
}

/*
 *  Utility: Objects
 *______________________*/
.ob-offline {
  outline: 2px dashed red;
}

.ob-border {
  border: 1px solid #cacfd3;
}

.ob-flt-r {
  float: right;
}

.ob-box-right {
  display: table;
  margin-right: 0;
  margin-left: auto;
}

.ob-box-narrow {
  max-width: 55rem;
}

.ob-box-wide {
  max-width: 75rem;
}

.ob-box-center {
  margin-right: auto;
  margin-left: auto;
}

.ob-clear:after, .grid:after {
  clear: both;
  content: " ";
  display: table;
}

.ob-container > :first-child {
  margin-top: 0;
}
.ob-container > :last-child {
  margin-bottom: 0;
}

.ob-inline {
  display: inline;
  width: auto;
}

.ob-box-padded {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
}

.ob-rel {
  position: relative;
}

.ob-rounded {
  border-radius: 3px;
}

.ob-circle {
  border-radius: 50%;
}

/*
 *  Utility: Box Model
 *______________________*/
.bx-top-0 {
  margin-top: 0 !important;
}

.bx-bot-0 {
  margin-bottom: 0 !important;
}

.bx-top-xs {
  margin-top: 0.625rem !important;
}

.bx-top-xs-n {
  margin-top: -0.625rem !important;
}

.bx-bot-xs {
  margin-bottom: 0.625rem !important;
}

.bx-top-s {
  margin-top: 1.25rem !important;
}

.bx-top-s-n {
  margin-top: -1.25rem !important;
}

.bx-left-s {
  margin-left: 1.25rem !important;
}

.bx-bot-s {
  margin-bottom: 1.25rem !important;
}

.bx-top-m {
  margin-top: 1.875rem !important;
}

.bx-bot-m {
  margin-bottom: 1.875rem !important;
}

.bx-top-l {
  margin-top: 2.5rem !important;
}

.bx-bot-l {
  margin-bottom: 2.5rem !important;
}

.bx-top-xl {
  margin-top: 3.125rem !important;
}

.bx-bot-xl {
  margin-bottom: 3.125rem !important;
}

.bx-padl-0 {
  padding-left: 0 !important;
}

.bx-padr-0 {
  padding-right: 0 !important;
}

.bx-padt-0 {
  padding-top: 0 !important;
}

.bx-padt-l {
  padding-top: 2.5rem !important;
}

.bx-padb-l {
  padding-bottom: 2.5rem !important;
}

/*
 *  Utility: States
 *______________________*/
.is-hidden {
  display: none;
}

.is-fixed {
  position: fixed;
}

/*
 *  Utility: Text
 *______________________*/
.tx-center {
  text-align: center !important;
}

.tx-light {
  color: #fff !important;
}

.tx-dark {
  color: #2c3e50 !important;
}

.tx-highlight {
  color: #fab800 !important;
}

.tx-upper {
  text-transform: uppercase !important;
}

.tx-chubby {
  font-size: 1.25rem;
}
@media print {
  .tx-chubby {
    font-size: 1em;
  }
}

.tx-fat {
  font-family: "HelveticaNeueW02-67MdCn_694060", sans-serif;
  font-size: 1.625rem;
}
@media print {
  .tx-fat {
    font-size: 1.25em;
  }
}

.tx-mark {
  background: #fbb900;
  color: #fff;
  font-size: 0.75rem;
  line-height: 1;
  padding: 0.25em 0.4em;
}

/*
 *  Utility: Query
 *______________________*/
@media print {
  .hide-in-print {
    display: none !important;
  }
  a.link:after {
    content: " (" attr(href) ")";
    word-break: break-all;
  }
}
/* Must come last. */
/*
 *  Core: Media Queries
 *______________________

    Do not touch.

    Spit out all of the stored
    media query data.

*/
@media (min-width:320px) {
  .column--1-2-xxs {
    width: 50%;
  }
}
@media (min-width:400px) {
  .header--badge-special {
    position: absolute;
    top: 0;
    left: 10.375rem;
    display: inline-block;
    margin-top: 1.375rem;
  }
}
@media (max-width:479px) {
  .btn:not(.btn--toggle) {
    width: 100%;
  }
  .btn + .btn:not(.btn--toggle) {
    margin-top: 1em;
  }
  .cta-banner__content h3 {
    max-width: 60%;
  }
  .mq-hide-s {
    display: none;
  }
}
@media (min-width:480px) {
  p > .btn:not(:last-child) {
    margin-right: 1em;
  }
  .nav-overlay__header .icon {
    font-size: 2.25rem;
  }
  .cart-progress__item {
    width: 10%;
  }
  .cart-progress__item.is-active {
    width: 60%;
  }
  .cart-progress__label.is-active {
    display: inline-block;
  }
  .column--1-2-xs {
    width: 50%;
  }
  .column--1-3-xs {
    width: 33.33334%;
  }
  .header__widget__icon {
    font-size: 1.5rem;
  }
  .header--badge-special {
    left: 12.25rem;
  }
  .header--badge-special img {
    width: 66px;
  }
  .mq-show-s {
    display: none;
  }
}
@media (min-width:480px) and (max-width: 639px) {
  h1, .h1 {
    font-size: 2.5rem;
  }
  h2, .h2 {
    font-size: 2.125rem;
  }
  h3 {
    font-size: 1.75rem;
  }
  .nav-overlay__header {
    height: 5.25rem;
  }
  .banner--large {
    min-height: 15.625rem;
    height: 15.625rem;
  }
}
@media (min-width:480px) and (max-width: 839px) {
  .header__logo {
    width: 120px;
  }
  .banner--small {
    min-height: 9.375rem;
  }
  .cta-banner__content h3 {
    max-width: 80%;
  }
  .header__widget__icon {
    font-size: 2rem;
  }
}
@media (min-width:600px) {
  .world-map {
    display: block;
  }
}
@media (min-width:640px) and (max-width: 839px) {
  h1, .h1 {
    font-size: 2.75rem;
  }
  h2, .h2 {
    font-size: 2.375rem;
  }
  h3 {
    font-size: 2rem;
  }
  h4, .legacyCss h2 {
    font-size: 1.5rem;
  }
  h5 {
    font-size: 1.375rem;
  }
  h6 {
    font-size: 1.25rem;
  }
  .box--pad-l {
    padding: 1.25rem;
  }
  .field {
    margin-bottom: 1.875rem;
  }
  .nav-overlay__header {
    height: 5.375rem;
  }
  .banner--large {
    min-height: 21.875rem;
    height: 21.875rem;
  }
  .cta-banner__graphic {
    font-size: 2rem;
  }
  .accordion__toggle .icon {
    top: 1.25rem;
  }
  .block--obj-teaser .media__obj {
    margin-top: -5rem;
    margin-bottom: -5rem;
  }
  .block--padded {
    padding: 3.75rem 0;
  }
  .block--padded--bottom-small {
    padding-bottom: 1.875rem;
  }
  .block--obj-teaser {
    padding: 1.875rem 0;
    margin: 5.625rem 0;
  }
  .block--obj-teaser-vcenter {
    padding: 1.875rem 0;
    margin: 5.625rem 0;
  }
  .block--blank + .block--obj-teaser {
    margin-top: 1.875rem;
  }
  .block--obj-teaser + .block--blank {
    padding-top: 0;
  }
}
@media (min-width:640px) and (max-width: 939px) {
  .cta-link:nth-child(3n+1) {
    background: #ebebeb;
  }
}
@media (max-width:639px) {
  .inline__secondary {
    margin-top: 0.625rem;
  }
  .catalog-link__img {
    display: none;
  }
  .cta-link:nth-child(odd) {
    background: #ebebeb;
  }
  .block--obj-teaser .media__obj img {
    width: 300px;
    margin-left: auto;
    margin-right: auto;
  }
  .footer__widget__group {
    margin-bottom: 2.5rem;
  }
  .mq-hide-m {
    display: none;
  }
}
@media (min-width:640px) {
  .image--inline {
    float: left;
    margin: 0.3em 1em 0 0;
    max-width: 50%;
    padding-right: 1em;
  }
  .box--pad-m {
    padding: 1.25rem;
  }
  .inline > div {
    float: left;
  }
  .inline__primary {
    width: 70%;
  }
  .inline__secondary {
    padding-left: 1.875rem;
    width: 30%;
  }
  .btn--tiny {
    min-width: 6.25rem;
  }
  .btn--small {
    min-width: 10rem;
  }
  .btn--medium {
    font-size: 1rem;
    min-width: 10rem;
    padding: 0.725em 1em;
  }
  .field--fat {
    padding: 0.9375rem;
  }
  .slogan {
    display: block;
  }
  .quote {
    padding-left: 6.25rem !important;
  }
  .quote__content:before {
    color: #caced2;
    font-size: 6.66667em;
    left: -0.65em;
    position: absolute;
    top: -0.1em;
  }
  .title__text {
    float: left;
    margin: 0 0.875rem 0 0;
    max-width: 75%;
  }
  .title__obj {
    float: right;
    max-width: 25%;
  }
  .banner--large-dark .banner__content .banner__headline {
    font-size: 3.375rem;
  }
  .banner--large-dark .banner__logo {
    width: 208px;
    top: 40px;
    right: 40px;
  }
  .slider__headline {
    padding: 30px 20px;
  }
  .slider__pagination {
    padding: 16px 30px;
  }
  .catalog-link__content {
    padding-left: 4.75rem;
  }
  .tab__toggles {
    border-width: 0 0 2px;
    border-bottom-color: #fbb900;
    box-shadow: none;
    margin: 0;
    text-align: center;
  }
  .tab__toggles a {
    border: solid #fbb900;
    border-width: 1px 1px 0;
    border-radius: 7px 7px 0 0;
    margin-right: 1.25rem;
  }
  .tab__toggles a:hover, .tab__toggles .is-active a {
    background: #fbb900;
  }
  .tab__toggles .is-active a {
    padding-top: 1rem;
  }
  .tab__toggle {
    border: 0;
    display: table-cell;
  }
  .cart-progress__item {
    width: 15%;
  }
  .cart-progress__item.is-active {
    width: 40%;
  }
  .popup {
    left: 50%;
    margin-left: -20rem;
  }
  .popup__header {
    padding: 0.625rem 0 0.625rem 2.5rem;
  }
  .popup__close .icon {
    font-size: 0.75rem;
  }
  .popup__content {
    padding: 1.75rem 2.5rem;
  }
  .message {
    padding-left: 6.25rem;
  }
  .service-teaser__icon {
    font-size: 4rem;
    margin: -2rem 0 0 -2rem;
  }
  .media__obj {
    float: left;
    margin-right: 1.25rem;
    margin-bottom: 0;
    max-width: 30%;
  }
  .block--obj-teaser .media__obj {
    margin-right: 2.5rem;
  }
  .block--obj-teaser-vcenter .media__obj {
    background: none;
    margin: 0 2.5rem 0 0;
    width: 30%;
  }
  .block--obj-teaser-vcenter .media__obj img {
    margin: 0;
    width: 100%;
  }
  .column--1-2-s {
    width: 50%;
  }
  .column--1-3-s {
    width: 33.33334%;
  }
  .column--1-4-s {
    width: 25%;
  }
  .column--1-5-s {
    width: 20%;
  }
  .column--1-6-s {
    width: 16.6666666667%;
  }
  .header--badge-special {
    left: 23.80875rem;
  }
  .footer__widget__title {
    margin-bottom: 2.5rem;
  }
  .footer__widget {
    margin-bottom: 2.5rem;
  }
  .ob-first {
    float: left;
    padding-right: 1.5em;
    text-align: right;
    width: 35%;
  }
  .ob-second {
    float: left;
    max-width: 65%;
    width: 65%;
  }
  .mq-show-m {
    display: none;
  }
}
@media (min-width: 720px) {
  .header--badge-special {
    left: 24.43375rem;
  }
}
@media (max-width:767px) {
  .mq-hide-l {
    display: none;
  }
}
@media (min-width:768px) {
  .link--large__meta {
    float: right;
    margin-bottom: 0;
    margin-left: 2em;
  }
  .slider__headline {
    padding: 30px;
  }
  .slider-box-wide {
    width: 40rem;
  }
  .slider__pagination {
    display: inline-block;
    background: none;
  }
  .carousel__items img {
    width: 100%;
  }
  .cart-widget__popup {
    display: none;
  }
  .column--1-2-m {
    width: 50%;
  }
  .column--1-3-m {
    width: 33.33334%;
  }
  .column--1-4-m {
    width: 25%;
  }
  .column--1-5-m {
    width: 20%;
  }
  .column--1-6-m {
    width: 16.6666666667%;
  }
  .mq-show-l {
    display: none;
  }
}
@media (max-width:839px) {
  .mq-hide-xl {
    display: none;
  }
}
@media (min-width:840px) {
  h1, .h1 {
    font-size: 3.125rem;
  }
  h2, .h2 {
    font-size: 2.75rem;
  }
  h3 {
    font-size: 2.25rem;
  }
  h4, .legacyCss h2 {
    font-size: 1.625rem;
  }
  h5 {
    font-size: 1.5rem;
  }
  h6 {
    font-size: 1.375rem;
  }
  .box--pad-l {
    padding: 2.5rem;
  }
  .btn--medium {
    min-width: 12.5rem;
  }
  .field {
    margin-bottom: 2.5rem;
  }
  .header__logo {
    width: 140px;
  }
  .nav-overlay__header {
    height: 5.75rem;
  }
  .banner--small {
    min-height: 12.5rem;
  }
  .banner--large {
    min-height: 25rem;
    height: 25rem;
  }
  .cta-banner__content {
    padding: 0 6.25% 0 12.5%;
  }
  .cta-banner__graphic {
    font-size: 3rem;
    left: 0;
    margin-left: -2em;
  }
  .accordion__toggle .icon {
    top: 1.375rem;
  }
  .catalog-teaser {
    background: #eee url("diamonds-catalog.svg") no-repeat right 0;
    background-size: contain;
  }
  .catalog-teaser__img {
    float: left;
    margin-right: 1.875rem;
    max-height: 100%;
    max-width: 30%;
    width: auto;
  }
  .world-map__tooltip {
    display: block;
  }
  .block--obj-teaser .media__obj {
    margin-top: -6.25rem;
    margin-bottom: -6.25rem;
  }
  .block--obj-teaser-vcenter .media__obj {
    max-width: 22.125rem;
  }
  .block--obj-teaser-vcenter .media__obj img {
    max-width: 22.125rem;
  }
  .column--1-2-l {
    width: 50%;
  }
  .column--1-3-l {
    width: 33.33334%;
  }
  .column--1-4-l {
    width: 25%;
  }
  .column--1-5-l {
    width: 20%;
  }
  .column--1-6-l {
    width: 16.6666666667%;
  }
  .block--padded {
    padding: 5rem 0;
  }
  .block--padded--bottom-small {
    padding-bottom: 2.5rem;
  }
  .block--obj-teaser {
    padding: 2.5rem 0;
    margin: 7.5rem 0;
  }
  .block--obj-teaser-vcenter {
    padding: 2.5rem 0;
    margin: 7.5rem 0;
  }
  .block--blank + .block--obj-teaser {
    margin-top: 2.5rem;
  }
  .block--obj-teaser + .block--blank {
    padding-top: 0;
  }
  .header--badge-special {
    left: 26.18375rem;
  }
  .footer {
    padding-top: 3em;
    padding-bottom: 2em;
  }
  .footer__top {
    border-color: #fbb900 transparent transparent transparent;
    border-width: 2.5em 2.5em 0;
    margin-right: 0;
    right: 0;
    top: -3em;
  }
  .footer__top .icon {
    bottom: 50%;
    margin: 0 0 1em -0.5em;
    top: auto;
  }
  .mq-show-xl {
    display: none;
  }
}
@media (min-width:840px) and (max-width: 939px) {
  .slogan {
    margin-top: 2.75rem;
  }
}
@media (min-width:840px) and (max-width: 1009px) {
  .header__widget__icon {
    font-size: 2.25rem;
  }
}
@media (max-width:939px) {
  .mq-hide-xxl {
    display: none;
  }
}
@media (min-width:940px) {
  .nav-overlay {
    display: none;
  }
  .nav-social a {
    margin-right: 0.5em;
    margin-left: 0.5em;
  }
  .carousel__items {
    margin-right: 2.5rem;
  }
  .carousel__bullets {
    margin-right: 2.5rem;
  }
  .cart-widget .icon {
    font-size: 1.75rem;
    margin: 0 0.25em 0 0.5em;
  }
  .no-touchevents .login-widget:hover .login-widget__dropdown {
    display: block;
  }
  .cta-link:nth-child(odd) {
    background: #ebebeb;
  }
  .column--1-2-xl {
    width: 50%;
  }
  .column--2-3-xl {
    width: 66.66666%;
  }
  .column--1-3-xl {
    width: 33.33334%;
  }
  .column--1-4-xl {
    width: 25%;
  }
  .column--1-5-xl {
    width: 20%;
  }
  .column--1-6-xl {
    width: 16.6666666667%;
  }
  .sidebar, .sidebar + .content {
    display: inline-block;
    margin-right: -4px;
    vertical-align: top;
  }
  .sidebar {
    padding-right: 20px;
    width: 17.5rem;
  }
  .sidebar + .content {
    margin-left: 20px;
    width: calc(100% - 18.75rem);
  }
  .sidebar__widget {
    border: 0;
    box-shadow: none;
    margin: 0;
    padding: 0;
  }
  .page {
    display: block;
    position: static;
  }
  .mq-show-xxl {
    display: none;
  }
}
@media (min-width:960px) {
  .banner--large-dark .banner__content .banner__headline {
    font-size: 5rem;
  }
  .banner--large-dark .banner__logo {
    width: 280px;
  }
  .slider__content__width {
    max-width: 48.75rem;
  }
  .slider-box-wide {
    width: 48.75rem;
  }
  .slider__pagination .swiper-pagination {
    display: inline-block;
  }
}
@media (max-width:1009px) {
  .search-form {
    background: #626e7c;
    margin-left: 0 !important;
    padding: 0.5rem;
    position: absolute;
    width: 100%;
  }
  .mq-hide-xxxl {
    display: none;
  }
}
@media (min-width:1010px) {
  .header__logo {
    margin: 2.25rem 0 1.5rem;
  }
  .slogan {
    margin-top: 3.25rem;
  }
  .nav-desktop {
    display: block;
  }
  .search-form .field--dark {
    min-width: 22.5rem;
  }
  .nav-toggle-widget {
    display: none;
  }
  .column--1-2-xxl {
    width: 50%;
  }
  .column--1-3-xxl {
    width: 33.33334%;
  }
  .column--1-4-xxl {
    width: 25%;
  }
  .column--1-5-xxl {
    width: 20%;
  }
  .column--1-6-xxl {
    width: 16.6666666667%;
  }
  .header__widgets {
    padding-bottom: 0;
  }
  .header__widgets__section--right {
    margin-top: 0.625rem;
  }
  .header__widgets__section--right .header__widget {
    margin-right: 0;
    margin-left: 1.875rem;
  }
  .header__widgets__group {
    display: block;
  }
  .header__widgets__group + .header__widgets__group {
    margin-top: 1rem;
  }
  .header__widget {
    vertical-align: middle;
  }
  .header__widget__icon {
    font-size: 1.125rem;
  }
  .header--badge-special {
    margin-top: 36px;
    left: 22.2525rem;
  }
  .header--badge-special img {
    width: 80px;
  }
  .ob-rel-1010 {
    position: relative;
  }
}
@media (max-width:1219px) {
  .mq-hide-huge {
    display: none;
  }
}
@media (min-width:1220px) {
  .cart-progress__item {
    width: 20%;
  }
  .cart-progress__item.is-active {
    width: 20%;
  }
  .cart-progress__label {
    display: inline-block;
  }
  .teaser__asset {
    bottom: 2.5rem;
    left: 2.5rem;
    right: 2.5rem;
  }
  .header--badge-special {
    left: 23.19rem;
  }
}
@media (max-width:1359px) {
  .mq-hide-xhuge {
    display: none;
  }
}

.kontact-subject {
  display: none;
}