/*
 *  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; }

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; }

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: -.1em; }

h1:after, h2:after, h3:after {
  margin-bottom: -.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; }

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; }

h1 {
  margin: 0 0 2.5rem; }

h2,
.h2 {
  font-size: 1.875rem; }

h2 {
  margin: 3.125rem 0 1.875rem; }

h3,
h4,
.legacyCss h2,
h5 {
  margin: 2.5rem 0 1.25rem; }

h3 {
  font-size: 1.5rem; }

h4, .legacyCss h2 {
  font-size: 1.375rem; }

h5 {
  font-size: 1.25rem; }

h6 {
  font-size: 1.125rem;
  margin: 1.875rem 0 0; }
  h6 + * {
    margin-top: 10px !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; }

.image--narrow {
  max-width: 27.5rem; }

.image--large {
  min-width: 5.625rem;
  margin: 2.5rem; }

/*
 *  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); }

.box--fill {
  background-color: #eee; }

.box--fill-dark {
  background-color: #dfdfdf; }

.box--highlight {
  border-top: 2px solid #fbb900; }

.box--forward {
  background-image: url("box-arrow.svg");
  background-repeat: no-repeat;
  background-size: auto 100%; }

.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 .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: 237em 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; }

.icon--arrow--blue, .facet__toggle:hover .icon {
  background-position: -6em 0; }

.icon--arrow--dark, .pagination__control:hover .icon--arrow--yellow, .link:hover .icon--arrow--blue, .slider__link:hover .icon, .no-touchevents .accordion__toggle:hover .icon {
  background-position: -8em 0; }

.icon--arrow--yellow {
  background-position: -10em 0; }

.icon--arrow--white, .no-touchevents .nav-desktop__title:hover .icon--arrow--dark, .btn--diamond:hover .icon--arrow--yellow, .nav-desktop__title.is-active .icon {
  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; }

.icon--attention, .popup--error .popup__icon {
  background-position: -40em 0; }

.icon--tick--green, .popup--success .popup__icon {
  background-position: -42em 0; }

.icon--info--blue, .popup--info .popup__icon {
  background-position: -44em 0; }

input[type="checkbox"]:checked + .check .icon {
  background-position: -48em 0; }

.icon--write, a:hover .icon--write--blue {
  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; }

a:hover .icon--cross, .icon--cross--yellow {
  background-position: -94em 0; }

.icon--cross {
  background-position: -96em 0; }

.icon--cross--blue, .popup__close:hover .icon--cross-fat {
  background-position: -98em 0; }

a:hover .icon--cross--blue, .icon--cross-fat {
  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--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--primary, input[type="submit"], .btn--secondary:hover, .btn--secondary:focus, .btn--secondary:active, .btn--toggle:hover, .btn--toggle.is-active {
  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 .1s, color .1s; }
  .btn .icon {
    font-size: 1.5em;
    margin: -1px .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: .575em 1em; }

.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
 *______________________*/
input,
select,
textarea, .check {
  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 input, .field--error
select, .field--error
textarea, .field--error .check {
  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; }
  .check .icon {
    background-color: #fff;
    border: 1px solid #fbb900;
    font-size: 1.125em;
    left: .575em;
    position: absolute;
    top: .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; }
  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: .75em;
    position: absolute;
    right: 1.2em;
    top: 1.2em; }

/*
 *  Bits: Indicator
 *______________________*/
.indicator {
  background: #ccc;
  display: inline-block;
  font-size: 1.125rem;
  height: 1em;
  margin-right: .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: -.25em;
    padding: .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: .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: .5em .8em; }
  .link--pill:hover {
    background: #2c3e50;
    color: #fff; }
  .link--pill .icon {
    font-size: inherit;
    margin-right: 1em;
    top: .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: .55em;
  height: .5em;
  width: .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: .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: '\201C';
    font-style: normal;
    line-height: 1; }
  .quote__content:after {
    content: '\201D'; }

.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: .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: .4em;
    top: .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: .75em; }

/*
 *  Pieces/UI: Nav-Desktop
 *______________________*/
.nav-desktop {
  background: #626e7c;
  display: none;
  position: relative;
  z-index: 1; }
  .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: .5em;
    font-size: 0.875rem;
    left: 50%;
    margin-left: -.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: .5em; }
  .megamenu__title .icon {
    margin-right: .75em;
    vertical-align: text-top; }

.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 .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 .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); }

.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: -.5em;
    position: relative;
    top: 50%; }

.nav-overlay__link {
  font-weight: 700;
  padding: .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: .5em .2em 0;
    width: 1.66667em; }
  .nav-social .icon {
    margin: .33334em; }

