@charset "UTF-8";
.account-page {
  display: flex;
}
@media all and (max-width: 60em) {
  .account-page {
    flex-direction: column;
  }
}
.account-page .table-title {
  box-sizing: border-box;
  padding: 8px;
  min-width: 500px;
}
.account-page .table-title span {
  font-size: 18px;
}
.account-page ul li {
  list-style: none;
  padding: 8px;
}
.account-page ul li:nth-child(2n) {
  background: #F9F9F9;
}
.account-page ul li a {
  text-decoration: none;
  width: 100%;
}
.account-page ul li a:hover {
  text-decoration: underline;
}
.account-page ul li a.active {
  font-weight: 700;
}
.account-page ul li a span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.account-page ul li a.inactive {
  cursor: default;
  pointer-events: none;
  text-decoration: none;
  color: grey;
}
.account-page form {
  float: none;
}
.account-page form .checkbox {
  margin: 14px 0;
  display: inline-block;
  width: 100%;
}
.account-page .account-nav {
  min-width: 300px;
  background: #F9F9F9;
  box-sizing: border-box;
  padding: 20px 20px 40px;
}
.account-page .account-nav ul {
  list-style-type: none;
}
.account-page .account-nav ul li {
  padding: 0;
  margin: 1em 0;
}
.account-page .account-nav ul li.title {
  font-size: 1.2rem;
  display: block;
  margin-bottom: 1.5em;
}
.account-page .account-nav ul li.title .name {
  font-weight: bold;
}
.account-page .account-nav ul li.title .email, .account-page .account-nav ul li.title .contact-name {
  margin-top: 0.5em;
  font-size: 0.9rem;
}
.account-page .account-nav ul li a {
  font-size: 1rem;
  text-decoration: none;
}
.account-page .account-nav ul li a:hover {
  text-decoration: underline;
}
.account-page .account-nav ul li a.active {
  font-weight: 700;
}
.account-page .account-content {
  padding: 2em;
  flex: 1;
}
@media all and (max-width: 30em) {
  .account-page .account-content {
    padding: 5px 0 0 0;
  }
}
.account-page .account-content h1 {
  margin-bottom: 1em;
}
.account-page .price-on-demand {
  display: none;
}

.account-nav {
  float: left;
  width: 300px;
  background: var(--background_color_1);
  box-sizing: border-box;
  padding: 40px 20px;
}
.account-nav ul {
  float: left;
  width: 100%;
  list-style-type: none;
}
.account-nav ul li {
  float: left;
  width: 100%;
  padding: 0;
  margin: 5px 0;
}
.account-nav ul li a {
  float: left;
  width: 100%;
  text-decoration: none;
  color: var(--primary_text_color);
}
.account-nav ul li a:hover {
  text-decoration: underline;
  color: var(--primary_theme_color);
}
.account-nav ul li a.active {
  color: var(--primary_theme_color);
  font-family: var(--font_family_2);
  font-weight: normal;
}

.account-block {
  float: right;
  width: calc(100% - 300px);
  box-sizing: border-box;
  padding: 40px;
  background: var(--background_color_1);
}

table.table {
  width: 100%;
  position: relative;
  border-spacing: 0;
  margin-bottom: 25px;
}
table.table th {
  background: black;
  color: white;
}
table.table tr:nth-of-type(even) td {
  background: rgba(211, 211, 211, 0.3);
}
table.table th, table.table td {
  min-width: 75px;
  text-align: left;
  padding: 5px 10px 5px 10px;
  vertical-align: top;
  line-height: 1.4em;
  border-bottom: 1px solid #ddd;
}
table.table tr.grouping td, table.table tr.grouping th {
  color: #0a74a6;
  font-weight: bold;
  border-bottom: 1px dotted #aaa;
}
table.table .table__code {
  white-space: nowrap;
}
table.table .table__actions {
  min-width: initial;
}
table.table .table__flex-end {
  display: flex;
  justify-content: flex-end;
}

table .table__actions a {
  text-decoration: none;
}
table .table__actions i {
  font-size: 1.5rem;
  color: black;
  margin-left: 0.5rem;
}
table .table__actions i:hover {
  color: orange;
}

div.feedback {
  float: left;
  width: 100%;
  padding: 15px 0;
  text-align: center;
  color: var(--secondary_text_color);
  background: var(--success_color);
  margin-bottom: 25px;
}
@media all and (max-width: 75em) {
  div.feedback {
    margin-bottom: 5px;
  }
}

a.feedback {
  float: left;
  width: 100%;
  padding: 15px 0;
  font-size: 1.1rem;
  text-align: center;
  text-decoration: none;
  color: var(--secondary_text_color);
  background: var(--success_color);
  margin-bottom: 25px;
}
a.feedback:hover {
  color: var(--secondary_text_color);
  background: var(--error_color);
}

.web-users-block ul li a,
.sales-orders-block ul li a,
.sales-invoices-block ul li a {
  text-decoration: none;
  width: 100%;
}
.web-users-block ul li a:hover,
.sales-orders-block ul li a:hover,
.sales-invoices-block ul li a:hover {
  text-decoration: underline;
}
.web-users-block ul li a.active,
.sales-orders-block ul li a.active,
.sales-invoices-block ul li a.active {
  font-weight: 700;
}
.web-users-block ul li a span,
.sales-orders-block ul li a span,
.sales-invoices-block ul li a span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.web-users-block .inactive,
.sales-orders-block .inactive,
.sales-invoices-block .inactive {
  cursor: default;
  pointer-events: none;
  text-decoration: none;
  color: grey;
}

.sales-orders-block h1,
.sales-invoices-block h1 {
  margin-bottom: 20px;
}
.sales-orders-block .table-title,
.sales-invoices-block .table-title {
  box-sizing: border-box;
  padding: 8px;
  min-width: 700px;
}
.sales-orders-block .table-title span,
.sales-invoices-block .table-title span {
  font-size: 18px;
}
.sales-orders-block div.feedback,
.sales-invoices-block div.feedback {
  float: none;
}
.sales-orders-block ul,
.sales-invoices-block ul {
  margin-bottom: 10px;
  max-height: 500px;
  min-width: 700px;
}
.sales-orders-block ul li,
.sales-invoices-block ul li {
  list-style: none;
  padding: 8px;
}
.sales-orders-block ul li:nth-child(2n),
.sales-invoices-block ul li:nth-child(2n) {
  background: #F9F9F9;
}
.sales-orders-block ul li div,
.sales-invoices-block ul li div {
  width: 100%;
}
.sales-orders-block form,
.sales-invoices-block form {
  float: none;
  margin: 40px 0 80px;
}
.sales-orders-block form .checkbox,
.sales-invoices-block form .checkbox {
  margin: 14px 0;
  display: inline-block;
  width: 100%;
}

.favorites h2 {
  margin-bottom: 20px;
  margin-top: 20px;
}
.favorites ul {
  list-style-type: none;
}
.favorites li {
  margin-bottom: 10px;
}
.favorites a {
  color: inherit;
  text-decoration: none;
}
.favorites a:hover {
  text-decoration: underline;
}
.favorites p {
  margin-bottom: 20px;
}

.period-search * {
  display: inline-block;
}
.period-search .period-links {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 15px;
  float: right;
}
.period-search .period-link {
  float: right;
  min-width: 120px;
}
.period-search .period-link a {
  color: #000;
  margin-left: 5px;
}

.serial-number__service-orders-button {
  cursor: pointer;
}

th.table__product-price {
  text-align: center !important;
}

td.table__product-price {
  text-align: right !important;
  white-space: nowrap;
}

.company-fields {
  margin-top: 15px;
}

.account-page .serial-numbers-block table.specs td {
  border-bottom: none;
}
.account-page .serial-numbers-block table.specs td.label {
  font-style: italic;
}
.account-page .serial-numbers-block .serial-number__cell {
  display: flex;
}
.account-page .serial-numbers-block .serial-number__service-orders-label {
  flex: 1;
}
.account-page .serial-numbers-block .serial-number__service-orders-button {
  display: inline-block;
  margin-left: 0.5rem;
}
.account-page .serial-numbers-block .serial-number__service-orders-row {
  display: none;
}
.account-page .serial-numbers-block .serial-number__service-orders-target {
  padding: 20px;
}
.account-page .serial-numbers-block .serial-number__table {
  margin-bottom: 0;
}
.account-page .serial-numbers-block .serial-number__specs {
  margin-bottom: 10px;
}

