/** Shopify CDN: Minification failed

Line 7164:49 Expected ")" to end URL token
Line 7165:41 Expected ")" to end URL token
Line 8158:49 Expected ")" to end URL token
Line 8159:49 Expected ")" to end URL token
Line 8461:49 Expected ")" to end URL token
Line 8462:41 Expected ")" to end URL token
Line 9954:49 Expected ")" to end URL token
Line 9955:41 Expected ")" to end URL token

**/
@font-face { font-family: "Futura PT"; src: url(//www.dicota.com/cdn/shop/t/4/assets/FuturaPT-Book.ttf?v=74191777379351294911779803997) format('truetype'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Futura PT"; src: url(//www.dicota.com/cdn/shop/t/4/assets/FuturaPT-Medium.ttf?v=148608022810417971571779803998) format('truetype'); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: "Futura PT"; src: url(//www.dicota.com/cdn/shop/t/4/assets/FuturaPT-Demi.ttf?v=175866461562333391331779803998) format('truetype'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "Futura PT"; src: url(//www.dicota.com/cdn/shop/t/4/assets/FuturaPT-Bold.ttf?v=42395974154985308701779803997) format('truetype'); font-weight: 700; font-style: normal; font-display: swap; }

:root {
  --base-color-neutral--black: black;
  --base-color-neutral--neutral: #666;
  --text-color--text-alternate: var(--base-color-neutral--white);
  --text-color--text-secondary: var(--base-color-neutral--neutral-darker);
  --border-radius--small: .25rem;
  --base-color-system--focus-state: #2d62ff;
  --background-color--background-tertiary: var(--base-color-brand--pink);
  --base-color-neutral--neutral-lighter: #ccc;
  --base-color-neutral--white: white;
  --base-color-neutral--neutral-darkest: #111;
  --base-color-neutral--neutral-lightest: #eee;
  --accessible-components-dark-grey\<deleted\|variable-c4d8099c\>: #9b9b9b;
  --text-color--text-error: var(--base-color-system--error-red-dark);
  --base-color-system--success-green-dark: #17660f;
  --base-color-neutral--neutral-darker: #222;
  --base-color-system--error-red: #f8e4e4;
  --base-color-system--error-red-dark: #9b1313;
  --border-radius--medium: .5rem;
  --background-color--background-error: var(--base-color-system--error-red);
  --text-color--text-primary: var(--base-color-neutral--black);
  --background-color--background-warning: var(--base-color-system--warning-yellow);
  --text-color--text-warning: var(--base-color-system--warning-yellow-dark);
  --background-color--background-primary: var(--base-color-neutral--black);
  --background-color--background-secondary: var(--base-color-brand--blue);
  --background-color--background-alternate: var(--base-color-neutral--white);
  --background-color--background-success: var(--base-color-system--success-green);
  --text-color--text-success: var(--base-color-system--success-green-dark);
  --base-color-brand--blue-light: #d9e5ff;
  --base-color-brand--blue: #2d62ff;
  --base-color-brand--blue-dark: #080331;
  --base-color-brand--pink-light: #ffaefe;
  --base-color-brand--pink: #dd23bb;
  --base-color-brand--pink-dark: #3c043b;
  --base-color-neutral--neutral-light: #aaa;
  --base-color-neutral--neutral-dark: #444;
  --base-color-system--success-green: #cef5ca;
  --base-color-system--warning-yellow: #fcf8d8;
  --base-color-system--warning-yellow-dark: #5e5515;
  --border-color--border-primary: var(--base-color-neutral--neutral-lightest);
  --border-color--border-secondary: var(--base-color-brand--blue);
  --border-color--border-alternate: var(--base-color-neutral--neutral-darker);
  --border-radius--large: 1rem;
  --link-color--link-primary: var(--base-color-brand--blue);
  --link-color--link-secondary: var(--base-color-neutral--black);
  --link-color--link-alternate: var(--base-color-neutral--white);
  --link-color--color: white;
}

.w-checkbox {
  margin-bottom: .3125rem;
  padding-left: 1.25rem;
  display: block;
}

.w-checkbox:before {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox:after {
  content: " ";
  clear: both;
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox-input {
  float: left;
  margin: .25rem 0 0 -1.25rem;
  line-height: normal;
}

.w-checkbox-input--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 2px;
  width: .75rem;
  height: .75rem;
}

.w-checkbox-input--inputType-custom.w--redirected-checked {
  background-color: #3898ec;
  background-image: url(https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg);
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-color: #3898ec;
}

.w-checkbox-input--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

.w-layout-grid {
  grid-row-gap: 1rem;
  grid-column-gap: 1rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.w-form-formradioinput--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 50%;
  width: .75rem;
  height: .75rem;
}

.w-form-formradioinput--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

.w-form-formradioinput--inputType-custom.w--redirected-checked {
  border-width: 4px;
  border-color: #3898ec;
}

body {
  color: var(--base-color-neutral--black);
  font-family: "Futura PT", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

h1 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: "Futura PT", sans-serif;
  font-size: 3.75rem;
  font-weight: 600;
  line-height: 1.1;
}

h2 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: "Futura PT", sans-serif;
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.2;
}

h3 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: "Futura PT", sans-serif;
  font-size: 1.625rem;
  font-weight: 600;
  line-height: 1.2;
}

h4 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.4;
}

h5 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
}

h6 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
}

p {
  margin-bottom: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

ul, ol {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 1.5rem;
}

li {
  margin-bottom: .25rem;
}

img {
  object-fit: cover;
  max-width: 100%;
  display: inline-block;
}

label {
  margin-bottom: .25rem;
  font-weight: 400;
}

blockquote {
  border-left: .25rem solid #e2e2e2;
  margin-bottom: 0;
  padding: 0 1.25rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

figure {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

figcaption {
  text-align: center;
  margin-top: .25rem;
}

.utility-page_component {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  display: flex;
}

.utility-page_wrapper {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  text-align: center;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  max-width: 20rem;
  display: flex;
}

.utility-page_form {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.utility-page_image {
  margin-left: auto;
  margin-right: auto;
}

.global-styles {
  display: block;
  position: fixed;
  inset: 0% auto auto 0%;
}

.margin-xsmall {
  margin: .5rem;
}

.padding-medium {
  padding: 2rem;
}

.margin-small {
  margin: 1rem;
}

.margin-medium {
  margin: 2rem;
}

.margin-bottom {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}

.margin-top {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
}

.padding-bottom {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}

.form_checkbox {
  flex-direction: row;
  align-items: flex-start;
  margin-bottom: 0;
  padding-left: 0;
  display: flex;
}

.form_checkbox-icon {
  flex: none;
  margin: .3rem .5rem 0 0;
  padding: 0;
}

.form_checkbox-icon.w--redirected-checked {
  background-size: 90%;
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
}

.form_checkbox-icon.w--redirected-focus {
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

.icon-1x1-small {
  flex: none;
  width: 1rem;
  height: 1rem;
}

.form_form {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-flow: column;
  display: flex;
}

.text-weight-semibold {
  font-weight: 600;
}

.text-style-strikethrough {
  text-decoration: line-through;
}

.li-styleguide_item {
  grid-column-gap: 1.125rem;
  grid-row-gap: 1.125rem;
  border-bottom: 1px solid #0000001a;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start;
  width: 100%;
  padding-bottom: 3rem;
  display: grid;
  position: relative;
}

.li-styleguide_item.is-stretch {
  justify-items: stretch;
}

.max-width-full {
  width: 100%;
  max-width: none;
}

.z-index-1 {
  z-index: 1;
  position: relative;
}

.text-color-grey {
  color: var(--base-color-neutral--neutral);
}

.li-styleguide_2-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.li-styleguide_2-col.is-align-start {
  align-items: start;
}

.heading-style-h3 {
  font-family: "Futura PT", sans-serif;
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1.1;
  text-transform: uppercase;
  margin: 0;
}

.text-rich-text h1, .text-rich-text h2, .text-rich-text h3, .text-rich-text h4 {
  margin-top: 1.5rem;
  margin-bottom: 1rem;
}

.text-rich-text h5, .text-rich-text h6 {
  margin-top: 1.25rem;
  margin-bottom: 1rem;
}

.text-rich-text p {
  margin-bottom: 1rem;
}

.text-rich-text ul, .text-rich-text ol {
  margin-bottom: 1.5rem;
}

.container-small {
  width: 100%;
  max-width: 48rem;
  margin-left: auto;
  margin-right: auto;
}

.heading-style-h1 {
  font-family: "Futura PT", sans-serif;
  font-size: 3.1875rem;
  font-weight: 500;
  line-height: 1.1;
  text-transform: uppercase;
  margin: 0;
}

.padding-global {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.text-weight-normal {
  font-weight: 400;
}

.padding-section-small {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.text-color-white {
  color: var(--text-color--text-alternate);
}

.li-styleguide_section-header {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-bottom: 1px solid var(--base-color-neutral--black);
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  padding-bottom: 3rem;
  line-height: 1.4;
  display: grid;
}

.text-size-tiny {
  font-size: 0.75rem;
  line-height: 1.4;
}

.text-size-tiny.text-color-grey.text-style-link {
  cursor: pointer;
}

.li-styleguide_1-col {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.li-styleguide_heading-medium {
  font-size: 4rem;
}

.text-size-regular {
  font-size: 1rem;
  line-height: 1.5;
}

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

.text-weight-bold {
  font-weight: 700;
}

.max-width-medium {
  width: 100%;
  max-width: 32rem;
}

.li-styleguide_item-wrapper {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.max-width-large {
  width: 100%;
  max-width: 40rem;
}

.li-styleguide_header-block {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: center start;
  display: grid;
}

.form_field-wrapper {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-direction: column;
  display: flex;
  position: relative;
  flex: 1;
  align-items: flex-start;
  justify-content: center;
  gap: 0.5rem;
}

.text-style-muted {
  opacity: .6;
}

.text-size-small {
  font-size: 0.875rem;
  line-height: 1.4;
}

.heading-style-h4 {
  font-family: "Futura PT", sans-serif;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.1;
  text-transform: uppercase;
  margin: 0;
}

.heading-style-h4.text-weight-normal {
  font-weight: 400;
}

.max-width-xlarge {
  width: 100%;
  max-width: 64rem;
}

.form_input {
  border: 1px solid var(--base-color-neutral--black);
  background-color: #0000;
  width: 100%;
  min-height: 3.2rem;
  margin-bottom: 0;
  padding: .5rem 1rem;
}

.form_input.is-text-area {
  min-height: 8rem;
  padding-top: .75rem;
}

.form_input.is-quantity {
  width: 5.4rem;
  min-height: 3.2rem;
  margin-bottom: 0;
}

.form_input.is-select-input {
  color: var(--text-color--text-secondary);
}

.heading-style-h6 {
  font-family: "Futura PT", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.2;
  margin: 0;
}

.padding-section-large {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.text-style-link {
  color: #000;
  text-decoration: underline;
}

.text-size-large {
  font-size: 1.5rem;
  line-height: 1.3;
}

.heading-style-h2 {
  font-family: "Futura PT", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.1;
  text-transform: uppercase;
  margin: 0;
}

.page-wrapper {
  flex-flow: column;
  min-height: 100vh;
  display: flex;
}

.li-styleguide_label {
  border-radius: var(--border-radius--small);
  background-color: var(--base-color-system--focus-state);
  color: #fff;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  padding: .25rem .75rem;
  font-weight: 600;
  line-height: 1.4;
  display: flex;
}

.li-styleguide_label.is-tag {
  background-color: var(--background-color--background-tertiary);
}

.container-large {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.form_message-error {
  margin-top: .75rem;
  padding: .75rem;
}

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

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

.align-center {
  margin-left: auto;
  margin-right: auto;
}

.button {
  border: 1px solid var(--base-color-neutral--black);
  background-color: var(--base-color-neutral--black);
  color: var(--text-color--text-alternate);
  text-align: center;
  white-space: nowrap;
  padding: .65rem 1.5rem;
  font-weight: 500;
}

.button.is-secondary {
  border: 1px solid var(--base-color-neutral--black);
  color: #000;
  background-color: #0000;
}

.button.is-secondary.max-width-full.pointer-events-off {
  border-color: var(--base-color-neutral--neutral-lighter);
}

.button.is-outline {
  color: #111;
  background-color: #0000;
  border: 1px solid #111;
  transition: color .2s, background-color .2s;
}

.button.is-outline:hover {
  color: #fff;
  background-color: #111;
}

.button.is-link {
  color: var(--base-color-neutral--black);
  background-color: #0000;
  border-style: none;
  padding: .25rem 0;
  line-height: 1;
  text-decoration: none;
}

.button.is-icon {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.button.is-small {
  padding: .5rem 1.25rem;
}

.button.is-large {
  padding: 1rem 2rem;
}

.button.is-text {
  color: #000;
  background-color: #0000;
  border: 2px solid #0000;
}

.li-styleguide_classes {
  grid-column-gap: 1px;
  grid-row-gap: 1px;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.text-size-medium {
  font-size: 1.25rem;
  line-height: 1.26;
}

.li-styleguide_section {
  grid-column-gap: 6rem;
  grid-row-gap: 6rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: start;
  display: grid;
}

.li-styleguide_section.is-vertical {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-columns: 1fr;
}

.button-group {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.button-group.is-center {
  justify-content: center;
}

.hide {
  flex: 1;
  display: none;
}

.padding-section-medium {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.section_navbar {
  z-index: 1000;
  background-color: var(--base-color-neutral--white);
  position: sticky;
  top: 0;
}

.section_footer {
  border-top: 1px solid var(--base-color-neutral--neutral-lighter);
  background-color: var(--base-color-neutral--black);
  color: var(--base-color-neutral--white);
  margin-top: auto;
}

.cart_grid-wrapper {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 2fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.cart_table {
  background-color: var(--base-color-neutral--white);
}

.cart_table.outline-solid-1 {
  border: 1px solid var(--base-color-neutral--neutral-darkest);
}

.cart_grid {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 10rem;
  grid-auto-columns: 1fr;
  justify-items: start;
  padding: 1.5rem;
  display: grid;
}

.cart_grid.is-header {
  border-bottom: 1px solid var(--base-color-neutral--black);
  color: var(--base-color-neutral--black);
  padding-top: 1.1rem;
  padding-bottom: 1.1rem;
}

.cart_grid.is-order {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.cart_table-header {
  white-space: nowrap;
  flex-basis: 20%;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.cart_wrapper-right {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.cart_content {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  padding: 1rem 1.5rem;
  display: flex;
}

.cart_wrapper {
  border-bottom: 1px solid var(--base-color-neutral--black);
  padding-top: .7em;
}

.cart_details-wrapper {
  justify-content: space-between;
  align-items: center;
  margin-bottom: .6em;
  display: flex;
}

.cart_action {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-end;
  align-items: stretch;
  display: flex;
}

.cart_empty {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 2rem;
  display: flex;
}

.cart_image {
  border: 1px solid var(--base-color-neutral--neutral-lighter);
  background-color: var(--base-color-neutral--neutral-lightest);
  object-fit: contain;
  width: 5rem;
  height: 5rem;
}

.cart_info-order {
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: flex-start;
  margin-left: 1.5rem;
  display: flex;
}

.cart_price {
  margin-right: .3125rem;
}

.cart_price.away {
  text-decoration: line-through;
}

.cart_table-item {
  flex-basis: 20%;
  display: flex;
}

.cart_table-item.anzahl {
  flex-direction: column;
}

.cart_quantity-wrapper {
  border: 1px solid var(--base-color-neutral--black);
  color: #000;
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: .7rem;
  display: flex;
}

.cart_quantity {
  border-style: none none none solid;
  border-width: 1px;
  border-color: #1111111a #1111111a #1111111a var(--base-color-neutral--black);
  border-radius: 0 .3em .3em 0;
  width: 3.3em;
  margin-bottom: 0;
  margin-left: 1em;
  padding: .375rem .3em .375rem 1em;
}

.cart_quantity::placeholder {
  color: #111;
}

.collections_grid {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: stretch;
  display: grid;
}

.collections_item {
  align-items: flex-end;
  width: 100%;
  height: 19.6rem;
  padding: 2.5rem 2.8rem;
  text-decoration: none;
  display: flex;
  position: relative;
  overflow: hidden;
}

.collections_bg-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.collections_overlay {
  object-fit: cover;
  background-image: linear-gradient(61deg, #111111b3, #1110 97%);
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  inset: 0%;
}

.collections_title {
  position: relative;
}

.default_wrapper {
  width: 100%;
  max-width: 48rem;
  margin-left: auto;
  margin-right: auto;
}

.blog_list {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.blog_item-grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.blog_tags-wrapper {
  position: relative;
}

.blog_img {
  border: 1px solid var(--base-color-neutral--neutral-lighter);
  background-color: var(--base-color-neutral--neutral-lightest);
  width: 100%;
  height: 18.6rem;
}

.blog_tag-row {
  grid-column-gap: var(--border-radius--small);
  grid-row-gap: var(--border-radius--small);
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 1rem;
  margin-left: 1rem;
  display: flex;
  position: absolute;
  inset: auto auto 0% 0%;
}

.blog_tag {
  color: #fff;
  background-color: #ffffff;
  margin-top: .5rem;
  margin-right: .5rem;
  padding: 0.2rem 0.4rem;
  font-size: 0.75rem;
  display: inline-block;
  font-weight: 500;
}

.blog_info-wrapper {
  text-align: left;
}

.section_related-articles {
  position: relative;
}

.headline-wrapper {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
  display: flex;
}

.gift_wrapper {
  perspective: 34.3125rem;
  width: 100%;
  transform: perspective(431px);
}

.gift_card {
  border: 1px solid var(--base-color-neutral--neutral-lightest);
  background-color: var(--base-color-neutral--white);
  text-align: left;
  border-radius: 1em;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 32.9rem;
  height: 18.9rem;
  margin-top: 4rem;
  margin-left: auto;
  margin-right: auto;
  padding: 2.1rem;
  display: flex;
}

.gift_card-text {
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  display: flex;
}

.account_grid {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.account_single-cart-wrapper {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  justify-items: stretch;
  padding: 1.5rem;
  display: grid;
}

.account_single-cart-line {
  justify-content: space-between;
  display: flex;
}

.customer-name {
  align-items: flex-start;
  margin-right: .3em;
  font-weight: 700;
  display: flex;
}

.section_account-nav {
  overflow: hidden;
}

.account-tabs_wrapper {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  border-bottom: 1px solid var(--base-color-neutral--black);
  grid-template-rows: auto;
  grid-template-columns: auto auto auto 1fr;
  grid-auto-columns: 1fr;
  margin-top: 2rem;
  display: grid;
}

.account-tabs_link {
  padding-bottom: 1rem;
  font-size: 1rem;
  text-decoration: none;
}

.account-tabs_link.w--current {
  color: #000;
  border-bottom: 1px solid #000;
  font-weight: 700;
}

.login_hinweis-kachel {
  background-color: #8900021a;
  border: 1px solid #890002;
  border-radius: .3rem;
  margin-top: 1rem;
  padding: 1.1rem 1.6rem;
}

.order_line {
  border-top: 1px solid var(--base-color-neutral--black);
  justify-content: space-between;
  padding: 1rem 1.5rem;
  display: flex;
}

.order_wrapper {
  grid-column-gap: .2rem;
  grid-row-gap: .2rem;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.login_component {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  min-height: 100vh;
  display: grid;
}

.login_left {
  margin-left: 2rem;
  margin-right: 2rem;
}

.login_tabs {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 2rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  overflow: hidden;
}

.login_form {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border: 1px solid var(--base-color-neutral--black);
  background-color: var(--base-color-neutral--white);
  flex-direction: column;
  min-width: 30rem;
  max-width: 30rem;
  margin-bottom: 0;
  padding: 2.5rem 2.1rem;
  display: flex;
}

.login_image-wrapper {
  position: relative;
}

.login_image {
  object-fit: cover;
  width: 100%;
  height: 100vh;
}

.login_tab-link {
  color: #111;
  text-align: center;
  background-color: #fff;
  flex: 1;
  width: 100%;
  padding: .8em .5em;
  text-decoration: none;
}

.login_tab-link.w--current {
  box-shadow: none;
  color: #111;
  background-color: #0000;
  font-weight: 400;
  display: none;
}

.section_newsletter {
  position: relative;
}

.mini-cart_component {
  background-color: var(--base-color-neutral--white);
  flex-direction: column;
  align-items: stretch;
  width: 28rem;
  height: 100vh;
  max-height: 100vh;
  display: flex;
}

.li-component_holder {
  background-color: #0073e61a;
  border: 1px dashed #0073e6;
  min-width: 3rem;
  padding: 1rem;
  position: relative;
}

.li-component_holder.is-list {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.li-component_holder.is-components {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.mini-cart_header {
  border-bottom: 1px solid var(--base-color-neutral--neutral-lightest);
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem;
  display: flex;
}

.mini-cart_footer {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-top: 1px solid var(--base-color-neutral--neutral-lightest);
  flex-direction: column;
  margin-top: auto;
  padding: 1.5rem;
  display: flex;
}

.mini-cart_line-item {
  flex: 1;
  max-height: 80vh;
  padding: 1.5rem;
  overflow: scroll;
}

.nav_dropdown-close-icon {
  pointer-events: none;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  display: flex;
}

.mini-cart_line-item_list {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  padding-left: 0;
  display: flex;
}

.mini-cart_line-item_item {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-bottom: 1px solid var(--base-color-neutral--neutral-lightest);
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 0;
  padding-top: 1rem;
  padding-bottom: 1rem;
  display: flex;
}

.mini-cart_line-item_img {
  border: 1px solid var(--base-color-neutral--neutral-lighter);
  background-color: var(--base-color-neutral--neutral-lightest);
  object-fit: contain;
  width: 5rem;
  height: 5rem;
}

.mini-cart_full {
  flex-direction: column;
  flex: 1;
  justify-content: space-between;
  max-height: 100vh;
  display: flex;
}

.mini-cart_empty-content {
  flex: 1;
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
}

.mini-cart_line-item_quantity {
  border-style: solid;
  border-width: 1px;
  border-color: var(--base-color-neutral--black) black black;
  justify-content: space-between;
  display: flex;
}

.mini-cart_line-item_quantity-adjust {
  text-align: center;
  border: 1px #000;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  display: flex;
}

.mini-cart_line-item_product-info {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-direction: column;
  flex: 1;
  align-items: flex-start;
  display: flex;
}

.mini-cart_footer-total {
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.mini-cart_line-item_price {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  display: flex;
}

.product-item_component {
  flex-direction: column;
  height: 100%;
  padding: 0;
  display: flex;
}

.product-item_image-link {
  display: block;
  position: relative;
}

.product-item_image-wrapper {
  width: 100%;
  padding-top: 100%;
  position: relative;
  overflow: hidden;
}

.product-item_image {
  background-color: var(--base-color-neutral--neutral-lightest);
  object-fit: contain;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.product-item_text-link {
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  text-decoration: none;
  display: flex;
}

.product-item_left {
  margin-right: 1rem;
}

.margin-top-auto {
  margin-top: auto;
}

.product-item_tag_list {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  position: absolute;
  inset: 1rem auto auto 1rem;
}

.nav_component {
  background-color: var(--base-color-neutral--white);
  border-bottom: 1px solid #3232321a;
  align-items: center;
  width: 100%;
  height: auto;
  padding-left: 5%;
  padding-right: 5%;
  display: flex;
}

.nav_container {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 1.25rem;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}
/* Logo never shrinks — must stay readable even when nav links wrap/squeeze */
.nav_container > .nav_logo-link {
  flex: 0 0 auto;
}
.nav_container > .nav_logo-link .nav_logo {
  flex-shrink: 0;
  min-width: 0;
}
/* Shop icons cluster on the right edge (search, wishlist, account, cart) */
.nav_container > .nav_shop-icons {
  margin-left: auto;
  flex-shrink: 0;
}
/* Allow only the menu (middle area) to shrink/wrap */
.nav_container > .nav_menu {
  min-width: 0;
}

.nav_menu {
  align-items: center;
  display: flex;
  position: static;
}

.nav_menu.is-page-height-tablet {
  position: relative;
}

.nav_menu-dropdown {
  align-items: stretch;
  height: 5rem;
  display: flex;
}

.nav_dropdown-toggle {
  align-items: center;
  padding: .5rem 1rem .5rem .75rem;
  display: flex;
}

.dropdown-icon {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  margin-top: auto;
  margin-bottom: auto;
  margin-right: 1rem;
  display: flex;
  position: absolute;
  inset: 0% 0% 0% auto;
  right: -1.1rem;
}

.nav_dropdown-list {
  background-color: var(--base-color-neutral--white);
}

.nav_dropdown-list.w--open {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border: 1px solid var(--base-color-neutral--neutral-lightest);
  background-color: var(--base-color-neutral--white);
  flex-wrap: wrap;
  align-content: stretch;
  max-height: 80vh;
  display: flex;
  position: fixed;
  inset: 5rem 0% auto;
  overflow: auto;
}

.nav_dropdown-link {
  padding: .5rem 0;
  font-weight: 700;
}

.nav_dropdown-link.w--current {
  color: var(--base-color-neutral--black);
}

.nav_menu-button {
  padding: 0;
}

.nav_dropdown-link_child {
  padding: .2rem 0;
  font-size: .8rem;
}

.nav_dropdown-link_child.w--current {
  color: var(--base-color-neutral--black);
}

.nav_shop-icons {
  justify-content: center;
  align-items: center;
  display: flex;
}

.nav_shop-icon {
  cursor: pointer;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  padding: 0;
  display: flex;
}

.icon-embed-xsmall {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
}

.nav_shop-quantity {
  background-color: var(--base-color-neutral--black);
  width: 1rem;
  height: 1rem;
  color: var(--base-color-neutral--white);
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  font-size: .7rem;
  display: flex;
  position: absolute;
  inset: auto 0% 0% auto;
}

.nav_mini-cart-holder {
  z-index: 10000;
  background-color: #0006;
  justify-content: flex-start;
  width: 100vw;
  position: fixed;
  inset: 0%;
}

.nav_mini-cart-holder.w--open {
  display: flex;
}

.nav_mini-cart-close {
  flex: 1;
}

.footer_link-column {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 100%;
  grid-auto-columns: 100%;
  place-items: flex-start start;
  display: flex;
}

.footer_form-block {
  width: 100%;
  margin-bottom: 0;
}

.footer_form {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  margin-bottom: .75rem;
  display: grid;
}

.success-message {
  background-color: #0000;
  padding: 1.5rem;
}

.error-message {
  margin-top: 1.5rem;
  padding: .875rem 1rem;
}

.footer_social-icon {
  width: 1.5rem;
  height: 1.5rem;
}

.footer_payment-list {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-wrap: wrap;
  align-items: flex-start;
  margin-top: .75rem;
  display: flex;
}

.footer_payment-icon {
  width: 2.5rem;
}

.cart_details-price {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: row;
  align-items: flex-end;
  display: flex;
}

.section_small-hero {
  position: relative;
}

.filter_product-list {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.section_product-header {
  position: relative;
}

.product-header_layout {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
  min-height: 100vh;
}

.product-header_product-details {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: column;
  padding-top: 3rem;
  padding-bottom: 3rem;
  padding-left: 5rem;
  display: flex;
}

.product-header_price-wrapper {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  align-items: center;
  display: flex;
  position: relative;
}

.product-header_default-state {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-flow: column;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.product-header_option-list {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-direction: column;
  display: flex;
}

.product-header_option {
  grid-column-gap: .2rem;
  grid-row-gap: .2rem;
  flex-flow: column;
  display: flex;
}

.swiper.is-product-gallery {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.swiper-wrapper {
  align-items: flex-start;
  display: flex;
}

/* Desktop (Figma 5404-6245): gestapeltes Galerie-Layout — Hauptbild links
   (~63%), weitere Bilder als Quadrate rechts (~36%). Kein Swiper aktiv. */
.swiper-wrapper.is-product-gallery {
  display: flow-root;
  width: 100%;
  height: auto;
}

.swiper-slide {
  flex: none;
  max-width: 100%;
  height: 100%;
  margin-bottom: 0;
  width: 100%;
}

.swiper-slide.is-product-gallery {
  width: 36.4%;
  height: auto;
  aspect-ratio: 1 / 1;
  margin-left: auto;
  margin-bottom: .375rem;
  overflow: hidden;
}

.swiper-slide.is-product-gallery:first-child {
  float: left;
  width: calc(63.6% - .375rem);
  aspect-ratio: 545 / 606;
  margin-left: 0;
  margin-bottom: 0;
}

/* Rechte Spalte: Fotos füllen das Quadrat (cover), kein Innenabstand */
.swiper-slide.is-product-gallery:not(:first-child) .product-header_gallery-lightbox {
  padding: 0;
}
.swiper-slide.is-product-gallery:not(:first-child) .product-header_gallery-image {
  object-fit: cover;
}

/* Mobile Progressbar-Pagination (nur < 62rem sichtbar) */
.ph_gallery-progress {
  display: none;
}

.swiper_button-wrapper {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.swiper_button-wrapper.is-product-slider {
  justify-content: space-between;
  position: absolute;
  inset: 0%;
}

.swiper_button {
  border: 0;
  text-align: center;
  background-color: #fff;
  border-radius: 100vw;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  transition: color .2s, background-color .2s;
  display: flex;
  position: relative;
  background: transparent;
  padding: 0;
  cursor: pointer;
  line-height: 0;
}

.swiper_button:hover {
  color: #1f1f1f;
}

.swiper_button.swiper-prev.pointer-events-on {
  left: -1.5rem;
}

.swiper_button.swiper-next.pointer-events-on {
  right: -1.5rem;
}

.swiper_button-icon {
  color: #1d1d1b;
  width: 30%;
  height: 55%;
}

.swiper_button-icon.is-reversed {
  transform: rotate(-180deg);
}

.product-header_gallery-lightbox {
  width: 100%;
  height: 100%;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  background-color: #f4f4f4;
}

.product-header_gallery-image {
  background-color: var(--base-color-neutral--neutral-lightest);
  object-fit: contain;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
  max-height: 100%;
  display: block;
}

.product-header_thumbnail-image {
  background-color: var(--base-color-neutral--neutral-lightest);
  cursor: pointer;
  justify-content: center;
  align-items: center;
  height: 100%;
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.section_product-recommended {
  border-top: 1px solid var(--base-color-neutral--neutral-lightest);
  position: relative;
  overflow: hidden;
}

.header_background-image-wrapper {
  z-index: -1;
  background-image: linear-gradient(#00000080, #00000080);
  position: absolute;
  inset: 0%;
}

.header_overlay-layer {
  z-index: 1;
  background-color: #0003;
  position: absolute;
  inset: 0%;
}

.header_background-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.product_list {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: stretch stretch;
  display: grid;
}

.text-color-red {
  color: var(--text-color--text-error);
}

.spacer-xxsmall {
  width: 100%;
  padding-top: .5rem;
}

.spacer-xsmall {
  width: 100%;
  padding-top: 1rem;
}

.spacer-small {
  width: 100%;
  padding-top: 1.5rem;
}

.spacer-medium {
  width: 100%;
  padding-top: 2rem;
}

.spacer-large {
  width: 100%;
  padding-top: 3rem;
}

.nav_predictive-search-holder.w--open {
  display: flex;
}

.product-header_add-to-cart-wrapper {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-direction: column;
  display: flex;
}

.nav_logo {
  object-fit: contain;
  object-position: 0% 50%;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 2rem;
  width: auto;
  min-width: 6.5rem;
  flex-shrink: 0;
  display: flex;
}

.product-item_price {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  align-items: center;
  display: flex;
}

.product_list-item {
  flex: none;
}

.swiper-container {
  height: 100%;
}

.swiper-container.is-product-gallery {
  width: 100%;
  min-width: 100%;
  height: auto;
  position: sticky;
  top: 6rem;
}

.footer_main-wrapper {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.footer_newsletter {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  background-color: var(--base-color-neutral--white);
  color: var(--base-color-neutral--black);
  flex-direction: column;
  align-items: flex-start;
  padding: 2.5rem;
  display: flex;
}

.footer_icon-grid {
  grid-column-gap: 2.5em;
  grid-template-rows: auto;
  grid-template-columns: auto 1fr auto;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.footer_icon-row {
  grid-column-gap: .75rem;
  grid-row-gap: .5rem;
  flex-flow: wrap;
  margin-top: .75em;
  display: flex;
}

.footer_shipping-icon {
  object-fit: contain;
  width: 3rem;
}

.li-lang_dd-list {
  text-transform: uppercase;
  background-color: #111;
  border: 1px solid #ffffff45;
  border-radius: .5rem;
}

.li-lang_dd-list.w--open {
  width: auto;
  padding-top: .5rem;
  padding-bottom: .5rem;
  top: 100%;
  bottom: auto;
  min-width: 13rem;
  max-height: 60vh;
  overflow-y: auto;
  z-index: 1000;
}

.li-lang_dd-link {
  color: #fff;
  text-align: center;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding: 0 1rem;
  text-decoration: none;
  transition: color .2s;
  display: flex;
}

.li-lang_dd-link:hover {
  text-decoration: underline;
}

.footer_logo {
  height: 3.1875rem;
  color: var(--base-color-neutral--white);
  object-fit: contain;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.product-header_buy-wrappper {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  display: flex;
}

.product-header_radio {
  background-color: #ffffff;
  padding: 0.125rem 0.875rem;
  font-weight: 600;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  color: #686868;
  text-decoration: none;
  font-size: 0.75rem;
  line-height: 1.5;
  cursor: pointer;
  transition: background-color 0.15s, border-color 0.15s, color 0.15s;
}

.product-header_radio-list {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-wrap: wrap;
  display: flex;
  gap: 0.5rem;
}

.product-header_radio-button {
  border-width: 0;
  border-color: var(--base-color-neutral--black);
  width: auto;
  height: auto;
  margin-top: 0;
  margin-left: 0;
  position: absolute;
  inset: 0%;
}

.product-header_radio-button.w--redirected-checked {
  border-width: 1px;
  border-color: var(--base-color-neutral--black);
}

.product-header_shipping-wrapper {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  border-top: 1px solid #00000014;
  border-bottom: 1px solid #00000014;
  flex-flow: column;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  display: flex;
}

.product-header_shipping {
  grid-column-gap: .4rem;
  grid-row-gap: .4rem;
  align-items: center;
  display: flex;
}

.product-header_shipping-icon {
  flex: none;
  width: 1.5rem;
  height: 1.5rem;
}

.text-color-green {
  color: var(--base-color-system--success-green-dark);
}

.section_content-header {
  position: relative;
}

.product-header_slider-wrapper {
  margin-top: 1rem;
  position: relative;
}

.nav_dropdown-grid {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  padding-top: 1rem;
  padding-bottom: 1rem;
  display: grid;
}

.footer_divider {
  background-color: var(--base-color-neutral--neutral-darker);
  height: 1px;
}

.product-item_tag {
  background-color: var(--base-color-neutral--black);
  color: var(--base-color-neutral--white);
  padding: .3rem .5rem;
  font-size: .85rem;
  font-weight: 500;
}

.product-item_tag.is-red {
  background-color: var(--base-color-system--error-red);
  color: var(--base-color-system--error-red-dark);
}

.product-header_tag-list {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.footer_link-grid {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: min-content min-content;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.product-item_form-wrapper {
  grid-column-gap: .3rem;
  grid-row-gap: .3rem;
  flex-direction: column;
  display: flex;
}

.section-product-nav {
  z-index: 1;
  border-bottom: 1px solid var(--base-color-neutral--neutral-lightest);
  background-color: #fff;
  position: sticky;
  top: 4.9rem;
}

.cart_price-info {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: flex;
}

.contact_component {
  grid-column-gap: 5rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: start;
  display: grid;
}

.contact_form-block {
  flex-direction: column;
  align-items: stretch;
  margin-bottom: 0;
}

.contact_form {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.filter_form-field-wrapper {
  position: relative;
}

.success-text {
  font-weight: 600;
}

.error-text {
  color: #e23939;
}

.filter_layout {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  grid-template-rows: auto;
  grid-template-columns: max-content 1fr;
  grid-auto-columns: 1fr;
  align-items: start;
  display: grid;
}

.filter_filters-wrapper {
  max-width: 19rem;
  position: sticky;
  top: 7rem;
}

.filter_form_component {
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 18rem;
}

.filter_form {
  background-color: #0000;
  min-width: 15rem;
}

.filter_form-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.5rem;
  padding-right: 1rem;
  display: flex;
}

.filter_heading {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
}

.filter_results-wrapper {
  margin-bottom: 1.5rem;
  display: flex;
}

.filter_results-text {
  font-size: .875rem;
}

.filter_scroll-wrapper {
  margin-top: 1rem;
  padding-bottom: 4rem;
  padding-right: 1rem;
  overflow: scroll;
  display: flex;
  flex-direction: column;
}

.filter_filter-group-heading {
  border-top: 1px solid var(--base-color-neutral--neutral-lightest);
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  padding-top: .85rem;
  padding-bottom: .85rem;
  display: flex;
  padding: 1rem 0;
  user-select: none;
}

.filter_form_checkbox {
  align-items: center;
  margin-bottom: 0;
  padding-top: .5rem;
  padding-bottom: .5rem;
  padding-left: 1.25rem;
  display: flex;
  margin: 0;
  padding: 0.5rem 0 0.5rem 1.5rem;
  cursor: pointer;
}

.filter_form_checkbox-icon {
  cursor: pointer;
  border: 1px solid #0f0f0f;
  border-radius: 0;
  flex: none;
  width: 1.125rem;
  min-width: 1.125rem;
  height: 1.125rem;
  min-height: 1.125rem;
  margin: 0 0.75rem 0 -1.5rem;
  transition: background-color 0.15s, border-color 0.15s;
}

.filter_form_checkbox-icon.w--redirected-checked {
  box-shadow: none;
  background-color: #0f0f0f;
  background-image: linear-gradient(45deg, transparent 45%, #fff 45%, #fff 55%, transparent 55%);
  background-size: 60% 60%;
  border-width: 1px;
  border-color: #0f0f0f;
  background-position: center;
  background-repeat: no-repeat;
}

.filter_form_checkbox-icon.w--redirected-focus {
  box-shadow: none;
  border-color: #000;
}

.filter_form_checkbox-icon.is-checked {
  background-color: var(--base-color-neutral--black);
}

.filter_form_checkbox-label {
  margin-top: auto;
  margin-bottom: auto;
  font-size: 0.875rem;
  font-weight: 500;
  color: #0f0f0f;
}

.filter_tablet-modal-close-button {
  display: none;
}

.filter_tablet-filters-button {
  color: #000;
  text-align: center;
  background-color: #0000;
  border: 1px solid #000;
  padding: .75rem 1.5rem;
  display: none;
}

.button-icon-left {
  margin-right: .5rem;
}

.filter_feed-header {
  grid-column-gap: 2rem;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
  display: flex;
}

.filter_tags-wrapper {
  grid-row-gap: .5rem;
  flex-wrap: wrap;
  flex: 1;
  align-items: flex-start;
  margin-right: 2rem;
  display: flex;
}

.filter_tag {
  background-color: #f4f4f4;
  align-items: center;
  margin-right: .5rem;
  padding: .5rem .75rem .5rem 1rem;
  display: flex;
}

.filter_close-icon {
  cursor: pointer;
  width: 1.5rem;
  height: 1.5rem;
  margin-left: .5rem;
}

.filter_empty {
  border: 1px solid var(--base-color-neutral--neutral-lighter);
  border-radius: var(--border-radius--medium);
  background-color: var(--base-color-neutral--neutral-lightest);
  text-align: center;
  padding: 2.9rem;
}

.section_under-construction {
  justify-content: center;
  align-items: center;
  height: 100vh;
  display: flex;
  position: relative;
}

.pagination_list {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: center;
  padding-left: 0;
  display: flex;
}

.pagination_item {
  grid-column-gap: .2rem;
  grid-row-gap: .2rem;
  align-items: center;
  margin-bottom: 0;
  display: flex;
}

.pagination_arrow {
  flex-direction: column;
  flex: none;
  justify-content: center;
  align-items: center;
  width: .75rem;
  height: .75rem;
  display: flex;
  transform: rotate(90deg);
}

.pagination_arrow.is-right {
  transform: rotate(-90deg);
}

.pagination_component {
  margin-top: 4rem;
}

.filter_tags-inner-wrapper {
  flex-wrap: wrap;
  align-items: center;
  margin-right: 0;
  display: flex;
}

.mini-cart_footer-message {
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.mini-cart_footer-message-item {
  border-radius: var(--border-radius--medium);
  background-color: var(--background-color--background-error);
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  padding: .5rem;
  display: flex;
}

.section_li-hero {
  text-align: left;
  background-color: #edf8fb;
  background-image: radial-gradient(circle farthest-side at 80% -10%, #4353ffab, #fff0 32%), radial-gradient(circle farthest-side at 0 100%, #00ed97, #fff0 26%), linear-gradient(#edf8fb, #edf8fb);
  justify-content: center;
  align-items: center;
  height: 90vh;
  padding-top: 7.5rem;
  padding-bottom: 7.5rem;
  display: flex;
  position: relative;
}

.hero_grid {
  grid-column-gap: 8rem;
  grid-row-gap: 8rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.hero_content {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start;
  display: flex;
  position: relative;
  z-index: 2;
  flex-direction: column;
  gap: 1.5rem;
  align-items: flex-start;
  padding: 2.5rem;
  padding-top: 10rem;
  color: inherit;
  justify-content: flex-end;
  width: 100%;
}

.hero_heading {
  font-size: 4rem;
}

.hero_image {
  grid-column-gap: 7rem;
  grid-row-gap: 7rem;
  color: #fff;
  background-color: #052564;
  background-image: radial-gradient(circle farthest-side at 70% 130%, #4353ffb5, #fff0 31%), radial-gradient(circle farthest-side at 100% 100%, #00ed97, #fff0 48%);
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 3.75rem;
  display: flex;
  box-shadow: 0 0 2px #0003;
}

.nav_dropdown {
  display: block;
}

.fs-styleguide_hero-label {
  background-color: var(--base-color-neutral--white);
  color: var(--text-color--text-primary);
  text-transform: uppercase;
  border-radius: .25rem;
  padding: .25rem .375rem;
  font-size: .75rem;
  font-weight: 500;
  text-decoration: none;
}

.fs-styleguide_heading-header {
  font-size: 6rem;
}

.fs-styleguide_empty-box {
  z-index: -1;
  background-color: #2d40ea0d;
  border: 1px dashed #2d40ea;
  min-width: 3rem;
  height: 3rem;
  position: relative;
}

.container-medium {
  width: 100%;
  max-width: 64rem;
  margin-left: auto;
  margin-right: auto;
}

.fs-styleguide_spacing {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  background-image: linear-gradient(to top, #2d40ea1a, #fff0);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start stretch;
  display: grid;
  position: relative;
}

.fs-styleguide_row {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-direction: row;
  grid-template-rows: auto;
  grid-template-columns: auto;
  grid-auto-columns: auto;
  grid-auto-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.heading-style-h5 {
  font-family: "Futura PT", sans-serif;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.2;
  margin: 0;
}

.fs-styleguide_item-header {
  border-bottom: 1px solid #0000001a;
  width: 100%;
  padding-bottom: 2rem;
}

.fs-styleguide_3-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: stretch;
  width: 100%;
  display: grid;
}

.fs-styleguide_3-col.is-align-start {
  align-items: start;
}

.text-style-italic {
  font-style: italic;
}

.text-style-allcaps {
  text-transform: uppercase;
}

.text-style-nowrap {
  white-space: nowrap;
}

.text-style-quote {
  border-left: .25rem solid #e2e2e2;
  margin-bottom: 0;
  padding: 0 1.25rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.fs-styleguide_message {
  background-color: var(--background-color--background-warning);
  color: var(--text-color--text-warning);
  border-radius: .25rem;
  padding: .25rem .5rem;
  font-size: .875rem;
}

.text-weight-xbold {
  font-weight: 800;
}

.text-weight-medium {
  font-weight: 500;
}

.text-weight-light {
  font-weight: 300;
}

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

.text-color-primary {
  color: var(--text-color--text-primary);
}

.background-color-primary {
  background-color: var(--background-color--background-primary);
  color: var(--text-color--text-alternate);
}

.fs-styleguide_background {
  border: 1px solid #0000001a;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  display: flex;
}

.fs-styleguide_background-space {
  width: 1px;
  height: 1px;
  margin: 5rem;
}

.background-color-secondary {
  background-color: var(--background-color--background-secondary);
}

.background-color-tertiary {
  background-color: var(--background-color--background-tertiary);
}

.background-color-alternate {
  background-color: var(--background-color--background-alternate);
}

.max-width-xxlarge {
  width: 100%;
  max-width: 80rem;
}

.max-width-small {
  width: 100%;
  max-width: 20rem;
}

.max-width-xsmall {
  width: 100%;
  max-width: 16rem;
}

.max-width-xxsmall {
  width: 100%;
  max-width: 12rem;
}

.padding-top {
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}

.padding-vertical {
  padding-left: 0;
  padding-right: 0;
}

.padding-horizontal {
  padding-top: 0;
  padding-bottom: 0;
}

.padding-left {
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
}

.padding-right {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.padding-0 {
  padding: 0;
}

.padding-tiny {
  padding: .125rem;
}

.padding-xxsmall {
  padding: .25rem;
}

.padding-xsmall {
  padding: .5rem;
}

.padding-small {
  padding: 1rem;
}

.padding-large {
  padding: 3rem;
}

.padding-xlarge {
  padding: 4rem;
}

.padding-xxlarge {
  padding: 5rem;
}

.padding-huge {
  padding: 6rem;
}

.padding-xhuge {
  padding: 8rem;
}

.padding-xxhuge {
  padding: 12rem;
}

.padding-custom1 {
  padding: 1.5rem;
}

.padding-custom2 {
  padding: 2.5rem;
}

.padding-custom3 {
  padding: 3.5rem;
}

.margin-vertical {
  margin-left: 0;
  margin-right: 0;
}

.margin-horizontal {
  margin-top: 0;
  margin-bottom: 0;
}

.margin-left {
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 0;
}

.margin-right {
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 0;
}

.margin-0 {
  margin: 0;
}

.margin-tiny {
  margin: .125rem;
}

.margin-xxsmall {
  margin: .25rem;
}

.margin-large {
  margin: 3rem;
}

.margin-xlarge {
  margin: 4rem;
}

.margin-xxlarge {
  margin: 5rem;
}

.margin-huge {
  margin: 6rem;
}

.margin-xhuge {
  margin: 8rem;
}

.margin-xxhuge {
  margin: 12rem;
}

.margin-custom1 {
  margin: 1.5rem;
}

.margin-custom2 {
  margin: 2.5rem;
}

.margin-custom3 {
  margin: 3.5rem;
}

.fs-styleguide_spacer-box {
  background-color: #2d40ea1a;
  border: 1px dashed #2d40ea;
  width: 100%;
  position: relative;
}

.spacer-tiny {
  width: 100%;
  padding-top: .125rem;
}

.spacer-xlarge {
  width: 100%;
  padding-top: 4rem;
}

.spacer-xxlarge {
  width: 100%;
  padding-top: 5rem;
}

.spacer-huge {
  width: 100%;
  padding-top: 6rem;
}

.spacer-xhuge {
  width: 100%;
  padding-top: 8rem;
}

.spacer-xxhuge {
  width: 100%;
  padding-top: 12rem;
}

.fs-styleguide_spacing-all {
  display: none;
}

.icon-height-small {
  height: 1rem;
}

.icon-height-medium {
  height: 2rem;
}

.icon-height-large {
  height: 3rem;
}

.icon-1x1-medium {
  width: 2rem;
  height: 2rem;
}

.icon-1x1-large {
  width: 4rem;
  height: 4rem;
  display: block;
}

.fs-styleguide_4-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.overflow-visible {
  overflow: visible;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-auto {
  overflow: auto;
}

.overflow-scroll {
  overflow: scroll;
}

.layer {
  justify-content: center;
  align-items: center;
  position: absolute;
  inset: 0%;
}

.spacing-clean {
  margin: 0;
  padding: 0;
}

.z-index-2 {
  z-index: 2;
  position: relative;
}

.aspect-ratio-square {
  aspect-ratio: 1;
  object-fit: cover;
}

.aspect-ratio-portrait {
  aspect-ratio: 2 / 3;
  object-fit: cover;
}

.aspect-ratio-landscape {
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.aspect-ratio-widescreen {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.form_component {
  margin-bottom: 0;
}

.form_radio {
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: 0;
  display: flex;
}

.form_radio-icon {
  width: .875rem;
  height: .875rem;
  margin-top: 0;
  margin-left: 0;
  margin-right: .5rem;
}

.form_radio-icon.w--redirected-checked {
  border-width: .25rem;
  width: .875rem;
  height: .875rem;
}

.form_radio-icon.w--redirected-focus {
  width: .875rem;
  height: .875rem;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

.form_message-success {
  background-color: var(--background-color--background-success);
  color: var(--text-color--text-success);
  padding: 1.25rem;
}

.li-stylguide_header {
  text-align: left;
  background-color: #edf8fb;
  background-image: radial-gradient(circle farthest-side at 80% -10%, #4353ffab, #fff0 32%), radial-gradient(circle farthest-side at 0 100%, #00ed97, #fff0 26%), linear-gradient(#edf8fb, #edf8fb);
  justify-content: center;
  align-items: center;
  position: relative;
}

.section_header-home {
  position: relative;
}

.header_card {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 40rem;
  padding-top: 4rem;
  padding-bottom: 4rem;
  display: flex;
  position: relative;
}

.product_component {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: .5fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: flex;
}

.product_heading-wrapper {
  grid-column-gap: 5rem;
  grid-row-gap: 1rem;
  flex-direction: row;
  grid-template-rows: auto;
  grid-template-columns: 1fr max-content;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  display: flex;
}

.product_heading {
  flex: 1;
}

.product_button-row {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.blog_featured-item {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.blog_featured-image-link {
  width: 100%;
  position: relative;
}

.blog_featured-image-wrapper {
  width: 100%;
  padding-top: 66%;
  position: relative;
  overflow: hidden;
}

.blog_titel-wrapper {
  z-index: 1;
  color: var(--base-color-neutral--white);
  padding: 2rem;
  position: absolute;
  inset: auto auto 0% 0%;
}

.blog_featured-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.blog_overlay {
  background-image: linear-gradient(204deg, #00000024, #32323275);
  position: absolute;
  inset: 0%;
}

.blog_two-articles {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  display: grid;
}

.blog_featured-item-content {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.blog_featured-title-link {
  margin-bottom: .2rem;
  text-decoration: none;
}

.icon-embed-xxsmall {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  display: flex;
}

.sort_select {
  margin-bottom: 0;
  font-size: .875rem;
}

.sort_select.filter_checkbox {
  background-color: #f3f3f300;
  border: 1px solid #000;
  height: 3rem;
  margin-left: .5rem;
  margin-right: 0;
  padding: 0 1rem;
  font-weight: 500;
}

.li-tag {
  display: none;
}

.filter_headline {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.nav_dropdown-close-button {
  background-color: #0000;
  padding: 0;
}

.form_hidden-label {
  white-space: nowrap;
  clip: rect(0, 0, 0, 0);
  border: 0;
  width: 1px;
  height: 1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.footer_sub-footer {
  grid-column-gap: 2.5em;
  grid-row-gap: 2.5rem;
  flex-flow: wrap;
  grid-template-rows: auto;
  grid-template-columns: auto 1fr auto;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  place-items: center stretch;
  display: flex;
}

.footer_logo-link {
  width: 8rem;
  max-height: 4rem;
}

.footer_legal-links {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1rem;
  color: #fff;
  flex-flow: wrap;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.footer_legal-link {
  color: var(--base-color-neutral--neutral);
  font-size: .875rem;
}

.footer_link-list {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.footer_link {
  font-size: .875rem;
}

.product-header_description {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-flow: column;
  margin-top: .5rem;
  display: flex;
}

.li-lang_dropdown {
  flex-direction: column;
  align-items: stretch;
  width: auto;
}

.li-lang_dd-toggle {
  color: #fff;
  background-color: #111;
  border: 1px solid #ffffff45;
  padding: .5rem 1rem;
  display: flex;
}

.li-lang_dd-toggle.w--open {
  z-index: 1;
}

.li-lang_dd-toggle-icon {
  width: 1rem;
  color: var(--base-color-neutral--white);
  object-fit: contain;
  margin-left: .4em;
  transform: rotate(180deg);
}

.li-lang_script {
  display: none;
}

.li-lang_dd-list-item {
  width: 100%;
}

.blog_cms-empty {
  border-radius: var(--border-radius--small);
  background-color: var(--base-color-neutral--black);
  color: var(--base-color-neutral--white);
  text-align: center;
  padding: 1.25rem 2rem;
}

.article_wrapper {
  width: 100%;
  max-width: 48rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 2.5rem;
}

.li-custom {
  display: none;
}

.product-header_play-icon,
.product-header_model-icon {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  display: flex;
  position: absolute;
  inset: auto 0% 0% auto;
  pointer-events: none;
}

/* Container für Video / External-Video / 3D-Modell innerhalb der Haupt-Gallery */
.product-header_gallery-image.is-video,
.product-header_gallery-image.is-external-video,
.product-header_gallery-image.is-model {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.product-header_gallery-image.is-video video,
.product-header_gallery-image.is-external-video iframe,
.product-header_gallery-image.is-model model-viewer {
  width: 100%;
  height: 100%;
  max-height: 100%;
  object-fit: contain;
  display: block;
}

.gift_card-logo {
  object-position: 0% 50%;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 7.3125rem;
  display: flex;
}

.section_header-group, .section_footer-group {
  display: contents;
}

/* Section: Team */
.section_team {
  width: 100%;
}
.team_heading {
  display: grid;
  grid-template-columns: 1fr 1.25fr;
  gap: 2rem 8rem;
  align-items: start;
}
/* Team Grid — statisches Bild links, Karten-Grid rechts (kein Slider mehr) */
.team_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid #e8e8e8;
  border-bottom: none;
}
.team_image {
  width: 100%;
  height: 100%;
  min-height: 30rem;
  object-fit: cover;
  display: block;
}
.team_cards-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-left: 1px solid #e8e8e8;
}
.team_cards-grid > .icon-cards_card:nth-child(odd) {
  border-right: 1px solid #e8e8e8;
}
.team_cards-grid > .icon-cards_card:nth-child(n+3) {
  border-top: 1px solid #e8e8e8;
}

@media screen and (max-width: 991px) {
  .padding-medium {
    padding: 1.5rem;
  }
  .margin-medium {
    margin: 1.5rem;
  }
  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .hide-tablet {
    display: none;
  }
  .li-styleguide_2-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }
  .padding-global.max-width-full {
    padding-left: 0;
    padding-right: 0;
  }
  .li-styleguide_1-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }
  .li-styleguide_heading-medium {
    font-size: 3rem;
  }
  .padding-section-large {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .button.is-link.hide-tablet {
    display: none;
  }
  .li-styleguide_section {
    grid-column-gap: 2.5rem;
    grid-template-columns: 1fr;
  }
  .padding-section-medium {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .cart_grid-wrapper {
    grid-template-columns: 2fr;
  }
  .collections_grid, .blog_list {
    grid-template-columns: 1fr 1fr;
  }
  .blog_img {
    height: 100%;
  }
  .gift_card {
    height: 25.1em;
  }
  .account_grid {
    grid-template-columns: 2fr;
  }
  .addresses_account-wrapper {
    font-size: 1.2em;
  }
  .login_form {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .nav_component {
    min-height: 5rem;
  }
  .nav_container {
    grid-column-gap: 0rem;
    grid-template-columns: 1fr min-content min-content;
    position: relative;
    justify-content: flex-start;
  }
  .nav_menu {
    -webkit-text-fill-color: inherit;
    background-color: #0000;
    background-clip: border-box;
    border-bottom: 1px solid #000;
    padding: 1rem 5% 2rem;
    position: absolute;
    overflow: auto;
  }
  .nav_menu.is-page-height-tablet {
    border-bottom-color: var(--base-color-neutral--neutral-lightest);
    background-color: var(--base-color-neutral--white);
    width: 100%;
    max-height: 90vh;
    padding-bottom: 3.9rem;
    padding-right: 5%;
    transition: height .5s;
    position: absolute;
    overflow: auto;
  }
  .nav_menu-dropdown {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    height: auto;
    font-size: 1.125rem;
    font-weight: 700;
  }
  .nav_dropdown-toggle {
    flex: 1;
    align-items: center;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-top: .75rem;
    padding-bottom: .75rem;
    padding-left: 0;
    font-size: 1.5rem;
    display: flex;
  }
  .dropdown-icon {
    width: 1.5rem;
    height: 1.5rem;
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
    inset: auto 0% auto auto;
  }
  .nav_dropdown-list {
    position: static;
    overflow: hidden;
  }
  .nav_dropdown-list.w--open {
    border-style: none;
    padding: 0;
    position: relative;
    top: 0;
  }
  .nav_dropdown-list.no-scrollbar.w--open {
    max-height: none;
  }
  .nav_dropdown-link {
    width: auto;
    padding: .75rem 0 .75rem 0%;
  }
  .nav_menu-button.w--open {
    background-color: #0000;
  }
  .menu-icon {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 3rem;
    height: 3rem;
    margin-right: -.5rem;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
  }
  .menu-icon_line-top {
    background-color: var(--base-color-neutral--black);
    width: 1.5rem;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }
  .menu-icon_line-middle {
    background-color: var(--base-color-neutral--black);
    justify-content: center;
    align-items: center;
    width: 1.5rem;
    height: 2px;
    margin-top: .375rem;
    margin-bottom: .375rem;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
  }
  .menu-icon_line-middle-inner {
    width: .25rem;
    height: 0;
    padding-bottom: 0;
    padding-right: 0;
  }
  .menu-icon_line-bottom {
    background-color: var(--base-color-neutral--black);
    width: 1.5rem;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }
  .nav_dropdown-link_child {
    width: auto;
    padding: .75rem 0 .75rem 0%;
    font-weight: 400;
  }
  .nav_shop-icons {
    margin-left: auto;
    position: relative;
  }
  .filter_product-list {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .product-header_component {
    padding-bottom: 2.5rem;
  }
  .product-header_layout {
    grid-column-gap: 5rem;
    grid-row-gap: 2.5rem;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    min-height: auto;
    flex-direction: column;
    align-items: stretch;
  }
  .product-header_product-details {
    padding-left: 0;
  }
  .swiper-wrapper.is-product-gallery {
    width: 100%;
    display: flex;
    height: 100%;
  }
  .product_list {
    grid-column-gap: 2rem;
    grid-template-columns: 1fr 1fr;
  }
  .nav_logo {
    width: 7rem;
    height: 3rem;
  }
  .swiper-container.is-product-gallery {
    padding-right: 0;
    position: static;
  }
  .footer_main-wrapper {
    grid-template-columns: 1fr;
  }
  .footer_icon-grid {
    grid-row-gap: 2em;
    grid-template-columns: 1fr 1fr;
  }
  .product-header_radio {
    background-color: var(--base-color-neutral--white);
  }
  .nav_dropdown-grid {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    grid-template-columns: 1fr;
  }
  .contact_component {
    grid-column-gap: 3rem;
    grid-auto-flow: row;
    min-height: auto;
  }
  .filter_layout {
    grid-template-columns: 1fr;
  }
  .filter_filters-wrapper {
    z-index: 9999;
    background-color: #fff;
    width: 100%;
    max-width: none;
    height: auto;
    padding: 3rem 5% 0;
    position: static;
    inset: 0%;
    overflow: scroll;
    transform: translate(0, 100%);
  }
  .filter_form_component {
    z-index: 999;
    max-width: 100%;
    width: 100%;
  }
  .filter_form-header {
    flex-direction: column;
    align-items: flex-start;
  }
  .filter_heading {
    font-size: 2.25rem;
  }
  .filter_scroll-wrapper {
    height: auto;
    padding-bottom: 0;
    padding-right: 0;
    overflow: visible;
  }
  .filter_tablet-modal-close-button {
    display: block;
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
  }
  .filter_tablet-filters-button {
    justify-content: center;
    display: flex;
  }
  .pagination_list {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    display: flex;
  }
  .pagination_item {
    grid-column-gap: .3rem;
    grid-row-gap: .3rem;
    align-items: center;
    margin-bottom: 0;
    display: flex;
  }
  .pagination_arrow {
    width: .75rem;
    height: .75rem;
    transform: rotate(90deg);
  }
  .pagination_arrow.is-right {
    transform: rotate(-90deg);
  }
  .pagination_component {
    justify-content: center;
    align-items: center;
    margin-top: 2rem;
    display: flex;
  }
  .pagination_count {
    text-decoration: underline;
  }
  .hero_grid {
    grid-column-gap: 4rem;
    grid-row-gap: 4rem;
    grid-template-columns: 1fr;
  }
  .fs-styleguide_heading-header {
    font-size: 4rem;
  }
  .fs-styleguide_3-col {
    grid-template-columns: 1fr;
  }
  .max-width-full-tablet {
    width: 100%;
    max-width: none;
  }
  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }
  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }
  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }
  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }
  .padding-large {
    padding: 2.5rem;
  }
  .padding-xlarge {
    padding: 3rem;
  }
  .padding-xxlarge {
    padding: 4rem;
  }
  .padding-huge {
    padding: 5rem;
  }
  .padding-xhuge {
    padding: 6rem;
  }
  .padding-xxhuge {
    padding: 8rem;
  }
  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }
  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }
  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }
  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }
  .margin-large {
    margin: 2.5rem;
  }
  .margin-xlarge {
    margin: 3rem;
  }
  .margin-xxlarge {
    margin: 4rem;
  }
  .margin-huge {
    margin: 5rem;
  }
  .margin-xhuge {
    margin: 6rem;
  }
  .margin-xxhuge {
    margin: 8rem;
  }
  .spacer-xlarge {
    padding-top: 3rem;
  }
  .spacer-xxlarge {
    padding-top: 4rem;
  }
  .spacer-huge {
    padding-top: 5rem;
  }
  .spacer-xhuge {
    padding-top: 6rem;
  }
  .spacer-xxhuge {
    padding-top: 8rem;
  }
  .fs-styleguide_4-col {
    grid-template-columns: 1fr;
  }
  .product_component {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }
  .product_heading-wrapper {
    grid-column-gap: 3rem;
    position: static;
  }
  .product_heading {
    margin-right: 3rem;
  }
  .product_button-row {
    flex: none;
  }
  .more_liste {
    grid-template-columns: 1fr 1fr;
  }
  .blog_featured-image-wrapper {
    padding-top: 75%;
  }
  .footer_sub-footer {
    grid-row-gap: 2em;
    grid-template-columns: 1fr 1fr;
  }
  .gift_card-logo {
    width: 8.4rem;
    height: 3.6rem;
  }
  #w-node-_5eccf730-c887-5204-0e0c-693f99a732bf-99a7328f, #w-node-_5eccf730-c887-5204-0e0c-693f99a732d3-99a7328f {
    justify-self: start;
  }
  #w-node-_4ff72092-e0e6-d591-6af1-5b10f594a656-f594a625 {
    order: 9999;
  }
  .nav_search-pill.nav_search-pill {
    width: auto;
  }
  .nav_search-placeholder {
    display: none;
  }
  .section_hero {
    min-height: 70vh;
    margin-top: -7rem;
  }
  .hero_content {
    padding: 1.5rem;
    padding-top: 8rem;
    gap: 1rem;
  }
  .hero_headline {
    font-size: 1.75rem;
  }
  .hero_subtext {
    font-size: 1rem;
  }
  .hero_arrow {
    width: 2rem;
    height: 2rem;
  }
  .hero_arrow-prev {
    left: .75rem;
  }
  .hero_arrow-next.hero_arrow-next {
    right: .75rem;
  }
  .usp-row_grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem 1.5rem;
  }
  .image-banner_container.image-banner_container {
    padding: 1.5rem;
  }
  .image-banner_headline {
    font-size: 1.75rem;
  }
  .image-banner_subtext {
    font-size: 1.0625rem;
  }
  .image-link-list_inner {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .image-link-list_inner.is-image-right {
    grid-template-areas: none;
  }
  .image-link-list_image-side {
    aspect-ratio: 16 / 10;
    min-height: 20rem;
    max-width: 100%;
  }
  .image-link-list_text-side {
    padding: 3rem 1.5rem;
    max-width: 100%;
  }
  .image-link-list_content {
    gap: 2rem;
  }
  .image-link-list_link.image-link-list_link {
    font-size: 1.5rem;
  }
  .loved-by_grid {
    flex-direction: column;
  }
  .loved-by_headline-tile.loved-by_headline-tile {
    width: 100%;
    height: 18rem;
  }
  .loved-by_headline-title {
    font-size: 1.5rem;
  }
  .footer-newsletter_inner,
  .footer-bottom_row,
  .footer-bottom_legal-row {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .footer-newsletter_promos {
    grid-template-columns: 1fr;
  }
  .footer-newsletter_main {
    flex-direction: column;
    gap: 2.5rem;
  }
  .footer-newsletter_pitch.footer-newsletter_pitch {
    flex: 1 1 auto;
  }
  .footer-newsletter_headline {
    font-size: 2rem;
  }
  .section_footer-newsletter .footer-newsletter_link-grid {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0;
  }
  .swiper-slide.is-product-features {
    width: calc(33.333% - 1rem);
  }
  .product-loved-by_grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .product-loved-by_col:nth-child(even) { margin-top: 1.5rem; }
  .product-comparison_layout.product-comparison_layout {
    grid-template-columns: 1fr;
  }
  .product-comparison_table-outer {
    padding: 2.5rem 1.5rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .product-comparison_table {
    min-width: 26.25rem;
  }
  .product-reviews_layout {
    grid-template-columns: 1fr;
  }
  .product-reviews_summary {
    position: static;
  }
  .product-header_gallery {
    position: static;
    top: auto;
    height: auto;
    width: 100%;
    display: block;
  }
  .swiper.is-product-gallery {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    max-height: 32.5rem;
  }
  .swiper-slide.is-product-gallery {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    margin-left: 0;
    margin-bottom: 0;
  }
  .swiper-slide.is-product-gallery:first-child {
    float: none;
    width: 100%;
    aspect-ratio: auto;
  }
  .swiper-slide.is-product-gallery:not(:first-child) .product-header_gallery-lightbox {
    padding: 1rem;
  }
  .swiper-slide.is-product-gallery:not(:first-child) .product-header_gallery-image {
    object-fit: contain;
  }
  .product-header_gallery-lightbox {
    height: 100%;
    padding: 1rem;
  }
  .ph_gallery-progress {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: auto;
    height: .1875rem;
    background-color: rgba(15, 15, 15, .08);
    z-index: 5;
  }
  .ph_gallery-progress .swiper-pagination-progressbar-fill {
    position: absolute;
    inset: 0;
    transform-origin: left top;
    background-color: #0f0f0f;
  }
  .product-header_details {
    padding: 2rem 2.5rem;
    width: 100%;
    max-width: 100%;
  }
  .collection-intro_layout {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .collection-intro_tiles.collection-intro_tiles {
    grid-template-columns: repeat(3, 1fr);
  }
  .coll_filter-bar-outer {
    top: 0;
  }
  .coll_filter-pills.coll_filter-pills {
    overflow-x: auto;
    flex-wrap: nowrap;
  }
  .coll_grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .section_collection-header > .padding-global {
    padding-top: 3rem;
    padding-bottom: 4rem;
  }
  .collection-header_title {
    font-size: 2.25rem;
  }
  .collection-header_desc.collection-header_desc {
    font-size: 1.125rem;
    max-width: 100%;
  }
  .collection-header_layout {
    gap: 2rem;
  }
  .section_feature-product > .padding-global {
    padding-top: 3rem;
    padding-bottom: 4rem;
  }
  .feature-product_card {
    grid-template-columns: 1fr;
    aspect-ratio: auto;
    min-height: 0;
  }
  .feature-product_media {
    aspect-ratio: 919 / 481;
  }
  .feature-product_content {
    padding: 2rem 1.5rem;
  }
  .heading-h1_grid.heading-h1_grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .why-us_grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .icon-cards_grid {
    grid-template-columns: 1fr;
  }
  .icon-cards_card.is-line-right,
  .icon-cards_card.is-line-left {
    border-right: none;
    border-left: none;
  }
  .default-space-between.default-space-between {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .owner_grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .owner_main-component {
    min-height: 22rem;
  }
  .section_discover {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .discover_image.discover_image {
    aspect-ratio: 4 / 3;
    height: auto;
  }
  .discover_item-content {
    padding: 3rem 1.5rem;
  }
  .solutions_grid,
  .solutions_grid.is-3-columns {
    grid-template-columns: 1fr 1fr;
  }
  .team_heading {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .team_grid {
    grid-template-columns: 1fr;
  }
  .team_image {
    min-height: 16rem;
  }
  .team_cards-grid {
    border-left: none;
    border-top: 1px solid #e8e8e8;
  }
  .benefits_grid.benefits_grid {
    grid-template-columns: 1fr 1fr;
  }
  .value-tabs_component {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .jobs_layout.jobs_layout {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .faq_wrapper {
    grid-template-columns: 1fr;
  }
  .article_grid.article_grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .section_image-hero {
    min-height: 50vh;
  }
  .section_split-image-left,
  .section_split-image-right {
    grid-template-columns: 1fr;
  }
  .section_split-image-right .split-image_image-block {
    order: -1;
  }
  .split-image_content-wrapper.is-left-image,
  .split-image_content-wrapper.is-right-image {
    padding: 3rem 1.5rem;
    max-width: 100%;
  }
  .split-image_image-block {
    aspect-ratio: 4 / 3;
    min-height: 0;
  }
  .subnav_component {
    padding: 0 1rem;
  }
  .subnav_wrapper.subnav_wrapper {
    gap: 1rem;
    overflow-x: auto;
  }
  .nav_secondary-content.is-subnav {
    min-width: 100%;
    left: 0;
    right: 0;
  }
  .subnav_dropdown-list {
    grid-template-columns: 1fr;
  }
  .acc-cards_heading {
    grid-template-columns: 1fr;
  }
  .acc-cards_grid {
    grid-template-columns: 1fr 1fr;
  }
  .acc-dis_tab-component {
    grid-template-columns: 1fr;
  }
  .acc-dis_tab-pane {
    grid-template-columns: 1fr 1fr;
  }
  .acc-welcome_top {
    grid-template-columns: 1fr;
  }
  .split-hero_grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .split-hero_bg-wrapper {
    grid-template-columns: 1fr;
    opacity: 0.3;
  }
  .split-hero_bg-image.split-hero_bg-image {
    grid-column: 1;
  }
  .acc-banner {
    grid-template-columns: 1fr;
  }
  .acc-banner_content {
    padding: 2.5rem 2rem;
  }
  .acc-banner_image {
    max-height: 18rem;
  }
  .acc-double {
    grid-template-columns: 1fr;
  }
  .acc-triple {
    grid-template-columns: 1fr 1fr;
  }
  .acc-card {
    padding: 1.75rem;
  }
  .acc_banner-item.is-large {
    flex-direction: column;
    gap: 1.5rem;
    align-items: flex-start;
  }
  .acc_banner-image.is-large.acc_banner-image.is-large {
    max-width: 100%;
    max-height: 14rem;
  }
  .acc_gutschein-form-wrapper {
    position: static;
  }
  .acc_gutschein-form {
    padding: 1.75rem;
  }
  .faq_header.is-account {
    padding: 1.25rem;
  }
  .faq_body.is-account.faq_body.is-account {
    padding: 0 1.25rem;
  }
  .multi-form_heading {
    padding: 1.25rem 1.5rem;
  }
  .multi-form_form-content {
    padding: 1.5rem;
  }
  .multi-form_triple {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  .multi-form_double {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  .reseller-hub_grid {
    grid-template-columns: 1fr;
  }
  .reseller-hub_media {
    min-height: 22rem;
  }
  .reseller-hub_panel-inner {
    max-width: none;
    padding: 2.5rem;
  }
  .category-row_grid {
    justify-content: center;
    gap: 1.5rem;
  }
  .coll-intro-cards_layout {
    flex-direction: column;
    gap: 2rem;
  }
  .coll-intro-cards_intro.coll-intro-cards_intro {
    width: 100%;
    max-width: none;
  }
  .b2b-news_panel {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .b2b-news_content.b2b-news_content {
    padding: 2.5rem;
    gap: 1.25rem;
  }
  .blog-featured_row {
    flex-direction: column;
  }
  .blog-featured_media {
    flex: none;
    width: 100%;
  }
  .blog-featured_panel {
    padding: 2rem 0 0;
  }
  .blog-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .more-stories_grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .nav_dropdown-list.nav_mega {
    position: static;
    inset: auto;
    grid-template-columns: 1fr;
    border-top: 0;
    max-height: none;
  }
  .nav_mega-cols {
    grid-template-columns: 1fr;
    gap: 1rem;
    padding: 1.25rem;
  }
  .nav_mega-col {
    gap: .5rem;
  }
  .nav_mega-promo {
    min-height: 16rem;
    padding: 1.5rem;
  }
  .nav_mega-promo-headline {
    font-size: 1.5rem;
  }
  .nav_mega-promo-text {
    font-size: 1rem;
  }
  .nav_menu-dropdown .nav_dropdown-toggle {
    opacity: 1;
  }
  .reseller-header_nav {
    padding: 1rem 1.25rem;
  }
  .reseller-header_nav-inner {
    flex-wrap: wrap;
  }
  .reseller-header_left {
    order: 1;
  }
  .reseller-header_menu.reseller-header_menu {
    display: none;
    order: 4;
    flex-basis: 100%;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
    padding-top: 1rem;
    margin-top: 1rem;
    border-top: 1px solid rgba(15, 15, 15, 0.08);
  }
  .reseller-header_menu.reseller-header_menu.is-open {
    display: flex;
  }
  .reseller-header_menu-dropdown {
    width: 100%;
  }
  .reseller-header_dropdown-toggle {
    width: 100%;
    justify-content: space-between;
  }
  .reseller-header_actions.reseller-header_actions {
    display: none;
    order: 5;
    flex-basis: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
    margin-left: 0;
    margin-top: 1rem;
  }
  .reseller-header_actions.reseller-header_actions.is-open {
    display: flex;
  }
  .reseller-header_nav-inner > .nav_shop-icons {
    order: 2;
  }
  .reseller-header_menu-button.reseller-header_menu-button {
    display: flex;
    order: 3;
    margin-left: auto;
  }
  .reseller-header_menu-button.reseller-header_menu-button.is-adjacent {
    margin-left: 0;
  }
  .reseller-header_btn-outline,
  .reseller-header_btn-solid { padding: 0.625rem 1rem; font-size: 0.8125rem; justify-content: center; }
  .ph_id-copy.ph_id-copy {
    min-width: 2rem;
    min-height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .product-card_favorite {
    min-width: 2.5rem;
    min-height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .footer-bottom_social-link.footer-bottom_social-link {
    min-width: 2.25rem;
    min-height: 2.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .mkt-order_thead {
    display: none;
  }
  .mkt-order_card.mkt-order_card {
    padding: 1.25rem;
  }
  .mkt-order_row {
    grid-template-columns: 5rem 1fr;
    gap: 0.75rem 1rem;
    padding: 1rem 1.25rem;
    align-items: start;
  }
  .mkt-order_cell-img {
    grid-row: span 4;
    align-self: start;
  }
  .mkt-order_img {
    width: 5rem;
    height: 5rem;
  }
  .mkt-order_cell-desc {
    font-weight: 500;
  }
  .mkt-order_cell-art::before { content: "Art.: "; color: #6b6b6b; }
  .mkt-order_cell-price::before { content: "Preis: "; color: #6b6b6b; }
  .mkt-order_cell-qty {
    margin-top: 0.5rem;
  }
  .mkt-collection_card {
    padding: 1.25rem 1.5rem;
  }
  .mkt-video_grid,
  .mkt-doc_grid { grid-template-columns: 1fr; }
  .mkt-collection_row.mkt-collection_row {
    grid-template-columns: 4.5rem 1fr auto;
    gap: 1rem;
  }
  .mkt-collection_thumb {
    width: 4.5rem;
    height: 3rem;
  }
  #w-node-_5eccf730-c887-5204-0e0c-693f99a732bf-99a7328f, #w-node-_5eccf730-c887-5204-0e0c-693f99a732d3-99a7328f { justify-self: start; }
  .footer-newsletter_inner,
  .footer-bottom_row,
  .footer-bottom_legal-row { padding-left: 1.5rem; padding-right: 1.5rem; }
  .section_collection-header > .padding-global { padding-top: 3rem; padding-bottom: 4rem; }
  .section_feature-product > .padding-global { padding-top: 3rem; padding-bottom: 4rem; }
  .icon-cards_card.is-line-right,
  .icon-cards_card.is-line-left { border-right: none; border-left: none; }
  .solutions_grid,
  .solutions_grid.is-3-columns { grid-template-columns: 1fr 1fr; }
  .section_split-image-left,
  .section_split-image-right { grid-template-columns: 1fr; }
  .split-image_content-wrapper.is-left-image,
  .split-image_content-wrapper.is-right-image { padding: 3rem 1.5rem; max-width: 100%; }
  .reseller-header_btn-outline,
  .reseller-header_btn-solid { padding: 0.625rem 1rem; font-size: 0.8125rem; }
  .product-header_gallery > .swiper.is-product-gallery { width: 100%; aspect-ratio: 1 / 1; height: auto !important; max-height: 32.5rem; }
  /* Mobile-Nav: Logo ganz links, Icons (Cart/Account/Suche) + Burger ganz rechts */
  .nav_container > .nav_menu-button {
    order: 1;
  }
  .nav_wishlist.nav_wishlist {
    display: none;
  }
  .nav_mini-cart {
    order: 1;
  }
  .nav_account {
    order: 2;
  }
  .nav_search {
    order: 3;
  }
  .hero_arrow,
  .hero_pagination,
  .hero_autoplay-toggle {
    display: none !important;
  }
  .section_hero .button,
  .section_image-banner .button,
  .section_sustainability .button,
  .section_two-column-banner .button {
    background-color: #ffffff;
    border-color: #ffffff;
    color: #0f0f0f;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .06em;
  }
  .section_image-link-list .button.is-on-dark {
    background-color: #ffffff;
    border-color: #ffffff;
    color: #0f0f0f;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .06em;
  }
  .image-link-list_link-item:first-child .image-link-list_link {
    opacity: 1;
    text-decoration: underline;
    text-decoration-thickness: from-font;
    text-underline-offset: .15em;
  }
  .image-link-list_link-item:first-child .image-link-list_link-arrow {
    opacity: 1;
    transform: none;
  }
  .featured-products_arrow,
  .accessories_arrow,
  .shop-by-category_arrow,
  .testimonials_arrow,
  .loved-by_arrow {
    display: none !important;
  }
  .swiper-slide.featured-products_item {
    width: 85%;
  }
  .accessories_item {
    width: 85%;
  }
  .shop-by-category_item.shop-by-category_item {
    width: 88%;
  }
  .accessories_tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .section_featured-products .container-large {
    display: flex;
    flex-direction: column;
  }
  .section_featured-products .featured-products_heading {
    display: contents;
  }
  .section_featured-products .featured-products_title {
    order: 0;
    margin-bottom: 1.25rem;
  }
  .section_featured-products .featured-products_slider-wrapper {
    order: 1;
  }
  .section_featured-products .featured-products_button {
    order: 2;
    margin-top: 1.75rem;
    width: 100%;
    justify-content: center;
    text-align: center;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .06em;
  }
  .product-card .product-card_rating {
    left: .75rem;
    right: auto;
  }
  .section_usp-row .usp-row_grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem 1.5rem;
  }
  .section_usp-row .usp-row_icon-wrap {
    width: 2rem;
    height: 2rem;
  }
  .section_rating-bar .rating-bar_inner {
    flex-wrap: nowrap;
    justify-content: center;
    gap: .625rem;
    font-size: .75rem;
    white-space: nowrap;
    width: 100%;
  }
  .section_rating-bar .rating-bar_stars {
    width: 4.25rem;
    height: .85rem;
  }
  .section_rating-bar .rating-bar_divider {
    display: none;
  }
  .section_rating-bar .rating-bar_logo {
    max-height: 1rem;
  }
  .section_loved-by .loved-by_swiper .swiper-wrapper {
    height: 26rem;
  }
  .section_footer-newsletter .footer-newsletter_link-column {
    border-bottom: 1px solid rgba(255, 255, 255, .15);
    padding: 0;
  }
  .section_footer-newsletter .footer-newsletter_link-column-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
    padding: 1rem 0;
    cursor: pointer;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .04em;
  }
  .section_footer-newsletter .footer-newsletter_link-column-title::after {
    content: "";
    width: .5rem;
    height: .5rem;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg);
    transition: transform .2s ease;
    margin-left: 1rem;
    flex: none;
  }
  .section_footer-newsletter .footer-newsletter_link-column.is-open .footer-newsletter_link-column-title::after {
    transform: rotate(225deg);
  }
  .section_footer-newsletter .footer-newsletter_link-list {
    display: none;
  }
  .section_footer-newsletter .footer-newsletter_link-column.is-open .footer-newsletter_link-list {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    padding-bottom: 1rem;
  }
  .section_footer-bottom .footer-bottom_row {
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
  }
  .section_footer-bottom .footer-bottom_payments {
    justify-content: center;
    flex-wrap: wrap;
  }
  .section_footer-bottom .footer-bottom_socials {
    justify-content: center;
  }
  .section_footer-bottom .footer-bottom_legal-row {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    text-align: center;
  }
  .section_footer-bottom .footer-bottom_legal-links {
    justify-content: center;
    flex-wrap: wrap;
    gap: .75rem 1rem;
  }
  .ph_gallery-more {
    display: none;
  }
  .sol-feature {
    grid-template-columns: 1fr;
  }
  .sol-feature_content.sol-feature_content {
    padding: 2.5rem;
  }
  .sol-facts_grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .sol-refs_grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 2.5rem;
  }
  h2 {
    font-size: 2rem;
  }
  h3 {
    font-size: 1.5rem;
  }
  h4 {
    font-size: 1.25rem;
  }
  h5 {
    font-size: 1rem;
  }
  h6 {
    font-size: .875rem;
  }
  .padding-medium {
    padding: 1.25rem;
  }
  .margin-medium {
    margin: 1.25rem;
  }
  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .hide-mobile-landscape {
    display: none;
  }
  .heading-style-h3 {
    font-size: 1.5rem;
  }
  .heading-style-h1 {
    font-size: 2.5rem;
  }
  .padding-global {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .padding-section-small {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  .li-styleguide_section-header {
    font-size: .875rem;
  }
  .li-styleguide_heading-medium {
    font-size: 2rem;
  }
  .heading-style-h4 {
    font-size: 1.25rem;
  }
  .heading-style-h6 {
    font-size: .875rem;
  }
  .padding-section-large {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .text-size-large {
    font-size: 1.25rem;
  }
  .heading-style-h2 {
    font-size: 2rem;
  }
  .padding-section-medium {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .cart_grid-wrapper {
    grid-template-columns: 2fr;
  }
  .cart_grid {
    grid-template-columns: 1fr 1fr 1fr 1fr 6rem;
  }
  .cart_grid.is-header.hide-mobil {
    display: none;
  }
  .cart_info-order {
    margin-left: 1.5rem;
  }
  .collections_grid {
    grid-row-gap: 2em;
    grid-template-columns: 1fr;
  }
  .collections_overlay {
    background-image: linear-gradient(114deg, #111111b3 20%, #11111178);
  }
  .blog_list {
    grid-template-columns: 1fr;
  }
  .blog_item-grid {
    grid-template-columns: 1fr;
    margin-bottom: 2em;
  }
  .blog_img {
    height: 20.7em;
  }
  .account_grid {
    grid-template-columns: 2fr;
  }
  .addresses_account-wrapper {
    padding: 1.3em;
    font-size: 1.3em;
  }
  .addresses_grid {
    grid-template-columns: 1fr;
  }
  .login_component {
    grid-template-columns: auto;
    justify-content: stretch;
    min-height: auto;
  }
  .login_left {
    width: 100%;
    margin-top: 2rem;
    margin-bottom: 2rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .login_form {
    width: 100%;
    min-width: auto;
    padding-left: 2.5em;
    padding-right: 2.5em;
  }
  .login_image {
    height: 19.2rem;
  }
  .product-item_image-wrapper {
    height: 100%;
  }
  .nav_component {
    height: auto;
    min-height: 5.3rem;
  }
  .nav_logo-link {
    padding-left: 0;
  }
  .nav_menu.is-page-height-tablet {
    padding-bottom: 6rem;
  }
  .nav_dropdown-link_child {
    font-size: 1rem;
  }
  .footer_link-column {
    grid-column-gap: .75rem;
    grid-row-gap: .75rem;
  }
  .filter_product-list {
    grid-template-columns: 1fr 1fr;
  }
  .product-header_component {
    padding-bottom: 1.5rem;
  }
  .product-header_layout {
    grid-column-gap: 5rem;
    grid-row-gap: 2rem;
  }
  .product-header_product-details {
    padding-top: 0;
  }
  .product_list {
    grid-column-gap: 1.25rem;
    grid-row-gap: 3rem;
    grid-template-columns: 1fr 1fr;
  }
  .nav_logo {
    align-items: flex-start;
    width: 7.2rem;
  }
  .footer_icon-grid {
    grid-template-columns: 1fr;
  }
  .footer_link-grid {
    grid-template-columns: 1fr 1fr;
  }
  .section-product-nav {
    top: 5.2rem;
    overflow: scroll;
  }
  .contact_component {
    grid-row-gap: 3rem;
    grid-template-columns: 1fr;
  }
  .filter_layout {
    grid-column-gap: 2.5rem;
    grid-row-gap: 2.5rem;
  }
  .filter_filter-group-heading {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  .section_li-hero {
    padding-top: 4.1rem;
    padding-bottom: 4.1rem;
  }
  .hero_image {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-wrap: wrap;
    padding: 1.5rem;
  }
  .heading-style-h5 {
    font-size: 1rem;
  }
  .text-style-nowrap {
    white-space: normal;
  }
  .max-width-full-mobile-landscape {
    width: 100%;
    max-width: none;
  }
  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }
  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }
  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }
  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }
  .padding-large {
    padding: 1.5rem;
  }
  .padding-xlarge {
    padding: 2rem;
  }
  .padding-xxlarge {
    padding: 3rem;
  }
  .padding-huge {
    padding: 3.5rem;
  }
  .padding-xhuge {
    padding: 4rem;
  }
  .padding-xxhuge {
    padding: 4.5rem;
  }
  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }
  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }
  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }
  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }
  .margin-large {
    margin: 1.5rem;
  }
  .margin-xlarge {
    margin: 2rem;
  }
  .margin-xxlarge {
    margin: 3rem;
  }
  .margin-huge {
    margin: 3.5rem;
  }
  .margin-xhuge {
    margin: 4rem;
  }
  .margin-xxhuge {
    margin: 4.5rem;
  }
  .spacer-xlarge {
    padding-top: 2rem;
  }
  .spacer-xxlarge {
    padding-top: 3rem;
  }
  .spacer-huge {
    padding-top: 3.5rem;
  }
  .spacer-xhuge {
    padding-top: 4rem;
  }
  .spacer-xxhuge {
    padding-top: 4.5rem;
  }
  .li-stylguide_header {
    padding-top: 4.1rem;
    padding-bottom: 4.1rem;
  }
  .header_card {
    min-height: 32rem;
    padding: 2rem;
  }
  .product_heading-wrapper {
    grid-row-gap: 2rem;
    flex-direction: column;
    grid-template-columns: 1fr;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .product_heading {
    margin-right: 0;
  }
  .product_button-row {
    justify-content: flex-start;
    width: 100%;
  }
  .more_liste {
    grid-row-gap: 3rem;
    grid-template-columns: 1fr;
  }
  .blog_featured-item {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    grid-template-columns: 1fr;
  }
  .blog_featured-image-wrapper {
    padding-top: 66%;
  }
  .footer_sub-footer {
    grid-template-columns: 1fr;
  }
  .gift_card-logo {
    align-items: flex-start;
    width: 8.7rem;
  }
  #w-node-c45bff24-6242-fee4-5061-f2f14b06a7bf-4b06a7bd {
    order: -9999;
  }
  #w-node-_175fd21a-17bf-bcb4-c19e-9a679b16ea5d-9b16ea22 {
    order: -9999;
    justify-self: stretch;
  }
  #w-node-_020413c5-8dec-2c46-93a1-274ba44a608a-a44a6088 {
    align-self: start;
  }
  #w-node-_020413c5-8dec-2c46-93a1-274ba44a60b6-a44a6088, #w-node-_020413c5-8dec-2c46-93a1-274ba44a60b7-a44a6088 {
    order: -9999;
  }
  .announcement-bar_container.announcement-bar_container {
    padding: 0 1rem;
  }
  .announcement-bar_left {
    grid-column-gap: 1rem;
    overflow: hidden;
  }
  .announcement-bar_right .announcement-bar_link {
    display: none;
  }
  .announcement-bar_right .announcement-bar_divider {
    display: none;
  }
  .announcement-bar_text {
    display: none;
  }
  .section-headline_pretitle,
  .section-headline_title {
  }
  .section-headline_subtext {
    font-size: 1rem;
  }
  .featured-products_heading {
    flex-direction: column;
    align-items: flex-start;
  }
  .featured-products_title {
    font-size: 1.5rem;
  }
  .featured-products_item {
    width: 16rem;
  }
  .product-card_image-link.product-card_image-link {
    height: auto;
    aspect-ratio: 3 / 4;
  }
  .featured-products_arrow {
    width: 2.5rem;
    height: 2.5rem;
  }
  .featured-products_scrollbar.featured-products_scrollbar {
    width: 100%;
  }
  .shop-by-category_title {
    font-size: 1.5rem;
  }
  .shop-by-category_item.shop-by-category_item {
    width: 18rem;
  }
  .category-tile {
    height: 30rem;
  }
  .category-tile_footer.category-tile_footer {
    padding: 1rem;
  }
  .shop-by-category_arrow {
    width: 2.5rem;
    height: 2.5rem;
  }
  .shop-by-category_scrollbar {
    width: 100%;
  }
  .two-column-banner_grid {
    grid-template-columns: 1fr;
  }
  .two-column-banner_item {
    min-height: 50vh;
  }
  .two-column-banner_content {
    padding: 1.5rem;
  }
  .two-column-banner_title {
    font-size: 1.5rem;
  }
  .accessories_title {
    font-size: 1.5rem;
  }
  .accessories_tab.accessories_tab {
    padding: .5rem 1rem;
    font-size: .8125rem;
  }
  .accessories_item {
    width: 16rem;
  }
  .accessories_arrow {
    width: 2.5rem;
    height: 2.5rem;
  }
  .accessories_scrollbar {
    width: 100%;
  }
  .loved-by_slide,
  .loved-by_slides {
    height: 26rem;
  }
  .loved-by_slide.loved-by_slide {
    width: 18rem;
  }
  .loved-by_arrow {
    width: 2.5rem;
    height: 2.5rem;
  }
  .sustainability_badge.sustainability_badge {
    width: 9rem;
    top: .75rem;
    right: 1rem;
  }
  .sustainability_counter-digit {
    font-size: 1.5rem;
    padding: .25rem .4375rem;
  }
  .sustainability_counter-dot.sustainability_counter-dot {
    font-size: 1.5rem;
  }
  .sustainability_title {
    font-size: 2rem;
  }
  .sustainability_subtext.sustainability_subtext {
    font-size: 1rem;
  }
  .testimonials_title {
    font-size: 1.5rem;
  }
  .testimonials_card.testimonials_card {
    width: 17rem;
    padding: 1.5rem;
  }
  .testimonials_arrow {
    width: 2.5rem;
    height: 2.5rem;
  }
  .product-usp-bar_grid.product-usp-bar_grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .swiper-slide.is-product-features {
    width: calc(66.666% - 1rem);
  }
  .product-add-to-kit_header.product-add-to-kit_header {
    flex-direction: column;
    align-items: flex-start;
  }
  .swiper-slide.is-add-to-kit {
    width: 11.25rem;
  }
  .product-header_radio-list > div:not(.li-tag) {
    flex: 1 1 calc(50% - .25rem);
    display: flex;
  }
  .product-header_radio {
    flex: 1;
    min-height: 2.75rem;
    font-size: .875rem;
    border-color: #e0e0e0;
    color: #0f0f0f;
  }
  .ph_price-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }
  .ph_trust-grid {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
  .ph_trust-item.ph_trust-item {
    flex-direction: row;
    text-align: left;
  }
  .ph_tabs-nav {
    gap: 0;
  }
  .ph_tab {
    padding: 0.65rem 0.75rem;
    font-size: 0.75rem;
  }
  .we-care-banner_headline {
    font-size: 2rem;
  }
  .we-care-banner_badge {
    display: none;
  }
  .we-care-banner_counter-num {
    font-size: 1.5rem;
  }
  .collection-intro_tiles.collection-intro_tiles {
    grid-template-columns: repeat(2, 1fr);
  }
  .coll_grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem 0.75rem;
  }
  .coll_promo-card {
    grid-column: 1 / -1;
  }
  .coll_promo-card_inner {
    min-height: 18rem;
  }
  .nav_search-overlay-panel {
    padding: 1rem 1.25rem 1.5rem;
  }
  .nav_search-empty-grid, .nav_search-results-grid { grid-template-columns: 1fr; gap: 2rem; }
  .nav_search-product-grid {
    grid-template-columns: 1fr 1fr;
  }
  .reseller-promo_grid {
    grid-template-columns: 1fr;
  }
  .dicota-difference_actions {
    flex-direction: column;
    align-items: stretch;
  }
  .dicota-difference_btn {
    min-width: 0;
  }
  .reseller-hero_search {
    flex-direction: row;
  }
  .coll-intro-cards_grid {
    flex-direction: column;
    gap: 1.75rem;
  }
  .b2b-news_content.b2b-news_content {
    padding: 2rem 1.5rem;
  }
  .blog-list_bar {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
  .article_title, .article_body h2, .article_body h3, .article_body blockquote { font-size: 1.6rem; }
  .article_intro {
    font-size: 1.125rem;
  }
  .ph-lightbox.ph-lightbox {
    padding: 1.5rem;
  }
  .ph-lightbox_nav {
    width: 2.5rem;
    height: 2.5rem;
  }
  .ph-lightbox_nav.is-prev.ph-lightbox_nav.is-prev {
    left: .5rem;
  }
  .ph-lightbox_nav.is-next {
    right: .5rem;
  }
  .hero_arrow {
    width: 2rem;
    height: 2rem;
  }
  .hero_arrow-prev {
    left: .75rem;
  }
  .hero_arrow-next.hero_arrow-next {
    right: .75rem;
  }
  .hero_pagination {
    bottom: 1rem;
    gap: .75rem;
  }
  .hero_dots {
    gap: .5rem;
  }
  .hero_bullet.is-active {
    width: 2.25rem;
  }
  .product-loved-by_grid {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, minmax(0, 1fr));
    height: clamp(40rem, 130vw, 60rem);
  }
  .value-tabs_component {
    grid-template-columns: 1fr;
  }
  .value-tabs_link, .value-tabs_pane { grid-column: 1; }
  .value-tabs_pane {
    grid-row: auto;
  }
  #w-node-_020413c5-8dec-2c46-93a1-274ba44a60b6-a44a6088, #w-node-_020413c5-8dec-2c46-93a1-274ba44a60b7-a44a6088 { order: -9999; }
  .section-headline_pretitle,
  .section-headline_title {  }
  .loved-by_slide,
  .loved-by_slides { height: 26rem; }
  .nav_search-empty-grid, .nav_search-results-grid { grid-template-columns: 1fr; gap: 2rem; }
  .article_title, .article_body h2, .article_body h3, .article_body blockquote { font-size: 1.6rem; }
  .value-tabs_link, .value-tabs_pane { grid-column: 1; }
  .product-card .product-card_image-link {
    height: auto;
    aspect-ratio: 3 / 4;
  }
  .multi-form_product-row {
    flex-wrap: wrap;
  }
  .presentations_row {
    flex-wrap: wrap;
  }
  .sol-feature_content.sol-feature_content {
    padding: 2rem 1.5rem;
  }
  .sol-facts_grid {
    grid-template-columns: 1fr;
  }
  .sol-facts_value {
    font-size: 1.875rem;
  }
  .sol-refs_grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .announcement-bar_reseller-btn {
    padding: .25rem .6rem;
    font-size: .8rem;
  }
  .headline-text_grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}

@media screen and (max-width: 479px) {
  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .hide-mobile-portrait {
    display: none;
  }
  .heading-style-h4 {
    font-size: 1.25rem;
  }
  .heading-style-h4.text-weight-normal {
    font-size: 1.15rem;
  }
  .heading-style-h2 {
    font-size: 2rem;
  }
  .button.is-secondary.is-icon {
    padding: .5rem;
  }
  .cart_grid-wrapper {
    overflow: scroll;
  }
  .cart_grid {
    grid-template-columns: 1fr 1fr;
  }
  .cart_content {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
  .cart_info-order {
    margin-left: 1.3rem;
    padding-left: 0;
  }
  .cart_table-item {
    font-size: 1.2rem;
  }
  .cart_table-item.anzahl {
    align-items: flex-start;
    margin-left: 0;
  }
  .cart_quantity-wrapper {
    font-size: .8rem;
  }
  .collections_item {
    height: 20.8rem;
  }
  .blog_item-grid {
    margin-bottom: 0;
  }
  .gift_card {
    height: 15.8em;
  }
  .account_grid {
    overflow: scroll;
  }
  .addresses_account-wrapper {
    flex-direction: column;
    align-items: flex-start;
    font-size: 1.1em;
  }
  .account-tabs_wrapper {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }
  .account-tabs_link {
    font-size: 1rem;
  }
  .addresses_form {
    padding: 2.1rem;
  }
  .addresses_form-grid {
    grid-template-columns: 1fr;
  }
  .order_wrapper {
    flex-direction: column;
    align-items: flex-start;
  }
  .login_tabs {
    border-style: none;
  }
  .login_form {
    border-style: none;
    margin-bottom: 1em;
    padding: 0;
  }
  .login_image {
    height: 11.4rem;
  }
  .login_tab-link {
    background-color: #fff;
  }
  .mini-cart_component {
    width: 100%;
  }
  .nav_component {
    min-height: 4.7rem;
  }
  .nav_menu.is-page-height-tablet {
    padding-left: 0%;
    padding-right: 0%;
  }
  .nav_dropdown-toggle {
    border-top: 1px solid var(--base-color-neutral--neutral-lightest);
    padding-left: 1.2rem;
    padding-right: 1.2rem;
    font-size: 1.3rem;
  }
  .dropdown-icon {
    right: 1rem;
  }
  .nav_dropdown-link {
    padding-top: .45rem;
    padding-bottom: .45rem;
  }
  .nav_dropdown-link_child {
    padding-top: .35rem;
    padding-bottom: .35rem;
  }
  .nav_mini-cart-close {
    display: none;
  }
  .footer_form {
    grid-row-gap: .75rem;
    flex-direction: column;
    grid-template-columns: 1fr;
  }
  .filter_product-list, .product-header_layout {
    grid-template-columns: 1fr;
  }
  .product-header_product-details {
    padding-top: 0;
    padding-bottom: 0;
  }
  .swiper_button.swiper-prev.pointer-events-on {
    width: 2.5rem;
    height: 2.5em;
  }
  .swiper_button.swiper-next.pointer-events-on {
    width: 2.5rem;
    height: 2.5rem;
  }
  .spacer-xsmall {
    padding-top: .75rem;
  }
  .predictive-search_component {
    width: 100%;
  }
  .nav_predictive-search-close {
    display: none;
  }
  .footer_newsletter {
    padding: 1.7rem;
  }
  .nav_dropdown-grid {
    padding-left: 1.2rem;
    padding-right: 1.2rem;
  }
  .footer_link-grid {
    grid-template-columns: 1fr;
  }
  .section-product-nav {
    top: 4.5rem;
  }
  .contact_component {
    grid-template-columns: 1fr;
  }
  .filter_feed-header {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }
  .section_li-hero {
    background-image: radial-gradient(circle farthest-side at 80% -10%, #4353ff47, #fff0 32%), radial-gradient(circle farthest-side at 45% -10%, #00ed9773, #fff0 26%);
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .hero_heading {
    font-size: 2.5rem;
  }
  .hero_image {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-wrap: wrap;
    padding: 1.5rem;
  }
  .fs-styleguide_row {
    flex-wrap: wrap;
  }
  .max-width-full-mobile-portrait {
    width: 100%;
    max-width: none;
  }
  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }
  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }
  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }
  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }
  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }
  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }
  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }
  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }
  .li-stylguide_header {
    background-image: radial-gradient(circle farthest-side at 80% -10%, #4353ff47, #fff0 32%), radial-gradient(circle farthest-side at 45% -10%, #00ed9773, #fff0 26%);
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
  .blog_titel-wrapper {
    padding: 1.3rem;
  }
  .sort_select.filter_checkbox {
    order: -1;
    margin-left: 0;
  }
  .footer_sub-footer {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }
  #w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdeca-e01bde9f {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
  #w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdef5-e01bde9f, #w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdef9-e01bde9f {
    justify-self: end;
  }
  #w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdefb-e01bde9f {
    grid-area: span 1 / span 2 / span 1 / span 2;
    justify-self: end;
  }
  #w-node-_431962bc-cbac-6ad1-3996-e9d2495180d9-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180e3-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180e7-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180eb-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180ff-495180d5 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
  #w-node-_431962bc-cbac-6ad1-3996-e9d249518108-495180d5 {
    justify-self: start;
  }
  #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051ee8-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051ef2-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051ef6-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051efa-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051f0e-b7051ee4 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
  #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051f17-b7051ee4 {
    justify-self: start;
  }
  #w-node-_4ff72092-e0e6-d591-6af1-5b10f594a63c-f594a625 {
    grid-area: span 1 / span 2 / span 1 / span 2;
    justify-self: stretch;
  }
  #w-node-_4ff72092-e0e6-d591-6af1-5b10f594a63d-f594a625 {
    grid-area: span 3 / span 1 / span 3 / span 1;
  }
  #w-node-_4ff72092-e0e6-d591-6af1-5b10f594a647-f594a625 {
    grid-area: span 1 / span 1 / span 1 / span 1;
    place-self: center start;
  }
  #w-node-_4ff72092-e0e6-d591-6af1-5b10f594a64f-f594a625 {
    place-self: end;
  }
  #w-node-a6506aa7-2131-c33e-ed5e-bebd7fad867a-7fad8674, #w-node-a6506aa7-2131-c33e-ed5e-bebd7fad8683-7fad8674 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
  #w-node-a6506aa7-2131-c33e-ed5e-bebd7fad8689-7fad8674 {
    grid-area: span 1 / span 1 / span 1 / span 1;
    justify-self: end;
  }
  .section_hero {
    min-height: 80vh;
  }
  .hero_headline {
    font-size: 1.5rem;
  }
  .section_usp-row .usp-row_grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem 1rem;
  }
  .section_usp-row .usp-row_title {
    font-size: 1rem;
  }
  .section_usp-row .usp-row_description {
    font-size: .8125rem;
  }
  .section_image-banner {
    min-height: 60vh;
  }
  .image-banner_headline.image-banner_headline {
    font-size: 1.5rem;
  }
  .footer-newsletter_link-grid {
    grid-template-columns: 1fr;
  }
  .footer-newsletter_headline {
    font-size: 1.75rem;
  }
  .footer-bottom_legal-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
  .product-usp-bar_grid.product-usp-bar_grid {
    grid-template-columns: 1fr;
  }
  .swiper-slide.is-product-features {
    width: 85%;
  }
  .product-loved-by_grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .swiper-slide.is-add-to-kit {
    width: 10rem;
  }
  .produkt_swatch-item,
  .produkt_swatch-link {
    width: 4.5rem;
  }
  .produkt_swatch-link.produkt_swatch-link {
    height: 4.5rem;
  }
  .produkt_swatch-lable.is-max {
    max-width: 4.5rem;
  }
  .product-header_details {
    padding: 1.5rem 1.25rem;
  }
  .ph_title {
    font-size: 1.25rem;
  }
  .collection-intro_tiles.collection-intro_tiles {
    grid-template-columns: 1fr;
  }
  .coll_grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem 0.5rem;
  }
  .product-card_image-link.product-card_image-link {
    height: auto;
    aspect-ratio: 3 / 4;
  }
  .section_collection-header > .padding-global {
    padding-top: 2rem;
    padding-bottom: 3rem;
  }
  .collection-header_title {
    font-size: 1.75rem;
  }
  .collection-header_desc {
    font-size: 1rem;
  }
  .collection-header_media.collection-header_media {
    aspect-ratio: 16 / 9;
  }
  .section_feature-product > .padding-global {
    padding-top: 2rem;
    padding-bottom: 3rem;
  }
  .feature-product_content {
    padding: 1.5rem 1rem;
  }
  .feature-product_title {
    font-size: 1.25rem;
  }
  .heading-h1_grid.heading-h1_grid {
    gap: 1rem;
  }
  .solutions_grid,
  .solutions_grid.is-3-columns {
    grid-template-columns: 1fr;
  }
  .image-card_link {
    min-height: 16rem;
  }
  .image-card_link.is-large {
    min-height: 22rem;
  }
  .image-card_button-wrapper.image-card_button-wrapper {
    opacity: 1;
    margin-bottom: 0;
  }
  .swiper-slide.is-history-swiper {
    width: 16rem;
  }
  .company_icon-list {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }
  .team_grid {
    grid-template-columns: 1fr;
  }
  .team_cards-grid {
    grid-template-columns: 1fr;
  }
  .benefits_grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .jobs_item-top {
    flex-direction: column;
  }
  .jobs_item-location {
    align-self: flex-start;
  }
  .jobs_cta.jobs_cta {
    flex-direction: column;
    align-items: flex-start;
  }
  .value-tabs_content {
    padding: 1.5rem;
  }
  .value-tabs_link {
    font-size: 1.125rem;
    padding: 0.75rem 1rem;
  }
  .section_image-hero {
    min-height: 60vh;
  }
  .split-image_content-wrapper.is-left-image,
  .split-image_content-wrapper.is-right-image {
    padding: 2.5rem 1.25rem;
  }
  .account-hero_wrapper.account-hero_wrapper {
    min-height: 14rem;
  }
  .acc-hero_bg-wrapper {
    opacity: 0.25;
  }
  .acc-cards_grid {
    grid-template-columns: 1fr;
  }
  .acc-dis_tab-pane {
    grid-template-columns: 1fr 1fr;
    padding: 1.5rem;
  }
  .acc-triple.acc-triple {
    grid-template-columns: 1fr;
  }
  .acc-card {
    padding: 1.25rem;
  }
  .acc-banner_content {
    padding: 2rem 1.25rem;
  }
  .acc_cta {
    flex-direction: column;
    align-items: flex-start;
  }
  .acc-card_download-content.acc-card_download-content {
    flex-direction: column;
    align-items: flex-start;
  }
  .acc_download-banner {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.25rem;
  }
  .acc_download-banner-left.acc_download-banner-left {
    align-items: flex-start;
  }
  .acc_double-icons-list {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
  }
  .acc_support-card-content {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
  }
  .product-finder_embed {
    min-height: 24rem;
  }
  .acc_download-banner.is-zertifikat {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
  .acc_download-link {
    align-self: flex-end;
  }
  .reseller-hero_search-cat {
    display: none;
  }
  .category-row_item, .category-row_circle { width: 5rem; }
  .category-row_circle {
    height: 5rem;
  }
  .reseller-hub_panel-inner {
    padding: 1.75rem;
  }
  .reseller-promo_content, .the-latest_card-content { padding: 1.5rem; }
  .news-updates_blue-inner {
    padding: 2rem 1.5rem;
  }
  .news-updates_card-content {
    padding: 2.5rem 1.5rem;
  }
  .ph_title-row {
    flex-direction: column;
    gap: .5rem;
  }
  .ph_ids.ph_ids {
    align-items: flex-start;
    padding-top: 0;
  }
  .blog-grid {
    grid-template-columns: 1fr;
  }
  .more-stories_grid.more-stories_grid {
    grid-template-columns: 1fr;
  }
  .nav_mega-promo {
    min-height: 14rem;
    padding: 1rem;
  }
  .nav_mega-promo-headline {
    font-size: 1.25rem;
  }
  .section_rating-bar .rating-bar_inner {
    flex-wrap: nowrap;
    justify-content: center;
    gap: .5rem;
    font-size: .6875rem;
  }
  .section_rating-bar .rating-bar_divider {
    display: none;
  }
  .mkt-order_card {
    padding: 1rem;
  }
  .mkt-order_row.mkt-order_row {
    padding: 0.875rem 1rem;
  }
  .mkt-order_label {
    font-size: 1rem;
  }
  .mkt-collection_card {
    padding: 1rem 1.25rem;
  }
  .mkt-doc_card {
    padding: 0.875rem 1rem;
    gap: 0.75rem;
  }
  .mkt-collection_row.mkt-collection_row {
    grid-template-columns: 3.5rem 1fr auto;
  }
  .mkt-collection_thumb {
    width: 3.5rem;
    height: 2.5rem;
  }
  .mkt-collection_action,
  .mkt-doc_action { width: 2rem; height: 2rem; }
  #w-node-_431962bc-cbac-6ad1-3996-e9d2495180d9-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180e3-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180e7-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180eb-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180ff-495180d5 { grid-area: span 1 / span 1 / span 1 / span 1; }
  #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051ee8-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051ef2-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051ef6-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051efa-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051f0e-b7051ee4 { grid-area: span 1 / span 1 / span 1 / span 1; }
  #w-node-a6506aa7-2131-c33e-ed5e-bebd7fad867a-7fad8674, #w-node-a6506aa7-2131-c33e-ed5e-bebd7fad8683-7fad8674 { grid-area: span 1 / span 1 / span 1 / span 1; }
  .produkt_swatch-item,
  .produkt_swatch-link { width: 4.5rem; }
  .section_collection-header > .padding-global { padding-top: 2rem; padding-bottom: 3rem; }
  .section_feature-product > .padding-global { padding-top: 2rem; padding-bottom: 3rem; }
  .solutions_grid,
  .solutions_grid.is-3-columns { grid-template-columns: 1fr; }
  .split-image_content-wrapper.is-left-image,
  .split-image_content-wrapper.is-right-image { padding: 2.5rem 1.25rem; }
  .category-row_item, .category-row_circle { width: 5rem; }
  .reseller-promo_content, .the-latest_card-content { padding: 1.5rem; }
  .nav_shop-icons .nav_wishlist {
    display: none;
  }
  .ph-dim-modal_panel {
    width: 100%;
  }
  .multi-form_button-group.multi-form_button-group {
    flex-direction: column-reverse;
    align-items: stretch;
    gap: 0.75rem;
  }
  .multi-form_button-group .button {
    width: 100%;
    min-width: 0;
  }
  .multi-form_button-group .button.is-secondary {
    margin-right: 0;
  }
}

#w-node-_5eccf730-c887-5204-0e0c-693f99a7329a-99a7328f {
  grid-area: span 1 / span 1 / span 1 / span 1;
  align-self: start;
}

#w-node-_5eccf730-c887-5204-0e0c-693f99a732a5-99a7328f, #w-node-_5eccf730-c887-5204-0e0c-693f99a732a6-99a7328f, #w-node-_5eccf730-c887-5204-0e0c-693f99a732ae-99a7328f {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_5eccf730-c887-5204-0e0c-693f99a732bf-99a7328f {
  justify-self: center;
}

#w-node-_4d7af1cf-0c17-815b-6613-2343dbf24ae7-dbf24ad4 {
  align-self: center;
}

#w-node-f727b04f-0fb7-b1ec-5db9-c7264e4cbfb1-4e4cbfad {
  align-self: start;
}

#w-node-_9132635a-7891-b0d1-9b20-ecb0d5a86dfd-d5a86df8 {
  place-self: center start;
}

#w-node-_9132635a-7891-b0d1-9b20-ecb0d5a86e09-d5a86df8 {
  justify-self: start;
}

#w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdea3-e01bde9f {
  align-self: start;
}

#w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdea5-e01bde9f {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdeab-e01bde9f, #w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdeb2-e01bde9f, #w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdeb7-e01bde9f, #w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdebc-e01bde9f {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdec8-e01bde9f {
  align-self: start;
}

#w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdeca-e01bde9f {
  grid-area: span 1 / span 4 / span 1 / span 4;
}

#w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdecc-e01bde9f {
  grid-area: span 1 / span 1 / span 1 / span 1;
  justify-self: end;
}

#w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdee0-e01bde9f {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-b20e30bd-9cd3-7da4-6e58-bb49e01bdef2-e01bde9f {
  justify-self: start;
}

#w-node-_17cf99d8-cca9-6029-5ca2-fd70c04fc7d9-c04fc7ce, #w-node-_17cf99d8-cca9-6029-5ca2-fd70c04fc7dd-c04fc7ce {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_17cf99d8-cca9-6029-5ca2-fd70c04fc7df-c04fc7ce {
  grid-area: span 1 / span 1 / span 1 / span 1;
  justify-self: start;
}

#w-node-_28393307-8bd6-513a-3564-7f1ca909485c-a9094858, #w-node-_28393307-8bd6-513a-3564-7f1ca9094870-a9094858 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_431962bc-cbac-6ad1-3996-e9d2495180d9-495180d5 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_431962bc-cbac-6ad1-3996-e9d2495180df-495180d5 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_431962bc-cbac-6ad1-3996-e9d2495180e3-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180e7-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180eb-495180d5 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_431962bc-cbac-6ad1-3996-e9d2495180ef-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180f3-495180d5 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_431962bc-cbac-6ad1-3996-e9d2495180f7-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d2495180ff-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d249518103-495180d5 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_431962bc-cbac-6ad1-3996-e9d249518104-495180d5, #w-node-_431962bc-cbac-6ad1-3996-e9d249518107-495180d5 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_431962bc-cbac-6ad1-3996-e9d249518108-495180d5 {
  place-self: center end;
}

#w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051ee8-b7051ee4 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051eee-b7051ee4 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051ef2-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051ef6-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051efa-b7051ee4 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051efe-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051f02-b7051ee4 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051f06-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051f0e-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051f12-b7051ee4 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051f13-b7051ee4, #w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051f16-b7051ee4 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-c1cc0feb-3fc0-f42f-4d44-745bb7051f17-b7051ee4 {
  place-self: center end;
}

#w-node-c45bff24-6242-fee4-5061-f2f14b06a7be-4b06a7bd {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-c45bff24-6242-fee4-5061-f2f14b06a7bf-4b06a7bd {
  align-self: stretch;
}

#w-node-_6b97875b-5fce-9f5a-43fd-5792b69faf23-4b06a7bd, #w-node-c9d4bc59-fe93-ab91-5f63-22578c137f0c-8c137f09 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_4ff72092-e0e6-d591-6af1-5b10f594a629-f594a625, #w-node-_4ff72092-e0e6-d591-6af1-5b10f594a632-f594a625 {
  grid-area: span 1 / span 3 / span 1 / span 3;
}

#w-node-_4ff72092-e0e6-d591-6af1-5b10f594a638-f594a625 {
  justify-self: center;
}

#w-node-_4ff72092-e0e6-d591-6af1-5b10f594a63c-f594a625 {
  grid-area: span 1 / span 3 / span 1 / span 3;
  justify-self: stretch;
}

#w-node-_4ff72092-e0e6-d591-6af1-5b10f594a647-f594a625 {
  align-self: center;
}

#w-node-_4ff72092-e0e6-d591-6af1-5b10f594a64f-f594a625 {
  place-self: center;
}

#w-node-_4ff72092-e0e6-d591-6af1-5b10f594a655-f594a625 {
  grid-area: span 1 / span 1 / span 1 / span 1;
  align-self: start;
}

#w-node-_4ff72092-e0e6-d591-6af1-5b10f594a656-f594a625 {
  align-self: start;
}

#w-node-_4ff72092-e0e6-d591-6af1-5b10f594a658-f594a625, #w-node-_4ff72092-e0e6-d591-6af1-5b10f594a670-f594a625 {
  grid-area: span 1 / span 4 / span 1 / span 4;
}

#w-node-f6c1ed66-8f2c-cc0d-fa87-63d3fbb7d543-fbb7d53a, #w-node-_678e0483-bbe4-e79a-1722-b169c587feae-c587feae, #w-node-_265c4342-3d21-e8bf-dfee-efec035c3507-c587feae {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_6ca8e057-6645-9d42-e1be-60491d7bcc0d-1d7bcbea {
  justify-self: start;
}

#w-node-e0a78f50-4953-419e-36e6-c883c51fb15d-651cdc2c, #w-node-_25c5a7f2-ec55-1600-3ab2-bb8c6f33dc52-651cdc2c, #w-node-_5f0a3baf-3d28-cfc9-549d-3fe758caddc9-651cdc2c, #w-node-_1d1d17bf-2e21-df39-c443-254a2bf2ee73-651cdc2c, #w-node-_4f755843-a123-e491-771d-63437893e6e9-651cdc2c, #w-node-_669be5d0-0379-8e66-0456-b1157a5c3d61-651cdc2c {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_175fd21a-17bf-bcb4-c19e-9a679b16ea24-9b16ea22 {
  grid-area: span 1 / span 1 / span 1 / span 1;
  place-self: center;
}

#w-node-_175fd21a-17bf-bcb4-c19e-9a679b16ea25-9b16ea22 {
  align-self: center;
}

#w-node-_175fd21a-17bf-bcb4-c19e-9a679b16ea37-9b16ea22, #w-node-_175fd21a-17bf-bcb4-c19e-9a679b16ea5d-9b16ea22, #w-node-_175fd21a-17bf-bcb4-c19e-9a679b16ea5e-9b16ea22 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-a6506aa7-2131-c33e-ed5e-bebd7fad867a-7fad8674 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-a6506aa7-2131-c33e-ed5e-bebd7fad867c-7fad8674, #w-node-a6506aa7-2131-c33e-ed5e-bebd7fad867e-7fad8674, #w-node-a6506aa7-2131-c33e-ed5e-bebd7fad8680-7fad8674 {
  justify-self: end;
}

#w-node-a6506aa7-2131-c33e-ed5e-bebd7fad8683-7fad8674 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-a6506aa7-2131-c33e-ed5e-bebd7fad8685-7fad8674, #w-node-a6506aa7-2131-c33e-ed5e-bebd7fad8687-7fad8674, #w-node-a6506aa7-2131-c33e-ed5e-bebd7fad8689-7fad8674 {
  justify-self: end;
}

#w-node-a6506aa7-2131-c33e-ed5e-bebd7fad86ac-7fad8674 {
  align-self: start;
}

#w-node-a6506aa7-2131-c33e-ed5e-bebd7fad86ae-7fad8674 {
  grid-area: span 1 / span 5 / span 1 / span 5;
  justify-self: start;
}

#w-node-aaec4065-ff42-9417-cd74-abddd54400f1-d54400ec {
  align-self: start;
}

#w-node-aaec4065-ff42-9417-cd74-abddd5440108-d54400ec {
  align-self: center;
}

#w-node-_020413c5-8dec-2c46-93a1-274ba44a608a-a44a6088 {
  grid-area: span 1 / span 1 / span 1 / span 1;
  place-self: center;
}

#w-node-_020413c5-8dec-2c46-93a1-274ba44a608b-a44a6088 {
  align-self: center;
}

#w-node-_020413c5-8dec-2c46-93a1-274ba44a60ab-a44a6088, #w-node-_020413c5-8dec-2c46-93a1-274ba44a60b6-a44a6088, #w-node-_020413c5-8dec-2c46-93a1-274ba44a60b7-a44a6088, #w-node-_2208b0d9-2806-4a47-a514-cc4f139cfd1f-139cfd0c, #w-node-_63614b06-d13c-4caa-b5ce-a7c7ab35668a-ab35667c, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8929f-651cdc3a {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea892be-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea892c3-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea892c8-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea892cd-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea892d3-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea892d9-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea892df-651cdc3a {
  justify-self: start;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea893c1-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea893c9-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea893e0-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea893f9-651cdc3a {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea893fc-651cdc3a {
  justify-self: start;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea893fe-651cdc3a {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea89401-651cdc3a {
  justify-self: start;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea89451-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8945b-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8945c-651cdc3a {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea894ce-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea894d3-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea894d8-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea894dd-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea894e2-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea894e7-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea894f1-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea894f6-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea894fb-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89500-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89505-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8950a-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8950f-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89514-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89519-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8951e-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89523-651cdc3a {
  justify-self: start;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea89527-651cdc3a {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea89528-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8952d-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89532-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89537-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8954b-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89550-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89555-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8955a-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8955f-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89564-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8956e-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89573-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89578-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8957d-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89582-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89587-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8958c-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89591-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea89596-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8959b-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895a0-651cdc3a {
  justify-self: start;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea895a4-651cdc3a {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea895a5-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895aa-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895af-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895b4-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895c5-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895ca-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895cf-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895d4-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895d9-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895de-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895e3-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895e8-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895ed-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea895f2-651cdc3a {
  justify-self: start;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea895f6-651cdc3a {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea895f7-651cdc3a {
  justify-self: start;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea895fa-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea8967b-651cdc3a, #w-node-b90266f4-7b7e-d3a3-be54-12662ea896a8-651cdc3a {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b90266f4-7b7e-d3a3-be54-12662ea896eb-651cdc3a {
  justify-self: start;
}

/* =============================================================
   DICOTA — Header (Announcement Bar + Navbar additions)
   ============================================================= */

/* Override starter's white .section_navbar for Dicota's dark navbar.
   Builder default — mirrors JSON setting default for the navbar bg/text color. */
.section_header-group .section_navbar {
  background-color: #1a1a1a;
  color: #ffffff;
}

.section_header-group .section_navbar .nav_component {
  background-color: transparent;
  border-bottom: none;
  color: inherit;
}

/* ---- Announcement Bar ---- */
.section_announcement-bar {
  background-color: #0f0f0f;
  color: #ffffff;
  width: 100%;
  font-size: .75rem;
  line-height: 1.5;
  position: relative;
  z-index: 1001;
}
/* Defensive: explicit white on all common text children in case
   CSS-variable inheritance doesn't resolve (Liquiflow Builder timing). */
.section_announcement-bar,
.section_announcement-bar a,
.section_announcement-bar p,
.section_announcement-bar span,
.section_announcement-bar div,
.section_announcement-bar li {
  color: #ffffff;
}
.section_announcement-bar a:visited { color: #ffffff; }
.section_announcement-bar a:hover { color: #ffffff; opacity: .8; }

.announcement-bar_container {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-height: 2.5rem;
  padding: 0 2.5rem;
  display: flex;
}

.announcement-bar_left,
.announcement-bar_items {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  align-items: center;
  display: flex;
}

.announcement-bar_item {
  grid-column-gap: .25rem;
  align-items: center;
  display: flex;
}

.announcement-bar_icon {
  width: 1.25rem;
  height: 1.25rem;
  object-fit: contain;
  flex: none;
}

.announcement-bar_text {
  text-transform: uppercase;
  font-weight: 500;
  white-space: nowrap;
}

.announcement-bar_right {
  grid-column-gap: 1rem;
  align-items: center;
  display: flex;
}

.announcement-bar_link {
  grid-column-gap: .25rem;
  color: inherit;
  text-decoration: none;
  white-space: nowrap;
  align-items: center;
  display: inline-flex;
}

.announcement-bar_link:hover {
  opacity: .8;
}

.announcement-bar_link.is-highlighted {
  background-color: #ffffff26;
  padding: .65rem 1rem;
  margin: 0 -1rem;
  align-self: stretch;
}

.announcement-bar_link .dropdown-icon {
  position: static;
  width: 1rem;
  height: 1rem;
  margin: 0;
}

.announcement-bar_divider {
  width: 1px;
  height: 1.5rem;
  background-color: #ffffff26;
  flex: none;
}

.announcement-bar_lang {
  display: flex;
}

/* Compound selector: both classes are on the SAME element */
.li-lang_dd-toggle.announcement-bar_lang {
  grid-column-gap: .5rem;
  color: inherit;
  background-color: transparent;
  border: none;
  padding: 0 .5rem;
  align-items: center;
  display: flex;
}

/* Chevron inside the lang toggle */
.announcement-bar_lang .dropdown-icon {
  position: static;
  width: 1rem;
  height: 1rem;
  margin: 0;
}

/* Dropdown opens downward in the top bar */
.section_announcement-bar .li-lang_dd-list.w--open {
  bottom: auto;
  top: 100%;
}

.announcement-bar_lang-flag {
  width: 1rem;
  height: 1rem;
  background-color: #ffffff26;
  border-radius: 2px;
  flex: none;
}

/* Hide announcement bar items on mobile to avoid wrap-clutter */

/* ---- Navbar: search pill + cart badge + wishlist ---- */
.nav_search-pill {
  grid-column-gap: .25rem;
  background-color: #ffffff26;
  border-radius: 62.4375rem;
  align-items: center;
  width: 14rem;
  height: 2.25rem;
  padding: 0 .5rem 0 .5rem;
  display: flex;
}

.nav_search-pill:hover {
  background-color: #ffffff33;
}

.nav_search-placeholder {
  color: inherit;
  opacity: .9;
  font-size: .875rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.nav_shop-icon-cart {
  position: relative;
}

.nav_shop-icon-cart .nav_shop-quantity {
  background-color: var(--base-color-brand--blue, #479ef8);
  color: var(--base-color-neutral--white);
  font-size: .6875rem;
  font-weight: 600;
  min-width: 1.125rem;
  height: 1.125rem;
  padding: 0 .25rem;
  border-radius: 62.4375rem;
  position: absolute;
  top: -.125rem;
  right: -.125rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.nav_wishlist {
  display: flex;
}

/* =============================================================
   DICOTA — Hero Slider
   ============================================================= */
.section_hero {
  position: relative;
  width: 100%;
  color: var(--base-color-neutral--white);
  overflow: hidden;
  margin-top: -8.5rem;
}

.hero_swiper {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: var(--hero-min-height, 90vh);
}

.hero_swiper .swiper-wrapper,
.hero_slides {
  height: auto;
  min-height: inherit;
}

.hero_slide {
  position: relative;
  display: flex;
  min-height: inherit;
  overflow: hidden;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
}

.hero_bg-picture,
.hero_bg-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.hero_bg-image {
  object-fit: cover;
  object-position: center;
}

.hero_overlay {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(68deg, rgba(0, 0, 0, .5) 2%, rgba(0, 0, 0, 0) 31%),
    linear-gradient(180deg, rgba(0, 0, 0, .9) 7%, rgba(0, 0, 0, 0) 25%);
  pointer-events: none;
}

.hero_text {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 36rem;
}

.hero_headline {
  flex-direction: row;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.1;
  text-transform: uppercase;
  margin: 0;
  display: block;
}

.hero_headline-line {
  margin: 0;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
  flex-direction: row;
}

.hero_subtext {
  max-width: 32rem;
  margin: 0;
}

.hero_actions {
  display: flex;
  gap: 1rem;
  align-items: center;
}

.hero_button {
  filter: drop-shadow(0 2px 1px rgba(0, 0, 0, .1));
}

/* =============================================================
   DICOTA — Hero Slider Navigation (Figma 5404:3815)
   ============================================================= */
/* Arrows — translucent white pills, blur background, white chevron */
.hero_arrow {
  position: absolute;
  top: 50%;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border: none;
  border-radius: 62.4375rem;
  color: #ffffff;
  background-color: rgba(255, 255, 255, .2);
  backdrop-filter: blur(.29063rem);
  -webkit-backdrop-filter: blur(.29063rem);
  cursor: pointer;
  transform: translateY(-50%);
  transition: background-color .2s ease, color .2s ease;
}
.hero_arrow:hover {
  background-color: #ffffff;
  color: #0f0f0f;
}
.hero_arrow-prev {
  left: 1.5rem;
}
.hero_arrow-next {
  right: 1.5rem;
}
.hero_arrow.swiper-button-disabled {
  opacity: .4;
  pointer-events: none;
}
.hero_arrow .icon-embed-xsmall {
  width: 1rem;
  height: 1rem;
}

/* Pagination wrapper — fixed bottom-center, holds bullets + pause toggle */
.hero_pagination {
  position: absolute;
  bottom: 1.5rem;
  left: 50%;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 1.0625rem;
  transform: translateX(-50%);
}

/* Bullet strip — need higher specificity than Swiper bundle's
   `.swiper-pagination-bullets.swiper-pagination-horizontal { width:100% }` (0,2,0) */
.hero_pagination > .hero_dots,
.hero_swiper .hero_pagination .hero_dots {
  position: static;
  display: flex;
  align-items: center;
  gap: .75rem;       /* .75rem between bullets */
  width: auto;
  bottom: auto;
  left: auto;
  right: auto;
  transform: none;
}

/* Each bullet — inactive: small translucent circle */
.hero_bullet {
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  display: inline-block;
  width: .5rem;
  height: .5rem;
  background-color: rgba(255, 255, 255, .5);
  backdrop-filter: blur(2.77px);
  -webkit-backdrop-filter: blur(2.77px);
  border-radius: 62.4375rem;
  overflow: hidden;
  position: relative;
  transition: width .35s cubic-bezier(.4, 0, .2, 1);
}
/* Active bullet — wide pill that contains an inner progress fill */
.hero_bullet.is-active {
  width: 3.4375rem;
}
/* Inner progress — sits inside every bullet, only shows on the active one */
.hero_bullet-progress {
  position: absolute;
  inset: 0;
  background-color: #ffffff;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .15s linear;
  pointer-events: none;
}
/* Hide progress on non-active bullets so it doesn't peek through */
.hero_bullet:not(.is-active) .hero_bullet-progress { display: none; }

/* Pause / play toggle */
.hero_autoplay-toggle {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  border: none;
  border-radius: 62.4375rem;
  background-color: rgba(255, 255, 255, .2);
  backdrop-filter: blur(.39563rem);
  -webkit-backdrop-filter: blur(.39563rem);
  color: #ffffff;
  cursor: pointer;
  transition: background-color .2s ease;
}
.hero_autoplay-toggle:hover { background-color: rgba(255, 255, 255, .35); }
.hero_autoplay-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: .75rem;
  height: .75rem;
}
/* Toggle visibility based on toggle state — default: paused-icon (pause bars) visible */
.hero_autoplay-toggle .hero_autoplay-icon-play {
  display: none;
}
.hero_autoplay-toggle.is-paused .hero_autoplay-icon-pause {
  display: none;
}
.hero_autoplay-toggle.is-paused .hero_autoplay-icon-play {
  display: inline-flex;
}

/* Mobile adaptations */

/* =============================================================
   DICOTA — Section Headline (brand intro block)
   ============================================================= */
.section_section-headline {
  width: 100%;
}

/* Builder defaults live on the inner wrapper so the inline-style Liquid (also
   placed on the wrapper) can override them in production without doubling. */
.section_section-headline > .padding-global {
  padding-top: 5rem;
  padding-bottom: 2.5rem;
  background-color: #ffffff;
  color: #0f0f0f;
  text-align: center;
}

.section-headline_inner {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
}

.section-headline_titles {
  display: flex;
  flex-direction: column;
  align-items: inherit;
  gap: 0;
}

.section-headline_pretitle,
.section-headline_title {
  margin: 0;
}

.section-headline_subtext {
  max-width: 30rem;
  margin: 0;
}

/* =============================================================
   DICOTA — Featured Products Slider + Product Card
   ============================================================= */
.section_featured-products {
  width: 100%;
}

.section_featured-products > .padding-global {
  padding-top: 2.5rem;
  padding-bottom: 5rem;
  background-color: #ffffff;
  color: #0f0f0f;
}

.featured-products_heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 2rem;
}

.featured-products_title {
  margin: 0;
}

.featured-products_button {
  flex: none;
}

.featured-products_slider-wrapper {
  position: relative;
}

.featured-products_swiper {
  width: 100%;
  padding-bottom: 1.5rem;
}

.featured-products_list {
  display: flex;
  gap: .3125rem;
}

.featured-products_item {
  width: 20.5rem;
  flex: none;
}

.featured-products_arrow {
  position: absolute;
  top: 50%;
  right: 1rem;
  z-index: 3;
  width: 3.5rem;
  height: 3.5rem;
  padding: 0;
  border: none;
  border-radius: 62.4375rem;
  background-color: rgba(15, 15, 15, .7);
  backdrop-filter: blur(.3125rem);
  color: var(--base-color-neutral--white);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  transition: background-color .2s ease;
}

.featured-products_arrow:hover {
  background-color: rgba(15, 15, 15, .9);
}

.featured-products_arrow.is-prev {
  left: 1rem;
  right: auto;
}

.featured-products_arrow.swiper-button-disabled {
  opacity: .3;
  pointer-events: none;
}

.featured-products_scrollbar {
  position: relative;
  margin: 0 auto;
  width: 22rem;
  height: 2px;
  background-color: rgba(15, 15, 15, .1);
  border-radius: 0;
  margin-top: 2rem;
}

.featured-products_scrollbar .swiper-scrollbar-drag {
  background-color: var(--base-color-neutral--black, #0f0f0f);
  border-radius: 0;
  height: 2px;
}

/* ---- Product Card ---- */
.product-card {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  width: 100%;
  position: relative;
}

.product-card_image-link {
  position: relative;
  display: block;
  width: 100%;
  height: 28.6875rem;
  padding: .625rem;
  background-color: #f6f6f6;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
}

.product-card_image-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: #f4f4f4;
}

.product-card_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: darken;
  transition: opacity .35s ease;
}

.product-card_image.is-hover {
  opacity: 0;
  z-index: 1;
}

.product-card_image-link:hover .product-card_image.is-hover {
  opacity: 1;
}

/* Auf Hover die Basis ausblenden, damit das zweite Bild nicht durch das erste durchscheint */
.product-card_image-link:hover .product-card_image:not(.is-hover) {
  opacity: 0;
}

.product-card_badge {
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #cc0404;
  filter: drop-shadow(0 1px 1px rgba(0, 0, 0, .1));
  padding: .25rem .5rem;
  z-index: 2;
}

.product-card_badge-text {
  color: var(--base-color-neutral--white);
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: .6875rem;
  line-height: 1.5;
  white-space: nowrap;
}

.product-card_favorite {
  position: absolute;
  top: 0;
  right: 0;
  width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  border: none;
  background: transparent;
  color: var(--base-color-neutral--black);
  cursor: pointer;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-card_favorite:hover {
  color: #cc0404;
}

.product-card_rating {
  position: absolute;
  bottom: 0;
  right: 0;
  display: flex;
  align-items: center;
  gap: .25rem;
  z-index: 2;
}

.product-card_stars {
  --rating: 5;
  width: 3.0625rem;
  height: .625rem;
  background: linear-gradient(
    to right,
    #ffb700 calc(var(--rating) * 20%),
    rgba(0, 0, 0, .15) calc(var(--rating) * 20%)
  );
  -webkit-mask: url(data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 12'><g fill='black'><polygon points='6,0 7.4,4.3 12,4.3 8.3,7 9.7,11.3 6,8.6 2.3,11.3 3.7,7 0,4.3 4.6,4.3'/><polygon points='18,0 19.4,4.3 24,4.3 20.3,7 21.7,11.3 18,8.6 14.3,11.3 15.7,7 12,4.3 16.6,4.3'/><polygon points='30,0 31.4,4.3 36,4.3 32.3,7 33.7,11.3 30,8.6 26.3,11.3 27.7,7 24,4.3 28.6,4.3'/><polygon points='42,0 43.4,4.3 48,4.3 44.3,7 45.7,11.3 42,8.6 38.3,11.3 39.7,7 36,4.3 40.6,4.3'/><polygon points='54,0 55.4,4.3 60,4.3 56.3,7 57.7,11.3 54,8.6 50.3,11.3 51.7,7 48,4.3 52.6,4.3'/></g></svg>) center/contain no-repeat;
  mask: url(data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 12'><g fill='black'><polygon points='6,0 7.4,4.3 12,4.3 8.3,7 9.7,11.3 6,8.6 2.3,11.3 3.7,7 0,4.3 4.6,4.3'/><polygon points='18,0 19.4,4.3 24,4.3 20.3,7 21.7,11.3 18,8.6 14.3,11.3 15.7,7 12,4.3 16.6,4.3'/><polygon points='30,0 31.4,4.3 36,4.3 32.3,7 33.7,11.3 30,8.6 26.3,11.3 27.7,7 24,4.3 28.6,4.3'/><polygon points='42,0 43.4,4.3 48,4.3 44.3,7 45.7,11.3 42,8.6 38.3,11.3 39.7,7 36,4.3 40.6,4.3'/><polygon points='54,0 55.4,4.3 60,4.3 56.3,7 57.7,11.3 54,8.6 50.3,11.3 51.7,7 48,4.3 52.6,4.3'/></g></svg>) center/contain no-repeat;
}

.product-card_rating-count {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: .75rem;
  letter-spacing: .015rem;
  opacity: .7;
}

.product-card_hover-cta {
  position: absolute;
  inset: auto 0 0 0;
  padding: 0;
  background-color: var(--base-color-neutral--white);
  opacity: 0;
  transform: translateY(.5rem);
  transition: opacity .2s ease, transform .2s ease;
  z-index: 5;
  pointer-events: none;
}

.product-card_image-link:hover .product-card_hover-cta {
  pointer-events: auto;
}

.product-card_image-link:hover .product-card_hover-cta {
  opacity: 1;
  transform: translateY(0);
}

.product-card_add-button {
  width: 100%;
  padding: .75rem 1.5rem;
  background-color: var(--base-color-neutral--white);
  color: var(--base-color-neutral--black);
  border: none;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.34;
  cursor: pointer;
}

.product-card_add-button:hover {
  background-color: var(--base-color-neutral--neutral-lightest, #eee);
}

.product-card_text-link {
  display: flex;
  flex-direction: column;
  gap: .25rem;
  text-decoration: none;
  color: inherit;
}

.product-card_title {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: .875rem;
  line-height: 1.34;
  text-transform: uppercase;
  margin: 0;
}

.product-card_price-row {
  display: flex;
  gap: .75rem;
  align-items: baseline;
  font-size: .875rem;
  line-height: 1.34;
  text-transform: uppercase;
}

.product-card_price {
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  color: var(--base-color-neutral--black);
}

.product-card_price.is-original {
  text-decoration: line-through;
}

.product-card_price.is-sale {
  font-weight: 500;
  color: #cc0404;
}

/* =============================================================
   DICOTA — USP Icon Row
   ============================================================= */
.section_usp-row {
  width: 100%;
}

.section_usp-row > .padding-global {
  padding-top: 3.75rem;
  padding-bottom: 7.5rem;
  background-color: #ffffff;
  color: #0f0f0f;
}

.usp-row_grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 4.75rem;
  align-items: start;
}

.usp-row_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
}

.usp-row_icon-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  flex: none;
}

.usp-row_icon {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.usp-row_text {
  display: flex;
  flex-direction: column;
  gap: .25rem;
  width: 100%;
}

.usp-row_title {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.5;
  text-transform: uppercase;
  margin: 0;
}

.usp-row_description {
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.34;
  margin: 0;
  opacity: .8;
}

/* =============================================================
   DICOTA — Image Banner
   ============================================================= */
.section_image-banner {
  position: relative;
  width: 100%;
  color: var(--base-color-neutral--white);
  overflow: hidden;
  isolation: isolate;
}

.image-banner_bg-picture,
.image-banner_bg-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 0;
}

.image-banner_bg-image {
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}

.image-banner_overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.image-banner_container {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  min-height: inherit;
  width: 100%;
  padding: 2.5rem;
  height: var(--banner-min-height);
}

.image-banner_content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 32rem;
  color: inherit;
}

.image-banner_headline {
  display: flex;
  flex-direction: column;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.1;
  text-transform: uppercase;
  margin: 0;
}

.image-banner_headline-line {
  margin: 0;
}

.image-banner_subtext {
  margin: 0;
}

.image-banner_actions {
  display: flex;
  gap: 1rem;
}

.section_image-banner[style*="text-align: center"] .image-banner_actions { justify-content: center; }
.section_image-banner[style*="text-align: right"]  .image-banner_actions { justify-content: flex-end; }

.image-banner_button {
  filter: drop-shadow(0 2px 1px rgba(0, 0, 0, .1));
}

/* =============================================================
   DICOTA — Shop by Category Slider + Category Tile
   ============================================================= */
.section_shop-by-category {
  width: 100%;
}

.section_shop-by-category > .padding-global {
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
  background-color: #ffffff;
  color: #0f0f0f;
}

.shop-by-category_heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.shop-by-category_title {
  margin: 0;
}

.shop-by-category_slider-wrapper {
  position: relative;
}

.shop-by-category_swiper {
  width: 100%;
  padding-bottom: 1.5rem;
}

.shop-by-category_list {
  display: flex;
  gap: .25rem;
}

.shop-by-category_item {
  width: 27.1875rem;
  flex: none;
}

.shop-by-category_arrow {
  position: absolute;
  top: 50%;
  right: 1rem;
  z-index: 3;
  width: 3.5rem;
  height: 3.5rem;
  padding: 0;
  border: none;
  border-radius: 62.4375rem;
  background-color: rgba(255, 255, 255, .7);
  backdrop-filter: blur(.3125rem);
  color: var(--base-color-neutral--black);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  transition: background-color .2s ease;
}

.shop-by-category_arrow:hover {
  background-color: rgba(255, 255, 255, .9);
}

.shop-by-category_arrow.is-prev {
  left: 1rem;
  right: auto;
}

.shop-by-category_arrow.swiper-button-disabled {
  opacity: .3;
  pointer-events: none;
}

.shop-by-category_scrollbar {
  position: relative;
  margin: 0 auto;
  width: 22rem;
  height: 2px;
  background-color: rgba(15, 15, 15, .1);
  border-radius: 0;
}

.shop-by-category_scrollbar .swiper-scrollbar-drag {
  background-color: var(--base-color-neutral--black);
  border-radius: 0;
  height: 2px;
}

/* ---- Category Tile ---- */
.category-tile {
  position: relative;
  display: block;
  width: 100%;
  height: 41.25rem;
  background-color: #f6f6f6;
  overflow: hidden;
  text-decoration: none;
  color: var(--base-color-neutral--white);
}

.category-tile_picture {
  position: absolute;
  inset: 0;
  display: block;
}

.category-tile_image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .6s ease;
}

.category-tile:hover .category-tile_image {
  transform: scale(1.04);
}

.category-tile_overlay {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(29deg, rgba(0, 0, 0, .8) 0%, rgba(0, 0, 0, 0) 26%);
  pointer-events: none;
}

.category-tile_footer {
  position: absolute;
  inset: auto 0 0 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding: 1.5rem;
  color: inherit;
}

.category-tile_title {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.34;
  text-transform: uppercase;
  color: inherit;
}

.category-tile_arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.875rem;
  height: 1.875rem;
  border-radius: 62.4375rem;
  background-color: rgba(255, 255, 255, .15);
  color: var(--base-color-neutral--white);
  flex: none;
  transition: background-color .2s ease, transform .2s ease;
}

.category-tile:hover .category-tile_arrow {
  background-color: var(--base-color-neutral--white);
  color: var(--base-color-neutral--black);
  transform: translateX(.25rem);
}

.category-tile_arrow svg {
  width: 1rem;
  height: 1rem;
}

/* =============================================================
   DICOTA — Two Column Banner
   ============================================================= */
.section_two-column-banner {
  width: 100%;
}

.two-column-banner_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  width: 100%;
}

.two-column-banner_item {
  position: relative;
  min-height: var(--banner-min-height, 70vh);
  color: var(--base-color-neutral--white);
  overflow: hidden;
  isolation: isolate;
}

.two-column-banner_picture,
.two-column-banner_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 0;
}

.two-column-banner_image {
  object-fit: cover;
  object-position: center;
}

.two-column-banner_overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background-image: linear-gradient(
    180deg,
    color-mix(in srgb, var(--overlay-color, #0F0F0F) 0%, transparent) 0%,
    color-mix(in srgb, var(--overlay-color, #0F0F0F) 0%, transparent) var(--overlay-start, 30%),
    color-mix(in srgb, var(--overlay-color, #0F0F0F) var(--overlay-strength, 70%), transparent) 100%
  );
}

.two-column-banner_content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: flex-start;
  justify-content: flex-end;
  min-height: inherit;
  padding: 2.5rem;
  color: inherit;
}

.two-column-banner_title {
  margin: 0;
}

.two-column-banner_subtext {
  max-width: 32rem;
  margin: 0;
}

.two-column-banner_button {
  filter: drop-shadow(0 2px 1px rgba(0, 0, 0, .1));
  margin-top: .5rem;
}

/* =============================================================
   DICOTA — Accessories Slider with Tabs
   ============================================================= */
.section_accessories {
  width: 100%;
}

.section_accessories > .padding-global {
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
  background-color: #ffffff;
  color: #0f0f0f;
}

.accessories_header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  flex-wrap: wrap;
  margin-bottom: 2.5rem;
}

.accessories_title {
  margin: 0;
}

.accessories_tabs {
  display: flex;
  gap: .75rem;
  flex-wrap: wrap;
}

.accessories_tab {
  border: none;
  background-color: #f6f6f6;
  color: var(--base-color-neutral--black);
  padding: .625rem 1.9375rem;
  border-radius: 62.4375rem;
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: .875rem;
  line-height: 1.5;
  letter-spacing: .0525rem;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease;
}

.accessories_tab:hover {
  background-color: #ececec;
}

.accessories_tab.is-active {
  background-color: var(--base-color-neutral--black);
  color: var(--base-color-neutral--white);
}

/* Slider area */
.accessories_slider-wrapper {
  position: relative;
}

.accessories_categories {
  position: relative;
}

.accessories_category {
  width: 100%;
}

.accessories_swiper {
  width: 100%;
  padding-bottom: 1.5rem;
}

.accessories_list {
  display: flex;
  gap: .125rem;
}

.accessories_item {
  width: 20.5rem;
  flex: none;
}

.accessories_arrow {
  position: absolute;
  top: 50%;
  right: 1rem;
  z-index: 3;
  width: 3.5rem;
  height: 3.5rem;
  padding: 0;
  border: none;
  border-radius: 62.4375rem;
  background-color: rgba(15, 15, 15, .7);
  backdrop-filter: blur(.3125rem);
  color: var(--base-color-neutral--white);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  transition: background-color .2s ease;
}

.accessories_arrow:hover {
  background-color: rgba(15, 15, 15, .9);
}

.accessories_arrow.is-prev {
  left: 1rem;
  right: auto;
}

.accessories_arrow.swiper-button-disabled {
  opacity: .3;
  pointer-events: none;
}

.accessories_scrollbar {
  position: relative;
  margin: 0 auto;
  width: 22rem;
  height: 2px;
  background-color: rgba(15, 15, 15, .1);
  border-radius: 0;
}

.accessories_scrollbar .swiper-scrollbar-drag {
  background-color: var(--base-color-neutral--black);
  border-radius: 0;
  height: 2px;
}

/* =============================================================
   DICOTA — Image + Link List ("Mobile Working")
   ============================================================= */
.section_image-link-list {
  width: 100%;
}

.image-link-list_inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  min-height: 46.3125rem;
  background-color: #0f0f0f;
  color: #ffffff;
}

.image-link-list_inner.is-image-right {
  grid-template-areas: "text image";
}
.image-link-list_inner.is-image-right .image-link-list_image-side {
  grid-area: image;
}
.image-link-list_inner.is-image-right .image-link-list_text-side {
  grid-area: text;
}

.image-link-list_image-side {
  position: relative;
  overflow: hidden;
}

.image-link-list_picture,
.image-link-list_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.image-link-list_image {
  object-fit: cover;
  object-position: center;
}

.image-link-list_text-side {
  display: flex;
  align-items: center;
  padding: 5rem 6.25rem 5rem 8.75rem;
}

.image-link-list_content {
  display: flex;
  flex-direction: column;
  gap: 3.75rem;
  width: 100%;
}

.image-link-list_subtitle {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  text-transform: uppercase;
  margin: 0;
  color: inherit;
}

.image-link-list_links {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.image-link-list_link-item {
  margin: 0;
  padding: 0;
}

.image-link-list_link {
  display: inline-flex;
  align-items: center;
  gap: .75rem;
  color: inherit;
  text-decoration: none;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.1;
  text-transform: uppercase;
  opacity: .5;
  transition: opacity .2s ease;
}

.image-link-list_link:hover,
.image-link-list_link:focus-visible {
  opacity: 1;
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-offset: .15em;
}

.image-link-list_link-label {
  color: inherit;
}

.image-link-list_link-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.4375rem;
  height: 1.4375rem;
  flex: none;
  opacity: 0;
  transform: translateX(-.25rem);
  transition: opacity .2s ease, transform .2s ease;
}

.image-link-list_link:hover .image-link-list_link-arrow,
.image-link-list_link:focus-visible .image-link-list_link-arrow {
  opacity: 1;
  transform: translateX(0);
}

.image-link-list_actions {
  display: flex;
}

.image-link-list_button {
  filter: drop-shadow(0 2px 1px rgba(0, 0, 0, .1));
}

/* =============================================================
   DICOTA — Loved by Customers Gallery
   ============================================================= */
.section_loved-by {
  width: 100%;
}

.section_loved-by > .loved-by_grid {
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
  background-color: #ffffff;
}

.loved-by_grid {
  display: flex;
  align-items: stretch;
  gap: .25rem;
  width: 100%;
}

.loved-by_headline-tile {
  position: relative;
  width: 23.25rem;
  height: 34.125rem;
  padding: 2.5rem;
  flex: none;
  overflow: hidden;
  isolation: isolate;
}

.loved-by_headline-picture,
.loved-by_headline-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 0;
}

.loved-by_headline-image {
  object-fit: cover;
  object-position: center;
}

.loved-by_headline-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background-image: linear-gradient(180deg, rgba(255, 255, 255, .9) 0%, rgba(255, 255, 255, 0) 40%);
  pointer-events: none;
}

.loved-by_headline-content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: .625rem;
  color: var(--base-color-neutral--black);
}

.loved-by_headline-title {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.1;
  text-transform: uppercase;
  margin: 0;
}

.loved-by_rating {
  display: flex;
  align-items: center;
  gap: .25rem;
  justify-content: flex-end;
}

.loved-by_stars {
  width: 3.75rem;
  height: .75rem;
  color: var(--base-color-neutral--black);
  display: flex;
  align-items: center;
  flex: none;
}

.loved-by_stars svg {
  width: 100%;
  height: 100%;
}

.loved-by_rating-text {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: .75rem;
  line-height: 1.28;
  text-transform: uppercase;
  margin: 0;
  max-width: 15.5rem;
}

/* Slider */
.loved-by_slider-wrapper {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
}

.loved-by_swiper {
  width: 100%;
  height: 100%;
}

.loved-by_slides {
  display: flex;
  gap: .25rem;
  height: 34.125rem;
}

.loved-by_slide {
  position: relative;
  width: 23.25rem;
  height: 34.125rem;
  flex: none;
  overflow: hidden;
}

.loved-by_picture,
.loved-by_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.loved-by_image {
  object-fit: cover;
  object-position: center;
}

/* Product tag overlay on a photo slide */
.loved-by_product-tag {
  position: absolute;
  inset: auto .75rem .75rem .75rem;
  padding: .75rem;
  background-color: rgba(51, 52, 51, .6);
  backdrop-filter: blur(5.0625rem);
  display: flex;
  flex-direction: column;
  gap: 1rem;
  z-index: 2;
}

.loved-by_product-info {
  display: block;
}

.loved-by_product-link {
  display: flex;
  gap: .5rem;
  text-decoration: none;
  color: var(--base-color-neutral--white);
}

.loved-by_product-thumb {
  width: 3.875rem;
  height: 5.125rem;
  object-fit: cover;
  background-color: #f0f2f3;
  flex: none;
}

.loved-by_product-text {
  display: flex;
  flex-direction: column;
  gap: .125rem;
  min-width: 0;
}

.loved-by_product-title {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: .875rem;
  line-height: 1.34;
  text-transform: uppercase;
  margin: 0;
}

.loved-by_product-type {
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: .875rem;
  line-height: 1.34;
  text-transform: uppercase;
  opacity: .5;
  margin: 0;
}

.loved-by_product-price {
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: .875rem;
  line-height: 1.34;
  text-transform: uppercase;
  margin: 0;
}

.loved-by_product-rating {
  display: flex;
  align-items: center;
  gap: .25rem;
  margin-top: .125rem;
}

.loved-by_product-stars > div {
  width: 3.0625rem;
  height: .625rem;
  background: linear-gradient(
    to right,
    #ffb700 calc(var(--rating, 5) * 20%),
    rgba(255, 255, 255, .25) calc(var(--rating, 5) * 20%)
  );
  -webkit-mask: url(data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 12'><g fill='black'><polygon points='6,0 7.4,4.3 12,4.3 8.3,7 9.7,11.3 6,8.6 2.3,11.3 3.7,7 0,4.3 4.6,4.3'/><polygon points='18,0 19.4,4.3 24,4.3 20.3,7 21.7,11.3 18,8.6 14.3,11.3 15.7,7 12,4.3 16.6,4.3'/><polygon points='30,0 31.4,4.3 36,4.3 32.3,7 33.7,11.3 30,8.6 26.3,11.3 27.7,7 24,4.3 28.6,4.3'/><polygon points='42,0 43.4,4.3 48,4.3 44.3,7 45.7,11.3 42,8.6 38.3,11.3 39.7,7 36,4.3 40.6,4.3'/><polygon points='54,0 55.4,4.3 60,4.3 56.3,7 57.7,11.3 54,8.6 50.3,11.3 51.7,7 48,4.3 52.6,4.3'/></g></svg>) center/contain no-repeat;
          mask: url(data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 12'><g fill='black'><polygon points='6,0 7.4,4.3 12,4.3 8.3,7 9.7,11.3 6,8.6 2.3,11.3 3.7,7 0,4.3 4.6,4.3'/><polygon points='18,0 19.4,4.3 24,4.3 20.3,7 21.7,11.3 18,8.6 14.3,11.3 15.7,7 12,4.3 16.6,4.3'/><polygon points='30,0 31.4,4.3 36,4.3 32.3,7 33.7,11.3 30,8.6 26.3,11.3 27.7,7 24,4.3 28.6,4.3'/><polygon points='42,0 43.4,4.3 48,4.3 44.3,7 45.7,11.3 42,8.6 38.3,11.3 39.7,7 36,4.3 40.6,4.3'/><polygon points='54,0 55.4,4.3 60,4.3 56.3,7 57.7,11.3 54,8.6 50.3,11.3 51.7,7 48,4.3 52.6,4.3'/></g></svg>) center/contain no-repeat;
}

.loved-by_product-review-count {
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: .75rem;
  line-height: 1.5;
  letter-spacing: .015rem;
  opacity: .7;
  color: var(--base-color-neutral--white);
}

.loved-by_atc-button {
  width: 100%;
  padding: .875rem 2.5rem;
  background-color: var(--base-color-neutral--white);
  color: var(--base-color-neutral--black);
  border: none;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.4;
  cursor: pointer;
}

/* Nav arrows (light style) */
.loved-by_arrow {
  position: absolute;
  top: 50%;
  right: 1rem;
  z-index: 3;
  width: 3.5rem;
  height: 3.5rem;
  padding: 0;
  border: none;
  border-radius: 62.4375rem;
  background-color: rgba(255, 255, 255, .7);
  backdrop-filter: blur(.3125rem);
  color: var(--base-color-neutral--black);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  transition: background-color .2s ease;
}

.loved-by_arrow:hover {
  background-color: rgba(255, 255, 255, .95);
}

.loved-by_arrow.is-prev {
  left: 1rem;
  right: auto;
}

.loved-by_arrow.swiper-button-disabled {
  opacity: .3;
  pointer-events: none;
}

/* =============================================================
   DICOTA — Sustainability Banner
   ============================================================= */
.section_sustainability {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: var(--base-color-neutral--white);
  overflow: hidden;
  isolation: isolate;
}

.sustainability_bg-picture,
.sustainability_bg-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 0;
}

.sustainability_bg-image {
  object-fit: cover;
  object-position: center;
}

.sustainability_overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.sustainability_badge {
  position: absolute;
  top: 1rem;
  right: 2rem;
  z-index: 3;
  width: 17.5rem;
  max-width: 30vw;
  pointer-events: none;
}

.sustainability_badge-image {
  width: 100%;
  height: auto;
  display: block;
}

.sustainability_content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  width: 100%;
  min-height: var(--banner-min-height, 70vh);
  justify-content: center;
  max-width: 45.625rem;
  padding: 2.5rem;
  text-align: center;
  color: inherit;
}

/* Counter */
.sustainability_counter {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  flex-wrap: wrap;
  justify-content: center;
}

.sustainability_counter > div {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
}

.sustainability_counter-digit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #0f0f0f;
  color: var(--base-color-neutral--white);
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.1;
  padding: .3125rem .5625rem;
  border-radius: .25rem;
  min-width: 1.875rem;
}

.sustainability_counter-dot {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.1;
  color: var(--base-color-neutral--white);
  padding: 0 .125rem;
}

.sustainability_title {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 3rem;
  line-height: .98;
  text-transform: uppercase;
  margin: 0;
}

.sustainability_subtext {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.26;
  max-width: 35rem;
  margin: 0;
}

.sustainability_actions {
  display: flex;
  margin-top: .5rem;
}

.sustainability_button {
  filter: drop-shadow(0 2px 1px rgba(0, 0, 0, .1));
}

/* =============================================================
   DICOTA — Testimonials Slider
   ============================================================= */
.section_testimonials {
  width: 100%;
}

.section_testimonials > .padding-global {
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
}

.testimonials_header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .5rem;
  margin-bottom: 2.5rem;
  text-align: center;
}

.testimonials_title {
  margin: 0;
}

.testimonials_rating {
  display: inline-flex;
  align-items: center;
  gap: .625rem;
  font-family: "Futura PT", sans-serif;
  font-size: .9375rem;
}

.testimonials_rating-stars {
  width: 6.25rem;
  height: 1.25rem;
  display: inline-flex;
}

.testimonials_rating-stars svg {
  width: 100%;
  height: 100%;
}

.testimonials_rating-score {
  font-weight: 500;
}

.testimonials_rating-label,
.testimonials_rating-count {
  font-weight: 400;
  opacity: .85;
}

.testimonials_rating-logo {
  height: 1.25rem;
  width: auto;
  display: block;
}

/* Slider */
.testimonials_slider-wrapper {
  position: relative;
}

.testimonials_swiper {
  width: 100%;
}

.testimonials_list {
  display: flex;
  gap: .25rem;
  align-items: stretch;
}

.testimonials_card {
  width: 20.625rem;
  flex: none;
  background-color: #f6f6f6;
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  color: var(--base-color-neutral--black);
  height: auto;
}

.testimonials_card-body {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}

.testimonials_card-stars {
  width: 6.25rem;
  height: 1.25rem;
}

.testimonials_card-star-mask {
  width: 100%;
  height: 100%;
  background: linear-gradient(
    to right,
    #479ef8 calc(var(--rating, 5) * 20%),
    rgba(15, 15, 15, .15) calc(var(--rating, 5) * 20%)
  );
  -webkit-mask: url(data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 20'><g fill='black'><polygon points='10,0 12.3,7.2 20,7.2 13.9,11.6 16.2,18.8 10,14.4 3.8,18.8 6.1,11.6 0,7.2 7.7,7.2'/><polygon points='30,0 32.3,7.2 40,7.2 33.9,11.6 36.2,18.8 30,14.4 23.8,18.8 26.1,11.6 20,7.2 27.7,7.2'/><polygon points='50,0 52.3,7.2 60,7.2 53.9,11.6 56.2,18.8 50,14.4 43.8,18.8 46.1,11.6 40,7.2 47.7,7.2'/><polygon points='70,0 72.3,7.2 80,7.2 73.9,11.6 76.2,18.8 70,14.4 63.8,18.8 66.1,11.6 60,7.2 67.7,7.2'/><polygon points='90,0 92.3,7.2 100,7.2 93.9,11.6 96.2,18.8 90,14.4 83.8,18.8 86.1,11.6 80,7.2 87.7,7.2'/></g></svg>) center/contain no-repeat;
  mask: url(data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 20'><g fill='black'><polygon points='10,0 12.3,7.2 20,7.2 13.9,11.6 16.2,18.8 10,14.4 3.8,18.8 6.1,11.6 0,7.2 7.7,7.2'/><polygon points='30,0 32.3,7.2 40,7.2 33.9,11.6 36.2,18.8 30,14.4 23.8,18.8 26.1,11.6 20,7.2 27.7,7.2'/><polygon points='50,0 52.3,7.2 60,7.2 53.9,11.6 56.2,18.8 50,14.4 43.8,18.8 46.1,11.6 40,7.2 47.7,7.2'/><polygon points='70,0 72.3,7.2 80,7.2 73.9,11.6 76.2,18.8 70,14.4 63.8,18.8 66.1,11.6 60,7.2 67.7,7.2'/><polygon points='90,0 92.3,7.2 100,7.2 93.9,11.6 96.2,18.8 90,14.4 83.8,18.8 86.1,11.6 80,7.2 87.7,7.2'/></g></svg>) center/contain no-repeat;
}

.testimonials_card-headline {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.26;
  margin: 0;
}

.testimonials_card-text {
  display: flex;
  flex-direction: column;
  gap: .25rem;
}

.testimonials_card-quote {
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: .02rem;
  opacity: .7;
  margin: 0;
}

.testimonials_card-readmore {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: .875rem;
  line-height: 1.5;
  letter-spacing: .0525rem;
  text-transform: uppercase;
  text-decoration: underline;
  color: inherit;
}

.testimonials_card-footer {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: auto;
}

.testimonials_card-author {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
}

.testimonials_card-author-name {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: .02rem;
  opacity: .7;
}

.testimonials_card-author-badge {
  display: inline-flex;
  align-items: center;
  color: var(--base-color-brand--blue, #479ef8);
  width: .6875rem;
  height: 1.375rem;
}

.testimonials_card-time {
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: .02rem;
  opacity: .7;
}

/* Nav arrows */
.testimonials_arrow {
  position: absolute;
  top: 50%;
  right: 1rem;
  z-index: 3;
  width: 3.5rem;
  height: 3.5rem;
  padding: 0;
  border: none;
  border-radius: 62.4375rem;
  background-color: rgba(15, 15, 15, .7);
  backdrop-filter: blur(.3125rem);
  color: var(--base-color-neutral--white);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  transition: background-color .2s ease;
}

.testimonials_arrow:hover {
  background-color: rgba(15, 15, 15, .9);
}

.testimonials_arrow.is-prev {
  left: 1rem;
  right: auto;
}

.testimonials_arrow.swiper-button-disabled {
  opacity: .3;
  pointer-events: none;
}

/* =============================================================
   DICOTA — Footer (Newsletter section + Footer Bottom section)
   ============================================================= */
.section_footer-group {
  background-color: var(--base-color-neutral--black);
  color: var(--base-color-neutral--white);
  width: 100%;
}

/* ---- Newsletter section ---- */
.section_footer-newsletter {
  width: 100%;
  padding-top: 3.75rem;
  background-color: #000;
  color: #ffffff;
}
/* Defensive: enforce white text on all common children, in case some
   parent's `color: var(--base-color-neutral--white)` doesn't resolve
   in the Liquiflow Builder preview (CSS-variable timing).
   EXCLUDES buttons and elements inside buttons — those keep their
   own coloring (white buttons would otherwise lose their dark text). */
.section_footer-newsletter a:not(.button):not(.w-button):not(.footer-newsletter_promo),
.section_footer-newsletter p:not(.button):not(.w-button),
.section_footer-newsletter span:not(.button):not(.w-button),
.section_footer-newsletter h1,
.section_footer-newsletter h2,
.section_footer-newsletter h3,
.section_footer-newsletter h4,
.section_footer-newsletter h5,
.section_footer-newsletter h6,
.section_footer-newsletter li,
.section_footer-newsletter label {
  color: #ffffff;
}
.section_footer-newsletter a:not(.button):not(.w-button):not(.footer-newsletter_promo):visited { color: #ffffff; }
.section_footer-newsletter a:not(.button):not(.w-button):not(.footer-newsletter_promo):hover { color: #ffffff; opacity: .7; }
/* Buttons keep their own dark text on white background.
   `!important` here overrides the more-specific white-text rule above
   which would otherwise color the spans INSIDE the promo links white. */
.section_footer-newsletter .button,
.section_footer-newsletter .w-button,
.section_footer-newsletter .footer-newsletter_promo,
.section_footer-newsletter .footer-newsletter_promo *,
.section_footer-newsletter .button *,
.section_footer-newsletter .w-button *,
.section_footer-newsletter input[type="submit"],
.section_footer-newsletter button:not(.is-dark-bg),
.section_footer-newsletter button:not(.is-dark-bg) * {
  color: #0f0f0f !important;
}

.footer-newsletter_inner {
  display: flex;
  flex-direction: column;
  gap: 3.75rem;
  padding: 0 3.75rem;
}

/* Top promo CTAs */
.footer-newsletter_promos {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
}

.footer-newsletter_promo {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .625rem;
  padding: .875rem 2.5rem;
  background-color: var(--base-color-neutral--white);
  color: var(--base-color-neutral--black);
  text-decoration: none;
  transition: background-color .2s ease;
}

.footer-newsletter_promo:hover {
  background-color: var(--base-color-neutral--neutral-lightest, #eee);
}

.footer-newsletter_promo-icon {
  width: 1.25rem;
  height: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  flex: none;
}

.footer-newsletter_promo-text {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.5;
  letter-spacing: .075rem;
  text-transform: uppercase;
}

/* Main row: pitch + link grid */
.footer-newsletter_main {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 3rem;
}

.footer-newsletter_pitch {
  flex: 0 1 28.3125rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.footer-newsletter_headline {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 3rem;
  line-height: .98;
  text-transform: uppercase;
  margin: 0;
  color: inherit;
}

.footer-newsletter_subtext {
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.34;
  margin: 0;
}

.footer-newsletter_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .875rem 2.5rem;
  background-color: var(--base-color-neutral--white);
  color: var(--base-color-neutral--black);
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.5;
  letter-spacing: .075rem;
  text-transform: uppercase;
  text-decoration: none;
  align-self: flex-start;
}

.footer-newsletter_form-block {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  width: 100%;
  max-width: 24rem;
}

.footer-newsletter_form {
  display: flex;
  gap: .5rem;
  align-items: stretch;
  flex-wrap: wrap;
}

.footer-newsletter_form-input {
  flex: 1 1 12rem;
  background-color: transparent;
  color: inherit;
  border: 1px solid rgba(255, 255, 255, .3);
  padding: .75rem 1rem;
  font-family: inherit;
}

.footer-newsletter_form-input::placeholder {
  color: rgba(255, 255, 255, .6);
}

.footer-newsletter_form-submit {
  background-color: var(--base-color-neutral--white);
  color: var(--base-color-neutral--black);
  border: none;
  padding: .75rem 1.5rem;
  cursor: pointer;
}

/* Link grid */
.footer-newsletter_link-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 12.1875rem));
  gap: 1.5rem;
  justify-content: space-between;
  flex: 1 1 auto;
}

.footer-newsletter_link-column {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.footer-newsletter_link-column-title {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  text-transform: uppercase;
  color: inherit;
  margin: 0;
}

.footer-newsletter_link-list {
  display: flex;
  flex-direction: column;
  gap: .25rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-newsletter_link-item {
  margin: 0;
}

.footer-newsletter_link {
  display: block;
  padding: .5rem 0;
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: .875rem;
  line-height: 1.5;
  letter-spacing: .0525rem;
  text-transform: uppercase;
  color: inherit;
  text-decoration: none;
  transition: opacity .2s ease;
  margin-left: 0rem;
}

.footer-newsletter_link:hover {
  opacity: .7;
}

/* ---- Footer Bottom ---- */
.section_footer-bottom {
  width: 100%;
  padding-top: 2.5rem;
  background-color: #000;
  color: #ffffff;
}
.section_footer-bottom a,
.section_footer-bottom p,
.section_footer-bottom span,
.section_footer-bottom li {
  color: #ffffff;
}
.section_footer-bottom a:visited { color: #ffffff; }
.section_footer-bottom a:hover { color: #ffffff; opacity: .7; }
/* Allow intentionally muted elements to override (e.g. legal links, copyright) */
.section_footer-bottom .text-style-muted,
.section_footer-bottom .text-color-muted {
  color: rgba(255, 255, 255, .55);
}

.footer-bottom_row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 0 3.75rem;
  flex-wrap: wrap;
}

.footer-bottom_payments {
  display: flex;
  align-items: center;
  gap: .75rem;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-bottom_payment-item {
  margin: 0;
}

.footer-bottom_payment-svg-wrap {
  width: 2.1875rem;
  height: 1.5rem;
  background-color: var(--base-color-neutral--white);
  border-radius: .25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.footer-bottom_payment-svg {
  width: 100%;
  height: 100%;
  display: block;
}

.footer-bottom_payment-fallback {
  width: 1.5rem;
  height: 1rem;
  object-fit: contain;
}

.footer-bottom_socials {
  display: flex;
  align-items: center;
  gap: 1.125rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-bottom_social-item {
  margin: 0;
}

.footer-bottom_social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  color: var(--base-color-neutral--white);
  text-decoration: none;
  transition: opacity .2s ease;
}

.footer-bottom_social-link:hover {
  opacity: .7;
}

.footer-bottom_social-icon {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* Legal bar */
.footer-bottom_legal-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  margin-top: 2.5rem;
  padding: .5rem 3.75rem;
  background-color: rgba(255, 255, 255, .1);
  flex-wrap: wrap;
}

.footer-bottom_copyright {
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: .75rem;
  line-height: 1.34;
  margin: 0;
  color: inherit;
}

.footer-bottom_legal-links {
  display: flex;
  gap: 1.5rem;
  flex-wrap: wrap;
}

.footer-bottom_legal-link {
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: .75rem;
  line-height: 1.5;
  letter-spacing: .045rem;
  text-transform: uppercase;
  color: inherit;
  opacity: .7;
  text-decoration: none;
}

.footer-bottom_legal-link:hover {
  opacity: 1;
}

.footer-bottom_lang {
  display: flex;
}

.footer-bottom_lang .li-lang_dd-toggle {
  display: flex;
  align-items: center;
  gap: .5rem;
  color: inherit;
}

.footer-bottom_lang-flag {
  width: 1rem;
  height: 1rem;
  background-color: rgba(255, 255, 255, .25);
  border-radius: 2px;
  flex: none;
}

/* =============================================================
   DICOTA — Localization Picker (Sprache + Region/Währung)
   Ein Snippet, überall gerendert. Sprache + Markt/Währung via
   nativen <button> (name=language_code / country_code) → kein JS nötig.
   ============================================================= */
.li-lang_wrapper {
  display: inline-flex;
  align-items: center;
}

/* Trenner "DE | €" im Toggle */
.li-lang_sep {
  opacity: .4;
  margin: 0 .1rem;
}

/* Gruppen (Sprache / Region) untereinander, Trennlinie dazwischen */
.li-lang_form {
  width: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
}

.li-lang_dd-group {
  width: 100%;
}

.li-lang_dd-group + .li-lang_dd-group {
  margin-top: .4rem;
  padding-top: .4rem;
  border-top: 1px solid #ffffff26;
}

.li-lang_dd-items {
  width: 100%;
  display: flex;
  flex-direction: column;
}

/* Buttons sehen aus wie die alten Link-Items (Button-Reset) */
button.li-lang_dd-link {
  grid-column-gap: .75rem;
  width: 100%;
  background: none;
  border: none;
  cursor: pointer;
  font: inherit;
  color: #fff;
  text-transform: inherit;
  white-space: nowrap;
  padding: .35rem 1rem;
}

.li-lang_dd-link.is-active {
  font-weight: 600;
}

.li-lang_dd-link.is-active:before {
  content: "✓";
  margin-right: .4rem;
}

/* Währung rechts neben dem Ländernamen */
.li-lang_dd-currency {
  opacity: .55;
  margin-left: auto;
  padding-left: 1rem;
  font-variant-numeric: tabular-nums;
}

/* Liste breit genug für "GERMANY  € EUR", scrollbar bei vielen Märkten */

/* Footer: Dropdown öffnet nach oben, Chevron zeigt entsprechend.
   !important + expliziter relativer Anker, um Webflows Dropdown-Runtime
   (Inline-Positionierung nach unten) zu überschreiben. */
.section_footer-bottom .li-lang_dropdown {
  position: relative;
}
.section_footer-bottom .li-lang_dd-list.w--open {
  top: auto;
  bottom: 100%;
  margin-bottom: .5rem;
}

.section_footer-bottom .dropdown-icon {
  transform: rotate(180deg);
}

/* "Für Reseller"-Button in der Announcement-Bar (DICOTA-Blau),
   rechts neben dem Sprach-/Währungs-Switch. Text + Link variabel. */
.announcement-bar_reseller-btn {
  display: inline-flex;
  align-items: center;
  background-color: var(--base-color-brand--blue);
  color: #fff;
  padding: .3rem .85rem;
  margin-left: .35rem;
  border-radius: var(--border-radius--small);
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color .2s;
}

.announcement-bar_reseller-btn:hover {
  background-color: #1f4fe6;
  color: #fff;
}

/* =============================================================
   DICOTA — Navbar Mittelbreite-Fix (Overflow / Überlappung Suche)
   8 Top-Level-Menüpunkte + 14rem-Suchpille brauchen ~1500px; auf
   Laptops überlappen die Links sonst die Suche. Lösung ohne Burger-
   Hack (Webflow data-collapse kennt nur 991/767/479): Such-Pille bei
   Laptop-Breite auf reines Icon reduzieren (öffnet weiterhin das
   Vollbild-Suchpanel) + Schrift/Abstände im mittleren Bereich straffen.
   <992px greift das native Burger-Menü.
   ============================================================= */
@media (min-width: 992px) and (max-width: 1400px) {
  .nav_search-pill {
    width: auto;
    background-color: transparent;
    padding-left: .35rem;
    padding-right: .35rem;
  }
  .nav_search-pill:hover {
    background-color: #ffffff1a;
  }
  .nav_search-pill .nav_search-placeholder {
    display: none;
  }
  .nav_container {
    gap: 1rem;
  }
}

@media (min-width: 992px) and (max-width: 1240px) {
  .nav_menu .nav_dropdown-toggle {
    font-size: .875rem;
  }
}

@media (min-width: 992px) and (max-width: 1080px) {
  .nav_menu .nav_dropdown-toggle {
    font-size: .8rem;
  }
  .nav_container {
    gap: .65rem;
  }
}

/* Responsive */

/* =============================================================
   DICOTA PDP — Product Breadcrumb
   ============================================================= */
.section_product-breadcrumb > .padding-global {
  padding-top: .5rem;
  padding-bottom: .5rem;
  background-color: #f5f5f5;
  color: #666666;
}
.product-breadcrumb_nav {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  flex-wrap: wrap;
}
/* Die Branch-Wrapper-Spans (mit `li-if="template == 'X'"`) sollen das
   Flex-Layout NICHT brechen — ohne diese Regel würden die inneren
   Elemente in einer Inline-Box stecken und der erste Block-Level-Inhalt
   darin (z.B. `.product-breadcrumb_sep { display: flex }`) würde einen
   Zeilenumbruch erzwingen. `display: contents` macht die Wrapper-Spans
   layout-transparent, alle Branch-Children werden direkte Flex-Kinder
   der nav. Greift auch in Production, da `li-if`-Attribute im
   gerenderten Shopify-HTML bleiben. */
.product-breadcrumb_nav span[li-if] {
  display: contents;
}
.product-breadcrumb_link {
  font-size: 0.8125rem;
  color: inherit;
  text-decoration: none;
}
.product-breadcrumb_link:hover { text-decoration: underline; }
.product-breadcrumb_sep {
  display: inline-flex;
  align-items: center;
  color: #999999;
}
.product-breadcrumb_current {
  font-size: 0.8125rem;
  color: #000000;
  font-weight: 500;
}

/* =============================================================
   DICOTA PDP — Product USP Bar
   ============================================================= */
.section_product-usp-bar > .padding-global {
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
  background-color: #ffffff;
}
.product-usp-bar_grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
}
.product-usp-bar_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1rem;
}
.product-usp-bar_icon-wrap {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.product-usp-bar_icon {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.product-usp-bar_title {
  font-size: 1.25rem;
  font-weight: 500;
  font-family: "Futura PT", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  margin: 0;
  line-height: 1.3;
}
.product-usp-bar_desc {
  font-size: 1rem;
  color: #0f0f0f;
  margin: 0;
  line-height: 1.34;
  text-align: center;
}

/* =============================================================
   DICOTA PDP — Product Feature Gallery
   ============================================================= */
.section_product-features .padding-global {
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
  background-color: #ffffff;
}
.product-features_headline {
  margin-bottom: 2.5rem;
}
.swiper.is-product-features {
  overflow: visible;
}
.swiper-wrapper.is-product-features {
  display: flex;
}
.swiper-slide.is-product-features {
  width: calc(25% - 1.5rem);
  flex-shrink: 0;
}
.product-features_item {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.product-features_img-wrap {
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border-radius: 0.5rem;
  background-color: #f5f5f5;
}
.product-features_img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.product-features_content {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.product-features_category {
  display: inline-block;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 0.75rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #6b6b6b;
  margin: 0;
}
.product-features_title {
  font-size: 1.375rem;
  font-weight: 700;
  font-family: "Futura PT", sans-serif;
  text-transform: uppercase;
  margin: 0;
  line-height: 1.2;
}
.product-features_text {
  color: #0f0f0f;
  margin: 0;
}

/* =============================================================
   DICOTA PDP — Produktfamilie
   ============================================================= */
.section_product-family > .padding-global {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #f5f5f5;
}
.product-family_headline {
  color: #111;
  margin: 0 0 2rem;
}
.product-family_img-wrap {
  width: 100%;
}
.product-family_img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0.5rem;
}

/* =============================================================
   DICOTA PDP — Product Loved-by Gallery
   ============================================================= */
.section_product-loved-by .padding-global {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #0f0f0f;
  color: #ffffff;
}
.product-loved-by_headline {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-align: center;
  color: #ffffff;
  margin: 0 0 1.5rem;
}
/* Bento grid: 4 cols × 2 rows, column-flow.
   Order of product images (_40, _41, _42, _43, _44, _45) fills cols:
   - _40 col1 row1   _41 col1 row2
   - _42 (is-big) col2 rows1-2 (full column)
   - _43 col3 row1   _44 col3 row2
   - _45 (is-big) col4 rows1-2 (full column) */
.product-loved-by_grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, minmax(0, 1fr));
  grid-auto-flow: column;
  gap: 0.5rem;
  height: clamp(28rem, 50vw, 44rem);
}
/* Wrappers from li-if:inside are transparent — let img act as the grid child */
.product-loved-by_grid > div { display: contents; }
.product-loved-by_img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.product-loved-by_img.is-big {
  grid-row: span 2;
}

.product-loved-by_col {
  display: none;
}   /* legacy class no longer used */

/* =============================================================
   DICOTA PDP — Product Comparison
   ============================================================= */
.section_product-comparison > .padding-global {
  padding-top: 0;
  padding-bottom: 0;
  background-color: #0f0f0f;
  color: #fff;
}
.product-comparison_layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  min-height: 44rem;
}
/* Brand side */
.product-comparison_brand {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  justify-content: center;
  padding: 3.75rem 2.5rem;
  color: #fff;
}
.product-comparison_brand-copy {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.product-comparison_brand-headline {
  font-family: "Futura PT", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.1;
  margin: 0;
  display: flex;
  flex-direction: column;
  color: #fff;
}
.product-comparison_hl-line {
  display: block;
}
.product-comparison_hl-line.is-accent {
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.product-comparison_brand-desc {
  font-size: 1.25rem;
  color: rgba(255,255,255,0.9);
  line-height: 1.3;
  margin: 0;
  font-weight: 700;
}
.product-comparison_founders {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.product-comparison_founders-img {
  width: 13.75rem;
  height: 9.25rem;
  object-fit: cover;
}
.product-comparison_founders-names {
  font-size: 1rem;
  font-weight: 700;
  margin: 0 0 0.1rem;
  color: #fff;
}
.product-comparison_founders-title {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.7);
  margin: 0;
}
/* Table side */
.product-comparison_table-outer {
  display: flex;
  align-items: center;
  padding: 5rem 3.75rem;
}
.product-comparison_table {
  width: 100%;
}
.product-comparison_thead,
.product-comparison_trow {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
}
.product-comparison_thead {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}
.product-comparison_trow {
  border-bottom: 1px solid rgba(255,255,255,0.08);
  padding: 0;
}
.product-comparison_trow:last-child { border-bottom: none; }
.product-comparison_tcell {
  padding: 1rem 1.25rem;
  font-size: 1rem;
  display: flex;
  align-items: center;
}
/* Header row */
.product-comparison_thead .product-comparison_tcell.is-label {
  background-color: transparent;
}
.product-comparison_thead .product-comparison_tcell.is-dicota {
  background-color: #fff;
  border-radius: 0.25rem 0.25rem 0 0;
  justify-content: center;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.product-comparison_thead .product-comparison_tcell.is-other {
  background-color: rgba(255,255,255,0.1);
  border-radius: 0.25rem 0.25rem 0 0;
  justify-content: center;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
/* Data rows */
.product-comparison_tcell.is-label {
  font-weight: 400;
  color: rgba(255,255,255,0.7);
  font-size: 1rem;
  background-color: rgba(255,255,255,0.07);
}
.product-comparison_tcell.is-dicota {
  background-color: #fff;
  color: #0f0f0f;
  font-weight: 700;
}
.product-comparison_tcell.is-other {
  background-color: rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.85);
}
.product-comparison_trow:last-child .product-comparison_tcell.is-dicota {
  border-radius: 0 0 0.25rem 0.25rem;
}
.product-comparison_trow:last-child .product-comparison_tcell.is-other {
  border-radius: 0 0 0.25rem 0.25rem;
}
.product-comparison_logo {
  max-height: 1.5rem;
  object-fit: contain;
}
.product-comparison_other-label {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.product-comparison_cell-val {
  line-height: 1.4;
}
.product-comparison_cell-val.is-featured {
  font-weight: 700;
  color: #0f0f0f;
}

/* =============================================================
   DICOTA PDP — Product Reviews
   ============================================================= */
.section_product-reviews > .padding-global {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #ffffff;
}
.product-reviews_layout {
  display: grid;
  grid-template-columns: 21.25rem 1fr;
  gap: 4rem;
  align-items: start;
}
/* Summary */
.product-reviews_summary {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  position: sticky;
  top: 2rem;
}
.product-reviews_rating-block {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.product-reviews_stars {
  display: flex;
  gap: 0.25rem;
  color: #f5a623;
}
.product-reviews_score {
  font-size: 1.5rem;
  font-family: "Futura PT", sans-serif;
  font-weight: 600;
  margin: 0;
}
.product-reviews_count {
  font-size: 0.875rem;
  color: #666666;
  margin: 0;
}
.product-reviews_breakdown {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.product-reviews_breakdown-title {
  font-size: 0.9375rem;
  font-weight: 600;
  margin: 0;
}
.product-reviews_bars {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.product-reviews_bar-row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.product-reviews_bar-label {
  font-size: 0.8125rem;
  min-width: 0.75rem;
  text-align: right;
}
.product-reviews_bar-track {
  flex: 1;
  height: .375rem;
  background-color: #eeeeee;
  border-radius: .1875rem;
  overflow: hidden;
}
.product-reviews_bar-fill {
  height: 100%;
  background-color: #000000;
  border-radius: .1875rem;
  transition: width 0.3s;
}
.product-reviews_write-btn {
  margin-top: 0.5rem;
}
/* Reviews list */
.product-reviews_items {
  display: flex;
  flex-direction: column;
}
.product-reviews_item {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 2rem 0;
  border-bottom: 1px solid #eeeeee;
}
.product-reviews_item:first-child { padding-top: 0; }
.product-reviews_item-stars {
  display: flex;
  gap: 0.25rem;
  color: #f5a623;
}
.product-reviews_item-hl {
  font-size: 1rem;
  font-weight: 600;
  font-family: "Futura PT", sans-serif;
  margin: 0;
}
.product-reviews_item-text {
  font-size: 0.9375rem;
  color: #444444;
  line-height: 1.6;
  margin: 0;
}
.product-reviews_item-footer {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.product-reviews_item-author {
  font-size: 0.875rem;
  font-weight: 600;
}
.product-reviews_item-date {
  font-size: 0.8125rem;
  color: #888888;
}
.product-reviews_more-btn {
  margin-top: 1.5rem;
  align-self: flex-start;
}

/* =============================================================
   DICOTA PDP — Product FAQ
   ============================================================= */
.section_product-faq > .padding-global {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #ffffff;
}
.product-faq_headline {
  margin-bottom: 2rem;
}
.product-faq_list {
  max-width: 48.75rem;
  margin: 0 auto;
}
.product-faq_items {
  display: flex;
  flex-direction: column;
}
.product-faq_item {
  border-bottom: 1px solid #e0e0e0;
}
.product-faq_question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  text-align: left;
  padding: 1.25rem 0;
  gap: 1rem;
  cursor: pointer;
}
.product-faq_question-text {
  font-size: 1rem;
  font-weight: 500;
  font-family: "Futura PT", sans-serif;
  line-height: 1.4;
}
.product-faq_icon {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  transition: transform 0.25s ease;
}
.product-faq_icon.is-open {
  transform: rotate(180deg);
}
.product-faq_answer {
  padding-bottom: 1.25rem;
}
.product-faq_answer-text {
  font-size: 0.9375rem;
  color: #444444;
  line-height: 1.7;
  margin: 0;
}

/* =============================================================
   DICOTA PDP — Add to Your Kit
   ============================================================= */
.section_product-add-to-kit > .padding-global {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #ffffff;
  color: #000000;
}
.product-add-to-kit_header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-bottom: 2.5rem;
}
.product-add-to-kit_headline {
  letter-spacing: 0.04em;
  margin: 0;
}
.product-add-to-kit_tabs {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.product-add-to-kit_tab {
  padding: 0.5rem 1.25rem;
  border: 1.5px solid #d0d0d0;
  border-radius: 2rem;
  background: transparent;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.18s, border-color 0.18s, color 0.18s;
  color: #111;
}
.product-add-to-kit_tab.is-active,
.product-add-to-kit_tab:hover {
  background-color: #111;
  border-color: #111;
  color: #fff;
}
.swiper.is-add-to-kit {
  overflow: visible;
}
.swiper-slide.is-add-to-kit {
  width: min(20.5rem, 80vw);
  flex-shrink: 0;
}
.product-add-to-kit_card {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.product-add-to-kit_img-wrap {
  aspect-ratio: 1 / 1;
  background-color: #f5f5f5;
  border-radius: 0.375rem;
  overflow: hidden;
}
.product-add-to-kit_img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 1rem;
  transition: transform 0.25s;
}
.product-add-to-kit_card:hover .product-add-to-kit_img { transform: scale(1.04); }
.product-add-to-kit_info {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.product-add-to-kit_cat {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #888;
  margin: 0;
}
.product-add-to-kit_name {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.3;
  margin: 0;
  color: #111;
}
.product-add-to-kit_price {
  font-size: 0.875rem;
  font-weight: 600;
  margin: 0.25rem 0 0.5rem;
  color: #111;
}
.product-add-to-kit_btn {
  display: block;
  padding: 0.6rem 1rem;
  background-color: #111;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  letter-spacing: 0.04em;
  border-radius: 0.25rem;
  transition: background 0.18s;
}
.product-add-to-kit_btn:hover { background-color: #333; }

/* =============================================================
   DICOTA PDP — Product Hero (ph_*)
   ============================================================= */

/* ── Layout ──────────────────────────────────────────────── */

.product-header_gallery {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
}

/* ── Gallery ─────────────────────────────────────────────── */

/* ── Product Details column ──────────────────────────────── */
/* Fixed comfortable reading width — gallery grows to fill the rest
   on bigger screens so images get bigger, not the form column. */
.product-header_details {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 2.5rem 2.25rem;
  flex: 0 0 auto;
  width: 100%;
  max-width: 32rem;
  justify-content: flex-start;
  align-items: stretch;
}
/* Every direct child of details column spans the full column width
   so title, USPs, price, options, buttons all line up vertically. */
.product-header_details > * {
  width: 100%;
  max-width: 100%;
}

/* ── Block: Produkt-Kopf ─────────────────────────────────── */
.ph_title {
  letter-spacing: 0.01em;
  margin: 0 0 0.5rem;
  color: #0f0f0f;
}
.ph_subtitle {
  font-size: 0.9375rem;
  color: #444;
  line-height: 1.5;
  margin: 0 0 0.75rem;
}
.ph_highlights {
  margin: 0;
}
.ph_highlights ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}
.ph_highlights li {
  font-size: 0.9375rem;
  font-weight: 600;
  color: #111;
  padding-left: 1.5rem;
  position: relative;
}
.ph_highlights li::before {
  content: "—";
  position: absolute;
  left: 0;
  color: #111;
}

/* ── Block: Preis ─────────────────────────────────────────── */
.ph_price-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
}
.ph_price-col {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
.ph_price-amount {
  display: flex;
  align-items: baseline;
  gap: 0.75rem;
}
.ph_price-value {
  font-size: 1.375rem;
  font-weight: 700;
  color: #0f0f0f;
}
.ph_price-compare {
  font-size: 1rem;
  color: #999;
  text-decoration: line-through;
}
.ph_price-note {
  font-size: 0.75rem;
  color: #888;
  margin: 0;
}
.ph_price-link {
  color: #888;
  text-decoration: underline;
}
.ph_rating {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  text-decoration: none;
  color: inherit;
  white-space: nowrap;
}
.ph_stars {
  --rating: 5;
  display: inline-block;
  width: 5rem;
  height: 1rem;
  background: linear-gradient(to right, #f5a623 calc(var(--rating) * 20%), rgba(0, 0, 0, .18) calc(var(--rating) * 20%));
  -webkit-mask: url(data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 12'><g fill='black'><polygon points='6,0 7.4,4.3 12,4.3 8.3,7 9.7,11.3 6,8.6 2.3,11.3 3.7,7 0,4.3 4.6,4.3'/><polygon points='18,0 19.4,4.3 24,4.3 20.3,7 21.7,11.3 18,8.6 14.3,11.3 15.7,7 12,4.3 16.6,4.3'/><polygon points='30,0 31.4,4.3 36,4.3 32.3,7 33.7,11.3 30,8.6 26.3,11.3 27.7,7 24,4.3 28.6,4.3'/><polygon points='42,0 43.4,4.3 48,4.3 44.3,7 45.7,11.3 42,8.6 38.3,11.3 39.7,7 36,4.3 40.6,4.3'/><polygon points='54,0 55.4,4.3 60,4.3 56.3,7 57.7,11.3 54,8.6 50.3,11.3 51.7,7 48,4.3 52.6,4.3'/></g></svg>) left/contain no-repeat;
  mask: url(data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 12'><g fill='black'><polygon points='6,0 7.4,4.3 12,4.3 8.3,7 9.7,11.3 6,8.6 2.3,11.3 3.7,7 0,4.3 4.6,4.3'/><polygon points='18,0 19.4,4.3 24,4.3 20.3,7 21.7,11.3 18,8.6 14.3,11.3 15.7,7 12,4.3 16.6,4.3'/><polygon points='30,0 31.4,4.3 36,4.3 32.3,7 33.7,11.3 30,8.6 26.3,11.3 27.7,7 24,4.3 28.6,4.3'/><polygon points='42,0 43.4,4.3 48,4.3 44.3,7 45.7,11.3 42,8.6 38.3,11.3 39.7,7 36,4.3 40.6,4.3'/><polygon points='54,0 55.4,4.3 60,4.3 56.3,7 57.7,11.3 54,8.6 50.3,11.3 51.7,7 48,4.3 52.6,4.3'/></g></svg>) left/contain no-repeat;
}
.ph_rating-score {
  font-size: 0.875rem;
  font-weight: 600;
  color: #111;
}
.ph_rating-count {
  font-size: 0.8125rem;
  color: #888;
}

/* ── Block: Kaufen ─────────────────────────────────────────── */
.ph_form {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.ph_options {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.ph_option {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.ph_option-label {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #111;
}
.ph_radio-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.ph_radio {
  display: flex;
  align-items: center;
  cursor: pointer;
  margin: 0;
}
.ph_radio-btn {
  display: none;
}
.ph_radio-label {
  padding: 0.2rem 0.875rem;
  border: 1px solid transparent;
  border-radius: 0;
  font-size: 0.75rem;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
  color: #686868;
  background: #fff;
}
.ph_radio .w-form-formradioinput--inputType-custom.w--redirected-checked ~ .ph_radio-label,
.ph_radio input:checked ~ .ph_radio-label {
  background-color: #f4f4f4;
  border-color: #d0d0d0;
  color: #0f0f0f;
}
.ph_delivery {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  color: #111;
}
.ph_delivery-dot {
  width: .5rem;
  height: .5rem;
  border-radius: 50%;
  background-color: #22c55e;
  flex-shrink: 0;
}
.ph_delivery.is-unavailable .ph_delivery-dot {
  background-color: #c0c0c0;
}
.ph_delivery.is-low .ph_delivery-dot {
  background-color: #f59e0b;
}
.ph_delivery strong { font-weight: 700; color: #22c55e; }
.ph_atc-wrap {
  width: 100%;
}
.ph_atc-btn {
  display: block;
  width: 100%;
  padding: 1rem;
  background-color: #0f0f0f;
  color: #fff;
  font-size: 0.9375rem;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  letter-spacing: 0.03em;
  border-radius: 2px;
  transition: background 0.18s;
  cursor: pointer;
  border: none;
}
.ph_atc-btn:hover { background-color: #333; }
.ph_atc-btn.is-disabled {
  background-color: #d0d0d0;
  color: #888;
  cursor: not-allowed;
}

/* Trust icons */
.ph_trust-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0.75rem;
  padding-top: 1rem;
  border-top: 1px solid #eeeeee;
}
.ph_trust-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.4rem;
  text-align: center;
}
.ph_trust-icon {
  width: 1.375rem;
  height: 1.375rem;
  color: #444;
}
.ph_trust-label {
  font-size: 0.6875rem;
  color: #666;
  line-height: 1.35;
}

/* ── Block: We Care Slider ─────────────────────────────────── */
.ph_we-care {
  border-top: 1px solid #eeeeee;
  padding-top: 1.25rem;
  overflow: clip;
}
/* Row: swiper on left, dots on right */
.ph_we-care-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.ph_we-care-row .swiper.is-we-care {
  flex: 1 1 auto;
  min-width: 0;
  overflow: visible;
}
.ph_we-care-slide {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.ph_we-care-badge {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  object-fit: contain;
  flex-shrink: 0;
}
.ph_we-care-text {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}
.ph_we-care-hl {
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f0f0f;
  margin: 0;
  line-height: 1.4;
}
.ph_we-care-link {
  font-size: 0.75rem;
  color: #686868;
  text-decoration: none;
}
.ph_we-care-dots {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: .3125rem;
  flex-shrink: 0;
  width: auto;
}
.ph_we-care-dots .swiper-pagination-bullet {
  width: .375rem;
  height: .375rem;
  border-radius: 50%;
  background: #d0d0d0;
  opacity: 1;
  display: block;
}
.ph_we-care-dots .swiper-pagination-bullet-active {
  background: #111;
}

/* ── Block: Beschreibungs-Tabs ─────────────────────────────── */
.ph_tabs-nav {
  display: flex;
  border-bottom: 1px solid #e0e0e0;
  gap: 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.ph_tabs-nav::-webkit-scrollbar { display: none; }
.ph_tab {
  padding: 0.75rem 1rem 0.6rem;
  font-size: 0.8125rem;
  font-weight: 500;
  color: #888;
  background: transparent;
  border: none;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  white-space: nowrap;
  transition: color 0.15s, border-color 0.15s;
  margin-bottom: -1px;
}
.ph_tab:hover { color: #111; }
.ph_tab.is-active {
  color: #111;
  font-weight: 700;
  border-bottom-color: #111;
}
.ph_tab-panels {
  padding-top: 1.25rem;
}
.ph_tab-panel {
  display: none;
  max-height: 8.75rem;
  overflow: hidden;
  position: relative;
}
.ph_tab-panel.is-expanded {
  max-height: none;
}
.ph_tab-panel::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2.5rem;
  background: linear-gradient(to bottom, transparent, #fff);
  pointer-events: none;
}
.ph_tab-panel.is-expanded::after { display: none; }
.ph_see-more {
  display: inline-block;
  margin-top: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: #111;
  text-decoration: underline;
  cursor: pointer;
}

/* ── Block: Upsell ──────────────────────────────────────────── */
.ph_upsell {
  border-top: 1px solid #eeeeee;
  padding-top: 1.25rem;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: clip;
}
.ph_upsell-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
}
.ph_upsell-title {
  font-size: 0.875rem;
  font-weight: 600;
  color: #111;
}
.ph_upsell-nav {
  display: flex;
  gap: 0.25rem;
}
.ph_upsell-prev, .ph_upsell-next {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  border: 1.5px solid #d0d0d0;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #111;
  transition: border-color 0.15s;
}
.ph_upsell-prev:hover, .ph_upsell-next:hover { border-color: #111; }
.ph_upsell-prev.swiper-button-disabled, .ph_upsell-next.swiper-button-disabled { opacity: 0.35; }
.swiper.is-upsell {
  overflow: visible;
}
.ph_upsell-card {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem;
  border: 1px solid #eeeeee;
  border-radius: .25rem;
}
.ph_upsell-img {
  width: 5rem;
  height: 5rem;
  object-fit: contain;
  background: #f5f5f5;
  border-radius: .25rem;
  flex-shrink: 0;
}
.ph_upsell-info {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  flex: 1;
}
.ph_upsell-name {
  font-size: 0.875rem;
  font-weight: 500;
  color: #111;
  line-height: 1.3;
}
.ph_upsell-price {
  font-size: 0.875rem;
  font-weight: 600;
  color: #111;
}
.ph_upsell-btn {
  display: inline-block;
  margin-top: 0.25rem;
  padding: 0.5rem 1rem;
  background: #111;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  border-radius: 2px;
  transition: background 0.15s;
}
.ph_upsell-btn:hover { background: #333; }
/* Form-Wrapper transparent halten, damit der Button im Flow bleibt wie zuvor */
.ph_upsell-form {
  display: contents;
}
.ph_upsell-name-link {
  text-decoration: none;
  color: inherit;
}
.ph_upsell-name-link:hover .ph_upsell-name { text-decoration: underline; }

/* ── Responsive ────────────────────────────────────────────── */

/* =============================================================
   DICOTA PDP — Linked-Product Variant Selectors
   (DICOTA pattern: variants are separate products, selectors link to them)
   ============================================================= */

.product-header_option-heading {
  margin-bottom: 0.375rem;
}
.product-header_option-heading .text-size-regular {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #111;
}
.produkt_swatch-component {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.produkt_swatch-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.produkt_swatch-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.375rem;
  width: 5rem;
}
.produkt_swatch-link {
  display: block;
  width: 5rem;
  height: 5rem;
  border: 1px solid #d0d0d0;
  background-color: #f6f6f6;
  overflow: hidden;
  transition: border-color 0.15s, opacity 0.15s;
  cursor: pointer;
}
.produkt_swatch-link:hover {
  border-color: #111;
}
.produkt_swatch-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.produkt_swatch-img.is-darken {
  mix-blend-mode: multiply;
}
.produkt_swatch-lable {
  font-size: 0.75rem;
  font-weight: 500;
  color: #0f0f0f;
  text-align: center;
  line-height: 1.2;
}
.produkt_swatch-lable.is-max {
  max-width: 5rem;
  word-break: break-word;
}

.product-header_radio:hover {
  background-color: #f4f4f4;
  border-color: transparent;
  color: #0f0f0f;
}

/* =============================================================
   DICOTA PDP — We Care / Sustainability Banner
   ============================================================= */
.section_we-care-banner > .padding-global {
  padding-left: 0;
  padding-right: 0;
}
.we-care-banner_inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 22.5rem;
  overflow: hidden;
}
.we-care-banner_bg-wrap {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.we-care-banner_bg-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.we-care-banner_overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.3);
}
.we-care-banner_content {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 2.5rem;
  text-align: center;
  max-width: 45rem;
  color: #fff;
}
.we-care-banner_counter-num {
  display: inline-block;
  font-family: "Futura PT", sans-serif;
  font-size: 2.25rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.08em;
  background-color: #0f0f0f;
  padding: 0.375rem 1.25rem;
  border-radius: .25rem;
}
.we-care-banner_headline {
  font-family: "Futura PT", sans-serif;
  font-size: 3rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 0.98;
  margin: 0;
  color: #fff;
}
.we-care-banner_desc {
  font-size: 1.25rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.3;
  margin: 0;
}
.we-care-banner_cta {
  display: inline-block;
  background-color: #fff;
  color: #0f0f0f;
  font-family: "Futura PT", sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  text-decoration: none;
  padding: 0.75rem 1.5rem;
  transition: background 0.15s;
  margin-top: 0.5rem;
}
.we-care-banner_cta:hover { background-color: #e8e8e8; }
.we-care-banner_badge {
  position: absolute;
  top: 0;
  right: 0;
  width: 17.5rem;
}
.we-care-banner_badge-img {
  width: 100%;
  height: auto;
  display: block;
}

/* =============================================================
   DICOTA — Collection Intro Section
   ============================================================= */
.section_collection-intro > .padding-global {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  background-color: #ffffff;
  color: #0f0f0f;
}

.collection-intro_layout {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 3rem;
  align-items: start;
}

.collection-intro_text-col {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding-top: 0.5rem;
}

.collection-intro_title {
  font-family: "Futura PT", sans-serif;
  font-size: 1.625rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.1;
  margin: 0;
}

.collection-intro_desc {
  color: #3a3a3a;
}

.collection-intro_tiles {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

.collection-intro_tile {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.collection-intro_tile-media {
  width: 100%;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background-color: #f6f6f6;
}

.collection-intro_tile-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.collection-intro_tile-caption {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

.collection-intro_tile-title {
  font-family: "Futura PT", sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin: 0;
  color: #0f0f0f;
}

.collection-intro_tile-text {
  font-size: 0.875rem;
  line-height: 1.5;
  color: #3a3a3a;
  margin: 0;
}

/* =============================================================
   DICOTA — Collection Products: Filter Bar
   ============================================================= */
.coll_filter-bar-outer {
  position: sticky;
  top: 4.5rem;
  z-index: 30;
  background-color: #ffffff;
  border-bottom: 1px solid #e8e8e8;
}

.coll_filter-bar-outer > .padding-global {
  padding-top: 0;
  padding-bottom: 0;
}

.coll_filter-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3rem;
}

.coll_filter-pills {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
}

.coll_filter-pill-group {
  position: relative;
}

.coll_filter-pill {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.875rem 1rem;
  background: none;
  border: none;
  border-right: 1px solid #e8e8e8;
  cursor: pointer;
  font-family: "Futura PT", sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  color: #0f0f0f;
  white-space: nowrap;
  transition: background-color 0.15s ease;
}

.coll_filter-pill:hover,
.coll_filter-pill.is-open {
  background-color: #f6f6f6;
}

.coll_filter-pill .icon-embed-xsmall {
  width: 0.875rem;
  height: 0.875rem;
  flex-shrink: 0;
  opacity: 0.6;
}

.coll_filter-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 14rem;
  background-color: #ffffff;
  border: 1px solid #e8e8e8;
  box-shadow: 0 4px 16px rgba(0,0,0,0.1);
  z-index: 100;
  padding: 0.5rem 0;
}

.coll_filter-option {
  padding: 0;
}

.coll_filter-checkbox {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  text-decoration: none;
  color: #0f0f0f;
  font-family: "Futura PT", sans-serif;
  font-size: 0.875rem;
  transition: background-color 0.1s ease;
  cursor: pointer;
}

.coll_filter-checkbox:hover {
  background-color: #f6f6f6;
}

.coll_filter-checkbox.is-active .coll_filter-checkbox-box {
  background-color: #0f0f0f;
  border-color: #0f0f0f;
  color: #ffffff;
}

.coll_filter-checkbox-box {
  width: 1rem;
  height: 1rem;
  border: 1.5px solid #c0c0c0;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.coll_filter-checkbox-label {
  flex: 1 1 auto;
}

.coll_filter-count {
  opacity: 0.5;
  font-size: 0.8125rem;
}

/* Sort */
.coll_sort-wrap {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
  padding: 0.875rem 0 0.875rem 1rem;
  border-left: 1px solid #e8e8e8;
}

.coll_sort-label {
  font-family: "Futura PT", sans-serif;
  font-size: 0.875rem;
  color: #686868;
  white-space: nowrap;
}

.coll_sort-inner {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.coll_sort-select {
  appearance: none;
  -webkit-appearance: none;
  border: none;
  background: transparent;
  font-family: "Futura PT", sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: #0f0f0f;
  cursor: pointer;
  padding-right: 1.25rem;
}

.coll_sort-select:focus {
  outline: none;
}

.coll_sort-inner .icon-embed-xsmall {
  width: 0.875rem;
  height: 0.875rem;
  pointer-events: none;
  position: absolute;
  right: 0;
  opacity: 0.6;
}

/* =============================================================
   DICOTA — Collection Products: Grid
   ============================================================= */
.section_collection-products > .padding-global:last-of-type {
  padding-top: 2rem;
  padding-bottom: 5rem;
}

.coll_grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem 1rem;
  align-items: start;
}

/* Promo Card — spans 2 columns */
.coll_promo-card {
  grid-column: span 2;
  background-color: #162040;
  color: #ffffff;
  overflow: hidden;
  min-height: 28.6875rem;
}

.coll_promo-card_inner {
  display: flex;
  height: 100%;
  min-height: 28.6875rem;
  position: relative;
  overflow: hidden;
}

.coll_promo-card_content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 0.875rem;
  padding: 2.5rem;
  flex: 0 0 50%;
  max-width: 50%;
}

.coll_promo-card_title {
  font-family: "Futura PT", sans-serif;
  font-size: 1.75rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.05;
  color: #ffffff;
  margin: 0;
}

.coll_promo-card_desc {
  color: rgba(255,255,255,0.85);
  margin: 0;
}

.coll_promo-card_cta {
  display: inline-block;
  padding: 0.625rem 1.25rem;
  background-color: #ffffff;
  color: #0f0f0f;
  font-family: "Futura PT", sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  text-decoration: none;
  width: fit-content;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.coll_promo-card_cta:hover {
  background-color: #e8e8e8;
}

.coll_promo-card_media {
  flex: 1 1 auto;
  position: relative;
  overflow: hidden;
}

.coll_promo-card_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* Empty state */
.coll_empty {
  grid-column: 1 / -1;
  padding: 4rem 2rem;
  text-align: center;
}

/* =============================================================
   DICOTA — Collection Header Section
   ============================================================= */
.section_collection-header {
  width: 100%;
  display: block;
}

.section_collection-header > .padding-global {
  padding-top: 3.75rem;
  padding-bottom: 6.25rem;
  background-color: #ffffff;
  color: #0f0f0f;
}

.collection-header_layout {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  width: 100%;
}

.collection-header_content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
  width: 100%;
}

.collection-header_title {
  font-family: "Futura PT", sans-serif;
  font-weight: 700;
  font-size: 3rem;
  line-height: 0.98;
  text-transform: uppercase;
  letter-spacing: 0;
  margin: 0;
  color: inherit;
}

.collection-header_desc {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.26;
  max-width: 29rem;
  margin: 0;
  color: inherit;
  text-align: center;
}

.collection-header_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 1.5rem;
  font-family: "Futura PT", sans-serif;
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.1);
}

.collection-header_media {
  width: 100%;
  margin: 0;
  aspect-ratio: 1360 / 373;
  overflow: hidden;
}

.collection-header_image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* =============================================================
   DICOTA — Feature Product Section
   ============================================================= */
.section_feature-product {
  width: 100%;
}

.section_feature-product > .padding-global {
  padding-top: 3.75rem;
  padding-bottom: 6.25rem;
  background-color: #ffffff;
  color: #0f0f0f;
}

.feature-product_card {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  background-color: #f6f6f6;
  aspect-ratio: 1360 / 481;
  min-height: 23.75rem;
  width: 100%;
  margin: 0;
  overflow: hidden;
}

.feature-product_media {
  position: relative;
  padding: .625rem;
  overflow: hidden;
  background-color: #f6f6f6;
}

.feature-product_image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.feature-product_favorite {
  position: absolute;
  top: 1.125rem;
  right: 1.125rem;
  width: 1.75rem;
  height: 1.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  border: none;
  cursor: pointer;
  color: #0f0f0f;
  padding: 0;
}

.feature-product_content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 1rem;
  padding: 1.5rem 3.75rem;
}

.feature-product_title {
  font-family: "Futura PT", sans-serif;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: 0;
  margin: 0;
  color: inherit;
}

.feature-product_desc {
  font-family: "Futura PT", sans-serif;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.34;
  margin: 0;
  color: inherit;
}

.feature-product_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 1.5rem;
  font-family: "Futura PT", sans-serif;
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.1);
}

/* =============================================================
   DICOTA — About Us Page (Heading H1, Boxed Image, Why Us,
   History, Owner, Discover, Triple Cards)
   Generic utility classes used across marketing pages.
   ============================================================= */

/* Utilities */
.default-flex-small {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}
.default-flex-tiny {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.75rem;
}
.default-regular-component {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.default-space-between {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  align-items: center;
  justify-content: space-between;
}
.default-bg-wrapper {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.default-bg-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.button-wrapper {
  display: inline-flex;
  justify-content: flex-start;
  align-items: flex-start;
}
.text-style-subline {
  text-transform: uppercase;
  font-size: 0.875rem;
  line-height: 1.35;
  letter-spacing: 0.04em;
  color: #686868;
}
.icon-1x1-xlarge {
  width: 3rem;
  height: 3rem;
  display: block;
}

/* Section: Heading H1 */
.section_heading-h1 {
  width: 100%;
}
.heading-h1_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem 12rem;
  align-items: start;
}

/* Section: Boxed Image */
.section_boxed-image {
  width: 100%;
}
/* Ein einzelnes Bild über die volle Breite, natürliches Seitenverhältnis */
.section_boxed-image .boxed-image_image {
  display: block;
  width: 100%;
  height: auto;
}

/* Section: Why Us */
.section_why-us {
  width: 100%;
}
.why-us_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
}
.icon-cards_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid #e8e8e8;
  border-bottom: none;
}
.icon-cards_card {
  display: flex;
  flex-direction: column;
  gap: 3.75rem;
  border-bottom: 1px solid #e8e8e8;
  padding: 2.5rem 1.5rem;
  position: relative;
}
.icon-cards_card.is-line-right {
  border-right: 1px solid #e8e8e8;
}
.icon-cards_card.is-line-left {
  border-left: 1px solid #e8e8e8;
}
.icon-cards_card.is-image {
  z-index: 1;
  color: #ffffff;
  justify-content: flex-end;
  align-items: flex-start;
}
.icon-cards_bg-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.company_icon-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 3rem 6rem;
  color: inherit;
}
.company_icon-block {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.company_icon-text {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

/* Section: History Swiper */
.section_history {
  width: 100%;
}
.swiper_component.is-history-swiper {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.history_pagination {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.history_drag-wrapper {
  position: relative;
  background-color: rgba(15, 15, 15, 0.1);
  border-radius: 100vw;
  width: 100%;
  min-width: 18rem;
  height: .25rem;
}
.history_drag {
  background-color: #0f0f0f;
  border-radius: 50%;
  width: 1.875rem;
  height: 1.875rem;
}
.history_swiper-wrapper {
  position: relative;
  z-index: 1;
}
.history_bg-line {
  position: absolute;
  inset: auto 0 2.5rem;
  background-color: #c8c8c8;
  width: 100%;
  height: 1px;
  z-index: -1;
}
.swiper.is-history-swiper {
  overflow: visible;
}
.swiper-slide.is-history-swiper {
  width: 20rem;
  display: flex;
  flex-direction: column;
}
.history_slide-content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  background-color: #ffffff;
  margin-bottom: 0.75rem;
  padding: 1rem 1rem 1.75rem;
  position: relative;
  color: #000000;
}
.history_slide-image {
  width: 100%;
  aspect-ratio: 2 / 1;
  object-fit: contain;
  display: block;
}
.history_slide-text {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  padding: 0 0.75rem;
}
.history_slide-svg {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 0.625rem;
  height: 2.75rem;
}

/* Section: Owner */
.section_owner {
  width: 100%;
}
.owner_grid {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 2rem 10rem;
  align-items: center;
}
.owner_main-component {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: stretch;
  min-height: 35rem;
}
.owner_text-wrapper {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  background-color: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(.5rem);
  -webkit-backdrop-filter: blur(.5rem);
  border: 1px solid rgba(255, 255, 255, 0.5);
  padding: 1rem;
}
.owner_text-block {
  flex: 1 1 12rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.25rem;
}

/* Section: Discover */
.section_discover {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  min-height: 80dvh;
  width: 100%;
}
.discover_image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.discover_item {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
}
.discover_item-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 2rem;
  width: 100%;
  max-width: 27.5rem;
  height: 100%;
  padding: 4rem 2.5rem 4rem 6.25rem;
  color: #ffffff;
}
.discover_item .heading-style-h2 {
  color: inherit;
}

/* Section: Triple Cards / Solutions */
.section_solutions {
  width: 100%;
}
.solutions_grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0.875rem;
}
.solutions_grid.is-3-columns {
  grid-template-columns: repeat(3, 1fr);
}
.image-card_item {
  position: relative;
  overflow: hidden;
  color: #ffffff;
}
.image-card_link {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  min-height: 20rem;
  padding: 1.5rem;
  gap: 1.25rem;
  text-decoration: none;
  color: inherit;
}
.image-card_link.is-large {
  min-height: 30rem;
}
.image-card_bg-wrapper {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
}
.image-card_bg-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease-out;
  display: block;
}
.image-card_bg-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0));
  opacity: 0.7;
  transition: opacity 0.4s ease-out;
  z-index: 2;
}
.image-card_button-wrapper {
  opacity: 0;
  margin-bottom: -4.5rem;
  transition: margin 0.4s ease-out, opacity 0.4s ease-out;
  overflow: hidden;
}
.image-card_link:hover .image-card_bg-image {
  transform: scale(1.04);
}
.image-card_link:hover .image-card_bg-overlay {
  opacity: 0.85;
}
.image-card_link:hover .image-card_button-wrapper {
  opacity: 1;
  margin-bottom: 0;
}
.button.is-white {
  background-color: #ffffff;
  color: #0f0f0f;
  border-color: #ffffff;
}
.button.is-white:hover {
  background-color: transparent;
  color: #ffffff;
  border-color: #ffffff;
}
.button.is-image-card {
  display: inline-flex;
  align-items: center;
  padding: 0.6rem 1.25rem;
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* Responsive — About Us */

/* =============================================================
   DICOTA — Career Page (Team, 4 Cards Swiper, Benefits,
   Value Tabs, Jobs Filter+List, FAQ, Job Details Article)
   ============================================================= */

/* Generic helpers used across career sections */
.default-medium-component {
  display: flex;
  flex-direction: column;
  gap: 3.75rem;
}
.icon-1x1-huge {
  width: 5rem;
  height: 5rem;
  display: block;
}
.icon-1x1-tiny {
  width: 1rem;
  height: 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
}

/* Section: Boxed Image Center */
.section_boxed-image-center {
  width: 100%;
}
.boxed-image_image-centerd {
  width: 100%;
  height: auto;
  display: block;
}

.swiper_navigation {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.swiper_navigation.is-absolute {
  position: absolute;
  inset: auto 1rem 1rem auto;
  z-index: 10;
}

/* Section: 4 Cards Swiper (extends Triple Cards layout) */
.section_triple-cards {
  width: 100%;
}
.swiper.is-quad-cards {
  width: 100%;
  overflow: hidden;
}
.swiper-slide.is-quad-cards {
  height: auto;
  display: flex;
}
.swiper-slide.is-quad-cards .image-card_item {
  width: 100%;
}

/* Section: Benefits */
.section_benefits {
  width: 100%;
}
.benefits_grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 3.75rem 3rem;
}
.benefits_item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}
.benefits_text-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
}

/* Section: Value Tabs */
.section_value-tabs {
  width: 100%;
  background-color: #f4f4f4;
}
/* Value Tabs — single block source approach:
   Each .value-tabs_item contains both the LINK and the PANE.
   `display: contents` makes the item invisible to layout so its
   children (link + pane) become direct grid children of .value-tabs_component:
   - all links flow into the first column (menu)
   - all panes overlap in the second column (body) — only the active is visible
   This way we only need ONE block type ("Tab") + ONE li-cf-theme-blocks, which
   avoids the Shopify preset validation error on nested tab-pane blocks. */
.value-tabs_component {
  display: grid;
  grid-template-columns: 1fr 2.5fr;
  grid-auto-rows: min-content;
  column-gap: 4rem;
  row-gap: 0.5rem;
}
.value-tabs_menu {
  grid-column: 1;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-bottom: 1rem;
}
.value-tabs_blocks {
  display: contents;
}
.value-tabs_item {
  display: contents;
}
.value-tabs_link {
  grid-column: 1;
  text-align: left;
  background: transparent;
  border: 0;
  padding: 1rem 1.25rem;
  font-size: 1.375rem;
  font-weight: 500;
  color: #686868;
  cursor: pointer;
  transition: color 0.15s, border-color 0.15s, background-color 0.15s;
  border-left: 2px solid transparent;
}
.value-tabs_link:hover { color: #0f0f0f; }
.value-tabs_link.is-active {
  color: #0f0f0f;
  border-left-color: #0f0f0f;
  background-color: rgba(15, 15, 15, 0.04);
}
.value-tabs_pane {
  grid-column: 2;
  grid-row: 1 / -1;
  background-color: #ffffff;
  padding: 0.25rem;
  align-self: start;
}
.value-tabs_image {
  width: 100%;
  height: auto;
  max-height: 18rem;
  object-fit: cover;
  display: block;
}
.value-tabs_content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.5rem;
  padding: 2.5rem;
}

/* Section: Jobs */
.section_jobs {
  width: 100%;
}
.jobs_layout {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 4rem 10rem;
  align-items: start;
}

.filter_form-block.w-form {
  margin: 0;
}
.filter_form-inner {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.filter_outer-heading {
  margin-bottom: 0.5rem;
}
.filter_job-form {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.filter_filter-group-list {
  display: flex;
  flex-direction: column;
}
.filter_filter-group {
  border-top: 1px solid #e8e8e8;
}
.filter_filter-group:last-child {
  border-bottom: 1px solid #e8e8e8;
}
.filter_accordion {
  display: flex;
  flex-direction: column;
}

.filter_filter-arrow {
  transition: transform 0.2s ease;
}
.filter_filter-arrow.is-open {
  transform: rotate(180deg);
}
.filter_filter-options {
  overflow: hidden;
  padding-bottom: 0.75rem;
}
.filter_list-wrapper {
  overflow: hidden;
}
.filter_list {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.filter_item {
  display: flex;
  align-items: center;
}

.jobs_right {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.jobs_list {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.jobs_item {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  background-color: #f4f4f4;
  padding: 1.5rem;
  text-decoration: none;
  color: inherit;
  transition: background-color 0.15s;
}
.jobs_item:hover {
  background-color: #ebebeb;
}
.jobs_item-top {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
}
.jobs_item-heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
}
.jobs_item-location {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ffffff;
  padding: 0.75rem;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.15);
  flex: none;
}
.jobs_item-bottom {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.jobs_item-attribute {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.jobs_cta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  padding: 1.5rem;
  color: #ffffff;
}
.jobs_cta .jobs_item-heading {
  flex: 1 1 16rem;
}

/* Section: FAQ */
.section_faq {
  width: 100%;
  background-color: #f4f4f4;
}
.faq_wrapper {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 1.75rem;
}
.faq_component {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-self: stretch;
}
.faq_item {
  background-color: #ffffff;
  cursor: pointer;
}
.faq_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding: 1.25rem;
  user-select: none;
}
.faq_icon-outer {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  background-color: #ffffff;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
  flex: none;
}
.faq_icon-line {
  background-color: #0f0f0f;
  width: 1rem;
  height: 1px;
}
.faq_icon-line.is-rotating {
  position: absolute;
  inset: auto;
  transform: rotate(90deg);
  transition: transform 0.3s ease-in-out;
  z-index: 1;
}
.faq_icon-line.is-rotating.is-open {
  transform: rotate(0deg);
}
.faq_body {
  display: grid;
  grid-template-rows: 0fr;
  padding: 0 1.25rem;
  transition: grid-template-rows 0.3s ease, padding 0.3s ease;
}
.faq_body.is-open {
  grid-template-rows: 1fr;
  padding-bottom: 1.25rem;
}
.faq_body-content {
  overflow: hidden;
}

/* Section: Article (Job Details / Article style) */
.section_article {
  width: 100%;
  background-color: #ffffff;
}
.article_grid {
  display: grid;
  grid-template-columns: 2.5fr 1fr;
  gap: 5rem;
  align-items: start;
}

.article_button-wrapper {
  display: flex;
  align-items: center;
}
.article_button {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #0f0f0f;
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s;
}
.article_button:hover {
  color: #686868;
}
.article_button-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.article_header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .75rem;
  width: 100%;
  max-width: 47.5rem;
  text-align: center;
}
.blog-hero_top-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
}

.blog_tag.is-large {
  padding: 0.3rem 1rem;
  font-size: 0.875rem;
}
.blog_tag.is-large.is-dark {
  background-color: #f4f4f4;
}

/* Rich text (used on Job Details) */
.text-rich-text h1,
.text-rich-text h2,
.text-rich-text h3,
.text-rich-text h4 {
  margin-top: 1.5em;
  margin-bottom: 0.5em;
}
.text-rich-text p {
  margin-bottom: 1em;
  line-height: 1.6;
}
.text-rich-text ul,
.text-rich-text ol {
  padding-left: 1.5em;
  margin-bottom: 1em;
}
.text-rich-text li {
  margin-bottom: 0.4em;
  line-height: 1.6;
}
.text-rich-text a {
  color: inherit;
  text-decoration: underline;
}

/* Responsive — Career */

/* =============================================================
   DICOTA — Sustainability Page (Image Hero, 4 Icons,
   Split Image Left/Right)
   ============================================================= */

/* Section: Image Hero (full-bleed text-over-image) */
.section_image-hero {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  min-height: 60vh;
  overflow: hidden;
}
.section_image-hero .default-bg-wrapper {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.section_image-hero .default-bg-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.default-bg-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(59deg, rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0));
  z-index: 1;
}
.section_image-hero .padding-global,
.section_image-hero .container-large {
  position: relative;
  z-index: 2;
}

/* Section: 4 Icons (stats strip on light grey) */
.section_icons {
  width: 100%;
  background-color: #f4f4f4;
}
.company_icon {
  width: 4rem;
  height: 4rem;
  display: block;
}

/* Section: Split Image (Left + Right) */
.section_split-image-left,
.section_split-image-right {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  width: 100%;
}
.split-image_image-block {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.split-image_image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.split-image_content-wrapper {
  width: 100%;
  max-width: 40.5rem;
  padding-top: 6.25rem;
  padding-bottom: 6.25rem;
}
.split-image_content-wrapper.is-left-image {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 1.5rem;
  padding-left: 6.25rem;
  padding-right: 2.5rem;
}
.split-image_content-wrapper.is-right-image {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 1.5rem;
  padding-left: 2.5rem;
  padding-right: 6.25rem;
  margin-left: auto;
}

/* =============================================================
   DICOTA — Image-Text (merged Left/Right → one section)
   Image position is merchant-controllable via image_position select.
   Base classes drive builder/local preview; .is-image-right
   modifier (from li-attribute:class) controls production.
   ============================================================= */
.section_split-image {
  width: 100%;
}
.section_split-image .split-image_layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  width: 100%;
}
.section_split-image .split-image_image-block {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.section_split-image .split-image_image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.section_split-image .split-image_content-wrapper {
  width: 100%;
  max-width: 40.5rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 1.5rem;
  padding: 6.25rem 2.5rem 6.25rem 6.25rem;
}
/* image right: swap grid order + mirror padding */
.section_split-image .split-image_layout.is-image-right .split-image_image-block { order: 2; }
.section_split-image .split-image_layout.is-image-right .split-image_content-wrapper {
  order: 1;
  margin-left: 0;
  margin-right: auto;
  padding: 6.25rem 6.25rem 6.25rem 2.5rem;
}
@media (max-width: 991px) {
  .section_split-image .split-image_layout,
  .section_split-image .split-image_layout.is-image-right { grid-template-columns: 1fr; }
  .section_split-image .split-image_image-block,
  .section_split-image .split-image_layout.is-image-right .split-image_image-block { order: 0; min-height: 60vw; }
  .section_split-image .split-image_content-wrapper,
  .section_split-image .split-image_layout.is-image-right .split-image_content-wrapper {
    order: 0;
    max-width: none;
    padding: 2.5rem 1.25rem;
  }
}

/* Responsive — Sustainability */

/* =============================================================
   DICOTA — Account Templates (Subnav, Acc Hero, Acc Home Cards,
   Acc Home Dis, Acc Home Welcome, Acc Home Hero, Acc Home,
   Acc News, Acc Downloads, Banner variants)
   ============================================================= */

/* Section: Account Subnav (sticky sub-navigation) */
.section_acc-subnav {
  width: 100%;
}
.subnav_component {
  position: sticky;
  top: 4.5rem;
  z-index: 80;
  background-color: #ffffff;
  border-bottom: 1px solid #e8e8e8;
  width: 100%;
  padding: 0 2.5rem;
}
.subnav_menu {
  width: 100%;
}
.subnav_wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
}
.subnav_dropdown {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  font-size: 0.875rem;
}
.subnav_dropdown-toggle {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 1rem 0;
  cursor: pointer;
  transition: color 0.2s ease-out;
  user-select: none;
}
.subnav_dropdown-toggle:hover,
.subnav_dropdown-toggle.is-open {
  color: var(--base-color-brand--blue, #4d65ff);
}

.nav_secondary-content.is-subnav {
  position: absolute;
  inset: 100% 0 auto auto;
  background-color: #ffffff;
  border: 1px solid #e8e8e8;
  border-top: none;
  padding: 2rem 2.5rem;
  min-width: 30rem;
  z-index: 100;
}
.subnav_dropdown-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem 3rem;
}
.subnav_dropdown-item,
.subnav_child-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.subnav_dropdown-link {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  text-decoration: none;
  color: inherit;
  padding: 0.25rem 0;
  transition: color 0.15s;
}
.subnav_dropdown-link:hover {
  color: var(--base-color-brand--blue, #4d65ff);
}
.subnav_child-link {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  text-decoration: none;
  color: inherit;
}
.subnav_points {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  flex: none;
}
.text-color-blue {
  color: var(--base-color-brand--blue, #4d65ff);
}

/* Section: Acc Hero */
.section_acc-hero {
  position: relative;
  z-index: 1;
  overflow: hidden;
  width: 100%;
}
.account-hero_wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  gap: 1rem;
  max-width: 40rem;
  min-height: 18rem;
}
.acc-hero_bg-wrapper {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.acc-hero_bg-container {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  max-width: 76rem;
  height: 100%;
  margin: 0 auto;
  padding: 0 2.5rem;
}
.acc-hero_bg-image {
  width: 100%;
  max-width: 40rem;
  height: 80%;
  object-fit: cover;
  display: block;
}

/* Section: Acc Home Cards (8-card icon grid) */
.section_acc-cards {
  width: 100%;
  background-color: #f4f4f4;
}
.acc-cards_heading {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  align-items: start;
  justify-content: space-between;
}
.acc-cards_grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border: 1px solid #e8e8e8;
  border-bottom: none;
  background-color: #ffffff;
}

/* Section: Acc Home Dis (Distributoren tabs) */
.section_acc-dis {
  width: 100%;
  background-color: #f4f4f4;
}
.acc-dis_tab-component {
  display: grid;
  grid-template-columns: 1fr 2.5fr;
  gap: 0.5rem;
  align-items: start;
}
.acc-dis_tab-menu {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  background-color: #ffffff;
  padding: 0.5rem;
}
.acc-dis_tab-link {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  background: transparent;
  border: 0;
  padding: 0.5rem;
  font-weight: 500;
  cursor: pointer;
  color: inherit;
  text-align: left;
  transition: background-color 0.15s;
}
.acc-dis_tab-link:hover {
  background-color: #f4f4f4;
}
.acc-dis_tab-link.is-active {
  background-color: #f4f4f4;
}
.acc-dis_tab-pane {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
  background-color: #ffffff;
  padding: 2.5rem;
}
.acc-dis_logo {
  width: 100%;
  height: 100%;
  max-height: 4rem;
  object-fit: contain;
  display: block;
}

/* Section: Acc Home Welcome */
.section_acc-welcome {
  width: 100%;
}
.acc-welcome_wrapper {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.acc-welcome_top {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
  background-color: #f4f4f4;
  padding: 0.75rem;
}

/* Section: Acc Home Hero (split greeting hero) */
.section_split-hero {
  position: relative;
  z-index: 1;
  width: 100%;
  overflow: hidden;
}
.section_split-hero.background-color-primary {
  color: #ffffff;
}
.split-hero_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem 14rem;
  align-items: center;
}
.split-hero_content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.5rem;
  min-height: 15rem;
}
.split-hero_bg-wrapper {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.split-hero_bg-image {
  grid-column: 2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Section: Acc Home / Acc News / Acc Download / Acc D Banners — shared layout */
.section_acc-default {
  width: 100%;
  background-color: #f4f4f4;
  padding-right: 0rem;
}
.acc-default_wrapper {
  display: flex;
  flex-direction: column;
  gap: 3.75rem;
}
.acc-default_flex-small {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

/* Breadcrumbs */
.breadcrumbs_component {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding-left: 0;
  margin: 0;
  list-style: none;
}
.breadcrumbs_item {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  white-space: nowrap;
  margin: 0;
}
.breadcrumbs_item a {
  text-decoration: none;
  color: inherit;
}
.breadcrumbs_icon {
  flex: none;
  width: 0.9375rem;
  height: 0.9375rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Acc Cards (white card with content) */
.acc-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 1.5rem;
  background-color: #ffffff;
  padding: 2.5rem;
}
.acc-card.is-small {
  padding: 1.5rem;
  gap: 1rem;
}
.acc-card.is-dark {
  background-color: #ebebeb;
}
.acc-card.gap-2-5 {
  gap: 2.5rem;
}
.acc-card_16-9-image {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
}
.acc-card_3-2-image {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  display: block;
}
.acc-card_content {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.acc-card_download-content {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  align-self: stretch;
  gap: 0.5rem;
}
.acc_cta-icon {
  width: 2.5rem;
  height: 2.5rem;
  display: block;
  flex: none;
}

/* Acc Banner (2-column dark banner with image + content) */
.acc-banner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  background-color: #0f0f0f;
  padding: 0.375rem;
  gap: 0;
}
.acc-banner_image {
  width: 100%;
  height: auto;
  max-height: 30rem;
  object-fit: cover;
  display: block;
}
.acc-banner_content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  gap: 1.5rem;
  padding: 4rem;
}
.acc-banner_heading {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.acc-banner_tag-row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.acc-banner_tag {
  border: 1px solid #ffffff;
  padding: 0.375rem 0.5rem;
}
.acc-banner_button-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
}

/* Acc CTA (highlighted CTA strip) */
.acc_cta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 2.5rem;
  padding: 1.25rem 1.75rem;
}
.acc_cta.is-grey {
  background-color: #ebebeb;
}
.acc_cta-content {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 1.5rem;
  flex: 1 1 20rem;
}
.acc_cta-content.is-grey {
  align-items: center;
}
.acc_cta-text {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.background-color-red {
  background-color: #c0392b;
  color: #ffffff;
}

/* Acc Double + Acc Triple grids */
.acc-double {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  align-self: stretch;
  align-items: start;
}
.acc-triple {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  align-self: stretch;
}

/* Acc Banner Item (smaller banner pattern with image + text) */
.acc_banner-item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1.5rem;
  background-color: #ffffff;
  align-self: stretch;
}
.acc_banner-item.is-large {
  gap: 5rem;
  padding: 1.5rem;
}
.acc_banner-content {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.acc_banner-content.is-large {
  justify-content: center;
  align-items: flex-start;
  align-self: stretch;
  gap: 0.5rem;
}
.acc_banner-image {
  width: 100%;
  max-width: 8rem;
  height: 100%;
  object-fit: cover;
  display: block;
}
.acc_banner-image.is-large {
  max-width: 20rem;
  max-height: 16rem;
}
.acc_banner-image.is-medium {
  max-width: 12rem;
}
.acc_tag-list {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

.default-small-component {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}

/* Responsive — Account Templates */

/* =============================================================
   DICOTA — Account Marketing (Search form, Download Items)
   ============================================================= */

/* Search/Filter input inside acc-card */
.acc_form-block {
  align-self: stretch;
  margin: 0;
}
.acc_form {
  margin: 0;
}
.filter_input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.filter_input {
  width: 100%;
  height: 2.5rem;
  padding: 0.75rem 0.75rem 0.75rem 2.5rem;
  border: 0;
  border-bottom: 1px solid #d8d8d8;
  background-color: #f4f4f4;
  color: #0f0f0f;
  font-weight: 500;
  line-height: 1;
  margin: 0;
  transition: border-color 0.2s, background-color 0.2s;
}
.filter_input:focus {
  outline: 0;
  border-bottom-color: var(--base-color-brand--blue, #4d65ff);
  background-color: #ebebeb;
}
.filter_input::placeholder {
  color: #6b6b6b;
}
.filter_input.is-white-bg {
  background-color: #ffffff;
}
.filter_left-icon {
  position: absolute;
  inset: auto auto auto 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  color: #0f0f0f;
}

/* Download Item (bordered download row inside acc-card) */
.acc_download-item {
  width: 100%;
  background-color: #f4f4f4;
}
.acc_download-item.background-color-secondary {
  background-color: #f4f4f4;
}
.acc_download-banner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-self: stretch;
  gap: 2rem;
  padding: 1.5rem;
  text-decoration: none;
  color: inherit;
  transition: background-color 0.15s;
}
.acc_download-banner.w-inline-block:hover {
  background-color: #ebebeb;
}
.acc_download-banner.is-large {
  padding: 2.5rem;
}
.acc_download-banner-left {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.acc_download-banner-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.6rem;
}
.acc_download-banner-heading {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

/* =============================================================
   DICOTA — Account Punkte (Gutschein-Form, Support-Cards,
   FAQ Account variant, Double Icons)
   ============================================================= */

/* FAQ variants used inside acc-cards (larger padding) */
.faq_header.is-account {
  padding: 2rem 2.5rem;
}
.faq_body.is-account {
  padding: 0 2.5rem;
}
.faq_body.is-account.is-open {
  padding-bottom: 1.5rem;
}
.faq_icon-outer.is-grey {
  background-color: #ebebeb;
  box-shadow: none;
}

/* Gutschein / Punkte-Auszahlung Form (floating labels) */
.acc_gutschein-form-wrapper {
  display: flex;
  flex-direction: column;
  position: sticky;
  top: 9rem;
}
.acc_gutschein-form-block {
  align-self: stretch;
  margin: 0;
}
.acc_gutschein-form {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  background-color: #ffffff;
  padding: 2.5rem;
  margin: 0;
}

.form_input.is-gutschein-form {
  border: 0;
  border-bottom: 1px solid #d8d8d8;
  background-color: transparent;
  padding: 0.75rem 0;
  min-height: 2.5rem;
  width: 100%;
  margin: 0;
  font-weight: 500;
  transition: border-color 0.2s;
}
.form_input.is-gutschein-form:focus {
  outline: 0;
  border-bottom-color: #0f0f0f;
}
.form_input.is-gutschein-form::placeholder {
  color: transparent;
}
.form_label.is-gutschein-form {
  position: absolute;
  top: 0.75rem;
  left: 0;
  background-color: transparent;
  pointer-events: none;
  color: #6b6b6b;
  font-weight: 400;
  transition: all 0.15s ease-out;
}
.form_input.is-gutschein-form:focus + .form_label.is-gutschein-form,
.form_input.is-gutschein-form:not(:placeholder-shown) + .form_label.is-gutschein-form {
  top: -0.7rem;
  font-size: 0.7rem;
  color: #0f0f0f;
}

/* Security icons row below form */
.acc_double-icons-list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  margin-top: 1rem;
  padding: 1rem 0;
}
.acc_double-icons-item {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

/* Support Card (contact card with bg image + glassy content) */
.acc_support-card {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: stretch;
  aspect-ratio: 1;
  width: 100%;
  padding: 0.375rem;
  overflow: hidden;
}
.acc_support-card .default-bg-wrapper {
  z-index: -1;
}
.acc_support-card-content {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 2rem;
  padding: 1rem;
  background-color: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(.875rem);
  -webkit-backdrop-filter: blur(.875rem);
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
}
.acc_support-card-text {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.acc_support-card-text a {
  color: inherit;
  text-decoration: underline;
}
.acc_support-card-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  text-decoration: none;
}

/* =============================================================
   DICOTA — Account Service/Vertrieb (Multi-step Form,
   standard form_input + form_label with floating labels)
   ============================================================= */

/* Multi-step form */
.multi-form_component {
  position: relative;
  overflow: auto;
}
.multi-form_block {
  margin: 0;
}
.multi-form_form {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-content: start;
  width: 100%;
  margin: 0;
}
.multi-form_step {
  background-color: #ffffff;
}
.multi-form_heading {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
  padding: 1.5rem 2.5rem;
  border-bottom: 1px solid #ebebeb;
}
.multi-form_progress-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
}
.multi-form_progress-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  opacity: 1;
  font-weight: 500;
}
.multi-form_progress-item.multi-form_progress-disabled {
  opacity: 0.3;
}
.multi-form_progress {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border: 1px solid #0f0f0f;
  border-radius: 624.9375rem;
}
.multi-form_progress.multi-form_progress-current,
.multi-form_progress.progress-current {
  background-color: #0f0f0f;
  color: #ffffff;
}
.multi-form_progress.completed {
  background-color: #6b6b6b;
  border-color: #6b6b6b;
  color: #ffffff;
}
.multi-form_form-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  padding: 2.5rem;
}
.multi-form_triple {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.75rem;
}
.multi-form_double {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.75rem;
}
.multi-form_button-group {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1rem;
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid #ebebeb;
  padding-right: 1.5rem;
  padding-bottom: 1.5rem;
  padding-left: 1.5rem;
}
.multi-form_button-group .button {
  min-width: 8rem;
  justify-content: center;
  text-align: center;
}
.multi-form_button-group .button.is-secondary {
  margin-right: auto;
}

/* Standard form_input + form_label (floating label, used in multi-step form) */
.form_input.w-input {
  width: 100%;
  min-height: 3rem;
  padding: 0.75rem 1rem;
  border: 1px solid #ebebeb;
  background-color: transparent;
  color: #0f0f0f;
  font-weight: 500;
  margin: 0;
  transition: border-color 0.2s;
}
.form_input.w-input:focus {
  outline: 0;
  border-color: #0f0f0f;
}
.form_input.w-input::placeholder {
  color: transparent;
}
.form_field-wrapper > .form_label:not(.is-gutschein-form) {
  position: absolute;
  top: 0.75rem;
  left: 1rem;
  background-color: transparent;
  pointer-events: none;
  margin: 0;
  color: #6b6b6b;
  font-weight: 400;
  transition: all 0.15s ease-out;
}
.form_field-wrapper .form_input.w-input:focus + .form_label,
.form_field-wrapper .form_input.w-input:not(:placeholder-shown) + .form_label {
  top: -0.7rem;
  left: 0.75rem;
  padding: 0.25rem;
  background-color: #ffffff;
  font-size: 0.625rem;
  color: #0f0f0f;
}

/* =============================================================
   DICOTA — Product Finder Page, Zertifikate, B2B Login
   ============================================================= */

/* Product Finder Page */
.section_product-finder-page {
  width: 100%;
}
.product-finder_intro {
  margin-bottom: 2.5rem;
}
.product-finder_embed {
  width: 100%;
  background-color: #f4f4f4;
  min-height: 32rem;
}
.product-finder_embed iframe {
  width: 100%;
  display: block;
  border: 0;
}

/* Zertifikate Page (extends acc_download-item) */
.zertifikate_search {
  background-color: #ffffff;
  padding: 0.5rem;
  margin-bottom: 1rem;
}
.zertifikate_form {
  margin: 0;
}
.zertifikate_form-inner {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 0;
}
.zertifikate_form .filter_input-wrapper {
  width: 100%;
}
.zertifikate_form .filter_input {
  background-color: #ffffff;
  border-bottom-color: transparent;
}
.zertifikate_list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
}
.zertifikate_list .w-dyn-item {
  list-style: none;
}
.zertifikate_img {
  width: 4rem;
  height: 4rem;
  object-fit: contain;
  display: block;
  flex: none;
  background-color: #f4f4f4;
}
.acc_download-banner.is-zertifikat {
  padding: 1rem 1.5rem;
}
.acc_download-banner.is-zertifikat .acc_download-banner-left {
  gap: 1.25rem;
  align-items: center;
}
.acc_download-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  background-color: #f4f4f4;
  color: #0f0f0f;
  text-decoration: none;
  transition: background-color 0.15s;
  flex: none;
}
.acc_download-link:hover {
  background-color: #ebebeb;
}

/* B2B Login Page */
.section_b2b-login {
  min-height: 80vh;
}
.section_b2b-login .split-image_content-wrapper.is-right-image {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  justify-content: center;
  color: #ffffff;
}
.b2b-login_form-block {
  align-self: stretch;
  margin: 0;
  width: 100%;
  max-width: 28rem;
}
.b2b-login_form {
  display: flex;
  flex-direction: column;
  gap: 1.75rem;
  margin: 0;
}
/* B2B Login — Stacked input pattern (label above, clean dark input) */
.section_b2b-login .b2b-login_field {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.section_b2b-login .b2b-login_label {
  display: block;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.85);
  letter-spacing: 0.02em;
  margin: 0;
}
.section_b2b-login .b2b-login_input {
  display: block;
  width: 100%;
  height: auto;
  min-height: 3rem;
  margin: 0;
  padding: 0.75rem 1rem;
  background-color: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: .25rem;
  color: #ffffff;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.4;
  transition: border-color 0.15s ease, background-color 0.15s ease;
  -webkit-appearance: none;
  appearance: none;
}
.section_b2b-login .b2b-login_input::placeholder {
  color: rgba(255, 255, 255, 0.4);
  font-weight: 400;
}
.section_b2b-login .b2b-login_input:focus,
.section_b2b-login .b2b-login_input:focus-visible {
  outline: none;
  border-color: #ffffff;
  background-color: rgba(255, 255, 255, 0.1);
}
.section_b2b-login .b2b-login_input:-webkit-autofill {
  -webkit-text-fill-color: #ffffff;
  -webkit-box-shadow: 0 0 0px 1000px rgba(15, 15, 15, 0.95) inset;
  caret-color: #ffffff;
}
.b2b-login_links {
  display: flex;
  justify-content: flex-end;
}
.section_b2b-login .b2b-login_links .text-style-link,
.section_b2b-login .b2b-login_register .text-style-link {
  color: #ffffff;
}
.b2b-login_register {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}

.swiper-slide.hero_slide {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-end;
}
/* =============================================================
   DICOTA — Search Overlay (Full-Page Modal)
   ============================================================= */
.nav_search-trigger-wrap {
  display: flex;
  align-items: center;
}
.nav_search-overlay {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  z-index: 1100;
  background-color: rgba(15, 15, 15, 0.18);
  -webkit-backdrop-filter: blur(.5rem);
  backdrop-filter: blur(.5rem);
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}
.nav_search-overlay-panel {
  background-color: #ffffff;
  color: #0f0f0f;
  width: 100%;
  display: flex;
  flex-direction: column;
  padding: 1.5rem 2.5rem 2.5rem;
  gap: 1.5rem;
}
.nav_search-overlay-bar {
  display: flex;
  align-items: center;
  gap: 1rem;
  border-bottom: 1px solid #d8d8d8;
  padding-bottom: 0.5rem;
}
.nav_search-overlay-icon {
  width: 1.5rem;
  height: 1.5rem;
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #0f0f0f;
}
.nav_search-overlay-form {
  flex: 1 1 auto;
  margin: 0;
}
.nav_search-overlay-input {
  width: 100%;
  border: 0;
  background: transparent;
  padding: 0.75rem 0;
  font-family: "Futura PT", sans-serif;
  font-size: 1.25rem;
  font-weight: 500;
  color: inherit;
  outline: 0;
}
.nav_search-overlay-input::placeholder { color: #6b6b6b; }
.nav_search-overlay-close {
  background: transparent;
  border: 0;
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #0f0f0f;
  padding: 0;
  flex: none;
}
.nav_search-overlay-tip {
  font-size: 0.875rem;
  color: #6b6b6b;
  margin: 0;
}
.nav_search-empty-grid {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 3rem;
  align-items: flex-start;
}
.nav_search-empty-col {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.nav_search-empty-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}
.nav_search-empty-header .text-style-subline {
  letter-spacing: 0.06em;
  color: #6b6b6b;
}
.nav_search-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.nav_search-pill-item {
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.875rem;
  background-color: #f4f4f4;
  color: #0f0f0f;
  font-size: 0.875rem;
  font-weight: 500;
  text-decoration: none;
  transition: background-color 0.15s;
}
.nav_search-pill-item:hover { background-color: #ebebeb; }
.nav_search-recent {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
}
.nav_search-recent-item {
  background-color: #f4f4f4;
  aspect-ratio: 1;
  overflow: hidden;
}
.nav_search-recent-link {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
.nav_search-recent-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.2s;
}
.nav_search-recent-link:hover .nav_search-recent-image { transform: scale(1.04); }
.nav_search-results-grid {
  display: grid;
  grid-template-columns: 1fr 2.5fr;
  gap: 3rem;
  align-items: flex-start;
}
.nav_search-suggestion-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.nav_search-suggestion-link {
  display: block;
  padding: 0.5rem 0;
  color: inherit;
  text-decoration: none;
  font-size: 0.9375rem;
}
.nav_search-suggestion-link:hover { text-decoration: underline; }
.nav_search-product-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.nav_search-product-link {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  text-decoration: none;
  color: inherit;
}
.nav_search-product-image-wrap {
  width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
  background-color: #f4f4f4;
}
.nav_search-product-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.nav_search-product-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.nav_search-product-title {
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.nav_search-product-brand {
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.nav_search-results-cta {
  align-self: stretch;
  text-align: center;
  margin-top: 1rem;
}
.nav_search-no-results {
  padding: 2rem 0;
  text-align: center;
}

/* =============================================================
   DICOTA — Navbar Style Modes (transparent vs white solid)
   Modifier class lives on .nav_component (the inner wrapper),
   not on .section_navbar, because Liquiflow forbids
   li-attribute:class on the <section> element directly.
   ============================================================= */
.section_navbar .nav_component.is-transparent {
  background-color: transparent;
  color: #ffffff;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 90;
}
.section_navbar .nav_component.is-transparent::before {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0));
  pointer-events: none; z-index: -1;
}
.section_navbar .nav_component.is-transparent .nav_logo {
  filter: brightness(0) invert(1);
}
.section_navbar .nav_component.is-white {
  background-color: #ffffff;
  color: #0f0f0f;
}
.section_navbar .nav_component.is-white .nav_search-pill {
  background-color: #f4f4f4;
}
.section_navbar .nav_component.is-white .nav_search-placeholder {
  color: #6b6b6b;
}
.section_navbar .nav_component.is-transparent.is-scrolled {
  background-color: #ffffff;
  color: #0f0f0f;
  position: sticky;
  top: 0;
}
.section_navbar .nav_component.is-transparent.is-scrolled::before { display: none; }
.section_navbar .nav_component.is-transparent.is-scrolled .nav_logo {
  filter: none;
}

/* =============================================================
   DICOTA — Reseller Hub Page
   ============================================================= */

/* Button on dark backgrounds (outline white) */
.button.is-on-dark {
  color: #ffffff;
  background-color: transparent;
  border: 1px solid #ffffff;
  transition: color .2s, background-color .2s;
}
.button.is-on-dark:hover {
  color: #0f0f0f;
  background-color: #ffffff;
}

/* ---- Reseller Hero ---- */
.section_reseller-hero {
  position: relative;
  width: 100%;
}
.reseller-hero_bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.reseller-hero_bg-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.reseller-hero_overlay {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.35) 45%, rgba(0,0,0,.55));
}
.reseller-hero_padding {
  position: relative;
  z-index: 1;
  min-height: var(--reseller-hero-min-height, 78vh);
  display: flex;
  align-items: center;
  color: #ffffff;
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.reseller-hero_inner {
  display: flex;
  justify-content: center;
}
.reseller-hero_content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.25rem;
  max-width: 46rem;
  width: 100%;
}
.reseller-hero_title {
  color: #ffffff;
  margin: 0;
}
.reseller-hero_subtext {
  color: #ffffff;
  opacity: .92;
  max-width: 34rem;
  margin: 0;
}
.reseller-hero_search {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 40rem;
  height: 3.5rem;
  background-color: #ffffff;
  border-radius: 62.4375rem;
  padding: 0 .4rem 0 1.25rem;
  margin-top: .75rem;
}
.reseller-hero_search-cat {
  display: flex;
  align-items: center;
  gap: .4rem;
  color: #0f0f0f;
  font-size: .9375rem;
  white-space: nowrap;
  padding-right: 1rem;
  border-right: 1px solid #e0e0e0;
  cursor: pointer;
}
.reseller-hero_search-cat-icon {
  width: .9rem;
  height: .9rem;
  display: inline-flex;
}
.reseller-hero_search-input {
  flex: 1;
  border: 0;
  outline: 0;
  background: transparent;
  color: #0f0f0f;
  font-size: .9375rem;
  padding: 0 1rem;
  height: 100%;
}
.reseller-hero_search-input::placeholder { color: #8a8a8a; }
.reseller-hero_search-btn {
  flex: none;
  width: 2.75rem;
  height: 2.75rem;
  border: 0;
  border-radius: 62.4375rem;
  background-color: #0f0f0f;
  color: #ffffff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color .2s;
}
.reseller-hero_search-btn:hover { background-color: #333333; }
.reseller-hero_search-btn-icon {
  width: 1.1rem;
  height: 1.1rem;
  display: inline-flex;
}
.reseller-hero_trends {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: .5rem .75rem;
  margin-top: .5rem;
}
.reseller-hero_trends-label {
  font-size: .8125rem;
  font-weight: 500;
  color: #ffffff;
  opacity: .9;
}
.reseller-hero_trend-list {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.reseller-hero_trend {
  padding: .35rem .85rem;
  border-radius: 62.4375rem;
  background-color: rgba(255,255,255,.16);
  color: #ffffff;
  font-size: .8125rem;
  text-decoration: none;
  transition: background-color .15s;
}
.reseller-hero_trend:hover { background-color: rgba(255,255,255,.28); }

/* ---- Reseller Category Row ---- */
.section_category-row {
  width: 100%;
  background-color: #ffffff;
}
.reseller-catrow_padding {
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
}
.category-row_grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2rem 1rem;
}
.category-row_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .75rem;
  text-decoration: none;
  color: #0f0f0f;
  width: 6.25rem;
}
.category-row_circle {
  width: 6.25rem;
  height: 6.25rem;
  border-radius: 62.4375rem;
  background-color: #f4f4f4;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color .2s;
}
.category-row_item:hover .category-row_circle { background-color: #ebebeb; }
.category-row_image {
  width: 80%;
  height: 80%;
  object-fit: contain;
}
.category-row_label {
  text-align: center;
}

/* ---- Reseller Hub Split ---- */
.section_reseller-hub {
  width: 100%;
}
.reseller-hub_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
}
.reseller-hub_media {
  position: relative;
  min-height: 30rem;
  overflow: hidden;
}
.reseller-hub_image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.reseller-hub_panel {
  background-color: #0f0f0f;
  color: #ffffff;
  display: flex;
}
.reseller-hub_panel-inner {
  display: flex;
  flex-direction: column;
  gap: 1.75rem;
  padding: 3.75rem;
  width: 100%;
  max-width: 36rem;
}
.reseller-hub_title {
  color: #ffffff;
  margin: 0;
}
.reseller-hub_accordion {
  display: flex;
  flex-direction: column;
}
.reseller-hub_acc-item {
  border-bottom: 1px solid rgba(255,255,255,.14);
}
.reseller-hub_acc-head {
  display: flex;
  align-items: center;
  gap: .75rem;
  width: 100%;
  background: transparent;
  border: 0;
  padding: 1rem 0;
  cursor: pointer;
  color: #ffffff;
  text-align: left;
}
.reseller-hub_acc-icon {
  width: 1.5rem;
  height: 1.5rem;
  flex: none;
  color: #479ef8;
  display: inline-flex;
}
.reseller-hub_acc-label {
  flex: 1;
  font-size: 1.0625rem;
  font-weight: 500;
}
.reseller-hub_acc-chev {
  width: 1rem;
  height: 1rem;
  flex: none;
  display: inline-flex;
  transition: transform .2s;
  opacity: .7;
}
.reseller-hub_acc-chev.is-open {
  transform: rotate(180deg);
}
.reseller-hub_acc-body {
  padding: 0 0 1rem 2.25rem;
}
.reseller-hub_acc-body p { color: rgba(255,255,255,.78); margin: 0; }
.reseller-hub_actions {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  margin-top: .5rem;
}
.reseller-hub_btn {
  width: 100%;
}
.reseller-hub_btn:not(.is-on-dark) { background-color: #ffffff; border-color: #ffffff; color: #0f0f0f; }

/* ---- The Latest (editorial card slider) ---- */
.section_the-latest {
  width: 100%;
  background-color: #f4f4f4;
}
.the-latest_padding {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.the-latest_title {
  margin: 0 0 2.5rem;
  max-width: 50rem;
}
.the-latest_slider-wrapper {
  position: relative;
}
.the-latest_swiper {
  width: 100%;
  overflow: hidden;
}
.the-latest_list {
  display: flex;
  gap: 1rem;
}
.the-latest_card {
  position: relative;
  width: min(27rem, 82vw);
  flex: none;
  height: 31.25rem;
  overflow: hidden;
  background-color: #0f0f0f;
}
.the-latest_card-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.the-latest_card-overlay {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,0) 55%);
}
.the-latest_card-link {
  position: relative;
  display: block;
  height: 100%;
  text-decoration: none;
}
.the-latest_card-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: .6rem;
  padding: 1.75rem;
  color: #ffffff;
}
.the-latest_card-badge {
  align-self: flex-start;
  color: #e2231a;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.the-latest_card-title {
  color: #ffffff;
  margin: 0;
}
.the-latest_card-text {
  color: rgba(255,255,255,.85);
  margin: 0;
  max-width: 22rem;
}

/* ---- The Dicota Difference ---- */
.section_dicota-difference {
  width: 100%;
}
.dicota-difference_padding {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #f4f4f4;
}
.dicota-difference_title {
  margin: 0 0 2.5rem;
  max-width: 46rem;
}
.dicota-difference_slider-wrapper {
  position: relative;
}
.dicota-difference_swiper {
  width: 100%;
  overflow: hidden;
}
.dicota-difference_list {
  display: flex;
  gap: .75rem;
}
.dicota-difference_card {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  width: min(15.5rem, 62vw);
  flex: none;
  height: auto;
  background-color: #ffffff;
  border: 1px solid #e8e8e8;
  padding: 1.75rem 1.5rem;
}
.dicota-difference_icon {
  width: 3rem;
  height: 3rem;
  color: #0f0f0f;
}
.dicota-difference_icon-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.dicota-difference_card-text {
  display: flex;
  flex-direction: column;
  gap: .4rem;
}
.dicota-difference_card-title {
  margin: 0;
}
.dicota-difference_card-desc {
  color: #686868;
  margin: 0;
}
.dicota-difference_actions {
  display: flex;
  justify-content: center;
  gap: 1rem;
  margin-top: 2.5rem;
}
.dicota-difference_btn {
  min-width: 18rem;
}

/* ---- Reseller Promo Grid (image+text banners) ---- */
.section_reseller-promo {
  width: 100%;
}
.reseller-promo_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.reseller-promo_card {
  position: relative;
  min-height: 32rem;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
}
.reseller-promo_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.reseller-promo_overlay {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(0deg, rgba(0,0,0,.6), rgba(0,0,0,0) 60%);
}
.reseller-promo_content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: flex-start;
  padding: 2.5rem;
  color: #ffffff;
}
.reseller-promo_title {
  color: #ffffff;
  margin: 0;
}
.reseller-promo_text {
  color: rgba(255,255,255,.88);
  margin: 0;
  max-width: 26rem;
}
.reseller-promo_btn {
  margin-top: .5rem;
}

/* ---- Generic slider arrows (reseller sliders) ---- */
.the-latest_arrow,
.dicota-difference_arrow {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 3;
  width: 3rem;
  height: 3rem;
  transform: translateY(-50%);
  border: none;
  border-radius: 62.4375rem;
  background-color: #0f0f0f;
  color: #ffffff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color .2s;
}
.the-latest_arrow:hover,
.dicota-difference_arrow:hover { background-color: #333333; }
.the-latest_arrow.is-prev,
.dicota-difference_arrow.is-prev { right: auto; left: 0; }
.the-latest_arrow.swiper-button-disabled,
.dicota-difference_arrow.swiper-button-disabled { opacity: .3; pointer-events: none; }

/* ---- Reseller responsive ---- */

/* =============================================================
   Swiper "auto" slides — fixed widths must beat the bundle's
   injected .swiper-slide{width:100%} (compound specificity 0,2,0).
   Without this, slidesPerView:"auto" sliders render 1 full-width slide.
   ============================================================= */
.swiper-slide.featured-products_item {
  width: min(20.5rem, 80vw);
}
.swiper-slide.shop-by-category_item {
  width: min(27.1875rem, 85vw);
}
.swiper-slide.accessories_item {
  width: min(20.5rem, 80vw);
}
.swiper-slide.the-latest_card {
  width: min(27rem, 82vw);
}
.swiper-slide.dicota-difference_card {
  width: min(15.5rem, 62vw);
}

/* =============================================================
   Project slider arrows — override Swiper bundle's injected defaults.
   The bundle (loaded after this file, equal specificity) forces
   width:1.6875rem/height:2.75rem, color:#007aff and a ::after glyph from the
   swiper-icons font onto .swiper-button-prev/next — which clobbered our
   circular arrow buttons and double-rendered an arrow on every slider.
   Compound selectors (0,2,0) win regardless of load order.
   ============================================================= */
[class*="_arrow"].swiper-button-prev,
[class*="_arrow"].swiper-button-next {
  width: 3rem;
  height: 3rem;
  margin-top: 0;
  color: #ffffff;
}
[class*="_arrow"].swiper-button-prev::after,
[class*="_arrow"].swiper-button-next::after { content: none; }

/* =============================================================
   DICOTA — Collection Intro Cards (intro + 3 use-case cards)
   ============================================================= */
.section_collection-intro-cards {
  width: 100%;
  background-color: #ffffff;
}
.coll-intro-cards_padding {
  padding-top: 3.75rem;
  padding-bottom: 6.25rem;
}
.coll-intro-cards_layout {
  display: flex;
  gap: 2.5rem;
  align-items: flex-start;
}
.coll-intro-cards_intro {
  flex: none;
  width: 23.5rem;
  max-width: 40%;
  display: flex;
  flex-direction: column;
  gap: .75rem;
}
.coll-intro-cards_heading {
  margin: 0;
}
.coll-intro-cards_text {
  margin: 0;
  line-height: 1.26;
  font-weight: 500;
}
.coll-intro-cards_grid {
  flex: 1;
  min-width: 0;
  display: flex;
  gap: .75rem;
  align-items: flex-start;
}
.coll-intro-cards_card {
  flex: 1 1 0;
  min-width: 0;
  max-width: 20rem;
  display: flex;
  flex-direction: column;
  gap: .75rem;
}
.coll-intro-cards_image-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 307 / 273;
  overflow: hidden;
  background-color: #282828;
}
.coll-intro-cards_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.coll-intro-cards_card-body {
  display: flex;
  flex-direction: column;
  gap: .25rem;
}
.coll-intro-cards_card-title {
  margin: 0;
  font-family: "Futura PT", sans-serif;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #0f0f0f;
}
.coll-intro-cards_card-desc {
  margin: 0;
  color: #686868;
  line-height: 1.34;
}

/* =============================================================
   DICOTA — B2B News Highlight (image + dark text panel)
   ============================================================= */
.section_b2b-news {
  width: 100%;
  background-color: #f6f6f6;
}
.b2b-news_padding {
  padding-top: 2.5rem;
  padding-bottom: 3.75rem;
}
.b2b-news_panel {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 37.5rem;
  background-color: #262626;
  overflow: hidden;
}
.b2b-news_media {
  position: relative;
  min-height: 22rem;
  overflow: hidden;
}
.b2b-news_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.b2b-news_content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.5rem;
  padding: 3.125rem 6.25rem 2.5rem;
  color: #ffffff;
}
.b2b-news_head {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}
.b2b-news_meta {
  display: flex;
  align-items: center;
  gap: .75rem;
  font-size: .8125rem;
  font-weight: 500;
  line-height: 1.5;
}
.b2b-news_badge {
  color: #cc0404;
  font-weight: 500;
}
.b2b-news_divider {
  flex: none;
  width: 1px;
  height: .75rem;
  background-color: rgba(255, 255, 255, .4);
}
.b2b-news_cat, .b2b-news_date { color: #ffffff; }
.b2b-news_title {
  margin: 0;
  font-family: "Futura PT", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.05;
  color: #ffffff;
}
.b2b-news_text {
  margin: 0;
  color: #ffffff;
  line-height: 1.26;
  font-weight: 500;
  max-width: 30rem;
}
.b2b-news_btn {
  align-self: flex-start;
}

/* =============================================================
   DICOTA — B2B News Updates (heading + slider: blue updates card + news cards)
   ============================================================= */
.section_news-updates {
  width: 100%;
  background-color: #f6f6f6;
}
.news-updates_padding {
  padding-top: 2.5rem;
  padding-bottom: 3.75rem;
}
.news-updates_heading {
  margin: 0 0 1.5rem;
  text-transform: uppercase;
  font-weight: 500;
}
.news-updates_heading-bold {
  font-weight: 700;
}
.news-updates_heading-light {
  font-weight: 500;
}
.news-updates_slider-wrapper {
  position: relative;
}
.news-updates_swiper {
  width: 100%;
  overflow: hidden;
}
.news-updates_list {
  display: flex;
  gap: .75rem;
  align-items: stretch;
}

/* Blue updates card */
.news-updates_blue-card {
  width: min(27.8rem, 85vw);
  flex: none;
  height: 37.5rem;
  background-color: #479ef8;
}
.news-updates_blue-inner {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 3.125rem 2.5rem 2.5rem;
}
.news-updates_blue-title {
  margin: 0;
  font-family: "Futura PT", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.05;
  color: #0f0f0f;
}
.news-updates_link-list {
  display: flex;
  flex-direction: column;
}
.news-updates_link {
  display: flex;
  align-items: center;
  gap: 1.375rem;
  padding: .6rem 0;
  border-bottom: 1px solid rgba(15, 15, 15, .18);
  text-decoration: none;
  color: #0f0f0f;
}
.news-updates_link-text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: .25rem;
}
.news-updates_link-title {
  font-size: 1.125rem;
  font-weight: 500;
  color: #0f0f0f;
  line-height: 1.14;
}
.news-updates_link-sub {
  font-size: .875rem;
  font-weight: 500;
  color: rgba(15, 15, 15, .72);
  line-height: 1.14;
}
.news-updates_link-arrow {
  flex: none;
  width: 1.875rem;
  height: 1.875rem;
  border-radius: 62.4375rem;
  background-color: #ffffff;
  color: #0f0f0f;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .15s;
}
.news-updates_link-arrow svg { width: .9rem; height: .9rem; }
.news-updates_link:hover .news-updates_link-arrow { transform: translateX(2px); }
.news-updates_blue-btn {
  width: 100%;
}

/* News (editorial) card */
.news-updates_card {
  position: relative;
  width: min(27.8rem, 85vw);
  flex: none;
  height: 37.5rem;
  overflow: hidden;
  background-color: #262626;
}
.news-updates_card-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.news-updates_card-overlay {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(180deg, rgba(0,0,0,.6), rgba(0,0,0,0) 50%);
}
.news-updates_card-link {
  position: relative;
  display: block;
  height: 100%;
  text-decoration: none;
}
.news-updates_card-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: .75rem;
  padding: 3.125rem 2.5rem 2.5rem;
  color: #ffffff;
}
.news-updates_card-badge {
  align-self: flex-start;
  color: #cc0404;
  font-size: .8125rem;
  font-weight: 500;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.news-updates_card-title {
  margin: 0;
  font-family: "Futura PT", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.1;
  color: #ffffff;
}
.news-updates_card-text {
  margin: 0;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.34;
  color: #ffffff;
  max-width: 20rem;
}

/* arrows */
.news-updates_arrow {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 3;
  width: 3rem;
  height: 3rem;
  transform: translateY(-50%);
  border: none;
  border-radius: 62.4375rem;
  background-color: rgba(15, 15, 15, .7);
  color: #ffffff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color .2s;
}
.news-updates_arrow:hover { background-color: rgba(15, 15, 15, .9); }
.news-updates_arrow.is-prev {
  right: auto;
  left: 0;
}
.news-updates_arrow.swiper-button-disabled {
  opacity: .3;
  pointer-events: none;
}

/* fixed slide widths must beat Swiper's injected .swiper-slide{width:100%} */
.swiper-slide.news-updates_blue-card,
.swiper-slide.news-updates_card { width: min(27.8rem, 85vw); }

/* =============================================================
   DICOTA — Product Hero B2B features (SKU/GTIN, Mengenrabatt, Angebot)
   ============================================================= */
.ph_title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.5rem;
  width: 100%;
}
.ph_ids {
  flex: none;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: .25rem;
  padding-top: .35rem;
}
.ph_id-row {
  display: flex;
  align-items: center;
  gap: .4rem;
  font-size: .75rem;
  line-height: 1.4;
}
.ph_id-label {
  color: #686868;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .02em;
}
.ph_id-value {
  color: #0f0f0f;
  font-weight: 500;
}
.ph_id-copy {
  flex: none;
  width: .8rem;
  height: .8rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: #686868;
  cursor: pointer;
  display: inline-flex;
  transition: color .15s;
}
.ph_id-copy:hover { color: #0f0f0f; }

/* Mengenrabatt / volume pricing */
.ph_volume {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  width: 100%;
}
.ph_volume-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ph_volume-title, .ph_volume-unit {
  font-size: .75rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .02em;
  color: #0f0f0f;
}
.ph_volume-tiers {
  display: flex;
  flex-direction: column;
  gap: .5rem;
}
.ph_volume-tier {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding: .35rem .75rem;
  cursor: pointer;
}
.ph_volume-tier.is-active {
  background-color: #f4f4f4;
}
.ph_volume-radio {
  -webkit-appearance: none;
  appearance: none;
  flex: none;
  width: .75rem;
  height: .75rem;
  margin: 0;
  border: 1px solid #0f0f0f;
  border-radius: 50%;
  background-color: #ffffff;
  opacity: .5;
  cursor: pointer;
}
.ph_volume-radio:checked {
  opacity: 1;
  background-image: radial-gradient(#0f0f0f 0 42%, transparent 52%);
}
.ph_volume-qty {
  flex: 1;
  min-width: 0;
  font-size: .75rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .02em;
  color: #686868;
}
.ph_volume-tier.is-active .ph_volume-qty {
  color: #0f0f0f;
}
.ph_volume-prices {
  display: flex;
  align-items: center;
  gap: .5rem;
  flex: none;
}
.ph_volume-price-col {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  line-height: 1.2;
}
.ph_volume-price {
  font-size: .75rem;
  font-weight: 500;
  text-transform: uppercase;
  color: #686868;
}
.ph_volume-tier.is-active .ph_volume-price {
  color: #0f0f0f;
}
.ph_volume-save {
  font-size: .75rem;
  font-weight: 500;
  color: #686868;
}
.ph_volume-badge {
  flex: none;
  background-color: #cc0404;
  color: #ffffff;
  font-size: .6875rem;
  font-weight: 500;
  line-height: 1.5;
  padding: .1rem .45rem;
  box-shadow: 0 1px 1px rgba(0, 0, 0, .1);
}

/* Angebot anfragen + buy actions */
.ph_quote-btn {
  display: block;
  width: 100%;
  margin-top: .75rem;
  padding: .65rem 1.5rem;
  text-align: center;
  border: 1px solid #0f0f0f;
  background-color: transparent;
  color: #0f0f0f;
  font-weight: 500;
  transition: color .2s, background-color .2s;
}
.ph_quote-btn:hover { background-color: #0f0f0f; color: #ffffff; }
.ph_buy-actions {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-top: 1rem;
}
.ph_buy-action {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-size: .8125rem;
  font-weight: 500;
  color: #0f0f0f;
  text-decoration: none;
}
.ph_buy-action:hover { text-decoration: underline; }
.ph_buy-action-icon {
  width: .85rem;
  height: .85rem;
  display: inline-flex;
  flex: none;
}

/* =============================================================
   Product Hero — stack on tablet/mobile (was flex-row; the existing
   ≤991 rule only set grid-template-columns which is dead on flex,
   so gallery + 40%-wide details never stacked → content overflowed).
   ============================================================= */

/* =============================================================
   DICOTA — Blog listing (dark): featured hero + filter bar + grid
   ============================================================= */
.main-wrapper.is-blog {
  background-color: #000000;
}
.section_blog-featured {
  width: 100%;
  background-color: #000000;
}
.blog-featured_padding {
  padding-top: 3.75rem;
  padding-bottom: 3rem;
}
.blog-featured_row {
  display: flex;
  gap: .75rem;
  align-items: stretch;
  text-decoration: none;
  width: 100%;
}
.blog-featured_media {
  flex: 0 0 66%;
  position: relative;
  aspect-ratio: 894 / 551;
  overflow: hidden;
  background-color: #f6f6f6;
}
.blog-featured_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.blog-featured_panel {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.5rem;
  padding: 2.5rem;
  color: #ffffff;
}
.blog-featured_content {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.blog-featured_text {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}
.blog-meta_dot {
  opacity: .7;
}
.blog-featured_meta,
.blog-card_meta {
  display: flex;
  align-items: center;
  gap: .25rem;
  font-size: .75rem;
  font-weight: 500;
  letter-spacing: .02em;
  color: rgba(255, 255, 255, .7);
}
.blog-featured_title {
  margin: 0;
  font-family: "Futura PT", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.05;
  color: #ffffff;
}
.blog-featured_excerpt {
  margin: 0;
  color: #ffffff;
  line-height: 1.26;
  font-weight: 500;
}
.blog-featured_btn {
  align-self: flex-start;
}

/* List section */
.section_blog-list {
  width: 100%;
  background-color: #000000;
}
.blog-list_padding {
  padding-top: 0;
  padding-bottom: 5rem;
}
.blog-list_bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  flex-wrap: wrap;
  padding: 1rem 0 2rem;
  border-bottom: 1px solid rgba(255, 255, 255, .15);
  margin-bottom: 2.5rem;
}
.blog-list_filters {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
}
.blog-list_filter {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: #ffffff;
  font-size: .9375rem;
  font-weight: 500;
  text-decoration: none;
}
.blog-list_filter-chev {
  width: .8rem;
  height: .8rem;
  display: inline-flex;
  opacity: .8;
}
.blog-list_sort {
  display: flex;
  align-items: center;
  gap: .5rem;
  color: #ffffff;
  font-size: .875rem;
}
.blog-list_sort-label {
  opacity: .7;
}
.blog-list_sort-value {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  font-weight: 500;
  cursor: pointer;
}

/* Article grid */
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem 1rem;
}
.blog-card {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  text-decoration: none;
  color: #ffffff;
}
.blog-card_image-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 442 / 551;
  overflow: hidden;
  background-color: #f6f6f6;
}
.blog-card_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .3s ease;
}
.blog-card:hover .blog-card_image { transform: scale(1.03); }
.blog-card_body {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}
.blog-card_head {
  display: flex;
  flex-direction: column;
  gap: .25rem;
}
.blog-card_title {
  margin: 0;
  font-family: "Futura PT", sans-serif;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.34;
  letter-spacing: .02em;
  text-transform: uppercase;
  color: #ffffff;
}
.blog-card_excerpt {
  margin: 0;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.34;
  color: #ffffff;
}
.blog-card_link {
  font-size: .875rem;
  font-weight: 500;
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.blog-card:hover .blog-card_link { opacity: .8; }
.blog-grid-empty {
  color: rgba(255, 255, 255, .7);
  padding: 2rem 0;
}
.section_blog-list .pagination_component {
  margin-top: 3rem;
}
.section_blog-list .pagination_count .text-style-link,
.section_blog-list .pagination_item div { color: #ffffff; }

/* =============================================================
   DICOTA — Blog Article detail (breadcrumb, article body, more stories)
   ============================================================= */
.section_article-breadcrumb {
  width: 100%;
  background-color: #ffffff;
}
.article_crumbs {
  display: flex;
  align-items: center;
  gap: .4rem;
  padding: 1rem 0;
  font-size: .8125rem;
  color: rgba(15, 15, 15, .7);
}
.article_crumb {
  color: rgba(15, 15, 15, .7);
  text-decoration: none;
  white-space: nowrap;
}
.article_crumb:hover { color: #0f0f0f; }
.article_crumb.is-current {
  color: #0f0f0f;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 18rem;
}
.article_crumb-chev {
  width: .55rem;
  height: .55rem;
  display: inline-flex;
  opacity: .6;
  flex: none;
}

/* Article body */

.article_padding {
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
}
.article_inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
}

.article_meta {
  display: flex;
  align-items: center;
  gap: .25rem;
  font-size: .75rem;
  font-weight: 500;
  letter-spacing: .02em;
  color: rgba(15, 15, 15, .7);
}
.article_title {
  margin: 0;
  font-family: "Futura PT", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.1;
  color: #0f0f0f;
}
.article_intro {
  margin: 0;
  max-width: 39.5rem;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.26;
  color: #0f0f0f;
}
.article_hero {
  width: 100%;
  max-width: 64.375rem;
  margin: 0;
  aspect-ratio: 1030 / 551;
  overflow: hidden;
  background-color: #f6f6f6;
}
.article_hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.article_body {
  width: 100%;
  max-width: 47.5rem;
  color: #0f0f0f;
}
.article_body > * { margin: 0 0 1.5rem; }
.article_body > *:last-child { margin-bottom: 0; }
.article_body h2, .article_body h3 {
  font-family: "Futura PT", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.1;
  margin-top: 1rem;
}
.article_body p { font-size: 1rem; font-weight: 500; line-height: 1.5; }
.article_body blockquote {
  border: 0;
  padding: 0;
  margin: 2rem auto;
  max-width: 34rem;
  font-family: "Futura PT", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.15;
  text-align: center;
}
.article_body a { color: inherit; text-decoration: underline; }
.article_body img { max-width: 100%; height: auto; }

/* More stories (light article cards) */
.section_more-stories {
  width: 100%;
  background-color: #ffffff;
}
.more-stories_padding {
  padding-top: 2.5rem;
  padding-bottom: 5rem;
}
.more-stories_title {
  margin: 0 0 2rem;
}
.more-stories_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem 1rem;
}
.story-card {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  text-decoration: none;
  color: #0f0f0f;
}
.story-card_image-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 442 / 551;
  overflow: hidden;
  background-color: #f6f6f6;
}
.story-card_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .3s ease;
}
.story-card:hover .story-card_image { transform: scale(1.03); }
.story-card_body {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}
.story-card_head {
  display: flex;
  flex-direction: column;
  gap: .25rem;
}
.story-card_meta {
  display: flex;
  align-items: center;
  gap: .25rem;
  font-size: .75rem;
  font-weight: 500;
  letter-spacing: .02em;
  color: rgba(15, 15, 15, .7);
}
.story-card_title {
  margin: 0;
  font-family: "Futura PT", sans-serif;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.34;
  letter-spacing: .02em;
  text-transform: uppercase;
  color: #0f0f0f;
}
.story-card_excerpt {
  margin: 0;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.34;
  color: #0f0f0f;
}
.story-card_link {
  font-size: .875rem;
  font-weight: 500;
  color: #0f0f0f;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* =============================================================
   DICOTA — Product gallery lightbox
   ============================================================= */
.product-header_gallery-lightbox.is-clickable {
  cursor: zoom-in;
}
.ph-lightbox {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 3rem;
  background-color: rgba(0, 0, 0, .92);
}
.ph-lightbox.is-open {
  display: flex;
}
.ph-lightbox_img {
  max-width: 90vw;
  max-height: 88vh;
  object-fit: contain;
  display: block;
}
.ph-lightbox_close {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: #ffffff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ph-lightbox_nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 3rem;
  height: 3rem;
  padding: 0;
  border: 0;
  border-radius: 62.4375rem;
  background-color: rgba(255, 255, 255, .12);
  color: #ffffff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color .2s;
}
.ph-lightbox_nav:hover { background-color: rgba(255, 255, 255, .25); }
.ph-lightbox_nav.is-prev {
  left: 1.5rem;
}
.ph-lightbox_nav.is-next {
  right: 1.5rem;
}
.ph-lightbox_icon {
  width: 1.5rem;
  height: 1.5rem;
  display: inline-flex;
}
.ph-lightbox_close .ph-lightbox_icon {
  width: 1.75rem;
  height: 1.75rem;
}
.ph-lightbox_counter {
  position: absolute;
  bottom: 1.5rem;
  left: 50%;
  transform: translateX(-50%);
  color: rgba(255, 255, 255, .85);
  font-size: .875rem;
  font-weight: 500;
}

/* =============================================================
   DICOTA — Header Mega Menu (Figma 5890:5881)
   Restructures .nav_dropdown-list into a 2-column layout:
   left = link columns (each child_link is a column header),
   right = promotional panel with image + headline + CTA.
   ============================================================= */
/* CLOSED state inherits Webflow's `.w-dropdown-list { display: none }`,
   so the mega menu is fully removed from the layout AND hit-testing
   when not hovered. Only when .w--open is added do we apply the grid
   layout + positioning. Webflow IX2 handles opacity/transform animation
   on top of the .w--open state via inline styles. */
.section_navbar .nav_dropdown-list.nav_mega {
  background-color: #ffffff;
  border-top: 1px solid rgba(0, 0, 0, .1);
  width: 100%;
  max-height: 80vh;
  padding: 0;
  overflow: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  position: absolute;
  inset: 100% 0 auto 0;
  z-index: 80;
  transform: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .12s ease, visibility .12s ease;
}
.section_navbar .nav_dropdown-list.nav_mega.w--open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
/* Ensure the navbar component is the positioning context for the dropdown
   so it sticks below the nav bar instead of the viewport top. We also
   reset the position of .nav_menu-dropdown (which Webflow's .w-dropdown
   sets to position:relative) so the abs-positioned dropdown-list breaks
   out and is sized against the full-width .nav_component instead of the
   narrow toggle wrapper. */
.section_navbar .nav_component {
  position: relative;
}
/* Reset every intermediate that Webflow makes position:relative so the
   abs-positioned mega menu attaches to .nav_component, not the narrow
   toggle (or the menu container). */
.section_navbar .nav_container,
.section_navbar .nav_menu,
.section_navbar .nav_menu.is-page-height-tablet,
.section_navbar .nav_menu-dropdown.w-dropdown {
  position: static;
}
.nav_mega-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  padding: 2.5rem 1.5rem 2.5rem 2.5rem;
  align-content: start;
}
.nav_mega-col {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: flex-start;
  align-items: stretch;
  text-align: left;
}
.nav_mega-col-header {
  display: block;
  width: 100%;
  text-align: left;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5;
  text-transform: uppercase;
  color: #0f0f0f;
  text-decoration: none;
  padding: 0;
}
.nav_mega-col-header:hover { opacity: .7; }
.nav_mega-col-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: .25rem;
}
.nav_mega-col-item {
  padding: 0;
  margin: 0;
}
.nav_mega-col-link {
  display: block;
  width: 100%;
  text-align: left;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: .875rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #0f0f0f;
  text-decoration: none;
  padding: .5rem 0;
}
.nav_mega-col-link:hover { opacity: .7; }

/* Promo panel on the right */
.nav_mega-promo {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: 28rem;
  padding: 2.5rem;
  overflow: hidden;
  background-color: #1a2a4a;
  text-decoration: none;
  color: #ffffff;
}
.nav_mega-promo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, .5) 100%);
  z-index: 0;
  pointer-events: none;
}
.nav_mega-promo-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  display: block;
}
.nav_mega-promo-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 30rem;
}
.nav_mega-promo-headline {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.1;
  text-transform: uppercase;
  color: #ffffff;
  margin: 0;
}
.nav_mega-promo-text {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.26;
  color: #ffffff;
  margin: 0;
}
.nav_mega-promo-btn {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  background-color: #ffffff;
  color: #0f0f0f;
  padding: .75rem 1.5rem;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: .875rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  box-shadow: 0 2px 1px rgba(0, 0, 0, .1);
}
.nav_mega-promo:hover .nav_mega-promo-btn { transform: translateY(-1px); transition: transform .2s ease; }

/* Active/open dropdown — Webflow toggles .w--open on .nav_menu-dropdown */
.nav_menu-dropdown .nav_dropdown-toggle {
  transition: opacity .15s ease;
  opacity: .7;
}
.nav_menu-dropdown:hover .nav_dropdown-toggle,
.nav_menu-dropdown.w--open .nav_dropdown-toggle { opacity: 1; }
/* Bewusst KEIN font-weight-Wechsel auf Hover — fettere Schrift ist breiter und
   verschiebt sonst alle nachfolgenden Nav-Items horizontal. Hover-Affordance
   wird über opacity (.7 → 1) signalisiert. */
.nav_menu-dropdown .dropdown-icon {
  transition: transform .2s ease;
}
.nav_menu-dropdown.w--open .dropdown-icon {
  transform: rotate(180deg);
}

/* Mobile — collapse mega menu to single-column accordion-friendly stack */

/* =============================================================
   DICOTA — Announcement Bar dividers (Figma 5890:5881)
   Adds vertical separators between right-side link blocks
   without needing extra divider elements in markup.
   ============================================================= */
.announcement-bar_links {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
}
.announcement-bar_links > .announcement-bar_link + .announcement-bar_link::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 1.25rem;
  background-color: rgba(255, 255, 255, .25);
  margin-right: 1rem;
  align-self: center;
}
/* Hover on highlighted variant: don't fade opacity */
.announcement-bar_link.is-highlighted:hover { opacity: 1; }

/* =============================================================
   DICOTA — Global Swiper scrollbar/pagination placement
   Swiper-bundle's default puts .swiper-scrollbar at
   position:absolute; bottom:.1875rem → it overlays the slides.
   Swiper-bundle.min.css loads dynamically AFTER our project CSS,
   so we need higher specificity than its `.swiper-horizontal > .swiper-scrollbar`
   (0,2,0). We use `.swiper.swiper-horizontal > .swiper-scrollbar` (0,3,0).
   ============================================================= */
.swiper.swiper-horizontal > .swiper-scrollbar,
.swiper.swiper-vertical > .swiper-scrollbar,
.swiper.swiper-horizontal > .swiper-scrollbar.swiper-scrollbar,
.swiper.swiper-vertical > .swiper-scrollbar.swiper-scrollbar {
  position: relative;
  inset: auto;
  top: auto;
  left: auto;
  right: auto;
  bottom: auto;
  z-index: auto;
  width: min(22rem, 80%);
  height: 2px;
  margin: 2rem auto 0;
  background-color: rgba(15, 15, 15, .1);
  border-radius: 0;
}
.swiper.swiper-horizontal > .swiper-scrollbar .swiper-scrollbar-drag,
.swiper.swiper-vertical > .swiper-scrollbar .swiper-scrollbar-drag {
  background-color: var(--base-color-neutral--black, #0f0f0f);
  border-radius: 0;
  height: 2px;
}
/* Same treatment for dots-pagination if any slider uses it */
.swiper.swiper-horizontal > .swiper-pagination,
.swiper.swiper-vertical > .swiper-pagination {
  position: relative;
  inset: auto;
  top: auto;
  left: auto;
  right: auto;
  bottom: auto;
  z-index: auto;
  margin: 1.5rem auto 0;
  text-align: center;
}

/* =============================================================
   DICOTA — Rating Bar (Figma 5404:3844)
   Standalone horizontal trust strip: 5 stars + score + label
   + review count + provider logo. Editorial alignment via setting.
   ============================================================= */
.section_rating-bar {
  width: 100%;
}
.section_rating-bar > .padding-global {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  background-color: #ffffff;
  color: #0f0f0f;
  --rating-stars-color: #fd6612;
}
.rating-bar_inner {
  display: inline-flex;
  align-items: center;
  gap: .75rem;
  font-family: "Futura PT", sans-serif;
  font-size: .9375rem;
  width: auto;
}
/* Alignment helper — the inner is inline-flex, so we center via parent text-align */
.section_rating-bar .container-large {
  text-align: center;
}
.section_rating-bar .container-large:has(.rating-bar_inner.is-align-left) { text-align: left; }
.section_rating-bar .container-large:has(.rating-bar_inner.is-align-right) { text-align: right; }

.rating-bar_stars {
  width: 6.25rem;
  height: 1.25rem;
  display: inline-flex;
  color: var(--rating-stars-color, #fd6612);
}
.rating-bar_stars svg { width: 100%; height: 100%; }

.rating-bar_score {
  font-weight: 500;
}
.rating-bar_label,
.rating-bar_count { font-weight: 500; opacity: .85; }

.rating-bar_divider {
  display: inline-block;
  width: 1px;
  height: 1rem;
  background-color: currentColor;
  opacity: .25;
  margin: 0 .25rem;
}

.rating-bar_provider {
  display: inline-flex;
  align-items: center;
}
.rating-bar_logo {
  height: 1.25rem;
  width: auto;
  display: block;
}

/* =============================================================
   DICOTA — Breadcrumb (formerly: hid li-if branches in builder preview)
   Vorher gab es hier `.product-breadcrumb_nav [li-if] { display:none }`
   um in der Builder-Vorschau nur "Home" zu zeigen. Annahme war: Liquiflow
   strippt li-* Attribute beim Convertieren — STIMMT NICHT. Die Attribute
   bleiben im gerendeten Shopify-HTML, und der CSS-Selector matched dann
   auch in Produktion → blendet die echten Breadcrumb-Branches aus.
   Daher entfernt. Im Builder zeigt der Breadcrumb jetzt zwar mehrere
   Branches gleichzeitig (Vorschau-Artefakt), aber in Produktion stimmt's.
   ============================================================= */

/* Force navbar dropdown toggles + links to INHERIT navbar color
   (Webflow's `.w-dropdown-toggle { color: #222 }` from webflow.css
   would otherwise hard-set them to dark gray). */
.section_navbar .nav_dropdown-toggle,
.section_navbar .nav_menu-dropdown .w-dropdown-toggle,
.section_navbar .nav_menu-dropdown .w-dropdown-link,
.section_navbar .nav_menu-dropdown a,
.section_navbar .w-dropdown-toggle.nav_dropdown-toggle {
  color: inherit;
}
/* =============================================================
   DICOTA — Reseller Header (Figma 5521:18394)
   Combined section: B2B announcement bar (dark) + dedicated
   Reseller navigation (white) below it. Used on the reseller-hub
   page in place of the global navbar.
   ============================================================= */
.section_reseller-header {
  width: 100%;
  background-color: #ffffff;
}
.reseller-header_top {
  width: 100%;
}
.reseller-header_nav {
  width: 100%;
  padding: 1.5rem 2.5rem;
  background-color: #ffffff;
}
.reseller-header_nav-inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 2.5rem;
}

/* Left: Logo + Sublabel + Menu */
.reseller-header_left {
  display: flex;
  align-items: center;
  gap: 2.5rem;
  min-width: 0;
}
.reseller-header_brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
  text-decoration: none;
  color: #0f0f0f;
  flex-shrink: 0;
}
.reseller-header_logo {
  height: 1.2rem;
  width: auto;
  display: block;
}
.reseller-header_sublabel {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 0.7rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #0f0f0f;
  line-height: 1;
}

/* Menu */
.reseller-header_menu {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  min-width: 0;
}
.reseller-header_menu-dropdown {
  position: static;
}
.reseller-header_dropdown-toggle {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.5rem 0;
  cursor: pointer;
}
.reseller-header_link {
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #0f0f0f;
  text-decoration: none;
  white-space: nowrap;
}
.reseller-header_link:hover { opacity: 0.7; }
.reseller-header_chevron {
  width: 1rem;
  height: 1rem;
  color: #0f0f0f;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Right: CTA buttons */
.reseller-header_actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
  margin-left: auto;
}
/* Right (logged in): shop icons cluster, same markup/classes as main nav */
.reseller-header_nav-inner > .nav_shop-icons {
  margin-left: auto;
  flex-shrink: 0;
}
.reseller-header_btn-outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 1.5rem;
  background-color: transparent;
  border: 1px solid #0f0f0f;
  color: #0f0f0f;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 0.875rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
  transition: background-color .2s, color .2s;
}
.reseller-header_btn-outline:hover {
  background-color: #0f0f0f;
  color: #ffffff;
}
.reseller-header_btn-solid {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  padding: 0.75rem 1.5rem;
  background-color: #0f0f0f;
  color: #ffffff;
  font-family: "Futura PT", sans-serif;
  font-weight: 500;
  font-size: 0.875rem;
  letter-spacing: 0.06em;
  text-decoration: none;
  filter: drop-shadow(0 2px 1px rgba(0, 0, 0, 0.1));
  transition: background-color .2s;
}
.reseller-header_btn-solid:hover {
  background-color: #2a2a2a;
}
.reseller-header_btn-icon {
  width: 1.25rem;
  height: 1.25rem;
  display: inline-flex;
}
.reseller-header_menu-button {
  display: none;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  flex-shrink: 0;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: #0f0f0f;
}
.reseller-header_menu-icon {
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* =============================================================
   DICOTA — Order Marketing Material (B2B/Acc Mkt Giveaways)
   Bestellformular mit Item-Tabelle + Lieferdatum + Event-Beschreibung.
   Layout-Pattern: Karten mit hellgrauem Hintergrund auf weißer Section.
   ============================================================= */
.section_mkt-order {
  background-color: #f4f4f4;
}
.section_mkt-order .acc-default_wrapper {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.mkt-order_form {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.mkt-order_card {
  background-color: #ffffff;
  border-radius: .5rem;
  padding: 1.5rem 2rem;
}
.mkt-order_table-card {
  padding: 0;
  overflow: hidden;
}

/* Header row */
.mkt-order_thead {
  display: grid;
  grid-template-columns: 7.5rem 1fr 7.5rem 6.25rem 8.75rem;
  gap: 1.5rem;
  padding: 1rem 2rem;
  background-color: #f4f4f4;
  align-items: center;
}
.mkt-order_th {
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #6b6b6b;
}

/* Data rows */
.mkt-order_tbody {
  display: flex;
  flex-direction: column;
}
.mkt-order_row {
  display: grid;
  grid-template-columns: 7.5rem 1fr 7.5rem 6.25rem 8.75rem;
  gap: 1.5rem;
  padding: 1.25rem 2rem;
  border-top: 1px solid #ececec;
  align-items: center;
}
.mkt-order_cell {
  font-size: 0.9375rem;
  color: #0f0f0f;
}
.mkt-order_cell-img {
  display: flex;
  justify-content: center;
}
.mkt-order_img {
  width: 5.5rem;
  height: 5.5rem;
  object-fit: contain;
  background-color: #f7f7f7;
  border-radius: .25rem;
}

/* Quantity stepper */
.mkt-order_qty {
  display: inline-flex;
  align-items: center;
  border: 1px solid #d4d4d4;
  border-radius: .25rem;
  overflow: hidden;
  background-color: #ffffff;
  transition: border-color 0.15s ease;
}
.mkt-order_qty:focus-within {
  border-color: #2563eb;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.15);
}
.mkt-order_qty-btn {
  width: 2.25rem;
  height: 2.25rem;
  border: none;
  background: transparent;
  font-size: 1.125rem;
  color: #0f0f0f;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.15s ease;
}
.mkt-order_qty-btn:hover { background-color: #f4f4f4; }
.mkt-order_qty-input {
  width: 2.5rem;
  height: 2.25rem;
  border: none;
  border-left: 1px solid #ececec;
  border-right: 1px solid #ececec;
  background: transparent;
  text-align: center;
  font-size: 0.9375rem;
  color: #0f0f0f;
  font-variant-numeric: tabular-nums;
  -moz-appearance: textfield;
}
.mkt-order_qty-input::-webkit-outer-spin-button,
.mkt-order_qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.mkt-order_qty-input:focus { outline: none; }

/* Form fields (date + textarea cards) */
.mkt-order_field {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.mkt-order_label {
  font-size: 1.125rem;
  font-weight: 600;
  color: #0f0f0f;
  margin: 0;
}
.mkt-order_required {
  color: #0f0f0f;
  margin-left: 0.125rem;
}
.mkt-order_help {
  font-size: 0.875rem;
  color: #6b6b6b;
  margin: 0 0 0.5rem;
}
.mkt-order_input,
.mkt-order_textarea {
  width: 100%;
  border: none;
  border-bottom: 1px solid #d4d4d4;
  background: transparent;
  padding: 0.5rem 0;
  font-size: 0.9375rem;
  color: #0f0f0f;
  font-family: inherit;
  transition: border-color 0.15s ease;
}
.mkt-order_input:focus,
.mkt-order_textarea:focus {
  outline: none;
  border-bottom-color: #2563eb;
}
.mkt-order_textarea {
  min-height: 6.25rem;
  resize: vertical;
  line-height: 1.5;
}

/* Submit row */
.mkt-order_submit-row {
  display: flex;
  margin-top: 0.5rem;
}
.mkt-order_submit {
  background-color: #0f0f0f;
  color: #ffffff;
  padding: 0.875rem 2rem;
  font-size: 0.9375rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  border-radius: .25rem;
  text-decoration: none;
  display: inline-block;
  cursor: pointer;
  border: none;
  transition: background-color 0.15s ease, transform 0.1s ease;
}
.mkt-order_submit:hover {
  background-color: #2a2a2a;
  transform: translateY(-1px);
}

/* Tablet — kompakteres Grid */

/* =============================================================
   DICOTA — Mkt Trainings Collection (Presentations / Videos / Documents)
   Card-Sections mit hellgrauem Section-BG, weißen Content-Cards.
   ============================================================= */
.section_mkt-collection {
  background-color: #f4f4f4;
}
.section_mkt-collection > .padding-global {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.mkt-collection_card {
  background-color: #ffffff;
  border-radius: .5rem;
  padding: 1.5rem 2rem;
}
.mkt-collection_header {
  margin-bottom: 1.25rem;
}
.mkt-collection_title {
  margin: 0;
  font-size: 1.25rem;
  color: #0f0f0f;
}

/* Presentations — stacked rows */
.mkt-collection_list {
  display: flex;
  flex-direction: column;
}
.mkt-collection_row {
  display: grid;
  grid-template-columns: 5.5rem 1fr auto;
  align-items: center;
  gap: 1.25rem;
  padding: 1rem 0;
  border-top: 1px solid #ececec;
  color: inherit;
  text-decoration: none;
  transition: background-color 0.15s ease;
}
.mkt-collection_row:first-child { border-top: none; }
.mkt-collection_row:hover { background-color: #fafafa; }
.mkt-collection_thumb {
  width: 5.5rem;
  height: 3.5rem;
  background-color: #f7f7f7;
  border-radius: .25rem;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mkt-collection_thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mkt-collection_row-text {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
.mkt-collection_row-title {
  color: #0f0f0f;
  margin: 0;
}
.mkt-collection_row-desc {
  color: #6b6b6b;
  margin: 0;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mkt-collection_meta {
  margin-top: 0.25rem;
  color: #6b6b6b;
}
.mkt-collection_action {
  width: 2.25rem;
  height: 2.25rem;
  background-color: #0f0f0f;
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.15s ease;
}
.mkt-collection_row:hover .mkt-collection_action {
  transform: translateY(-1px);
}
.mkt-collection_action-icon {
  width: 1rem;
  height: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Videos — 2-col grid of video cards */
.mkt-video_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}
.mkt-video_card {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.mkt-video_thumb-link {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  background-color: #0a3b3a;
  border-radius: .375rem;
  overflow: hidden;
  text-decoration: none;
}
.mkt-video_thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.mkt-video_thumb-link:hover .mkt-video_thumb-img {
  transform: scale(1.02);
}
.mkt-video_play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 3.5rem;
  height: 3.5rem;
  background-color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}
.mkt-video_play-icon {
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: .1875rem;
}
.mkt-video_share {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.375rem 0.625rem;
  background-color: rgba(255, 255, 255, 0.92);
  color: #0f0f0f;
  border-radius: .25rem;
  font-size: 0.75rem;
}
.mkt-video_share-icon {
  width: .875rem;
  height: .875rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mkt-video_text {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.mkt-video_title {
  color: #0f0f0f;
  margin: 0;
}
.mkt-video_desc {
  color: #6b6b6b;
  margin: 0;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Documents — 2-col grid of compact download cards */
.mkt-doc_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
.mkt-doc_card {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.25rem;
  background-color: #fafafa;
  border-radius: .375rem;
  color: inherit;
  text-decoration: none;
  transition: background-color 0.15s ease;
}
.mkt-doc_card:hover { background-color: #f0f0f0; }
.mkt-doc_icon {
  width: 2rem;
  height: 2rem;
  color: #0f0f0f;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.mkt-doc_text {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
}
.mkt-doc_title {
  color: #0f0f0f;
  margin: 0;
}
.mkt-doc_meta {
  color: #6b6b6b;
}
.mkt-doc_action {
  width: 2.25rem;
  height: 2.25rem;
  background-color: #0f0f0f;
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.15s ease;
}
.mkt-doc_card:hover .mkt-doc_action { transform: translateY(-1px); }

/* Tablet / Mobile */

/* =============================================================
   RESPONSIVE CASCADE FIX — auto-generated re-emission
   Die originalen Webflow-Media-Queries (Zeilen ~3478-5500) werden
   von später angehängten Basis-Regeln überschattet (gleiche
   Spezifität, spätere Position gewinnt). Diese Re-Emission stellt
   die beabsichtigte Mobile/Tablet-Darstellung wieder her.
   NICHT MANUELL EDITIEREN — bei Änderungen die Original-Regeln in
   den oberen Media-Blocks anpassen und neu generieren.
   ============================================================= */

/* =============================================================
   LOVED BY CUSTOMERS — Headline als injizierter erster Slide (Mobile)
   ============================================================= */

/* Injizierter Slide erbt das Styling des standalone Headline-Tiles */
.loved-by_slide-headline {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  flex-shrink: 0;
  padding: 2rem 1.5rem;
  background-color: #fff;
}

/* =============================================================
   MINI-CART — Fehlende & aliasierte Styles
   ============================================================= */

/* Header-Zeile (CART-Titel + Schließen-Button) */
.nav_dropdown-header {
  border-bottom: 1px solid var(--base-color-neutral--neutral-lightest);
  justify-content: space-between;
  align-items: center;
  padding: 1.25rem 1.5rem;
  display: flex;
}

/* Kreisrunder X-Button */
.mini-cart_close {
  cursor: pointer;
  justify-content: center;
  align-items: center;
  display: flex;
}

/* Leerer Warenkorb */
.mini-cart_empty {
  flex-direction: column;
  flex: 1;
  justify-content: flex-start;
  display: flex;
}

/* Zeilen innerhalb product-info (Titel+Preis / Menge+Löschen) */
.mini-cart_line-item-content {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  display: flex;
}
.mini-cart_line-item-content.justify-center {
  align-items: center;
}

/* Löschen-Button */
.mini-cart_line-item-remove {
  color: var(--base-color-neutral--neutral-light);
  cursor: pointer;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  display: flex;
}
.mini-cart_line-item-remove:hover {
  color: var(--base-color-neutral--black);
}

/* Footer-Summen-Zeile (HTML nutzt _total, CSS hatte -total) */
.mini-cart_footer_total {
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

/* Preis-Block in der Footer-Zeile */
.mini-cart_footer-sum {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  flex-direction: column;
  align-items: flex-end;
  display: flex;
}

/* Versand-Progress-Bar Container */
.mini-cart_footer_progress-component {
  grid-row-gap: .5rem;
  border-bottom: 1px solid var(--base-color-neutral--neutral-lightest);
  flex-direction: column;
  padding: 1rem 1.5rem;
  display: flex;
}

/* Progress-Bar Spur */
.mini-cart_footer_progress-bar {
  background-color: var(--base-color-neutral--neutral-lightest);
  border-radius: 6.25rem;
  width: 100%;
  height: .375rem;
  overflow: hidden;
}

/* Progress-Bar Füllung */
.mini-cart_footer_progress-bar-innner {
  background-color: var(--base-color-brand--blue);
  border-radius: 6.25rem;
  height: 100%;
  max-width: 100%;
  transition: width .4s ease;
}

/* Checkout-Button in Marken-Blau */
.button.is-blue {
  background-color: var(--base-color-brand--blue);
  border-color: var(--base-color-brand--blue);
  color: #fff;
}
.button.is-blue:hover {
  background-color: var(--base-color-brand--blue-dark);
  border-color: var(--base-color-brand--blue-dark);
}

/* =============================================================
   DICOTA — MOBILE REFACTOR (Figma 5407-7953)
   Globale Mobile-Überarbeitung der Homepage-/Shop-Sections:
   Slider mit Karten-Peek + Progressbar, 2x2 USP-Grid, kompakte
   Rating Bar, weiße Buttons auf Bild-Sections, Footer-Accordions,
   zentriertes Nav-Logo. Desktop bleibt unverändert.
   ============================================================= */

/* Loved by: Höhen gegen die nachgeladene Swiper-CDN-CSS absichern.
   Die CDN-Datei (swiper-bundle.min.css) wird per JS NACH dieser Datei
   eingehängt und setzt .swiper-wrapper/.swiper-slide auf height:100% —
   deshalb hier mit höherer Spezifität verankern. */
.loved-by_swiper .swiper-wrapper {
  height: 34.125rem;
}
.loved-by_swiper .swiper-slide {
  height: 100%;
}
/* Injizierter Headline-Slide (nur mobile, per JS erzeugt) */

/* =============================================================
   DICOTA PDP — Downloads-Tab (Datenblatt, LoC, Manual, Bilder-ZIP)
   ============================================================= */
.ph_tab-panel-downloads {
  display: none;
}
.product-header_download-list {
  display: flex;
  flex-direction: column;
}
.product-header_download-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 0;
  border-bottom: 1px solid var(--base-color-neutral--neutral-lightest, #e8e8e8);
}
.product-header_download-item:last-child {
  border-bottom: 0;
}
.product-header_download-left {
  display: flex;
  align-items: center;
  gap: .75rem;
  min-width: 0;
  color: #0f0f0f;
}
.product-header_download-left .icon-1x1-tiny {
  width: 1.25rem;
  height: 1.25rem;
  flex: none;
}
.product-header_download-right {
  display: flex;
  align-items: center;
  gap: .5rem;
  flex: none;
}
.product-header_download-right .text-style-link {
  white-space: nowrap;
  cursor: pointer;
}
.loading-spinner {
  width: 1.25rem;
  height: 1.25rem;
  border: 2px solid #f0f0f0;
  border-top-color: #0f0f0f;
  border-radius: 50%;
  animation: ph-dl-spin 1s linear infinite;
  display: none;
}
@keyframes ph-dl-spin {
  to { transform: rotate(360deg); }
}

/* =============================================================
   DICOTA — Wishlist (Make-Hook, Customer-Metafeld)
   Buttons mit li-element="wishlist-button" togglen .is-active;
   aktiver Zustand = gefülltes Herz.
   ============================================================= */
[li-element="wishlist-button"] {
  cursor: pointer;
}
.product-card_favorite.is-active {
  color: #e3342f;
}
.product-card_favorite.is-active svg path {
  fill: currentColor;
  stroke: currentColor;
}
.ph_buy-action.is-active {
  color: #e3342f;
}
.ph_buy-action.is-active .ph_buy-action-icon svg path {
  fill: currentColor;
  stroke: currentColor;
}

/* =============================================================
   DICOTA PDP — Galerie "Mehr erfahren" (Desktop ab 5. Bild)
   Desktop: nur Hauptbild + 3 Thumbs; ab dem 5. Bild eine
   "Mehr erfahren"-Kachel (per JS injiziert, oeffnet Lightbox).
   Mobile: alle Bilder im Swiper, keine Kachel.
   ============================================================= */
@media screen and (min-width: 992px) {
  .swiper-slide.is-product-gallery.is-extra {
    display: none;
  }
  .ph_gallery-more {
    clear: left;
    float: left;
    width: calc(63.6% - .375rem);
    box-sizing: border-box;
    margin-top: .75rem;
    padding: .25rem 0;
    background: none;
    border: 0;
    cursor: pointer;
    text-align: left;
    font-family: "Futura PT", sans-serif;
    font-weight: 600;
    font-size: .875rem;
    color: #0f0f0f;
    text-decoration: underline;
    text-underline-offset: .2em;
  }
  .ph_gallery-more:hover {
    opacity: .65;
  }
}

/* =============================================================
   DICOTA PDP — Reviews (Judge.me-Daten, Figma-Design)
   Leere Sterne abgeschwächt + Empty-State.
   ============================================================= */
.product-reviews_stars svg.is-empty,
.product-reviews_item-stars svg.is-empty {
  color: #d9d9d9;
}
.product-reviews_empty {
  color: #686868;
  font-size: .9375rem;
  margin: 0 0 1rem;
}

/* =============================================================
   DICOTA — Produktkachel-Höhe Mobile (proportional statt fix)
   Höhere Spezifität + Datei-Ende, damit es die Basis-Fixhöhe
   (.product-card_image-link height) zuverlässig überschreibt.
   ============================================================= */

/* =============================================================
   DICOTA PDP — Review-Schreiben Slide-in Panel (Judge.me Submit)
   ============================================================= */
.jm-review-modal {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: none;
}
.jm-review-modal.is-open {
  display: block;
}
.jm-review-modal_overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .45);
  opacity: 0;
  transition: opacity .3s ease;
}
.jm-review-modal.is-open .jm-review-modal_overlay {
  opacity: 1;
}
.jm-review-modal_panel {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 30rem;
  max-width: 92vw;
  background: #fff;
  box-shadow: -8px 0 30px rgba(0, 0, 0, .15);
  transform: translateX(100%);
  transition: transform .35s ease;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}
.jm-review-modal.is-open .jm-review-modal_panel {
  transform: translateX(0);
}
.jm-review-modal_header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem;
  border-bottom: 1px solid var(--base-color-neutral--neutral-lightest, #eee);
}
.jm-review-modal_title {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
}
.jm-review-modal_close {
  background: none;
  border: 0;
  cursor: pointer;
  color: #0f0f0f;
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
}
.jm-review-form {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.jm-review-form_field {
  display: flex;
  flex-direction: column;
  gap: .375rem;
}
.jm-review-form_field label { font-size: .8125rem; font-weight: 600; color: #0f0f0f; }
.jm-review-form_field input,
.jm-review-form_field textarea {
  border: 1px solid #d0d0d0;
  background: #fff;
  padding: .625rem .75rem;
  font: inherit;
  color: #0f0f0f;
  border-radius: 2px;
}
.jm-review-form_field input:focus,
.jm-review-form_field textarea:focus { outline: none; border-color: #0f0f0f; }
.jm-review-form_field textarea { resize: vertical; min-height: 6rem; }
.jm-review-stars-input {
  display: flex;
  gap: .25rem;
}
.jm-review-stars-input button {
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 1.75rem;
  height: 1.75rem;
  color: #d9d9d9;
  transition: color .12s ease;
}
.jm-review-stars-input button.is-active { color: #0f0f0f; }
.jm-review-form_submit {
  margin-top: .25rem;
  width: 100%;
  justify-content: center;
}
.jm-review-form_msg {
  margin: 0;
  font-size: .875rem;
}
.jm-review-form_msg.is-error {
  color: #e3342f;
}
.jm-review-form_msg.is-success {
  color: #149534;
}

/* Live predictive-search status (loading / empty) */
.nav_search-product-status {
  grid-column: 1 / -1;
  padding: .5rem 0;
  color: #686868;
  font-size: .875rem;
  list-style: none;
}

/* =============================================================
   DICOTA PDP — Product Video Section (aus filter_image_set.video)
   ============================================================= */
.section_product-video {
  width: 100%;
}
.product-video_headline {
  margin: 0 0 1.5rem;
}
.product-video_player {
  width: 100%;
  border-radius: .25rem;
  overflow: hidden;
  background: #000;
}
.product-video_player video {
  width: 100%;
  height: auto;
  display: block;
}
.product-video_player iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
  display: block;
  border: 0;
}

/* Product Hero — Features-Tab: Feature-Headlines aus custom.features */
.ph_features-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .5rem;
}
.ph_features-item {
  position: relative;
  padding-left: 1.5rem;
  font-size: .9375rem;
  line-height: 1.45;
  color: #0f0f0f;
}
.ph_features-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: .45em;
  width: .5rem;
  height: .5rem;
  border-right: 1.5px solid #0f0f0f;
  border-bottom: 1.5px solid #0f0f0f;
  transform: rotate(45deg);
}

/* =============================================================
   DICOTA PDP — Abmessungen/Dimensions Modal (Figma 5407-22845)
   Rechtes Panel (29.5625rem), gedimmter+geblurrter Hintergrund.
   Vertikal gestapelt: Headline -> technische Zeichnung (Bild)
   -> Spec-Tabelle. Unten sticky "Downloads"-Leiste.
   ============================================================= */
.ph-dim-modal {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: none;
}
.ph-dim-modal.is-open {
  display: block;
}
.ph-dim-modal_overlay {
  position: absolute;
  inset: 0;
  background: rgba(40, 40, 40, .1);
  -webkit-backdrop-filter: blur(.875rem);
  backdrop-filter: blur(.875rem);
}
.ph-dim-modal_panel {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: min(29.5625rem, 100%);
  background: #fff;
  display: flex;
  flex-direction: column;
  box-shadow: -8px 0 40px rgba(0, 0, 0, .12);
  transform: translateX(100%);
  transition: transform .35s ease;
}
.ph-dim-modal.is-open .ph-dim-modal_panel {
  transform: translateX(0);
}
.ph-dim-modal_close {
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
  z-index: 2;
  background: none;
  border: 0;
  cursor: pointer;
  color: #0f0f0f;
  display: flex;
  width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
}
.ph-dim-modal_body {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 1.5rem 1.875rem 6rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.ph-dim-modal_title {
  margin: 0;
  font-family: "Futura PT", sans-serif;
  font-weight: 600;
  font-size: 1.375rem;
  line-height: 1.1;
  text-transform: uppercase;
  color: #0f0f0f;
}
.ph-dim-modal_media {
  width: 100%;
  aspect-ratio: 254 / 286;
}
.ph-dim-modal_image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.ph-dim_specs {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%;
}
.ph-dim_row {
  display: flex;
  gap: .75rem;
  align-items: flex-start;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--base-color-neutral--neutral-lightest, #e8e8e8);
  font-family: "Futura PT", sans-serif;
  font-size: .875rem;
  line-height: 1.5;
}
.ph-dim_label {
  flex: 0 0 44%;
  color: #6e6e6e;
}
.ph-dim_value {
  flex: 1 1 auto;
  min-width: 0;
  color: #0f0f0f;
}
.ph-dim-modal_footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  padding: 1.5rem;
  box-shadow: 0 -3px 12px rgba(0, 0, 0, .05);
}
.ph-dim-modal_downloads {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: .25rem;
  font-family: "Futura PT", sans-serif;
  font-weight: 600;
  font-size: 1rem;
  color: #0f0f0f;
  text-decoration: none;
}
.ph-dim-modal_downloads-icon {
  display: inline-flex;
  width: 1rem;
  height: 1rem;
}
.ph-dim-modal_downloads-icon svg { width: 100%; height: 100%; }

/* =============================================================
   DICOTA PDP — Produkt-Shots auf grauem Hintergrund
   Produktfotos haben einen weißen Hintergrund. Per
   mix-blend-mode: multiply blendet das Weiß auf das bereits
   graue Container-Grau (.product-header_gallery-lightbox =
   #f4f4f4), das Produkt selbst bleibt dunkel. Lifestyle-Fotos
   werden dabei nur ~4% dunkler (kaum sichtbar). Gleicher Ansatz
   wie bei den Produktkarten (dort mix-blend-mode: darken).
   Nur auf <img> beschränkt → Video-/3D-/External-Tiles bleiben
   unberührt; die Lightbox-Zoom-Ansicht (.ph-lightbox_img, auf
   dunklem Overlay) ebenfalls, da sie eine eigene Klasse hat.
   ============================================================= */
img.product-header_gallery-image {
  background-color: transparent;
  mix-blend-mode: multiply;
}

/* =============================================================
   DICOTA — Volume Pricing / mehrstufiges Anfrage-Formular
   (Acc/B2B Sales Volume Price) — Produkt-Picker, Adress-Grid,
   Success-State. multi-form_double/_triple existieren bereits.
   ============================================================= */
.form_label.is-static {
  position: static;
  transform: none;
  top: auto;
  left: auto;
  padding: 0;
  background: none;
  display: block;
  margin-bottom: .375rem;
  font-size: .75rem;
  color: #5c5c5c;
}
.form_select {
  width: 100%;
  min-height: 3.2rem;
  padding: .5rem 1rem;
  border: 1px solid var(--base-color-neutral--black);
  background-color: transparent;
}
.form_textarea {
  min-height: 8rem;
  resize: vertical;
  padding: .75rem 1rem;
}
.multi-form_subheading {
  margin-top: 1.5rem;
  margin-bottom: .5rem;
}
.multi-form_product-search {
  position: relative;
  margin-top: .5rem;
}
.multi-form_product-results {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + .25rem);
  z-index: 6;
  background: #fff;
  border: 1px solid var(--base-color-neutral--neutral-lightest, #e8e8e8);
  max-height: 18rem;
  overflow-y: auto;
  box-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .1);
}
.multi-form_product-result + .multi-form_product-result { border-top: 1px solid #f0f0f0; }
.multi-form_product-result-btn {
  display: flex;
  align-items: center;
  gap: .75rem;
  width: 100%;
  padding: .5rem .75rem;
  background: none;
  border: 0;
  cursor: pointer;
  text-align: left;
}
.multi-form_product-result-btn:hover { background: #f6f6f6; }
.multi-form_product-result-img {
  width: 2.5rem;
  height: 2.5rem;
  object-fit: contain;
  flex-shrink: 0;
  background: #f4f4f4;
}
.multi-form_product-result-title {
  font-size: .875rem;
  line-height: 1.3;
}
.multi-form_product-list {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  margin-top: 1rem;
}
.multi-form_product-row {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: .625rem .875rem;
  border: 1px solid var(--base-color-neutral--neutral-lightest, #e8e8e8);
}
.multi-form_product-row-title {
  flex: 1 1 auto;
  min-width: 0;
  font-size: .875rem;
}
.multi-form_product-row-qty {
  display: flex;
  align-items: center;
  gap: .5rem;
  flex-shrink: 0;
}
.multi-form_product-row-qty .form_label {
  margin-bottom: 0;
}
.form_input-qty {
  width: 4.5rem;
  min-height: 2.5rem;
  text-align: center;
}
.multi-form_product-row-remove {
  background: none;
  border: 0;
  cursor: pointer;
  color: #9a9a9a;
  display: flex;
  padding: .25rem;
}
.multi-form_product-row-remove:hover { color: #0f0f0f; }
.multi-form_product-empty {
  color: #9a9a9a;
  font-size: .875rem;
  padding: .75rem 0;
}
.multi-form_success {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.5rem 0;
}
.multi-form_success-icon {
  color: #22c55e;
  line-height: 0;
}

/* =============================================================
   DICOTA — Product Presentations (Acc/B2B Mkt Presentations)
   Kategorie-Gruppen (nested theme blocks) mit Präsentations-Zeilen
   (Datei-Icon + Titel + Info + DE/EN/FR-Links). Figma 2323-24050.
   ============================================================= */
.section_presentations {
  width: 100%;
}
.presentations_wrapper {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
.presentations_categories {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.presentations_category {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}
.presentations_category-title {
  margin: 0;
}
.presentations_list {
  background: #f4f4f4;
}
.presentations_row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 1.5rem;
  border-bottom: 2px solid #fff;
}
.presentations_row:last-child { border-bottom: 0; }
.presentations_row-left {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-width: 0;
}
.presentations_icon {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  color: #0f0f0f;
}
.presentations_row-text {
  min-width: 0;
}
.presentations_row-meta {
  margin-top: .125rem;
}
.presentations_row-langs {
  display: flex;
  gap: 1rem;
  flex-shrink: 0;
}
.presentations_lang {
  font-size: .8125rem;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: .2em;
  color: #0f0f0f;
}
.presentations_lang:hover { opacity: .6; }

/* =============================================================
   DICOTA — Collection: ZIP-Download aller Produktbilder
   (Trigger via ?download=true). Overlay + Spinner.
   ============================================================= */
.coll-dl-overlay {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: rgba(255, 255, 255, .92);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
}
.coll-dl-spinner {
  width: 2.5rem;
  height: 2.5rem;
  border: 3px solid #e6e6e6;
  border-top-color: #0f0f0f;
  border-radius: 50%;
  animation: coll-dl-spin 1s linear infinite;
  margin-bottom: 1rem;
}
@keyframes coll-dl-spin { to { transform: rotate(360deg); } }
.coll-dl-title {
  margin: 0 0 .25rem;
  font-size: 1rem;
}
.coll-dl-progress {
  margin: 0;
  font-size: .875rem;
}

/* ==========================================================================
   B2B Solutions sections (_B2B)
   Used by: B2B Solutions Overview, B2B Sol Run Rate, B2B Sol Inspire Team,
            B2B Sol Device Rollout, B2B Sol Security, B2B Sol Consignment,
            B2B Sol Tailored.
   Built on the existing .section_acc-default / .acc-* system; only the
   genuinely new layouts (feature media-split, KPI fact grid, reference logo
   strip, capability card) are defined here. Padding defaults mirror the
   li-settings:custom JSON defaults (top/bottom: 60px).
   ========================================================================== */

/* Overview hub: link card variant — stretches the card so the button sits at
   the bottom and the row of cards stays even. */
.sol-link-card {
  height: 100%;
  justify-content: space-between;
}

/* Media + text feature block (image left, content right) */
.sol-feature {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  align-items: stretch;
  align-self: stretch;
  background-color: #ffffff;
  padding: 0.375rem;
}
.sol-feature_media {
  display: flex;
  align-items: stretch;
  min-height: 18rem;
}
.sol-feature_image {
  width: 100%;
  height: 100%;
  max-height: 32rem;
  object-fit: cover;
  display: block;
}
.sol-feature_content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 1rem;
  padding: 3.5rem;
}

/* KPI / fact callout grid */
.sol-facts_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  align-self: stretch;
}
.sol-facts_item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  background-color: #ffffff;
  padding: 2.5rem;
}
.sol-facts_value {
  font-size: 2.25rem;
  line-height: 1.1;
  font-weight: 600;
}

/* Tailored: capability card (icon + heading + text) reusing acc-card base */
.sol-cap-card {
  height: 100%;
}

/* Reference / customer logo strip */
.sol-refs_grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1rem;
  align-self: stretch;
}
.sol-refs_item {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ffffff;
  padding: 1.5rem;
  min-height: 6rem;
}
.sol-refs_logo {
  width: 100%;
  max-height: 3rem;
  object-fit: contain;
  display: block;
}

/* =============================================================
   DICOTA — B2B No Access (Zugriffssperre + Login-CTA)
   ============================================================= */
.section_no-access {
  width: 100%;
}
.no-access_wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.5rem;
  max-width: 36rem;
  margin: 0 auto;
}
.no-access_icon {
  width: 3.5rem;
  height: 3.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: #f4f4f4;
  color: #0f0f0f;
  flex-shrink: 0;
}
.no-access_icon svg { width: 1.75rem; height: 1.75rem; }
.no-access_content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
}

/* =============================================================
   Liquiflow — Empty-Guard Wrapper
   li-if/li-unless sitzt NIE auf einem li-settings-Element,
   sondern auf diesem transparenten Wrapper (kein eigener Box,
   layout-neutral). span/div je nach Inline/Block-Kontext.
   ============================================================= */
.li-guard {
  display: contents;
}

/* =============================================================
   FAQ Accordion — Mehrere Kategorien (Theme-Blocks) + Anchor-Nav
   ============================================================= */
.faq_categories {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
.faq_category {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.faq_category-title {
  scroll-margin-top: 6rem;
}
.faq_anchor-nav {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  margin-top: 1rem;
}
.faq_anchor-link {
  color: inherit;
  text-decoration: none;
  opacity: .6;
  transition: opacity .2s ease;
}
.faq_anchor-link:hover,
.faq_anchor-link:focus {
  opacity: 1;
}

/* =============================================================
   Rich Text — frei editierbares Rich-Text-Feld
   ============================================================= */
.section_rich-text {
  width: 100%;
}
.rich-text_wrapper {
  max-width: 48rem;
  margin-inline: auto;
}
.rich-text_wrapper.is-full {
  max-width: none;
  margin-inline: 0;
}
.rich-text_wrapper .text-rich-text > * + * {
  margin-top: 1rem;
}

/* =============================================================
   Headline Text — 2-Spalten: Überschrift links, Rich-Text rechts
   ============================================================= */
.section_headline-text {
  width: 100%;
}
.headline-text_grid {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 2rem 5rem;
  align-items: start;
}
.headline-text_left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}
.headline-text_right > * + * { margin-top: 1rem; }

/* =============================================================
   Password (Under Construction) — Hintergrundbild, Logo-Box,
   Text + Passwort-Eingabe hinter Dropdown versteckt
   ============================================================= */
.password_bg-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.password_overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(15, 15, 15, 0.45);
  z-index: 1;
}
.password_content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  width: 100%;
  max-width: 30rem;
  padding: 2rem;
  text-align: center;
}
.password_logo-box {
  background-color: var(--base-color-neutral--white);
  border-radius: var(--border-radius--medium);
  padding: 1.25rem 2rem;
  display: inline-flex;
}
.password_logo {
  height: 2.5rem;
  width: auto;
  display: block;
}
.password_heading,
.password_text {
  color: var(--base-color-neutral--white);
}
.password_toggle-wrapper {
  width: 100%;
  max-width: 24rem;
}
.password_toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  width: 100%;
  background-color: var(--base-color-neutral--white);
  border: 1px solid var(--base-color-neutral--black);
  padding: 0.9rem 1.5rem;
  cursor: pointer;
  color: var(--base-color-neutral--black);
}
.password_toggle-icon {
  width: 1rem;
  height: 1rem;
  flex: none;
  transition: transform 0.3s ease;
}
.password_toggle-icon.is-open {
  transform: rotate(180deg);
}
.password_form-body {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease;
}
.password_form-body.is-open {
  grid-template-rows: 1fr;
}
.password_form-body-content {
  overflow: hidden;
}
.password_form-body-content .login_form {
  border-top: none;
  min-width: 0;
  max-width: none;
  width: 100%;
}

.button-wrapper.is-right {
  justify-content: flex-end;
  align-items: flex-start;
}

/* =============================================================
   Subline auf dunklen Sektionen — Basisfarbe #686868 ist auf
   Schwarz kaum lesbar. Automatischer Fix für alle Kontexte mit
   .background-color-primary / .text-color-white (heller, dezent
   transparenter Ton statt dunklem Grau), analog .text-style-muted
   im Footer.
   ============================================================= */
.background-color-primary .text-style-subline,
.text-color-white .text-style-subline {
  color: rgba(255, 255, 255, 0.7);
}