.nav-meta {
  font-size: 0.875rem;
  text-align: center; }
  .nav-meta.header__widget {
    margin-right: -.75em; }
  .nav-meta a:not(:first-child) {
    padding-left: .5em; }
  .nav-meta a:not(:last-child) {
    border-right: 1px solid #fff;
    padding-right: .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%; }

.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__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%; }
  .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; }

/*
 *  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; }

.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 -.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 .5em;
    position: relative;
    top: .15em; }

/*
 *  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 .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--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%; }

.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 .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%; }

.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; }

.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 .2s;
  transition: transform .2s;
  width: 100%;
  z-index: 5; }
  .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 .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: 8000px;
    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 .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: -.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 .2s, color .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: .5em;
  left: 1em;
  margin-bottom: 0;
  min-height: 2em;
  position: absolute;
  right: 1em; }

.catalog-teaser {
  border-top: 6px solid #2c3e50;
  position: relative; }

.catalog-teaser__img {
  width: 100%; }

.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 .25s;
  transition: opacity .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%; }
  .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; }

/*
 *  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: -.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--blank + .block--blank {
  padding-top: 0; }

.block--light {
  background: #ebebeb; }

.block--dark {
  background: #2c3e50;
  color: #fff; }

.block__bg {
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%); }

.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; }

/*
 *  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: 2; }
  .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; }

.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; }

.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 -.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: -.5em 0 0;
  padding: .25em 0; }
  .footer__widget__title .icon {
    float: right;
    font-size: 1.125rem;
    margin: .54em 0 0 1em;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg); }
  .footer__widget__title.js-drop--active {
    margin-bottom: .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; }

.tx-fat {
  font-family: "HelveticaNeueW02-67MdCn_694060", sans-serif;
  font-size: 1.625rem; }

.tx-mark {
  background: #fbb900;
  color: #fff;
  font-size: 0.75rem;
  line-height: 1;
  padding: .25em .4em; }

/*
 *  Utility: Query
 *______________________*/
/* Must come last. */
/*
 *  Core: Media Queries
 *______________________

    Do not touch.

    Spit out all of the stored
    media query data.

*/
@media screen and (min-width: 320px) {
  .column--1-2-xxs {
    width: 50%; } }

@media screen and (min-width: 400px) {
  .header--badge-special {
    position: absolute;
    top: 0;
    left: 10.375rem;
    display: inline-block;
    margin-top: 1.375rem; } }

@media screen and (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 screen and (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 screen and (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 screen and (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 screen and (min-width: 600px) {
  .world-map {
    display: block; } }

@media screen and (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--padded {
    padding: 3.75rem 0; } }

@media screen and (min-width: 640px) and (max-width: 939px) {
  .cta-link:nth-child(3n+1) {
    background: #ebebeb; } }

@media screen and (max-width: 639px) {
  .inline__secondary {
    margin-top: 0.625rem; }
  .catalog-link__img {
    display: none; }
  .cta-link:nth-child(odd) {
    background: #ebebeb; }
  .footer__widget__group {
    margin-bottom: 2.5rem; }
  .mq-hide-m {
    display: none; } }

@media screen and (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%; }
  .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%; }
  .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.66667%; }
  .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 screen and (min-width: 720px) {
  .header--badge-special {
    left: 24.43375rem; } }

@media screen and (max-width: 767px) {
  .mq-hide-l {
    display: none; } }

@media screen and (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.66667%; }
  .mq-show-l {
    display: none; } }

@media screen and (max-width: 839px) {
  .mq-hide-xl {
    display: none; } }

@media screen and (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; }
  .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.66667%; }
  .block--padded {
    padding: 5rem 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 screen and (min-width: 840px) and (max-width: 939px) {
  .slogan {
    margin-top: 2.75rem; } }

@media screen and (min-width: 840px) and (max-width: 1009px) {
  .header__widget__icon {
    font-size: 2.25rem; } }

@media screen and (max-width: 939px) {
  .mq-hide-xxl {
    display: none; } }

@media screen and (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.66667%; }
  .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 screen and (min-width: 960px) {
  .slider__content__width {
    max-width: 48.75rem; }
  .slider-box-wide {
    width: 48.75rem; }
  .slider__pagination .swiper-pagination {
    display: inline-block; } }

@media screen and (max-width: 1009px) {
  .search-form {
    background: #626e7c;
    margin-left: 0 !important;
    padding: 0.5rem;
    position: absolute;
    width: 100%; }
  .mq-hide-xxxl {
    display: none; } }

@media screen and (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.66667%; }
  .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 screen and (max-width: 1219px) {
  .mq-hide-huge {
    display: none; } }

@media screen and (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 screen and (max-width: 1359px) {
  .mq-hide-xhuge {
    display: none; } }

.kontact-subject {
  display: none;
}