.alert {
  --text_color: var(--secondary_text_color);
  --hover_background_color: black;
  --background_color_nav: var(--primary_theme_color);
  color: var(--text_color);
  background: var(--background_color_nav);
  font-size: 15px;
  font-weight: bold;
  float: left;
  width: 100%;
  box-sizing: border-box;
  padding: 11px 20px;
  line-height: 1.2em;
  text-align: center;
}
.alert a {
  color: var(--text_color);
}
.alert a:hover {
  color: var(--hover_background_color);
}
.alert p {
  word-break: break-word;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.autocomplete-suggestions {
  border: 1px solid var(--primary-theme-color, #DDD);
  background: #FFF;
  overflow: auto;
  margin-top: 0.5em;
}
.autocomplete-suggestions .autocomplete-suggestion {
  padding: 0.2em;
  display: flex;
  cursor: pointer;
}
.autocomplete-suggestions .autocomplete-suggestion .autocomplete-name {
  padding: 0.5em;
  flex: 1;
}
.autocomplete-suggestions .autocomplete-suggestion .autocomplete-image {
  flex-basis: 100px;
  height: 60px;
  margin-left: 0.5em;
  display: flex;
  justify-content: center;
}
.autocomplete-suggestions .autocomplete-suggestion .autocomplete-image img {
  height: 100%;
  max-width: 100%;
  width: auto;
  object-fit: contain;
}
.autocomplete-suggestions .autocomplete-selected {
  background: var(--background_color_1, #f6f6f6);
}
.autocomplete-suggestions .autocomplete-suggestions strong {
  font-weight: normal;
  color: #3399FF;
}
.autocomplete-suggestions .autocomplete-group {
  padding: 2px 5px;
}
.autocomplete-suggestions .autocomplete-group strong {
  display: block;
  border-bottom: 1px solid #000;
}

.cart-steps {
  --font_family: var(--font_family_2);
  --text_color: var(--primary_text_color);
  --background_color_nav: var(--transparent_1);
  --step_color: black;
  --step_text_color: var(--secondary_text_color);
  --active_step_color: var(--primary_theme_color);
  --active_step_text_color: var(--primary_text_color);
  --active_step_background: rgba(157, 157, 157, 0.3);
  --link_color: var(--primary_theme_color);
  --link_hover_color: var(--primary_text_color);
  float: left;
  width: 100%;
  margin-top: 1em;
  margin-bottom: 15px;
  flex-wrap: wrap;
  justify-content: space-between;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}
@media all and (max-width: 60em) {
  .cart-steps span:nth-child(1),
.cart-steps span:nth-child(2) {
    margin-bottom: 15px;
  }
}
.cart-steps span {
  color: var(--text_color);
  background: var(--background_color_nav);
  font-family: var(--font_family);
  font-weight: normal;
  max-height: 59px;
  position: relative;
  float: left;
  box-sizing: border-box;
  padding: 20px 20px 20px 70px;
  margin-right: 10px;
}
.cart-steps span b {
  color: var(--step_text_color);
  background: var(--step_color);
  font-family: var(--font_family);
  font-weight: normal;
  position: absolute;
  top: 15px;
  left: 20px;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cart-steps span.active {
  color: var(--active_step_text_color);
  background: var(--active_step_background);
}
.cart-steps span.active b {
  color: var(--active_step_text_color);
  background: var(--active_step_color);
}
.cart-steps i {
  display: none;
}
.cart-steps a {
  color: var(--link_color);
  text-decoration: underline;
}
.cart-steps a:hover {
  color: var(--link_hover_color);
}

.cart-block {
  --background_color_nav: white;
  --border_color: var(--gray);
  border: 1px solid var(--border_color);
  background: var(--background_color_nav);
  float: left;
  width: 100%;
  padding: 20px;
  box-sizing: border-box;
}
@media all and (max-width: 75em) {
  .cart-block {
    padding: 15px;
  }
}
.cart-block table.cart {
  float: left;
  width: 100%;
}
@media all and (max-width: 75em) {
  .cart-block table.cart {
    margin-left: auto;
    margin-right: auto;
    padding-left: 10% !important;
    padding-right: 10% !important;
    padding-top: 2%;
    width: 100%;
    float: none;
  }
  .cart-block table.cart th {
    display: none;
  }
  .cart-block table.cart tr.table_header {
    display: none;
  }
  .cart-block table.cart tr {
    float: left;
    width: 100%;
    padding-bottom: 10px;
    box-sizing: border-box;
    border: 1px solid rgba(0, 46, 109, 0.2);
    margin-bottom: 10px;
  }
  .cart-block table.cart tr.noborder {
    margin-bottom: 0;
    border-bottom: 0;
    border-top: 1px solid rgba(0, 46, 109, 0.2);
    border-left: 1px solid rgba(0, 46, 109, 0.2);
    border-right: 1px solid rgba(0, 46, 109, 0.2);
  }
  .cart-block table.cart tr.error {
    background: rgba(0, 46, 109, 0.05);
    border-top: 0;
    border-bottom: 1px solid rgba(0, 46, 109, 0.2);
    border-left: 1px solid rgba(0, 46, 109, 0.2);
    border-right: 1px solid rgba(0, 46, 109, 0.2);
  }
  .cart-block table.cart tr.subtotal {
    padding: 10px 0;
  }
  .cart-block table.cart tr.total td {
    width: 50%;
  }
  .cart-block table.cart tr.total .right {
    text-align: right !important;
  }
  .cart-block table.cart tr:nth-child(even) {
    background: rgba(0, 46, 109, 0.05);
  }
  .cart-block table.cart td {
    float: left;
    width: 100%;
    box-sizing: border-box;
    padding: 5px 15px !important;
    border-bottom: none !important;
    text-align: left;
  }
  .cart-block table.cart td .product__price b, .cart-block table.cart td em {
    text-align: right;
  }
  .cart-block table.cart td .product__image {
    float: none !important;
    margin-top: 20px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    max-height: 200px;
  }
  .cart-block table.cart td .product__image img {
    float: none !important;
  }
  .cart-block table.cart .row__product {
    position: relative;
    padding-bottom: 0;
  }
  .cart-block table.cart .product-amount {
    float: left;
    width: auto;
  }
  .cart-block table.cart .product-amount .product__amount {
    width: auto;
  }
  .cart-block table.cart .line-price {
    float: right;
    width: auto;
  }
  .cart-block table.cart .product-image {
    background: white;
  }
  .cart-block table.cart .line-delete {
    position: initial;
    text-align: right !important;
    padding: 0 !important;
  }
  .cart-block table.cart .line-delete .delete {
    position: absolute;
    top: 13px;
    right: 13px;
  }
  .cart-block table.cart .hidemobile {
    display: none;
  }
}
@media all and (max-width: 60em) {
  .cart-block table.cart {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
.cart-block table.cart th {
  text-align: left;
  font-size: 17px;
  color: var(--primary_text_color);
  font-family: var(--font_family_3);
  font-weight: normal;
  padding: 10px 10px 25px;
  white-space: nowrap;
}
.cart-block table.cart th.right {
  text-align: right;
}
.cart-block table.cart td {
  padding: 10px;
  vertical-align: middle;
  position: relative;
  border-bottom: 1px solid var(--transparent_3);
}
.cart-block table.cart td .product__image {
  float: left;
  width: 125px;
  margin: 10px 25px 10px;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}
.cart-block table.cart td .product__image img {
  float: left;
  width: 100%;
}
.cart-block table.cart td span.product__label {
  position: absolute;
  left: 0;
  box-sizing: border-box;
  border-top-right-radius: 25px;
  border-bottom-right-radius: 25px;
  padding: 7px 15px 7px 10px;
  font-family: var(--font_family_2);
  font-weight: normal;
  font-size: 12px;
  color: var(--secondary_text_color);
  max-width: 190px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 28px;
}
.cart-block table.cart td span.product__label.topper {
  background: var(--primary_text_color);
  bottom: 10px;
  max-height: 40px;
}
.cart-block table.cart td span.product__label.sale {
  background: var(--error_color);
  top: 60px;
}
.cart-block table.cart td span.product__label.new {
  background: black;
}
.cart-block table.cart td .product__info {
  float: left;
  box-sizing: border-box;
  color: var(--primary_text_color);
}
.cart-block table.cart td .product__info strong {
  float: left;
  width: 100%;
  font-size: 20px;
  line-height: 1em;
  font-family: var(--font_family_2);
  font-weight: normal;
}
.cart-block table.cart td .product__info strong span {
  font-family: var(--font_family_1);
  font-weight: normal;
  font-size: 14px;
}
.cart-block table.cart td .product__info .article-number {
  color: var(--gray);
  font-size: 13px;
}
.cart-block table.cart td .product__info p {
  float: left;
  width: 100%;
  font-family: var(--font_family_2);
  font-weight: normal;
  font-size: 13px;
  margin-bottom: 10px;
  margin-top: 10px;
}
.cart-block table.cart td .product__info p span {
  float: left;
  width: 100%;
}
.cart-block table.cart td .product__info p span i {
  font-size: 10px;
  margin-right: 2px;
}
.cart-block table.cart td .product__price b {
  display: block;
  font-family: var(--font_family_3);
  font-weight: bold;
  font-size: 21px;
  line-height: 1em;
  white-space: nowrap;
  color: var(--primary_theme_color);
}
.cart-block table.cart td .product__price b strike {
  font-size: 14px;
  white-space: nowrap;
  display: block;
}
.cart-block table.cart td .product__price b.red {
  color: var(--error_color);
}
.cart-block table.cart td .product__price b.numeric {
  text-align: right;
}
@media all and (max-width: 75em) {
  .cart-block table.cart td .product__price b.numeric {
    text-align: left;
  }
}
.cart-block table.cart td .product__price em {
  display: block;
  font-size: 13px;
  color: var(--gray);
  font-style: normal;
}
.cart-block table.cart td .product__amount {
  float: left;
  width: 200px;
}
.cart-block table.cart td .product__amount .amount_minus, .cart-block table.cart td .product__amount .amount_plus {
  float: left;
  width: 30px;
  border: 0;
  position: relative;
  cursor: pointer;
}
.cart-block table.cart td .product__amount .amount_minus img, .cart-block table.cart td .product__amount .amount_plus img {
  float: left;
  width: 100%;
}
.cart-block table.cart td .product__amount .amount_minus img:hover, .cart-block table.cart td .product__amount .amount_plus img:hover {
  opacity: 0.8;
}
.cart-block table.cart td .product__amount .amount_label {
  float: left;
  box-sizing: border-box;
  padding: 6px 0;
  font-size: 16px;
  color: var(--primary_text_color);
  text-align: center;
  width: 2.5em;
  margin-left: 3px;
  margin-right: 3px;
  border-radius: 3px;
  border: 1px solid lightgrey;
  background: white;
}
.cart-block table.cart td a.delete {
  color: var(--gray);
  font-size: 25px;
  padding-left: 10px;
}
.cart-block table.cart td a.delete:hover {
  color: var(--error_color);
}
.cart-block table.cart tr.red td {
  color: var(--error_color);
}
.cart-block table.cart td.right {
  text-align: right;
}
.cart-block table.cart tr.subtotal {
  font-family: var(--font_family_3);
  font-weight: normal;
  background: none !important;
}
.cart-block table.cart tr.total {
  font-family: var(--font_family_3);
  font-weight: normal;
  background: none !important;
}
.cart-block table.cart tr.total td {
  padding-top: 25px;
  padding-bottom: 25px;
  border-bottom: 0;
}
.cart-block table.cart tr.total td strong {
  padding-top: 25px;
  padding-bottom: 25px;
  font-size: 22px;
  color: var(--primary_text_color);
}
.cart-block table.cart tr.total td em {
  font-style: normal;
  font-size: 13px;
  color: var(--primary_text_color);
}
.cart-block table.cart .expedition-types .expedition-type, .cart-block table.cart .expedition-types .sales-address, .cart-block table.cart .sales-addresses .expedition-type, .cart-block table.cart .sales-addresses .sales-address {
  display: inline-block;
  margin-right: 1em;
}
.cart-block table.cart a.delete-voucher {
  text-decoration: none;
  margin-right: 0.5em;
  color: maroon;
}
.cart-block table.cart .product__order-per-quantity {
  display: none;
}
.cart-block table.cart .cart__order-per-quantity {
  display: block;
  margin-top: 0.4em;
  color: gray;
}

.cart-block__title {
  margin-top: 10px !important;
}

.agree-to-general-conditions {
  margin-bottom: 10px;
}

.info {
  float: left;
  width: 100%;
  display: flex;
  box-sizing: border-box;
  padding: 20px 25px;
  border: 1px solid var(--primary_theme_color);
  line-height: 1.3em;
  position: relative;
  margin-top: 25px;
  margin-bottom: 15px;
}
.info h2 {
  font-family: var(--font_family_3);
  font-weight: normal;
  margin-bottom: 15px;
}
.info .info-header {
  float: left;
  margin-right: 15px;
  width: 42px;
  height: 42px;
}
.info .info-description {
  float: left;
}

.cart-blocks {
  float: left;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 20px;
}
.cart-blocks .extra-actions {
  float: left;
  width: 100%;
  margin-top: 25px;
}

.cart-blocks-block {
  float: left;
  width: 49%;
  box-sizing: border-box;
  padding: 25px;
  border: 1px solid var(--background_color_2);
}
.cart-blocks-block img.payment_logos {
  float: left;
  width: 200px;
  max-width: 90%;
}
.cart-blocks-block h2 {
  font-family: var(--font_family_3);
  font-weight: normal;
  margin-bottom: 20px;
}
.cart-blocks-block .warning i {
  display: none;
}

.cart-usps {
  float: left;
  width: 100%;
  line-height: 1.75em;
  color: var(--primary_text_color);
  margin: 20px 0;
}
.cart-usps i {
  color: var(--primary_text_color);
}

.info-icon::before {
  cursor: pointer;
  font-family: var(--font-icons);
  content: "";
  font-weight: 400;
}

div.warning-badge {
  background: red;
  color: white;
  padding: 0.2em 1em;
  display: inline-block;
  font-size: 0.7em;
}
div.warning-badge i {
  margin-right: 0.5em;
}

table .actions a {
  text-decoration: none;
}
table .actions i {
  font-size: 1.5rem;
  color: black;
  margin-right: 0.5rem;
}
table .actions i:hover {
  color: orange;
}

.delivery-dates .deliverable {
  color: darkseagreen;
}
.delivery-dates .backorder {
  color: orangered;
}

div.customer-data-logged-in ul.delivery-addresses {
  list-style-type: none;
}
div.customer-data-logged-in ul.delivery-addresses li {
  display: block;
  margin-left: 0;
}

#basket-contents.loading {
  opacity: 0.5;
}

.checkout-wrapper {
  float: left;
  width: 100%;
  padding-bottom: 50px;
}

h2.your-order {
  margin: 1em 0;
}

.cart-block__sales-person {
  margin-top: 20px;
}
.cart-block__sales-person .sales-person__form-row {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.white_block {
  float: left;
  width: 100%;
  padding: 80px 0;
  background: white;
}

.home__brand-slider-wrapper {
  float: left;
  width: 100%;
  padding: 75px 0 50px 0;
  background: rgba(0, 36, 93, 0.05);
}

.home__brand-slider {
  float: left;
  width: 100%;
  margin: 50px 0;
}
.home__brand-slider a {
  height: 78px;
  float: left;
  margin: 0 40px;
  border: 10px solid white;
  background-size: contain !important;
}
.home__brand-slider a img {
  float: left;
  width: 100%;
}

.button, .sub-button, .form button {
  --text_color: var(--secondary_text_color);
  --background_color_nav: var(--primary_theme_color);
  --hover_background_color: black;
  color: var(--text_color);
  background: var(--background_color_nav);
  font-size: 14px;
  font-weight: bold;
  display: inline-block;
  text-transform: uppercase;
  text-decoration: none !important;
  padding: 15px 25px;
  margin-bottom: 10px;
  line-height: 17px;
  position: relative;
}
.button::-moz-focus-inner, .sub-button::-moz-focus-inner, .form button::-moz-focus-inner {
  border: 0;
  padding: 0;
}
.button:hover, .sub-button:hover, .form button:hover {
  color: var(--text_color);
  background: var(--hover_background_color);
  cursor: pointer;
}
.button i, .sub-button i, .form button i {
  margin-right: 10px;
}

.button.small {
  --text_color: var(--primary_text_color);
  --background_color_nav: white;
  --hover_background_color: var(--primary_theme_color);
  color: var(--text_color);
  background: var(--background_color_nav);
  letter-spacing: normal;
  border: 2px solid rgba(0, 36, 93, 0.15);
  border-radius: 5px;
  text-transform: none;
  padding: 7px 15px 7px 15px;
}
.button.small:after {
  display: none;
}
.button.small:hover {
  border: 2px solid var(--hover_background_color);
}

.keep-shopping, .to-basket {
  margin-bottom: 0;
}

.button.outline, button.outline {
  color: white;
  background: var(--gray);
}
.button.outline:hover, button.outline:hover {
  color: white;
  background: var(--hover_background_color);
}

.contact-container {
  display: flex;
}
@media all and (max-width: 45em) {
  .contact-container {
    flex-direction: column;
  }
}

.contact-description {
  float: left;
  width: 100%;
}

.copyrights {
  --text_color: var(--gray);
  --font_family: var(--font_family_1);
  --font_size: 14px;
  --background_color_nav: none;
  font-size: var(--font_size);
  color: var(--text_color);
  background: var(--background_color_nav);
  line-height: 1.2em;
  float: left;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  padding: 18px 20px;
}
.copyrights a {
  color: var(--text_color);
  text-decoration: none;
}
.copyrights a:hover {
  text-decoration: underline;
}
.copyrights .payment_logos {
  height: 15px;
}
.copyrights .copyrights-content {
  display: flex;
  justify-content: space-evenly;
}
@media all and (max-width: 55em) {
  .copyrights .copyrights-content {
    flex-direction: column;
    align-items: center;
  }
}

.crumb {
  --text_color: var(--gray);
  --hover_background_color: var(--primary_text_color);
  float: left;
  width: 100%;
  font-size: 14px;
  padding: 20px 0;
  color: var(--text_color);
}
@media all and (max-width: 60em) {
  .crumb {
    display: none;
  }
}
.crumb span a {
  color: var(--text_color);
}
.crumb a {
  display: inline-block;
  color: var(--text_color);
}
.crumb a:hover {
  color: var(--hover_background_color);
}
.crumb b {
  font-weight: normal;
}
.crumb i {
  display: inline-block;
  margin: 0 7px;
}

.crumb-mobile {
  display: none;
}
@media all and (max-width: 60em) {
  .crumb-mobile {
    display: block;
  }
}

.item__non-link {
  color: black;
}

.cta {
  --text_color: var(--primary_text_color);
  --background_color_nav: none;
  float: left;
  width: 100%;
  margin-top: 40px;
  background-size: cover !important;
  background: var(--background_color_nav);
  position: relative;
  padding: 90px 0 40px;
}
@media all and (max-width: 75em) {
  .cta .wrapper {
    width: 90%;
  }
}
@media all and (max-width: 45em) {
  .cta {
    padding: 70px 0;
  }
}
.cta .title-image {
  position: absolute;
  top: -130px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  z-index: 100;
  width: 96px;
  height: 96px;
  background: none;
}
.cta .title-image img {
  width: 50px;
  height: 50px;
}
.cta strong, .cta span, .cta a {
  color: var(--text_color);
}
.cta strong {
  font-family: var(--font_family_3);
  font-size: 30px;
  float: left;
  width: 100%;
  text-align: center;
  line-height: 1.2em;
  margin-bottom: 70px;
}
@media all and (max-width: 45em) {
  .cta strong {
    font-size: 25px;
    margin-bottom: 50px;
  }
}
.cta .cta__links {
  float: left;
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.cta .cta__links a {
  width: 32%;
  box-sizing: border-box;
  text-decoration: none;
  text-align: center;
  padding: 60px 30px 30px;
  position: relative;
}
@media all and (max-width: 45em) {
  .cta .cta__links a {
    width: 100%;
    margin: 10px 0;
    padding-top: 50px;
    padding-bottom: 35px;
  }
}
.cta .cta__links a .svg-icon-wrapper {
  position: absolute;
  top: -25px;
  width: 60px;
  height: 60px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}
.cta .cta__links a .cta-description {
  color: var(--text_color);
  font-size: 22px;
  display: inline-block;
}
@media all and (max-width: 60em) {
  .cta .cta__links a .cta-description {
    font-size: 17px;
    word-break: break-word;
  }
}
.cta .cta__links a .cta-description em {
  font-weight: normal;
  font-style: normal;
}
.cta .cta__links a:hover span em {
  text-decoration: underline;
}

.small-cta {
  --text_color: var(--secondary_text_color);
  --background_color_nav: var(--secondary_theme_color);
  --hover_background_color: var(--primary_theme_color);
  color: var(--text_color);
  background: var(--background_color_nav);
  float: left;
  width: 70%;
  margin: 100px 15%;
  padding: 75px;
  box-sizing: border-box;
  position: relative;
  font-size: 30px;
  font-weight: 900;
  text-align: center;
}
.small-cta a {
  color: var(--text_color);
}
.small-cta a:hover {
  color: var(--hover_background_color);
}

ul.select-delivery-country {
  margin: 2em 0;
}
ul.select-delivery-country li {
  margin: 1em 0;
  font-size: 2rem;
  list-style-type: none;
}
ul.select-delivery-country li a {
  display: flex;
  align-items: center;
  color: black;
  text-decoration: none;
}
ul.select-delivery-country li a img {
  height: 1em;
  margin-right: 0.5em;
}

.service-order-dropdown_button {
  background: transparent;
  cursor: pointer;
}

.service-order-dropdown_menu {
  display: none;
  position: absolute;
  right: 0;
  background: white;
  border: 1px solid;
}

.service-order-dropdown_link {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 350px;
  padding: 3px;
}
.service-order-dropdown_link:hover {
  background: rgba(211, 211, 211, 0.5);
}

iframe.youtube, iframe.maps {
  height: 400px;
  width: 100%;
}
@media all and (max-width: 70em) {
  iframe.youtube, iframe.maps {
    height: 350px;
  }
}
@media all and (max-width: 60em) {
  iframe.youtube, iframe.maps {
    height: 300px;
  }
}
@media all and (max-width: 40em) {
  iframe.youtube, iframe.maps {
    height: 250px;
  }
}

div.feedback a {
  color: white;
}
div.feedback i {
  margin-right: 0.3em;
}
div.feedback.error {
  background: var(--error_color);
}
div.feedback.warning {
  background: darkorange;
}

.feedback-info {
  --text_color: cornflowerblue;
  --background_color_nav: #f3fbfe;
  color: var(--text_color);
  background: var(--background_color_nav);
  border: 1px solid var(--text_color);
  font-size: 0.9rem;
  margin-bottom: 1em;
  padding: 1em;
  clear: both;
}

.sidebar {
  float: left;
  width: 300px;
  box-sizing: border-box;
  margin-bottom: 25px;
}

.filter_block {
  float: left;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 15px;
  overflow: hidden;
  white-space: initial;
}
.filter_block span {
  float: left;
  width: 100%;
  cursor: pointer;
  color: var(--primary_text_color);
  font-size: 1.5em;
  line-height: 1em;
  font-family: var(--font_family_3);
  font-weight: normal;
  margin-bottom: 15px;
  position: relative;
}
.filter_block span i {
  position: absolute;
  top: 4px;
  right: 0;
  z-index: 100;
  font-size: 12px;
  transition: opacity 0.3s;
}
.filter_block ul.sub {
  margin-top: 5px;
  padding-left: 15px;
}
.filter_block li.level-0 > ul.sub {
  padding-left: 0;
}
.filter_block span.active i.fa-plus {
  opacity: 0;
}
.filter_block span.active i.fa-minus {
  opacity: 1;
}
.filter_block label {
  float: left;
  width: 100%;
  cursor: pointer;
}
.filter_block ul {
  float: left;
  width: 100%;
  list-style-type: none;
  margin-bottom: 0;
}
.filter_block ul li {
  float: left;
  width: 100%;
  margin: 3px 0;
  position: relative;
}
.filter_block ul li a {
  color: var(--primary_text_color);
  text-decoration: none;
  white-space: initial;
  display: block;
  padding-right: 40px;
}
.filter_block ul li a i {
  display: inline-block;
  margin-right: 7px;
}
.filter_block ul li a:hover {
  text-decoration: underline;
}
.filter_block ul li a.active {
  font-weight: normal;
}

.filter_block.hidden {
  display: none;
}

.filter_list_wrapper {
  float: left;
  width: 100%;
  margin-bottom: 5px;
  position: relative;
  display: none;
}
.filter_list_wrapper #price_range {
  margin-left: 5px;
  margin-right: 5px;
}

.filter_list_wrapper.active {
  display: block;
}

.filter_list_wrapper.brand {
  margin-top: 0;
}
.filter_list_wrapper.brand:after {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 100;
  content: "";
  font-family: var(--font-icons);
  font-size: 13px;
  color: var(--primary_text_color);
  pointer-events: none;
  transition: all 0.3s;
}

#filter_list_price {
  width: calc(100% - 8px);
}
#filter_list_price #price_min_label {
  float: left;
  width: 50%;
  font-size: 12px;
  font-weight: 400;
  margin-bottom: 8px;
}
#filter_list_price #price_max_label {
  float: right;
  width: 50%;
  font-size: 12px;
  font-weight: 400;
  margin-bottom: 8px;
  text-align: right;
}
#filter_list_price #price_min, #filter_list_price #price_max {
  width: 40px;
  border: 1px solid var(--gray);
  background: transparent;
  padding: 5px;
  font-size: 13px;
  margin-top: 10px;
  color: var(--primary_text_color);
}

#price_min {
  float: left;
}

#price_max {
  float: right;
}

a.filters_toggle {
  float: left;
  width: 100%;
  color: var(--secondary_text_color);
  background: var(--primary_text_color);
  border: 0 !important;
  font-size: 1.1rem;
  text-align: center;
  text-decoration: none;
  padding: 12px 0;
  margin-bottom: 15px;
  border-radius: 3px;
  display: none;
}
a.filters_toggle i {
  margin-right: 7px;
}
a.filters_toggle:hover {
  color: var(--secondary_text_color);
}

.nano {
  float: left;
  position: relative;
  width: 99%;
  height: 135px;
  overflow: hidden;
}
.nano > .nano-content {
  position: absolute;
  overflow: scroll;
  overflow-x: hidden;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.nano > .nano-content:focus {
  outline: thin dotted;
}
.nano > .nano-content::-webkit-scrollbar {
  display: none;
}
.nano > .nano-pane {
  background-image: url("../_graphics/bg_nanoslider_pane.png");
  background-color: transparent;
  background-position: 50% 0;
  position: absolute;
  width: 5px;
  right: 0;
  top: 0;
  bottom: 0;
  opacity: 0.99;
  transition: 0.2s;
}
.nano > .nano-pane > .nano-slider {
  background: var(--transparent_3);
  position: relative;
  margin: 0;
  cursor: pointer;
}
.nano:hover > .nano-pane {
  visibility: visible\9 ;
  opacity: 0.99;
}

.has-scrollbar > .nano-content::-webkit-scrollbar {
  display: block;
}

.nano-pane.active {
  visibility: visible\9 ;
  opacity: 0.99;
}

.nano-pane.flashed {
  visibility: visible\9 ;
  opacity: 0.99;
}

.livesearch_brand {
  float: left;
  width: 100%;
  box-sizing: border-box;
  border: 0;
  font-size: 16px;
  color: var(--primary_text_color);
  background: var(--transparent_2);
  padding: 8px 10px;
  margin-bottom: 10px;
  outline: none;
}
.livesearch_brand::placeholder {
  color: var(--primary_text_color);
  opacity: 1;
}
.livesearch_brand:-ms-input-placeholder {
  color: var(--primary_text_color);
}
.livesearch_brand::-ms-input-placeholder {
  color: var(--primary_text_color);
}

.livesearch_wrapper {
  float: left;
  width: 100%;
  margin-top: 5px;
  position: relative;
}

.node-tree a {
  text-decoration: none;
  color: inherit;
}

.filter_list_wrapper .sublink {
  display: block;
  padding-right: 25px;
}
.filter_list_wrapper .sublink .fa-plus, .filter_list_wrapper .sublink .fa-minus {
  position: absolute;
  top: 3px;
  right: 0;
}
.filter_list_wrapper .sublink .fa-plus {
  display: inline-block;
}
.filter_list_wrapper .sublink .fa-minus {
  display: none;
}
.filter_list_wrapper .sublink.active {
  font-weight: 700;
}
.filter_list_wrapper .sublink.active .fa-plus {
  display: none;
}
.filter_list_wrapper .sublink.active .fa-minus {
  display: inline-block;
}

#body .folderdeal {
  top: 10px;
  color: black;
  background: #ffcf40;
  font-weight: normal;
  text-align: center;
  font-family: var(--font_family_2);
  display: inline-block;
  padding: 7px 10px 7px 10px;
  box-sizing: border-box;
  position: absolute;
}
#body .product-grid .folderdeal {
  min-height: 33px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  right: 0;
  bottom: auto;
  top: 0;
  border-radius: 0 !important;
}
#body .product-list .folderdeal {
  border-radius: 0;
  top: 0;
  left: 0;
  right: auto;
}
#body .cart .folderdeal {
  border-radius: 0;
  top: 0;
  left: 0;
  right: auto;
}
@media all and (max-width: 75em) {
  #body .cart .folderdeal {
    width: 100%;
    max-width: 100%;
  }
}
#body .product__page-info span.product__label.folderdeal {
  position: static;
}

