@charset "UTF-8";

/* ../../../../../tmp/tmp-2570719-fGLm6URUZkWV/kuck_shop/kuck_shop/public/scss/kuck_shop.bundle.css */
:root {
  --ks-color-ink: #111111;
  --ks-color-ink-soft: #2b2b2b;
  --ks-color-muted: #62666a;
  --ks-color-canvas: #ffffff;
  --ks-color-surface: #f5f5f4;
  --ks-color-line: #dadcdd;
  --ks-color-sale: #c5161d;
  --ks-color-focus: #005fcc;
  --ks-color-overlay: rgb(17 17 17 / 55%);
  --ks-color-hero-overlay: rgb(17 17 17 / 68%);
  --ks-font-sans:
    "Montserrat",
    system-ui,
    -apple-system,
    "Segoe UI",
    sans-serif;
  --ks-space-1: 0.25rem;
  --ks-space-2: 0.5rem;
  --ks-space-3: 0.75rem;
  --ks-space-4: 1rem;
  --ks-space-5: 1.5rem;
  --ks-space-6: 2rem;
  --ks-space-7: 3rem;
  --ks-space-8: 4rem;
  --ks-space-9: 6rem;
}
body:has(.ks-main) {
  margin: 0;
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
  font-family: var(--ks-font-sans);
  font-size: 16px;
  line-height: 1.5;
}
body:has(.ks-main) *,
body:has(.ks-main) *::before,
body:has(.ks-main) *::after {
  box-sizing: border-box;
}
body:has(.ks-main) a {
  color: inherit;
  text-decoration: none;
}
body:has(.ks-main) h1,
body:has(.ks-main) h2,
body:has(.ks-main) h3,
body:has(.ks-main) p {
  margin-top: 0;
}
body:has(.ks-main) h1 {
  max-width: 16ch;
  font-size: clamp(1.75rem, 4vw, 3.75rem);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -0.035em;
}
body:has(.ks-main) h2 {
  font-size: clamp(1.375rem, 2vw, 1.75rem);
  font-weight: 600;
  line-height: 1.25;
}
body:has(.ks-main) h3 {
  font-size: 1rem;
  line-height: 1.375;
}
body:has(.ks-main) :focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 2px;
}
body.ks-menu-open {
  overflow: hidden;
}
.ks-container {
  width: min(100% - 3rem, 1400px);
  margin-inline: auto;
}
.ks-visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.ks-skip-link {
  position: fixed;
  z-index: 60;
  top: var(--ks-space-3);
  left: var(--ks-space-3);
  padding: var(--ks-space-3) var(--ks-space-4);
  color: #fff;
  background: var(--ks-color-focus);
  transform: translateY(-200%);
}
.ks-skip-link:focus {
  color: #fff;
  transform: translateY(0);
}
.ks-eyebrow {
  margin-bottom: var(--ks-space-3);
  color: var(--ks-color-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.ks-header {
  position: sticky;
  z-index: 20;
  top: 0;
  color: var(--ks-color-ink);
  background: rgba(255, 255, 255, 0.96);
  border-bottom: 1px solid var(--ks-color-line);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.ks-header__utility {
  min-height: 32px;
  display: flex;
  align-items: center;
  color: #fff;
  background: var(--ks-color-ink);
  font-size: 0.75rem;
  text-align: center;
}
.ks-header__main {
  min-height: 88px;
  display: grid;
  grid-template-columns: 220px minmax(260px, 1fr) auto;
  gap: var(--ks-space-6);
  align-items: center;
}
.ks-brand {
  display: inline-flex;
  width: -moz-max-content;
  width: max-content;
  flex-direction: column;
  align-items: center;
  line-height: 1;
}
.ks-brand__name {
  font-family: Georgia, serif;
  font-size: 2rem;
  letter-spacing: 0.22em;
}
.ks-brand__since {
  margin-top: 5px;
  font-size: 0.65rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}
.ks-search {
  min-height: 48px;
  display: grid;
  grid-template-columns: 1fr auto auto;
  border: 1px solid var(--ks-color-line);
}
.ks-search input {
  min-width: 0;
  padding: 0 var(--ks-space-4);
  border: 0;
  border-radius: 0;
  color: var(--ks-color-ink);
  background: transparent;
}
.ks-search button {
  min-width: 48px;
  min-height: 46px;
  padding: 0 var(--ks-space-4);
  border: 0;
  color: var(--ks-color-ink);
  background: transparent;
  font-weight: 600;
}
.ks-search__clear {
  font-size: 1.5rem;
}
.ks-search__submit {
  border-left: 1px solid var(--ks-color-line) !important;
}
.ks-header__actions {
  display: flex;
  gap: var(--ks-space-5);
  font-size: 0.875rem;
  font-weight: 600;
}
.ks-header__actions a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.ks-primary-nav {
  min-height: 48px;
  border-top: 1px solid var(--ks-color-line);
}
.ks-primary-nav .ks-container {
  min-height: 48px;
  display: flex;
  justify-content: center;
  gap: clamp(1.5rem, 4vw, 4rem);
}
.ks-primary-nav a {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 2px solid transparent;
}
.ks-primary-nav a:hover {
  border-color: var(--ks-color-ink);
}
.ks-primary-nav__sale {
  color: var(--ks-color-sale) !important;
}
.ks-header__menu-button {
  display: none;
}
.ks-icon-button {
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
  font-size: 1.35rem;
}
.ks-main {
  display: block;
}
.ks-hero {
  background: var(--ks-color-surface);
}
.ks-hero__inner {
  min-height: min(440px, 62vh);
  display: grid;
  grid-template-columns: 5fr 7fr;
  gap: var(--ks-space-7);
  align-items: center;
}
.ks-hero__content {
  padding-block: var(--ks-space-7);
}
.ks-hero__content > p:not(.ks-eyebrow) {
  max-width: 55ch;
  color: var(--ks-color-muted);
}
.ks-hero__visual {
  align-self: stretch;
  min-height: 360px;
  display: grid;
  place-items: end center;
  padding: var(--ks-space-5);
  overflow: hidden;
  color: var(--ks-color-muted);
  background: linear-gradient(135deg, #e5e2dc, #c8c4bd);
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.ks-hero__visual::before {
  content: "";
  align-self: center;
  grid-area: 1/1;
  width: clamp(160px, 25vw, 300px);
  aspect-ratio: 1;
  border: 24px solid rgba(255, 255, 255, 0.42);
  border-radius: 50%;
  box-shadow: 0 0 0 2px rgba(17, 17, 17, 0.1), inset 0 0 0 1px rgba(17, 17, 17, 0.1);
}
.ks-hero__visual span {
  grid-area: 1/1;
  align-self: end;
}
.ks-button-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ks-space-3);
  margin-top: var(--ks-space-5);
}
.ks-button {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--ks-space-3) var(--ks-space-5);
  border: 1px solid var(--ks-color-ink);
  font-size: 0.875rem;
  font-weight: 600;
}
.ks-button--primary {
  color: #fff;
  background: var(--ks-color-ink);
}
.ks-button--primary:hover {
  background: var(--ks-color-ink-soft);
}
.ks-button--secondary {
  background: transparent;
}
.ks-button--link {
  border-color: transparent;
  color: var(--ks-color-danger);
  background: transparent;
}
.ks-button--light {
  color: var(--ks-color-ink) !important;
  background: #fff;
}
.ks-button[disabled] {
  opacity: 0.65;
  cursor: not-allowed;
}
.ks-section {
  padding-block: var(--ks-space-8);
}
.ks-section__heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: var(--ks-space-5);
  margin-bottom: var(--ks-space-5);
}
.ks-section__heading h2 {
  margin-bottom: 0;
}
.ks-text-link,
.ks-services a {
  font-weight: 600;
  text-decoration: underline !important;
  text-underline-offset: 4px;
}
.ks-preview-note {
  max-width: 70ch;
  margin-bottom: var(--ks-space-5);
  color: var(--ks-color-muted);
  font-size: 0.875rem;
}
.ks-product-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--ks-space-5);
}
.ks-product-card {
  min-width: 0;
  background: var(--ks-color-canvas);
}
.ks-product-card__media {
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  background: var(--ks-color-surface);
}
.ks-product-card__placeholder {
  width: 52%;
  aspect-ratio: 0.78;
  display: block;
  position: relative;
  border: 8px solid #d5d2cc;
  border-radius: 46%;
  background: #edebe7;
}
.ks-product-card__placeholder::before,
.ks-product-card__placeholder::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 34%;
  height: 38%;
  translate: -50% 0;
  background: #d5d2cc;
}
.ks-product-card__placeholder::before {
  bottom: 100%;
}
.ks-product-card__placeholder::after {
  top: 100%;
}
.ks-product-card__placeholder i {
  position: absolute;
  inset: 12%;
  border: 1px solid #b5b1aa;
  border-radius: 50%;
}
.ks-product-card__body {
  padding-block: var(--ks-space-4);
}
.ks-product-card__brand {
  margin-bottom: var(--ks-space-1);
  color: var(--ks-color-muted);
  font-size: 0.75rem;
  letter-spacing: 0.08em;
}
.ks-product-card h3 {
  min-height: 44px;
  margin-bottom: var(--ks-space-2);
}
.ks-product-card h3 a {
  display: inline-block;
}
.ks-product-card__meta {
  min-height: 20px;
  margin-bottom: var(--ks-space-2);
  color: var(--ks-color-muted);
  font-size: 0.875rem;
}
.ks-product-card__price {
  margin-bottom: 0;
  font-weight: 700;
}
.ks-categories {
  padding-block: var(--ks-space-8);
  background: var(--ks-color-surface);
}
.ks-category-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--ks-color-line);
  border: 1px solid var(--ks-color-line);
}
.ks-category-grid a {
  min-height: 240px;
  display: flex;
  flex-direction: column;
  justify-content: end;
  padding: var(--ks-space-5);
  background: var(--ks-color-canvas);
}
.ks-category-grid span {
  margin-bottom: auto;
  color: var(--ks-color-muted);
  font-size: 0.75rem;
}
.ks-category-grid strong {
  font-size: 1.125rem;
}
.ks-category-grid small {
  margin-top: var(--ks-space-2);
  color: var(--ks-color-muted);
}
.ks-category-grid a:hover {
  background: #eceae6;
}
.ks-services {
  padding-block: var(--ks-space-9);
  display: grid;
  grid-template-columns: 4fr 8fr;
  gap: var(--ks-space-8);
}
.ks-services__intro > p:last-child {
  max-width: 48ch;
  color: var(--ks-color-muted);
}
.ks-services__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--ks-space-6);
}
.ks-services__items article {
  padding-top: var(--ks-space-4);
  border-top: 2px solid var(--ks-color-ink);
}
.ks-services__items span {
  color: var(--ks-color-muted);
  font-size: 0.75rem;
}
.ks-services__items h3 {
  margin: var(--ks-space-5) 0 var(--ks-space-3);
}
.ks-services__items p {
  color: var(--ks-color-muted);
  font-size: 0.875rem;
}
.ks-services__items a {
  font-size: 0.875rem;
}
.ks-story {
  padding-block: var(--ks-space-9);
  color: #fff;
  background: var(--ks-color-ink);
  text-align: center;
}
.ks-story__inner {
  max-width: 800px;
}
.ks-story .ks-eyebrow,
.ks-story p {
  color: #d8d8d8;
}
.ks-story h2 {
  font-family: Georgia, serif;
  font-size: clamp(2rem, 5vw, 4rem);
}
.ks-footer {
  color: #fff;
  background: var(--ks-color-ink-soft);
}
.ks-footer__newsletter {
  padding-block: var(--ks-space-7);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--ks-space-8);
  border-bottom: 1px solid #555;
}
.ks-footer .ks-eyebrow,
.ks-footer p {
  color: #c9c9c9;
}
.ks-footer__newsletter form label {
  display: block;
  margin-bottom: var(--ks-space-2);
  font-size: 0.875rem;
}
.ks-footer__newsletter form > div {
  display: grid;
  grid-template-columns: 1fr auto;
}
.ks-footer__newsletter input {
  min-width: 0;
  min-height: 48px;
  padding: 0 var(--ks-space-4);
  border: 1px solid #fff;
  border-radius: 0;
  color: #fff;
  background: transparent;
}
.ks-footer__links {
  padding-block: var(--ks-space-7);
  display: grid;
  grid-template-columns: 2fr repeat(3, 1fr);
  gap: var(--ks-space-7);
}
.ks-brand--footer {
  color: #fff !important;
}
.ks-footer nav {
  display: flex;
  flex-direction: column;
  gap: var(--ks-space-3);
}
.ks-footer nav h3 {
  margin-bottom: var(--ks-space-2);
  color: #fff;
}
.ks-footer nav a {
  width: -moz-fit-content;
  width: fit-content;
  color: #d8d8d8 !important;
  font-size: 0.875rem;
}
.ks-footer__legal {
  min-height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #aaa;
  border-top: 1px solid #555;
  font-size: 0.75rem;
}
.ks-drawer-shell {
  position: fixed;
  z-index: 40;
  inset: 0;
}
.ks-drawer-shell[hidden] {
  display: none;
}
.ks-drawer-shell__overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  border: 0;
  background: var(--ks-color-overlay);
}
.ks-drawer {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: min(88vw, 380px);
  padding: var(--ks-space-5);
  overflow-y: auto;
  background: var(--ks-color-canvas);
}
.ks-drawer__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: var(--ks-space-5);
  border-bottom: 1px solid var(--ks-color-line);
}
.ks-drawer__header h2 {
  margin: 0;
}
.ks-drawer nav {
  display: flex;
  flex-direction: column;
}
.ks-drawer nav a {
  min-height: 52px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--ks-color-line);
  font-weight: 600;
}
@media (max-width: 1199px) {
  .ks-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .ks-product-card:last-child {
    display: none;
  }
}
@media (max-width: 991px) {
  .ks-container {
    width: min(100% - 2rem, 1400px);
  }
  .ks-header__utility,
  .ks-primary-nav {
    display: none;
  }
  .ks-header__main {
    min-height: 116px;
    grid-template-columns: 44px 1fr auto;
    gap: var(--ks-space-3);
    padding-block: var(--ks-space-2);
  }
  .ks-header__menu-button {
    display: block;
  }
  .ks-brand {
    justify-self: center;
  }
  .ks-brand__name {
    font-size: 1.55rem;
  }
  .ks-header__actions a:first-child {
    display: none;
  }
  .ks-header__actions {
    gap: 0;
  }
  .ks-search {
    min-height: 48px;
    grid-column: 1/-1;
    grid-row: 2;
  }
  .ks-search__submit {
    padding-inline: var(--ks-space-3) !important;
  }
  .ks-hero__inner {
    min-height: auto;
    grid-template-columns: 1fr;
    gap: 0;
    padding-block: var(--ks-space-5);
  }
  .ks-hero__content {
    padding-block: var(--ks-space-4) var(--ks-space-6);
  }
  .ks-hero__visual {
    min-height: min(70vh, 480px);
    grid-row: 1;
  }
  .ks-services {
    grid-template-columns: 1fr;
    gap: var(--ks-space-6);
  }
  .ks-footer__newsletter {
    grid-template-columns: 1fr;
    gap: var(--ks-space-5);
  }
}
@media (max-width: 767px) {
  .ks-section,
  .ks-categories {
    padding-block: var(--ks-space-7);
  }
  .ks-section__heading {
    align-items: start;
    flex-direction: column;
  }
  .ks-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ks-space-4);
  }
  .ks-product-card:nth-child(n) {
    display: block;
  }
  .ks-category-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .ks-category-grid a {
    min-height: 180px;
  }
  .ks-services {
    padding-block: var(--ks-space-8);
  }
  .ks-services__items {
    grid-template-columns: 1fr;
  }
  .ks-story {
    padding-block: var(--ks-space-8);
  }
  .ks-footer__links {
    grid-template-columns: 1fr 1fr;
    gap: var(--ks-space-6);
  }
  .ks-footer__links > div {
    grid-column: 1/-1;
  }
}
@media (max-width: 359px) {
  .ks-product-grid,
  .ks-category-grid,
  .ks-footer__links {
    grid-template-columns: 1fr;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
@font-face {
  font-family: "Montserrat";
  src: url(/assets/kuck_shop/fonts/Montserrat-VariableFont_wght.ttf) format("truetype");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  src: url(/assets/kuck_shop/fonts/Montserrat-Italic-VariableFont_wght.ttf) format("truetype");
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
}
:root {
  --ks-color-success: #166534;
  --ks-color-warning: #8a4b08;
  --ks-color-danger: #b42318;
  --ks-radius-field: 0.25rem;
  --ks-content-width: 1400px;
}
.product-page .product-code,
.item-card-group-section .product-code {
  display: none;
}
html:not([data-theme=dark]) body.product-page .item-website-specification .spec-label {
  color: var(--ks-color-muted);
}
.ks-product-details .item-website-specification {
  margin-top: var(--ks-space-5);
}
.ks-product-details .item-website-specification > .col-md-11 {
  width: 100%;
  max-width: 900px;
  margin-inline: auto;
  padding-inline: 0.75rem;
}
.ks-product-details .item-website-specification table.table {
  width: 100%;
  margin: 0;
  table-layout: fixed;
  border: 0;
  border-collapse: separate;
  border-spacing: 0.75rem 0.75rem;
  background: transparent;
}
.ks-product-details .item-website-specification table.table td {
  padding: 0.85rem 1rem;
  border-top: 0;
  border: 0;
  vertical-align: middle;
  line-height: 1.4;
  background: var(--ks-color-surface-subtle, #f7f7f6);
}
.ks-product-details .item-website-specification table.table tr:nth-child(even) td {
  background: var(--ks-color-surface, #ededed);
}
.ks-product-details .item-website-specification table.table td.spec-label {
  width: 40%;
  color: var(--ks-color-ink-soft, #2b2b2b);
  font-weight: 650;
  text-align: right;
}
.ks-product-details .item-website-specification table.table td.spec-content {
  color: var(--ks-color-ink);
  font-weight: 500;
}
@media (max-width: 767.98px) {
  .ks-product-details {
    padding-inline: 0.75rem;
  }
  .ks-product-details .item-website-specification > .col-md-11 {
    max-width: none;
    padding-inline: 0;
  }
  .ks-product-details .item-website-specification table.table {
    table-layout: auto;
    border-spacing: 0.5rem 0.75rem;
  }
  .ks-product-details .item-website-specification table.table td {
    padding: 0.75rem;
    vertical-align: top;
    overflow-wrap: anywhere;
  }
  .ks-product-details .item-website-specification table.table td.spec-label {
    width: 42%;
    text-align: left;
    word-break: normal;
  }
  .ks-product-details .item-website-specification table.table td.spec-content {
    width: 58%;
    word-break: normal;
  }
}
#product-listing .cart-indicator {
  display: none;
}
.ks-catalogue-runtime,
.ks-catalogue-ssr {
  min-width: 0;
}
.ks-catalogue-runtime {
  position: relative;
}
.ks-filters-panel {
  min-width: 0;
}
.ks-filter-toggle,
.ks-filter-close {
  min-height: 44px;
}
.ks-catalogue-filters-column,
.ks-price-filter {
  min-inline-size: 0;
}
.ks-price-filter__fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem;
  align-items: center;
}
.ks-price-filter__fields label {
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.35;
}
.ks-catalogue-results-summary {
  margin-block: 0 1rem;
}
.ks-catalogue-results-count {
  margin: 0;
  font-weight: 600;
}
.ks-active-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 0.6rem;
  align-items: center;
  margin-top: 0.6rem;
  padding-top: 0.6rem;
  border-top: 1px solid var(--ks-color-line);
}
.ks-active-filters__title {
  color: var(--ks-color-muted);
  font-size: 0.75rem;
  font-weight: 600;
}
.ks-active-filters__clear {
  margin-inline-start: 0.25rem;
  color: var(--ks-color-muted);
  font-size: 0.75rem;
  font-weight: 600;
  text-decoration: none;
}
.ks-active-filters__clear:hover,
.ks-active-filters__clear:focus-visible {
  color: var(--ks-color-ink);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.ks-filters-panel__actions {
  gap: 0.75rem;
  padding-block: var(--ks-space-3);
  border-top: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
}
.ks-active-filters ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-active-filters li a {
  display: inline-flex;
  min-height: 2.25rem;
  gap: 0.45rem;
  align-items: center;
  padding: 0.35rem 0.7rem;
  border: 1px solid var(--ks-color-line);
  border-radius: 0.25rem;
  color: var(--ks-color-ink);
  background: #fff;
  font-size: 0.875rem;
  text-decoration: none;
}
.ks-active-filters li a span[aria-hidden=true] {
  color: var(--ks-color-muted);
  font-size: 1rem;
  line-height: 1;
}
.ks-active-filters li a:hover,
.ks-active-filters li a:focus-visible {
  border-color: var(--ks-color-ink);
  text-decoration: none;
}
.ks-filters-panel :focus-visible,
.ks-active-filters :focus-visible,
.ks-filter-toggle:focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 2px;
}
@media (max-width: 991.98px) {
  body.ks-filter-drawer-open {
    overflow: hidden;
  }
  .ks-filters-panel {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 1050;
    overflow-y: auto;
    padding: 1.25rem;
    background: var(--ks-color-canvas, #fff);
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.2);
  }
  .ks-filters-panel.is-open {
    display: block;
  }
  .ks-filters-panel__header {
    position: sticky;
    top: -1.25rem;
    z-index: 1;
    padding-top: 1.25rem;
    background: var(--ks-color-canvas, #fff);
  }
}
@media (min-width: 992px) {
  .ks-filters-panel {
    display: block;
  }
}
.ks-facet {
  min-width: 0;
  margin: 0;
  border: 0;
}
.ks-facet > summary {
  display: flex;
  min-height: 44px;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  list-style: none;
  font-size: 1rem;
  line-height: 1.5;
}
.ks-facet > summary::-webkit-details-marker {
  display: none;
}
.ks-facet > summary::after {
  content: "+";
  font-size: 1.25rem;
  line-height: 1;
}
.ks-facet[open] > summary::after {
  content: "\2212";
}
.ks-facet__content {
  min-inline-size: 0;
  padding: var(--ks-space-2) 0 0;
  margin: 0;
  border: 0;
}
.ks-facet .filter-options {
  max-height: 18rem;
  overflow: auto;
  overscroll-behavior: contain;
}
.ks-facet-input {
  width: 1rem;
  height: 1rem;
  margin-right: 0.5rem;
}
.ks-facet-search {
  width: 100%;
}
.ks-catalogue-loading {
  margin-block: 1rem;
  color: var(--ks-color-ink-soft);
}
#product-listing[aria-busy=true] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 21rem;
  visibility: hidden;
  pointer-events: none;
}
#product-listing .out-of-stock {
  color: var(--ks-color-danger);
}
#product-listing .in-stock {
  color: var(--ks-color-success);
}
#product-listing .card-img-container {
  aspect-ratio: 16/9;
  overflow: hidden;
}
#product-listing .card-img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.ks-quick-view__trigger {
  width: 100%;
  min-width: 44px;
  min-height: 44px;
  max-width: 100%;
  padding: 0.5rem 0.75rem;
  margin-top: var(--ks-space-3, 0.75rem);
  border: 1px solid var(--ks-color-ink, #111);
  color: var(--ks-color-ink, #111);
  background: var(--ks-color-canvas, #fff);
  font: inherit;
  font-weight: 600;
  line-height: 1.25;
  white-space: normal;
  overflow-wrap: anywhere;
  cursor: pointer;
}
.ks-quick-view__trigger:hover,
.ks-quick-view__trigger:focus-visible {
  color: var(--ks-color-canvas, #fff);
  background: var(--ks-color-ink, #111);
}
body.ks-quick-view-open {
  overflow: hidden;
}
dialog.ks-quick-view {
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  height: 100vh;
  max-height: none;
  padding: clamp(0.75rem, 3vw, 2rem);
  margin: 0;
  border: 0;
  background: rgba(17, 17, 17, 0.55);
  overflow: auto;
}
dialog.ks-quick-view::backdrop {
  background: transparent;
}
.ks-quick-view__surface {
  width: min(100%, 58rem);
  max-height: calc(100vh - 1.5rem);
  min-width: 0;
  padding: clamp(1rem, 3vw, 2rem);
  margin: auto;
  border: 1px solid var(--ks-color-line, #dadcdd);
  color: var(--ks-color-ink, #111);
  background: var(--ks-color-canvas, #fff);
  overflow: auto;
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.24);
}
.ks-quick-view__surface,
.ks-quick-view__surface * {
  box-sizing: border-box;
  max-width: 100%;
}
.ks-quick-view__close {
  min-width: 44px;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 0.75rem;
  margin-left: auto;
  border: 1px solid var(--ks-color-line, #dadcdd);
  color: var(--ks-color-ink, #111);
  background: var(--ks-color-canvas, #fff);
  font: inherit;
  cursor: pointer;
}
.ks-quick-view__close:hover,
.ks-quick-view__close:focus-visible {
  border-color: var(--ks-color-ink, #111);
  text-decoration: underline;
}
.ks-quick-view__content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(1rem, 4vw, 3rem);
  align-items: center;
  margin-top: var(--ks-space-4, 1rem);
}
.ks-quick-view__image {
  display: block;
  width: 100%;
  max-height: min(64vh, 34rem);
  -o-object-fit: contain;
  object-fit: contain;
}
.ks-quick-view__details {
  min-width: 0;
}
.ks-quick-view__brand,
.ks-quick-view__price,
.ks-quick-view__availability {
  margin: 0 0 var(--ks-space-3, 0.75rem);
}
.ks-quick-view__brand {
  color: var(--ks-color-muted, #62666a);
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.ks-quick-view__title {
  margin: 0 0 var(--ks-space-4, 1rem);
  font-size: clamp(1.375rem, 4vw, 2.25rem);
  line-height: 1.15;
  overflow-wrap: anywhere;
}
.ks-quick-view__price {
  font-size: clamp(1.25rem, 3vw, 1.75rem);
  font-weight: 700;
}
.ks-quick-view__availability {
  color: inherit;
}
.ks-quick-view__cta {
  min-width: 44px;
  min-height: 48px;
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 1rem;
  border: 1px solid var(--ks-color-ink, #111);
  color: var(--ks-color-canvas, #fff);
  background: var(--ks-color-ink, #111);
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
}
.ks-quick-view__cta:hover,
.ks-quick-view__cta:focus-visible {
  background: var(--ks-color-ink-soft, #2b2b2b);
  text-decoration: underline;
}
@media (max-width: 767.98px) {
  dialog.ks-quick-view {
    padding: 0.5rem;
  }
  .ks-quick-view__surface {
    max-height: calc(100vh - 1rem);
    padding: 1rem;
  }
  .ks-quick-view__content {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ks-space-4, 1rem);
  }
  .ks-quick-view__image {
    max-height: 42vh;
  }
}
@media (max-width: 389px) {
  dialog.ks-quick-view {
    padding: 0.25rem;
  }
  .ks-quick-view__surface {
    padding: 0.75rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  dialog.ks-quick-view,
  dialog.ks-quick-view * {
    animation: none;
    transition: none;
    scroll-behavior: auto;
  }
}
.ks-webshop-product__secondary > .ks-product-trust-strip {
  width: min(100%, var(--ks-content-width, 1400px));
  margin: 1.5rem auto 0;
  padding: 1.25rem 2rem;
  border: 1px solid var(--ks-color-line, #dedede);
  border-radius: 0.5rem;
  background: var(--ks-color-surface, #fff);
  box-sizing: border-box;
}
.ks-webshop-product__secondary > .ks-product-trust-strip .ks-trust-strip__item article {
  row-gap: 0.15rem;
}
.ks-webshop-product__secondary > .ks-product-trust-strip .ks-trust-strip__item h3 {
  margin-bottom: 0;
}
@media (max-width: 767.98px) {
  .ks-webshop-product__secondary > .ks-product-trust-strip {
    padding-inline: 1rem;
  }
}
.ks-catalogue-ssr__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr));
  gap: 1rem;
  margin: 1rem 0;
  padding: 0;
  list-style: none;
}
.ks-catalogue-ssr__item a {
  display: grid;
  grid-template-columns: 4rem minmax(0, 1fr);
  gap: 0.75rem;
  align-items: center;
  min-height: 4.5rem;
  padding: 0.5rem;
  border: 1px solid var(--gray-300);
  border-radius: 0.5rem;
  color: inherit;
}
.ks-catalogue-ssr__item img {
  width: 4rem;
  height: 4rem;
  -o-object-fit: contain;
  object-fit: contain;
}
.ks-catalogue-ssr__empty {
  margin-block: 1rem;
}
.ks-webshop-product .product-title {
  margin: 0;
  color: var(--ks-color-ink);
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 700;
  line-height: 1.15;
}
.ks-webshop-product__brand,
.ks-webshop-product__reference {
  margin: 0 0 var(--ks-space-2);
  color: var(--ks-color-ink-soft);
}
.ks-webshop-product__reference.is-missing {
  color: var(--ks-color-warning);
}
.ks-webshop-product__brand {
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.ks-webshop-product__commerce {
  display: grid;
  gap: var(--ks-space-3);
  margin-block: var(--ks-space-5);
}
.ks-webshop-product__price {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ks-space-2);
  align-items: baseline;
  margin: 0;
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
}
.ks-webshop-product__stock,
.ks-webshop-product__lead-time,
.ks-webshop-product__notice,
.ks-webshop-product__cart-status {
  margin: 0;
}
.ks-webshop-product__lead-time {
  max-width: 48ch;
  color: var(--ks-color-muted);
}
.ks-webshop-product__lead-time a,
.ks-webshop-product__trust a {
  color: var(--ks-color-ink);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.ks-webshop-product__trust {
  display: grid;
  gap: var(--ks-space-2);
  padding: var(--ks-space-4);
  margin: var(--ks-space-2) 0 0;
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas-soft, #f7f7f5);
  list-style-position: inside;
}
.ks-webshop-product__stock.is-in-stock {
  color: var(--ks-color-success);
}
.ks-webshop-product__stock.is-on-order,
.ks-webshop-product__stock.is-unknown {
  color: var(--ks-color-warning);
}
.ks-webshop-product__stock.is-out-of-stock,
.ks-webshop-product__notice {
  color: var(--ks-color-danger);
}
.ks-webshop-product__cta {
  width: min(100%, 24rem);
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.ks-webshop-product__description {
  min-width: 0;
  max-width: 100%;
  margin-top: var(--ks-space-6);
  overflow-wrap: anywhere;
  word-break: break-word;
}
.ks-webshop-product__description :where(img, iframe, table) {
  max-width: 100%;
}
.ks-description,
.ks-description-content {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.ks-description-content :where(img, iframe, table) {
  max-width: 100%;
}
.ks-description-content a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: max(1px, 0.08em);
  text-underline-offset: 0.16em;
}
.ks-description-toggle {
  min-height: 44px;
  margin-top: var(--ks-space-3);
  padding: 0.625rem 1rem;
  border: 1px solid var(--ks-color-ink);
  background: var(--ks-color-canvas);
  color: var(--ks-color-ink);
  font: inherit;
  font-weight: 700;
  line-height: 1.25;
  text-align: left;
  cursor: pointer;
}
.ks-description-toggle:hover {
  background: #fff;
}
.ks-description-toggle:focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 3px;
}
.ks-webshop-product__salons a[href^="/contact"] {
  color: var(--ks-color-ink);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.ks-webshop-product__salons a[href^="/contact"]:focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 2px;
}
.ks-product-reviews {
  max-width: 70rem;
  padding: var(--ks-space-5) 0;
  margin-top: var(--ks-space-6);
  border-top: 1px solid var(--ks-color-line);
}
.ks-product-reviews__header {
  display: flex;
  gap: var(--ks-space-5);
  align-items: baseline;
  justify-content: space-between;
}
.ks-product-reviews__header h2 {
  margin-bottom: var(--ks-space-2);
}
.ks-product-reviews__header p,
.ks-product-review footer,
.ks-product-reviews__empty {
  color: var(--ks-color-muted);
}
.ks-product-reviews__average {
  white-space: nowrap;
}
.ks-product-reviews__list {
  display: grid;
  gap: var(--ks-space-4);
  padding: 0;
  margin: var(--ks-space-5) 0;
  list-style: none;
}
.ks-product-review {
  padding: var(--ks-space-4);
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-surface);
}
.ks-product-review h3,
.ks-product-review p {
  margin: var(--ks-space-2) 0;
}
.ks-product-review__rating {
  color: var(--ks-color-warning);
  letter-spacing: 0.1em;
}
.ks-product-review footer {
  font-size: 0.875rem;
}
.ks-product-reviews__all {
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.ks-product-review-form {
  max-width: 40rem;
  padding: var(--ks-space-5);
  margin-top: var(--ks-space-6);
  border: 1px solid var(--ks-color-line);
}
.ks-product-review-form fieldset {
  display: grid;
  gap: var(--ks-space-2);
  padding: 0;
  border: 0;
}
.ks-product-review-form legend {
  margin-bottom: var(--ks-space-3);
  font-size: 1.25rem;
  font-weight: 700;
}
.ks-product-review-form input:not([type=hidden]),
.ks-product-review-form select,
.ks-product-review-form textarea {
  width: 100%;
  min-height: 44px;
  padding: 0.625rem 0.75rem;
  border: 1px solid var(--ks-color-line);
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
  font: inherit;
}
.ks-product-review-form textarea {
  min-height: 8rem;
  resize: vertical;
}
.ks-product-review-form button {
  min-height: 48px;
  padding: 0.625rem 1rem;
  border: 1px solid var(--ks-color-ink);
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}
.ks-product-review-form button:disabled {
  cursor: wait;
  opacity: 0.65;
}
.ks-product-review-form__status {
  min-height: 1.5em;
  margin: 0;
}
.ks-site-navbar {
  border-bottom: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
}
.ks-site-navbar > .container {
  display: flex;
  gap: var(--ks-space-4);
  align-items: center;
}
.ks-site-navbar .navbar-brand img {
  width: auto;
  max-width: min(180px, 38vw);
  height: 44px;
  -o-object-fit: contain;
  object-fit: contain;
}
.ks-site-navbar .navbar-brand strong {
  color: var(--ks-color-ink);
  font-family:
    Georgia,
    "Times New Roman",
    serif;
  font-size: 1.75rem;
  letter-spacing: 0.08em;
}
.ks-site-navbar .navbar-toggler {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
}
.ks-site-navbar .navbar-toggler > span {
  color: inherit;
}
@media (max-width: 1399.98px) {
  .ks-site-navbar > .container {
    flex-wrap: wrap;
  }
  .ks-site-navbar .navbar-collapse {
    min-width: 100%;
    order: 4;
  }
}
@media (min-width: 1400px) {
  .ks-site-navbar > .container {
    max-width: calc(100% - var(--ks-space-6));
    gap: var(--ks-space-2);
  }
  .ks-site-navbar .navbar-toggler {
    display: none;
  }
  .ks-site-navbar .navbar-collapse {
    min-width: 0;
    display: flex;
    flex-basis: auto;
  }
  .ks-site-navbar .navbar-nav {
    flex-direction: row;
    align-items: center;
    margin-left: auto;
  }
  .ks-global-search {
    min-width: 16rem;
    flex: 0 1 16rem;
  }
  .ks-site-navbar .navbar-nav .nav-link {
    padding-inline: 0.45rem;
    font-size: 0.85rem;
    letter-spacing: 0.01em;
    white-space: nowrap;
  }
}
.ks-private-navbar__links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ks-space-3);
  align-items: center;
}
.ks-private-navbar__links a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: var(--ks-color-ink);
}
.ks-private-access {
  min-height: min(42rem, 60vh);
  padding-block: var(--ks-space-7);
}
.ks-private-access > :not(h1) {
  max-width: 58ch;
}
.ks-account-panel--quick {
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid var(--ks-color-line);
  border-radius: 0;
  background: linear-gradient(135deg, var(--ks-color-canvas-soft, #f7f7f5), var(--ks-color-canvas, #fff));
  box-shadow: 0 1rem 2.5rem rgba(17, 17, 17, 0.06);
}
.ks-account-panel--quick > h3 {
  margin: 0;
  color: var(--ks-color-ink);
  font-size: clamp(1.25rem, 2vw, 1.6rem);
  font-weight: 650;
  line-height: 1.15;
  letter-spacing: -0.025em;
}
.ks-account-action-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.875rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ks-account-action-list li {
  min-width: 0;
}
.ks-account-action-list a {
  display: flex;
  height: 100%;
  min-height: 6.25rem;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1.1rem 1rem 1.1rem 1.15rem;
  border: 1px solid var(--ks-color-line);
  border-radius: 0;
  background: var(--ks-color-canvas, #fff);
  box-sizing: border-box;
  color: var(--ks-color-ink);
  font-size: 0.95rem;
  font-weight: 650;
  line-height: 1.35;
  text-decoration: none;
  transition-property:
    transform,
    box-shadow,
    border-color,
    background-color;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
.ks-account-action-list a span[aria-hidden=true] {
  display: inline-flex;
  width: 2rem;
  height: 2rem;
  flex: 0 0 2rem;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--ks-color-ink);
  color: var(--ks-color-canvas, #fff);
  font-size: 1.15rem;
  font-weight: 500;
  line-height: 1;
  transition-property: transform, background-color;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
.ks-account-action-list a:hover {
  border-color: var(--ks-color-ink);
  background: var(--ks-color-canvas, #fff);
  box-shadow: 0 0.65rem 1.25rem rgba(17, 17, 17, 0.09);
  transform: translateY(-2px);
}
.ks-account-action-list a:hover span[aria-hidden=true],
.ks-account-action-list a:focus-visible span[aria-hidden=true] {
  transform: translateX(2px);
}
.ks-account-action-list a:focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 3px;
}
.ks-account-action-list a:active {
  transform: scale(0.96);
}
@media (max-width: 900px) {
  .ks-account-action-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 560px) {
  .ks-account-action-list {
    grid-template-columns: 1fr;
  }
  .ks-account-action-list a {
    min-height: 4.5rem;
  }
}
.ks-global-search {
  min-width: min(18rem, 30vw);
  display: flex;
  margin-left: auto;
}
.ks-global-search input,
.ks-global-search button {
  min-height: 44px;
  border-radius: 0;
}
.ks-global-search input {
  min-width: 0;
  border: 1px solid var(--ks-color-line);
}
.ks-global-search button {
  width: 56px;
  min-width: 56px;
  display: grid;
  place-items: center;
  padding: 0;
  position: relative;
  z-index: 1;
  margin-left: -1px;
  border: 1px solid var(--ks-color-ink);
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
}
.ks-site-footer {
  padding-block: var(--ks-space-7);
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink-soft);
}
.ks-site-footer__newsletter {
  max-width: 60ch;
  padding-bottom: var(--ks-space-6);
  margin-bottom: var(--ks-space-6);
  border-bottom: 1px solid var(--ks-color-muted);
}
.ks-site-footer__newsletter h2 {
  margin: 0 0 var(--ks-space-2);
  font-size: 1.25rem;
}
.ks-site-footer__newsletter p {
  margin: 0 0 var(--ks-space-3);
}
.ks-site-footer__newsletter label {
  display: block;
  margin-bottom: var(--ks-space-2);
  font-weight: 600;
}
.ks-site-footer__newsletter-fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--ks-space-2);
  align-items: stretch;
}
.ks-site-footer__newsletter input[type=email],
.ks-site-footer__newsletter button {
  min-width: 0;
  min-height: 44px;
  padding: var(--ks-space-2) var(--ks-space-3);
  border: 1px solid var(--ks-color-canvas);
  border-radius: 0;
  font: inherit;
}
.ks-site-footer__newsletter input[type=email] {
  color: var(--ks-color-canvas);
  background: transparent;
}
.ks-site-footer__newsletter input[type=email]::-moz-placeholder {
  color: #d8d8d8;
}
.ks-site-footer__newsletter input[type=email]::placeholder {
  color: #d8d8d8;
}
.ks-site-footer__newsletter button {
  color: var(--ks-color-ink-soft);
  background: var(--ks-color-canvas);
  cursor: pointer;
}
.ks-site-footer__newsletter button:disabled {
  cursor: wait;
  opacity: 0.65;
}
.ks-site-footer__newsletter-consent {
  display: flex;
  gap: var(--ks-space-2);
  align-items: flex-start;
  margin-top: var(--ks-space-3);
  font-size: 0.875rem;
  font-weight: 400;
}
.ks-site-footer__newsletter-consent input {
  flex: 0 0 auto;
  width: 0.95rem;
  height: 0.95rem;
  margin: 0.18rem 0 0;
}
.ks-site-footer__newsletter-status {
  min-height: 1.5em;
  margin-top: var(--ks-space-3);
}
.ks-site-footer__eyebrow,
.ks-footer__eyebrow {
  color: var(--ks-color-canvas);
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.ks-newsletter-description,
.ks-newsletter-honeypot {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.ks-site-footer a {
  color: inherit;
}
.ks-site-footer h2 {
  color: inherit;
}
.ks-site-navbar .navbar-brand img {
  width: 173px;
  height: 40px;
}
.ks-site-navbar .ks-brand-logo {
  filter: brightness(0);
}
.page_content .hero-subtitle,
.page-breadcrumbs .breadcrumb-item span {
  color: var(--ks-color-ink-soft);
}
body .for-login .login-content.page-card .password-field .toggle-password,
body .for-login .login-content.page-card .forgot-password-message > a,
body .for-login .login-content.page-card .social-logins .login-divider,
body .page-card .toggle-password,
body .page-card a[href$="#forgot"],
body .page-card .login-divider {
  color: var(--ks-color-ink);
}
body .for-login .sign-up-message,
body .for-signup .sign-up-message,
body .for-forgot .sign-up-message,
body .for-login-with-email-link .sign-up-message {
  color: var(--ks-color-ink);
}
body .page-card .toggle-password[role=button] {
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
body .page-card .toggle-password[role=button]:focus {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 2px;
}
body[data-path=login] {
  background: var(--ks-color-surface, #fff);
}
body[data-path=login] #page-login {
  min-height: 100vh;
  background: var(--ks-color-surface, #fff);
}
body[data-path=login] .for-login,
body[data-path=login] .for-signup,
body[data-path=login] .for-forgot,
body[data-path=login] .for-login-with-email-link {
  width: min(100%, 28rem);
  margin-inline: auto;
  padding: clamp(1.5rem, 3vw, 2rem) 1rem clamp(2rem, 4vw, 3rem);
}
body[data-path=login] .login-content.page-card {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body[data-path=login] .page-card-head {
  margin: 0 0 1.5rem;
  padding: 0;
  text-align: center;
}
body[data-path=login] .page-card-head .app-logo,
body[data-path=login] .page-card-head .page-card-subtitle {
  display: none;
}
body[data-path=login] .page-card-head h2,
body[data-path=login] .page-card-head h4 {
  margin: 0;
  color: var(--ks-color-ink, #171717);
  font-size: clamp(1.5rem, 3vw, 1.75rem);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.035em;
}
body[data-path=login] .page-card-body {
  padding: 0;
}
body[data-path=login] .form-group {
  margin-bottom: 1rem;
}
body[data-path=login] .form-group label,
body[data-path=login] .form-label {
  display: block;
  margin: 0 0 0.375rem;
  color: var(--ks-color-ink-soft, #4b5563);
  font-size: 0.875rem;
  font-weight: 400;
}
body[data-path=login] .form-label.sr-only {
  inset-inline-start: 0;
  margin: 0;
}
body[data-path=login] .login-content.page-card .page-card-body .form-control {
  width: 100%;
  min-height: 2.5rem;
  padding: 0.5rem 0.875rem;
  border: 1px solid var(--ks-color-line, #d7d7d7);
  border-radius: var(--ks-radius-field, 0.25rem);
  background: #fff;
  color: var(--ks-color-ink, #171717);
  font: inherit;
  font-size: 1rem;
  line-height: 1.25;
  box-shadow: none;
  transition-property: border-color, box-shadow;
  transition-duration: 150ms;
}
body[data-path=login] .login-content.page-card .page-card-body .password-field .form-control {
  padding-inline-end: 3rem;
}
body[data-path=login] .login-content.page-card .page-card-body .form-control:focus {
  border-color: var(--ks-color-ink, #171717);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--ks-color-focus, #2563eb) 22%, transparent);
}
body[data-path=login] .field-icon {
  display: none;
}
body[data-path=login] .password-field .toggle-password {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.5rem;
  min-height: 2.5rem;
  color: var(--ks-color-ink-soft, #4b5563);
}
body[data-path=login] .password-field svg.toggle-password {
  box-sizing: border-box;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0.625rem;
}
body[data-path=login] .login-content.page-card .page-card-body .password-field .toggle-password svg,
body[data-path=login] .login-content.page-card .page-card-body .password-field .toggle-password i,
body[data-path=login] .login-content.page-card .page-card-body .password-field .toggle-password .icon {
  width: 1.25rem;
  height: 1.25rem;
  font-size: 1.25rem;
}
body[data-path=login] .forgot-password-message,
body[data-path=login] .login-with-email-link {
  margin: -0.25rem 0 1rem;
  text-align: center;
}
body[data-path=login] .forgot-password-message a,
body[data-path=login] .login-with-email-link a {
  color: var(--ks-color-ink-soft, #4b5563);
  text-decoration: none;
}
body[data-path=login] .forgot-password-message a:hover,
body[data-path=login] .login-with-email-link a:hover {
  color: var(--ks-color-ink, #171717);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
body[data-path=login] .page-card-actions {
  padding: 0;
}
body[data-path=login] .btn-login {
  width: 100%;
  min-height: 2.5rem;
  white-space: normal;
  overflow-wrap: anywhere;
  border: 1px solid var(--ks-color-ink, #171717);
  border-radius: var(--ks-radius-field, 0.25rem);
  background: var(--ks-color-ink, #171717);
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  transition-property:
    background-color,
    color,
    border-color,
    scale;
  transition-duration: 150ms;
}
body[data-path=login] .btn-login:hover {
  background: #fff;
  color: var(--ks-color-ink, #171717);
}
body[data-path=login] .btn-login:active {
  scale: 0.96;
}
body[data-path=login] .btn-login-option {
  display: block;
  width: 100%;
  min-height: 2.5rem;
  margin-top: 0.5rem;
  border: 0;
  background: transparent;
  color: var(--ks-color-ink-soft, #4b5563);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
body[data-path=login] .sign-up-message {
  margin-top: 1.5rem;
  color: var(--ks-color-ink-soft, #4b5563);
  text-align: center;
}
body[data-path=login] .login-error-banner,
body[data-path=login] .login-success-banner,
body[data-path=login] .field-error {
  border-radius: var(--ks-radius-field, 0.25rem);
}
body[data-path=login] .ks-login-feedback {
  margin: 0.75rem 0 0;
  padding: 0.75rem 1rem;
  border: 1px solid var(--ks-color-line, #dadcdd);
  border-radius: var(--ks-radius-field, 0.25rem);
  background: var(--ks-color-canvas, #fff);
  color: var(--ks-color-ink, #171717);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: normal;
  text-align: left;
  text-transform: none;
  overflow-wrap: anywhere;
}
body[data-path=login] .ks-login-feedback[data-state=error] {
  border-color: var(--ks-color-sale, #c5161d);
  color: var(--ks-color-sale, #c5161d);
}
body[data-path=login] .ks-login-feedback[hidden] {
  display: none;
}
@media (max-width: 40rem) {
  body[data-path=login] .page-card-head h2,
  body[data-path=login] .page-card-head h4 {
    font-size: clamp(1.5rem, 6vw, 1.75rem);
  }
  body[data-path=login] .login-content.page-card .page-card-body .form-control,
  body[data-path=login] .btn-login,
  body[data-path=login] .btn-login-option,
  body[data-path=login] .password-field .toggle-password {
    min-height: 2.75rem;
  }
  body[data-path=login] .password-field .toggle-password {
    min-width: 2.75rem;
  }
  body[data-path=login] .password-field svg.toggle-password {
    padding: 0.75rem;
  }
}
.about-content a,
.contact-content a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: max(1px, 0.08em);
  text-underline-offset: 0.2em;
}
.about-content :focus-visible,
.contact-content :focus-visible,
.page-card :focus-visible,
.ks-site-navbar :focus-visible,
#product-listing #search-box:focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 2px;
}
body[data-path=contact] .page-content-wrapper > main {
  max-width: var(--ks-content-width);
}
body[data-path=contact] .page-header {
  max-width: 58rem;
  margin-inline: auto;
  text-align: center;
}
body[data-path=contact] .contact-content {
  max-width: 58rem;
  margin-inline: auto;
  padding-block: var(--ks-space-4) var(--ks-space-7);
}
body[data-path=contact] .contact-content > div:first-child {
  max-width: 62ch;
  margin: 0 auto var(--ks-space-5);
  color: var(--ks-color-ink-soft);
  font-size: 1.05rem;
  line-height: 1.6;
  text-align: center;
}
body[data-path=contact] .contact-content > .row {
  margin: 0;
}
body[data-path=contact] .contact-content > .row > .col-md-8 {
  width: min(100%, 52rem);
  max-width: 52rem;
  margin-inline: auto;
  padding: clamp(1.25rem, 3vw, 2.25rem);
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-surface);
  box-shadow: 0 0.75rem 2rem rgba(17, 17, 17, 0.06);
}
body[data-path=contact] .contact-content .form-group {
  margin: 0 0 var(--ks-space-4);
}
body[data-path=contact] .contact-content .form-group > label {
  display: block;
  text-align: center;
}
body[data-path=contact] .contact-content .form-group:last-child {
  margin-bottom: 0;
}
body[data-path=contact] .contact-content .form-control {
  min-height: 48px;
  padding: 0.7rem 0.9rem;
  border: 1px solid var(--ks-color-line);
  border-radius: 0.25rem;
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
  font: inherit;
  box-shadow: none;
}
body[data-path=contact] .contact-content select.form-control {
  cursor: pointer;
}
body[data-path=contact] .contact-content textarea.form-control {
  min-height: 12rem;
  resize: vertical;
}
body[data-path=contact] .contact-content .form-control::-moz-placeholder {
  color: var(--ks-color-muted);
  opacity: 1;
}
body[data-path=contact] .contact-content .form-control::placeholder {
  color: var(--ks-color-muted);
  opacity: 1;
}
body[data-path=contact] .contact-content .form-control:focus {
  border-color: var(--ks-color-ink);
  box-shadow: 0 0 0 3px var(--ks-color-focus-soft, rgba(0, 95, 204, 0.16));
}
body[data-path=contact] .contact-content .btn-send {
  display: block;
  min-width: 7rem;
  min-height: 44px;
  margin-inline: auto;
  padding: 0.65rem 1.1rem;
  border: 1px solid var(--ks-color-ink);
  border-radius: 0.25rem;
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
  font: inherit;
  font-weight: 600;
  transition-property:
    color,
    background-color,
    transform;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
body[data-path=contact] .contact-content .btn-send:hover,
body[data-path=contact] .contact-content .btn-send:focus-visible {
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
}
body[data-path=contact] .contact-content .btn-send:active {
  transform: scale(0.96);
}
@media (max-width: 767.98px) {
  body[data-path=contact] .contact-content {
    padding-block: var(--ks-space-3) var(--ks-space-6);
  }
  body[data-path=contact] .contact-content > .row > .col-md-8 {
    padding: var(--ks-space-4);
  }
}
.ks-site-footer__grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: var(--ks-space-6);
}
.ks-site-footer__links {
  display: grid;
  gap: var(--ks-space-2);
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-site-footer__legal {
  padding-top: var(--ks-space-5);
  margin-top: var(--ks-space-6);
  border-top: 1px solid var(--ks-color-muted);
  font-size: 0.875rem;
}
body[data-path=kuck-home] .page_content > .section {
  padding-block: clamp(2rem, 4vw, 3.5rem);
}
body[data-path=kuck-home] #kuck-home-1 {
  padding-top: clamp(2.75rem, 6vw, 5rem);
}
body[data-path=kuck-home] #kuck-home-2 .full-width-image {
  display: block;
  width: 100%;
  aspect-ratio: 16/5;
  max-height: 28rem;
  -o-object-fit: cover;
  object-fit: cover;
}
body[data-path=kuck-home] .card {
  transition: border-color 160ms ease, box-shadow 160ms ease;
}
body[data-path=kuck-home] .card:hover,
body[data-path=kuck-home] .card:has(.ks-home-card-action:focus-visible) {
  border-color: var(--ks-color-ink);
  box-shadow: 0 0 0 3px var(--ks-color-focus);
}
body[data-path=kuck-home] .ks-home-card-action {
  position: relative;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  padding-inline: var(--ks-space-4);
  margin: 0 var(--ks-space-4) var(--ks-space-4);
  color: var(--ks-color-ink);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
body[data-path=kuck-home] .ks-home-card-action::after {
  display: none;
}
.product-paging-area {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1rem;
  padding: 1.25rem 0;
  margin-top: 1.5rem;
  border-top: 1px solid var(--ks-color-line);
}
.product-paging-area > .col-3 {
  display: none;
}
.product-paging-area > .col-9 {
  width: 100%;
  max-width: none;
  flex: 1 1 100%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.product-paging-area .btn-prev,
.product-paging-area .btn-next {
  min-width: 2rem;
  min-height: 2rem;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: var(--ks-color-muted);
  background: transparent;
  font-size: 0;
}
.product-paging-area .btn-prev {
  order: 1;
  float: none;
}
.product-paging-area .ks-catalogue-pagination {
  order: 2;
  margin-inline: 0;
}
.product-paging-area .btn-next {
  order: 3;
}
.product-paging-area .btn-prev::after {
  content: "\2190";
}
.product-paging-area .btn-next::after {
  content: "\2192";
}
.product-paging-area .btn-prev::after,
.product-paging-area .btn-next::after {
  font-size: 1.25rem;
}
.product-paging-area .pagination {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
.product-paging-area .page-link,
.product-paging-area .page-item.active > .page-link {
  min-width: 2rem;
  min-height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.35rem;
  border: 0;
  border-radius: 0;
  color: var(--ks-color-muted);
  background: transparent;
  font: inherit;
  text-decoration: none;
}
.product-paging-area .page-item.active > .page-link {
  color: var(--ks-color-ink);
  font-weight: 600;
}
body[data-path=kuck-home] .item-card-group-section .primary-action-section a {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--ks-space-2) var(--ks-space-4);
  border: 1px solid var(--ks-color-ink);
  border-radius: 0;
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
  font-weight: 600;
  text-decoration: none;
}
body[data-path=kuck-home] .item-card-group-section .primary-action-section a:hover,
body[data-path=kuck-home] .item-card-group-section .primary-action-section a:focus-visible {
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
  text-decoration: underline;
}
body[data-path=kuck-home] .item-card-group-section .primary-action-section .btn-add-to-cart-list {
  height: 22px;
  min-height: 22px;
  padding-block: 0;
}
body[data-path=kuck-home] .item-card-group-section .primary-action-section {
  margin-top: 0.25rem;
  padding-top: 0;
}
#product-listing .toolbar {
  display: flex;
  gap: var(--ks-space-3);
  align-items: center;
  justify-content: flex-end;
  margin-block: var(--ks-space-4);
}
#product-listing .toolbar .input-group {
  display: none;
}
#product-listing .toolbar .input-group {
  width: auto;
  min-width: 0;
  flex: 1 1 auto;
}
#product-listing #search-box {
  min-height: 44px;
  border: 1px solid var(--ks-color-line);
  border-radius: 0;
  font: inherit;
}
#product-listing .toggle-container {
  width: auto;
  display: flex;
  gap: var(--ks-space-1);
  align-items: center;
}
#product-listing #list,
#product-listing #image-view {
  min-width: 44px;
  min-height: 44px;
  border: 0;
  border-radius: 0;
  color: var(--ks-color-muted);
  background: transparent;
  box-shadow: none;
  transition-property:
    color,
    background-color,
    border-color,
    box-shadow;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
#product-listing #list:hover,
#product-listing #image-view:hover {
  color: var(--ks-color-ink);
  background: transparent;
  border-color: transparent;
  text-decoration: none;
  transform: none;
}
#product-listing #list.btn-primary,
#product-listing #image-view.btn-primary {
  color: var(--ks-color-ink);
  background: transparent !important;
  border: 0 !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
#product-listing #list:focus-visible,
#product-listing #image-view:focus-visible {
  color: var(--ks-color-ink);
  background: transparent;
  outline: 2px solid var(--ks-color-ink);
  outline-offset: 2px;
}
#product-listing #list:active,
#product-listing #image-view:active {
  transform: scale(0.96);
}
.ks-results-view-toggler #list,
.ks-results-view-toggler #image-view {
  min-width: 44px !important;
  min-height: 44px !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--ks-color-muted) !important;
  background: transparent !important;
  box-shadow: none !important;
}
.ks-results-view-toggler #list:not(.btn-primary),
.ks-results-view-toggler #image-view:not(.btn-primary) {
  opacity: 0.62;
}
.ks-results-view-toggler #list.btn-primary,
.ks-results-view-toggler #image-view.btn-primary {
  color: #111 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.ks-results-view-toggler #list.btn-primary > *,
.ks-results-view-toggler #image-view.btn-primary > * {
  transform: scale(1.12);
}
#product-listing .cart-empty {
  padding: var(--ks-space-6);
  border: 1px solid var(--ks-color-line);
  border-radius: 0;
  background: var(--ks-color-surface);
  box-shadow: none;
  text-align: center;
}
#product-listing .cart-empty-state img {
  width: min(100%, 12rem);
  max-height: 12rem;
  -o-object-fit: contain;
  object-fit: contain;
  opacity: 0.72;
}
#product-listing .cart-empty-message {
  margin-bottom: 0;
  color: var(--ks-color-ink-soft);
  font-weight: 600;
}
#products-grid-area .item-card {
  height: 100%;
  border: 1px solid var(--ks-color-line);
  border-radius: 0;
  box-shadow: none;
}
#products-grid-area .item-card .card-img-container {
  aspect-ratio: 1;
  background: var(--ks-color-surface);
}
#products-grid-area .item-card .card-img {
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
#products-grid-area .item-card .card-body {
  padding: var(--ks-space-3);
}
.ks-trust-strip {
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
}
.ks-trust-strip h2,
.ks-trust-strip h3,
.ks-trust-strip p,
.ks-trust-strip a {
  color: inherit;
}
.ks-trust-strip__item p {
  color: var(--ks-color-ink-soft);
}
.ks-salons {
  padding-block: clamp(2rem, 5vw, 4.5rem);
}
body[data-path=salony] .ks-salons {
  padding-top: 0;
}
.ks-online-store-contact {
  max-width: 88rem;
  margin: 0 auto clamp(2.5rem, 5vw, 4rem);
  padding: clamp(1.5rem, 3vw, 2.5rem) var(--ks-space-4);
  text-align: center;
}
.ks-online-store-contact h2 {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.1;
}
.ks-online-store-contact a {
  color: inherit;
  text-decoration: none;
}
.ks-online-store-contact__phones,
.ks-online-store-contact__email,
.ks-online-store-contact__hours {
  margin: 0;
}
.ks-online-store-contact__phones {
  display: flex;
  justify-content: center;
  gap: clamp(1rem, 3vw, 2rem);
  margin-top: clamp(1.75rem, 4vw, 3rem);
  font-size: 1rem;
  font-weight: 400;
}
.ks-online-store-contact__phones a,
.ks-online-store-contact__email a {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
}
.ks-online-store-contact__email {
  margin-top: 1.25rem;
  color: var(--ks-color-ink-soft);
  font-size: 1rem;
}
.ks-online-store-contact__hours {
  margin-top: clamp(2rem, 4vw, 3rem);
  color: var(--ks-color-ink-soft);
  font-size: 1rem;
  line-height: 1.6;
}
.ks-online-store-contact__hours small {
  display: inline-block;
  font-size: 0.9em;
}
.ks-salons > h1 {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3rem);
  text-align: center;
}
.ks-salons > h1 + p {
  max-width: 48rem;
  margin: var(--ks-space-3) auto 0;
  color: var(--ks-color-ink-soft);
  text-align: center;
}
.ks-salons__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--ks-space-4);
  margin-top: clamp(2rem, 4vw, 3.5rem);
}
.ks-salons__grid section {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(12rem, 18rem) minmax(0, 1fr) minmax(13rem, 0.8fr);
  grid-template-areas: "visual title hours" "visual address hours" "visual contact hours" "visual actions hours";
  -moz-column-gap: clamp(1.25rem, 3vw, 2.5rem);
  column-gap: clamp(1.25rem, 3vw, 2.5rem);
  align-items: start;
  padding: clamp(1rem, 2.5vw, 1.75rem);
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
  box-shadow: 0 0.75rem 2rem rgba(17, 17, 17, 0.06);
}
.ks-salons__grid section::before {
  content: "KUCK";
  grid-area: visual;
  min-width: 0;
  aspect-ratio: 4/3;
  display: grid;
  place-items: center;
  border: 1px solid var(--ks-color-line);
  color: var(--ks-color-ink-soft);
  background: var(--ks-color-surface);
  font-family: "Montserrat", sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.18em;
}
.ks-salons__grid section > h3 {
  grid-area: title;
  margin: 0 0 var(--ks-space-3);
  font-size: clamp(1.05rem, 1.8vw, 1.35rem);
  line-height: 1.2;
  text-transform: uppercase;
}
.ks-salons__grid address {
  font-style: normal;
  grid-area: address;
  color: var(--ks-color-ink-soft);
}
.ks-salons__grid section > p:not(.ks-salon__actions) {
  display: flex;
  flex-direction: column;
  gap: var(--ks-space-2);
  margin: 0;
}
.ks-salons__grid section > p:not(.ks-salon__actions):first-of-type {
  grid-area: hours;
  padding-inline-start: clamp(1rem, 2vw, 2rem);
  border-inline-start: 1px solid var(--ks-color-line);
  color: var(--ks-color-ink-soft);
  font-size: 1.05rem;
  line-height: 1.7;
}
.ks-salons__grid section > p:not(.ks-salon__actions):first-of-type br {
  display: block;
  content: "";
  height: 0.35rem;
}
.ks-salons__grid section > p:not(.ks-salon__actions):nth-of-type(2) {
  grid-area: contact;
  display: grid;
  gap: 0.25rem;
  margin-top: var(--ks-space-3);
}
.ks-salons__grid section > p:not(.ks-salon__actions):nth-of-type(2) a {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0;
  text-decoration: none;
}
.ks-salons__grid section > p:not(.ks-salon__actions):nth-of-type(2) a::before {
  width: 1.25rem;
  flex: 0 0 1.25rem;
  color: var(--ks-color-muted);
  font-size: 1rem;
  line-height: 1;
  text-align: center;
}
.ks-salons__grid section > p:not(.ks-salon__actions):nth-of-type(2) a[href^=tel]::before {
  content: "\260e";
}
.ks-salons__grid section > p:not(.ks-salon__actions):nth-of-type(2) a:nth-of-type(2)[href^=tel]::before {
  content: "\25a3";
}
.ks-salons__grid section > p:not(.ks-salon__actions):nth-of-type(2) a[href^=mailto]::before {
  content: "\2709";
}
.ks-salons__grid section > p:not(.ks-salon__actions) br {
  display: none;
}
.ks-salons__grid section > p:not(.ks-salon__actions) a {
  min-height: 44px;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  padding-inline: var(--ks-space-2);
  overflow-wrap: anywhere;
  text-decoration: underline;
}
.ks-salon__actions {
  grid-area: actions;
  display: flex;
  flex-wrap: wrap;
  gap: var(--ks-space-2);
  align-items: center;
  margin-top: var(--ks-space-4);
}
.ks-salon__actions .ks-salon__cta {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding-inline: var(--ks-space-2);
  border: 1px solid var(--ks-color-ink);
  text-decoration: none;
}
.ks-salon__map {
  max-width: 100%;
  color: var(--ks-color-ink-soft);
  overflow-wrap: anywhere;
}
@media (max-width: 900px) {
  .ks-salons__grid section {
    grid-template-columns: minmax(8rem, 12rem) minmax(0, 1fr);
    grid-template-areas: "visual title" "visual address" "visual contact" "visual actions" "hours hours";
    row-gap: var(--ks-space-2);
  }
  .ks-salons__grid section > p:not(.ks-salon__actions):first-of-type {
    margin-top: var(--ks-space-4);
    padding: var(--ks-space-3) 0 0;
    border-inline-start: 0;
    border-top: 1px solid var(--ks-color-line);
  }
}
@media (max-width: 560px) {
  .ks-online-store-contact {
    padding-inline: 0;
  }
  .ks-online-store-contact__phones {
    flex-direction: column;
    align-items: center;
    gap: 0.35rem;
  }
  .ks-salons__grid section {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "visual" "title" "address" "hours" "contact" "actions";
  }
  .ks-salons__grid section::before {
    width: min(100%, 18rem);
  }
  .ks-salons__grid section > p:not(.ks-salon__actions):first-of-type {
    margin-top: var(--ks-space-3);
  }
  .ks-salons__grid section > p:not(.ks-salon__actions):first-of-type {
    padding-top: var(--ks-space-2);
  }
}
.ks-category-hub {
  padding-block: var(--ks-space-6);
}
.ks-category-hub__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  gap: var(--ks-space-4);
  padding: 0;
  margin: var(--ks-space-6) 0 0;
  list-style: none;
}
.ks-category-hub__list a {
  min-height: 7rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--ks-space-5);
  border: 1px solid var(--ks-color-line);
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.ks-product-recommendations {
  min-width: 0;
  padding-block: var(--ks-space-5);
  margin-top: var(--ks-space-5);
  border-top: 1px solid var(--ks-color-line);
}
.ks-product-recommendations h2 {
  margin: 0 0 var(--ks-space-4);
  color: var(--ks-color-ink);
  font-size: clamp(1.35rem, 2.5vw, 1.75rem);
}
.ks-product-recommendations__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--ks-space-4);
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-product-recommendations__item {
  min-width: 0;
}
.ks-product-recommendations__link {
  min-width: 0;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--ks-color-line);
  border-radius: var(--ks-radius-field);
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
  text-decoration: none;
  overflow: hidden;
}
.ks-product-recommendations__link:hover {
  border-color: var(--ks-color-ink);
}
.ks-product-recommendations__link:focus-visible {
  outline: 3px solid var(--ks-color-focus, #0b5fff);
  outline-offset: 3px;
}
.ks-product-recommendations__image,
.ks-product-recommendations__placeholder {
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
}
.ks-product-recommendations__image {
  display: block;
  -o-object-fit: contain;
  object-fit: contain;
  background: var(--ks-color-surface, #f7f7f5);
}
.ks-product-recommendations__placeholder {
  display: grid;
  place-items: center;
  color: var(--ks-color-muted);
  background: var(--ks-color-surface, #f7f7f5);
  font-size: clamp(2rem, 7vw, 3rem);
  font-weight: 700;
}
.ks-product-recommendations__body {
  min-width: 0;
  display: grid;
  gap: 0.35rem;
  padding: var(--ks-space-3);
}
.ks-product-recommendations__name {
  font-weight: 700;
  overflow-wrap: anywhere;
}
.ks-product-recommendations__price {
  font-weight: 700;
}
.ks-product-recommendations__availability {
  color: var(--ks-color-muted);
  font-size: 0.9rem;
  overflow-wrap: anywhere;
}
.ks-webshop-product__secondary {
  display: block;
}
.ks-product-section-nav {
  width: min(100%, var(--ks-content-width, 1400px));
  max-width: var(--ks-content-width, 1400px);
  margin: var(--ks-space-4) auto 0;
  padding: var(--ks-space-2);
  border: 1px solid var(--ks-color-line);
  border-radius: var(--ks-radius-card, 1rem) var(--ks-radius-card, 1rem) 0 0;
  background: var(--ks-color-surface, #fff);
}
.ks-product-section-nav + .product-container {
  width: min(100%, var(--ks-content-width, 1400px));
  max-width: var(--ks-content-width, 1400px);
  margin-inline: auto;
  margin-top: 0 !important;
  padding-top: 0 !important;
  border: 1px solid var(--ks-color-line);
  border-top: 0;
  border-radius: 0 0 var(--ks-radius-card, 1rem) var(--ks-radius-card, 1rem);
  background: var(--ks-color-surface, #fff);
}
.ks-product-section-nav + .product-container > .item-content > .product-page-content {
  width: 100%;
  padding: 0 2rem 1.5rem;
}
.ks-product-section-nav__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--ks-space-1) var(--ks-space-3);
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-product-section-nav__link {
  min-height: 48px;
  padding: 0.7rem 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--ks-color-muted);
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-decoration: underline;
  text-decoration-thickness: max(1px, 0.08em);
  text-underline-offset: 0.35em;
  border: 0;
  border-radius: 0.5rem;
  background: transparent;
  transition: color 150ms ease, background-color 150ms ease;
}
.ks-product-section-nav__link:hover {
  color: var(--ks-color-ink);
  background: var(--ks-color-surface-subtle, #f4f4f4);
}
.ks-product-section-nav__link:focus-visible {
  outline: 3px solid var(--ks-color-focus, #0b5fff);
  outline-offset: 3px;
}
.ks-product-section-nav__link[aria-selected=true] {
  color: var(--ks-color-ink, #111);
  text-decoration-thickness: 0.16em;
  text-underline-offset: 0.55em;
}
.ks-product-details,
#kuck-product-description,
#kuck-product-reviews,
#kuck-product-recommendations {
  scroll-margin-top: var(--ks-space-5);
}
.ks-product-details {
  max-width: 70rem;
  padding-block: 0.75rem 1.25rem;
  margin-top: 0;
  border-top: 0;
}
.ks-product-details > h2 {
  margin: 0 0 var(--ks-space-2);
  color: var(--ks-color-ink);
  font-size: clamp(1.15rem, 2vw, 1.4rem);
}
.ks-product-details + .ks-webshop-product__salons,
.ks-product-details + #kuck-product-description,
#kuck-product-salons,
#kuck-product-description {
  margin-top: 0;
  padding-top: 0.75rem;
}
#kuck-product-salons > h2,
#kuck-product-description > h2 {
  margin-top: 0;
  font-size: clamp(1.15rem, 2vw, 1.4rem);
}
@media (max-width: 1199.98px) {
  .ks-product-recommendations__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767.98px) {
  .ks-webshop-product__details {
    padding-inline: var(--ks-space-3);
  }
  .ks-webshop-product__secondary {
    display: block;
  }
  .ks-webshop-product__secondary > .product-container {
    max-width: 100%;
  }
  .ks-product-section-nav + .product-container > .item-content > .product-page-content {
    padding-inline: 1rem;
  }
}
@media (max-width: 359.98px) {
  .ks-product-recommendations__list {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 991.98px) {
  .ks-site-navbar > .container {
    flex-wrap: wrap;
  }
  .ks-global-search {
    min-width: 100%;
    order: 3;
  }
  .ks-site-navbar .navbar-collapse {
    min-width: 100%;
    order: 4;
  }
  .ks-private-navbar__links {
    width: 100%;
    order: 4;
  }
  .ks-site-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ks-space-5) var(--ks-space-4);
  }
  .ks-site-footer__grid > :first-child {
    grid-column: 1/-1;
  }
  .ks-site-footer__newsletter-fields {
    grid-template-columns: minmax(0, 1fr);
  }
  .ks-salons__grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 359.98px) {
  .ks-site-footer__grid {
    grid-template-columns: 1fr;
  }
  .ks-site-footer__grid > :first-child {
    grid-column: auto;
  }
}
body[data-path=kuck-home],
body:has(.ks-home),
body:has(.ks-listing),
body:has(.ks-product),
body:has(.ks-cart),
body:has(.ks-repairs) {
  margin: 0;
  background: var(--ks-color-canvas);
}
body:has(.ks-listing) {
  background: #fff;
}
body[data-path=kuck-home],
:where(.ks-home, .ks-listing, .ks-product, .ks-cart, .ks-repairs),
.ks-header,
.ks-footer,
.ks-site-navbar,
.ks-site-footer {
  color: var(--ks-color-ink);
  font-family: var(--ks-font-sans);
  line-height: 1.5;
}
.ks-site-footer {
  color: var(--ks-color-canvas);
}
body[data-path=kuck-home] *,
:where(.ks-home, .ks-listing, .ks-product, .ks-cart, .ks-repairs) *,
.ks-header *,
.ks-footer *,
.ks-site-navbar *,
.ks-site-footer * {
  box-sizing: border-box;
}
:where(.ks-home, .ks-listing, .ks-product, .ks-cart, .ks-repairs) img,
.ks-header img {
  max-width: 100%;
  height: auto;
}
:where(.ks-home, .ks-listing, .ks-product, .ks-cart, .ks-repairs) a,
.ks-header a,
.ks-footer a {
  color: inherit;
  text-underline-offset: 0.2em;
}
:where(.ks-home, .ks-listing, .ks-product, .ks-cart, .ks-repairs) :focus-visible,
.ks-header :focus-visible,
.ks-footer :focus-visible,
.ks-skip-link:focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 2px;
}
.ks-home,
.ks-listing,
.ks-product,
.ks-cart,
.ks-repairs {
  width: min(100% - 2rem, var(--ks-content-width));
  min-width: 0;
  margin-inline: auto;
  padding-block: var(--ks-space-5) var(--ks-space-8);
}
.ks-home {
  width: 100%;
  padding-top: 0;
}
.ks-home > :not(.ks-home-hero) {
  width: min(100% - 2rem, var(--ks-content-width));
  margin-inline: auto;
}
.ks-skip-link {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  position: absolute;
  z-index: 1000;
  top: 0;
  left: 1rem;
  padding-inline: 1rem;
  transform: translateY(-120%);
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
  transition: transform 120ms ease;
}
.ks-skip-link:focus,
.ks-skip-link:focus-visible {
  transform: translateY(0);
}
#kuck-page-content {
  scroll-margin-top: 8rem;
}
.ks-header {
  position: sticky;
  z-index: 20;
  top: 0;
  background: var(--ks-color-canvas);
  border-bottom: 1px solid var(--ks-color-line);
}
.ks-header__main,
.ks-primary-nav ul {
  width: min(100% - 2rem, var(--ks-content-width));
  margin: 0 auto;
}
.ks-header__main {
  min-height: 64px;
  display: grid;
  grid-template-columns: minmax(88px, 1fr) auto;
  gap: var(--ks-space-3);
  align-items: center;
  padding-block: var(--ks-space-2);
}
.ks-brand {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
}
.ks-brand img {
  width: auto;
  max-width: min(190px, 42vw);
  max-height: 52px;
  -o-object-fit: contain;
  object-fit: contain;
}
.ks-search {
  min-width: 0;
  display: grid;
  grid-column: 1/-1;
  grid-template-columns: 1fr auto;
  gap: 0;
}
.ks-search label {
  grid-column: 1/-1;
  color: var(--ks-color-ink-soft);
  font-size: 0.875rem;
  font-weight: 600;
}
.ks-search input {
  width: 100%;
  min-width: 0;
  min-height: 38px;
  height: 38px;
  padding: 0 var(--ks-space-3);
  border: 1px solid var(--ks-color-line);
  border-radius: var(--ks-radius-field) 0 0 var(--ks-radius-field);
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
  font: inherit;
}
.ks-search button {
  width: 40px;
  min-width: 40px;
  height: 38px;
  min-height: 38px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid var(--ks-color-ink);
  border-radius: 0 var(--ks-radius-field) var(--ks-radius-field) 0;
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
  font: inherit;
  font-weight: 600;
}
.ks-cart__summary button {
  min-width: 44px;
  min-height: 44px;
  padding: var(--ks-space-2) var(--ks-space-4);
  border: 1px solid var(--ks-color-ink);
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
  font: inherit;
  font-weight: 600;
}
.ks-search input:focus,
.ks-search input:focus-visible,
.ks-search button:focus,
.ks-search button:focus-visible {
  outline: 0 !important;
  box-shadow: none !important;
}
.ks-search input:focus,
.ks-search input:focus-visible {
  border-color: var(--ks-color-line);
}
.ks-header__actions {
  display: flex;
  gap: var(--ks-space-2);
  justify-self: end;
}
.ks-header__actions a {
  min-width: 44px;
}
.ks-header__actions a,
.ks-primary-nav a,
.ks-footer a,
.ks-pagination a,
.ks-cart > a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.ks-header__actions a:first-child {
  display: inline-flex;
}
@media (max-width: 480px) {
  .ks-header__main {
    grid-template-columns: minmax(0, 1fr);
  }
  .ks-header__actions {
    grid-column: 1/-1;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ks-space-2);
    justify-self: stretch;
  }
  .ks-header__actions a {
    min-width: 0;
    justify-content: center;
    padding-inline: var(--ks-space-2);
    white-space: normal;
    text-align: center;
    overflow-wrap: anywhere;
  }
}
.ks-primary-nav {
  display: block;
  border-top: 1px solid var(--ks-color-line);
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
}
.ks-primary-nav ul {
  min-width: -moz-max-content;
  min-width: max-content;
  display: flex;
  gap: var(--ks-space-5);
  padding: 0;
  list-style: none;
}
.ks-primary-nav a {
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
}
.ks-primary-nav a:hover,
.ks-primary-nav a:focus-visible {
  text-decoration: underline;
}
.ks-breadcrumbs {
  margin-bottom: var(--ks-space-5);
  color: var(--ks-color-muted);
  font-size: 0.875rem;
}
.ks-breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ks-space-2);
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-breadcrumbs__item {
  display: flex;
  align-items: center;
  min-height: 44px;
}
.ks-breadcrumbs__item:not(:last-child)::after {
  content: "/";
  margin-left: var(--ks-space-2);
  color: var(--ks-color-muted);
}
.ks-breadcrumbs__item a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.ks-breadcrumbs__item > span {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
}
.ks-button {
  min-width: 44px;
  min-height: 44px;
  border-radius: 0;
  transition:
    color 160ms ease,
    background-color 160ms ease,
    border-color 160ms ease;
}
.ks-button:hover,
.ks-button:active {
  background: var(--ks-color-surface);
}
.ks-button--primary:hover,
.ks-button--primary:active {
  background: var(--ks-color-ink-soft);
}
.ks-button[disabled],
.ks-button[aria-disabled=true],
.ks-cart__summary button[disabled] {
  cursor: not-allowed;
  opacity: 0.62;
}
.ks-home-hero {
  position: relative;
  display: grid;
  align-items: end;
  min-height: min(70vh, 640px);
  background: var(--ks-color-surface);
}
.ks-home-hero picture,
.ks-home-hero picture img,
.ks-home-hero__content {
  grid-area: 1/1;
}
.ks-home-hero picture,
.ks-home-hero picture img {
  width: 100%;
  height: 100%;
}
.ks-home-hero picture img {
  aspect-ratio: 4/5;
  -o-object-fit: cover;
  object-fit: cover;
}
.ks-home-hero__content {
  z-index: 1;
  width: min(100% - 2rem, 42rem);
  margin: var(--ks-space-4);
  padding: var(--ks-space-5);
  background: var(--ks-color-canvas);
}
.ks-home-hero__content h1 {
  font-size: clamp(1.75rem, 7vw, 2.5rem);
  line-height: 1.15;
}
.ks-home-hero__content p {
  max-width: 55ch;
  color: var(--ks-color-ink-soft);
}
.ks-home-categories,
.ks-home-featured,
.ks-home-promos {
  padding-block: var(--ks-space-7);
}
.ks-home-featured__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--ks-space-4);
  padding-bottom: var(--ks-space-4);
  border-bottom: 1px solid var(--ks-color-line);
}
.ks-home-featured__header h2 {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  margin: 0;
}
.ks-home-featured__header h2 span {
  color: var(--ks-color-ink);
  font-size: 1.35em;
  line-height: 0;
}
.ks-home-featured__controls {
  display: flex;
  gap: 0.5rem;
}
.ks-home-featured__control {
  width: 3rem;
  height: 3rem;
  display: grid;
  place-items: center;
  padding: 0;
  color: var(--ks-color-ink);
  background: color-mix(in srgb, var(--ks-color-surface) 78%, transparent);
  border: 0;
  border-radius: 50%;
  font-size: 1.25rem;
  line-height: 1;
  transition:
    background-color 180ms ease,
    opacity 180ms ease,
    transform 180ms ease;
}
.ks-home-featured__control:hover:not(:disabled),
.ks-home-featured__control:focus-visible:not(:disabled) {
  background: var(--ks-color-surface);
  transform: scale(1.06);
}
.ks-home-featured__control:disabled {
  opacity: 0.3;
  cursor: default;
}
.ks-home-featured--carousel {
  min-width: 0;
}
.ks-home-featured__viewport {
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  overscroll-behavior-inline: contain;
  padding-top: var(--ks-space-4);
}
.ks-home-featured__viewport::-webkit-scrollbar {
  display: none;
}
.ks-home-featured__track {
  display: flex;
  flex-wrap: nowrap;
  width: max(100%, var(--ks-product-count) / var(--ks-visible-products) * 100%);
  min-width: 100%;
  gap: 0;
  --ks-visible-products: 4;
}
.ks-home-featured__track .ks-product-card {
  flex: 0 0 calc(100% / var(--ks-product-count));
  min-width: 0;
  padding-inline: var(--ks-space-3);
  border-inline-end: 1px solid var(--ks-color-line);
  scroll-snap-align: start;
}
.ks-home-featured__track .ks-product-card:first-child {
  padding-inline-start: 0;
}
.ks-home-featured__track .ks-product-card:last-child {
  padding-inline-end: 0;
  border-inline-end: 0;
}
body[data-path=kuck-home] .ks-home-product-shelf--carousel > .ks-home-featured__viewport {
  padding-top: var(--ks-space-4);
  padding-bottom: var(--ks-space-7);
}
body[data-path=kuck-home] .ks-home-product-shelf--carousel > .ks-home-featured__viewport > .row {
  display: flex;
  flex-wrap: nowrap;
  width: max(100%, var(--ks-product-count) / var(--ks-visible-products) * 100%);
  min-width: 100%;
  gap: 0;
  margin-inline: 0;
  --ks-visible-products: 4;
}
body[data-path=kuck-home] .ks-home-product-shelf--carousel > .ks-home-featured__viewport > .row > .item-card {
  flex: 0 0 calc(100% / var(--ks-product-count));
  width: auto;
  min-width: 0;
  max-width: none;
  padding-inline: var(--ks-space-3);
  scroll-snap-align: start;
}
body[data-path=kuck-home] .ks-home-product-shelf--carousel > .ks-home-featured__viewport > .row > .item-card:first-child {
  padding-inline-start: 0;
}
body[data-path=kuck-home] .ks-home-product-shelf--carousel > .ks-home-featured__viewport > .row > .item-card:last-child {
  padding-inline-end: 0;
}
@media (max-width: 1199px) {
  body[data-path=kuck-home] .ks-home-product-shelf--carousel > .ks-home-featured__viewport > .row {
    --ks-visible-products: 3;
  }
}
@media (max-width: 767px) {
  body[data-path=kuck-home] .ks-home-product-shelf--carousel > .ks-home-featured__viewport > .row {
    --ks-visible-products: 2;
  }
}
@media (max-width: 1199px) {
  .ks-home-featured__track {
    --ks-visible-products: 3;
  }
}
@media (max-width: 767px) {
  .ks-home-featured__header {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .ks-home-featured__control {
    width: 2.5rem;
    height: 2.5rem;
  }
  .ks-home-featured__track {
    --ks-visible-products: 2;
  }
}
.ks-home-categories__grid,
.ks-home-promos__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ks-space-4);
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-category-tile,
.ks-promo-tile {
  height: 100%;
  display: flex;
  flex-direction: column;
  padding-bottom: var(--ks-space-4);
  border-bottom: 1px solid var(--ks-color-line);
  text-decoration: none;
}
.ks-category-tile img,
.ks-promo-tile img {
  width: 100%;
  aspect-ratio: 4/3;
  margin-bottom: var(--ks-space-3);
  -o-object-fit: cover;
  object-fit: cover;
  background: var(--ks-color-surface);
}
.ks-category-tile h3,
.ks-promo-tile h3 {
  margin-bottom: var(--ks-space-2);
}
.ks-promo-tile p {
  max-width: 70ch;
  color: var(--ks-color-muted);
}
.ks-promo-tile span,
.ks-product-card__cta {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: underline;
}
.ks-product-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ks-space-5) var(--ks-space-4);
}
.ks-product-card,
.ks-product-card:last-child {
  min-width: 0;
  display: block;
}
.ks-product-card__image-link {
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  background: var(--ks-color-surface);
}
.ks-product-card__image {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.ks-product-card__details {
  display: flex;
  flex-direction: column;
  padding-block: var(--ks-space-3);
}
.ks-product-card__brand,
.ks-product__brand,
.ks-cart-line__brand {
  margin-bottom: var(--ks-space-1);
  color: var(--ks-color-muted);
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.ks-product-card__content-link {
  text-decoration: none;
}
.ks-product-card__name {
  min-height: 2.75rem;
  display: -webkit-box;
  margin-bottom: var(--ks-space-2);
  overflow: hidden;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.375;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.ks-price {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ks-space-2);
  align-items: baseline;
  margin-block: var(--ks-space-2);
}
.ks-price__current {
  font-size: 1.125rem;
  font-weight: 700;
}
.ks-price__old {
  color: var(--ks-color-muted);
  font-size: 0.875rem;
}
.ks-price__discount {
  color: var(--ks-color-success);
  font-size: 0.875rem;
  font-weight: 700;
}
.ks-price__lowest,
.ks-price__period {
  flex-basis: 100%;
  color: var(--ks-color-muted);
  font-size: 0.6875rem;
  line-height: 1.35;
}
.ks-installments {
  display: grid;
  gap: var(--ks-space-1);
  padding: var(--ks-space-2);
  border: 1px solid var(--ks-color-line);
  font-size: 0.875rem;
}
.ks-installments h2 {
  margin: 0;
  font-size: 1rem;
}
.ks-installments__label,
.ks-installments__summary,
.ks-installments__amount,
.ks-installments__total {
  margin: 0;
}
.ks-installments__label {
  font-weight: 700;
}
.ks-installments__terms {
  display: grid;
  gap: var(--ks-space-1);
  margin: 0;
}
.ks-installments__terms > div {
  display: flex;
  justify-content: space-between;
  gap: var(--ks-space-2);
}
.ks-installments__terms dt,
.ks-installments__terms dd {
  margin: 0;
}
.ks-installments__terms dd,
.ks-installments__total {
  font-weight: 600;
}
.ks-installments__terms-link {
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.ks-stock-status {
  min-height: 1.5rem;
  display: flex;
  gap: var(--ks-space-2);
  align-items: center;
  margin-block: var(--ks-space-2);
  font-size: 0.875rem;
  font-weight: 600;
}
.ks-stock-status__icon {
  width: 1.25rem;
  text-align: center;
}
.ks-stock-status__text {
  min-width: 0;
}
.ks-stock-status.is-in_stock {
  color: var(--ks-color-success);
}
.ks-stock-status.is-on_order {
  color: var(--ks-color-warning);
}
.ks-stock-status.is-out_of_stock,
.ks-stock-status.is-unavailable {
  color: var(--ks-color-danger);
}
.ks-listing__header {
  max-width: 70ch;
  margin-bottom: var(--ks-space-5);
}
.ks-listing--category,
.ks-listing--search {
  min-width: 0;
}
.ks-listing__header h1,
.ks-product h1,
.ks-cart h1,
.ks-repairs h1 {
  font-size: clamp(1.75rem, 2.5vw, 2.5rem);
  line-height: 1.15;
}
.ks-listing__count,
.ks-cart__count {
  padding-block: var(--ks-space-3);
  margin-bottom: var(--ks-space-5);
  color: var(--ks-color-muted);
  border-block: 1px solid var(--ks-color-line);
}
.ks-listing__error,
.ks-cart__error,
.ks-cart__empty,
.ks-empty-state {
  max-width: 70ch;
  padding: var(--ks-space-5);
  background: var(--ks-color-surface);
  border-left: 4px solid var(--ks-color-danger);
}
.ks-cart__empty,
.ks-empty-state {
  border-left-color: var(--ks-color-ink);
}
.ks-pagination {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ks-space-2);
  align-items: center;
  margin-top: var(--ks-space-7);
  text-align: center;
}
.ks-pagination__previous,
.ks-pagination__next {
  justify-content: center;
  padding-inline: var(--ks-space-4);
  border: 1px solid var(--ks-color-line);
}
.ks-pagination__status {
  padding: var(--ks-space-3);
  color: var(--ks-color-muted);
}
.ks-product__primary {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--ks-space-6);
}
.ks-product-gallery {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--ks-space-3);
}
.ks-product-gallery__main {
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  max-height: 72vh;
  background: var(--ks-color-surface);
}
.ks-product-gallery__main-image {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.ks-product-gallery__thumbnails {
  display: flex;
  gap: var(--ks-space-2);
  padding: 0 0 var(--ks-space-2);
  margin: 0;
  overflow-x: auto;
  list-style: none;
}
.ks-product-gallery__thumbnail {
  width: 76px;
  min-width: 76px;
}
.ks-product-gallery__thumbnail figure {
  margin: 0;
}
.ks-product-gallery__thumbnail img {
  width: 76px;
  aspect-ratio: 1;
  -o-object-fit: contain;
  object-fit: contain;
  background: var(--ks-color-surface);
}
.ks-product-gallery__thumbnail figcaption {
  color: var(--ks-color-muted);
  font-size: 0.75rem;
  text-align: center;
}
.ks-product__purchase {
  min-width: 0;
  align-self: start;
  padding: var(--ks-space-5);
  border: 1px solid var(--ks-color-line);
}
.ks-product__reference,
.ks-product__cta-reason,
.ks-cart-line__readonly-note {
  color: var(--ks-color-muted);
  font-size: 0.875rem;
}
.ks-product__purchase .ks-price__current {
  font-size: 1.5rem;
}
.ks-product__purchase .ks-button {
  width: 100%;
}
.ks-product__description,
.ks-product__attributes {
  max-width: 70ch;
  padding-top: var(--ks-space-7);
}
.ks-product__attributes table {
  width: 100%;
  border-collapse: collapse;
}
.ks-product__attributes th,
.ks-product__attributes td {
  padding: var(--ks-space-3);
  border-bottom: 1px solid var(--ks-color-line);
  text-align: left;
  vertical-align: top;
}
.ks-product__attributes th {
  width: 42%;
  font-weight: 600;
}
.ks-cart__lines {
  min-width: 0;
}
.ks-cart-line {
  position: relative;
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: var(--ks-space-6);
  align-items: start;
  padding: var(--ks-space-4) 3rem var(--ks-space-4) 0;
  border-bottom: 1px solid var(--ks-color-line);
}
.ks-cart-line__remove {
  position: absolute;
  top: var(--ks-space-4);
  right: 0;
  width: 2.25rem;
  height: 2.25rem;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: var(--ks-color-muted);
  background: transparent;
  cursor: pointer;
}
.ks-cart-line__remove:hover,
.ks-cart-line__remove:focus-visible {
  color: var(--ks-color-ink);
  background: transparent;
}
.ks-cart-line__remove svg {
  width: 1.1rem;
  height: 1.1rem;
}
.ks-cart-line__remove[disabled] {
  opacity: 0.55;
  cursor: wait;
}
.ks-cart-line__image-link {
  width: 88px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  padding: 0;
  box-sizing: border-box;
  background: transparent;
}
.ks-cart-line__image {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.ks-cart-line__body {
  min-width: 0;
}
.ks-cart-line__body h2 {
  margin: 0;
  font-size: 1rem;
  line-height: 1.375;
}
.ks-cart-line__brand {
  margin: 0 0 var(--ks-space-1);
}
.ks-cart-line__quantity,
.ks-cart-line__unit-price,
.ks-cart-line__total {
  margin-bottom: var(--ks-space-2);
}
.ks-cart-line__controls {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ks-space-2);
  align-items: end;
  margin-top: var(--ks-space-3);
}
.ks-cart-line__controls label {
  display: grid;
  gap: var(--ks-space-1);
  font-size: 0.875rem;
}
.ks-cart-line__controls input {
  width: 5.5rem;
  min-height: 44px;
  padding-inline: var(--ks-space-2);
  border: 1px solid var(--ks-color-line);
}
.ks-cart-line__controls [data-kuck-guest-line-status] {
  flex-basis: 100%;
  margin: 0;
}
.ks-cart__summary {
  padding: clamp(1.25rem, 3vw, 2rem);
  margin-top: var(--ks-space-6);
  background: var(--ks-color-surface);
}
.ks-cart__summary h2 {
  margin: 0 0 var(--ks-space-4);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 600;
  line-height: 1.15;
}
.ks-cart__summary dl {
  margin: 0;
}
.ks-cart__summary dl > div {
  display: flex;
  gap: var(--ks-space-4);
  justify-content: space-between;
  padding-block: 0.65rem;
  border-bottom: 1px solid var(--ks-color-line);
}
.ks-cart__summary dt,
.ks-cart__summary dd {
  font-size: 1rem;
  line-height: 1.4;
}
.ks-cart__summary dt {
  font-weight: 600;
}
.ks-cart__summary dd {
  margin: 0;
  text-align: right;
  font-weight: 400;
}
.ks-cart__summary button {
  width: 100%;
  min-height: 3.25rem;
  margin-top: var(--ks-space-5);
  font-size: 1rem;
  font-weight: 600;
}
.ks-guest-checkout {
  display: grid;
  gap: var(--ks-space-4);
  margin-top: var(--ks-space-6);
}
.ks-cart-addresses {
  min-width: 0;
  margin-block: 1.5rem;
  padding: 1.5rem;
  border: 1px solid var(--ks-color-line);
  scroll-margin-top: 7rem;
  align-self: start;
}
.ks-cart-addresses h2 {
  margin: 0 0 1rem;
  font-size: 1.5rem;
}
.ks-cart-addresses details {
  margin-top: 1rem;
  border-top: 1px solid var(--ks-color-line);
}
.ks-cart-addresses summary {
  padding: 1rem 0;
  cursor: pointer;
  font-weight: 600;
  overflow-wrap: anywhere;
}
.ks-cart-addresses__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.ks-cart-addresses__fields label {
  display: grid;
  gap: 0.5rem;
}
.ks-cart-addresses__fields input,
.ks-cart-addresses__fields select {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 0.5rem;
  border: 1px solid var(--ks-color-line);
  background: white;
  font: inherit;
}
.ks-cart-addresses__preferences {
  display: grid;
  gap: 0.75rem;
  margin-block: 1rem;
}
.ks-cart-addresses__preferences label {
  display: flex;
  align-items: start;
  gap: 0.5rem;
}
.ks-cart-addresses__preferences input {
  flex-shrink: 0;
  margin-top: 0.25rem;
}
.ks-cart-addresses__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.ks-cart-addresses [role=alert] {
  color: #a32020;
}
@media (min-width: 992px) {
  .ks-cart-addresses {
    grid-column: 1;
    grid-row: 5;
  }
}
@media (max-width: 767.98px) {
  .ks-cart-addresses {
    padding: 1rem;
  }
  .ks-cart-addresses__fields {
    grid-template-columns: 1fr;
  }
}
.ks-guest-checkout__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--ks-space-4);
}
.ks-guest-checkout label {
  display: grid;
  gap: var(--ks-space-2);
  font-weight: 600;
}
.ks-guest-checkout label.ks-guest-checkout__consent {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  -moz-column-gap: var(--ks-space-3);
  column-gap: var(--ks-space-3);
  row-gap: var(--ks-space-2);
  font-weight: 500;
}
.ks-guest-checkout__consent input[type=checkbox] {
  width: 1.125rem;
  height: 1.125rem;
  margin: 0.2rem 0 0;
  accent-color: var(--ks-color-ink);
}
.ks-guest-checkout__consent input[type=checkbox][aria-invalid=true] {
  outline: 2px solid #b42318;
  outline-offset: 2px;
  accent-color: #b42318;
}
.ks-guest-checkout__error {
  grid-column: 2;
  color: #b42318;
  font-size: 0.875rem;
  font-weight: 600;
}
.ks-guest-checkout__error[hidden] {
  display: none;
}
.ks-guest-checkout input:not([type=checkbox]):not([type=radio]) {
  width: 100%;
  min-height: 44px;
  padding: var(--ks-space-2) var(--ks-space-3);
  border: 1px solid var(--ks-color-line);
  border-radius: var(--ks-radius-field);
  font: inherit;
}
@media (max-width: 47.99rem) {
  .ks-guest-checkout__fields {
    grid-template-columns: 1fr;
  }
}
.ks-repairs > p {
  max-width: 70ch;
  color: var(--ks-color-muted);
}
.ks-repairs__empty,
.ks-repairs__error {
  max-width: 70ch;
  padding: var(--ks-space-5);
  background: var(--ks-color-surface);
  border: 1px solid var(--ks-color-line);
  border-left: 4px solid var(--ks-color-ink);
}
.ks-repairs__error {
  border-left-color: var(--ks-color-danger);
  border-left-style: double;
}
.ks-repairs__empty::before,
.ks-repairs__error::before {
  display: block;
  margin-bottom: var(--ks-space-2);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.ks-repairs__empty::before {
  content: "Brak napraw";
}
.ks-repairs__error::before {
  content: "B\142\105 d odczytu";
}
.ks-repairs__error.is-auth-required::before {
  content: "Dost\119p wymaga zalogowania";
}
.ks-repairs__empty h2,
.ks-repairs__error h2 {
  margin-top: 0;
}
.ks-repairs__empty a,
.ks-repairs__error a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  font-weight: 600;
}
.ks-repairs__list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--ks-space-5);
  padding: 0;
  margin: var(--ks-space-5) 0 0;
  list-style: none;
}
.ks-repairs__list > li {
  min-width: 0;
}
.ks-repair {
  min-width: 0;
  height: 100%;
  padding: var(--ks-space-5);
  background: var(--ks-color-canvas);
  border: 1px solid var(--ks-color-line);
  border-top: 4px solid var(--ks-color-ink);
}
.ks-repair h2 {
  margin-top: 0;
  font-size: 1.25rem;
  line-height: 1.3;
}
.ks-repair h2 span,
.ks-repair p span,
.ks-repair p strong {
  overflow-wrap: anywhere;
}
.ks-repair h3 {
  margin-top: var(--ks-space-6);
  font-size: 1rem;
}
.ks-repair__timeline {
  display: grid;
  gap: var(--ks-space-2);
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-repair__timeline li {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--ks-space-1);
  padding: var(--ks-space-3) var(--ks-space-4);
  border-left: 4px solid var(--ks-color-line);
}
.ks-repair__timeline li > span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.ks-repair__timeline time {
  color: var(--ks-color-muted);
  font-size: 0.875rem;
}
.ks-repair__timeline li[aria-current=step] {
  font-weight: 700;
  background: var(--ks-color-surface);
  border-left-color: var(--ks-color-success);
}
.ks-repair__timeline li[aria-current=step]::after {
  content: "Aktualny etap";
  width: -moz-fit-content;
  width: fit-content;
  padding: var(--ks-space-1) var(--ks-space-2);
  color: var(--ks-color-success);
  border: 1px solid currentcolor;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}
.ks-repair__detail-link,
.ks-repair-detail > a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  margin-top: var(--ks-space-4);
  font-weight: 700;
}
.ks-repair-photos {
  max-width: 70ch;
  margin-top: var(--ks-space-6);
  padding: var(--ks-space-5);
  background: var(--ks-color-surface);
  border: 1px solid var(--ks-color-line);
}
.ks-repair-photos__positions {
  display: grid;
  gap: var(--ks-space-2);
  padding-left: var(--ks-space-5);
}
.ks-footer {
  padding: var(--ks-space-7) max(var(--ks-space-4), (100% - var(--ks-content-width)) / 2);
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink-soft);
}
.ks-footer__newsletter {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 1fr);
  gap: var(--ks-space-6);
  padding-block: 0 var(--ks-space-6);
  margin-bottom: var(--ks-space-6);
  border-bottom: 1px solid var(--ks-color-muted);
}
.ks-footer__newsletter h2 {
  margin: 0 0 var(--ks-space-2);
  color: var(--ks-color-canvas);
  font-size: clamp(1.25rem, 2vw, 1.75rem);
}
.ks-footer__newsletter p {
  margin: 0 0 var(--ks-space-3);
}
.ks-footer__newsletter label {
  display: block;
  margin-bottom: var(--ks-space-2);
  font-weight: 600;
}
.ks-footer__newsletter-fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--ks-space-2);
  align-items: stretch;
}
.ks-footer__newsletter input[type=email],
.ks-footer__newsletter button {
  min-width: 0;
  min-height: 44px;
  padding: var(--ks-space-2) var(--ks-space-3);
  border: 1px solid var(--ks-color-canvas);
  border-radius: 0;
  font: inherit;
}
.ks-footer__newsletter input[type=email] {
  color: var(--ks-color-canvas);
  background: transparent;
}
.ks-footer__newsletter button {
  color: var(--ks-color-ink-soft);
  background: var(--ks-color-canvas);
  cursor: pointer;
}
.ks-footer__newsletter button:disabled {
  cursor: wait;
  opacity: 0.65;
}
.ks-footer__newsletter-consent {
  display: flex;
  gap: var(--ks-space-2);
  align-items: flex-start;
  margin-top: var(--ks-space-3);
  font-size: 0.875rem;
  font-weight: 400;
}
.ks-footer__newsletter-consent input {
  flex: 0 0 auto;
  width: 1.25rem;
  height: 1.25rem;
  margin: 0.15rem 0 0;
}
.ks-footer__newsletter-status {
  min-height: 1.5em;
  margin-top: var(--ks-space-3);
}
.ks-footer__about {
  max-width: 60ch;
  margin-bottom: var(--ks-space-6);
}
.ks-footer__groups {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ks-space-5);
}
.ks-footer__groups h2 {
  font-size: 1rem;
}
.ks-footer__groups ul,
.ks-footer__legal ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-footer__groups a,
.ks-footer__legal a {
  color: var(--ks-color-canvas);
}
.ks-footer__legal {
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: var(--ks-space-3);
  align-items: flex-start;
  padding-top: var(--ks-space-5);
  margin-top: var(--ks-space-6);
  color: var(--ks-color-canvas);
  border-top: 1px solid var(--ks-color-muted);
}
.ks-footer__legal ul {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ks-space-4);
}
@media (max-width: 767.98px) {
  .ks-footer__newsletter {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ks-space-4);
  }
  .ks-footer__newsletter-fields {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (min-width: 360px) {
  .ks-product-grid,
  .ks-home-categories__grid,
  .ks-home-promos__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ks-pagination {
    grid-template-columns: 1fr auto 1fr;
  }
  .ks-pagination__previous {
    justify-self: start;
  }
  .ks-pagination__next {
    justify-self: end;
  }
}
@media (min-width: 768px) {
  .ks-home > :not(.ks-home-hero),
  .ks-listing,
  .ks-product,
  .ks-cart,
  .ks-repairs,
  .ks-header__main,
  .ks-primary-nav ul {
    width: min(100% - 3rem, var(--ks-content-width));
  }
  .ks-header__main {
    grid-template-columns: 190px minmax(260px, 1fr) auto;
    gap: var(--ks-space-5);
  }
  .ks-search {
    grid-column: auto;
  }
  .ks-home-hero {
    min-height: 0;
  }
  .ks-home-hero picture img {
    aspect-ratio: 16/5;
    max-height: 440px;
  }
  .ks-home-hero__content {
    margin: var(--ks-space-6) max(var(--ks-space-5), (100% - var(--ks-content-width)) / 2);
  }
  .ks-home-categories__grid,
  .ks-home-promos__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .ks-product__attributes th {
    width: 32%;
  }
  .ks-cart-line {
    grid-template-columns: 112px minmax(0, 1fr);
  }
  .ks-cart-line__image-link {
    width: 112px;
  }
  .ks-repair__timeline li {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--ks-space-3);
    align-items: baseline;
  }
  .ks-repair__timeline li[aria-current=step]::after {
    grid-column: 1/-1;
  }
  .ks-footer__groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ks-footer__legal {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}
@media (min-width: 992px) {
  .ks-header__main {
    min-height: 88px;
  }
  .ks-primary-nav {
    overflow-x: visible;
  }
  .ks-primary-nav ul {
    min-width: 0;
    justify-content: center;
  }
  .ks-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--ks-space-6) var(--ks-space-5);
  }
  .ks-repairs__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ks-product__primary {
    grid-template-columns: minmax(0, 7fr) minmax(300px, 5fr);
    gap: var(--ks-space-7);
  }
  .ks-product-gallery {
    grid-template-columns: 96px minmax(0, 1fr);
    display: grid;
  }
  .ks-product-gallery__main {
    grid-column: 2;
    grid-row: 1;
  }
  .ks-product-gallery__thumbnails {
    grid-column: 1;
    grid-row: 1;
    flex-direction: column;
    overflow-x: visible;
    overflow-y: auto;
  }
  .ks-product-gallery__thumbnail,
  .ks-product-gallery__thumbnail img {
    width: 96px;
  }
  .ks-product__purchase,
  .ks-cart__summary {
    position: sticky;
    top: 9rem;
  }
  .ks-cart {
    display: grid;
    grid-template-columns: minmax(0, 8fr) minmax(280px, 4fr);
    gap: 0 var(--ks-space-7);
  }
  .ks-cart > .ks-breadcrumbs,
  .ks-cart > h1,
  .ks-cart__count,
  .ks-cart__error,
  .ks-cart__empty {
    grid-column: 1/-1;
  }
  .ks-cart__lines {
    grid-column: 1;
  }
  .ks-cart__summary {
    grid-column: 2;
    grid-row: 4/span 2;
    margin-top: 0;
  }
  .ks-checkout {
    grid-template-areas: "breadcrumbs breadcrumbs" "title title" "notice notice" "count count" "lines summary" "return return";
  }
  .ks-checkout > .ks-breadcrumbs {
    grid-area: breadcrumbs;
  }
  .ks-checkout > h1 {
    grid-area: title;
  }
  .ks-checkout__notice {
    grid-area: notice;
  }
  .ks-checkout__count {
    grid-area: count;
  }
  .ks-checkout__lines {
    grid-area: lines;
  }
  .ks-checkout__summary {
    grid-area: summary;
  }
  .ks-checkout__return {
    grid-area: return;
  }
  .ks-footer__groups {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (min-width: 1200px) {
  .ks-home-featured .ks-product-grid {
    display: flex;
  }
}
@media (max-width: 991px) {
  .ks-primary-nav {
    display: block;
    overflow-x: visible;
  }
  .ks-primary-nav ul {
    min-width: 0;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 var(--ks-space-4);
  }
}
@media (max-width: 767px) {
  .ks-product-gallery__main {
    width: min(100%, 18rem);
    margin-inline: auto;
  }
  [data-ks-description][data-ks-description-enhanced=true] .ks-description-content {
    position: relative;
    max-height: 18rem;
    overflow: clip;
  }
  [data-ks-description][data-ks-description-enhanced=true] .ks-description-content::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    bottom: 0;
    height: 4.5rem;
    background: linear-gradient(to bottom, transparent, var(--ks-color-canvas));
    pointer-events: none;
  }
  [data-ks-description][data-ks-description-enhanced=true][data-ks-description-expanded=true] .ks-description-content {
    max-height: none;
    overflow: visible;
  }
  [data-ks-description][data-ks-description-enhanced=true][data-ks-description-expanded=true] .ks-description-content::after {
    content: none;
  }
}
@media (max-width: 359px) {
  .ks-product-grid,
  .ks-home-categories__grid,
  .ks-home-promos__grid {
    grid-template-columns: 1fr;
  }
  .ks-header__actions {
    gap: 0;
    font-size: 0.8125rem;
  }
}
@media (max-width: 479px) {
  #products-grid-area {
    margin-inline: 0;
  }
  #product-listing .item-card {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    flex: 0 0 100%;
  }
  #product-listing :where(.card, .card-img-container, .card-img, .card-body, .card-body > div) {
    min-width: 0;
    max-width: 100%;
  }
  #product-listing #products-grid-area .row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #product-listing #products-grid-area .row > .item-card,
  #product-listing #products-grid-area .row > [class*=col-] {
    width: auto;
    max-width: none;
    flex: none;
  }
}
@media (max-width: 239px) {
  .ks-header {
    position: static;
  }
  .ks-home > :not(.ks-home-hero),
  .ks-listing,
  .ks-product,
  .ks-cart,
  .ks-repairs,
  .ks-header__main,
  .ks-primary-nav ul {
    width: calc(100% - 1rem);
  }
  .ks-header__main {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ks-space-2);
  }
  .ks-brand,
  .ks-search,
  .ks-header__actions,
  .ks-primary-nav,
  .ks-primary-nav ul,
  .ks-primary-nav li {
    min-width: 0;
    width: 100%;
  }
  .ks-brand {
    justify-content: center;
  }
  .ks-search {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ks-space-2);
  }
  .ks-search label,
  .ks-search input,
  .ks-search button {
    min-width: 0;
    width: 100%;
    grid-column: 1;
    overflow-wrap: anywhere;
  }
  .ks-search button {
    padding-inline: var(--ks-space-2);
    border-radius: var(--ks-radius-field);
  }
  .ks-search input {
    border-radius: var(--ks-radius-field);
  }
  .ks-header__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ks-space-1);
    justify-self: stretch;
  }
  .ks-header__actions a,
  .ks-primary-nav a {
    min-width: 0;
    justify-content: center;
    overflow-wrap: anywhere;
    text-align: center;
  }
  .ks-primary-nav ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 var(--ks-space-1);
  }
  .ks-home-hero {
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    min-height: 0;
  }
  .ks-home-hero picture,
  .ks-home-hero picture img,
  .ks-home-hero__content {
    min-width: 0;
    max-width: 100%;
    grid-area: auto;
  }
  .ks-home-hero picture,
  .ks-home-hero picture img {
    height: auto;
    display: block;
  }
  .ks-home-hero__content {
    width: auto;
    padding: var(--ks-space-4);
    margin: 0;
  }
  .ks-home-hero__content h1,
  .ks-home-hero__content p,
  .ks-home-hero__content .ks-button {
    max-width: 100%;
    overflow-wrap: anywhere;
  }
  .ks-home-hero__content .ks-button {
    width: 100%;
    padding-inline: var(--ks-space-2);
    white-space: normal;
    text-align: center;
  }
  .ks-listing,
  .ks-listing__header,
  .ks-listing__header h1,
  .ks-listing__error,
  .ks-listing__error p,
  .ks-empty-state,
  .ks-empty-state h2,
  .ks-empty-state p {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
  }
  .ks-listing__error .ks-button,
  .ks-empty-state .ks-button {
    min-width: 44px;
    max-width: 100%;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    white-space: normal;
    overflow-wrap: anywhere;
    text-align: center;
  }
  .ks-product__attributes table {
    table-layout: fixed;
  }
  .ks-product__attributes th,
  .ks-product__attributes td {
    min-width: 0;
    padding-inline: var(--ks-space-2);
    overflow-wrap: anywhere;
  }
  .ks-cart-line {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ks-space-3);
  }
  .ks-cart-line__image-link {
    width: min(88px, 100%);
  }
  .ks-cart-line__body h2 a {
    overflow-wrap: anywhere;
  }
  .ks-cart h1,
  .ks-cart__error p,
  .ks-cart__empty p,
  .ks-cart__summary,
  .ks-cart__summary h2,
  .ks-cart__summary dt,
  .ks-cart__summary dd {
    min-width: 0;
    overflow-wrap: anywhere;
  }
  .ks-cart__summary dl > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ks-space-1);
  }
  .ks-cart__summary dd {
    text-align: left;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ks-button,
  .ks-skip-link {
    transition: none;
  }
}
@media print {
  .ks-header,
  .ks-footer,
  .ks-pagination,
  .ks-product-gallery__thumbnails,
  .ks-product__purchase .ks-button,
  .ks-cart__summary button {
    display: none;
  }
  .ks-home,
  .ks-listing,
  .ks-product,
  .ks-cart,
  .ks-repairs {
    width: 100%;
    padding: 0;
  }
  .ks-repairs__list {
    display: block;
  }
  .ks-repairs__list > li,
  .ks-repair {
    -moz-column-break-inside: avoid;
    break-inside: avoid;
  }
  .ks-repair {
    margin-bottom: var(--ks-space-4);
    background: transparent;
    border-color: #000000;
  }
  .ks-repairs__empty,
  .ks-repairs__error,
  .ks-repair__timeline li[aria-current=step] {
    background: transparent;
  }
  a[href]::after {
    content: " (" attr(href) ")";
    font-size: 0.75rem;
  }
}
.ks-catalogue-paths {
  margin: 0 0 clamp(1.25rem, 3vw, 2rem);
}
.ks-catalogue-paths__title {
  margin: 0 0 0.75rem;
  font-weight: 700;
}
.ks-catalogue-paths ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ks-catalogue-paths a {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  padding: 0.625rem 0.875rem;
  border: 1px solid var(--ks-border, #c8c3ba);
  border-radius: 999px;
  background: #fff;
  color: var(--ks-ink, #172332);
  font-weight: 600;
  text-decoration: none;
}
.ks-catalogue-paths a:hover,
.ks-catalogue-paths a:focus-visible,
.ks-catalogue-paths a[aria-current=page] {
  border-color: var(--ks-accent, #8b6a2f);
  background: var(--ks-surface-warm, #f6f1e8);
  color: var(--ks-ink, #172332);
}
.ks-catalogue-paths__context {
  max-width: 52rem;
  margin: 0.875rem 0 0;
}
.ks-cart fieldset,
.ks-checkout fieldset {
  padding: var(--ks-space-3);
  margin: 0 0 var(--ks-space-4);
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-surface);
}
.ks-cart__summary > fieldset:first-of-type {
  margin-top: var(--ks-space-6);
}
.ks-cart__summary fieldset legend,
.ks-cart form fieldset legend,
.ks-checkout form fieldset legend {
  padding-inline: var(--ks-space-2);
  font-size: 1rem !important;
  line-height: 1.3 !important;
  font-weight: 600;
}
.ks-cart__summary fieldset label,
.ks-cart form fieldset label,
.ks-checkout form fieldset label {
  font-size: 0.95rem !important;
  line-height: 1.4 !important;
  font-weight: 400;
}
.ks-cart input:not([type=radio]):not([type=checkbox]),
.ks-checkout input:not([type=radio]):not([type=checkbox]) {
  min-height: 44px;
  border: 1px solid var(--ks-color-line);
  border-radius: 0;
  font: inherit;
}
.ks-cart button:not(.ks-button):not(.ks-cart-line__remove),
.ks-checkout button:not(.ks-button) {
  min-width: 44px;
  min-height: 44px;
  padding: var(--ks-space-2) var(--ks-space-4);
  border: 1px solid var(--ks-color-ink);
  border-radius: 0;
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
  font: inherit;
  font-weight: 600;
}
.ks-cart button:not(.ks-button):not(.ks-cart-line__remove):disabled,
.ks-checkout button:not(.ks-button):disabled {
  color: var(--ks-color-muted);
  background: var(--ks-color-surface);
  border-color: var(--ks-color-line);
}
.ks-site-navbar__top-strip > .container,
.ks-site-navbar > .container,
.ks-site-footer > .container {
  width: min(100%, var(--ks-content-width));
  margin-inline: auto;
  padding-inline: clamp(var(--ks-space-4), 3vw, 2.5rem);
}
.ks-site-navbar {
  padding-block: var(--ks-space-2);
}
.ks-site-navbar > .container {
  min-height: 3.5rem;
}
.ks-site-navbar .navbar-brand {
  flex: 0 0 auto;
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.ks-site-navbar__top-strip,
.ks-site-navbar__top-strip *,
.ks-home-hero,
.ks-home-hero *,
.ks-trust-strip,
.ks-trust-strip *,
.ks-promotion-cards,
.ks-promotion-cards *,
.ks-editorial-cards,
.ks-editorial-cards *,
.ks-story,
.ks-story *,
.ks-site-footer,
.ks-site-footer * {
  box-sizing: border-box;
}
.ks-site-navbar__top-strip {
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink-soft);
  font-size: 0.8125rem;
}
.ks-site-navbar__top-strip .container {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--ks-space-1) var(--ks-space-4);
  align-items: center;
  justify-content: flex-end;
}
.ks-site-navbar__top-strip span {
  min-width: 0;
  margin-inline-end: auto;
  overflow-wrap: anywhere;
}
.ks-site-navbar__top-strip a {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: inherit;
  text-decoration: none;
  text-underline-offset: 0.2em;
}
.ks-site-navbar__top-strip a:hover,
.ks-site-navbar__top-strip a:focus-visible {
  text-decoration: underline;
}
.ks-site-navbar .ks-primary-nav__item {
  min-width: 0;
}
.ks-site-navbar .ks-primary-nav__link {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-underline-offset: 0.2em;
}
.ks-site-navbar .ks-primary-nav__link:hover,
.ks-site-navbar .ks-primary-nav__link:focus-visible {
  text-decoration: underline;
}
.ks-site-navbar .ks-cart-nav,
.ks-site-navbar .ks-wishlist-nav > a,
.ks-site-navbar .ks-comparison-nav > a {
  gap: var(--ks-space-1);
  white-space: nowrap;
}
.ks-site-navbar .ks-cart-nav .badge,
.ks-site-navbar .ks-wishlist-nav .badge,
.ks-site-navbar .ks-comparison-nav .badge {
  margin-inline-start: var(--ks-space-1);
}
.ks-site-navbar > .container {
  position: relative;
}
.ks-header-actions {
  display: inline-flex;
  align-items: center;
  gap: 0.15rem;
  margin-inline-start: auto;
}
.ks-header-actions > a {
  position: relative;
  width: 44px;
  min-width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--ks-color-ink-soft, #5f6668);
  text-decoration: none;
  border-radius: 0.25rem;
  transition-property:
    color,
    background-color,
    scale;
  transition-duration: 150ms;
}
.ks-header-actions > a:hover,
.ks-header-actions > a:focus-visible {
  color: var(--ks-color-ink, #111);
  background: var(--ks-color-surface-subtle, #f4f4f4);
}
.ks-header-actions > a:active {
  scale: 0.96;
}
.ks-header-actions svg {
  width: 1.7rem;
  height: 1.7rem;
  transform: scale(1.3);
  transform-origin: center;
}
.ks-header-actions .ks-cart-nav__label,
.ks-header-actions .ks-wishlist-nav__label {
  display: none;
}
.ks-header-actions > a[href="/porownaj"] {
  font-size: 0;
}
.ks-header-actions > a[href="/porownaj"]::before {
  content: "\21c4";
  font-size: 1.7rem;
  line-height: 1;
}
.ks-header-actions > a[href="/porownaj"],
.ks-header-actions > a[href="/porownaj"]::before,
.ks-header-actions > a[href="/porownaj"]:visited {
  color: var(--ks-color-ink-soft, #697174);
}
.ks-header-actions .badge {
  position: absolute;
  top: 0.25rem;
  right: 0.15rem;
  min-width: 1.05rem;
  height: 1.05rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.18rem;
  border-radius: 999px;
  font-size: 0.62rem;
  font-weight: 700;
  line-height: 1;
}
.ks-cart-nav,
.ks-wishlist-nav > a,
.ks-comparison-nav > a {
  position: relative;
}
.ks-cart-nav [data-kuck-cart-count],
.ks-wishlist-nav [data-kuck-wishlist-count],
.ks-comparison-nav [data-kuck-comparison-count] {
  position: absolute;
  top: 0.15rem;
  right: 0.05rem;
  min-width: 1.05rem;
  height: 1.05rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.18rem;
  border-radius: 50% !important;
  background: var(--ks-color-ink, #111) !important;
  color: var(--ks-color-surface, #fff) !important;
  font-size: 0.62rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}
[data-kuck-cart-count],
[data-kuck-wishlist-count],
[data-kuck-comparison-count] {
  position: absolute !important;
  top: 0.15rem !important;
  left: auto !important;
  right: 0.15rem !important;
  width: 1.05rem !important;
  min-width: 1.05rem !important;
  height: 1.05rem !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 50% !important;
  background: var(--ks-color-ink, #111) !important;
  color: var(--ks-color-surface, #fff) !important;
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}
a:has([data-kuck-cart-count]),
a:has([data-kuck-wishlist-count]),
a:has([data-kuck-comparison-count]) {
  position: relative !important;
  width: 44px;
  min-width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 991.98px) {
  .ks-header-actions {
    order: 2;
  }
}
.ks-site-footer__grid {
  grid-template-columns: 1fr;
  gap: var(--ks-space-6) var(--ks-space-5);
}
.ks-site-footer__grid > * {
  min-width: 0;
}
.ks-site-footer__links a {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.ks-site-footer__grid nav h2 {
  margin: 0 0 var(--ks-space-2);
  font-size: 1rem;
  line-height: 1.3;
}
.ks-footer {
  font-size: 0.875rem;
}
.ks-footer__newsletter,
.ks-footer__about,
.ks-footer__groups,
.ks-footer__legal {
  padding-block: var(--ks-space-3);
}
.ks-footer__newsletter h2,
.ks-footer__groups h2,
.ks-footer__legal h2 {
  margin-block: 0 var(--ks-space-2);
  font-size: 1rem;
}
.ks-footer__newsletter p,
.ks-footer__about p,
.ks-footer__legal p {
  margin-block: 0 var(--ks-space-2);
}
.ks-footer__groups {
  gap: var(--ks-space-3) var(--ks-space-4);
}
.ks-footer__groups ul,
.ks-footer__legal ul {
  gap: 0.15rem;
}
.ks-footer__groups a,
.ks-footer__legal a {
  min-height: 2rem;
  padding-block: 0.2rem;
}
.ks-home-hero {
  position: relative;
  width: 100%;
  min-width: 0;
  min-height: clamp(36rem, 80svh, 48rem);
  display: flex;
  align-items: flex-end;
  overflow: clip;
  isolation: isolate;
}
.ks-home > .ks-home-hero,
body[data-path=kuck-home] .ks-home-hero {
  width: min(100% - 2rem, var(--ks-content-width));
  margin-inline: auto;
}
.ks-home-hero__media {
  position: absolute;
  inset: 0;
  z-index: -1;
  min-width: 0;
  min-height: 0;
  display: block;
}
.ks-home-hero picture.ks-home-hero__media,
.ks-home-hero picture.ks-home-hero__media img {
  height: 100%;
}
.ks-home-hero__media img {
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
}
.ks-home-hero__content {
  grid-area: 1/1;
  align-self: end;
  justify-self: start;
  width: min(34rem, 100% - var(--ks-space-6));
  min-width: 0;
  margin: var(--ks-space-4);
  padding: var(--ks-space-5);
  border: 1px solid var(--ks-color-canvas);
  color: var(--ks-color-canvas);
  background: var(--ks-color-hero-overlay);
}
.ks-home-hero__content h1,
.ks-home-hero__content p,
.ks-home-hero__description {
  min-width: 0;
  max-width: 55ch;
  overflow-wrap: anywhere;
  color: inherit;
}
.ks-home-hero__content h1 {
  margin-block: var(--ks-space-2) var(--ks-space-3);
  font-size: clamp(1.75rem, 5vw, 3.25rem);
  line-height: 1.1;
}
.ks-home-hero__eyebrow,
.ks-editorial-card__eyebrow,
.ks-story__eyebrow {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.ks-home-hero__ornament,
.ks-trust-strip__ornament,
.ks-editorial-cards__ornament,
.ks-story__ornament {
  display: block;
  width: 3rem;
  height: 2px;
  background: currentColor;
}
.ks-home-hero__actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--ks-space-2);
  margin-top: var(--ks-space-4);
}
.ks-home-hero__actions .ks-button,
.ks-editorial-card .ks-button,
.ks-story__content .ks-button {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  padding: var(--ks-space-2) var(--ks-space-4);
  overflow-wrap: anywhere;
  text-align: center;
}
.ks-home-hero__actions .ks-button--primary {
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
}
.ks-home-hero__actions a.ks-button--primary,
.ks-home-hero__actions a.ks-button--primary:hover,
.ks-home-hero__actions a.ks-button--primary:focus-visible {
  color: var(--ks-color-ink);
}
.ks-home-hero__actions .ks-button--secondary {
  border: 1px solid var(--ks-color-canvas);
  color: var(--ks-color-canvas);
  background: transparent;
}
.ks-home-hero--carousel {
  min-height: 0;
  height: auto;
  aspect-ratio: 16/5;
  display: block;
}
.ks-home-hero__slides,
.ks-home-hero__slide {
  position: absolute;
  inset: 0;
}
.ks-home-hero__slide {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 420ms cubic-bezier(0.16, 1, 0.3, 1), visibility 420ms;
}
.ks-home-hero__slide.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 1;
}
.ks-home-hero--carousel .ks-home-hero__media {
  z-index: 0;
}
.ks-home-hero--carousel .ks-home-hero__link {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  outline-offset: -0.35rem;
}
.ks-home-hero--carousel .ks-home-hero__link:focus-visible {
  outline: 3px solid var(--ks-color-canvas);
}
.ks-home-hero--carousel .ks-home-hero__content,
.ks-home-hero__content--accessible {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  border: 0;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}
.ks-home-hero--carousel .ks-home-hero__control {
  z-index: 4;
}
.ks-home-hero__control {
  position: absolute;
  top: 50%;
  z-index: 3;
  width: 2.5rem;
  height: 2.5rem;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: 50%;
  color: var(--ks-color-ink);
  background: rgba(255, 255, 255, 0.62);
  font-size: 1rem;
  line-height: 1;
  opacity: 0;
  transform: translateY(-50%) scale(0.9);
  visibility: hidden;
  transition:
    opacity 180ms ease,
    background-color 180ms ease,
    transform 180ms ease,
    visibility 180ms;
}
.ks-home-hero:hover .ks-home-hero__control,
.ks-home-hero:focus-within .ks-home-hero__control {
  opacity: 1;
  transform: translateY(-50%) scale(1);
  visibility: visible;
}
.ks-home-hero__control:hover {
  background: rgba(255, 255, 255, 0.84);
  transform: translateY(-50%) scale(1.06);
}
.ks-home-hero__control:focus-visible,
.ks-home-hero__dot:focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 3px;
}
.ks-home-hero__control--prev {
  left: var(--ks-space-4);
}
.ks-home-hero__control--next {
  right: var(--ks-space-4);
}
.ks-home-hero__dots {
  position: absolute;
  bottom: var(--ks-space-3);
  left: 50%;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 0.55rem;
  transform: translateX(-50%);
}
.ks-home-hero__dot {
  width: 0.7rem;
  height: 0.7rem;
  padding: 0;
  border: 1px solid var(--ks-color-canvas);
  border-radius: 50%;
  background: transparent;
  transition: background-color 180ms ease, transform 180ms ease;
}
.ks-home-hero__dot.is-active {
  background: var(--ks-color-canvas);
  transform: scale(1.18);
}
@media (max-width: 991px) {
  .ks-home-hero--carousel {
    min-height: 0;
    height: auto;
    aspect-ratio: auto;
  }
  .ks-home-hero--carousel .ks-home-hero__slides {
    position: relative;
    inset: auto;
  }
  .ks-home-hero--carousel .ks-home-hero__slide.is-active {
    position: relative;
    inset: auto;
  }
  .ks-home-hero--carousel .ks-home-hero__link {
    position: relative;
    inset: auto;
    display: block;
    height: auto;
  }
  .ks-home-hero--carousel .ks-home-hero__media {
    position: relative;
    inset: auto;
    height: auto;
  }
  .ks-home-hero--carousel .ks-home-hero__media img {
    aspect-ratio: auto;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .ks-home-hero--carousel .ks-home-hero__content {
    width: min(28rem, 100% - var(--ks-space-5));
    margin: var(--ks-space-3);
    padding: var(--ks-space-4);
  }
  .ks-home-hero__control {
    width: 2.25rem;
    height: 2.25rem;
  }
  .ks-home-hero__control--prev {
    left: var(--ks-space-2);
  }
  .ks-home-hero__control--next {
    right: var(--ks-space-2);
  }
}
@media (prefers-reduced-motion: reduce) {
  .ks-home-hero__slide,
  .ks-home-hero__control,
  .ks-home-hero__dot {
    transition: none;
  }
}
.ks-home-hero__actions .ks-button:focus-visible,
.ks-editorial-card .ks-button:focus-visible,
.ks-story__content .ks-button:focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 3px;
}
.ks-trust-strip,
.ks-promotion-cards,
.ks-editorial-cards,
.ks-story {
  min-width: 0;
  margin-block: 0;
}
.ks-trust-strip {
  padding-block: var(--ks-space-5);
  border-block: 1px solid var(--ks-color-line);
  background: var(--ks-color-surface);
}
body[data-path=kuck-home] .ks-trust-strip {
  border-block: 1px solid var(--ks-color-line, #d9d9d9);
}
.ks-promotion-cards {
  padding-block: var(--ks-space-5);
  border-block: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
}
.ks-trust-strip__heading,
.ks-promotion-cards__heading,
.ks-editorial-cards__heading {
  min-width: 0;
  margin-bottom: var(--ks-space-5);
}
.ks-trust-strip__heading h2,
.ks-promotion-cards__heading h2,
.ks-editorial-cards__heading h2 {
  margin-block: var(--ks-space-2) var(--ks-space-2);
  overflow-wrap: anywhere;
}
.ks-promotion-cards__lead {
  max-width: 65ch;
  color: var(--ks-color-ink-soft);
}
.ks-promotion-cards__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--ks-space-4);
}
.ks-promotion-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: var(--ks-space-4);
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-surface);
}
.ks-promotion-card__eyebrow {
  margin: 0;
  color: var(--ks-color-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.ks-promotion-card h3,
.ks-promotion-card p {
  min-width: 0;
  overflow-wrap: anywhere;
}
.ks-promotion-card h3 {
  margin-block: var(--ks-space-2);
}
.ks-promotion-card p:not(.ks-promotion-card__eyebrow) {
  margin-bottom: var(--ks-space-4);
  color: var(--ks-color-ink-soft);
}
.ks-promotion-card__cta {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 0.35rem;
  margin-top: auto;
  color: var(--ks-color-ink);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  overflow-wrap: anywhere;
}
.ks-promotion-card__cta:focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 3px;
}
.ks-trust-strip__items {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--ks-space-3);
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-trust-strip__item {
  min-width: 0;
  border-inline-start: 2px solid var(--ks-color-line);
}
.ks-trust-strip__item article {
  height: 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: var(--ks-space-3) var(--ks-space-4);
}
.ks-trust-strip__item h3,
.ks-trust-strip__item p {
  min-width: 0;
  margin-block: 0 var(--ks-space-2);
  overflow-wrap: break-word;
  word-break: normal;
  -webkit-hyphens: none;
  hyphens: none;
}
.ks-trust-strip__item p {
  color: var(--ks-color-ink-soft);
}
.ks-trust-strip__item a {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  margin-top: auto;
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  overflow-wrap: anywhere;
}
.ks-public-trust,
.ks-social-links,
.ks-contact-salons {
  min-width: 0;
  padding-block: var(--ks-space-5);
}
.ks-public-trust h2,
.ks-social-links h2,
.ks-contact-salons h2 {
  margin-block: 0 var(--ks-space-4);
  overflow-wrap: anywhere;
}
.ks-public-trust-heading,
.ks-social-links-heading {
  scroll-margin-top: 6rem;
}
.ks-public-trust__items,
.ks-social-links ul {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--ks-space-3);
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-public-trust__items li,
.ks-public-trust__services article {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: var(--ks-space-3) var(--ks-space-4);
  border-inline-start: 2px solid var(--ks-color-line);
}
.ks-public-trust__items h3,
.ks-public-trust__items p,
.ks-public-trust__services h3,
.ks-public-trust__services p {
  margin-block: 0 var(--ks-space-2);
  overflow-wrap: anywhere;
}
.ks-public-trust__items a,
.ks-public-trust__services a,
.ks-social-links a,
.ks-contact-salons a {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  overflow-wrap: anywhere;
}
.ks-public-trust__services {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--ks-space-3);
  margin-top: var(--ks-space-4);
}
.ks-social-links ul {
  grid-template-columns: repeat(3, minmax(0, max-content));
  gap: var(--ks-space-3) var(--ks-space-5);
}
.ks-contact-salons__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--ks-space-5);
  margin-top: var(--ks-space-5);
}
.ks-contact-salons__grid > section {
  min-width: 0;
  padding: var(--ks-space-4);
  border: 1px solid var(--ks-color-line);
}
.ks-contact-salons__grid address {
  font-style: normal;
}
.ks-contact-salons__grid a {
  margin-inline-end: var(--ks-space-2);
}
.ks-contact-salons__grid .ks-salon__actions {
  margin-top: var(--ks-space-3);
}
.ks-news-list,
.ks-news-article {
  min-width: 0;
  padding-block: var(--ks-space-6);
}
.ks-news-list h1,
.ks-news-article h1 {
  max-width: 28ch;
  overflow-wrap: anywhere;
}
.ks-news-list__items {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--ks-space-5);
  padding: 0;
  margin: var(--ks-space-5) 0 0;
  list-style: none;
}
.ks-news-list__items > li {
  min-width: 0;
  border: 1px solid var(--ks-color-line);
}
.ks-news-list__items article {
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: var(--ks-space-4);
}
.ks-news-list__items img {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  -o-object-fit: cover;
  object-fit: cover;
}
.ks-news-list__items time,
.ks-news-article time {
  display: block;
  margin-block: var(--ks-space-3);
  color: var(--ks-color-muted);
  font-size: 0.875rem;
}
.ks-news-list__items h2 {
  margin-block: 0 var(--ks-space-3);
  overflow-wrap: anywhere;
}
.ks-news-list__items h2 a,
.ks-news-article a {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.ks-news-list__items p,
.ks-news-article__summary {
  max-width: 70ch;
  margin-block: 0;
  color: var(--ks-color-ink-soft);
}
.ks-news-article {
  max-width: 78ch;
}
.ks-news-article__body {
  max-width: 70ch;
  margin-top: var(--ks-space-6);
  overflow-wrap: anywhere;
}
.ks-news-article__body img {
  max-width: 100%;
  height: auto;
}
@media (max-width: 767.98px) {
  .ks-public-trust__items,
  .ks-contact-salons__grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .ks-public-trust__services,
  .ks-social-links ul {
    grid-template-columns: minmax(0, 1fr);
  }
  .ks-news-list__items {
    grid-template-columns: minmax(0, 1fr);
  }
}
.ks-editorial-cards__lead {
  max-width: 65ch;
  color: var(--ks-color-ink-soft);
}
.ks-editorial-cards__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--ks-space-5);
}
.ks-editorial-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding-bottom: var(--ks-space-4);
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
}
.ks-editorial-card img {
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
  background: var(--ks-color-surface);
}
.ks-editorial-card > :not(img) {
  min-width: 0;
  margin-inline: var(--ks-space-4);
  overflow-wrap: anywhere;
}
.ks-editorial-card__eyebrow {
  margin-top: var(--ks-space-4);
  color: var(--ks-color-muted);
}
.ks-editorial-card h3 {
  margin-block: var(--ks-space-2);
}
.ks-editorial-card p:not(.ks-editorial-card__eyebrow) {
  color: var(--ks-color-ink-soft);
}
.ks-editorial-card .ks-button {
  align-self: flex-start;
  margin-top: auto;
  color: var(--ks-color-ink);
  font-weight: 600;
  text-decoration: none;
}
.ks-trust-strip {
  padding-block: 1.5rem;
  border: 0;
  background: var(--ks-color-canvas, #fff);
}
body[data-path=kuck-home] .ks-trust-strip {
  border-block: 1px solid var(--ks-color-line, #d9d9d9);
}
.ks-trust-strip__heading {
  display: none;
}
body[data-path=kuck-home] .ks-trust-strip__items {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 3rem;
}
.ks-trust-strip__item {
  border: 0;
}
.ks-trust-strip__item article {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  -moz-column-gap: 0.9rem;
  column-gap: 0.9rem;
  align-items: center;
  padding: 0;
}
.ks-trust-strip__item article::before {
  grid-row: 1/span 2;
  color: var(--ks-color-ink, #222);
  font-size: 2rem;
  line-height: 1;
  text-align: center;
}
.ks-trust-strip__item:nth-child(1) article::before {
  content: "\2708";
}
.ks-trust-strip__item:nth-child(2) article::before {
  content: "\2713";
}
.ks-trust-strip__item:nth-child(3) article::before {
  content: "\2726";
}
.ks-trust-strip__item:nth-child(4) article::before {
  content: "\25c7";
}
.ks-trust-strip__item h3,
.ks-trust-strip__item p {
  grid-column: 2;
  margin: 0;
}
.ks-trust-strip__item h3 {
  font-size: 0.95rem;
  line-height: 1.2;
}
.ks-trust-strip__item p {
  font-size: 0.82rem;
  line-height: 1.35;
}
.ks-trust-strip__item a {
  grid-column: 2;
}
.ks-trust-strip__item article > a {
  display: none;
}
.ks-trust-strip__item h3 a {
  color: inherit;
  text-decoration: none;
}
.ks-trust-strip__item:nth-child(n+5) {
  display: none;
}
@media (max-width: 767.98px) {
  body[data-path=kuck-home] .ks-trust-strip__items {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
  }
}
.ks-editorial-card .ks-button--text {
  padding-inline: var(--ks-space-4);
}
.ks-story {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  background: var(--ks-color-surface);
}
.ks-story__image {
  width: 100%;
  height: 100%;
  min-width: 0;
  display: block;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
  object-fit: cover;
}
.ks-story__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: var(--ks-space-6);
}
.ks-story__content h2,
.ks-story__content p {
  min-width: 0;
  max-width: 60ch;
  overflow-wrap: anywhere;
}
.ks-story__content h2 {
  margin-block: var(--ks-space-2) var(--ks-space-3);
}
.ks-story__content p {
  color: var(--ks-color-ink-soft);
}
.ks-story__content .ks-button {
  margin-top: auto;
  color: var(--ks-color-ink);
  border: 1px solid var(--ks-color-ink);
  font-weight: 600;
  text-decoration: none;
}
body[data-path=kuck-home] .item-card-group-section > .row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(var(--ks-space-5), 2.5vw, var(--ks-space-7)) var(--ks-space-4);
  margin-inline: 0;
}
body[data-path=kuck-home] .item-card-group-section .primary-action-section:empty {
  display: none;
}
body[data-path=kuck-home] .item-card-group-section .item-card {
  width: auto;
  min-width: 0;
  max-width: none;
  padding: 0;
  flex: none;
}
body[data-path=kuck-home] .item-card-group-section .card {
  min-width: 0;
  height: 100%;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  border: 0;
  border-radius: 0 0 1rem 1rem;
  background: var(--ks-color-canvas, #fff);
  box-shadow: none;
}
body[data-path=kuck-home] .item-card-group-section > .row {
  min-width: 0;
}
body[data-path=kuck-home] .item-card-group-section .item-card {
  min-width: 0;
}
body[data-path=kuck-home] .item-card-group-section .card-img-container,
body[data-path=kuck-home] .item-card-group-section .card-img {
  min-width: 0;
  min-height: 0;
}
body[data-path=kuck-home] .item-card-group-section .card-img-container {
  position: relative;
  height: auto;
  aspect-ratio: 1;
  margin-bottom: 0;
  overflow: visible;
  background: #fff;
  outline: 0;
}
body[data-path=kuck-home] .item-card-group-section .item-card {
  display: flex;
  height: 100%;
  flex-direction: column;
}
body[data-path=kuck-home] .item-card-group-section .card-img {
  width: 100%;
  height: 100%;
  max-height: none;
  margin-top: 0;
  -o-object-fit: contain;
  object-fit: contain;
}
body[data-path=kuck-home] .item-card-group-section .product-title {
  display: -webkit-box;
  height: 2.55em;
  min-height: 2.55em;
  max-width: 100%;
  margin: 0 0 0.25rem;
  color: #111;
  font-family: "Montserrat", sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.35;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  text-align: left;
}
body[data-path=kuck-home] .item-card-group-section .product-title a {
  color: inherit;
  text-decoration: none;
}
body[data-path=kuck-home] .item-card-group-section .card-body {
  min-height: 0;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 0.55rem 0.65rem 1rem;
  text-align: left;
}
body[data-path=kuck-home] .item-card-group-section .card-body > div:first-child {
  display: block;
}
body[data-path=kuck-home] .item-card-group-section .product-category {
  display: none;
}
body[data-path=kuck-home] .item-card-group-section .product-price {
  min-height: 1.45rem;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.4rem;
  margin-top: 0.15rem;
  color: #111;
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  text-align: left;
}
body[data-path=kuck-home] .item-card-group-section .striked-price {
  color: #73777a;
  font-size: 0.875rem;
  font-weight: 400;
}
body[data-path=kuck-home] .item-card-group-section .ks-price__lowest {
  flex-basis: 100%;
}
body[data-path=kuck-home] .item-card-group-section .product-availability,
body[data-path=kuck-home] .item-card-group-section .out-of-stock {
  min-height: 1.8rem;
  margin-top: 0.2rem;
  color: #73777a;
  font-size: 0.75rem;
  line-height: 1.35;
  text-align: left;
}
body[data-path=kuck-home] .ks-home-commerce-card .primary-action-section {
  display: block;
  margin-top: 0.2rem;
  padding-top: 0;
  text-align: left;
}
body[data-path=kuck-home] .ks-home-commerce-card .primary-action-section a,
body[data-path=kuck-home] .ks-home-commerce-card .primary-action-section button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #111;
  border-radius: 0.25rem;
  color: #111;
  background: #fff;
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
}
body[data-path=kuck-home] .ks-home-commerce-card .primary-action-section a:hover,
body[data-path=kuck-home] .ks-home-commerce-card .primary-action-section button:hover,
body[data-path=kuck-home] .ks-home-commerce-card .primary-action-section a:focus-visible,
body[data-path=kuck-home] .ks-home-commerce-card .primary-action-section button:focus-visible {
  color: #fff;
  background: #111;
}
body[data-path=kuck-home] .ks-home-commerce-card .btn-add-to-cart-list {
  width: 100%;
  min-width: 0;
  height: 36px;
  min-height: 36px;
  display: inline-flex;
  visibility: visible;
  opacity: 1;
  margin-inline: 0;
  padding: 0;
  font-size: 0;
  background: #fff;
}
body[data-path=kuck-home] .item-card-group-section .ks-home-commerce-card .primary-action-section .btn-add-to-cart-list {
  height: 36px;
  min-height: 36px;
}
body[data-path=kuck-home] .ks-home-commerce-card .btn-add-to-cart-list svg {
  width: 14px;
  height: 14px;
  color: #73777a;
}
body[data-path=kuck-home] .ks-home-commerce-card .btn-explore-variants,
body[data-path=kuck-home] .ks-home-commerce-card .go-to-cart-grid {
  width: 100%;
}
body[data-path=kuck-home] .ks-home-commerce-card:hover .ks-product-card-actions,
body[data-path=kuck-home] .ks-home-commerce-card:focus-within .ks-product-card-actions {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
body[data-path=kuck-home] .ks-home-commerce-card .ks-product-card-actions > * {
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  max-width: 44px;
  flex: 0 0 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  border: 1px solid rgba(17, 17, 17, 0.12);
  border-radius: 999px;
  color: #414548;
  background: #fff;
  box-shadow: 0 1px 2px rgba(17, 17, 17, 0.08), 0 6px 18px rgba(17, 17, 17, 0.07);
  font-size: 0;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition:
    color 150ms ease,
    background-color 150ms ease,
    border-color 150ms ease,
    transform 150ms ease;
}
body[data-path=kuck-home] .ks-home-commerce-card .ks-product-card-actions svg {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  pointer-events: none;
}
body[data-path=kuck-home] .ks-home-commerce-card .ks-product-card-actions > *:hover {
  border-color: #111;
  color: #111;
}
body[data-path=kuck-home] .ks-home-commerce-card .ks-product-card-actions > *:focus-visible {
  border-color: #111;
  outline: 3px solid var(--ks-color-focus, #005fcc);
  outline-offset: 2px;
}
body[data-path=kuck-home] .ks-home-commerce-card .ks-product-card-actions > *:active {
  transform: scale(0.96);
}
.ks-home-hero :focus-visible,
.ks-trust-strip :focus-visible,
.ks-promotion-cards :focus-visible,
.ks-editorial-cards :focus-visible,
.ks-story :focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 3px;
}
@media (min-width: 390px) {
  .ks-site-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ks-site-footer__grid > :first-child {
    grid-column: auto;
  }
  body[data-path=kuck-home] .item-card-group-section > .row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 600px) {
  .ks-trust-strip__items {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 768px) {
  .ks-site-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ks-home-hero {
    min-height: clamp(28rem, 34vw, 38rem);
  }
  .ks-home-hero__content {
    align-self: center;
    margin: var(--ks-space-6) max(var(--ks-space-5), (100% - var(--ks-content-width)) / 2);
  }
  .ks-editorial-cards__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .ks-promotion-cards__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .ks-story {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  }
  body[data-path=kuck-home] .item-card-group-section > .row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 1200px) {
  .ks-site-footer__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .ks-trust-strip__items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  body[data-path=kuck-home] .item-card-group-section > .row {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .ks-home-hero__content {
    margin: var(--ks-space-7) max(var(--ks-space-6), (100% - var(--ks-content-width)) / 2);
  }
}
@media (max-width: 991.98px) {
  .ks-site-navbar__top-strip {
    display: none;
  }
}
@media (max-width: 389px) {
  .ks-home-hero__content {
    width: calc(100% - var(--ks-space-4));
    margin: var(--ks-space-2);
    padding: var(--ks-space-4);
  }
  .ks-home-hero__actions {
    flex-direction: column;
  }
  .ks-home-hero__actions .ks-button {
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ks-site-navbar__top-strip a,
  .ks-site-navbar .ks-primary-nav__link,
  .ks-home-hero a,
  .ks-trust-strip a,
  .ks-editorial-cards a,
  .ks-story a,
  .ks-editorial-card img {
    transition: none;
    animation: none;
  }
}
.ks-site-navbar.ks-site-navbar--adaptive {
  position: relative;
  z-index: 20;
}
.ks-site-navbar .ks-mega-menu__item {
  position: static;
  min-width: 0;
  display: flex;
  align-items: center;
}
.ks-site-navbar .ks-mega-menu__link {
  min-width: 0;
  white-space: nowrap;
}
.ks-site-navbar .ks-mega-menu__toggle {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  color: var(--ks-color-ink);
  background: transparent;
  font: inherit;
  cursor: pointer;
}
.ks-site-navbar .ks-mega-menu__toggle:hover,
.ks-site-navbar .ks-mega-menu__toggle:focus-visible {
  text-decoration: underline;
}
.ks-site-navbar .ks-mega-menu__panel {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  max-height: calc(100vh - 8rem);
  overflow-y: auto;
  padding: var(--ks-space-5) max(var(--ks-space-4), 3vw);
  border-top: 1px solid var(--ks-color-line);
  border-bottom: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
  box-shadow: 0 0.75rem 1.5rem rgba(23, 35, 50, 0.16);
  opacity: 1;
  transform: translateY(0);
  transition-property:
    opacity,
    transform,
    visibility;
  transition-duration: 220ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
.ks-site-navbar .ks-mega-menu__panel.is-opening,
.ks-site-navbar .ks-mega-menu__panel.is-closing {
  opacity: 0;
  transform: translateY(-0.45rem);
  visibility: hidden;
  pointer-events: none;
}
.ks-mega-menu__inner {
  width: min(100%, 1200px);
  margin-inline: auto;
}
.ks-mega-menu__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--ks-space-5);
}
.ks-mega-menu__grid--jewellery {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.ks-mega-menu__group,
.ks-mega-menu__subgroup {
  min-width: 0;
}
.ks-mega-menu__group > h2,
.ks-mega-menu__subgroup > h3 {
  margin: 0 0 var(--ks-space-2);
  color: var(--ks-color-ink);
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.35;
  text-transform: uppercase;
}
.ks-mega-menu__group > h2 {
  padding-bottom: var(--ks-space-2);
  border-bottom: 1px solid var(--ks-color-line);
}
.ks-mega-menu__subgroup + .ks-mega-menu__subgroup {
  margin-top: var(--ks-space-4);
}
.ks-mega-menu__links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 var(--ks-space-3);
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-mega-menu__links li {
  min-width: 0;
}
.ks-mega-menu__links a,
.ks-mega-menu__all {
  min-width: 0;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  color: var(--ks-color-ink);
  overflow-wrap: anywhere;
  text-decoration: none;
  text-underline-offset: 0.2em;
}
.ks-mega-menu__links a:hover,
.ks-mega-menu__links a:focus-visible,
.ks-mega-menu__all:hover,
.ks-mega-menu__all:focus-visible {
  text-decoration: underline;
}
.ks-mega-menu__all {
  margin-top: var(--ks-space-5);
  padding-top: var(--ks-space-3);
  border-top: 1px solid var(--ks-color-line);
  font-weight: 700;
}
@media (min-width: 1024px) and (max-width: 1399.98px) {
  .ks-site-navbar .navbar-toggler {
    display: none;
  }
  .ks-site-navbar .navbar-collapse > .navbar-nav.mr-auto {
    display: none;
  }
  .ks-site-navbar .navbar-collapse {
    display: flex;
    flex-basis: 100%;
  }
  .ks-site-navbar .navbar-nav {
    width: 100%;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    -moz-column-gap: var(--ks-space-3);
    column-gap: var(--ks-space-3);
    row-gap: var(--ks-space-2);
    margin: 0;
  }
  .ks-site-navbar .navbar-nav > li {
    flex: 0 0 auto;
  }
  .ks-site-navbar .navbar-nav > li > .nav-link {
    padding-inline: var(--ks-space-2);
    white-space: nowrap;
  }
  .ks-site-navbar .ks-mega-menu__toggle {
    display: none;
  }
}
@media (min-width: 1400px) {
  .ks-site-navbar .ks-mega-menu__toggle {
    display: none;
  }
}
@media (max-width: 1023.98px) {
  .ks-site-navbar .navbar-collapse {
    width: 100%;
    min-width: 100%;
    order: 4;
  }
  .ks-site-navbar .navbar-nav {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    margin: 0;
  }
  .ks-site-navbar .navbar-nav > li {
    border-top: 1px solid var(--ks-color-line);
  }
  .ks-site-navbar .navbar-nav > li:last-child {
    border-bottom: 1px solid var(--ks-color-line);
  }
  .ks-site-navbar .navbar-nav > .ks-account-nav-item {
    align-self: stretch;
  }
  .ks-site-navbar .navbar-nav > .ks-account-nav-item > .ks-account-nav {
    width: 100%;
    justify-content: flex-start;
    padding-inline: var(--ks-space-3);
    text-align: left;
  }
  .ks-site-navbar .navbar-nav .ks-mega-menu__item {
    display: grid;
    height: auto;
    grid-template-columns: minmax(0, 1fr) 44px;
    align-items: stretch;
  }
  .ks-site-navbar .ks-mega-menu__link {
    justify-content: flex-start;
    text-align: left;
  }
  .ks-site-navbar .ks-wishlist-nav > a {
    gap: var(--ks-space-2);
    justify-content: flex-start;
  }
  .ks-site-navbar .ks-cart-nav__label,
  .ks-site-navbar .ks-wishlist-nav__label {
    display: inline;
    white-space: nowrap;
  }
  .ks-site-navbar .ks-mega-menu__toggle {
    grid-column: 2;
    grid-row: 1;
  }
  .ks-site-navbar .ks-mega-menu__panel {
    position: static;
    grid-column: 1/-1;
    width: 100%;
    max-height: none;
    overflow: visible;
    padding: var(--ks-space-4) 0;
    border-top: 1px solid var(--ks-color-line);
    border-bottom: 0;
    box-shadow: none;
  }
  .ks-mega-menu__grid,
  .ks-mega-menu__grid--jewellery {
    grid-template-columns: 1fr;
    gap: var(--ks-space-4);
  }
  .ks-mega-menu__links {
    grid-template-columns: 1fr;
  }
  .ks-mega-menu__group:not(:last-child) {
    padding-bottom: var(--ks-space-4);
    border-bottom: 1px solid var(--ks-color-line);
  }
  .ks-mega-menu__subgroup + .ks-mega-menu__subgroup {
    margin-top: var(--ks-space-3);
  }
}
@media (max-width: 1399.98px) {
  .ks-site-navbar #website-post-login .dropdown-menu,
  .ks-site-navbar .dropdown-user .dropdown-menu {
    display: none !important;
  }
}
@media (min-width: 1024px) {
  .ks-site-navbar > .container {
    display: grid;
    grid-template-columns: minmax(220px, 0.9fr) minmax(320px, 1.8fr) minmax(160px, 0.9fr);
    grid-template-areas: "brand search actions" "nav nav nav";
    -moz-column-gap: clamp(var(--ks-space-4), 3vw, var(--ks-space-7));
    column-gap: clamp(var(--ks-space-4), 3vw, var(--ks-space-7));
    row-gap: var(--ks-space-3);
    align-items: center;
  }
  .ks-site-navbar .navbar-brand {
    grid-area: brand;
    justify-self: start;
  }
  .ks-site-navbar .navbar-brand img {
    max-width: min(320px, 100%);
    height: 64px;
  }
  .ks-site-navbar .ks-global-search {
    grid-area: search;
    width: 100%;
    min-width: 0;
    max-width: none;
    margin: 0;
    justify-self: stretch;
  }
  .ks-site-navbar .ks-global-search input,
  .ks-site-navbar .ks-global-search button {
    min-height: 44px;
  }
  .ks-site-navbar .ks-global-search button {
    width: 56px;
    min-width: 56px;
    padding-inline: 0;
  }
  .ks-site-navbar .navbar-collapse {
    grid-area: nav;
    width: 100%;
    min-width: 0;
    padding-top: var(--ks-space-3);
    border-top: 1px solid var(--ks-color-line);
  }
  .ks-site-navbar .navbar-collapse > .navbar-nav.mr-auto {
    display: none;
  }
  .ks-site-navbar .navbar-collapse > .navbar-nav:not(.mr-auto) {
    width: 100%;
    margin: 0;
    justify-content: flex-start;
    -moz-column-gap: var(--ks-space-2);
    column-gap: var(--ks-space-2);
  }
  .ks-site-navbar .navbar-collapse > .navbar-nav:not(.mr-auto) .nav-link {
    padding-inline: var(--ks-space-2);
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.035em;
    text-transform: uppercase;
    white-space: nowrap;
  }
  .ks-site-navbar .ks-cart-nav__label,
  .ks-site-navbar .ks-wishlist-nav__label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
}
.ks-wishlist-page {
  width: min(100% - 2rem, 1100px);
  margin-inline: auto;
  padding-block: clamp(2rem, 6vw, 4rem);
}
.ks-wishlist-page > h1 {
  margin-bottom: 1.75rem;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1.1;
}
.ks-wishlist-state,
.ks-wishlist-state--auth,
.ks-wishlist-state--empty,
.ks-wishlist-state--error {
  width: min(100%, 54rem);
  max-width: none;
  padding: clamp(2rem, 5vw, 4rem);
  margin-inline: 0;
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-surface);
}
.ks-wishlist-state h2 {
  margin-bottom: 0.75rem;
  font-size: clamp(1.75rem, 4vw, 3rem);
  line-height: 1.12;
}
.ks-wishlist-state p {
  max-width: 62ch;
  margin-bottom: 1.5rem;
  color: var(--ks-color-muted);
}
.ks-wishlist-results {
  min-width: 0;
}
.ks-wishlist-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--ks-space-4);
  padding: 0;
  margin: 0;
  list-style: none;
}
.ks-wishlist-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--ks-space-3);
  padding: var(--ks-space-3);
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
}
.ks-wishlist-card__link {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--ks-space-3);
  font-weight: 600;
}
.ks-wishlist-card__image,
.ks-comparison-card__image {
  width: 100%;
  aspect-ratio: 1;
  -o-object-fit: contain;
  object-fit: contain;
  background: transparent;
}
.ks-wishlist-card__name {
  font-size: 1rem;
  overflow-wrap: anywhere;
}
.ks-wishlist-card__details {
  display: contents;
}
.ks-wishlist-card__price,
.ks-wishlist-card__availability {
  grid-column: 1/-1;
  margin: 0;
}
.ks-wishlist-card__price {
  font-size: 1.125rem;
  font-weight: 700;
}
.ks-wishlist-card__availability {
  color: var(--ks-color-muted);
  font-size: 0.875rem;
}
.ks-wishlist-action,
.ks-wishlist-login-action {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--ks-space-2);
}
.ks-wishlist-card .ks-wishlist-action {
  width: 100%;
  margin-top: auto;
  padding: 0.75rem 1rem;
  border: 0;
  border-radius: 0.65rem;
  background: var(--ks-color-surface, #f4f4f3);
  color: var(--ks-color-ink);
  font-size: 1rem;
  text-align: center;
}
.ks-wishlist-card .ks-wishlist-action:hover,
.ks-wishlist-card .ks-wishlist-action:focus-visible {
  border-color: transparent;
  background: var(--ks-color-line);
  color: var(--ks-color-ink);
}
.ks-wishlist-card-action {
  justify-self: end;
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
  color: var(--ks-color-ink);
  font-size: 1.25rem;
}
.ks-wishlist-card-action:hover,
.ks-wishlist-card-action:focus-visible,
.ks-wishlist-action--remove {
  border-color: var(--ks-color-ink);
}
.ks-wishlist-login-action {
  text-decoration: underline;
}
.ks-wishlist-status {
  min-height: 1.5rem;
  margin-block: 0 var(--ks-space-4);
  color: var(--ks-color-muted);
}
.ks-wishlist-nav {
  display: inline-flex;
  align-items: center;
}
.ks-cart-nav__label,
.ks-wishlist-nav__label {
  display: none;
}
.ks-site-navbar .ks-cart-nav__label,
.ks-site-navbar .ks-wishlist-nav__label {
  display: none !important;
}
.ks-site-navbar .ks-comparison-nav > a {
  font-size: 0;
}
.ks-site-navbar .ks-comparison-nav > a > span[aria-hidden=true] {
  display: inline-block;
  font-size: 1.5rem;
  line-height: 1;
}
.ks-wishlist-count,
.ks-wishlist-nav [data-kuck-wishlist-count] {
  min-width: 1.5rem;
  text-align: center;
}
.ks-wishlist-count[aria-hidden=true],
.ks-wishlist-nav [data-kuck-wishlist-count][aria-hidden=true] {
  display: none;
}
@media (min-width: 600px) {
  .ks-wishlist-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1200px) {
  .ks-wishlist-list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (max-width: 359px) {
  .ks-wishlist-card {
    grid-template-columns: 1fr;
  }
  .ks-wishlist-card__image {
    max-width: 7rem;
  }
  .ks-wishlist-card-action {
    justify-self: start;
  }
}
.ks-comparison-page {
  width: min(100% - 2rem, 1180px);
  margin-inline: auto;
  padding-block: clamp(2rem, 6vw, 4rem);
}
.ks-comparison-page > h1 {
  margin-bottom: var(--ks-space-6);
}
.ks-comparison-state {
  max-width: 58ch;
  padding: clamp(1.25rem, 4vw, 2rem);
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-surface);
}
.ks-comparison-state--auth,
.ks-comparison-state--empty,
.ks-comparison-state--error {
  min-width: 0;
}
.ks-comparison-state h2 {
  margin-bottom: var(--ks-space-3);
}
.ks-comparison-state p {
  margin-bottom: var(--ks-space-5);
  color: var(--ks-color-muted);
}
.ks-comparison-results {
  min-width: 0;
}
.ks-comparison-hint {
  margin-block: 0 var(--ks-space-4);
  color: var(--ks-color-muted);
}
.ks-comparison-status {
  min-height: 1.5rem;
  margin-block: 0 var(--ks-space-4);
  color: var(--ks-color-muted);
}
.ks-comparison-products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--ks-space-4);
  margin-bottom: var(--ks-space-6);
}
.ks-comparison-products > .ks-comparison-table {
  grid-column: 1/-1;
  min-width: 0;
  width: 100%;
}
.ks-comparison-card {
  min-width: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--ks-space-3);
  padding: var(--ks-space-3);
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
}
.ks-comparison-card__link {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--ks-space-3);
  font-weight: 600;
}
.ks-comparison-card__image {
  width: 100%;
  aspect-ratio: 1;
  -o-object-fit: contain;
  object-fit: contain;
  background: transparent;
}
.ks-comparison-card__name {
  margin: 0;
  font-size: 1rem;
  overflow-wrap: anywhere;
}
.ks-comparison-card__price,
.ks-comparison-card__availability {
  margin: 0;
  overflow-wrap: anywhere;
}
.ks-comparison-card__price {
  font-size: 1.125rem;
  font-weight: 700;
}
.ks-comparison-card__availability {
  color: var(--ks-color-muted);
  font-size: 0.875rem;
}
.ks-comparison-action,
.ks-comparison-login-action {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--ks-space-2);
  text-align: center;
}
.ks-comparison-card-action {
  width: 100%;
  margin-top: auto;
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
  color: var(--ks-color-ink);
}
.ks-comparison-card-action:hover,
.ks-comparison-card-action:focus-visible,
.ks-comparison-action--add,
.ks-comparison-action--remove {
  border-color: var(--ks-color-ink);
}
.ks-comparison-login-action {
  text-decoration: underline;
}
.ks-comparison-nav {
  display: inline-flex;
  align-items: center;
}
.ks-comparison-count,
.ks-comparison-nav [data-kuck-comparison-count] {
  min-width: 1.5rem;
  text-align: center;
}
.ks-comparison-count[aria-hidden=true],
.ks-comparison-nav [data-kuck-comparison-count][aria-hidden=true] {
  display: none;
}
.ks-comparison-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  margin: 0;
  background: var(--ks-color-canvas);
}
.ks-comparison-table caption {
  padding: var(--ks-space-3) 0;
  font-size: 1.125rem;
  font-weight: 700;
  text-align: left;
}
.ks-comparison-table th,
.ks-comparison-table td {
  padding: var(--ks-space-3);
  border: 1px solid var(--ks-color-line);
  text-align: left;
  vertical-align: top;
  overflow-wrap: anywhere;
}
.ks-comparison-table th[scope=col] {
  font-weight: 700;
}
.ks-comparison-table th[scope=col] .ks-comparison-table__product {
  min-height: 25rem;
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0;
  border: 0;
  text-align: left;
}
.ks-comparison-table th[scope=col] .ks-comparison-card__image {
  height: 12rem;
  max-height: 14rem;
}
.ks-comparison-table th[scope=col] .ks-comparison-card__link {
  flex: 0 0 auto;
}
.ks-comparison-table th[scope=col] .ks-comparison-card__name {
  min-height: 2.5em;
}
.ks-comparison-table th[scope=col] .ks-comparison-card__price,
.ks-comparison-table th[scope=col] .ks-comparison-card__availability {
  min-height: 1.45rem;
}
.ks-comparison-table th[scope=col] .ks-comparison-card-action {
  margin-top: auto;
}
.ks-comparison-card__cart {
  min-height: 2.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: var(--ks-space-2);
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
  text-decoration: none;
}
.ks-comparison-card__cart:hover,
.ks-comparison-card__cart:focus-visible {
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink-soft);
  text-decoration: none;
}
.ks-comparison-card__remove {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  width: 2rem;
  height: 2rem;
  min-width: 2rem;
  min-height: 2rem;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: #73777a !important;
  background: transparent !important;
  box-shadow: none !important;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  font-size: 0;
  line-height: 1;
  z-index: 1;
}
.ks-comparison-card__remove svg {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  color: inherit;
  overflow: visible;
}
.ks-comparison-card__remove svg path {
  fill: currentColor !important;
  stroke: none;
}
.ks-comparison-card__remove:hover,
.ks-comparison-card__remove:focus-visible {
  color: var(--ks-color-ink-soft);
  background: transparent !important;
  box-shadow: none !important;
}
.ks-comparison-table th[scope=row] {
  width: 22%;
  background: var(--ks-color-surface);
}
.ks-comparison-page a:focus-visible,
.ks-comparison-page button:focus-visible {
  outline: 3px solid var(--ks-color-focus, #0b5fff);
  outline-offset: 3px;
}
@media (max-width: 991px) {
  .ks-comparison-products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .ks-comparison-products {
    gap: var(--ks-space-3);
  }
  .ks-comparison-table,
  .ks-comparison-table thead,
  .ks-comparison-table tbody,
  .ks-comparison-table tr,
  .ks-comparison-table th,
  .ks-comparison-table td {
    display: block;
    width: 100%;
  }
  .ks-comparison-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
  .ks-comparison-table thead {
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: visible;
    clip: auto;
    white-space: normal;
  }
  .ks-comparison-table thead tr {
    margin-bottom: var(--ks-space-4) !important;
    border: 0 !important;
  }
  .ks-comparison-table thead th[scope=col]:first-child {
    display: none;
  }
  .ks-comparison-table thead th[scope=col] {
    padding: var(--ks-space-3);
    border: 1px solid var(--ks-color-line);
  }
  .ks-comparison-table tr {
    margin-bottom: var(--ks-space-4);
    border: 1px solid var(--ks-color-line);
  }
  .ks-comparison-table th[scope=row] {
    width: 100%;
    border: 0;
    border-bottom: 1px solid var(--ks-color-line);
  }
  .ks-comparison-table td {
    display: grid;
    grid-template-columns: minmax(0, 42%) minmax(0, 58%);
    -moz-column-gap: var(--ks-space-3);
    column-gap: var(--ks-space-3);
    align-items: start;
    padding: var(--ks-space-3);
    border: 0;
    border-bottom: 1px solid var(--ks-color-line);
  }
  .ks-comparison-table td:last-child {
    border-bottom: 0;
  }
  .ks-comparison-table td::before {
    content: attr(data-label);
    position: static;
    display: block;
    width: auto;
    font-weight: 700;
    overflow-wrap: anywhere;
  }
}
@media (max-width: 359px) {
  .ks-comparison-products {
    grid-template-columns: 1fr;
  }
  .ks-comparison-table td {
    grid-template-columns: minmax(0, 44%) minmax(0, 56%);
    -moz-column-gap: 0.625rem;
    column-gap: 0.625rem;
    font-size: 0.9375rem;
  }
}
#product-listing .products-list:not(.hidden) .card-body > div:first-child {
  align-items: flex-start;
  flex-wrap: wrap;
  gap: var(--ks-space-2);
}
#product-listing .products-list:not(.hidden) .card-body > div:first-child > a:first-child {
  min-width: 0;
  flex: 1 1 calc(100% - 6rem);
}
#product-listing .products-list:not(.hidden) .ks-wishlist-card-action,
#product-listing .products-list:not(.hidden) .ks-comparison-card-action {
  width: 44px;
  height: 44px;
  min-width: 44px;
  flex: 0 0 44px;
  padding: 0;
  margin-top: 0;
  font-size: 0;
  text-decoration: none;
}
#product-listing .products-list:not(.hidden) .ks-wishlist-card-action::before {
  content: "\2661";
  font-size: 1.25rem;
}
#product-listing .products-list:not(.hidden) .ks-comparison-card-action::before {
  content: "\21c4";
  font-size: 1.25rem;
}
.ks-cart-nav {
  display: inline-flex;
  align-items: center;
  gap: var(--ks-space-2);
  min-width: 44px;
  min-height: 44px;
}
.ks-cart-nav__label {
  white-space: nowrap;
}
.ks-cart-count {
  min-width: 1.5rem;
  text-align: center;
}
.ks-private-navbar__links .ks-cart-nav,
.ks-site-navbar .ks-cart-nav {
  text-decoration: none;
}
.ks-consent {
  color: var(--ks-color-ink);
  font-size: 0.9375rem;
}
.ks-consent [hidden] {
  display: none;
}
.ks-site-navbar .ks-global-search input,
.ks-site-navbar .ks-global-search button {
  border-radius: 0;
}
.ks-site-navbar .ks-global-search input {
  border-radius: 3px 0 0 3px;
}
.ks-site-navbar .ks-global-search button {
  border-radius: 0 3px 3px 0;
}
.ks-site-navbar .ks-global-search input:focus,
.ks-site-navbar .ks-global-search input:focus-visible,
.ks-site-navbar .ks-global-search button:focus,
.ks-site-navbar .ks-global-search button:focus-visible {
  outline: 0 !important;
  box-shadow: none !important;
}
.ks-site-navbar .ks-global-search input:focus,
.ks-site-navbar .ks-global-search input:focus-visible {
  border-color: var(--ks-color-line);
}
.ks-site-navbar .btn-login-area {
  font-size: 0.875rem;
}
.ks-site-navbar .dropdown-user > .nav-link {
  font-size: 0;
}
.ks-site-navbar .dropdown-user > .nav-link .user-image-wrapper,
.ks-site-navbar .dropdown-user > .nav-link .avatar {
  display: none;
}
.ks-site-navbar .dropdown-user > .nav-link::before {
  content: "Moje konto";
  font-size: 0.875rem;
}
.ks-site-navbar #website-post-login .nav-avatar {
  font-size: 0;
}
.ks-site-navbar #website-post-login .nav-avatar .user-image-wrapper,
.ks-site-navbar #website-post-login .nav-avatar .avatar {
  display: none;
}
.ks-site-navbar #website-post-login .nav-avatar::before {
  content: "Moje konto";
  font-size: 0.875rem;
}
.ks-site-navbar .navbar-brand img {
  height: 56px;
  max-height: none;
  max-width: min(240px, 44vw);
}
@media (min-width: 1024px) {
  .ks-site-navbar .navbar-brand img {
    height: 78px;
    max-height: none;
    max-width: min(360px, 100%);
  }
}
.ks-public-trust {
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
}
.ks-public-trust h2,
.ks-public-trust h3,
.ks-public-trust p,
.ks-public-trust a {
  color: inherit;
}
body[data-path=all-products] .ks-trust-strip,
body[data-path=all-products] .ks-public-trust {
  display: none;
}
body[data-path=all-products],
body[data-path=all-products] #page-content,
body[data-path=all-products] main,
body[data-path=all-products] .page-content,
body[data-path=all-products] .ks-catalogue-runtime,
body[data-path=all-products] #product-listing,
body[data-path=all-products] #products-grid-area,
body[data-path=all-products] #products-grid-area .item-card,
body[data-path=all-products] #products-grid-area .card-img-container {
  background: #fff;
}
body[data-path=salony] .ks-public-trust,
body[data-path=about] .ks-public-trust,
body[data-path=aktualnosci] .ks-public-trust,
body[data-path^="aktualnosci/"] .ks-public-trust,
body[data-path=serwis] .ks-public-trust,
body[data-path^="serwis/"] .ks-public-trust,
body[data-path=contact] .ks-public-trust,
body[data-path=login] .ks-public-trust {
  display: none !important;
}
body:has(#product-listing) .ks-trust-strip,
body:has(#product-listing) .ks-public-trust {
  display: none;
}
.ks-catalogue-heading {
  margin: 0;
  padding-block: 1rem;
}
#product-listing .product-paging-area,
#product-listing .pagination-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 0;
  margin-top: 1.5rem;
  border-top: 1px solid var(--ks-color-line);
}
#product-listing .product-paging-area > .col-3 {
  display: none;
}
#product-listing .product-paging-area > .col-9 {
  width: 100%;
  max-width: none;
  flex: 1 1 100%;
  display: flex;
  align-items: center;
}
#product-listing .product-paging-area .btn-prev,
#product-listing .product-paging-area .btn-next {
  min-width: 2rem;
  min-height: 2rem;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: var(--ks-color-muted);
  background: transparent;
  font-size: 0;
}
#product-listing .product-paging-area .btn-prev::after,
#product-listing .product-paging-area .btn-next::after {
  font-size: 1.25rem;
  line-height: 1;
}
#product-listing .product-paging-area .btn-prev::after {
  content: "\2190";
}
#product-listing .product-paging-area .btn-next::after {
  content: "\2192";
}
#product-listing .product-paging-area .pagination,
#product-listing .pagination-wrapper .pagination {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0;
  margin: 0;
  list-style: none;
}
#product-listing .product-paging-area .page-link,
#product-listing .pagination-wrapper .page-link {
  min-width: 2rem;
  min-height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.35rem;
  border: 0;
  border-radius: 0;
  color: var(--ks-color-muted);
  background: transparent;
  font: inherit;
  text-decoration: none;
}
#product-listing .product-paging-area .page-link:hover,
#product-listing .product-paging-area .page-link:focus-visible,
#product-listing .pagination-wrapper .page-link:hover,
#product-listing .pagination-wrapper .page-link:focus-visible,
#product-listing .product-paging-area .page-item.active .page-link,
#product-listing .pagination-wrapper .page-item.active .page-link {
  color: var(--ks-color-ink);
  background: transparent;
  text-decoration: underline;
  text-underline-offset: 0.25rem;
}
#product-listing .product-paging-area .page-item.active > .page-link,
#product-listing .product-paging-area .page-item.active > .page-link:hover {
  border: 0;
  color: var(--ks-color-ink);
  background: transparent;
  font-weight: 600;
}
@media (max-width: 767.98px) {
  #product-listing .product-paging-area,
  #product-listing .pagination-wrapper {
    align-items: flex-start;
    flex-direction: column;
  }
}
.ks-catalogue-runtime {
  min-width: 0;
}
.ks-catalogue-filters-column {
  padding-inline-end: var(--ks-space-4);
}
.ks-filters-panel {
  padding: 0 1.25rem;
  border: 1px solid var(--ks-color-line);
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.ks-filters-panel__header {
  padding: 1.25rem 0 0.5rem;
  margin-bottom: 0;
  border-bottom: 0;
}
.ks-filters-panel__header h2 {
  margin: 0;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.025em;
  text-transform: uppercase;
}
.ks-filters-panel form {
  margin: 0;
}
.ks-price-filter > legend {
  font-size: 1rem;
  line-height: 1.5;
}
.ks-filters-panel .ks-facet,
.ks-filters-panel .ks-advanced-filters {
  border-top: 1px solid var(--ks-color-line);
  margin: 0;
}
@media (min-width: 992px) {
  .ks-catalogue-filters-column {
    flex: 0 0 28%;
    max-width: 28%;
  }
  .ks-catalogue-runtime {
    flex: 0 0 72%;
    max-width: 72%;
  }
}
.ks-filters-panel .ks-price-filter {
  padding: 0;
  margin: 0;
}
.ks-facet > .ks-facet__summary,
.ks-advanced-filters > .ks-facet__summary {
  min-height: 3.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--ks-space-3);
  padding: var(--ks-space-3) 0;
  color: var(--ks-color-ink);
  font-size: 0.6875rem;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.015em;
  text-transform: uppercase;
  cursor: pointer;
  list-style: none;
  transition-property: color;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
.ks-facet > .ks-facet__summary::after,
.ks-advanced-filters > .ks-facet__summary::after {
  content: none;
}
.ks-facet__summary::-webkit-details-marker {
  display: none;
}
.ks-facet__summary:hover {
  color: var(--ks-color-muted);
}
.ks-facet__chevron {
  width: 0.625rem;
  height: 0.625rem;
  flex: 0 0 0.625rem;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: translateY(-0.125rem) rotate(45deg);
  transition-property: transform;
  transition-duration: 200ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
.ks-facet[open] > .ks-facet__summary .ks-facet__chevron,
.ks-advanced-filters[open] > .ks-facet__summary .ks-facet__chevron {
  transform: translateY(0.125rem) rotate(225deg);
}
.ks-facet__content {
  padding: 0 0 1.25rem;
}
.ks-facet__content,
.ks-advanced-filters > div {
  animation: ks-filter-content-in 200ms cubic-bezier(0.16, 1, 0.3, 1);
}
.ks-facet .filter-options {
  max-height: 16rem;
  padding-right: 0.25rem;
}
.ks-facet .filter-lookup-wrapper {
  min-height: 2.15rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.2rem 0;
  margin: 0;
  border-radius: 0.25rem;
  transition-property: background-color;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
.ks-facet .filter-lookup-wrapper:hover {
  background: var(--ks-color-surface);
}
.ks-facet .ks-facet-input {
  margin: 0;
  accent-color: var(--ks-color-ink);
}
.ks-facet .label-area {
  min-width: 0;
  color: var(--ks-color-ink-soft);
  font-size: 0.8125rem;
}
.ks-price-filter__fields {
  position: relative;
  display: block;
  padding-top: 0.25rem;
}
.ks-price-filter__output {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--ks-color-muted);
  font-size: 0.75rem;
}
.ks-price-filter__slider {
  position: relative;
  height: 1.5rem;
}
.ks-price-filter__track,
.ks-price-filter__selection {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  height: 0.35rem;
  border-radius: 999px;
  transform: translateY(-50%);
}
.ks-price-filter__track {
  background: #777;
}
.ks-price-filter__selection {
  background: #111;
}
.ks-price-filter__slider input[type=range] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 1.5rem;
  margin: 0;
  pointer-events: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
}
.ks-price-filter__slider input[type=range]::-webkit-slider-thumb {
  width: 0.55rem;
  height: 1.5rem;
  border: 1px solid #777;
  border-radius: 0.3rem;
  background: #fff;
  pointer-events: auto;
  -webkit-appearance: none;
  appearance: none;
}
.ks-price-filter__slider input[type=range]::-moz-range-thumb {
  width: 0.55rem;
  height: 1.5rem;
  border: 1px solid #777;
  border-radius: 0.3rem;
  background: #fff;
  pointer-events: auto;
}
.ks-facet .label-area small {
  color: var(--ks-color-muted);
}
.ks-facet-search {
  min-height: 2.5rem;
  margin-bottom: var(--ks-space-2) !important;
  border-color: var(--ks-color-line);
  border-radius: 0.25rem;
  font-size: 0.8125rem;
}
.ks-filters-panel .ks-facet > summary::after,
.ks-filters-panel .ks-advanced-filters > summary::after {
  content: none;
}
.ks-filters-panel__actions {
  margin-top: var(--ks-space-2);
  padding-top: var(--ks-space-3);
  background: var(--ks-color-canvas);
}
.ks-filters-panel__actions .clear-filters {
  color: var(--ks-color-muted);
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.ks-filter-toggle {
  border: 1px solid var(--ks-color-ink);
  border-radius: 0.375rem;
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
  font-weight: 700;
  letter-spacing: 0.02em;
}
.ks-catalogue-loading {
  position: absolute;
  z-index: 4;
  top: 4.75rem;
  left: 50%;
  display: inline-flex;
  align-items: center;
  gap: 0.875rem;
  min-height: 4.5rem;
  padding: 1rem 1.25rem;
  margin: 0;
  border: 1px solid var(--ks-color-line);
  border-radius: 0.75rem;
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
  box-shadow: 0 0.5rem 1.5rem rgba(17, 17, 17, 0.08);
  font-size: 0.875rem;
  font-weight: 700;
  transform: translate(-50%, -0.5rem);
  animation: ks-catalogue-loading-in 200ms cubic-bezier(0.16, 1, 0.3, 1);
}
.ks-catalogue-loading__spinner {
  position: relative;
  width: 2rem;
  height: 2rem;
  flex: 0 0 2rem;
  border: 1px solid var(--ks-color-ink-soft);
  border-radius: 50%;
  background: radial-gradient(circle, var(--ks-color-ink) 0 1.5px, transparent 2px);
}
.ks-catalogue-loading__spinner::before,
.ks-catalogue-loading__spinner::after {
  content: "";
  position: absolute;
  left: calc(50% - 1px);
  bottom: 50%;
  width: 2px;
  border-radius: 2px;
  background: var(--ks-color-ink);
  transform-origin: 50% 100%;
}
.ks-catalogue-loading__spinner::before {
  height: 0.5rem;
  transform: rotate(-60deg);
}
.ks-catalogue-loading__spinner::after {
  height: 0.6875rem;
  animation: ks-catalogue-spin 2.4s linear infinite;
}
.ks-catalogue-loading__copy {
  display: grid;
  gap: 0.2rem;
  line-height: 1.4;
}
.ks-catalogue-loading__copy small {
  color: var(--ks-color-muted);
  font-size: 0.75rem;
  font-weight: 400;
}
.ks-catalogue-runtime.is-loading #product-listing[aria-busy=true] {
  position: relative;
  top: auto;
  left: auto;
  visibility: visible;
  opacity: 0.3;
  transition-property: opacity;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
.ks-catalogue-runtime.is-loading #product-listing,
.ks-catalogue-runtime.is-loading .ks-catalogue-results-summary {
  pointer-events: none;
}
@media (max-width: 767.98px) {
  .ks-filters-panel {
    border: 0;
    padding: 1rem;
    border-radius: 0;
  }
  .ks-filters-panel__header {
    top: -1rem;
    padding-top: 1rem;
  }
  .ks-catalogue-loading {
    top: 4rem;
    max-width: calc(100% - 2rem);
    white-space: nowrap;
  }
}
@keyframes ks-filter-content-in {
  from {
    opacity: 0;
    transform: translateY(-0.25rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes ks-catalogue-loading-in {
  from {
    opacity: 0;
    transform: translate(-50%, -0.25rem) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -0.5rem) scale(1);
  }
}
@keyframes ks-catalogue-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .ks-catalogue-loading,
  .ks-catalogue-loading__spinner::after {
    animation: none;
  }
  .ks-catalogue-runtime.is-loading #product-listing[aria-busy=true] {
    transition: none;
  }
}
.ks-catalogue-results-summary {
  padding-block: var(--ks-space-2);
  margin-bottom: var(--ks-space-3);
  border-bottom: 1px solid var(--ks-color-line);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem 1rem;
}
.ks-catalogue-results-summary .ks-catalogue-results-count {
  margin-right: auto;
}
.ks-catalogue-results-summary .ks-active-filters {
  flex-basis: 100%;
  order: 3;
}
.ks-catalogue-results-summary .ks-results-view-toggler {
  order: 2;
  margin-left: auto;
}
.ks-catalogue-results-summary .ks-results-sort {
  order: 2;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
  color: var(--ks-color-muted);
  font-size: 0.8125rem;
}
.ks-results-sort select {
  min-width: 10rem;
  padding: 0.35rem 1.5rem 0.35rem 0;
  border: 0;
  border-bottom: 1px solid var(--ks-color-line);
  border-radius: 0;
  color: var(--ks-color-ink);
  background: transparent;
  font: inherit;
}
.ks-results-sort select:focus-visible {
  outline: 2px solid var(--ks-color-ink-soft);
  outline-offset: 2px;
}
@media (max-width: 767.98px) {
  .ks-catalogue-results-summary .ks-catalogue-results-count {
    flex-basis: 100%;
    margin-right: 0;
  }
  .ks-catalogue-results-summary .ks-results-sort {
    flex: 1 1 auto;
    min-width: 0;
    margin-left: 0;
  }
  .ks-results-sort select {
    min-width: 0;
    flex: 1 1 auto;
  }
  .ks-catalogue-results-summary .ks-results-view-toggler {
    margin-left: 0;
  }
}
@media (max-width: 380px) {
  .ks-catalogue-results-summary {
    -moz-column-gap: 0.75rem;
    column-gap: 0.75rem;
    row-gap: 0.5rem;
  }
  .ks-catalogue-results-summary .ks-results-sort {
    flex: 1 1 100%;
    width: 100%;
    max-width: 100%;
  }
  .ks-catalogue-results-summary .ks-results-view-toggler {
    display: flex;
    flex: 0 0 auto;
    margin-left: auto;
    width: auto;
  }
  .ks-results-view-toggler .toggle-container {
    display: flex !important;
    flex: 0 0 auto;
    flex-direction: row !important;
    flex-wrap: nowrap;
    align-items: center;
    width: auto !important;
  }
}
#product-listing .toolbar.ks-toolbar-moved {
  display: none;
}
#product-listing .toolbar {
  padding-bottom: var(--ks-space-3);
  margin-block: 0 var(--ks-space-4);
  border-bottom: 0;
}
#products-grid-area {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(var(--ks-space-5), 2.5vw, var(--ks-space-7)) var(--ks-space-4);
}
#products-grid-area .item-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  border: 0;
  background: transparent;
}
#products-grid-area .item-card .card-img-container {
  aspect-ratio: 1;
  margin-bottom: var(--ks-space-3);
  background: var(--ks-color-surface);
}
#products-grid-area .item-card .card-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 0;
}
#products-grid-area .item-card .product-title,
#products-grid-area .item-card .card-title {
  font-size: 1rem;
  line-height: 1.35;
  font-weight: 700;
}
#products-grid-area .item-card .primary-action-section {
  margin-top: auto;
  padding-top: var(--ks-space-3);
}
#products-grid-area .item-card .primary-action-section a,
#products-grid-area .item-card .primary-action-section button {
  width: 100%;
  min-height: 40px;
  padding: var(--ks-space-2) var(--ks-space-3);
  border: 1px solid var(--ks-color-ink);
  border-radius: 3px;
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
  font: inherit;
  font-weight: 600;
  text-decoration: none;
}
@media (max-width: 1199.98px) {
  #products-grid-area {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 767.98px) {
  .ks-catalogue-filters-column {
    padding-inline-end: 0;
  }
  #products-grid-area {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
#products-grid-area {
  display: block;
}
#products-grid-area > .row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(var(--ks-space-5), 2.5vw, var(--ks-space-7)) var(--ks-space-4);
  margin-inline: 0;
}
#product-listing #products-grid-area .row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1.5rem, 2.5vw, 3rem) 1.5rem;
  margin-inline: 0;
}
#product-listing #products-grid-area .row > [class*=col-],
#product-listing #products-grid-area .row > .item-card {
  width: auto;
  max-width: none;
  min-width: 0;
  flex: none;
}
#product-listing .products-list:not(.hidden) {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1.5rem, 2.5vw, 3rem) 1.5rem;
}
#product-listing .products-list:not(.hidden) > .item-card,
#product-listing .products-list:not(.hidden) > [class*=col-] {
  width: auto;
  max-width: none;
  min-width: 0;
  flex: none;
}
#product-listing > #products-grid-area {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1.5rem, 2.5vw, 3rem) 1.5rem;
}
#product-listing > #products-grid-area > .item-card,
#product-listing > #products-grid-area > [class*=col-] {
  width: auto;
  max-width: none;
  min-width: 0;
  flex: none;
}
#product-listing #products-grid-area {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1.5rem, 2.5vw, 3rem) 1.5rem;
}
#product-listing #products-grid-area > * {
  min-width: 0;
}
#product-listing #products-grid-area .item-card {
  overflow: hidden;
  border-radius: 0 0 0.75rem 0.75rem;
  background: var(--ks-color-canvas, #fff);
}
#product-listing #products-grid-area .item-card .card-img-container {
  background: #fafafa;
  outline: 1px solid rgba(0, 0, 0, 0.1);
  outline-offset: -1px;
}
#product-listing #products-grid-area .item-card .card-body {
  padding: 0.75rem;
}
#product-listing #products-grid-area .item-card .product-title,
#product-listing #products-grid-area .item-card .card-title {
  min-height: 3.2em;
  margin: 0;
  color: var(--ks-color-ink, #111);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
}
#product-listing #products-grid-area .item-card .card-body > div:first-child {
  gap: 0.5rem;
  align-items: flex-start;
}
#product-listing #products-grid-area .item-card .ks-wishlist-card-action,
#product-listing #products-grid-area .item-card .ks-comparison-card-action {
  border: 1px solid var(--ks-color-line, #dadcdd);
  border-radius: 999px;
  background: var(--ks-color-canvas, #fff);
  color: var(--ks-color-ink, #111);
  transition: background-color 150ms ease, color 150ms ease;
}
#product-listing #products-grid-area .item-card .ks-wishlist-card-action:hover,
#product-listing #products-grid-area .item-card .ks-wishlist-card-action:focus-visible,
#product-listing #products-grid-area .item-card .ks-comparison-card-action:hover,
#product-listing #products-grid-area .item-card .ks-comparison-card-action:focus-visible {
  background: var(--ks-color-ink, #111);
  color: var(--ks-color-canvas, #fff);
}
#product-listing #products-grid-area .item-card .product-title a,
#product-listing #products-grid-area .item-card .product-title,
#product-listing #products-grid-area .item-card .card-title {
  color: #111;
  font-family: "Montserrat", sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.35;
  text-decoration: none;
}
#product-listing #products-grid-area .item-card .product-title,
#product-listing #products-grid-area .item-card .card-title {
  min-height: 0;
  margin-bottom: 0.25rem;
}
#product-listing #products-grid-area .item-card .product-info-green,
#product-listing #products-grid-area .item-card .product-info-gray,
#product-listing #products-grid-area .item-card .product-availability {
  color: #6b7074;
  font-size: 0.875rem;
  font-weight: 400;
}
#product-listing #products-grid-area .item-card .product-availability,
#product-listing #products-grid-area .item-card .product-info-green,
#product-listing #products-grid-area .item-card .product-info-gray {
  color: #73777a;
  font-size: 0.6875rem;
  line-height: 1.35;
}
#product-listing #products-grid-area .item-card .product-price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.4rem;
  margin-top: 0.35rem;
  color: #111;
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  font-weight: 700;
}
#product-listing #products-grid-area .item-card .striked-price {
  color: #73777a;
  font-size: 0.875rem;
  font-weight: 400;
}
#product-listing #products-grid-area .item-card .primary-action-section {
  padding-top: 1rem;
}
#product-listing #products-grid-area .item-card .primary-action-section a,
#product-listing #products-grid-area .item-card .primary-action-section button {
  min-height: 44px;
  border: 1px solid #111;
  border-radius: 0.2rem;
  background: #fff;
  color: #111;
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
}
#product-listing #products-grid-area .item-card .primary-action-section .btn-add-to-cart-list {
  width: 44px;
  min-width: 44px;
  min-height: 44px;
  margin-inline-start: auto;
  padding: 0;
  font-size: 0;
}
#product-listing #products-grid-area .item-card .primary-action-section .btn-add-to-cart-list > * {
  font-size: 1.1rem;
}
#product-listing #products-grid-area .item-card .card-img-container {
  border: 0;
  outline: 0;
}
#product-listing #products-grid-area .item-card .primary-action-section a:hover,
#product-listing #products-grid-area .item-card .primary-action-section button:hover,
#product-listing #products-grid-area .item-card .primary-action-section a:focus-visible,
#product-listing #products-grid-area .item-card .primary-action-section button:focus-visible {
  background: #111;
  color: #fff;
}
#products-grid-area > .row > .item-card,
#products-grid-area > .row > [class*=col-] {
  width: auto;
  max-width: none;
  min-width: 0;
  flex: none;
}
@media (min-width: 992px) {
  .ks-catalogue-filters-column {
    flex: 0 0 25%;
    max-width: 25%;
    padding-inline: 0.75rem;
  }
  .ks-catalogue-runtime {
    flex: 0 0 75%;
    max-width: 75%;
    padding-inline: 1.5rem 0.75rem;
  }
  #products-grid-area .item-card .card-img-container {
    aspect-ratio: 1/1.08;
    margin-bottom: var(--ks-space-4);
  }
  #products-grid-area .item-card .card-body {
    min-height: 12rem;
  }
}
#product-listing #products-grid-area .item-card .card-img-container {
  background: #fff;
  outline: 0;
}
#product-listing .ks-catalogue-pagination {
  display: inline-flex;
  margin-inline-start: auto;
}
@media (max-width: 1199.98px) {
  #products-grid-area > .row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  #product-listing #products-grid-area .row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 767.98px) {
  #products-grid-area > .row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #product-listing #products-grid-area .row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #product-listing .products-list:not(.hidden) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #product-listing > #products-grid-area {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  #product-listing #products-grid-area {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 359.98px) {
  #product-listing #products-grid-area,
  #product-listing #products-grid-area .row,
  #product-listing .products-list:not(.hidden),
  #product-listing > #products-grid-area {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 767.98px) {
  #product-listing .item-card .ks-product-card-actions {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
}
#product-listing #products-list-area:not(.hidden) {
  display: block;
  margin: 0;
}
#product-listing #products-list-area:not(.hidden) .list-row {
  display: grid;
  grid-template-columns: minmax(12rem, 22rem) minmax(0, 1fr);
  gap: clamp(1.5rem, 4vw, 4rem);
  align-items: center;
  width: 100%;
  padding-block: clamp(1.5rem, 4vw, 3rem);
  margin: 0;
  border-bottom: 1px solid var(--ks-color-line);
}
#product-listing #products-list-area:not(.hidden) .list-image,
#product-listing #products-list-area:not(.hidden) .list-row > .col-2 {
  width: auto;
  max-width: none;
  min-width: 0;
  height: clamp(14rem, 24vw, 24rem);
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #fff;
}
#product-listing #products-list-area:not(.hidden) .list-image .website-image,
#product-listing #products-list-area:not(.hidden) .list-image .no-image-list {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
#product-listing #products-list-area:not(.hidden) .list-row > .col-10 {
  width: auto;
  max-width: none;
  min-width: 0;
  padding: 0;
}
#product-listing #products-list-area:not(.hidden) .list-row > .col-10 {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  align-content: center;
}
#product-listing #products-list-area:not(.hidden) .list-row > .col-10 > div:first-child {
  display: contents !important;
}
#product-listing #products-list-area:not(.hidden) .list-row > .col-10 > div:first-child > .col-8 {
  grid-row: 1;
  width: auto;
  max-width: none;
  padding: 0;
  margin: 0;
}
#product-listing #products-list-area:not(.hidden) .list-row > .col-10 > div:first-child > .col-8 a {
  color: var(--ks-color-ink);
  font-size: clamp(1.05rem, 1.8vw, 1.4rem);
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
}
#product-listing #products-list-area:not(.hidden) .list-row > .col-10 > .product-code {
  grid-row: 2;
  min-width: 0;
  margin: 0;
}
#product-listing #products-list-area:not(.hidden) .list-row > .col-10 > div.mt-2 {
  grid-row: 3;
  min-width: 0;
  margin: 0 !important;
}
#product-listing #products-list-area:not(.hidden) .list-row > .col-10 > .product-price {
  grid-row: 4;
}
#product-listing #products-list-area:not(.hidden) .list-row .product-code {
  margin: 0 0 0.75rem;
  color: var(--ks-color-muted);
  font-size: 0.8rem;
}
#product-listing #products-list-area:not(.hidden) .list-row .product-price {
  margin-top: 0.75rem;
  font-size: 1.25rem;
}
#product-listing #products-list-area:not(.hidden) .list-row > .col-10 > div:first-child > .cart-action-container {
  grid-row: 5;
  width: 75% !important;
  max-width: none;
  padding: 0;
  margin: 0;
  justify-self: start;
  text-align: left;
  flex: 0 0 auto;
}
#product-listing #products-list-area .ks-quick-view__trigger {
  display: none;
}
#product-listing #products-list-area:not(.hidden) .cart-action-container .btn-add-to-cart-list {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto;
  width: 75%;
  min-width: 75%;
  height: 1.6875rem;
  min-height: 1.6875rem;
  max-height: none !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  float: none !important;
  margin-inline: 0 auto;
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--ks-color-ink);
  border-radius: 0.375rem;
  color: var(--ks-color-muted);
  background: #fff;
  font: inherit;
  font-size: 0;
}
#product-listing #products-list-area:not(.hidden) .cart-action-container .btn-add-to-cart-list > * {
  font-size: 1.1rem;
}
#product-listing #products-list-area:not(.hidden) .cart-action-container .btn-add-to-cart-list:hover,
#product-listing #products-list-area:not(.hidden) .cart-action-container .btn-add-to-cart-list:focus-visible {
  color: var(--ks-color-surface);
  background: var(--ks-color-ink);
}
@media (max-width: 1100px) and (min-width: 901px) {
  #product-listing #products-list-area:not(.hidden) .list-row {
    grid-template-columns: minmax(10rem, 16rem) minmax(0, 1fr);
    gap: 2rem;
  }
  #product-listing #products-list-area:not(.hidden) .list-image,
  #product-listing #products-list-area:not(.hidden) .list-row > .col-2 {
    height: clamp(11rem, 21vw, 17rem);
  }
}
@media (max-width: 900px) {
  #product-listing #products-list-area:not(.hidden) .list-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
  }
  #product-listing #products-list-area:not(.hidden) .list-row > .col-10 {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    align-content: normal;
    align-items: center;
    text-align: center;
  }
  #product-listing #products-list-area:not(.hidden) .list-row > .col-10 > div:first-child > .col-8 {
    order: 1;
    width: 100%;
    text-align: center;
  }
  #product-listing #products-list-area:not(.hidden) .list-row > .col-10 > .product-price {
    order: 2;
    text-align: center;
  }
  #product-listing #products-list-area:not(.hidden) .list-row > .col-10 > div.mt-2 {
    order: 3;
    text-align: center;
  }
  #product-listing #products-list-area:not(.hidden) .list-row > .col-10 > div:first-child > .cart-action-container {
    order: 4;
    width: 75% !important;
    text-align: center;
  }
  #product-listing #products-list-area:not(.hidden) .list-row > .col-10 > .product-code {
    display: none;
  }
  #product-listing #products-list-area:not(.hidden) .list-row > .col-10 > .product-code,
  #product-listing #products-list-area:not(.hidden) .list-row > .col-10 > div.mt-2,
  #product-listing #products-list-area:not(.hidden) .list-row > .col-10 > .product-price {
    grid-row: auto;
    min-height: 0;
    margin-block: 0 !important;
  }
  #product-listing #products-list-area:not(.hidden) .list-image,
  #product-listing #products-list-area:not(.hidden) .list-row > .col-2 {
    height: clamp(9rem, 30vw, 14rem);
  }
}
#product-listing .item-card .card {
  height: 100%;
  display: flex;
  flex-direction: column;
  border: 0;
  border-radius: 0;
  background: var(--ks-color-canvas, #fff);
  box-shadow: none;
}
#product-listing .item-card .card-img-container {
  position: relative;
  margin-bottom: 0;
  overflow: visible;
  background: #fff;
  outline: 1px solid rgba(0, 0, 0, 0.1);
  outline-offset: -1px;
}
#product-listing .item-card .card-img {
  -o-object-fit: contain;
  object-fit: contain;
}
#product-listing .item-card .card-body {
  min-height: 0;
  padding: 2.25rem 0 0;
}
#product-listing .item-card .card-body > div:first-child {
  display: block;
}
#product-listing .item-card .product-title,
#product-listing .item-card .card-title {
  min-height: 2.7em;
}
#product-listing .item-card .product-category {
  display: none;
}
#product-listing .item-card .product-price {
  display: flex;
  visibility: visible;
  opacity: 1;
}
#product-listing .item-card .primary-action-section {
  display: block;
  visibility: visible;
  opacity: 1;
}
#product-listing .item-card .btn-add-to-cart-list {
  display: inline-flex;
  width: 100%;
  min-height: 44px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  margin-top: 1rem;
  padding: 0.65rem 1rem;
  border: 1px solid #111;
  border-radius: 0.25rem;
  background: #fff;
  color: #111;
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  visibility: visible;
  opacity: 1;
}
#product-listing .item-card .btn-add-to-cart-list:hover,
#product-listing .item-card .btn-add-to-cart-list:focus-visible {
  background: #111;
  color: #fff;
}
#product-listing .item-card .card-img-container {
  background: #fff;
  outline: 0;
}
#product-listing .item-card .card-body {
  padding: 0.75rem;
}
#product-listing .item-card .product-title,
#product-listing .item-card .card-title {
  min-height: 0;
  margin-bottom: 0.25rem;
}
#product-listing .item-card .product-availability,
#product-listing .item-card .out-of-stock,
#product-listing .item-card .product-info-green,
#product-listing .item-card .product-info-gray {
  color: #73777a;
  font-size: 0.75rem;
  line-height: 1.35;
}
#product-listing .item-card .btn-add-to-cart-list {
  width: 44px;
  min-width: 44px;
  height: 36px;
  min-height: 36px;
  margin-inline-start: auto;
  padding: 0;
  font-size: 0;
}
#product-listing .item-card .btn-add-to-cart-list > * {
  font-size: 1rem;
}
@media (min-width: 992px) {
  #product-listing #products-grid-area,
  #product-listing #products-grid-area .row,
  #product-listing .products-list:not(.hidden) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.ks-product-card-actions {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: -1.375rem;
  display: flex;
  gap: 0.5rem;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateX(-50%);
  transition-property: opacity, visibility;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
#product-listing .item-card:hover .ks-product-card-actions,
#product-listing .item-card:focus-within .ks-product-card-actions {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
#product-listing .item-card .ks-product-card-actions .ks-quick-view__trigger,
#product-listing .item-card .ks-product-card-actions .ks-wishlist-card-action,
#product-listing .item-card .ks-product-card-actions .ks-comparison-card-action {
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  max-width: 44px;
  flex: 0 0 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  border: 1px solid rgba(17, 17, 17, 0.12);
  border-radius: 999px;
  color: #414548;
  background: #fff;
  box-shadow: 0 1px 2px rgba(17, 17, 17, 0.08), 0 6px 18px rgba(17, 17, 17, 0.07);
  font-size: 0;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition-property:
    color,
    background-color,
    border-color,
    transform;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
}
#product-listing .item-card .ks-product-card-actions svg,
#product-listing .products-list:not(.hidden) .ks-wishlist-card-action svg,
#product-listing .products-list:not(.hidden) .ks-comparison-card-action svg {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  pointer-events: none;
}
#product-listing .item-card .ks-product-card-actions .ks-wishlist-action--remove svg {
  fill: currentColor;
}
#product-listing .products-list:not(.hidden) .ks-wishlist-card-action::before,
#product-listing .products-list:not(.hidden) .ks-comparison-card-action::before {
  content: none;
}
#product-listing .item-card .ks-product-card-actions .ks-quick-view__trigger:hover,
#product-listing .item-card .ks-product-card-actions .ks-wishlist-card-action:hover,
#product-listing .item-card .ks-product-card-actions .ks-comparison-card-action:hover {
  border-color: #111;
  color: #111;
  background: #fff;
}
#product-listing .item-card .ks-product-card-actions .ks-quick-view__trigger:focus-visible,
#product-listing .item-card .ks-product-card-actions .ks-wishlist-card-action:focus-visible,
#product-listing .item-card .ks-product-card-actions .ks-comparison-card-action:focus-visible {
  border-color: #111;
  outline: 3px solid var(--ks-color-focus, #005fcc);
  outline-offset: 2px;
}
#product-listing .item-card .ks-product-card-actions .ks-quick-view__trigger:active,
#product-listing .item-card .ks-product-card-actions .ks-wishlist-card-action:active,
#product-listing .item-card .ks-product-card-actions .ks-comparison-card-action:active {
  transform: scale(0.96);
}
@media (max-width: 479.98px) {
  #product-listing .item-card .card-body {
    padding-top: 2rem;
  }
}
@media (max-width: 359px) {
  .ks-product-card-actions {
    gap: 0.25rem;
  }
}
.ks-consent__banner {
  position: fixed;
  z-index: 1000;
  right: var(--ks-space-3);
  bottom: var(--ks-space-3);
  left: var(--ks-space-3);
  width: min(100% - 2 * var(--ks-space-3), 72rem);
  max-height: min(40vh, 26rem);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--ks-space-5);
  align-items: end;
  padding: var(--ks-space-4);
  overflow-y: auto;
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
  box-shadow: 0 0.75rem 2rem rgba(17, 17, 17, 0.22);
}
.ks-consent__copy {
  min-width: 0;
}
.ks-consent__copy h2,
.ks-consent__dialog h2 {
  margin: 0 0 var(--ks-space-2);
  font-size: 1.25rem;
}
.ks-consent__copy p:last-child,
.ks-consent__dialog-body > p {
  max-width: 72ch;
  margin: 0;
}
.ks-consent__eyebrow {
  margin: 0 0 var(--ks-space-1);
  color: var(--ks-color-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.ks-consent a {
  color: var(--ks-color-ink);
  text-decoration: underline;
  text-decoration-thickness: 0.1em;
  text-underline-offset: 0.2em;
}
.ks-consent__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ks-space-2);
  align-items: stretch;
}
.ks-consent__actions button {
  min-width: 44px;
  min-height: 44px;
  padding: var(--ks-space-2) var(--ks-space-3);
  border: 1px solid var(--ks-color-ink);
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}
.ks-consent__actions button:hover,
.ks-consent__actions button:focus-visible {
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
}
.ks-consent__dialog-shell {
  position: fixed;
  z-index: 1001;
  inset: 0;
  display: grid;
  place-items: end center;
  padding: var(--ks-space-3);
}
.ks-consent__backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: var(--ks-color-overlay);
  cursor: default;
}
.ks-consent__dialog {
  position: relative;
  z-index: 1;
  width: min(100%, 46rem);
  max-height: min(80vh, 36rem);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
  box-shadow: 0 0.75rem 2rem rgba(17, 17, 17, 0.3);
}
.ks-consent__dialog-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--ks-space-3);
  padding: var(--ks-space-4);
  border-bottom: 1px solid var(--ks-color-line);
}
.ks-consent__dialog-header h2 {
  margin: 0;
}
.ks-consent__close {
  min-width: 44px;
  min-height: 44px;
  padding: 0;
  border: 1px solid var(--ks-color-ink);
  color: var(--ks-color-ink);
  background: var(--ks-color-canvas);
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}
.ks-consent__dialog-body {
  min-height: 0;
  padding: var(--ks-space-4);
  overflow-y: auto;
}
.ks-consent__categories {
  padding: 0;
  margin: var(--ks-space-4) 0 0;
  border: 0;
}
.ks-consent__categories legend {
  padding: 0;
  margin-bottom: var(--ks-space-2);
  font-weight: 700;
}
.ks-consent__category {
  min-height: 44px;
  display: flex;
  align-items: flex-start;
  gap: var(--ks-space-3);
  padding: var(--ks-space-2) 0;
  border-top: 1px solid var(--ks-color-line);
  cursor: pointer;
}
.ks-consent__category input {
  width: 1.25rem;
  height: 1.25rem;
  flex: 0 0 auto;
  margin: 0.2rem 0 0;
}
.ks-consent__category > span {
  min-width: 0;
  display: grid;
  gap: var(--ks-space-1);
}
.ks-consent__category > span > span {
  color: var(--ks-color-muted);
}
.ks-consent__actions--dialog {
  padding: var(--ks-space-4);
  border-top: 1px solid var(--ks-color-line);
}
.ks-consent__reopen {
  position: fixed;
  z-index: 1000;
  right: var(--ks-space-3);
  bottom: var(--ks-space-3);
  min-width: 44px;
  min-height: 44px;
  padding: var(--ks-space-2) var(--ks-space-3);
  border: 1px solid var(--ks-color-ink);
  color: var(--ks-color-canvas);
  background: var(--ks-color-ink);
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}
.ks-consent__status {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.ks-consent__legal-status {
  max-width: 72ch;
  padding: var(--ks-space-2);
  border-left: 3px solid var(--ks-color-warning);
  color: var(--ks-color-muted);
  font-size: 0.875rem;
}
.ks-consent__noscript {
  max-width: 72ch;
  padding: var(--ks-space-3);
  margin: var(--ks-space-3);
  border: 1px solid var(--ks-color-line);
  background: var(--ks-color-surface);
}
.ks-consent :focus-visible {
  outline: 3px solid var(--ks-color-focus);
  outline-offset: 3px;
}
@media (max-width: 767px) {
  .ks-consent__banner {
    position: static;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    width: auto;
    max-height: none;
    margin: var(--ks-space-3);
  }
  .ks-consent__reopen {
    position: static;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin: var(--ks-space-3);
  }
  .ks-consent__actions:not(.ks-consent__actions--dialog) button {
    flex: 1 1 100%;
  }
  .ks-consent__dialog-shell {
    padding: var(--ks-space-2);
  }
  .ks-consent__dialog {
    max-height: min(90vh, 40rem);
  }
  .ks-consent__actions--dialog {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ks-consent__actions--dialog button {
    width: 100%;
  }
}
@media (max-width: 359px) {
  .ks-consent__actions--dialog {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (prefers-reduced-motion: reduce) {
  .ks-consent__actions button,
  .ks-consent__reopen {
    transition: none;
  }
}
@media print {
  .ks-consent {
    display: none;
  }
}
.ks-footer {
  padding-block: 2rem 1.25rem;
  font-size: 0.875rem;
}
.ks-footer__newsletter {
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: 1.5rem;
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
}
.ks-footer__newsletter h2 {
  font-size: 1.35rem;
}
.ks-footer__newsletter p,
.ks-footer__newsletter label,
.ks-footer__newsletter-consent {
  font-size: 0.8125rem;
}
.ks-footer__groups {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.25rem;
}
.ks-footer__groups h2 {
  margin-bottom: 0.6rem;
  font-size: 0.95rem;
}
.ks-footer__groups ul,
.ks-footer__legal ul {
  display: grid;
  gap: 0.15rem;
}
.ks-footer__groups a,
.ks-footer__legal a {
  min-height: 2rem;
  font-size: 0.8125rem;
  line-height: 1.25;
}
.ks-footer__legal {
  gap: 0.75rem;
  padding-top: 1rem;
  margin-top: 1.25rem;
}
@media (max-width: 767.98px) {
  .ks-footer__newsletter,
  .ks-footer__groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ks-footer__newsletter > :first-child {
    grid-column: 1/-1;
  }
}
@media (max-width: 479.98px) {
  .ks-footer__newsletter,
  .ks-footer__groups {
    grid-template-columns: minmax(0, 1fr);
  }
}
.ks-site-footer {
  padding-block: 2rem 1.25rem;
  font-size: 0.875rem;
}
.ks-site-footer__newsletter {
  max-width: none;
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
}
.ks-site-footer__newsletter form {
  width: min(100%, 44rem);
}
.ks-site-footer__newsletter-fields {
  width: min(100%, 38rem);
}
.ks-site-footer__newsletter h2 {
  margin-bottom: 0.5rem;
  font-size: 1.35rem;
}
.ks-site-footer__newsletter p,
.ks-site-footer__newsletter label,
.ks-site-footer__newsletter-consent {
  font-size: 0.8125rem;
}
.ks-site-footer__grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.25rem;
}
.ks-site-footer__grid nav h2 {
  margin-bottom: 0.6rem;
  font-size: 0.95rem;
}
.ks-site-footer__links {
  display: grid;
  gap: 0.15rem;
}
.ks-site-footer__links a {
  min-height: 2rem;
  font-size: 0.8125rem;
  line-height: 1.25;
}
.ks-site-footer__legal {
  padding-top: 1rem;
  margin-top: 1.25rem;
  font-size: 0.75rem;
}
@media (max-width: 767.98px) {
  .ks-site-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 479.98px) {
  .ks-site-footer__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
.ks-cart {
  width: min(100% - 2rem, 72rem);
  padding-block: 2rem 4rem;
}
.ks-cart > .ks-breadcrumbs {
  display: flex;
  width: 100%;
  margin-inline: 0;
  align-self: flex-start;
  justify-content: flex-start;
}
.ks-cart > .ks-breadcrumbs .ks-breadcrumbs__list {
  width: 100%;
  margin-inline: 0;
  padding-inline: 0;
  justify-content: flex-start;
}
.ks-cart h1 {
  margin-bottom: 1.25rem;
  font-size: clamp(1.75rem, 3vw, 2.4rem);
  text-align: center;
}
.ks-cart__empty,
.ks-cart__error {
  width: min(100%, 52rem);
  max-width: none;
  margin-inline: auto;
  padding: clamp(2rem, 5vw, 4rem);
  border: 1px solid var(--ks-color-line);
  border-left: 4px solid var(--ks-color-ink);
  background: var(--ks-color-surface);
  text-align: center;
}
.ks-cart__empty h2 {
  margin: 0 0 0.75rem;
  font-size: clamp(1.6rem, 3vw, 2.4rem);
}
.ks-cart__empty p {
  margin: 0 0 1.5rem;
  color: var(--ks-color-ink-soft);
}
.ks-cart__empty .ks-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  padding: 0.85rem 1.5rem;
  border: 1px solid var(--ks-color-ink);
  border-radius: 0;
  background: var(--ks-color-ink);
  box-shadow: none;
  color: var(--ks-color-surface);
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.2;
  margin-inline: auto;
}
.ks-cart__empty .ks-button:hover,
.ks-cart__empty .ks-button:focus-visible {
  background: var(--ks-color-ink-soft);
  color: var(--ks-color-surface);
  text-decoration: none;
}
.ks-product__purchase [data-kuck-add-to-cart] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 3.25rem;
  margin-top: 0.75rem;
  padding: 0.8rem 1.25rem;
  border: 1px solid var(--ks-color-ink);
  border-radius: 0.35rem;
  background: var(--ks-color-ink);
  color: var(--ks-color-surface);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  transition:
    background-color 160ms ease,
    color 160ms ease,
    transform 160ms ease;
}
.ks-product__purchase [data-kuck-add-to-cart]:hover {
  background: var(--ks-color-ink-soft);
}
.ks-product__purchase [data-kuck-add-to-cart]:focus-visible {
  outline: 3px solid var(--ks-color-accent, #b88a44);
  outline-offset: 3px;
}
.ks-product__purchase [data-kuck-add-to-cart]:active {
  transform: translateY(1px);
}
:where(button, .ks-button, .btn, input[type=button], input[type=submit], input[type=reset]) {
  border-radius: 5px !important;
}
body .btn[class*=btn-] {
  border-radius: 5px !important;
}
body a[class*=btn],
body button[class*=btn],
body .page-card-actions a,
body [role=button] {
  border-radius: 5px !important;
}
body a[href="/all-products"],
body a[href="/serwis/zglos-naprawe"] {
  border-radius: 5px !important;
}
.ks-webshop-product__commerce {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  -moz-column-gap: 0.7rem;
  column-gap: 0.7rem;
}
.ks-webshop-product__commerce > * {
  flex: 0 0 100%;
}
.ks-webshop-product__commerce .ks-webshop-product__price {
  order: 0;
}
.ks-webshop-product__commerce .ks-installments {
  order: 1;
}
.ks-webshop-product__commerce .ks-webshop-product__stock,
.ks-webshop-product__commerce .ks-webshop-product__lead-time {
  order: 2;
}
.ks-webshop-product__commerce .ks-webshop-product__cta {
  order: 3;
  width: 100%;
}
.ks-webshop-product__commerce .ks-wishlist-login-action,
.ks-webshop-product__commerce .ks-wishlist-action,
.ks-webshop-product__commerce .ks-comparison-login-action,
.ks-webshop-product__commerce .ks-comparison-action {
  order: 4;
}
.ks-webshop-product__commerce .ks-wishlist-status,
.ks-webshop-product__commerce .ks-comparison-status {
  order: 6;
}
.ks-webshop-product__commerce .ks-wishlist-status:empty,
.ks-webshop-product__commerce .ks-comparison-status:empty,
.ks-webshop-product__commerce .ks-cart-status:empty {
  display: none;
}
.ks-webshop-product__commerce {
  margin-block: 1rem;
}
.ks-webshop-product__commerce .ks-wishlist-login-action,
.ks-webshop-product__commerce .ks-wishlist-action,
.ks-webshop-product__commerce .ks-comparison-login-action,
.ks-webshop-product__commerce .ks-comparison-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 calc(50% - 0.35rem);
  width: auto;
  min-height: 2.5rem;
  margin-top: 0.65rem;
  padding: 0.5rem 0.6rem;
  font-size: 0.75rem;
  line-height: 1.2;
}
@media (max-width: 480px) {
  .ks-site-navbar .ks-cart-nav__label,
  .ks-site-navbar .ks-wishlist-nav__label {
    display: none !important;
  }
  .ks-site-navbar .ks-cart-nav,
  .ks-site-navbar .ks-wishlist-nav > a {
    justify-content: center;
    gap: 0;
  }
  .ks-site-navbar .ks-comparison-nav > a {
    font-size: 0;
  }
  .ks-site-navbar .ks-comparison-nav > a > span[aria-hidden=true] {
    display: inline-block;
    font-size: 1.5rem;
    line-height: 1;
  }
  .ks-webshop-product__commerce .ks-wishlist-login-action,
  .ks-webshop-product__commerce .ks-wishlist-action,
  .ks-webshop-product__commerce .ks-comparison-login-action,
  .ks-webshop-product__commerce .ks-comparison-action {
    flex-basis: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ks-product__purchase [data-kuck-add-to-cart] {
    transition: none;
  }
}
#product-listing img[data-kuck-hover-image] {
  transition-property: opacity;
  transition-duration: 180ms;
  transition-timing-function: ease;
}
@media (prefers-reduced-motion: reduce) {
  #product-listing img[data-kuck-hover-image] {
    transition: none;
  }
}
@media (min-width: 1024px) {
  .ks-site-navbar .navbar-nav .nav-link {
    padding-inline: 0.3rem;
    font-size: 0.82rem !important;
    font-weight: 600 !important;
    letter-spacing: 0;
  }
  .ks-site-navbar .ks-mega-menu__panel {
    padding-block: 2rem;
  }
  .ks-site-navbar .ks-mega-menu__links a,
  .ks-site-navbar .ks-mega-menu__all {
    min-height: 1.8rem;
    font-size: 0.82rem !important;
    line-height: 1.25;
  }
  .ks-mega-menu__brand-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(1.5rem, 4vw, 5rem);
  }
  .ks-mega-menu__brand-column {
    display: grid;
    align-content: start;
    gap: 0.7rem;
  }
  .ks-mega-menu__brand-group {
    display: grid;
    gap: 0.1rem;
  }
  .ks-mega-menu__brand-group h3 {
    margin: 0 0 0.15rem;
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.2;
  }
  .ks-site-navbar .ks-mega-menu__brand-group a {
    min-height: 1.55rem;
    font-size: 0.82rem !important;
    line-height: 1.25;
    text-decoration: none;
  }
  .ks-site-navbar .ks-mega-menu__brand-group a:hover,
  .ks-site-navbar .ks-mega-menu__brand-group a:focus-visible {
    text-decoration: underline;
  }
  .ks-site-navbar .ks-mega-menu__group > h2,
  .ks-site-navbar .ks-mega-menu__subgroup > h3 {
    padding: 0;
    border: 0;
    font-size: 0.8rem;
    line-height: 1.25;
  }
  .ks-site-navbar .ks-mega-menu__group > h2 {
    margin-bottom: 0.7rem;
  }
  .ks-mega-menu__grid--jewellery {
    grid-template-columns: minmax(10rem, 0.9fr) minmax(14rem, 1fr) minmax(18rem, 1.45fr);
    gap: clamp(1.25rem, 2.5vw, 3rem);
    align-items: start;
  }
  .ks-mega-menu__grid--sale {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(1.25rem, 2.5vw, 2.5rem);
  }
  .ks-mega-menu__sale-card {
    display: flex;
    min-height: 18rem;
    padding: 2.5rem 1.25rem 1.25rem;
    border: 1px solid #b8bbc0;
    align-items: center;
    flex-direction: column;
    justify-content: space-between;
    color: var(--ks-color-ink);
    text-align: center;
    text-decoration: none;
  }
  .ks-mega-menu__sale-card strong {
    font-size: clamp(1.7rem, 2.6vw, 2.7rem);
    font-weight: 500;
    line-height: 1.05;
    text-transform: uppercase;
  }
  .ks-mega-menu__sale-card span {
    padding: 0.75rem 1.5rem;
    background: #f0eef2;
    font-size: 0.95rem;
    font-weight: 600;
  }
  .ks-mega-menu__sale-card small {
    width: 100%;
    padding-top: 0.85rem;
    border-top: 1px solid #b8bbc0;
    font-size: 0.9rem;
    line-height: 1.35;
  }
  .ks-mega-menu__sale-card--accent span {
    color: #fff;
    background: #ff914d;
  }
  .ks-mega-menu__sale-card:hover,
  .ks-mega-menu__sale-card:focus-visible {
    text-decoration: none;
    box-shadow: 0 0.5rem 1.25rem rgba(23, 35, 50, 0.1);
    transform: translateY(-0.15rem);
  }
  .ks-site-navbar .ks-mega-menu__item--sale > .ks-mega-menu__link,
  .ks-site-navbar .ks-mega-menu__item--sale > .ks-mega-menu__link:hover,
  .ks-site-navbar .ks-mega-menu__item--sale > .ks-mega-menu__link:focus-visible {
    color: #ef3434 !important;
  }
  .ks-mega-menu__grid--jewellery .ks-mega-menu__links {
    grid-template-columns: 1fr;
  }
  .ks-mega-menu__grid--jewellery .ks-mega-menu__group > h2 {
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1.25;
  }
  .ks-site-navbar .ks-mega-menu__jewellery-featured {
    font-weight: 600;
    text-transform: uppercase;
  }
  .ks-mega-menu__promo--jewellery {
    min-height: 15rem;
    align-self: stretch;
  }
  .ks-mega-menu__promo--jewellery img {
    -o-object-fit: contain;
    object-fit: contain;
  }
  .ks-site-navbar .ks-mega-menu__link::after {
    display: inline-block;
    width: 0.42rem;
    height: 0.42rem;
    margin-inline-start: 0.7rem;
    color: currentColor;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    vertical-align: middle;
    content: "";
    rotate: 45deg;
    transition: none;
  }
  .ks-site-navbar .ks-mega-menu__item.is-open .ks-mega-menu__link::after {
    rotate: 225deg;
  }
  .ks-mega-menu__grid--mens,
  .ks-mega-menu__grid--womens {
    grid-template-columns: minmax(10rem, 1fr) minmax(15rem, 1.25fr) minmax(12rem, 0.95fr) minmax(12rem, 0.9fr);
    gap: clamp(1.5rem, 3vw, 4rem);
    align-items: start;
  }
  .ks-mega-menu__grid--mens .ks-mega-menu__links,
  .ks-mega-menu__grid--womens .ks-mega-menu__links {
    grid-template-columns: 1fr;
  }
  .ks-mega-menu__grid--mens .ks-mega-menu__group > h2,
  .ks-mega-menu__grid--womens .ks-mega-menu__group > h2,
  .ks-mega-menu__grid--mens .ks-mega-menu__subgroup > h3,
  .ks-mega-menu__grid--womens .ks-mega-menu__subgroup > h3 {
    padding: 0;
    border: 0;
    font-size: 0.875rem;
  }
  .ks-mega-menu__grid--mens .ks-mega-menu__group > h2,
  .ks-mega-menu__grid--womens .ks-mega-menu__group > h2 {
    margin-bottom: 0.75rem;
  }
  .ks-mega-menu__grid--mens .ks-mega-menu__column,
  .ks-mega-menu__grid--womens .ks-mega-menu__column {
    display: grid;
    gap: 1.5rem;
  }
  .ks-mega-menu__grid--mens .ks-mega-menu__column .ks-mega-menu__group + .ks-mega-menu__group,
  .ks-mega-menu__grid--womens .ks-mega-menu__column .ks-mega-menu__group + .ks-mega-menu__group {
    margin-top: 0;
  }
  .ks-mega-menu__featured-heading {
    display: inline-flex;
    margin-bottom: 0.75rem;
    color: var(--ks-color-muted);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
  }
  .ks-mega-menu__grid--mens .ks-mega-menu__links a,
  .ks-mega-menu__grid--womens .ks-mega-menu__links a {
    min-height: 1.8rem;
    font-size: 0.82rem !important;
    line-height: 1.25;
  }
  .ks-mega-menu__featured-heading:hover,
  .ks-mega-menu__featured-heading:focus-visible {
    color: var(--ks-color-ink);
    text-decoration: underline;
    text-underline-offset: 0.2em;
  }
  .ks-mega-menu__promo {
    position: relative;
    min-height: 15rem;
    display: flex;
    align-items: end;
    overflow: hidden;
    color: #fff;
    background: var(--ks-color-surface);
    text-decoration: none;
  }
  .ks-mega-menu__promo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    outline: 1px solid rgba(0, 0, 0, 0.1);
    outline-offset: -1px;
    transition-property: scale, filter;
    transition-duration: 180ms;
    transition-timing-function: cubic-bezier(0.2, 0, 0, 1);
  }
  .ks-mega-menu__promo::after {
    position: absolute;
    inset: 45% 0 0;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.72));
    content: "";
  }
  .ks-mega-menu__promo span {
    position: relative;
    z-index: 1;
    padding: 1rem;
    font-weight: 700;
  }
  .ks-mega-menu__promo:hover img,
  .ks-mega-menu__promo:focus-visible img {
    scale: 1.03;
    filter: saturate(1.08);
  }
}
@media (max-width: 1023.98px) {
  .ks-mega-menu__grid--sale {
    grid-template-columns: 1fr;
  }
  .ks-mega-menu__sale-card {
    min-height: 12rem;
  }
  .ks-mega-menu__brand-grid {
    grid-template-columns: 1fr;
    gap: var(--ks-space-4);
  }
  .ks-mega-menu__grid--mens,
  .ks-mega-menu__grid--womens {
    grid-template-columns: 1fr;
  }
  .ks-mega-menu__grid--mens .ks-mega-menu__column,
  .ks-mega-menu__grid--womens .ks-mega-menu__column {
    display: grid;
    gap: var(--ks-space-4);
  }
  .ks-mega-menu__promo {
    min-height: 12rem;
    display: flex;
    align-items: end;
    position: relative;
    overflow: hidden;
    color: #fff;
    background: var(--ks-color-surface);
  }
  .ks-mega-menu__promo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .ks-mega-menu__promo span {
    position: relative;
    z-index: 1;
    padding: 1rem;
    font-weight: 700;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ks-site-navbar .ks-mega-menu__panel,
  .ks-mega-menu__promo img {
    animation: none;
    transition: none;
  }
}
.ks-home-service {
  border-top: 1px solid var(--ks-color-line);
  background: var(--ks-color-canvas);
}
.ks-home-service__process,
.ks-home-service__specialists,
.ks-home-service__catalog {
  padding-block: clamp(4rem, 8vw, 8rem);
}
.ks-home-service__process,
.ks-home-service__specialists {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: clamp(2rem, 7vw, 7rem);
}
.ks-home-service__intro h2,
.ks-home-service__specialists h2,
.ks-home-service__catalog h2 {
  margin: 0 0 1.5rem;
  font-size: clamp(2.25rem, 5vw, 4.75rem);
  font-weight: 700;
  line-height: 0.98;
  letter-spacing: -0.055em;
}
.ks-home-service__intro > p:not(.ks-eyebrow),
.ks-home-service__copy p,
.ks-home-service__catalog-heading > p:last-child,
.ks-home-service__grid p {
  color: var(--ks-color-muted);
  font-size: clamp(1rem, 1.3vw, 1.2rem);
}
.ks-home-service__intro > p:not(.ks-eyebrow) {
  max-width: 42ch;
  margin-bottom: 1.75rem;
}
.ks-home-service__steps {
  border-top: 1px solid var(--ks-color-ink);
}
.ks-home-service__steps details {
  border-bottom: 1px solid var(--ks-color-line);
}
.ks-home-service__steps summary {
  min-height: 4.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 0;
  cursor: pointer;
  font-size: clamp(1rem, 1.5vw, 1.35rem);
  font-weight: 600;
  list-style: none;
}
.ks-home-service__steps summary::-webkit-details-marker {
  display: none;
}
.ks-home-service__steps summary::after {
  content: "+";
  font-size: 1.75rem;
  line-height: 1;
}
.ks-home-service__steps details[open] summary::after {
  content: "\2212";
}
.ks-home-service__steps summary span {
  font-weight: 400;
}
.ks-home-service__steps details p {
  max-width: 50ch;
  margin: 0 3rem 1.25rem 0;
  color: var(--ks-color-muted);
}
.ks-home-service__specialists {
  border-top: 1px solid var(--ks-color-line);
}
.ks-home-service__specialists h2 {
  font-size: clamp(2.5rem, 6vw, 5.5rem);
}
.ks-home-service__copy {
  max-width: 66ch;
}
.ks-home-service__copy p {
  margin-bottom: 1.5rem;
}
.ks-home-service__copy strong {
  color: var(--ks-color-ink-soft);
}
.ks-home-service__catalog {
  border-top: 1px solid var(--ks-color-line);
}
.ks-home-service__catalog-heading {
  max-width: 54rem;
  margin-inline: auto;
  text-align: center;
}
.ks-home-service__catalog-heading .ks-eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}
.ks-home-service__catalog-heading .ks-eyebrow::before,
.ks-home-service__catalog-heading .ks-eyebrow::after {
  width: 3rem;
  height: 2px;
  display: block;
  background: currentColor;
  content: "";
}
.ks-home-service__catalog-heading > p:last-child {
  margin-bottom: 3rem;
}
.ks-home-service__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3.5rem 2.5rem;
}
.ks-home-service__grid article {
  text-align: center;
}
.ks-home-service__grid article::before {
  width: 3rem;
  height: 2px;
  display: block;
  margin: 1rem auto 1.5rem;
  background: var(--ks-color-line);
  content: "";
}
.ks-home-service__grid h3 {
  margin: 0 auto 0.75rem;
  font-size: clamp(1.1rem, 1.6vw, 1.5rem);
  line-height: 1.15;
}
.ks-home-service__grid p {
  margin: 0 auto;
  max-width: 32ch;
  font-size: 1rem;
}
@media (max-width: 800px) {
  .ks-home-service__process,
  .ks-home-service__specialists {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }
  .ks-home-service__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2.5rem 1.25rem;
  }
}
@media (max-width: 520px) {
  .ks-home-service__process,
  .ks-home-service__specialists,
  .ks-home-service__catalog {
    padding-block: 4rem;
  }
  .ks-home-service__grid {
    grid-template-columns: 1fr;
  }
}
.ks-cart-line__lead-time {
  margin: 0.5rem 0;
  font-weight: 600;
  line-height: 1.5;
}
.ks-home > .ks-home-hero,
body[data-path=kuck-home] .ks-home-hero {
  min-height: 0;
  height: auto;
  aspect-ratio: 16/5;
  display: block;
}
.ks-home-hero--carousel .ks-home-hero__slides,
.ks-home-hero--carousel .ks-home-hero__slide.is-active,
.ks-home-hero--carousel .ks-home-hero__link,
.ks-home-hero--carousel .ks-home-hero__media {
  position: absolute;
  inset: 0;
  height: 100%;
}
.ks-home-hero--carousel .ks-home-hero__media img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
@media (max-width: 767px) {
  .ks-home-hero__control {
    width: 2rem;
    height: 2rem;
  }
  .ks-home-hero__dots {
    bottom: 0.35rem;
    gap: 0.35rem;
  }
}
.ks-home-hero--artwork-only {
  min-height: 0;
  height: auto;
  aspect-ratio: 16/5;
}
.ks-home-hero--artwork-only .ks-home-hero__content {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  border: 0;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}
.ks-home-hero--artwork-only .ks-home-hero__link {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
}
.ks-home-hero__control {
  width: 44px;
  height: 44px;
}
.ks-home-hero__dot {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  display: grid;
  place-items: center;
  border: 0;
  background: transparent;
}
.ks-home-hero__dot::before {
  width: 0.7rem;
  height: 0.7rem;
  border: 1px solid var(--ks-color-canvas);
  border-radius: 50%;
  background: transparent;
  content: "";
  transition: background-color 180ms ease, transform 180ms ease;
}
.ks-home-hero__dot.is-active {
  background: transparent;
  transform: none;
}
.ks-home-hero__dot.is-active::before {
  background: var(--ks-color-canvas);
  transform: scale(1.18);
}
@media (max-width: 991px) {
  .ks-home-hero--carousel .ks-home-hero__control {
    opacity: 1;
    transform: translateY(-50%);
    visibility: visible;
  }
  .ks-home-hero--carousel .ks-home-hero__media img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
  }
  .ks-home-hero--artwork-only.ks-home-hero--carousel {
    min-height: 0;
    aspect-ratio: auto;
    display: flex;
    flex-direction: column;
    overflow: visible;
  }
  .ks-home-hero--artwork-only.ks-home-hero--carousel .ks-home-hero__slides {
    position: relative;
    inset: auto;
    width: 100%;
    aspect-ratio: 16/5;
    overflow: clip;
  }
  .ks-home-hero--artwork-only.ks-home-hero--carousel .ks-home-hero__slide,
  .ks-home-hero--artwork-only.ks-home-hero--carousel .ks-home-hero__slide.is-active {
    position: absolute;
    inset: 0;
  }
  .ks-home-hero--artwork-only.ks-home-hero--carousel .ks-home-hero__controls {
    position: relative;
    inset: auto;
    width: 100%;
    min-height: 44px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0;
    background: var(--ks-color-surface);
  }
  .ks-home-hero--artwork-only.ks-home-hero--carousel .ks-home-hero__controls .ks-home-hero__control {
    position: relative;
    inset: auto;
    flex: 0 0 44px;
    opacity: 1;
    transform: none;
    visibility: visible;
    border-color: var(--ks-color-line);
    background: var(--ks-color-canvas);
  }
  .ks-home-hero--artwork-only.ks-home-hero--carousel .ks-home-hero__dots {
    position: relative;
    inset: auto;
    left: auto;
    transform: none;
  }
  .ks-home-hero--artwork-only.ks-home-hero--carousel .ks-home-hero__dot::before {
    border-color: var(--ks-color-ink);
  }
  .ks-home-hero--artwork-only.ks-home-hero--carousel .ks-home-hero__dot.is-active::before {
    background: var(--ks-color-ink);
  }
}
body[data-path=contact] .contact-content:has(.ks-contact-consolidated) {
  max-width: 76rem;
}
body[data-path=contact] .contact-content > div:first-child:has(.ks-contact-consolidated) {
  max-width: none;
  text-align: left;
  font-size: 1rem;
}
.ks-contact-consolidated .ks-online-store-contact {
  padding-inline: 0;
}
.ks-contact-consolidated .ks-salons {
  padding-block: 0 3rem;
}
.ks-contact-consolidated .ks-salons > h2 {
  text-align: center;
  margin-bottom: 2rem;
}
.ks-contact-consolidated .ks-salons__grid {
  grid-template-columns: 1fr;
  gap: 1rem;
}
.ks-contact-consolidated .ks-salons__grid section {
  display: grid;
  grid-template-columns: minmax(10rem, 0.75fr) minmax(0, 1.25fr) minmax(12rem, 0.8fr);
  grid-template-areas: "visual title hours" "visual address hours" "visual details hours";
  gap: 0.75rem 2rem;
  padding: 1.5rem;
  border: 1px solid var(--ks-color-line);
  box-shadow: 0 0.25rem 0.75rem rgba(17, 17, 17, 0.05);
  background: transparent;
}
.ks-contact-consolidated .ks-salons__grid section::before {
  display: none;
}
.ks-contact-consolidated .ks-salon__photo {
  grid-area: visual;
  width: 100%;
  margin: 0;
  align-self: center;
}
.ks-contact-consolidated .ks-salon__photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
  object-fit: cover;
}
.ks-contact-consolidated .ks-salons__grid section > h3 {
  grid-area: title;
  margin: 0;
  font-size: 1.1rem;
}
.ks-contact-consolidated .ks-salons__grid address {
  grid-area: address;
  margin: 0;
  line-height: 1.6;
}
.ks-contact-consolidated .ks-salon__hours {
  grid-area: hours;
  width: 100%;
  font-size: 0.95rem;
}
.ks-contact-consolidated .ks-salon__hours caption {
  caption-side: top;
}
.ks-contact-consolidated .ks-salon__hours th,
.ks-contact-consolidated .ks-salon__hours td {
  padding: 0.35rem 0;
  border: 0;
  text-align: left;
}
.ks-contact-consolidated .ks-salon__details {
  grid-area: details;
  width: 100%;
  border-block: 1px solid var(--ks-color-line);
}
.ks-contact-consolidated .ks-salon__details summary {
  padding-block: 1rem;
  cursor: pointer;
  font-weight: 600;
}
.ks-contact-consolidated .ks-salon__details summary:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
.ks-contact-consolidated .ks-salon__details a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: inherit;
}
.ks-contact-consolidated .ks-salon__details p {
  margin: 0 0 0.5rem;
}
@media (max-width: 991px) {
  .ks-contact-consolidated .ks-salons__grid {
    grid-template-columns: 1fr;
  }
  .ks-contact-consolidated .ks-salons__grid section {
    grid-template-columns: 1fr;
    grid-template-areas: "visual" "title" "address" "hours" "details";
  }
  .ks-contact-consolidated .ks-salon__photo img {
    max-height: 24rem;
  }
}
/*# sourceMappingURL=kuck_shop.bundle.L4CP7PEJ.css.map */