.footer {
  float: left;
  width: 100%;
  background: var(--transparent_1);
  padding: 70px 0;
}
@media all and (max-width: 65em) {
  .footer {
    padding: 60px 0;
  }
}
@media all and (max-width: 45em) {
  .footer {
    padding: 30px 0;
  }
}
.footer .footer__box {
  float: left;
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media all and (max-width: 70em) {
  .footer .footer__block:nth-child(1),
.footer .footer__block:nth-child(2) {
    margin-bottom: 30px;
  }
}
.footer .footer__block {
  width: 22%;
  line-height: 1.6em;
}
@media all and (max-width: 70em) {
  .footer .footer__block {
    width: 45%;
  }
}
@media all and (max-width: 45em) {
  .footer .footer__block {
    width: 100%;
    margin: 20px 0;
    text-align: center;
  }
}
.footer .footer__block strong {
  color: var(--primary_theme_color);
  display: inline-block;
  font-size: 17px;
  margin-bottom: 25px;
}
.footer .footer__block a {
  color: var(--primary_text_color);
  text-decoration: none;
}
.footer .footer__block a:hover {
  text-decoration: underline;
}
.footer .footer__block img.payment_logos {
  height: 18px;
  background: white;
  padding: 8px;
  border-radius: 7px;
}
.footer .footer__block a.social-link:hover {
  text-decoration: none;
}
.footer .footer__block img.social {
  width: 40px;
  margin-right: 8px;
  /* 720px */
}
@media all and (max-width: 45em) {
  .footer .footer__block img.social {
    margin: 0 5px;
  }
}
.footer .footer__block img.social:hover {
  opacity: 0.8;
}
.footer .footer__block span.day {
  display: inline-block;
  width: 100px;
  text-align: left !important;
}
.footer .footer__block b {
  font-family: var(--font_family_2);
  font-weight: normal;
}
.footer .footer__newsletter-form {
  float: left;
  width: 100%;
  position: relative;
}
@media all and (max-width: 45em) {
  .footer .footer__newsletter-form {
    width: 90%;
    margin: 0 5%;
  }
}
.footer .footer__newsletter-form input.text {
  float: left;
  width: 100%;
  box-sizing: border-box;
  padding: 15px 60px 15px 20px;
  font-size: 16px;
  color: var(--primary_theme_color);
  background: white;
  outline: none;
}
.footer .footer__newsletter-form input.text::placeholder {
  color: var(--primary_theme_color);
  opacity: 1;
}
.footer .footer__newsletter-form input.text:-ms-input-placeholder {
  color: var(--primary_theme_color);
}
.footer .footer__newsletter-form input.text::-ms-input-placeholder {
  color: var(--primary_theme_color);
}
.footer .footer__newsletter-form button {
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  height: 100%;
  background: var(--primary_theme_color);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.footer .footer__newsletter-form button img {
  width: 22px;
}
.footer .footer__newsletter-form button:hover {
  background: black;
}

.footer__block-img-wrapper {
  float: left;
  width: 100%;
  display: flex;
  justify-content: center;
}

.footer__block-img {
  float: left;
  margin-bottom: 20px;
  max-height: 125px;
  max-width: 100%;
}

.form {
  --field-background: white;
  float: left;
  width: 100%;
  margin-bottom: 25px;
}
.form span.label {
  float: left;
  width: 100%;
  margin-bottom: 5px;
}
.form span.label b {
  font-size: 13px;
  font-weight: normal;
  color: var(--gray);
}
.form span.small {
  margin-left: 10px;
}
.form span.small a {
  text-decoration: underline;
}
.form span.label.error a {
  margin-left: 5px;
}
.form span.label.error {
  color: var(--error_color);
}
.form input[type=text], .form input.text {
  float: left;
  width: 100%;
  box-sizing: border-box;
  background: var(--field-background);
  border: 1px solid var(--transparent_3);
  padding: 10px;
  margin-top: 3px;
  margin-bottom: 10px;
  color: var(--primary_text_color);
  font-family: var(--font_family_1);
  font-weight: normal;
  font-size: 16px;
}
.form input[type=text]::placeholder, .form input.text::placeholder {
  color: #b0b0b0;
  opacity: 1;
}
.form input[type=text]:-ms-input-placeholder, .form input.text:-ms-input-placeholder {
  color: #b0b0b0;
  opacity: 1;
}
.form input[type=text]::-ms-input-placeholder, .form input.text::-ms-input-placeholder {
  color: #b0b0b0;
  opacity: 1;
}
.form input:disabled {
  background: lightgrey;
}
.form input.text.error {
  border: 1px solid var(--error_color);
}
.form input.text.small {
  width: 30%;
  min-width: 100px;
}
.form input[type=file] {
  margin-bottom: 15px;
  width: 100%;
}
.form .expedition-types, .form .linked-to-transport-expedition-type {
  margin-bottom: 15px;
}
.form .required-for-warranty input[type=date] {
  margin-bottom: 15px;
}
.form textarea {
  float: left;
  width: 100%;
  box-sizing: border-box;
  height: 100px;
  background: var(--field-background);
  border: 1px solid var(--transparent_3);
  padding: 10px;
  margin-top: 3px;
  margin-bottom: 10px;
  color: var(--primary_text_color);
  font-family: var(--font_family_1);
  font-weight: normal;
  font-size: 16px;
}
.form textarea.error {
  border: 1px solid var(--error_color);
}
.form .select_wrapper {
  float: left;
  width: 50%;
  position: relative;
  margin-top: 3px;
  margin-bottom: 15px;
}
.form .select_wrapper:after {
  content: "";
  font-family: var(--font-icons);
  font-size: 13px;
  color: var(--primary_text_color);
  right: 0;
  top: 0;
  bottom: 0;
  padding: 12px 12px 0;
  position: absolute;
  pointer-events: none;
  line-height: 14px;
}
.form .select_wrapper.small {
  width: 20%;
  margin-right: 15px;
}
.form .select_wrapper.large {
  width: 98%;
}
.form select {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-shadow: none;
  display: inline-block;
  zoom: 1;
  color: var(--primary_text_color);
  background-color: white;
  padding: 10px 40px 10px 10px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  font-family: var(--font_family_1);
  font-weight: normal;
  font-size: 1rem;
  border: 1px solid var(--transparent_3);
  width: 100%;
  cursor: pointer;
  outline: none;
  transition: border 0.3s;
}
.form select::-ms-expand {
  display: none;
}
.form select.error {
  border: 1px solid var(--error_color);
}
.form label {
  cursor: pointer;
}
.form input.checkbox {
  float: left;
  vertical-align: top;
  display: block;
  overflow: hidden;
  padding: 0;
  border: 0;
  margin-left: 2px;
  margin-top: 2px;
  margin-right: 6px;
  width: 15px;
  height: 15px;
  line-height: 1em;
}
.form .grid--three {
  width: 100%;
  display: grid;
  grid-template-columns: auto auto auto;
  column-gap: 15px;
}

.contact-form {
  float: none;
  margin: 0 0 80px !important;
}
.contact-form .checkbox {
  margin: 14px 0;
  display: inline-block;
  width: 100%;
}

.input-symbol-euro {
  position: relative;
}
.input-symbol-euro input {
  padding: 15px 15px 15px 35px !important;
}
.input-symbol-euro:before {
  position: absolute;
  top: 43px;
  content: "€";
  left: 15px;
}

.checkbox, .radiobutton {
  padding: 0.5em 0;
}
.checkbox input, .radiobutton input {
  margin-right: 0.5em;
}

.customer-data-block .vat-type-wrapper .radiobutton {
  padding: 0.2em 0;
}
.customer-data-block .error {
  margin-bottom: 30px;
  display: block;
}

.search-bar {
  margin: 1.5em auto;
  display: flex;
  column-gap: 1em;
  align-items: stretch;
  width: 100%;
}
.search-bar input {
  margin: 0 !important;
  flex: 1;
}
.search-bar button {
  margin: 0 !important;
}

.label-value {
  margin-bottom: 0.2em;
  border-bottom: solid 1px lightgrey;
}
.label-value label {
  width: 13em;
  font-weight: bold;
  display: inline-block;
}

.search-results .main, .producer-articles .main, .landing-page .main {
  width: 100%;
}

.address-input input.text.zipcode {
  width: 150px;
}
.address-input input.text.city {
  float: right;
  width: calc(100% - 160px);
}
.address-input input.text.house-number, .address-input input.text.box-number {
  width: 120px;
  margin-left: 10px;
}
.address-input input.text.street {
  width: calc(100% - 120px - 120px - 25px);
}

#body .hamburger-inner, #body .hamburger-inner:after, #body .hamburger-inner:before {
  width: 30px;
  height: 3px;
}
@media all and (max-width: 60em) {
  #body .hamburger-inner {
    top: initial;
    margin-top: 0;
  }
}

.mobile-hamburger__label {
  font-size: 14px;
}

.header .logo, .sticky-nav .logo {
  float: left;
  max-width: 340px;
  margin-left: 25px;
  position: relative;
  z-index: 1000;
}
@media all and (max-width: 60em) {
  .header .logo, .sticky-nav .logo {
    display: flex;
    align-items: center;
    max-width: 43%;
    height: 90px;
    margin-top: 0;
    margin-left: 0;
  }
  .header .logo img, .sticky-nav .logo img {
    max-height: 90px;
  }
}
@media all and (max-width: 22em) {
  .header .logo, .sticky-nav .logo {
    max-width: 35%;
  }
}
.header .logo img, .sticky-nav .logo img {
  float: left;
  width: 100%;
}
.header br.clear, .sticky-nav br.clear {
  display: none;
}
.header .mobile-hamburger, .sticky-nav .mobile-hamburger {
  position: relative;
  z-index: 1000;
  float: right;
  outline: none;
  display: none;
  margin-top: 38px;
  margin-right: 25px;
  margin-bottom: 5px;
}
@media all and (max-width: 60em) {
  .header .mobile-hamburger, .sticky-nav .mobile-hamburger {
    display: inline-block !important;
    width: 45px;
    float: right;
    margin-left: 0;
    margin-right: -5px;
    margin-top: 20px;
  }
}
.header .mobile-hamburger .hamburger-box, .sticky-nav .mobile-hamburger .hamburger-box {
  width: 30px;
  height: 20px;
}
.header .mobile-hamburger__label, .sticky-nav .mobile-hamburger__label {
  display: block;
  margin-top: -7px;
}
.header .voucher-link, .sticky-nav .voucher-link {
  margin-left: 0 !important;
}

.header__indicators {
  float: right;
  margin-top: 5px;
  margin-bottom: 30px;
}

.header__indicator-title {
  display: flex;
  position: absolute;
  left: 0;
  right: 0;
  top: 55px;
  margin: auto;
  font-size: 14px;
  text-align: center;
  justify-content: center;
}

.header__cart-indicator-wrapper {
  float: right;
  position: relative;
}

.header__indicator-link {
  position: relative;
  z-index: 1000;
  float: right;
  margin-left: 10px;
}
.header__indicator-link:hover .header__indicator-image {
  opacity: 0.8;
}

.header__socials {
  float: right;
  padding-top: 35px;
  margin-left: 50px;
}
@media all and (max-width: 65em) {
  .header__socials {
    margin-left: 25px;
  }
}
@media all and (max-width: 60em) {
  .header__socials {
    padding-top: 30px;
  }
}
@media all and (max-width: 40em) {
  .header__socials {
    display: none;
  }
}
.header__socials img {
  float: left;
  display: inline-block;
  vertical-align: top;
  width: 40px;
  margin-left: 10px;
  opacity: 0.5;
}
.header__socials img:hover {
  opacity: 1;
}

.header__search-suggestions {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  width: 500px;
  background: white;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.25);
  box-sizing: border-box;
  display: none;
}
@media all and (max-width: 60em) {
  .header__search-suggestions {
    width: 100%;
  }
}

.header__search-suggestions.active {
  display: block;
}

.header {
  float: left;
  width: 100%;
  padding-bottom: 20px;
  position: relative;
  margin-top: 5px;
}
@media all and (max-width: 60em) {
  .header {
    padding-bottom: 0;
  }
}
@media all and (max-width: 60em) {
  .header .wrapper {
    float: left;
    width: 100%;
    box-sizing: border-box;
    padding: 0 15px;
  }
}
@media all and (max-width: 30em) {
  .header .wrapper {
    padding: 0 10px;
  }
}
@media all and (max-width: 70em) {
  .header .header__search {
    width: 300px;
  }
}
@media all and (max-width: 60em) {
  .header .header__search {
    display: inline-block !important;
    width: calc(100% - 40px);
    margin-left: 0;
    margin-right: 0;
    float: left;
  }
}
@media all and (max-width: 60em) {
  .header .header__search .header__search-form input.text {
    height: 40px;
    padding: 10px 60px 10px 15px;
  }
}
@media all and (max-width: 60em) {
  .header .header__search .header__search-form button img {
    width: 22px;
  }
}

.header__cart-count {
  position: absolute;
  bottom: -15px;
  left: calc(50% - 12px);
  z-index: 100;
  width: 22px;
  height: 22px;
  border-radius: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font_family_2);
  font-weight: normal;
  font-size: 13px;
  color: var(--secondary_text_color);
  background: var(--primary_theme_color);
  border: 1px solid white;
}

.header__search {
  float: right;
  width: 500px;
  margin-top: 7px;
  margin-right: 10px;
  background: rgba(2, 36, 93, 0.05);
  position: relative;
  border-radius: 5px;
}

.header__search-form {
  float: left;
  width: 100%;
  position: relative;
}
.header__search-form input.text {
  float: left;
  width: 100%;
  height: 50px;
  box-sizing: border-box;
  padding: 15px 60px 15px 20px;
  font-size: 16px;
  color: var(--primary_theme_color);
  background: none;
  border: none;
  outline: none;
}
.header__search-form input.text::placeholder {
  color: #b0b0b0;
}
.header__search-form input.text:-ms-input-placeholder {
  color: #b0b0b0;
}
.header__search-form input.text::-ms-input-placeholder {
  color: #b0b0b0;
}
.header__search-form button {
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  height: 100%;
  background: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.header__search-form button img {
  width: 28px;
}

.home-about {
  float: left;
  width: 100%;
}

.text__right-slider {
  height: 500px;
}

.home-top__banners {
  float: right;
  width: calc(100% - 315px);
}

.home-top__banners-slider {
  float: left;
  width: 100%;
  margin-bottom: 15px;
}
@media all and (max-width: 55em) {
  .home-top__banners-slider {
    height: 255px;
    margin-bottom: 27px;
  }
}

.home-top__banners-slide {
  float: left;
  width: 100%;
  background-size: cover !important;
  position: relative;
  text-decoration: none;
}
.home-top__banners-slide:hover {
  opacity: 0.9;
}
.home-top__banners-slide img {
  float: left;
  width: 100%;
}

.home-top__banners-slide-text {
  position: absolute;
  bottom: 50px;
  left: 50px;
  z-index: 100;
}
@media all and (max-width: 40em) {
  .home-top__banners-slide-text {
    bottom: 25px;
  }
  .home-top__banners-slide-text strong {
    font-size: 23px;
  }
  .home-top__banners-slide-text .sub-button {
    font-size: 12px;
    line-height: 15px;
    margin-top: 15px;
  }
}
.home-top__banners-slide-text strong {
  float: left;
  width: 100%;
  color: var(--secondary_text_color);
  font-family: var(--font_family_3);
  font-weight: normal;
  font-size: 35px;
  line-height: 1.1em;
}
.home-top__banners-slide-text .sub-button {
  margin-top: 30px;
}

.home-top__banners-slide-cover {
  position: absolute;
  z-index: 90;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, var(--transparent_1), black 100%);
}

.home-top__banners-box {
  float: left;
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.home-top__banners-box-content {
  float: left;
  width: 32%;
  position: relative;
  background-size: cover !important;
  margin-bottom: 15px;
}
@media all and (max-width: 35em) {
  .home-top__banners-box-content {
    width: 100%;
  }
}
.home-top__banners-box-content:hover {
  opacity: 0.9;
}
.home-top__banners-box-content img {
  float: left;
  width: 100%;
}
.home-top__banners-box-content span {
  position: absolute;
  top: 15px;
  left: 0;
  box-sizing: border-box;
  padding: 5px 15px;
  font-weight: normal;
  font-size: 14px;
  color: var(--secondary_text_color);
  background: var(--primary_theme_color);
  border-top-right-radius: 15px;
  border-bottom-right-radius: 15px;
}

.home__usp-wrapper {
  float: left;
  width: 100%;
}

.home__cta-box {
  float: left;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1rem;
  justify-items: center;
}
.home__cta-box .home__cta-block {
  position: relative;
  box-sizing: border-box;
  background: white;
  margin-bottom: 15px;
  box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.1);
  width: 100%;
}
@media all and (max-width: 70em) {
  .home__cta-box .home__cta-block img {
    display: none;
  }
  .home__cta-box .home__cta-block .home__cta-block-text {
    width: 100% !important;
  }
  .home__cta-box .home__cta-block .home__cta-block-button {
    right: 50px;
    left: auto !important;
  }
}
@media all and (max-width: 55em) {
  .home__cta-box .home__cta-block .home__cta-block-button {
    width: 100%;
    max-width: 100% !important;
    box-sizing: border-box;
    position: static !important;
  }
  .home__cta-box .home__cta-block .home__cta-block-text {
    padding: 25px !important;
  }
}
.home__cta-box .home__cta-block img {
  height: 100%;
  object-fit: cover;
  float: right;
  width: 175px;
}
.home__cta-box .home__cta-block strong {
  float: left;
  width: 100%;
  font-family: var(--font_family_3);
  font-weight: normal;
  font-size: 30px;
  margin-bottom: 30px;
}
.home__cta-box .home__cta-block .home__cta-block-text {
  float: left;
  width: calc(100% - 200px);
  box-sizing: border-box;
  padding: 25px 25px 70px;
}
.home__cta-box .home__cta-block .home__cta-block-text .home__cta-block-button {
  position: absolute;
  bottom: 25px;
  left: 60px;
  max-width: 25%;
}

.home-landing-page h1, .home-landing-page a {
  margin-bottom: 15px;
}

.home-top__background-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.85);
}

.home-top__news {
  float: left;
  width: 70%;
  box-sizing: border-box;
  padding: 45px 50px;
  text-align: center;
  color: var(--secondary_text_color);
  background: var(--primary_theme_color);
}
.home-top__news a {
  font-weight: 700;
  color: var(--secondary_text_color);
}
.home-top__news a:hover {
  text-decoration: none;
}
.home-top__news a i {
  display: inline-block;
  margin-left: 7px;
}

hr {
  float: left;
  width: 100%;
  border-bottom: 1px solid var(--transparent_2, var(--gray, lightgray));
  margin-bottom: 25px;
}

hr.spacer10 {
  border: 0;
  margin: 0;
  padding-bottom: 10px;
}

hr.spacer15 {
  border: 0;
  margin: 0;
  padding-bottom: 15px;
}

hr.spacer25 {
  border: 0;
  margin: 0;
  padding-bottom: 25px;
}

hr.spacer50 {
  border: 0;
  margin: 0;
  padding-bottom: 50px;
}

hr.spacer75 {
  border: 0;
  margin: 0;
  padding-bottom: 75px;
}

hr.spacer100 {
  border: 0;
  margin: 0;
  padding-bottom: 100px;
}

.landing-page-text img {
  float: right;
  margin: 0 1em 1em 0;
}

.languages {
  display: inline-block;
  margin-left: 30px;
}
.languages a {
  margin-left: 15px !important;
}
.languages a.active {
  font-weight: bold !important;
  color: var(--primary_theme_color) !important;
}

.mobile-nav .languages {
  width: 100%;
  display: flex;
  margin-left: 0;
}
.mobile-nav .languages a {
  width: auto;
  border-bottom: none;
  margin: 0 !important;
}

.nav {
  --font_family: var(--font_family_3);
  --font_size: 14px;
  --text_color: var(--primary_text_color);
  --background_color: var(--transparent_1);
  --hover_background_color: none;
  --hover_text_color: var(--primary_theme_color);
  --wrapper_background_color: none;
  float: left;
  width: 100%;
  position: relative;
  background: var(--wrapper_background_color);
}
.nav .nav-wrapper {
  display: flex;
}
.nav .nav__products {
  color: var(--text_color);
  background: var(--background_color);
  font-family: var(--font_family);
  font-size: var(--font_size);
  font-weight: bold;
  float: left;
  width: 300px;
  height: 50px;
  box-sizing: border-box;
  text-decoration: none;
  padding: 17px 30px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  z-index: 200;
}
.nav .nav__products:hover {
  text-decoration: underline;
}
.nav .nav__products .hamburger {
  margin-right: 15px !important;
  outline: none;
}
.nav .nav__products .hamburger-inner {
  width: 25px !important;
}
.nav .nav__products .hamburger-inner:after {
  width: 25px !important;
}
.nav .nav__products .hamburger-inner:before {
  width: 25px !important;
}
.nav .nav__products .hamburger-box {
  height: 15px !important;
}
.nav .nav__products.active {
  color: var(--secondary_theme_color);
}
.nav .nav__general {
  color: var(--text_color);
  background: var(--background_color);
  font-family: var(--font_family);
  font-size: var(--font_size);
  font-weight: bold;
  float: right;
  height: 50px;
  box-sizing: border-box;
  padding: 17px 30px;
  display: flex;
  justify-content: space-between;
  position: relative;
  align-items: center;
  z-index: 200;
  flex: 1;
}
.nav .nav__general__no-rollover {
  width: auto;
  float: none;
}
.nav .nav__general a {
  letter-spacing: 0.2em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--text_color);
}
.nav .nav__general a:hover {
  text-decoration: underline;
}

.mobile-nav {
  float: left;
  width: 100%;
  background: var(--background_color_1);
  display: none;
}
.mobile-nav a {
  float: left;
  width: 100%;
  box-sizing: border-box;
  padding: 13px 20px;
  font-size: 18px;
  color: var(--primary_text_color);
  text-decoration: none;
  border-bottom: 1px solid var(--transparent_2);
  position: relative;
}
.mobile-nav a i {
  position: absolute;
  top: 0;
  right: 0;
  width: 60px;
  height: 100%;
  background: var(--transparent_1);
  display: flex;
  align-items: center;
  justify-content: center;
}
.mobile-nav a i.active {
  transform: rotate(180deg);
}
.mobile-nav a.active {
  font-family: var(--font_family_2);
  font-weight: normal;
}

.mobile-nav__products-container {
  float: left;
  width: 100%;
  display: none;
}

.mobile-nav__sub {
  padding: 12px 40px !important;
  background: var(--transparent_1);
}

.mobile-nav__categories-container {
  float: left;
  width: 100%;
  display: none;
}

.mobile-nav__child {
  padding-left: 60px !important;
  background: var(--transparent_1);
}

.news {
  float: left;
  width: 100%;
  margin-top: 1em;
  display: grid;
  grid-template-columns: repeat(4, minmax(250px, 1fr));
  gap: 1rem;
}
.news .news-item {
  text-decoration: none;
  border: 1px solid #d2d6db;
  break-inside: avoid;
}
.news .news-item a {
  text-decoration: none;
}
.news .news-item .image-wrapper {
  display: flex;
  justify-content: center;
}
.news .news-item .image-wrapper img {
  max-height: 175px;
  max-width: 100%;
}
.news .news-item .text {
  padding: 1em;
  float: none;
  width: auto;
}
.news .news-item .text h2 {
  font-size: 1.4em !important;
  margin-bottom: 0.5em;
}
.news .news-item .text .intro p {
  margin-bottom: 0;
}

.news-detail.text h1 {
  margin: 35px 0 35px 0;
}
.news-detail.text .page-image-wrapper {
  display: flex;
  float: left;
  width: 25%;
  justify-content: center;
  margin: 0 35px 35px 0;
}
.news-detail.text .page-image {
  max-width: 100%;
  max-height: 250px;
  float: left;
}
@media all and (max-width: 65em) {
  .news-detail.text .page-image {
    width: 40%;
  }
}
@media all and (max-width: 40em) {
  .news-detail.text .page-image {
    width: 100%;
  }
}
.news-detail.text .video-wrapper {
  width: 100%;
  text-align: center;
}
.news-detail.text .video-wrapper iframe {
  width: 100%;
}

.news-box-wrapper {
  padding-top: 10px;
}

.news-box {
  float: left;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: 1rem;
  margin-top: 15px;
  justify-items: center;
}

.news-box-item {
  position: relative;
  float: left;
  text-decoration: none;
  margin: 10px 10px 50px;
  border: 1px solid lightgrey;
  padding: 15px 15px 70px;
  width: 350px;
}
.news-box-item p {
  margin-bottom: 65px;
}
.news-box-item:hover {
  color: inherit !important;
  border-color: grey;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
.news-box-item:hover .news-box-item-image div.cover {
  opacity: 1;
}
.news-box-item strong {
  float: left;
  width: 100%;
  font-size: 22px;
  line-height: 1.4em;
  margin-bottom: 25px;
}
.news-box-item span.news__label {
  position: absolute;
  left: 0;
  z-index: 500;
  box-sizing: border-box;
  padding: 10px;
  font-weight: 700;
  color: white;
  border-top-right-radius: 25px;
  border-bottom-right-radius: 25px;
}
.news-box-item span.news__label.sale {
  top: 10px;
  background: var(--error_color);
}
.news-box-item span.news__label.new {
  top: 45px;
  background: var(-success_color);
}
.news-box-item span.news__label.topper {
  top: 80px;
  background: var(--topper_color);
}

.news-box-item-image {
  float: left;
  width: 100%;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  margin-bottom: 30px;
  position: relative;
}
.news-box-item-image div.cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: all 0.5s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.news-box-item-image div.cover b {
  color: white;
  font-size: 17px;
  text-decoration: underline;
}
.news-box-item-image img {
  float: left;
  width: 100%;
}

.news-box-button {
  display: flex;
  justify-content: center;
  position: absolute;
  bottom: 15px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}

.nodes-overview__content {
  display: flex;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
@media all and (max-width: 70em) {
  .nodes-overview__content {
    flex-direction: column;
  }
}

.nodes-overview__sidemenu {
  float: left;
  width: 300px;
  flex-shrink: 0;
  flex-grow: 0;
}
@media all and (max-width: 70em) {
  .nodes-overview__sidemenu {
    width: 100%;
    margin-bottom: 10px;
  }
}
.nodes-overview__sidemenu a:hover {
  color: var(--primary_theme_color);
}

.nodes-overview__main {
  flex-grow: 1;
  padding-left: 2rem;
}
@media all and (max-width: 70em) {
  .nodes-overview__main {
    padding-left: 0;
  }
}
.nodes-overview__main .crumb {
  padding: 10px 0;
}

.nodes-overview__node-title {
  font-size: 2rem;
  position: relative;
  padding-left: 0.4em;
  padding-bottom: 3rem;
}
.nodes-overview__node-title:before {
  content: "";
  position: absolute;
  width: 2px;
  height: 1em;
  vertical-align: middle;
  background-color: var(--primary_theme_color);
  left: 0;
  top: 0.14em;
}

.nodes-overview__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(auto, 1fr));
  gap: 1rem;
  margin-bottom: 10px;
}
@media all and (max-width: 70em) {
  .nodes-overview__grid {
    grid-template-columns: repeat(auto-fit, minmax(125px, 2fr)) !important;
  }
}

.nodes-overview__card {
  display: inline-block;
  border: 1px solid #E2E2E2;
  border-radius: 0.4rem;
  position: relative;
  color: #161616;
  text-align: center;
  width: 100%;
  flex-basis: 15rem;
  flex-grow: 0;
  flex-shrink: 1;
  justify-content: flex-start;
  margin: 0;
  text-decoration: none;
}
.nodes-overview__card:hover {
  border: 1px solid var(--gray);
}
.nodes-overview__card:hover .nodes-overview__card-title {
  color: var(--primary_theme_color);
}

.nodes-overview__card-image-wrapper {
  margin: auto;
  display: flex;
}

.nodes-overview__card-image {
  display: block;
  max-width: 85%;
  max-height: 85%;
  object-fit: contain;
  margin: auto;
}

.nodes-overview__node-info {
  display: inline-block;
}
@media all and (max-width: 70em) {
  .nodes-overview__node-info {
    margin-top: 10px;
  }
}

.nodes-overview__card-title {
  font-size: 1.2rem;
  font-weight: 600;
  padding: 1rem;
  text-decoration: none;
  word-break: break-word;
}

#page.text h1 {
  margin: 35px 0 35px 0;
}
#page.text img {
  width: 25%;
  margin: 0 35px 35px 0;
  float: left;
}

@keyframes popup {
  from {
    opacity: 0;
    transform: translateY(0);
  }
  to {
    opacity: 1;
    transform: translateY(-40px);
  }
}
.popup {
  position: fixed;
  right: 4%;
  bottom: 0;
  width: 500px;
  z-index: 500;
  box-sizing: border-box;
  padding: 40px;
  background: #FFF;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
  transform: translateY(-40px);
  opacity: 0;
  animation: popup 1s;
  animation-delay: 1s;
  animation-fill-mode: forwards;
  transition: all 0.3s;
  transition-timing: cubic-bezier(0.17, 0.67, 0.83, 0.67);
}
.popup .popup-close {
  position: absolute;
  top: 15px;
  right: 15px;
  z-index: 100;
  font-size: 25px;
}
.popup .popup-close:hover {
  cursor: pointer;
}
.popup p {
  margin-bottom: 15px;
}

@media only screen and (max-width: 57em) {
  .popup {
    width: 90%;
  }
  .popup .button {
    padding-right: 25px;
  }
  .popup .button:after {
    visibility: hidden;
  }
}
.popup .popup-close {
  color: var(--primary_theme_color);
}
.popup .popup-close:hover {
  color: var(--primary_text_color);
}

.producer--top {
  display: flex;
  clear: both;
  gap: 1rem;
}

.producer--top__left {
  flex: 1;
}

.producer--top__product-registration-url {
  text-align: right;
}

.producer-extras {
  display: flex;
  margin-bottom: 15px;
}
@media (max-width: 50em) {
  .producer-extras {
    flex-wrap: wrap;
    gap: 1em;
  }
}

.producer-content {
  margin-right: 2ch;
  flex-grow: 1;
}

.producer-content__readmore-wrapper {
  max-height: 132px;
  overflow: hidden;
}

.producer-logo {
  height: 150px;
  width: 300px;
  flex-shrink: 0;
  display: flex;
  margin-left: auto;
}

.producer-logo-img {
  height: 100%;
  width: 100%;
  align-self: flex-end;
  align-content: flex-end;
  object-fit: contain;
}

.producers-grid {
  display: flex;
  flex-wrap: wrap;
  clear: both;
  justify-content: space-around;
  align-items: center;
}

.producer-cell {
  width: 150px;
  margin: 1em;
}

.producer-cell-img {
  width: 100%;
}

.producer-cell-wrapper__registration {
  width: 150px;
  margin: 1em;
}

.producer-cell__registration {
  display: block;
  width: auto;
  margin: 0;
}
.producer-cell__registration.text-link {
  text-align: center;
  margin-top: 0.4em;
}

.producer-cell-img__registration {
  max-width: 75%;
  max-height: 200px;
}

.product-grid, .product-raster-grid {
  --text_color: var(--primary_text_color);
  --text_font: var(--font_family_1);
  --text_size: 14px;
  --title_font: var(--font_family_3);
  --title_size: 21px;
  display: grid;
  gap: 1rem;
  margin-bottom: 10px;
}
@media all and (max-width: 70em) {
  .product-grid, .product-raster-grid {
    grid-template-columns: repeat(2, minmax(125px, 1fr)) !important;
    gap: 0.5rem;
  }
}
@media all and (max-width: 35em) {
  .product-grid, .product-raster-grid {
    gap: 0.3rem;
  }
}
.product-grid a.product, .product-raster-grid a.product {
  color: var(--text_color);
  text-decoration: none;
  display: flex;
  flex-direction: column;
  float: left;
  box-sizing: border-box;
  background: white;
  border: 1px solid rgba(0, 0, 0, 0.1);
  transition: all 0.2s;
  position: relative;
  max-width: 450px;
}
.product-grid a.product:hover, .product-raster-grid a.product:hover {
  border: 1px solid var(--gray);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
.product-grid a.product .product__image, .product-raster-grid a.product .product__image {
  float: left;
  width: calc(100% - 30px);
  margin: 15px 15px 25px;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}
@media all and (max-width: 60em) {
  .product-grid a.product .product__image, .product-raster-grid a.product .product__image {
    width: calc(100% - 14px);
    margin: 7px 7px 10px;
  }
}
.product-grid a.product .product__image img, .product-raster-grid a.product .product__image img {
  float: left;
  width: 100%;
}
.product-grid a.product .product__info, .product-raster-grid a.product .product__info {
  box-sizing: border-box;
  padding: 0 25px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
@media all and (max-width: 35em) {
  .product-grid a.product .product__info, .product-raster-grid a.product .product__info {
    padding: 0 7px;
  }
}
.product-grid a.product .product__info strong, .product-raster-grid a.product .product__info strong {
  font-weight: normal;
  font-size: var(--title_size);
  line-height: 1em;
  display: block;
  margin-bottom: 3px;
}
.product-grid a.product .product__info strong span, .product-raster-grid a.product .product__info strong span {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-family: var(--text_font);
  font-weight: normal;
  font-size: var(--text_size);
  word-break: break-word;
}
.product-grid a.product .product__info p, .product-raster-grid a.product .product__info p {
  font-size: 13px;
  font-weight: normal;
  margin-bottom: 5px;
}
.product-grid a.product .product__info p span, .product-raster-grid a.product .product__info p span {
  float: left;
  width: 70%;
}
.product-grid a.product .product__info p span i, .product-raster-grid a.product .product__info p span i {
  font-size: 10px;
  margin-right: 2px;
}
.product-grid a.product .product__price, .product-raster-grid a.product .product__price {
  display: block;
  box-sizing: border-box;
  padding: 0 75px 15px 25px;
}
@media all and (max-width: 35em) {
  .product-grid a.product .product__price, .product-raster-grid a.product .product__price {
    padding: 0 55px 7px 7px;
  }
}
.product-grid a.product .product__price b, .product-raster-grid a.product .product__price b {
  color: var(--text_color);
  font-family: var(--title_font);
  font-weight: bold;
  font-size: var(--title_size);
  line-height: 1em;
}
@media all and (max-width: 25em) {
  .product-grid a.product .product__price b, .product-raster-grid a.product .product__price b {
    font-size: 18px;
    white-space: nowrap;
  }
}
.product-grid a.product .product__price b strike, .product-raster-grid a.product .product__price b strike {
  font-size: var(--text_size);
  white-space: nowrap;
}
@media all and (max-width: 25em) {
  .product-grid a.product .product__price b strike, .product-raster-grid a.product .product__price b strike {
    display: block;
    font-size: 14px;
  }
}
.product-grid a.product .product__price b.red, .product-raster-grid a.product .product__price b.red {
  color: var(--error_color);
}
.product-grid a.product .product__price em, .product-raster-grid a.product .product__price em {
  color: var(--gray);
  font-style: normal;
  font-size: 13px;
}
.product-grid a.product span.add-to-cart, .product-raster-grid a.product span.add-to-cart {
  position: absolute;
  bottom: 15px;
  right: 15px;
  width: 60px;
  height: 60px;
  background: url("../_graphics/icon_add_to_cart.svg") center center no-repeat;
  background-size: contain !important;
}
@media all and (max-width: 70em) {
  .product-grid a.product span.add-to-cart, .product-raster-grid a.product span.add-to-cart {
    bottom: 7px;
    right: 5px;
    width: 50px;
    height: 55px;
  }
}
.product-grid a.product span.add-to-cart span, .product-raster-grid a.product span.add-to-cart span {
  display: none;
}
.product-grid a.product span.add-to-cart:hover, .product-raster-grid a.product span.add-to-cart:hover {
  opacity: 0.8;
}
.product-grid a.product .price-on-demand, .product-raster-grid a.product .price-on-demand {
  position: absolute;
  bottom: 7px;
  right: 7px;
  width: 60px;
  height: 50px;
  border: 1px solid var(--primary_theme_color);
  background: var(--primary_theme_color);
  border-radius: 9px;
  display: flex;
  align-items: center;
  text-align: center;
  font-size: 0.8rem;
}
.product-grid a.product .price-on-demand a, .product-raster-grid a.product .price-on-demand a {
  text-decoration: none;
  color: white;
}
.product-grid a.product span.product__label, .product-raster-grid a.product span.product__label {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  position: absolute;
  top: 40px;
  left: 0;
  box-sizing: border-box;
  padding: 5px 10px 2px 15px;
  color: var(--secondary_text_color);
  font: normal var(--text_font);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 65%;
}
.product-grid a.product span.product__label.topper, .product-raster-grid a.product span.product__label.topper {
  background: var(--gray);
  right: 0;
  left: auto;
  z-index: 1;
  white-space: normal;
  max-height: 50px;
}
.product-grid a.product span.product__label.sale, .product-raster-grid a.product span.product__label.sale {
  background: var(--error_color);
}
.product-grid a.product span.product__label.new, .product-raster-grid a.product span.product__label.new {
  background: black;
}

.product-grid--three {
  grid-template-columns: repeat(3, minmax(250px, 1fr));
}
.product-grid--three div.product_dummy {
  width: 32%;
}

.product-grid--four {
  grid-template-columns: repeat(4, minmax(250px, 1fr));
  margin-top: 15px;
}

.product-grid--five {
  grid-template-columns: repeat(5, minmax(250px, 1fr));
  justify-content: flex-start;
}

.stock-info__price-on-demand {
  width: 75%;
  margin-bottom: 30px !important;
}

.product-grid {
  float: left;
  width: 100%;
}

@media all and (max-width: 30em) {
  .product-grid__one-per-line {
    grid-template-columns: repeat(1, minmax(125px, 1fr)) !important;
  }
}

.product-list, .product-raster-list {
  --text_color: var(--primary_text_color);
  --text_font: var(--font_family_1);
  --text_size: 12px;
  --title_font: var(--font_family_3);
  --title_size: 21px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 15px;
}
@media all and (max-width: 50em) {
  .product-list a.product .product__amount, .product-raster-list a.product .product__amount {
    grid-column: 3 !important;
    display: flex;
    justify-content: center;
  }
}
@media all and (max-width: 40em) {
  .product-list a.product, .product-raster-list a.product {
    grid-template-columns: 115px 1fr 1fr 1fr;
  }
  .product-list a.product .product__image, .product-raster-list a.product .product__image {
    width: 100px;
  }
  .product-list a.product .product__amount, .product-raster-list a.product .product__amount {
    display: none;
  }
  .product-list a.product .product__price, .product-raster-list a.product .product__price {
    white-space: nowrap;
  }
  .product-list a.product .product__price b, .product-raster-list a.product .product__price b {
    font-size: 16px !important;
  }
  .product-list a.product span.add-to-cart, .product-raster-list a.product span.add-to-cart {
    bottom: 7px !important;
    right: 5px !important;
  }
}
.product-list a.product, .product-raster-list a.product {
  color: var(--text_color);
  width: 100%;
  text-decoration: none;
  background: white;
  border: 1px solid rgba(0, 0, 0, 0.1);
  transition: all 0.2s;
  position: relative;
  display: grid;
  grid-template-rows: 60% 40%;
  grid-template-columns: 145px 1fr 1fr 1fr;
}
.product-list a.product:hover, .product-raster-list a.product:hover {
  border: 1px solid var(--gray);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
.product-list a.product .product__image, .product-raster-list a.product .product__image {
  float: left;
  width: 125px;
  margin: 10px;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  grid-row: 1/3;
  grid-column: 1;
}
.product-list a.product .product__image img, .product-raster-list a.product .product__image img {
  float: left;
  width: 100%;
}
.product-list a.product span.product__label, .product-raster-list a.product span.product__label {
  color: var(--text_color);
  font-size: var(--text_size);
  font-family: var(--text_font);
  position: absolute;
  left: 0;
  border-top-right-radius: 25px;
  border-bottom-right-radius: 25px;
  box-sizing: border-box;
  padding: 6px 10px;
  font-weight: normal;
  max-width: 145px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.product-list a.product span.product__label.topper, .product-raster-list a.product span.product__label.topper {
  background: var(--gray);
  top: auto;
  bottom: 10px;
  z-index: 1;
}
.product-list a.product span.product__label.new, .product-raster-list a.product span.product__label.new {
  background: var(--primary_theme_color);
  top: 0;
}
.product-list a.product span.product__label.sale, .product-raster-list a.product span.product__label.sale {
  background: var(--error_color);
  top: 55px;
}
.product-list a.product .product__info, .product-raster-list a.product .product__info {
  float: left;
  width: 100%;
  box-sizing: border-box;
  padding-top: 15px;
  padding-left: 10px;
  grid-row: 1;
  grid-column: 2/5;
  max-width: 90%;
}
.product-list a.product .product__info strong, .product-raster-list a.product .product__info strong {
  font-family: var(--text_font);
  font-size: var(--text_size);
  float: left;
  width: 100%;
  line-height: 1em;
  font-weight: normal;
  margin-bottom: 5px;
}
.product-list a.product .product__info strong span, .product-raster-list a.product .product__info strong span {
  font-family: var(--text_font);
  font-size: var(--text_size);
  font-weight: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.product-list a.product .product__info p, .product-raster-list a.product .product__info p {
  font-family: var(--font_family_2);
  font-size: 13px;
  float: left;
  width: 100%;
  font-weight: normal;
  margin-bottom: 10px;
}
.product-list a.product .product__info p span, .product-raster-list a.product .product__info p span {
  float: left;
  margin-right: 7px;
}
.product-list a.product .product__info p span i, .product-raster-list a.product .product__info p span i {
  font-size: 10px;
  margin-right: 2px;
}
.product-list a.product .product__price, .product-raster-list a.product .product__price {
  width: calc(100% - 15px);
  padding-left: 10px;
  margin-top: 5px;
  margin-bottom: 10px;
  grid-row: 2;
  grid-column: 2;
}
.product-list a.product .product__price b, .product-raster-list a.product .product__price b {
  color: var(--text_color);
  font-family: var(--title_font);
  font-size: var(--title_size);
  font-weight: bold;
  width: 100%;
  line-height: 1em;
}
.product-list a.product .product__price b strike, .product-raster-list a.product .product__price b strike {
  font-size: 14px;
  white-space: nowrap;
}
@media all and (max-width: 25em) {
  .product-list a.product .product__price b strike, .product-raster-list a.product .product__price b strike {
    display: block;
  }
}
.product-list a.product .product__price b.red, .product-raster-list a.product .product__price b.red {
  color: var(--error_color);
}
.product-list a.product .product__price em, .product-raster-list a.product .product__price em {
  float: left;
  width: 100%;
  font-size: 13px;
  color: var(--gray);
  font-style: normal;
}
.product-list a.product .product__size, .product-raster-list a.product .product__size {
  position: absolute;
  bottom: 80px;
  right: 0;
  z-index: 1;
  width: 200px;
}
.product-list a.product .product__size .select_wrapper, .product-raster-list a.product .product__size .select_wrapper {
  float: left;
  width: 90%;
  position: relative;
}
.product-list a.product .product__size .select_wrapper:after, .product-raster-list a.product .product__size .select_wrapper:after {
  content: "";
  font-family: var(--font-icons);
  font-size: 13px;
  color: var(--primary_text_color);
  right: 0;
  top: 0;
  bottom: 0;
  padding: 12px 12px 0;
  position: absolute;
  pointer-events: none;
  line-height: 14px;
  background-color: transparent;
}
.product-list a.product .product__size select, .product-raster-list a.product .product__size select {
  float: left;
  width: 100%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-shadow: none;
  display: inline-block;
  zoom: 1;
  color: var(--primary_text_color);
  background-color: var(--secondary_text_color);
  padding: 8px 40px 8px 1%;
  margin: 0 7px 0 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  font-family: var(--font_family_1);
  font-weight: normal;
  font-size: 1rem;
  border: 1px solid var(--gray);
  cursor: pointer;
  outline: none;
  transition: border 0.3s;
}
.product-list a.product .product__amount, .product-raster-list a.product .product__amount {
  z-index: 1;
  width: 100%;
  grid-row: 2;
  grid-column: 4;
  margin-bottom: 10px;
}
.product-list a.product .product__amount .amount_minus, .product-raster-list a.product .product__amount .amount_minus {
  float: left;
  width: 30px;
  border: 0;
  position: relative;
  cursor: pointer;
}
.product-list a.product .product__amount .amount_minus img, .product-raster-list a.product .product__amount .amount_minus img {
  float: left;
  width: 100%;
}
.product-list a.product .product__amount .amount_minus img:hover, .product-raster-list a.product .product__amount .amount_minus img:hover {
  opacity: 0.8;
}
.product-list a.product .product__amount .amount_plus, .product-raster-list a.product .product__amount .amount_plus {
  float: left;
  width: 30px;
  border: 0;
  position: relative;
  cursor: pointer;
}
.product-list a.product .product__amount .amount_plus img, .product-raster-list a.product .product__amount .amount_plus img {
  float: left;
  width: 100%;
}
.product-list a.product .product__amount .amount_plus:hover img, .product-raster-list a.product .product__amount .amount_plus:hover img {
  opacity: 0.8;
}
.product-list a.product .product__amount .amount_label, .product-raster-list a.product .product__amount .amount_label {
  float: left;
  width: 40px;
  height: 30px;
  margin-left: 3px;
  margin-right: 3px;
  border-radius: 3px;
  box-sizing: border-box;
  font-size: 16px;
  color: var(--primary_text_color);
  border: 1px solid lightgrey;
  text-align: center;
  background: white;
}
.product-list a.product span.add-to-cart, .product-raster-list a.product span.add-to-cart {
  z-index: 100;
  position: absolute;
  bottom: 7px;
  right: 10px;
  width: 60px;
  height: 60px;
  background: url("../_graphics/icon_add_to_cart.svg") center center no-repeat;
  background-size: contain !important;
}
.product-list a.product span.add-to-cart:hover, .product-raster-list a.product span.add-to-cart:hover {
  opacity: 0.8;
}
.product-list a.product span.add-to-cart.red, .product-raster-list a.product span.add-to-cart.red {
  background: url("../_graphics/icon_add_to_cart.svg") center center no-repeat;
  background-size: contain !important;
}
.product-list a.product .price-on-demand, .product-raster-list a.product .price-on-demand {
  position: absolute;
  bottom: 7px;
  right: 10px;
  width: 80px;
  height: 50px;
  border: 1px solid var(--primary_theme_color);
  border-radius: 9px;
  display: flex;
  align-items: center;
  text-align: center;
  font-size: 0.9rem;
}
.product-list a.product .price-on-demand a, .product-raster-list a.product .price-on-demand a {
  text-decoration: none;
  color: var(--gray);
}
.product-list a.product.highlight, .product-raster-list a.product.highlight {
  border: 1px solid var(--gray);
  box-sizing: border-box;
  box-shadow: 4px 4px 10px rgba(58, 54, 55, 0.4);
}

.product-list {
  float: left;
  width: 100%;
}

.product__page {
  width: 100%;
  float: left;
  margin-bottom: 35px;
}
.product__page .product__page-images {
  float: left;
  width: 40%;
}
.product__page .product__page-images a {
  float: left;
  width: 100%;
  border: 1px solid var(--background_color_2);
  margin-bottom: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: white;
}
.product__page .product__page-images a:hover {
  opacity: 0.8;
}
.product__page .product__page-images img.cover {
  float: left;
  box-sizing: border-box;
  max-height: 600px;
  height: 100%;
  max-width: 100%;
}
.product__page .product__page-images a.thumb {
  float: left;
  width: 19%;
  box-sizing: border-box;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  border: 1px solid var(--background_color_2);
  margin: 0 0.5% 10px;
  position: relative;
  height: 100px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: white;
}
.product__page .product__page-images a.thumb img {
  float: left;
  max-width: 100%;
  max-height: 100%;
}
.product__page .product__page-images a.thumb img.cover {
  max-height: 400px;
  object-fit: contain;
  position: relative;
}
.product__page .product__page-images a.thumb:hover {
  opacity: 0.8;
}
.product__page .product__page-images a.thumb span.icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
}
.product__page .product__page-images a.thumb span.icon i {
  color: var(--primary_text_color);
  font-size: 30px;
}
.product__page .product__page-images a.thumb span.more {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: var(--secondary_text_color);
  background: rgba(130, 130, 130, 0.8);
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
}
.product__page .product__page-images a.thumb span.more i {
  font-size: 20px;
  font-style: normal;
}
.product__page .product__page-images a.thumb ul.article-attachments li {
  list-style-type: none;
  margin-left: 0;
}
.product__page .product__page-images a.thumb ul.article-attachments li i {
  margin-right: 1em;
}
.product__page .product__page-info {
  float: right;
  width: 58%;
  box-sizing: border-box;
  padding: 30px;
  background: var(--transparent_1);
}
@media all and (max-width: 60em) {
  .product__page .product__page-info {
    padding: 25px 15px 15px 15px;
  }
}
.product__page .product__page-info h1 {
  float: left;
  width: 100%;
  box-sizing: border-box;
  font-family: var(--font_family_2);
  font-weight: normal;
  font-size: 40px;
  padding-right: 50px;
  margin-bottom: 10px;
  line-height: 0.9em;
  position: relative;
}
@media all and (max-width: 60em) {
  .product__page .product__page-info h1 {
    font-size: 30px;
  }
}
.product__page .product__page-info h1 span {
  text-transform: none;
  width: 100%;
  display: inline-block;
  font-family: var(--font_family_1);
  font-weight: normal;
  font-size: 20px;
}
.product__page .product__page-info h1 i {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 100;
  font-size: 40px;
  color: var(--gray);
}
.product__page .product__page-info h1 i.fas {
  display: none;
  color: var(--primary_theme_color);
}
.product__page .product__page-info .product__label {
  display: inline-block;
  margin-bottom: 5px;
  margin-right: 5px;
  box-sizing: border-box;
  padding: 7px 15px 7px 15px;
  font-family: var(--font_family_2);
  font-weight: normal;
  border-radius: 25px;
  color: var(--secondary_text_color);
}
.product__page .product__page-info .product__label.sale {
  background: var(--error_color);
}
.product__page .product__page-info .product__label.new {
  background: black;
}
.product__page .product__page-info .product__label.topper {
  background: var(--gray);
}
.product__page .product__page-info span.article-number {
  float: left;
  width: 100%;
  font-size: 13px;
  color: var(--gray);
  margin-bottom: 25px;
}
.product__page .product__page-info .product-price {
  float: left;
  width: 100%;
  margin-top: 10px;
  color: var(--primary_text_color);
  font-family: var(--font_family_3);
  font-weight: normal;
}
.product__page .product__page-info .product-price strong {
  font-size: 30px;
}
.product__page .product__page-info .product-price strike {
  display: inline-block;
  margin-left: 10px;
  font-size: 20px;
  color: var(--error_color);
}
.product__page .product__page-info .product-price em {
  float: left;
  width: 100%;
  font-family: var(--font_family_1);
  font-weight: normal;
  font-style: normal;
  font-size: 13px;
  color: var(--primary_text_color);
}
.product__page .product__page-info .product-price em:first-of-type {
  margin-top: 5px;
}
.product__page .product__page-info .product-price em.grey {
  color: var(--gray);
}
.product__page .product__page-info .product-price table.product-price-list tr th {
  text-align: right;
  vertical-align: baseline;
}
.product__page .product__page-info .product-price table.product-price-list tr td {
  vertical-align: baseline;
}
@media all and (max-width: 60em) {
  .product__page .product__page-info .product-price .percentage-reduction {
    font-size: 25px;
  }
}
.product__page .product__page-info .product-price.red strong {
  color: var(--error_color);
}
.product__page .product__page-info .product-price-specs {
  float: left;
  width: 100%;
  margin-top: 15px;
  margin-bottom: 25px;
}
.product__page .product__page-info .product-price-specs span {
  float: left;
  width: 100%;
  font-size: 14px;
}
.product__page .product__page-info .product-price-specs span i {
  font-size: 12px;
  margin-right: 2px;
}
.product__page .product__page-info .size a.size:hover {
  border: 1px solid var(--gray);
}
.product__page .product__page-info .product-size {
  float: left;
  width: 100%;
  margin-bottom: 20px;
}
.product__page .product__page-info .product-size strong {
  float: left;
  width: 100%;
  font-family: var(--font_family_2);
  font-weight: normal;
  font-size: 18px;
  margin-bottom: 15px;
}
.product__page .product__page-info .product-size strong a {
  color: var(--primary_text_color);
}
.product__page .product__page-info .product-size a.size {
  float: left;
  padding: 5px 10px;
  border: 1px solid var(--background_color_2);
  color: var(--primary_text_color);
  background: white;
  margin: 0 8px 8px 0;
  text-decoration: none;
}
.product__page .product__page-info .product-size a.size:hover {
  border: 1px solid var(--gray);
}
.product__page .product__page-info .product-size a.size.active {
  color: var(--secondary_text_color);
  background: black;
  border: 1px solid black;
}
.product__page .product__page-info .product__amount {
  display: block;
  float: left;
  width: 100%;
  margin-bottom: 10px;
}
.product__page .product__page-info .product__amount strong {
  float: left;
  width: 100%;
  font-family: var(--font_family_2);
  font-weight: normal;
  font-size: 18px;
  margin-bottom: 15px;
}
.product__page .product__page-info .product__amount .amount_minus, .product__page .product__page-info .product__amount .amount_plus {
  float: left;
  width: 30px;
  border: 0;
  position: relative;
  cursor: pointer;
  margin-top: 2px;
}
.product__page .product__page-info .product__amount .amount_minus img, .product__page .product__page-info .product__amount .amount_plus img {
  float: left;
  width: 100%;
}
.product__page .product__page-info .product__amount .amount_minus img:hover, .product__page .product__page-info .product__amount .amount_plus img:hover {
  opacity: 0.8;
}
.product__page .product__page-info .product__amount .amount_label {
  float: left;
  width: 8ch;
  box-sizing: border-box;
  padding: 8px 0;
  font-size: 16px;
  color: var(--primary_text_color);
  background: white;
  text-align: center;
  margin: 0 8px;
  border: 1px solid lightgrey;
}
.product__page .product__page-info .add-to-cart {
  float: left;
  display: inline-block;
  color: var(--secondary_text_color);
  background: var(--primary_theme_color);
  text-decoration: none;
  text-transform: uppercase;
  font-family: var(--font_family_2);
  font-weight: bold;
  font-size: 15px;
  line-height: 1em;
  padding: 15px 30px;
  position: relative;
  margin-top: 15px;
  cursor: pointer;
}
.product__page .product__page-info .add-to-cart img {
  display: none;
}
.product__page .product__page-info .add-to-cart:hover {
  background: black;
  color: white;
}
.product__page .product__page-info .product-usps {
  float: left;
  width: 100%;
  margin-top: 20px;
  line-height: 1.6em;
  color: var(--primary_text_color);
}
.product__page .product__page-info .price-on-demand {
  background: white;
  padding: 1em;
  margin: 1em 0;
  border: 1px solid var(--primary_theme_color);
  border-radius: 9px;
  display: inline-flex;
  align-items: center;
  text-align: center;
}
.product__page .product__page-info .price-on-demand a {
  text-decoration: none;
  color: var(--gray);
}
.product__page .product__page-accessories {
  float: left;
  width: 100%;
}
.product__page .product__page-accessories h2 {
  margin-bottom: 15px;
}
.product__page hr {
  margin: 2rem 0;
}
.product__page .add-to-favorites-btn:hover {
  opacity: 0.8;
}
.product__page .add-to-favorites-btn:hover:after {
  opacity: 1;
}

.add-to-cart-amount-input {
  -moz-appearance: textfield;
}
.add-to-cart-amount-input::-webkit-outer-spin-button, .add-to-cart-amount-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.product-variants {
  margin-bottom: 20px;
}
.product-variants .variant {
  min-width: 25px;
  text-align: center;
  display: inline-block;
  padding: 10px 15px;
  border: 1px solid #DDD;
  color: #000;
  background: #FFF;
  margin: 0 8px 8px 0;
  text-decoration: none;
}
.product-variants .variant:hover {
  color: white;
  background: black;
  text-decoration: none;
}
.product-variants .variant-selected {
  color: white;
  background: black;
}

.product__cover-wrapper {
  min-height: 400px;
}

.linked-articles {
  float: left;
  width: 100%;
  display: inline-flex;
  flex-direction: column;
  gap: 10px;
}

.linked-articles__block {
  float: left;
  width: 100%;
  box-sizing: border-box;
  border-radius: 3px;
  padding: 20px 40px 30px 40px;
}

.linked-articles__basket-popup {
  margin-top: 5px;
  max-height: 415px;
  overflow-y: auto;
}
.linked-articles__basket-popup .linked-articles__block {
  padding: 10px 15px 0 15px;
}

.products-menu {
  --font_family: var(--font_family_1);
  --font_size: 15px;
  --text_color: var(--primary_text_color);
  --background_color_nav: var(--background_color_1);
  --background_color_subnav: var(--background_color_nav);
  --hover_background_color: none;
  --hover_text_color: var(--primary_theme_color);
  float: left;
  width: 300px;
  height: auto;
  z-index: 1000;
  box-sizing: border-box;
}
.products-menu .products-menu-nav {
  background: var(--background_color_nav);
  float: left;
  width: 100%;
  list-style-type: none;
}
.products-menu .products-menu-item {
  float: left;
  width: 100%;
}
.products-menu .products-menu-item .svg-image {
  position: absolute;
  top: 8px;
  left: 30px;
  z-index: 100;
  width: 22px;
  height: 22px;
  background: var(--node-icons-color, var(--gray));
  mask-size: contain;
  mask-position: center;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
}
.products-menu .products-menu-item .menu-item-link {
  color: var(--text_color);
  font-size: var(--font_size);
  font-family: var(--font_family);
  float: left;
  width: 300px;
  box-sizing: border-box;
  position: relative;
  padding: 10px 30px 10px 65px;
  text-decoration: none;
}
.products-menu .products-menu-item .menu-item-link img {
  position: absolute;
  top: 8px;
  left: 30px;
  z-index: 100;
  width: 22px;
  height: 22px;
  background-size: contain !important;
}
.products-menu .products-menu-item .menu-item-link img.hover {
  z-index: 110;
  display: none;
}
.products-menu .products-menu-item .menu-item-link .svg-image {
  position: absolute;
  top: 8px;
  left: 30px;
  z-index: 100;
  width: 22px;
  height: 22px;
  background: var(--node-icons-color, var(--gray));
  mask-size: contain;
  mask-position: center;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
}
.products-menu .products-menu-item a.active {
  color: var(--node-icons-active-color, var(--primary_theme_color));
  font-weight: bold;
}
.products-menu .products-menu-item a.active .svg-image {
  background: var(--node-icons-active-color, var(--primary_theme_color));
}
.products-menu .products-menu-item:hover .svg-image {
  background: var(--node-icons-active-color, var(--primary_theme_color));
}
.products-menu .products-menu-item:hover a {
  color: var(--hover_text_color);
}
.products-menu .products-menu-item:hover img.hover {
  display: block;
}
.products-menu .products-menu-item:hover .menu-item-link {
  background-color: var(--hover_background_color);
}
.products-menu .products-menu-subnav {
  background: var(--background_color_subnav);
  font-size: var(--font_size);
  font-family: var(--font_family);
  position: absolute;
  top: 0;
  right: 0;
  z-index: 500;
  width: calc(100% - 300px);
  min-height: 100%;
  box-sizing: border-box;
  padding: 25px 75px;
  display: none;
}
.products-menu .products-menu-subnav ul {
  float: left;
  width: 100%;
  list-style-type: none;
  margin: 0;
  column-count: 3;
}
.products-menu .products-menu-subnav .sub-menu-item {
  display: inline-block;
  width: 100%;
}
.products-menu .products-menu-subnav .sub-menu-item .sub-menu-item-link {
  color: var(--text_color);
  display: inline-block;
  width: 100%;
  padding: 5px 0;
  border: 0;
  text-decoration: none;
}
.products-menu .products-menu-subnav .sub-menu-item .sub-menu-item-link:hover {
  color: var(--hover_text_color);
  background-color: var(--hover_background_color);
}
.products-menu .products-menu-subnav .sub-menu-item a.active {
  font-weight: bold;
}
.products-menu .products-menu-subnav.active {
  display: block;
}

.products-toggle {
  width: 100%;
  display: none;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 50px;
  left: 0;
}

/* icons */
@font-face {
  font-family: "slick";
  font-weight: normal;
  font-style: normal;
  src: url("../_fonts/slick.eot");
  src: url("../_fonts/slick.eot?#iefix") format("embedded-opentype"), url("../_fonts/slick.woff") format("woff"), url("../_fonts/slick.ttf") format("truetype"), url("../_fonts/slick.svg#slick") format("svg");
}
/* arrows */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  z-index: 400;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  opacity: 0.8;
}
@media all and (max-width: 45em) {
  .slick-prev,
.slick-next {
    display: none !important;
  }
}

.slick-prev:hover,
.slick-next:hover {
  opacity: 1;
}

.slick-prev.slick-disabled,
.slick-next.slick-disabled {
  opacity: 0.25;
}

.home__brand-slider .slick-prev,
.home__brand-slider .slick-next {
  height: 40px;
  width: 30px;
}

.slick-prev {
  left: 15px;
  background: url("../_graphics/arrow_left_slide.svg") center left no-repeat;
  background-size: 100% auto;
}

.slick-next {
  right: 15px;
  background: url("../_graphics/arrow_right_slide.svg") center right no-repeat;
  background-size: 100% auto;
}

.home__brand-slider .slick-prev {
  left: -10px;
  background: url("../_graphics/arrow_left.svg") center left no-repeat;
  background-size: 100% auto;
}

.home__brand-slider .slick-next {
  right: -10px;
  background: url("../_graphics/arrow_right.svg") center left no-repeat;
  background-size: 100% auto;
}

/* dots */
.slick-dots {
  z-index: 100;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 25px;
  height: 25px;
  margin: 0 2px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  font-family: "slick";
  font-size: 12px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 25px;
  height: 25px;
  content: "•";
  text-align: center;
  opacity: 0.6;
  color: grey;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  opacity: 1;
  color: black;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
  height: 100%;
}
.slick-list .slick-track {
  height: 100%;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: flex !important;
  max-height: calc(100% - 35px);
  width: 100%;
  object-fit: contain;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.quick-links {
  position: fixed;
  z-index: 9000;
  bottom: 50px;
  left: 0;
  background: white;
  border: 1px solid lightgrey;
  border-left: 0;
  border-radius: 0 5px 5px 0;
}

.quick-links__child {
  display: block;
  width: 22px;
  height: 22px;
  padding: 10px;
}
.quick-links__child img {
  width: auto;
  height: auto;
}

.quick-links__search {
  background: var(--primary_theme_color, lightgray);
  border-bottom: 1px solid lightgrey;
  border-radius: 0 5px 5px 0;
}

.sticky-nav {
  width: 100%;
  position: fixed;
  top: -100%;
  left: 0;
  z-index: 10000;
  box-sizing: border-box;
  padding: 7px 0;
  background: white;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.25);
  transition: all 0.4s;
  height: 65px;
}
.sticky-nav .logo {
  height: 50px;
  margin-right: 25px;
}
.sticky-nav .header__search {
  display: none;
}
.sticky-nav .mobile-hamburger {
  display: block;
  margin-top: 10px;
}
.sticky-nav .voucher-link {
  display: none;
}
.sticky-nav .header__search, .sticky-nav .header__indicators {
  margin-top: 0;
}
@media all and (max-width: 50em) {
  .sticky-nav .logo {
    display: none;
  }
  .sticky-nav .header__search {
    float: left;
    width: calc(100% - 200px);
  }
}

.sticky-nav.active {
  top: 0;
}

.sticky__hamburger-link {
  margin-top: 5px;
  margin-left: 5px;
  height: 40px;
}

@media all and (max-width: 60em) {
  .stock-label .fa-question-circle {
    display: none;
  }
}
.suggestions_row {
  float: left;
  width: 100%;
  box-sizing: border-box;
  padding: 10px;
  border-bottom: 1px solid var(--background_color_2);
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  color: var(--primary_text_color);
}
.suggestions_row:hover {
  background: var(--transparent_1);
}

.suggestions_row_image {
  width: 75px;
  background-size: contain !important;
}
.suggestions_row_image img {
  float: left;
  width: 100%;
}

.suggestions_row_info {
  width: calc(100% - 100px);
}
.suggestions_row_info strong {
  font-family: var(--font_family_2);
  font-weight: normal;
}
.suggestions_row_info strong span {
  font-family: var(--font_family_1);
  font-weight: normal;
}
.suggestions_row_info b {
  font-family: var(--font_family_3);
  font-weight: normal;
  color: var(--primary_theme_color);
}

.text {
  float: left;
  width: 100%;
}
.text h1 {
  color: var(--primary_theme_color);
  font-family: var(--font_family_3);
  font-size: 30px;
  line-height: 1.2em;
}
.text h1 a {
  color: var(--primary_text_color);
  text-decoration: underline;
}
.text h1 a:hover {
  color: var(--primary_text_color);
}
.text h1.center {
  text-align: center;
}
.text h1.red {
  color: var(--primary_theme_color);
}
.text h2 {
  color: var(--primary_text_color);
  font-family: var(--font_family_3);
  font-weight: normal;
  font-size: 28px;
  line-height: 1.2em;
  margin: 0 0 30px 0;
}
.text h2.red {
  color: var(--primary_theme_color);
}
.text h3 {
  color: var(--primary_theme_color);
  font-family: var(--font_family_3);
  font-weight: normal;
  font-size: 22px;
  line-height: 1.2em;
  margin: 0 0 20px 0;
}
.text p {
  line-height: 1.6em;
  margin-bottom: 25px;
}
.text p.hidden {
  display: none;
}
.text p.center {
  text-align: center;
}
.text p.nomargin {
  margin-bottom: 0;
}
.text ul {
  list-style-type: disc;
  margin-bottom: 25px;
}
.text ol {
  list-style-type: decimal;
  margin-left: 15px;
  margin-bottom: 25px;
  padding-left: 15px;
}
.text li {
  margin-left: 25px;
  margin-bottom: 5px;
  line-height: 1.4em;
}
.text ul.check {
  list-style-type: none;
  margin-bottom: 25px;
}
.text ul.check li {
  margin-left: 0;
  padding-left: 26px;
  margin-bottom: 8px;
  position: relative;
}
.text ul.list {
  float: left;
  width: 100%;
  list-style-type: none;
  margin-bottom: 30px;
}
.text ul.list li {
  float: left;
  width: 100%;
  padding: 10px 0;
  margin: 0;
  line-height: 1.3em;
  border-bottom: 1px solid var(--background_color_2);
}
.text ol.list {
  margin-left: 0;
}
.text ol.list li {
  padding: 2px 0;
}
.text table {
  width: 100%;
  margin-bottom: 25px;
}
.text td {
  padding: 5px;
  vertical-align: top;
  line-height: 1.4em;
  border-bottom: 1px solid var(--background_color_2);
}
.text table.specs tr:nth-child(odd) td {
  background: var(--transparent_1);
}
.text table.specs tr:nth-child(even) td {
  background: white;
}
.text table.specs td {
  padding: 15px;
  border-bottom: 0;
  word-break: break-word;
}
.text table.specs td.label {
  font-family: var(--font_family_2);
  font-weight: normal;
  word-break: normal;
}

.text__left {
  float: left;
  width: 40%;
  box-sizing: border-box;
}

.text__right {
  float: right;
  width: 55%;
  box-sizing: border-box;
}
.text__right iframe {
  margin-top: 25px;
}

.text__center {
  float: left;
  width: 100%;
  box-sizing: border-box;
}

.text__right-slider {
  float: left;
  width: 100%;
  margin-bottom: 25px;
}

.text__right-slide {
  display: flex !important;
  justify-content: center;
}
.text__right-slide a {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 1px;
}
.text__right-slide span {
  float: left;
  width: 100%;
  font-family: var(--font_family_2);
  font-weight: normal;
  text-align: center;
  margin-top: 10px;
}

a {
  color: black;
  transition-property: color, opacity;
  transition-duration: 0.1s;
  transition-timing-function: ease-out;
}
a:hover {
  color: black;
}

#body [tooltip]::after {
  position: absolute;
  width: 140px;
  left: calc(50% - 70px);
  bottom: 133%;
  text-align: center;
  box-sizing: border-box;
  content: attr(tooltip);
  color: white;
  background: var(--primary_theme_color);
  padding: 5px 10px 3px 10px;
  border-radius: 7px;
  font-size: 13px;
  font-family: var(--font_family_1);
  line-height: 15px;
  font-weight: normal;
  visibility: hidden;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.3s, transform 0.2s;
}
#body [tooltip]:hover::after {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.top {
  float: left;
  width: 100%;
  height: 45px;
  box-sizing: border-box;
  color: var(--gray);
  font-size: 15px;
  padding-top: 12px;
  text-align: right;
}
.top a {
  color: var(--gray);
  text-decoration: none;
}

.top__left {
  float: left;
}
.top__left a {
  color: var(--gray);
  font-weight: bold;
  margin-right: 2rem;
}
.top__left a:hover {
  color: var(--primary_text_color);
}
.top__left .contact-link {
  text-decoration: underline;
}
.top__left .delivery-country-link img {
  margin-left: 0.5em;
  height: 1rem;
  border: 1px solid grey;
  vertical-align: middle;
}

.top__right {
  float: right;
}
.top__right a {
  margin-left: 2rem;
}
.top__right a:hover {
  text-decoration: underline;
}

.shop__usp-wrapper {
  float: left;
  width: 100%;
  background: white;
}

.shop__usp-box {
  float: left;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 20px;
  padding-bottom: 20px;
}
.shop__usp-box span {
  color: var(--primary_theme_color);
  display: inline-block;
  padding-left: 30px;
  font-size: 13px;
  line-height: 1.2em;
  position: relative;
}
.shop__usp-box span:before {
  content: "";
  position: absolute;
  top: 2px;
  left: 0;
  width: 18px;
  height: 18px;
  background: url("../_graphics/icon_checkmark.svg") top left no-repeat;
  background-size: 100% 100%;
}

.home__usp-box {
  float: left;
  width: 100%;
  box-sizing: border-box;
  padding: 25px 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  background-size: cover !important;
}
.home__usp-box span {
  float: left;
  width: 19%;
  color: var(--primary_text_color);
  font-family: var(--font_family_3);
  font-weight: normal;
  text-align: center;
  font-size: 15px;
  line-height: 1.25em;
  position: relative;
}
.home__usp-box span:before {
  content: "";
  position: absolute;
  top: 2px;
  left: 0;
  width: 18px;
  height: 18px;
  background: url("../_graphics/icon_checkmark.svg") top left no-repeat;
  background-size: 100% 100%;
}
.home__usp-box span img {
  width: 18px;
  vertical-align: top;
  margin-bottom: 10px;
}

.v-margin {
  margin: 20px 0 !important;
}

.hide {
  display: none;
}

.green {
  color: var(--success_color, green);
}

.red {
  color: var(--error_color, #FF4141);
}

.orange {
  color: var(--warning_color, orange);
}

.yellow {
  color: var(--yellow-color, #b69c10);
}

.grey {
  color: var(--gray, gray);
}

.uppercased {
  text-transform: uppercase;
}

.inline-block {
  display: inline-block;
}

.clear {
  clear: both;
}

.default-cursor {
  cursor: default !important;
}

.unit {
  font-size: 0.8em;
  margin-left: 1em;
  vertical-align: baseline;
}

.flex-column {
  flex-direction: column;
}

.parent {
  float: left;
  width: 100%;
  position: relative;
}

.svg-icon-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: var(--primary_theme_color);
  border-radius: 50px;
  width: 50px;
  height: 50px;
}
.svg-icon-wrapper img {
  width: 100%;
  height: 100%;
}

.grid--three {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 15px;
}

.float-right {
  float: right;
}

.align-right {
  float: right;
}

.align-left {
  float: left;
}

.align-middle {
  display: block !important;
  width: fit-content !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.loading {
  position: relative;
  opacity: 0.5;
}
.loading:after {
  content: "";
  position: absolute;
  left: calc((100% - 50px) / 2);
  top: calc((100% - 50px) / 2);
  width: 50px;
  aspect-ratio: 1;
  border-radius: 50%;
  border: 8px solid var(--gray, grey);
  border-right-color: black;
  animation: l2 1s infinite linear;
}

@keyframes l2 {
  to {
    transform: rotate(1turn);
  }
}
.tippy-box[data-animation=fade][data-state=hidden] {
  opacity: 0;
}

[data-tippy-root] {
  max-width: calc(100vw - 10px);
}

.tippy-box {
  position: relative;
  background-color: #333;
  color: #fff;
  border-radius: 4px;
  font-size: 14px;
  line-height: 1.4;
  white-space: normal;
  outline: 0;
  transition-property: transform, visibility, opacity;
}

.tippy-box[data-placement^=top] > .tippy-arrow {
  bottom: 0;
}

.tippy-box[data-placement^=top] > .tippy-arrow:before {
  bottom: -7px;
  left: 0;
  border-width: 8px 8px 0;
  border-top-color: initial;
  transform-origin: center top;
}

.tippy-box[data-placement^=bottom] > .tippy-arrow {
  top: 0;
}

.tippy-box[data-placement^=bottom] > .tippy-arrow:before {
  top: -7px;
  left: 0;
  border-width: 0 8px 8px;
  border-bottom-color: initial;
  transform-origin: center bottom;
}

.tippy-box[data-placement^=left] > .tippy-arrow {
  right: 0;
}

.tippy-box[data-placement^=left] > .tippy-arrow:before {
  border-width: 8px 0 8px 8px;
  border-left-color: initial;
  right: -7px;
  transform-origin: center left;
}

.tippy-box[data-placement^=right] > .tippy-arrow {
  left: 0;
}

.tippy-box[data-placement^=right] > .tippy-arrow:before {
  left: -7px;
  border-width: 8px 8px 8px 0;
  border-right-color: initial;
  transform-origin: center right;
}

.tippy-box[data-inertia][data-state=visible] {
  transition-timing-function: cubic-bezier(0.54, 1.5, 0.38, 1.11);
}

.tippy-arrow {
  width: 16px;
  height: 16px;
  color: #333;
}

.tippy-arrow:before {
  content: "";
  position: absolute;
  border-color: transparent;
  border-style: solid;
}

.tippy-content {
  position: relative;
  padding: 5px 9px;
  z-index: 1;
}

.wrapper {
  margin: 0 auto;
  max-width: 1280px;
  position: relative;
}
@media all and (max-width: 85em) {
  .wrapper {
    width: 95%;
  }
}
@media all and (max-width: 35em) {
  .wrapper {
    width: 97%;
  }
}

.small_wrapper {
  margin: 0 auto;
  max-width: 640px;
  position: relative;
}

.grey_wrapper {
  float: left;
  width: 100%;
  background: #F9F9F9;
}

.main {
  float: right;
  width: calc(100% - 315px);
}

.controls {
  float: left;
  width: 100%;
  margin-bottom: 25px;
  display: flex;
}

.controls__left {
  float: left;
}
.controls__left img {
  float: left;
  width: 34px;
  margin-right: 8px;
}
.controls__left img:hover {
  opacity: 0.8;
}
.controls__left img.active:hover {
  opacity: 1;
}

.controls__right {
  float: right;
  flex: 1;
}
.controls__right .select_wrapper {
  float: right;
  width: 250px;
  position: relative;
}
.controls__right .select_wrapper:after {
  content: "";
  position: absolute;
  right: 0;
  top: 2px;
  width: 34px;
  height: 100%;
  background: url("../_graphics/arrow_down.svg") center center no-repeat;
  background-size: 12px auto;
  pointer-events: none;
}
.controls__right .select_wrapper select {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-shadow: none;
  display: inline-block;
  zoom: 1;
  color: var(--primary_text_color);
  background-color: var(--transparent_1);
  padding: 7px 14px;
  margin: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  font-family: var(--font_family_1);
  font-weight: normal;
  font-size: 15px;
  width: 100%;
  cursor: pointer;
  outline: none;
}

.paging {
  float: left;
  width: 100%;
  margin-bottom: 10px;
}
.paging .paging__left {
  float: left;
  font-size: 12px;
  line-height: 1.25em;
}
.paging .paging__right {
  float: right;
  text-align: right;
}

.pagination__number {
  display: inline-block;
  color: var(--primary_text_color);
  text-decoration: none;
  padding: 5px;
}
.pagination__number:hover {
  color: var(--primary_theme_color);
}

.pagination__number.active {
  font-weight: normal;
  color: var(--primary_theme_color);
  text-decoration: none;
}

.pagination__seperator {
  display: inline-block;
  width: 1px;
  background: var(--transparent_1);
  padding: 5px 0;
  margin: 0 4px;
  color: transparent;
}

.pagination__previous, .pagination__next {
  color: var(--primary_text_color);
  text-decoration: none;
  padding: 5px;
}
.pagination__previous:hover, .pagination__next:hover {
  color: var(--primary_theme_color);
}

.product__controls {
  float: left;
  width: 100%;
  margin-bottom: 25px;
}
.product__controls a {
  color: var(--primary_text_color);
  text-decoration: none;
}
.product__controls a:hover {
  text-decoration: underline;
}
.product__controls a i.fa-angle-left {
  margin-right: 7px;
  color: var(--primary_theme_color);
}
.product__controls a i.fa-angle-right {
  margin-left: 7px;
  color: var(--primary_theme_color);
}

.product__controls-left {
  float: left;
}

.product__controls-right {
  float: right;
  text-align: right;
}

.product__top {
  display: flex;
  gap: 1rem;
}
.product__top .product__top__left {
  flex: 1;
}
.product__top .product__top__producer {
  padding-top: 4px;
}
.product__top .product__top__producer a {
  display: inline-block;
}
.product__top .product__top__producer a img {
  max-width: 150px;
  max-height: 66px;
  flex-shrink: 0;
}

.container, .content, .page-content, .pagecontent {
  width: 100%;
  float: left;
}

.table-wrapper {
  display: block;
  overflow-x: auto;
  margin-bottom: 25px;
  float: left;
  width: 100%;
}

.default-page-wrapper {
  padding-top: 1em;
}
.default-page-wrapper h1:first-child {
  margin-bottom: 0.5em;
}

.footer__usp-wrapper {
  float: left;
  width: 100%;
}

.revenue-category__node-description {
  display: block;
  float: right;
  width: calc(100% - 315px);
}
@media all and (max-width: 50em) {
  .revenue-category__node-description {
    float: left;
    width: 100%;
  }
}

.node-description__wrapper {
  display: flex;
  margin-bottom: 10px;
}

.node-description__content {
  background: white;
  padding: 5px 10px 5px 10px;
  border: 1px solid var(--primary_theme_color);
  border-radius: 5px;
}

.user-html h1, .user-html h2, .user-html h3, .user-html h4, .user-html h5 {
  margin-bottom: 5px;
}
.user-html table td {
  padding-right: 0.5rem;
}
.user-html ul {
  padding-left: 25px;
}

.sectioned-page {
  max-width: 1100px;
}
.sectioned-page .image-wrapper {
  display: flex;
  width: 100%;
}
.sectioned-page .image-wrapper img {
  width: 100%;
  margin: 0 auto;
}
.sectioned-page .image-wrapper.fullscreen img {
  width: 100%;
  margin: 0 auto;
}
.sectioned-page .image-wrapper.half-width img {
  max-width: 50%;
  margin: 0 auto;
}
.sectioned-page h1, .sectioned-page h2, .sectioned-page h3, .sectioned-page h4, .sectioned-page h5 {
  margin: 2rem 0 0.5em;
}
.sectioned-page h1 {
  font-size: 2.2rem;
  font-weight: bold;
}
@media all and (max-width: 75em) {
  .sectioned-page h1 {
    margin-left: 10px;
  }
}
.sectioned-page h2 {
  font-size: 1.6rem;
}
@media all and (max-width: 75em) {
  .sectioned-page h2 {
    margin-left: 10px;
  }
}
.sectioned-page h3 {
  font-size: 1.2rem;
}
.sectioned-page div.white-space {
  float: left;
  width: 100%;
  line-height: 0;
}
.sectioned-page div.white-space:after {
  content: "​";
}
.sectioned-page div.white-space--small {
  margin: 1em 0;
}
.sectioned-page div.white-space--medium {
  margin: 2em 0;
}
.sectioned-page div.white-space--large {
  margin: 3em 0;
}

.button-bar {
  float: left;
}
.button-bar a, .button-bar button {
  margin-left: 2em;
}
.button-bar a:first-child, .button-bar button:first-child {
  margin-left: 0;
}

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

.w-half {
  width: 60%;
  margin-left: auto;
  margin-right: auto;
}
@media all and (max-width: 70em) {
  .w-half {
    width: 80%;
  }
}

.bg-gray {
  background: rgba(147, 149, 152, 0.1);
}

a.internal-link-target {
  display: block;
  position: relative;
  top: -110px;
  visibility: hidden;
}

ul.styled-list {
  list-style-type: none;
}
ul.styled-list li {
  margin-left: 0;
  padding-left: 1em;
  margin-bottom: 0.2em;
  position: relative;
}
ul.styled-list li:after {
  content: "";
  font-family: var(--font-icons);
  font-weight: 400;
  font-size: 0.6em;
  color: var(--primary_theme_color);
  left: 0;
  top: 7px;
  position: absolute;
  pointer-events: none;
}

.page-catalog {
  position: relative;
  margin-bottom: 25px;
}
@media all and (max-width: 60em) {
  .page-catalog {
    margin-bottom: 5px;
  }
}
.page-catalog .page-content {
  padding-top: 2rem;
}
@media all and (max-width: 60em) {
  .page-catalog .page-content {
    padding-top: 5px;
  }
}
.page-catalog .page-content:after {
  content: "";
  display: table;
  clear: both;
}
@supports (display: flex) {
  .page-catalog .page-content {
    display: flex;
  }
}
.page-catalog .page-content nav#sidemenu-filters {
  float: left;
  width: 18rem;
}
.page-catalog .page-content nav#sidemenu-filters .overlay-panel-header,
.page-catalog .page-content nav#sidemenu-filters .overlay-panel-footer {
  display: none;
}
@media (max-width: var(--mq-xs2)) {
  .page-catalog .page-content nav#sidemenu-filters .overlay-panel-header,
.page-catalog .page-content nav#sidemenu-filters .overlay-panel-footer {
    display: block;
  }
}
.page-catalog .page-content nav#sidemenu-filters .divided-block {
  padding: 1rem 0;
}
.page-catalog .page-content nav#sidemenu-filters .divided-block.top-block {
  padding-top: 0 !important;
}
.page-catalog .page-content nav#sidemenu-filters .divided-block.line-top {
  padding: 1.4rem 0;
  border-top: 1px solid var(--color-line);
}
.page-catalog .page-content nav#sidemenu-filters .divided-block.line-btm {
  padding: 1.4rem 0;
  border-bottom: 1px solid var(--color-line);
}
.page-catalog .page-content nav#sidemenu-filters .divided-block h4 {
  margin-bottom: 0.8rem;
}
@media (max-width: var(--mq-xs2)) {
  .page-catalog .page-content nav#sidemenu-filters {
    position: fixed;
    left: 0;
    top: 0;
    width: 100% !important;
    height: 100%;
    overflow: hidden;
    transition: all 0.15s ease-out;
    background-color: #FFFFFF;
    z-index: 9999;
    transform: translate(100%, 0);
  }
  .page-catalog .page-content nav#sidemenu-filters.opened {
    overflow: hidden;
    transform: translate(0, 0);
  }
  .page-catalog .page-content nav#sidemenu-filters .scrollarea {
    padding: 6rem 1rem;
    width: 100%;
    height: 100%;
    overflow: hidden;
    overflow-y: auto;
  }
}
@media (max-width: var(--mq-lg)) {
  .page-catalog .page-content nav#sidemenu-filters {
    width: 14rem;
  }
}
@supports (display: flex) {
  .page-catalog .page-content nav#sidemenu-filters {
    float: none;
    flex-basis: 18rem;
    flex-shrink: 0;
    flex-grow: 0;
  }
  @media (max-width: var(--mq-lg)) {
    .page-catalog .page-content nav#sidemenu-filters {
      flex-basis: 14rem;
    }
  }
}
.page-catalog .page-content nav#sidemenu-filters .revenue-categories {
  display: flex;
  flex-direction: column;
  row-gap: 0.5em;
}
.page-catalog .page-content nav#sidemenu-filters .revenue-categories a.active {
  font-weight: bold;
}
.page-catalog .page-content section.pagecontent {
  flex-grow: 1;
  padding-left: 3rem;
}
@media (max-width: var(--mq-xs2)) {
  .page-catalog .page-content section.pagecontent {
    padding-left: 0;
  }
}
.page-catalog .page-content section.pagecontent section.page-heading {
  padding-bottom: 2rem;
}
.page-catalog .page-content section.pagecontent section.page-heading .toplevel {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
}
.page-catalog .page-content section.pagecontent section.page-heading .toplevel button {
  position: relative;
  top: -0.5rem;
}
@media (max-width: var(--mq-lg)) {
  .page-catalog .page-content section.pagecontent section.page-heading h1 {
    margin-bottom: 1rem;
  }
}
.page-catalog .page-content section.pagecontent section.page-heading .infobar {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.page-catalog .page-content section.pagecontent section.page-heading .infobar .actions {
  flex-grow: 1;
  text-align: right;
}
.page-catalog .page-content section.pagecontent section.page-heading .infobar .actions > * {
  display: inline-block;
  margin-left: 0.8rem;
}
.page-catalog .page-content section.pagecontent section.page-heading .infobar .actions select {
  width: auto;
}
.page-catalog .page-content section.pagecontent h3,
.page-catalog .page-content section.pagecontent h4 {
  padding-bottom: 0.8rem;
}
.page-catalog .page-content section.pagecontent .catalog-page-links {
  margin-bottom: 2rem;
}
.page-catalog .page-content section.pagecontent .catalog-page-links a {
  text-decoration: none;
  color: var(--color-text);
  margin-right: 2rem;
}
@media (max-width: 45em) {
  .page-catalog .page-content section.pagecontent .catalog-page-links a {
    display: inline-block;
    margin-right: 1rem;
    margin-bottom: 1rem;
  }
}
.page-catalog .page-content section.pagecontent .catalog-page-links a:hover {
  color: var(--color-links);
}
.page-catalog .page-content section.pagecontent .catalog-page-links a i {
  margin-left: 10px;
}
.page-catalog .page-content section.pagecontent .catalog-company-info {
  float: left;
  border: 1px solid var(--gray);
  border-radius: 0.4rem;
  padding: 1rem 3rem 1rem 1rem;
  margin-bottom: 3rem;
}
@media (max-width: var(--mq-sm)) {
  .page-catalog .page-content section.pagecontent .catalog-company-info {
    padding: 1rem 1rem;
  }
}
.page-catalog .page-content section.pagecontent .catalog-company-info img {
  display: block;
  width: 94%;
  max-width: 16rem;
}
.page-catalog .page-content section.pagecontent .catalog-company-info .producer-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.page-catalog .page-content section.pagecontent .catalog-company-info .producer-info .links {
  margin-top: 1rem;
}
.page-catalog .page-content section.pagecontent .catalog-company-info .producer-info .links a {
  margin-bottom: 0.2rem;
}
.page-catalog .page-content section.pagecontent .catalog-block {
  float: left;
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 1rem;
  box-sizing: border-box;
}
.page-catalog .page-content section.pagecontent .catalog-block:first-of-type {
  padding-top: 0;
}
.page-catalog .page-content section.pagecontent .catalog-block.imagetext {
  padding-right: 8rem;
}
@media (max-width: var(--mq-lg)) {
  .page-catalog .page-content section.pagecontent .catalog-block.imagetext {
    padding-right: 2rem;
  }
}
@media all and (max-width: 75em) {
  .page-catalog .page-content section.pagecontent .catalog-block.imagetext {
    padding-right: 0;
    padding-left: 0;
  }
}
.page-catalog .page-content section.pagecontent .catalog-block.imagetext img {
  display: block;
  width: 94%;
  max-width: 20rem;
}
@media all and (max-width: 75em) {
  .page-catalog .page-content section.pagecontent .catalog-block.imagetext img {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: var(--mq-sm)) {
  .page-catalog .page-content section.pagecontent .catalog-block.imagetext img {
    margin-bottom: 0.6rem;
  }
}
.page-catalog .page-content section.pagecontent .to-top {
  overflow: auto;
}
@media all and (max-width: 70em) {
  .page-catalog .page-content section.pagecontent {
    padding-left: 0;
  }
}
.page-catalog .page-content button#sidemenu-filters-toggle {
  display: none;
}
@media (max-width: var(--mq-xs2)) {
  .page-catalog .page-content button#sidemenu-filters-toggle {
    display: block;
  }
}

.product-raster-wrapper {
  float: left;
  width: 100%;
}

.page-catalog__banner {
  float: left;
  width: 100%;
  background: url(../_graphics/banner.png) no-repeat center center;
  background-size: 1440px;
}

.page-catalog__banner-cover {
  background: var(--primary_theme_color);
  opacity: 0.9;
  text-align: center;
  padding-top: 20px;
  padding-bottom: 15px;
}

.page-catalog__banner-title {
  color: var(--secondary_text_color);
  margin: 0 !important;
}
@media all and (max-width: 80em) {
  .page-catalog__banner-title {
    font-size: 25px !important;
  }
}

.page-catalog__banner-desc {
  color: var(--secondary_text_color);
  margin-bottom: 15px !important;
  font-family: var(--font_nimbus-sans-bold) !important;
  margin-top: 0 !important;
}
@media all and (max-width: 80em) {
  .page-catalog__banner-desc {
    font-size: 17px !important;
  }
}

.page-catalog__text {
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 20px;
}
@media all and (max-width: 75em) {
  .page-catalog__text {
    padding: 10px;
  }
}

.page-catalog__text-title {
  margin-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.row {
  box-sizing: border-box;
  margin: 0 auto;
  width: 100%;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 0 1 auto;
  flex-direction: row;
  flex-wrap: wrap;
}
@media all and (max-width: 75em) {
  .row {
    flex-direction: column;
  }
}

.row.reverse {
  flex-direction: row-reverse;
}

.row.natural-height {
  align-items: flex-start;
}

.row.flex-column {
  flex-direction: column;
}

.col {
  box-sizing: border-box;
  flex-grow: 1;
  flex-basis: 0;
  max-width: 100%;
  padding: 7px;
}

.col.reverse {
  flex-direction: column-reverse;
}

.first {
  order: -1;
}

.last {
  order: 1;
}

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

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

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

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

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

.col-xs {
  box-sizing: border-box;
  flex-grow: 1;
  flex-basis: 0;
  max-width: 100% !important;
  padding: 7px;
}

.col-xs-1 {
  box-sizing: border-box;
  flex-basis: 8.3333333333%;
  max-width: 8.3333333333%;
  padding: 7px;
}

.col-xs-offset-1 {
  margin-left: 8.3333333333%;
}

.col-xs-2 {
  box-sizing: border-box;
  flex-basis: 16.6666666667%;
  max-width: 16.6666666667%;
  padding: 7px;
}

.col-xs-offset-2 {
  margin-left: 16.6666666667%;
}

.col-xs-3 {
  box-sizing: border-box;
  flex-basis: 25%;
  max-width: 25%;
  padding: 7px;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-4 {
  box-sizing: border-box;
  flex-basis: 33.3333333333%;
  max-width: 33.3333333333%;
  padding: 7px;
}

.col-xs-offset-4 {
  margin-left: 33.3333333333%;
}

.col-xs-5 {
  box-sizing: border-box;
  flex-basis: 41.6666666667%;
  max-width: 41.6666666667%;
  padding: 7px;
}

.col-xs-offset-5 {
  margin-left: 41.6666666667%;
}

.col-xs-6 {
  box-sizing: border-box;
  flex-basis: 50%;
  max-width: 50%;
  padding: 7px;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-7 {
  box-sizing: border-box;
  flex-basis: 58.3333333333%;
  max-width: 58.3333333333%;
  padding: 7px;
}

.col-xs-offset-7 {
  margin-left: 58.3333333333%;
}

.col-xs-8 {
  box-sizing: border-box;
  flex-basis: 66.6666666667%;
  max-width: 66.6666666667%;
  padding: 7px;
}

.col-xs-offset-8 {
  margin-left: 66.6666666667%;
}

.col-xs-9 {
  box-sizing: border-box;
  flex-basis: 75%;
  max-width: 75%;
  padding: 7px;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-10 {
  box-sizing: border-box;
  flex-basis: 83.3333333333%;
  max-width: 83.3333333333%;
  padding: 7px;
}

.col-xs-offset-10 {
  margin-left: 83.3333333333%;
}

.col-xs-11 {
  box-sizing: border-box;
  flex-basis: 91.6666666667%;
  max-width: 91.6666666667%;
  padding: 7px;
}

.col-xs-offset-11 {
  margin-left: 91.6666666667%;
}

.col-xs-12 {
  box-sizing: border-box;
  flex-basis: 100%;
  max-width: 100%;
  padding: 7px;
}

.col-xs-offset-12 {
  margin-left: 100%;
}

.row.start-xs {
  justify-content: flex-start;
}

.row.center-xs {
  justify-content: center;
}

.row.end-xs {
  justify-content: flex-end;
}

.row.top-xs {
  align-items: flex-start;
}

.row.middle-xs {
  align-items: center;
}

.row.bottom-xs {
  align-items: flex-end;
}

.row.around-xs {
  justify-content: space-around;
}

.row.between-xs {
  justify-content: space-between;
}

.first-xs {
  order: -1;
}

.last-xs {
  order: 1;
}

@media only screen and (min-width: 501px) {
  .col-sm {
    box-sizing: border-box;
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100% !important;
    padding: 7px;
  }

  .col-sm-1 {
    box-sizing: border-box;
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 7px;
  }

  .col-sm-offset-1 {
    margin-left: 8.3333333333%;
  }

  .col-sm-2 {
    box-sizing: border-box;
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 7px;
  }

  .col-sm-offset-2 {
    margin-left: 16.6666666667%;
  }

  .col-sm-3 {
    box-sizing: border-box;
    flex-basis: 25%;
    max-width: 25%;
    padding: 7px;
  }

  .col-sm-offset-3 {
    margin-left: 25%;
  }

  .col-sm-4 {
    box-sizing: border-box;
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 7px;
  }

  .col-sm-offset-4 {
    margin-left: 33.3333333333%;
  }

  .col-sm-5 {
    box-sizing: border-box;
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 7px;
  }

  .col-sm-offset-5 {
    margin-left: 41.6666666667%;
  }

  .col-sm-6 {
    box-sizing: border-box;
    flex-basis: 50%;
    max-width: 50%;
    padding: 7px;
  }

  .col-sm-offset-6 {
    margin-left: 50%;
  }

  .col-sm-7 {
    box-sizing: border-box;
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 7px;
  }

  .col-sm-offset-7 {
    margin-left: 58.3333333333%;
  }

  .col-sm-8 {
    box-sizing: border-box;
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 7px;
  }

  .col-sm-offset-8 {
    margin-left: 66.6666666667%;
  }

  .col-sm-9 {
    box-sizing: border-box;
    flex-basis: 75%;
    max-width: 75%;
    padding: 7px;
  }

  .col-sm-offset-9 {
    margin-left: 75%;
  }

  .col-sm-10 {
    box-sizing: border-box;
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 7px;
  }

  .col-sm-offset-10 {
    margin-left: 83.3333333333%;
  }

  .col-sm-11 {
    box-sizing: border-box;
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 7px;
  }

  .col-sm-offset-11 {
    margin-left: 91.6666666667%;
  }

  .col-sm-12 {
    box-sizing: border-box;
    flex-basis: 100%;
    max-width: 100%;
    padding: 7px;
  }

  .col-sm-offset-12 {
    margin-left: 100%;
  }

  .row.start-sm {
    justify-content: flex-start;
  }

  .row.center-sm {
    justify-content: center;
  }

  .row.end-sm {
    justify-content: flex-end;
  }

  .row.top-sm {
    align-items: flex-start;
  }

  .row.middle-sm {
    align-items: center;
  }

  .row.bottom-sm {
    align-items: flex-end;
  }

  .row.around-sm {
    justify-content: space-around;
  }

  .row.between-sm {
    justify-content: space-between;
  }

  .first-sm {
    order: -1;
  }

  .last-sm {
    order: 1;
  }
}
@media only screen and (min-width: 671px) {
  .col-md {
    box-sizing: border-box;
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100% !important;
    padding: 7px;
  }

  .col-md-1 {
    box-sizing: border-box;
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 7px;
  }

  .col-md-offset-1 {
    margin-left: 8.3333333333%;
  }

  .col-md-2 {
    box-sizing: border-box;
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 7px;
  }

  .col-md-offset-2 {
    margin-left: 16.6666666667%;
  }

  .col-md-3 {
    box-sizing: border-box;
    flex-basis: 25%;
    max-width: 25%;
    padding: 7px;
  }

  .col-md-offset-3 {
    margin-left: 25%;
  }

  .col-md-4 {
    box-sizing: border-box;
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 7px;
  }

  .col-md-offset-4 {
    margin-left: 33.3333333333%;
  }

  .col-md-5 {
    box-sizing: border-box;
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 7px;
  }

  .col-md-offset-5 {
    margin-left: 41.6666666667%;
  }

  .col-md-6 {
    box-sizing: border-box;
    flex-basis: 50%;
    max-width: 50%;
    padding: 7px;
  }

  .col-md-offset-6 {
    margin-left: 50%;
  }

  .col-md-7 {
    box-sizing: border-box;
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 7px;
  }

  .col-md-offset-7 {
    margin-left: 58.3333333333%;
  }

  .col-md-8 {
    box-sizing: border-box;
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 7px;
  }

  .col-md-offset-8 {
    margin-left: 66.6666666667%;
  }

  .col-md-9 {
    box-sizing: border-box;
    flex-basis: 75%;
    max-width: 75%;
    padding: 7px;
  }

  .col-md-offset-9 {
    margin-left: 75%;
  }

  .col-md-10 {
    box-sizing: border-box;
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 7px;
  }

  .col-md-offset-10 {
    margin-left: 83.3333333333%;
  }

  .col-md-11 {
    box-sizing: border-box;
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 7px;
  }

  .col-md-offset-11 {
    margin-left: 91.6666666667%;
  }

  .col-md-12 {
    box-sizing: border-box;
    flex-basis: 100%;
    max-width: 100%;
    padding: 7px;
  }

  .col-md-offset-12 {
    margin-left: 100%;
  }

  .row.start-md {
    justify-content: flex-start;
  }

  .row.center-md {
    justify-content: center;
  }

  .row.end-md {
    justify-content: flex-end;
  }

  .row.top-md {
    align-items: flex-start;
  }

  .row.middle-md {
    align-items: center;
  }

  .row.bottom-md {
    align-items: flex-end;
  }

  .row.around-md {
    justify-content: space-around;
  }

  .row.between-md {
    justify-content: space-between;
  }

  .first-md {
    order: -1;
  }

  .last-md {
    order: 1;
  }
}
@media only screen and (min-width: 871px) {
  .col-lg {
    box-sizing: border-box;
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100% !important;
    padding: 7px;
  }

  .col-lg-1 {
    box-sizing: border-box;
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 7px;
  }

  .col-lg-offset-1 {
    margin-left: 8.3333333333%;
  }

  .col-lg-2 {
    box-sizing: border-box;
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 7px;
  }

  .col-lg-offset-2 {
    margin-left: 16.6666666667%;
  }

  .col-lg-3 {
    box-sizing: border-box;
    flex-basis: 25%;
    max-width: 25%;
    padding: 7px;
  }

  .col-lg-offset-3 {
    margin-left: 25%;
  }

  .col-lg-4 {
    box-sizing: border-box;
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 7px;
  }

  .col-lg-offset-4 {
    margin-left: 33.3333333333%;
  }

  .col-lg-5 {
    box-sizing: border-box;
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 7px;
  }

  .col-lg-offset-5 {
    margin-left: 41.6666666667%;
  }

  .col-lg-6 {
    box-sizing: border-box;
    flex-basis: 50%;
    max-width: 50%;
    padding: 7px;
  }

  .col-lg-offset-6 {
    margin-left: 50%;
  }

  .col-lg-7 {
    box-sizing: border-box;
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 7px;
  }

  .col-lg-offset-7 {
    margin-left: 58.3333333333%;
  }

  .col-lg-8 {
    box-sizing: border-box;
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 7px;
  }

  .col-lg-offset-8 {
    margin-left: 66.6666666667%;
  }

  .col-lg-9 {
    box-sizing: border-box;
    flex-basis: 75%;
    max-width: 75%;
    padding: 7px;
  }

  .col-lg-offset-9 {
    margin-left: 75%;
  }

  .col-lg-10 {
    box-sizing: border-box;
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 7px;
  }

  .col-lg-offset-10 {
    margin-left: 83.3333333333%;
  }

  .col-lg-11 {
    box-sizing: border-box;
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 7px;
  }

  .col-lg-offset-11 {
    margin-left: 91.6666666667%;
  }

  .col-lg-12 {
    box-sizing: border-box;
    flex-basis: 100%;
    max-width: 100%;
    padding: 7px;
  }

  .col-lg-offset-12 {
    margin-left: 100%;
  }

  .row.start-lg {
    justify-content: flex-start;
  }

  .row.center-lg {
    justify-content: center;
  }

  .row.end-lg {
    justify-content: flex-end;
  }

  .row.top-lg {
    align-items: flex-start;
  }

  .row.middle-lg {
    align-items: center;
  }

  .row.bottom-lg {
    align-items: flex-end;
  }

  .row.around-lg {
    justify-content: space-around;
  }

  .row.between-lg {
    justify-content: space-between;
  }

  .first-lg {
    order: -1;
  }

  .last-lg {
    order: 1;
  }
}
@media only screen and (min-width: 1121px) {
  .col-xl {
    box-sizing: border-box;
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100% !important;
    padding: 7px;
  }

  .col-xl-1 {
    box-sizing: border-box;
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 7px;
  }

  .col-xl-offset-1 {
    margin-left: 8.3333333333%;
  }

  .col-xl-2 {
    box-sizing: border-box;
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 7px;
  }

  .col-xl-offset-2 {
    margin-left: 16.6666666667%;
  }

  .col-xl-3 {
    box-sizing: border-box;
    flex-basis: 25%;
    max-width: 25%;
    padding: 7px;
  }

  .col-xl-offset-3 {
    margin-left: 25%;
  }

  .col-xl-4 {
    box-sizing: border-box;
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 7px;
  }

  .col-xl-offset-4 {
    margin-left: 33.3333333333%;
  }

  .col-xl-5 {
    box-sizing: border-box;
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 7px;
  }

  .col-xl-offset-5 {
    margin-left: 41.6666666667%;
  }

  .col-xl-6 {
    box-sizing: border-box;
    flex-basis: 50%;
    max-width: 50%;
    padding: 7px;
  }

  .col-xl-offset-6 {
    margin-left: 50%;
  }

  .col-xl-7 {
    box-sizing: border-box;
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 7px;
  }

  .col-xl-offset-7 {
    margin-left: 58.3333333333%;
  }

  .col-xl-8 {
    box-sizing: border-box;
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 7px;
  }

  .col-xl-offset-8 {
    margin-left: 66.6666666667%;
  }

  .col-xl-9 {
    box-sizing: border-box;
    flex-basis: 75%;
    max-width: 75%;
    padding: 7px;
  }

  .col-xl-offset-9 {
    margin-left: 75%;
  }

  .col-xl-10 {
    box-sizing: border-box;
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 7px;
  }

  .col-xl-offset-10 {
    margin-left: 83.3333333333%;
  }

  .col-xl-11 {
    box-sizing: border-box;
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 7px;
  }

  .col-xl-offset-11 {
    margin-left: 91.6666666667%;
  }

  .col-xl-12 {
    box-sizing: border-box;
    flex-basis: 100%;
    max-width: 100%;
    padding: 7px;
  }

  .col-xl-offset-12 {
    margin-left: 100%;
  }

  .row.start-xl {
    justify-content: flex-start;
  }

  .row.center-xl {
    justify-content: center;
  }

  .row.end-xl {
    justify-content: flex-end;
  }

  .row.top-xl {
    align-items: flex-start;
  }

  .row.middle-xl {
    align-items: center;
  }

  .row.bottom-xl {
    align-items: flex-end;
  }

  .row.around-xl {
    justify-content: space-around;
  }

  .row.between-xl {
    justify-content: space-between;
  }

  .first-xl {
    order: -1;
  }

  .last-xl {
    order: 1;
  }
}
.col-gutter-lr {
  padding: 0 7px;
}

.col-no-gutter {
  padding: 0;
}

.product-raster-grid {
  display: flex;
  flex-wrap: wrap;
}
@supports (display: grid) {
  .product-raster-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1rem;
  }
  @media (max-width: var(--mq-md)) {
    .product-raster-grid {
      grid-template-columns: 1fr 1fr;
    }
  }
  @media all and (max-width: 70em) {
    .product-raster-grid {
      grid-template-columns: 1fr 1fr;
      gap: 0.5rem;
    }
  }
  @media (max-width: var(--mq-xs)) {
    .product-raster-grid {
      grid-template-columns: 1fr;
    }
  }
}
.product-raster-grid .product-card {
  width: 100%;
  flex-basis: 21.5rem;
  flex-grow: 0;
  margin: 0.5rem;
  flex-shrink: 1;
  justify-content: flex-start;
}
@supports (display: grid) {
  .product-raster-grid .product-card {
    margin: 0;
  }
}
.product-raster-grid .product-card .product {
  max-height: 12rem;
  overflow: hidden;
  position: relative;
  padding-bottom: 3px;
}
.product-raster-grid .product-card .product:after {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: linear-gradient(900deg, rgba(239, 239, 239, 0) 0%, white 100%);
}
.product-raster-grid .product-card .info {
  align-items: flex-end;
}
.product-raster-grid .product-card .info .price {
  margin-bottom: 1rem;
}
.product-raster-grid .product-card .info .price.combo {
  display: none;
}
.product-raster-grid .product-card .actions input,
.product-raster-grid .product-card .actions .supply-large {
  display: none;
}

.product-raster-list .product-card {
  width: auto;
  display: flex;
  flex-wrap: nowrap;
  margin-bottom: 1rem;
}
.product-raster-list .product-card .image {
  flex-grow: 0;
  max-height: 100%;
  flex-basis: 20rem;
}
@media (max-width: --mq-md) {
  .product-raster-list .product-card .image {
    flex-basis: 14rem;
    margin: 2rem 0;
  }
}
@media (max-width: --mq-sm) {
  .product-raster-list .product-card .image {
    flex-basis: 12rem;
  }
}
.product-raster-list .product-card .group-description {
  flex-shrink: 1;
  flex-grow: 1;
  flex-basis: 20rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (max-width: var(--mq-sm)) {
  .product-raster-list .product-card .info {
    align-items: flex-end;
  }
}
.product-raster-list .product-card .info .group-price-supply {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
}
.product-raster-list .product-card .info .group-price-supply .supply {
  display: none;
}
@media (max-width: var(--mq-sm)) {
  .product-raster-list .product-card .info .group-price-supply .supply {
    display: block;
  }
}
@media (max-width: var(--mq-sm)) {
  .product-raster-list .product-card .info .group-price-supply {
    flex-wrap: wrap;
  }
}
.product-raster-list .product-card .info .group-price-supply > * {
  flex-grow: 0;
  flex-basis: auto;
  margin-right: 4rem;
}
@media (max-width: var(--mq-lg)) {
  .product-raster-list .product-card .info .group-price-supply > * {
    margin-right: 3rem;
  }
}
@media (max-width: var(--mq-md)) {
  .product-raster-list .product-card .info .group-price-supply > * {
    margin-right: 2rem;
  }
}
@media (max-width: var(--mq-sm)) {
  .product-raster-list .product-card .info .group-price-supply > * {
    margin-right: 1.2rem;
    flex-shrink: 0;
  }
  .product-raster-list .product-card .info .group-price-supply > *.supply {
    flex: 1 0 100%;
  }
}
.product-raster-list .product-card .info .actions {
  flex-shrink: 0;
  text-align: right;
}
.product-raster-list .product-card .info .actions .supply-large {
  display: inline-block;
  vertical-align: bottom;
  margin-right: 1rem;
}
@media (max-width: var(--mq-md)) {
  .product-raster-list .product-card .info .actions .supply-large {
    display: none;
  }
}
@media (max-width: var(--mq-xs)) {
  .product-raster-list .product-card .info .actions {
    flex-basis: auto;
  }
  .product-raster-list .product-card .info .actions input {
    display: none;
  }
}

.product-raster-list.small-list .product-card .image {
  flex-basis: 8rem;
}
@media (max-width: var(--mq-md)) {
  .product-raster-list.small-list .product-card .image {
    margin: 1rem 0 0;
  }
}
.product-raster-list.small-list .product-card .image .product-highlight {
  transform: scale(0.7);
  transform-origin: top left;
  top: 0.3rem;
}
.product-raster-list.small-list .product-card .group-description {
  flex-shrink: 1;
  flex-grow: 1;
  flex-basis: 20rem;
  display: flex;
  justify-content: space-between;
}
@media (max-width: var(--mq-md)) {
  .product-raster-list.small-list .product-card .group-description {
    flex-direction: column;
    justify-content: flex-start;
  }
}
.product-raster-list.small-list .product-card .group-description .product .description {
  display: none;
}
.product-raster-list.small-list .product-card .group-description .info {
  flex-shrink: 0;
  justify-content: start;
  padding-top: 1rem;
  padding-bottom: 1rem;
  flex-basis: auto;
}
@media (max-width: var(--mq-md)) {
  .product-raster-list.small-list .product-card .group-description .info {
    padding-top: 0;
    flex-basis: 20rem;
  }
  .product-raster-list.small-list .product-card .group-description .info input {
    display: none;
  }
}
@media (max-width: var(--mq-md)) {
  .product-raster-list.small-list .product-card .group-description .info {
    flex-basis: auto;
  }
}

.product-raster-searchresult {
  flex-direction: column;
}
.product-raster-searchresult .product-card {
  width: auto;
  display: flex;
  padding: 0;
  border: none;
  border-bottom: 1px solid var(--color-line);
  margin-bottom: 0.4rem;
}
.product-raster-searchresult .product-card:last-of-type {
  border-bottom: none;
}
.product-raster-searchresult .product-card .article-code {
  color: var(--color-text);
  font-size: 0.85rem;
}
.product-raster-searchresult .product-card .image {
  flex-grow: 0;
  flex-shrink: 0;
  width: 7rem;
  max-height: 4rem;
  margin: 0;
}
@media (max-width: var(--mq-lg)) {
  .product-raster-searchresult .product-card .image {
    width: 6rem;
  }
}
.product-raster-searchresult .product-card .image img {
  max-height: 4rem;
}
.product-raster-searchresult .product-card .image .product-highlight {
  transform: scale(0.7);
  transform-origin: top left;
  top: 0.3rem;
}
@media (max-width: var(--mq-md)) {
  .product-raster-searchresult .product-card .image .product-highlight {
    transform: scale(0.5);
  }
}
.product-raster-searchresult .product-card .product {
  padding: 0 0 0 1.2rem;
}
@media (max-width: var(--mq-md)) {
  .product-raster-searchresult .product-card .product {
    padding-left: 0.8rem;
  }
}
.product-raster-searchresult .product-card .product .title {
  font-size: 1rem;
  line-height: 1rem;
  max-height: 2rem;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
  color: var(--color-text);
}
.product-raster-searchresult .product-card .product:hover .title {
  color: var(--color-links);
}
.product-raster-searchresult .product-card .info {
  padding: 0 0 0 1.2rem;
  text-align: right;
  flex-direction: column;
}
@media (max-width: var(--mq-md)) {
  .product-raster-searchresult .product-card .info {
    padding-left: 0.8rem;
  }
}
.product-raster-searchresult .product-card .info .price {
  flex: 0 0;
}
.product-raster-searchresult .product-card .info .stock {
  font-size: 0.8rem;
  height: auto;
  white-space: nowrap;
}
.product-raster-searchresult .product-card .info .actual {
  font-size: 1rem;
}

.sectioned-page {
  max-width: 1100px;
}
.sectioned-page .image-wrapper {
  display: flex;
  width: 100%;
}
.sectioned-page .image-wrapper img {
  width: 100%;
  margin: 0 auto;
}
.sectioned-page .image-wrapper.fullscreen img {
  width: 100%;
  margin: 0 auto;
}
.sectioned-page .image-wrapper.half-width img {
  max-width: 50%;
  margin: 0 auto;
}
.sectioned-page h1, .sectioned-page h2, .sectioned-page h3, .sectioned-page h4, .sectioned-page h5 {
  margin: 2rem 0 0.5em;
}
.sectioned-page h1 {
  font-size: 2.2rem;
  font-weight: bold;
}
@media all and (max-width: 75em) {
  .sectioned-page h1 {
    margin-left: 10px;
  }
}
.sectioned-page h2 {
  font-size: 1.6rem;
}
@media all and (max-width: 75em) {
  .sectioned-page h2 {
    margin-left: 10px;
  }
}
.sectioned-page h3 {
  font-size: 1.2rem;
}
.sectioned-page div.white-space {
  float: left;
  width: 100%;
  line-height: 0;
}
.sectioned-page div.white-space:after {
  content: "​";
}
.sectioned-page div.white-space--small {
  margin: 1em 0;
}
.sectioned-page div.white-space--medium {
  margin: 2em 0;
}
.sectioned-page div.white-space--large {
  margin: 3em 0;
}

.button-bar {
  float: left;
}
.button-bar a, .button-bar button {
  margin-left: 2em;
}
.button-bar a:first-child, .button-bar button:first-child {
  margin-left: 0;
}

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

.w-half {
  width: 60%;
  margin-left: auto;
  margin-right: auto;
}
@media all and (max-width: 70em) {
  .w-half {
    width: 80%;
  }
}

.bg-gray {
  background: rgba(147, 149, 152, 0.1);
}

a.internal-link-target {
  display: block;
  position: relative;
  top: -110px;
  visibility: hidden;
}

ul.styled-list {
  list-style-type: none;
}
ul.styled-list li {
  margin-left: 0;
  padding-left: 1em;
  margin-bottom: 0.2em;
  position: relative;
}
ul.styled-list li:after {
  content: "";
  font-family: var(--font-icons);
  font-weight: 400;
  font-size: 0.6em;
  color: var(--primary_theme_color);
  left: 0;
  top: 7px;
  position: absolute;
  pointer-events: none;
}

.video-container {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  float: left;
  margin-bottom: 10px;
}
.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.cart-rollover-block {
  --background_color_nav: #F9F9F9;
  --right_button_color: var(--gray);
  --left_button_color: var(--primary_theme_color);
  --button_text_color: white;
  --hover_background_color: black;
  position: absolute;
  top: 75px;
  right: 0;
  z-index: 9999;
  padding: 7px 15px 10px 15px;
  border-radius: 3px;
  width: 880px;
  background: var(--background_color_nav);
  box-sizing: border-box;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.25);
  visibility: hidden;
}
@media all and (max-width: 60em) {
  .cart-rollover-block {
    width: 800px;
  }
}
@media all and (max-width: 55em) {
  .cart-rollover-block {
    top: 60px;
    right: 0;
    width: 720px;
  }
}
@media all and (max-width: 50em) {
  .cart-rollover-block {
    width: 640px;
  }
}
@media all and (max-width: 45em) {
  .cart-rollover-block {
    width: 560px;
  }
}
@media all and (max-width: 40em) {
  .cart-rollover-block {
    width: 480px;
  }
}
@media all and (max-width: 35em) {
  .cart-rollover-block {
    position: fixed;
    top: 0 !important;
    left: 0;
    right: auto;
    width: 100%;
    padding: 5px 7px 7px 7px;
  }
  .cart-rollover-block .nav-buttons {
    width: 100%;
    display: flex;
    gap: 5%;
    justify-content: space-between;
  }
  .cart-rollover-block .nav-buttons .keep-shopping {
    padding: 10px !important;
    text-align: center;
  }
  .cart-rollover-block .nav-buttons .keep-shopping:after {
    display: none !important;
  }
  .cart-rollover-block .nav-buttons .to-basket {
    display: flex;
    align-items: center;
    padding: 10px !important;
    text-align: center;
  }
  .cart-rollover-block .nav-buttons .to-basket:after {
    display: none !important;
  }
}
.cart-rollover-block .nav-buttons {
  float: left;
  width: 100%;
  margin-top: 10px;
}
.cart-rollover-block br.clear {
  display: block;
}
.cart-rollover-block:before {
  content: "";
  position: absolute;
  top: -10px;
  right: 15px;
  z-index: 100;
  width: 20px;
  height: 10px;
  background: url("../_graphics/angle_white.svg") top left no-repeat;
  background-size: 100% auto;
}
.cart-rollover-block strong.confirmation {
  float: left;
  color: var(--success_color);
  margin-top: 7px;
}
.cart-rollover-block a.button.right {
  color: var(--button_text_color);
  background: var(--left_button_color);
  float: right;
  margin: 0;
}
.cart-rollover-block a.button.right:hover {
  background: black;
  color: white;
}
.cart-rollover-block a.button.empty {
  color: var(--button_text_color);
  background: var(--right_button_color);
  display: inline-block;
  box-sizing: border-box;
  padding: 14px 25px;
}
.cart-rollover-block a.button.empty:after {
  display: none;
}
.cart-rollover-block a.button.empty:hover {
  color: var(--button_text_color);
  background: var(--hover_background_color);
}

.cart-rollover-block.active {
  visibility: visible;
}

.cart-rollover-block.scrolled {
  position: fixed;
  top: 5px;
  right: 5%;
}

.basket-line-added-accessories {
  max-height: 315px;
  overflow-y: auto;
}
.basket-line-added-accessories span.unit {
  display: none;
}
.basket-line-added-accessories .add-to-cart {
  z-index: 1000;
}
.basket-line-added-accessories a.product {
  width: inherit !important;
  border: 1px solid var(--gray);
  box-shadow: none;
}

.products__rollover {
  margin-top: 10px;
}
.products__rollover a.product {
  grid-template-columns: 110px 1fr 1fr 1fr;
}
.products__rollover a.product .product__info {
  padding-top: 10px;
  padding-left: 5px;
}
.products__rollover a.product .product__price {
  padding-left: 5px;
}
.products__rollover a.product .product__image {
  width: 100px;
  margin: 5px;
}
.products__rollover a.product .product__image .folderdeal {
  width: 110px;
}
.products__rollover a.product .product__amount {
  display: inline-flex;
  grid-column: 4 !important;
}
.products__rollover a.product .product__amount span.unit {
  display: none;
}

* {
  border: 0;
  padding: 0;
  margin: 0;
}

html {
  font-size: 16px;
}

body {
  background: white;
  color: var(--primary_text_color);
  font-family: var(--font_family_1);
  font-weight: normal;
  font-size: 15px;
}

/*
	PLEASE DON'T ADD MORE MEDIA-QUERIES TO THIS FILE!
	Media-queries for elements should be added to their corresponding SCSS file.
 */
/* 1360px */
@media all and (max-width: 85em) {
  .nav__bg-left {
    width: 3%;
  }

  .nav__bg-right {
    width: 3%;
  }
}
/* 1200px */
@media all and (max-width: 75em) {
  table.mobile-table tr {
    float: left;
    width: 100%;
    box-sizing: border-box;
    border-bottom: 1px solid rgba(157, 157, 157, 0.2);
    padding: 20px;
  }

  table.mobile-table tr.header_row {
    display: none;
  }

  table.mobile-table td {
    float: left;
    width: 100%;
    padding: 2px;
    border-bottom: 0;
  }

  td strong.mobile-label {
    display: inline-block;
  }
}
/* 1040px */
@media all and (max-width: 65em) {
  .products-menu-subnav ul {
    column-count: 2;
  }

  .product-grid--three div.product_dummy {
    display: none;
  }

  .product-list a.product .product__size {
    float: right;
    width: calc(100% - 180px);
    position: relative;
    margin-bottom: 25px;
    bottom: 10px;
  }

  .product-list a.product .product__size .select_wrapper {
    width: 70%;
  }
}
/* 960px */
@media all and (max-width: 60em) {
  .alert {
    font-size: 14px;
  }

  .nav {
    display: none;
  }

  .top {
    display: none;
  }

  .products-home {
    display: none;
  }

  .home-top__banners {
    width: 100%;
    padding-top: 0;
    margin-top: 10px;
  }

  .shop__usp-box span:nth-child(5) {
    display: none;
  }

  .cart-steps span:nth-child(1),
.cart-steps span:nth-child(2) {
    margin-bottom: 15px;
  }

  table.cart th {
    display: none;
  }

  table.cart tr.table_header {
    display: none;
  }

  table.cart tr {
    float: left;
    width: 100%;
    padding-bottom: 10px;
    box-sizing: border-box;
    border: 1px solid rgba(157, 157, 157, 0.2);
    margin-bottom: 10px;
  }

  table.cart tr.subtotal {
    padding: 10px 0;
  }

  table.cart tr:nth-child(even) {
    background: rgba(157, 157, 157, 0.05);
  }

  table.cart td {
    float: left;
    width: 100%;
    box-sizing: border-box;
    padding: 5px 15px !important;
    border: 0;
    text-align: left !important;
  }

  .hidemobile {
    display: none;
  }

  .account-nav {
    width: 100%;
    padding: 30px;
  }

  .account-block {
    width: 100%;
    padding: 30px;
  }
}
/* 800px */
@media all and (max-width: 50em) {
  .home__usp-box {
    justify-content: center;
  }

  .home__usp-box {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .home__usp-box span {
    width: 29%;
    padding: 0;
    margin: 0 2%;
  }

  .home__usp-box span:nth-child(1),
.home__usp-box span:nth-child(2),
.home__usp-box span:nth-child(3) {
    margin-bottom: 50px;
  }

  .text__left {
    width: 100%;
    padding: 0 10%;
    margin-bottom: 25px;
  }

  .text__right {
    width: 100%;
    padding: 0 10%;
  }

  a.filters_toggle {
    display: block;
  }

  .crumb {
    padding-bottom: 15px;
  }

  .sidebar {
    display: none;
    width: 100%;
    padding: 0;
    border-right: 0;
  }

  .main {
    width: 100%;
  }

  .shop__usp-box span:nth-child(4) {
    display: none;
  }

  .product__page .product__page-images {
    width: 100%;
    margin-bottom: 20px;
  }
  .product__page .product__page-info {
    width: 100%;
  }
}
/* 720px */
@media all and (max-width: 45em) {
  .small_wrapper {
    width: 90%;
  }

  .cart-blocks-block {
    width: 100%;
    margin-bottom: 20px;
  }
}
/* 640px */
@media all and (max-width: 40em) {
  .home-top__banners-slide img {
    height: 400px !important;
  }

  .home__usp-box span {
    width: 100%;
    padding: 15px 0;
    border-bottom: 0;
    margin-bottom: 0 !important;
  }

  hr.spacer50 {
    border: 0;
    margin-bottom: 40px;
  }

  hr.spacer75 {
    border: 0;
    margin-bottom: 60px;
  }

  hr.spacer100 {
    border: 0;
    margin-bottom: 80px;
  }

  .home__cta-block strong {
    font-size: 25px;
    margin-bottom: 30px;
  }

  .product-list a.product .product__info {
    max-width: 98%;
    width: 100%;
  }

  .product-list a.product .product__size {
    width: 100%;
  }

  .cart-steps span {
    padding: 15px 15px 15px 70px;
    font-size: 13px;
  }

  .cart-steps span b {
    top: 8px;
    left: 15px;
  }
}
/* 560px */
@media all and (max-width: 35em) {
  .home-top__banners-box a {
    width: 100%;
  }
}
/* 480px */
@media all and (max-width: 30em) {
  .home__cta-block img {
    width: 100%;
  }

  .home__cta-block-text {
    width: 100%;
  }

  .text__left {
    padding: 0 5%;
  }

  .text__right {
    padding: 0 5%;
  }

  .paging__left {
    display: none;
  }

  .controls__right .select_wrapper {
    width: 100%;
  }

  .cart-steps span {
    width: 100%;
    margin: 5px 0 !important;
  }

  .sticky-nav .search-form {
    width: calc(100% - 160px);
  }
}
/* 400px */
@media all and (max-width: 25em) {
  hr.spacer50 {
    border: 0;
    margin-bottom: 25px;
  }

  hr.spacer75 {
    border: 0;
    margin-bottom: 50px;
  }

  hr.spacer100 {
    border: 0;
    margin-bottom: 60px;
  }
}
/*# sourceMappingURL=core-webshop.css.map */
