/* Knopa Big home page adaptive layer. Loaded after knopa-big.css. */
.knopa-home,
.knopa-home * {
  box-sizing: border-box;
}

/* Final home promo stretch: the promo banner must visually occupy both product cells. */
body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid > .home-cat__item--2x > .banner.product-banner-medium {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 8px !important;
}

body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid > .home-cat__item--2x > .banner.product-banner-medium > img {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 360px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.knopa-home .row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.knopa-home #content {
  width: 100% !important;
  float: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.knopa-home-hero__banner {
  background: #081421;
}

.knopa-home-hero__copy {
  position: absolute;
  z-index: 3;
  left: clamp(22px, 4vw, 54px);
  top: 50%;
  display: none;
  width: min(44%, 430px);
  color: #fff;
  transform: translateY(-50%);
  pointer-events: none;
}

.knopa-home-hero__copy small,
.knopa-home-hero__copy strong,
.knopa-home-hero__copy em {
  display: block;
  letter-spacing: 0;
}

.knopa-home-hero__copy small {
  margin-bottom: 8px;
  color: #f5ca53;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 800;
}

.knopa-home-hero__copy strong {
  max-width: 390px;
  color: #fff;
  font-size: clamp(24px, 3.2vw, 43px);
  line-height: 1.08;
  font-weight: 900;
}

.knopa-home-hero__copy em {
  width: fit-content;
  min-height: 44px;
  margin-top: 22px;
  padding: 13px 28px;
  border-radius: 9px;
  background: #e6004f;
  color: #fff;
  font-size: 15px;
  line-height: 1.1;
  font-style: normal;
  font-weight: 900;
  box-shadow: 0 14px 30px rgba(230, 0, 79, .25);
}

.knopa-home-proof {
  padding: 0 0 28px;
}

.knopa-home-proof__inner {
  display: grid;
  gap: 18px;
  padding: 28px;
  border: 1px solid #dfe8f1;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 16px 36px rgba(17, 35, 58, .055);
}

.knopa-home-proof__inner p {
  max-width: 980px;
  margin: 0;
  color: #22324a;
  font-size: 18px;
  line-height: 1.55;
  font-weight: 800;
  letter-spacing: 0;
}

.knopa-home-proof__stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.knopa-home-proof__stats span {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 72px;
  padding: 14px;
  border: 1px solid #e1eaf2;
  border-radius: 16px;
  background: #fff;
  color: #10213a;
  box-shadow: 0 10px 22px rgba(17, 35, 58, .045);
}

.knopa-home-proof__stats i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border-radius: 13px;
  background: #fff0f6;
  color: #e6004f;
  font-size: 17px;
}

.knopa-home-proof__stats b {
  color: #10213a;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 900;
}

.knopa-home-more {
  display: flex;
  justify-content: center;
  margin: 24px 0 0;
}

.knopa-home-more a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  padding: 12px 26px;
  border: 1px solid #dbe5ee;
  border-radius: 999px;
  background: #fff;
  color: #10213a;
  font-size: 15px;
  line-height: 1;
  font-weight: 900;
  text-decoration: none;
  box-shadow: 0 10px 22px rgba(17, 35, 58, .05);
}

.knopa-home-more a:hover,
.knopa-home-more a:focus {
  border-color: #e6004f;
  color: #e6004f;
}

.knopa-home-products {
  position: relative;
}

.knopa-home-products .home-cat {
  display: none;
}

.knopa-home-products .home-cat.active {
  display: block;
}

.knopa-home-products .home-cat__list {
  align-items: stretch;
}

.knopa-home-products .home-cat__item {
  min-width: 0;
}

.knopa-home-products .product-preview.knopa-product-card {
  border: 1px solid #dfe8f1;
  background: #fff;
  box-shadow: 0 12px 28px rgba(17, 35, 58, .06);
}

.knopa-home-products .product-label--sale {
  background: #e6004f;
  color: #fff;
}

.knopa-home-products .product-preview__photo-wrapper {
  background: #fff;
}

.knopa-home-products .product-preview__photo {
  object-fit: contain;
}

.knopa-home-products .product-preview__panel,
.knopa-home-products .product-preview__controls {
  min-width: 0;
}

.knopa-home-products .product-preview__submit {
  white-space: nowrap;
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  html,
  body,
  .knopa-live-page,
  .knopa-home {
    overflow-x: hidden !important;
  }

  .knopa-home .knopa-live-container,
  .knopa-home .home-cats__container,
  .knopa-home .home-all-cats__container,
  .mob-header .knopa-live-container {
    width: 100% !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 28px !important;
    padding-right: 28px !important;
  }

  .codex-mobile-search-header__top {
    gap: 14px !important;
  }

  .codex-mobile-search-header__logo img {
    max-width: 158px !important;
    max-height: 48px !important;
  }

  .codex-mobile-search-header__actions {
    gap: 10px !important;
  }

  .codex-mobile-search-header__icon-link {
    width: 46px !important;
    height: 46px !important;
    flex-basis: 46px !important;
  }

  .codex-mobile-search-header__search-row {
    grid-template-columns: 172px minmax(0, 1fr) !important;
    gap: 14px !important;
    margin-top: 12px !important;
  }

  .codex-mobile-search-header__catalog {
    width: 172px !important;
    max-width: 172px !important;
    height: 52px !important;
    min-height: 52px !important;
    border-radius: 13px !important;
    background: #63788b !important;
    font-size: 18px !important;
  }

  .codex-mobile-search-header__search-row #search,
  .codex-mobile-search-header__search-row #search.input-group,
  .codex-mobile-search-header__search-row #search .input-group {
    height: 52px !important;
  }

  .codex-mobile-search-header__search-row #search input {
    height: 52px !important;
    min-height: 52px !important;
    border: 2px solid #e6004f !important;
    border-radius: 13px 0 0 13px !important;
    font-size: 17px !important;
  }

  .codex-mobile-search-header__search-row #search .input-group-btn {
    position: static !important;
    display: flex !important;
    flex: 0 0 92px !important;
    width: 92px !important;
    min-width: 92px !important;
    height: 52px !important;
  }

  .codex-mobile-search-header__search-row #search .btn {
    width: 92px !important;
    min-width: 92px !important;
    height: 52px !important;
    border: 2px solid #e6004f !important;
    border-left: 0 !important;
    border-radius: 0 13px 13px 0 !important;
    font-size: 15px !important;
  }

  .codex-mobile-search-header__search-row #search .btn span {
    display: block !important;
  }

  .knopa-home-intro {
    padding: 18px 0 !important;
  }

  .knopa-home-intro__inner {
    gap: 20px !important;
    padding: 28px !important;
    border-radius: 20px !important;
  }

  .knopa-home-intro h1 {
    font-size: clamp(30px, 4.2vw, 38px) !important;
    line-height: 1.12 !important;
  }

  .knopa-home-intro__benefits {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .knopa-home-intro__item {
    grid-template-columns: 44px minmax(0, 1fr) !important;
    min-height: 82px !important;
    padding: 14px !important;
    border-radius: 16px !important;
  }

  .knopa-home-intro__item i {
    width: 44px !important;
    height: 44px !important;
    border-radius: 14px !important;
  }

  .knopa-home-hero__grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
  }

  .knopa-home-hero__slider {
    width: 100% !important;
    aspect-ratio: 16 / 7 !important;
    min-height: 0 !important;
    border-radius: 22px !important;
    background: #081421 !important;
    box-shadow: 0 20px 42px rgba(8, 20, 33, .16) !important;
  }

  .knopa-home-hero__copy {
    display: block;
  }

  .knopa-home-hero__banner img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center right !important;
  }

  .knopa-home-hero__tabs {
    left: 28px !important;
    right: 28px !important;
    bottom: 15px !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  .knopa-home-hero__tabs b {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .knopa-home-hero__info {
    min-height: auto !important;
    padding: 28px !important;
    border-radius: 20px !important;
  }

  .knopa-home-hero__info p {
    font-size: 18px !important;
    line-height: 1.5 !important;
  }

  .knopa-home-hero__steps {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .knopa-home-hero__discount {
    min-height: 210px !important;
    padding: 30px 34px !important;
    border-radius: 22px !important;
  }

  .knopa-home-hero__discount span {
    max-width: 520px !important;
    font-size: clamp(30px, 5vw, 44px) !important;
    line-height: 1.08 !important;
  }

  .knopa-home-proof__stats {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .knopa-home-proof__stats span {
    flex-direction: column;
    justify-content: center;
    min-height: 108px;
    padding: 14px 10px;
    text-align: center;
  }

  .home-all-cats__content {
    padding: 28px !important;
    border-radius: 22px !important;
  }

  .home-all-cats__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .home-all-cats__card {
    min-height: 86px !important;
    padding: 14px !important;
    border-radius: 16px !important;
  }

  .home-cats-tabs {
    justify-content: center !important;
    gap: 28px !important;
    margin-bottom: 20px !important;
  }

  .home-cats-tabs__tab span {
    font-size: 28px !important;
  }

  .home-cat__list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
    align-items: stretch !important;
  }

  .home-cat__item {
    display: flex !important;
    min-width: 0 !important;
  }

  .home-cat__item--2x {
    display: none !important;
  }

  .knopa-home-products .product-preview.knopa-product-card {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    min-height: 100% !important;
    border: 1px solid #dfe8f1 !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(17, 35, 58, .055) !important;
    overflow: hidden !important;
  }

  .knopa-home-products .product-preview__photo-wrapper {
    height: clamp(150px, 23vw, 220px) !important;
    padding: 12px !important;
    background: #fff !important;
  }

  .knopa-home-products .product-preview__photo {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
  }

  .knopa-home-products .product-preview__panel-wrapper,
  .knopa-home-products .product-preview__panel {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
  }

  .knopa-home-products .product-preview__panel {
    padding: 12px !important;
  }

  .knopa-home-products .product-preview__title {
    min-height: 58px !important;
    margin-bottom: 8px !important;
  }

  .knopa-home-products .product-preview__heading {
    display: -webkit-box !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    color: #0a4a7a !important;
    font-size: 14px !important;
    line-height: 1.32 !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
  }

  .knopa-home-products .product-preview__controls {
    margin-top: auto !important;
  }

  .knopa-home-products .count-wrapper {
    height: 42px !important;
    margin-bottom: 10px !important;
    border-radius: 9px !important;
  }

  .knopa-home-products .product-preview__submit {
    min-height: 46px !important;
    border-radius: 10px !important;
    white-space: nowrap !important;
  }

  .knopa-footer .container {
    width: 100% !important;
    max-width: 980px !important;
    padding-left: 28px !important;
    padding-right: 28px !important;
  }

  .knopa-footer-grid {
    grid-template-columns: minmax(0, 1.25fr) repeat(3, minmax(0, 1fr)) !important;
    gap: 26px !important;
  }
}

@media (min-width: 768px) and (max-width: 840px) {
  .knopa-home .knopa-live-container,
  .knopa-home .home-cats__container,
  .knopa-home .home-all-cats__container,
  .mob-header .knopa-live-container {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  .knopa-home-proof__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .knopa-home-proof__stats span {
    flex-direction: row;
    justify-content: flex-start;
    min-height: 78px;
    text-align: left;
  }

  .home-cats-tabs__tab span {
    font-size: 25px !important;
  }

  .knopa-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 1024px) and (max-width: 1199px) {
  .knopa-home .knopa-live-container,
  .knopa-home .home-cats__container,
  .knopa-home .home-all-cats__container {
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
  }

  .knopa-home-hero__grid {
    grid-template-columns: minmax(0, 1.6fr) minmax(280px, .9fr) !important;
    gap: 20px !important;
  }

  .knopa-home-hero__slider {
    aspect-ratio: 16 / 7 !important;
    border-radius: 22px !important;
  }

  .knopa-home-hero__copy {
    display: block;
  }

  .home-all-cats__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .home-cat__item--2x {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .knopa-home .knopa-live-container,
  .knopa-home .home-cats__container,
  .knopa-home .home-all-cats__container {
    max-width: 1320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .knopa-home-hero__copy {
    display: block;
  }

  .home-all-cats__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .knopa-home-hero__copy {
    display: none !important;
  }

  .knopa-home-proof {
    padding: 0 0 18px !important;
  }

  .knopa-home-proof__inner {
    gap: 14px;
    padding: 18px 14px;
    border-radius: 16px;
  }

  .knopa-home-proof__inner p {
    font-size: 14px;
    line-height: 1.45;
  }

  .knopa-home-proof__stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .knopa-home-proof__stats span {
    min-height: 74px;
    padding: 10px;
  }

  .knopa-home-proof__stats i {
    flex-basis: 32px;
    width: 32px;
    height: 32px;
    border-radius: 11px;
    font-size: 14px;
  }

  .knopa-home-proof__stats b {
    font-size: 12px;
  }
}

/* Final QA corrections after viewport pass. */
.knopa-home-hero__copy {
  display: none !important;
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .knopa-home-hero__slider {
    height: clamp(300px, 40vw, 380px) !important;
    aspect-ratio: auto !important;
  }

  .knopa-home-hero__banner img {
    height: 100% !important;
  }
}

@media (min-width: 992px) and (max-width: 1023.98px) {
  .hide-below-m,
  #main-header {
    display: none !important;
  }

  .hide-above-l,
  .mob-header,
  .full-nav,
  .full-nav-backdrop {
    display: block !important;
  }

  .mob-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 90 !important;
    width: 100% !important;
    max-width: 100vw !important;
    background: #fff !important;
    box-shadow: 0 1px 0 rgba(215, 226, 235, .9) !important;
    overflow: hidden !important;
  }
}

@media (min-width: 1200px) {
  .knopa-home .knopa-home-hero__slider {
    height: clamp(340px, 34vw, 460px) !important;
    max-height: 460px !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
  }

  .knopa-home .knopa-home-hero__banner {
    height: 100% !important;
  }

  .knopa-home .knopa-home-hero__banner img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  .knopa-home .knopa-home-hero__tabs {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  .knopa-home-hero__slider {
    height: clamp(340px, 34vw, 460px) !important;
    aspect-ratio: auto !important;
    border-radius: 22px !important;
  }

  .knopa-home-hero__banner img {
    height: 100% !important;
    object-fit: cover !important;
  }

  .home-cat__item--2x {
    display: none !important;
  }
}

/* Category and subcategory tablet layout: mobile controls, tablet product grid. */
@media (min-width: 768px) and (max-width: 1023.98px) {
  #product-category.knopa-category-page {
    overflow-x: hidden !important;
  }

  #product-category .knopa-live-container,
  #product-category .container.knopa-live-container {
    width: 100% !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  #product-category .knopa-category-layout {
    display: block !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #product-category .knopa-category-layout > aside,
  #product-category .knopa-category-layout > .col-sm-3,
  #product-category .knopa-category-layout > #column-left,
  #product-category .knopa-category-sidebar {
    display: none !important;
  }

  #product-category #content.knopa-category-content,
  #product-category .knopa-category-content {
    display: block !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #product-category .knopa-mobile-category-controls {
    display: none !important;
  }

  #product-category .knopa-mobile-filter-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 1990 !important;
    display: block !important;
    width: 100vw !important;
    height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: rgba(15, 23, 42, .48) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity .24s ease, visibility .24s ease !important;
  }

  #product-category .knopa-mobile-filter-panel {
    position: fixed !important;
    z-index: 2000 !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    display: block !important;
    width: min(86vw, 440px) !important;
    padding: 24px 18px !important;
    overflow: auto !important;
    background: #fff !important;
    box-shadow: 22px 0 40px rgba(18, 43, 72, .2) !important;
    transform: translateX(-110%) !important;
    transition: transform .24s ease !important;
  }

  #product-category .knopa-mobile-filter-state:checked ~ .knopa-mobile-filter-backdrop {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  #product-category .knopa-mobile-filter-state:checked ~ .knopa-mobile-filter-panel {
    transform: translateX(0) !important;
  }

  #product-category .knopa-mobile-filter-close {
    position: absolute !important;
    right: 16px !important;
    top: 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    border: 1px solid #dce8f3 !important;
    border-radius: 50% !important;
    background: #fff !important;
    color: #08162c !important;
    font-size: 22px !important;
    box-shadow: 0 8px 20px rgba(18, 43, 72, .08) !important;
  }

  #product-category .knopa-mobile-filter-panel h3 {
    margin: 4px 60px 18px 0 !important;
    color: #08162c !important;
    font-size: 22px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
  }

  #product-category .knopa-mobile-filter-categories {
    display: block !important;
    margin-top: 4px !important;
    margin-bottom: max(26px, env(safe-area-inset-bottom)) !important;
    overflow: hidden !important;
    border: 1px solid #e1eaf2 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 12px 28px rgba(18, 43, 72, .055) !important;
  }

  #product-category .knopa-mobile-filter-categories a {
    display: grid !important;
    grid-template-columns: 38px minmax(0, 1fr) 16px !important;
    gap: 12px !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 58px !important;
    padding: 8px 12px !important;
    border: 0 !important;
    border-bottom: 1px solid #edf2f6 !important;
    border-radius: 0 !important;
    color: #102033 !important;
    background: #fff !important;
    font-family: "Proba Pro", "Open Sans", Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.22 !important;
    font-weight: 650 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    white-space: normal !important;
  }

  #product-category .knopa-mobile-filter-categories a:last-child {
    border-bottom: 0 !important;
  }

  #product-category .knopa-mobile-filter-categories__name {
    display: -webkit-box !important;
    min-width: 0 !important;
    overflow: hidden !important;
    color: inherit !important;
    line-height: inherit !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
  }

  #product-category .knopa-mobile-filter-categories__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    border-radius: 14px !important;
    background: #f4f7fa !important;
    box-shadow: inset 0 0 0 1px rgba(219, 230, 239, .82) !important;
  }

  #product-category .knopa-mobile-filter-categories__icon svg {
    display: block !important;
    width: 24px !important;
    height: 24px !important;
  }

  #product-category .knopa-mobile-filter-categories a::after {
    content: "\203A" !important;
    color: #8a94a3 !important;
    font-size: 24px !important;
    line-height: 1 !important;
    font-weight: 500 !important;
    text-align: right !important;
  }

  #product-category .knopa-mobile-filter-categories a.active {
    color: #e9004f !important;
    background: #fff3f7 !important;
    box-shadow: inset 4px 0 0 #e9004f !important;
  }

  #product-category .knopa-mobile-filter-categories a.active::after {
    color: #e9004f !important;
  }

  #product-category .knopa-mobile-filter-categories a.active .knopa-mobile-filter-categories__icon {
    background: #ffe8f0 !important;
    box-shadow: inset 0 0 0 1px #ffd0df !important;
  }

  #product-category .knopa-category-page .knopa-toolbar,
  #product-category .knopa-toolbar {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  #product-category .knopa-toolbar-filter-button,
  #product-category .knopa-sort-links {
    display: grid !important;
    align-items: center !important;
    min-height: 76px !important;
    margin: 0 !important;
    border: 1px solid #dce8f3 !important;
    border-radius: 16px !important;
    background: #fff !important;
    color: #08162c !important;
    box-shadow: 0 12px 28px rgba(18, 43, 72, .07) !important;
    overflow: hidden !important;
  }

  #product-category .knopa-toolbar-filter-button {
    grid-template-columns: 42px minmax(0, 1fr) !important;
    gap: 12px !important;
    padding: 12px 16px !important;
  }

  #product-category .knopa-toolbar-filter-button i {
    color: #08162c !important;
    font-size: 26px !important;
  }

  #product-category .knopa-toolbar-filter-button b,
  #product-category .knopa-toolbar-filter-button small {
    display: block !important;
    letter-spacing: 0 !important;
  }

  #product-category .knopa-toolbar-filter-button b {
    color: #08162c !important;
    font-size: 20px !important;
    line-height: 1.08 !important;
    font-weight: 900 !important;
  }

  #product-category .knopa-toolbar-filter-button small {
    margin-top: 3px !important;
    color: #1680c3 !important;
    font-size: 15px !important;
    line-height: 1.1 !important;
    font-weight: 500 !important;
  }

  #product-category .knopa-sort-links {
    position: relative !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-content: center !important;
    padding: 12px 42px 12px 16px !important;
    text-align: center !important;
  }

  #product-category .knopa-sort-links:after {
    content: "\f107" !important;
    position: absolute !important;
    right: 17px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-family: FontAwesome !important;
    color: #08162c !important;
    font-size: 22px !important;
    font-weight: 400 !important;
  }

  #product-category .knopa-sort-links span {
    display: block !important;
    color: #111 !important;
    font-size: 20px !important;
    line-height: 1.08 !important;
    font-weight: 500 !important;
  }

  #product-category .knopa-sort-links a,
  #product-category .knopa-limit-links {
    display: none !important;
  }

  #product-category .knopa-sort-links a.active {
    display: block !important;
    margin-top: 5px !important;
    color: #1680c3 !important;
    border: 0 !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  #product-category .knopa-sort-links a.active[data-mobile-label] {
    font-size: 0 !important;
  }

  #product-category .knopa-sort-links a.active[data-mobile-label]:after {
    content: attr(data-mobile-label) !important;
    display: block !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  #product-category .knopa-product-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #product-category .knopa-product-grid > .product-layout,
  #product-category .knopa-product-grid > .product-layout.product-grid,
  #product-category .knopa-product-grid > .product-layout[class*="col-"] {
    display: flex !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-bottom: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #product-category .knopa-product-grid .product-thumb.product-preview.knopa-product-card,
  #product-category .knopa-product-grid .product-preview.knopa-product-card {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 100% !important;
  }

  #product-category .knopa-product-grid .product-preview__photo-wrapper,
  #product-category .knopa-product-grid .product-preview__panel-wrapper,
  #product-category .knopa-product-grid .product-preview__panel,
  #product-category .knopa-product-grid .product-preview__controls,
  #product-category .knopa-product-grid .count-wrapper,
  #product-category .knopa-product-grid .product-preview__submit {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  #product-category .knopa-product-grid .product-preview__photo-wrapper {
    height: clamp(150px, 23vw, 220px) !important;
  }
}

@media (min-width: 900px) and (max-width: 1023.98px) {
  #product-category .knopa-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  #product-category .knopa-product-grid .product-preview__photo-wrapper {
    height: clamp(130px, 17vw, 180px) !important;
  }
}

/* Unified product badges for home, listings, search and wishlist. */
.product-labels {
  flex-direction: column !important;
  align-items: flex-start !important;
  max-width: calc(100% - 78px) !important;
}

.product-label--sale {
  background: #e6004f !important;
}

.product-label--salery {
  background: #8f24e5 !important;
}

/* Responsive stability pass for tablet/mobile and shared listing containers. */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

.knopa-live-page *,
.knopa-live-page *:before,
.knopa-live-page *:after {
  box-sizing: border-box;
}

@media (max-width: 1023.98px) {
  .knopa-live-container,
  .container.knopa-live-container,
  #product-category .knopa-live-container,
  #product-category .container.knopa-live-container {
    max-width: calc(100% - 24px) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .codex-mobile-search-header__top,
  .codex-mobile-search-header__search-row {
    width: 100% !important;
    min-width: 0 !important;
  }

  .codex-mobile-search-header__catalog {
    flex: 0 0 clamp(112px, 24vw, 148px) !important;
    min-width: 0 !important;
  }

  .codex-mobile-search-header__catalog span {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .codex-mobile-search-header__search-row #search,
  .codex-mobile-search-header__search-row #search .input-group {
    min-width: 0 !important;
    width: 100% !important;
  }
}

@media (max-width: 430px) {
  .codex-mobile-search-header__catalog {
    flex-basis: 118px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .codex-mobile-search-header__search-row {
    gap: 8px !important;
  }
}

/* Final shared tablet header rhythm: keep 768-1024 aligned with the compact drawer layout. */
@media (min-width: 768px) and (max-width: 1023.98px) {
  .codex-mobile-search-header__top,
  .codex-mobile-search-header__search-row {
    gap: 8px !important;
  }

  .codex-mobile-search-header__search-row {
    margin-top: 8px !important;
  }
}

/* Final breakpoint visibility contract, loaded after the base theme CSS. */
@media (max-width: 1023.98px) {
  .knopa-live-topbar,
  .knopa-live-header,
  .knopa-live-nav {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
  }

  .mob-header.codex-mobile-search-header {
    display: block !important;
    visibility: visible !important;
  }
}

@media (min-width: 1024px) {
  .mob-header.codex-mobile-search-header {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
  }

  .knopa-live-topbar,
  .knopa-live-header,
  .knopa-live-nav {
    display: block !important;
    visibility: visible !important;
  }
}

/* Reference product card ultimate override: keep this block last. */
body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid,
.knopa-category-page .knopa-product-grid,
#product-category .knopa-product-grid,
#product-search .knopa-product-grid,
.knopa-wishlist-page .knopa-product-grid,
.knopa-wishlist-grid,
.knopa-related-products.knopa-product-grid,
.knopa-module-products.knopa-product-grid {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 5px 4px !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 1360px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none !important;
}

body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid:before,
body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid:after,
.knopa-product-grid:before,
.knopa-product-grid:after,
.knopa-related-products.knopa-product-grid:before,
.knopa-related-products.knopa-product-grid:after,
.knopa-module-products.knopa-product-grid:before,
.knopa-module-products.knopa-product-grid:after {
  content: none !important;
  display: none !important;
}

body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item,
body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item.product-layout,
.knopa-category-page .knopa-product-grid > .product-layout,
#product-category .knopa-product-grid > .product-layout,
#product-search .knopa-product-grid > .product-layout,
.knopa-wishlist-page .knopa-product-grid > .product-layout,
.knopa-wishlist-grid > .product-layout,
.knopa-related-products.knopa-product-grid > .product-layout,
.knopa-module-products.knopa-product-grid > .product-layout {
  box-sizing: border-box !important;
  display: flex !important;
  float: none !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  flex: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x {
  grid-column: span 2 !important;
}

.product-thumb.product-preview.knopa-product-card,
.product-preview.knopa-product-card {
  position: relative !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 100% !important;
  padding: 10px !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid #eef1f5 !important;
  border-radius: 15px !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, .08) !important;
  color: #111827 !important;
  letter-spacing: 0 !important;
}

.knopa-product-card .product-labels {
  display: none !important;
}

.product-preview__photo-wrapper {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: clamp(136px, 38vw, 154px) !important;
  min-height: 136px !important;
  max-height: 154px !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 12px !important;
  aspect-ratio: auto !important;
}

.product-preview__photo {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}

.product-preview__wishlist {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  z-index: 6 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  padding: 0 !important;
  color: #e5004f !important;
  background: #fff !important;
  border: 1px solid #eef1f5 !important;
  border-radius: 50% !important;
  box-shadow: 0 6px 16px rgba(15, 23, 42, .10) !important;
}

.product-preview__wishlist i {
  color: #e5004f !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

.product-preview__panel-wrapper,
.product-preview__panel {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
}

.product-preview__title {
  display: block !important;
  min-height: calc(1.3em * 3) !important;
  margin: 0 !important;
  color: #111827 !important;
  text-decoration: none !important;
}

.knopa-product-card .product-preview__title,
.knopa-product-card .product-preview__heading {
  color: #111827 !important;
}

.product-preview__heading {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
  overflow: hidden !important;
  color: #111827 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

.product-article {
  margin-top: 5px !important;
  color: #8a94a6 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.product-status {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-height: 18px !important;
  margin-top: 5px !important;
  color: #159a5c !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

.product-status:before {
  content: "" !important;
  display: inline-block !important;
  width: 7px !important;
  height: 7px !important;
  min-width: 7px !important;
  border-radius: 50% !important;
  background: #159a5c !important;
}

.product-status--unavailable,
.product-status--disabled {
  color: #8a94a6 !important;
}

.product-status--unavailable:before,
.product-status--disabled:before {
  background: #c5ccd6 !important;
}

.product-preview__prices {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 1px !important;
  min-height: 58px !important;
  margin: 7px 0 5px !important;
  padding: 8px 9px !important;
  background: #f8fbfc !important;
  border: 1px solid #e5edf0 !important;
  border-radius: 10px !important;
  color: #111827 !important;
}

.product-price-label {
  display: block !important;
  color: #5f7f7a !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
}

.product-preview__prices span:not(.product-price-label),
.product-preview__prices ins {
  display: inline-block !important;
  color: #111827 !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
}

.product-preview__prices del {
  color: #8a94a6 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}

.product-preview__controls {
  display: flex !important;
  flex: 0 0 auto !important;
  flex-direction: column !important;
  gap: 5px !important;
  margin-top: 5px !important;
  padding: 0 !important;
}

.knopa-product-card .product-preview__controls,
body.route-common-home .knopa-home-products .knopa-product-card .product-preview__controls,
.knopa-category-page .knopa-product-card .product-preview__controls,
#product-category .knopa-product-card .product-preview__controls,
#product-search .knopa-product-card .product-preview__controls,
.knopa-wishlist-page .knopa-product-card .product-preview__controls,
.knopa-related-products .knopa-product-card .product-preview__controls,
.knopa-module-products .knopa-product-card .product-preview__controls {
  margin-top: 5px !important;
}

.product-preview__controls .count-wrapper,
.count-wrapper.knopa-qty {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 1fr minmax(44px, 1.55fr) 1fr !important;
  width: 100% !important;
  height: 40px !important;
  min-height: 40px !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid #e1e6ec !important;
  border-radius: 10px !important;
}

.product-preview__controls .count-wrapper label,
.count-wrapper.knopa-qty label {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
}

.product-preview__controls .count-wrapper__button,
.product-preview__controls .count-wrapper__input,
.count-wrapper.knopa-qty .count-wrapper__button,
.count-wrapper.knopa-qty .count-wrapper__input {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  color: #111827 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
}

.product-preview__controls .count-wrapper__button + label,
.count-wrapper.knopa-qty .count-wrapper__button + label {
  border-left: 1px solid #e1e6ec !important;
  border-right: 1px solid #e1e6ec !important;
}

.product-preview__submit,
.knopa-cart-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  height: 43px !important;
  min-height: 43px !important;
  margin: 0 !important;
  padding: 0 10px !important;
  color: #fff !important;
  background: #e60046 !important;
  border: 1px solid #e60046 !important;
  border-radius: 10px !important;
  box-shadow: 0 8px 16px rgba(230, 0, 70, .16) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.product-preview__submit:hover,
.product-preview__submit:focus,
.knopa-cart-btn:hover,
.knopa-cart-btn:focus {
  color: #fff !important;
  background: #cf0040 !important;
  border-color: #cf0040 !important;
}

.product-preview__submit i,
.knopa-cart-btn i {
  color: #fff !important;
  font-size: 16px !important;
  line-height: 1 !important;
}

.product-card-bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 6px !important;
  width: 100% !important;
  min-height: 17px !important;
  margin-top: 2px !important;
}

.product-min,
.product-box-desc,
.knopa-pack-text {
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #8a94a6 !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.product-box-desc,
.knopa-pack-text {
  text-align: right !important;
}

@media (max-width: 767px) {
  .product-card-bottom {
    align-items: flex-start !important;
    min-height: 28px !important;
    margin-top: 4px !important;
  }

  .product-card-bottom .product-min,
  .product-card-bottom .product-box-desc,
  .product-card-bottom .knopa-pack-text {
    overflow: visible !important;
    font-size: 10.5px !important;
    line-height: 1.12 !important;
    text-overflow: clip !important;
    white-space: normal !important;
  }

  .product-card-bottom .product-min {
    flex: 1 1 54% !important;
    max-width: 54% !important;
  }

  .product-card-bottom .product-box-desc,
  .product-card-bottom .knopa-pack-text {
    flex: 0 1 46% !important;
    max-width: 46% !important;
  }
}

.quick-view-toggler {
  display: none !important;
}

.knopa-related-title {
  margin: 18px 0 10px !important;
  color: #111827 !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

body.route-common-home .knopa-home-products,
body.route-common-home .knopa-home-products .home-cats__container,
body.route-common-home .knopa-home-products .home-cats__content {
  padding-top: 6px !important;
  padding-bottom: 8px !important;
  margin-top: 10px !important;
}

body.route-common-home .knopa-home-products .home-cats-tabs,
.knopa-category-page .category-hero,
#product-category .category-hero,
.knopa-category-page .knopa-toolbar,
#product-category .knopa-toolbar,
#product-search .knopa-toolbar {
  margin-bottom: 8px !important;
}

@media (min-width: 768px) {
  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid,
  .knopa-category-page .knopa-product-grid,
  #product-category .knopa-product-grid,
  #product-search .knopa-product-grid,
  .knopa-wishlist-page .knopa-product-grid,
  .knopa-wishlist-grid,
  .knopa-related-products.knopa-product-grid,
  .knopa-module-products.knopa-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px 5px !important;
  }
}

@media (min-width: 1024px) {
  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid,
  .knopa-category-page .knopa-product-grid,
  #product-category .knopa-product-grid,
  #product-search .knopa-product-grid,
  .knopa-wishlist-page .knopa-product-grid,
  .knopa-wishlist-grid,
  .knopa-related-products.knopa-product-grid,
  .knopa-module-products.knopa-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 7px !important;
  }

  .product-thumb.product-preview.knopa-product-card,
  .product-preview.knopa-product-card {
    padding: 12px !important;
    border-radius: 16px !important;
  }

  .product-preview__photo-wrapper {
    height: clamp(190px, 16vw, 220px) !important;
    min-height: 190px !important;
    max-height: 220px !important;
    margin-bottom: 9px !important;
  }

  .product-preview__wishlist {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
  }

  .product-preview__heading {
    font-size: 15px !important;
  }

  .product-article {
    font-size: 13px !important;
  }

  .product-status {
    font-size: 14px !important;
  }

  .product-preview__prices {
    min-height: 64px !important;
    margin-top: 8px !important;
    margin-bottom: 5px !important;
    padding: 9px 10px !important;
  }

  .product-preview__prices span:not(.product-price-label),
  .product-preview__prices ins {
    font-size: 23px !important;
  }

  .product-preview__controls .count-wrapper,
  .count-wrapper.knopa-qty {
    height: 44px !important;
    min-height: 44px !important;
  }

  .product-preview__submit,
  .knopa-cart-btn {
    height: 47px !important;
    min-height: 47px !important;
    font-size: 16px !important;
  }

  .product-min,
  .product-box-desc,
  .knopa-pack-text {
    font-size: 13px !important;
  }
}

@media (max-width: 430px) {
  .product-thumb.product-preview.knopa-product-card,
  .product-preview.knopa-product-card {
    padding: 9px !important;
    border-radius: 14px !important;
  }

  .product-preview__heading {
    font-size: 13px !important;
  }

  .product-preview__prices span:not(.product-price-label),
  .product-preview__prices ins {
    font-size: 19px !important;
  }

  .product-preview__submit,
  .knopa-cart-btn {
    font-size: 14px !important;
  }
}

/* === Knopa canonical home product grid parity, 2026-07-03 === */
body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid:before,
body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid:after,
body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid:before,
body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid:after {
  display: none !important;
  content: none !important;
}

body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item,
body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item {
  display: flex !important;
  align-items: stretch !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

@media only screen and (max-width: 767px) {
  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
    width: calc(100% + 8px) !important;
    margin: -4px !important;
  }

  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item {
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
    padding: 4px !important;
  }

  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x {
    flex-basis: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
    width: calc(100% + 20px) !important;
    margin: -10px !important;
  }

  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item {
    flex: 0 0 33.333333% !important;
    width: 33.333333% !important;
    max-width: 33.333333% !important;
    padding: 10px !important;
  }

  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x {
    flex-basis: 66.666667% !important;
    width: 66.666667% !important;
    max-width: 66.666667% !important;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
    width: calc(100% + 40px) !important;
    margin: -20px !important;
  }

  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item {
    flex: 0 0 25% !important;
    width: 25% !important;
    max-width: 25% !important;
    padding: 20px !important;
  }

  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x {
    flex-basis: 50% !important;
    width: 50% !important;
    max-width: 50% !important;
  }
}

@media only screen and (min-width: 1400px) {
  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
    width: calc(100% + 40px) !important;
    margin: -20px !important;
  }

  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item {
    flex: 0 0 20% !important;
    width: 20% !important;
    max-width: 20% !important;
    padding: 20px !important;
  }

  body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x,
  body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x {
    flex-basis: 40% !important;
    width: 40% !important;
    max-width: 40% !important;
  }
}
/* === /Knopa canonical home product grid parity === */

/* === Knopa final mobile product-card parity, 2026-07-05 === */
@media only screen and (max-width: 767px) {
  html body .knopa-product-grid .product-preview,
  html body .home-cat__list.knopa-product-grid .product-preview {
    padding: 8px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
  }

  html body .knopa-product-grid .product-preview__photo-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper {
    width: calc(100% + 16px) !important;
    max-width: calc(100% + 16px) !important;
    height: clamp(150px, 42vw, 184px) !important;
    min-height: 150px !important;
    aspect-ratio: auto !important;
    margin: -8px -8px 9px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 12px 12px 0 0 !important;
    background: #fff !important;
  }

  html body .knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo,
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo,
  html body .knopa-product-grid .product-preview__photo,
  html body .home-cat__list.knopa-product-grid .product-preview__photo {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  html body .knopa-product-grid .product-preview__panel,
  html body .home-cat__list.knopa-product-grid .product-preview__panel {
    padding: 9px 6px 10px !important;
  }

  html body .knopa-product-grid .product-preview__title,
  html body .home-cat__list.knopa-product-grid .product-preview__title,
  html body .knopa-product-grid .product-preview__heading,
  html body .home-cat__list.knopa-product-grid .product-preview__heading {
    width: 100% !important;
    max-width: 100% !important;
    color: #003c80 !important;
    font-size: 14px !important;
    line-height: 18px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
  }

  html body .knopa-product-grid .product-preview__title,
  html body .home-cat__list.knopa-product-grid .product-preview__title {
    display: -webkit-box !important;
    min-height: 54px !important;
    max-height: 54px !important;
    margin: 0 0 8px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
  }

  html body .knopa-product-grid .product-status,
  html body .home-cat__list.knopa-product-grid .product-status {
    margin: 0 0 7px !important;
    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: 800 !important;
  }

  html body .knopa-product-grid .product-preview__prices,
  html body .home-cat__list.knopa-product-grid .product-preview__prices,
  html body .knopa-product-grid .price,
  html body .home-cat__list.knopa-product-grid .price {
    margin: 6px 0 10px !important;
    color: #0b1020 !important;
    font-size: 18px !important;
    line-height: 22px !important;
    font-weight: 900 !important;
  }

  html body .knopa-product-grid .count-wrapper,
  html body .home-cat__list.knopa-product-grid .count-wrapper {
    grid-template-columns: 36px minmax(0, 1fr) 36px !important;
    margin-bottom: 8px !important;
    border-radius: 8px !important;
  }

  html body .knopa-product-grid .count-wrapper__button,
  html body .home-cat__list.knopa-product-grid .count-wrapper__button,
  html body .knopa-product-grid .count-wrapper__input,
  html body .home-cat__list.knopa-product-grid .count-wrapper__input {
    min-width: 0 !important;
    height: 42px !important;
    min-height: 42px !important;
    line-height: 42px !important;
    font-size: 14px !important;
  }

  html body .knopa-product-grid .product-preview__submit,
  html body .home-cat__list.knopa-product-grid .product-preview__submit {
    min-height: 44px !important;
    padding: 8px 6px !important;
    border-radius: 8px !important;
    font-size: 12px !important;
    line-height: 1.12 !important;
    font-weight: 900 !important;
    white-space: normal !important;
    overflow: hidden !important;
  }

  html body .knopa-product-grid .product-min,
  html body .home-cat__list.knopa-product-grid .product-min,
  html body .knopa-product-grid .product-box-desc,
  html body .home-cat__list.knopa-product-grid .product-box-desc {
    font-size: 12px !important;
    line-height: 1.25 !important;
    text-align: center !important;
  }
}

@media only screen and (max-width: 374px) {
  html body .knopa-product-grid .product-preview,
  html body .home-cat__list.knopa-product-grid .product-preview {
    padding: 6px !important;
  }

  html body .knopa-product-grid .product-preview__photo-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper {
    width: calc(100% + 12px) !important;
    max-width: calc(100% + 12px) !important;
    height: clamp(136px, 42vw, 158px) !important;
    min-height: 136px !important;
    margin: -6px -6px 8px !important;
  }

  html body .knopa-product-grid .product-preview__title,
  html body .home-cat__list.knopa-product-grid .product-preview__title {
    font-size: 13px !important;
    line-height: 17px !important;
    min-height: 51px !important;
    max-height: 51px !important;
  }

  html body .knopa-product-grid .product-preview__submit,
  html body .home-cat__list.knopa-product-grid .product-preview__submit {
    font-size: 11px !important;
  }
}
/* === /Knopa final mobile product-card parity === */

/* === Knopa final listing-page mobile/tablet product-card override, 2026-07-05 === */
@media only screen and (max-width: 767px) {
  #product-category .knopa-product-grid .product-preview__photo-wrapper,
  #product-search .knopa-product-grid .product-preview__photo-wrapper,
  #product-special .knopa-product-grid .product-preview__photo-wrapper,
  body.route-product-category .knopa-product-grid .product-preview__photo-wrapper,
  body.route-product-search .knopa-product-grid .product-preview__photo-wrapper,
  body.route-product-special .knopa-product-grid .product-preview__photo-wrapper,
  .knopa-category-page .knopa-product-grid .product-preview__photo-wrapper,
  .knopa-wishlist-page .knopa-product-grid .product-preview__photo-wrapper {
    width: calc(100% + 16px) !important;
    max-width: calc(100% + 16px) !important;
    height: clamp(150px, 42vw, 184px) !important;
    min-height: 150px !important;
    padding: 0 !important;
    margin: -8px -8px 9px !important;
    overflow: hidden !important;
    border-radius: 12px 12px 0 0 !important;
    aspect-ratio: auto !important;
  }

  #product-category .knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo,
  #product-search .knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo,
  #product-special .knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo,
  body.route-product-category .knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo,
  body.route-product-search .knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo,
  body.route-product-special .knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo,
  .knopa-category-page .knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo,
  .knopa-wishlist-page .knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
}

@media only screen and (max-width: 374px) {
  #product-category .knopa-product-grid .product-preview__photo-wrapper,
  #product-search .knopa-product-grid .product-preview__photo-wrapper,
  #product-special .knopa-product-grid .product-preview__photo-wrapper,
  body.route-product-category .knopa-product-grid .product-preview__photo-wrapper,
  body.route-product-search .knopa-product-grid .product-preview__photo-wrapper,
  body.route-product-special .knopa-product-grid .product-preview__photo-wrapper,
  .knopa-category-page .knopa-product-grid .product-preview__photo-wrapper,
  .knopa-wishlist-page .knopa-product-grid .product-preview__photo-wrapper {
    width: calc(100% + 12px) !important;
    max-width: calc(100% + 12px) !important;
    height: clamp(136px, 42vw, 158px) !important;
    min-height: 136px !important;
    margin: -6px -6px 8px !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #product-category .knopa-product-grid .product-preview__title,
  #product-search .knopa-product-grid .product-preview__title,
  #product-special .knopa-product-grid .product-preview__title,
  body.route-product-category .knopa-product-grid .product-preview__title,
  body.route-product-search .knopa-product-grid .product-preview__title,
  body.route-product-special .knopa-product-grid .product-preview__title,
  .knopa-category-page .knopa-product-grid .product-preview__title,
  .knopa-wishlist-page .knopa-product-grid .product-preview__title,
  .home-cat__list.knopa-product-grid .product-preview__title {
    color: #003c80 !important;
    font-size: 14px !important;
    line-height: 18px !important;
    font-weight: 700 !important;
    min-height: 54px !important;
    max-height: 54px !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
  }
}
/* === /Knopa final listing-page mobile/tablet product-card override === */

/* === Knopa narrow mobile readable titles, 2026-07-05 === */
@media only screen and (max-width: 374px) {
  #product-category .knopa-product-grid .product-preview__title,
  #product-search .knopa-product-grid .product-preview__title,
  #product-special .knopa-product-grid .product-preview__title,
  body.route-product-category .knopa-product-grid .product-preview__title,
  body.route-product-search .knopa-product-grid .product-preview__title,
  body.route-product-special .knopa-product-grid .product-preview__title,
  .knopa-category-page .knopa-product-grid .product-preview__title,
  .knopa-wishlist-page .knopa-product-grid .product-preview__title,
  .home-cat__list.knopa-product-grid .product-preview__title {
    font-size: 14px !important;
    line-height: 18px !important;
    min-height: 54px !important;
    max-height: 54px !important;
  }
}
/* === /Knopa narrow mobile readable titles === */

/* === Knopa product-grid parity with main site, 2026-07-05 === */
@media only screen and (max-width: 767px) {
  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid,
  html body .knopa-category-page .knopa-product-grid,
  html body #product-category .knopa-product-grid,
  html body #product-search .knopa-product-grid,
  html body #product-special .knopa-product-grid,
  html body.route-product-category .knopa-product-grid,
  html body.route-product-search .knopa-product-grid,
  html body.route-product-special .knopa-product-grid,
  html body .knopa-wishlist-page .knopa-product-grid,
  html body .knopa-module-products.knopa-product-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
    width: auto !important;
    max-width: none !important;
    margin-left: 6px !important;
    margin-right: 6px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body .knopa-product-grid > .product-layout,
  html body .knopa-product-grid > .product-layout.product-grid,
  html body .knopa-product-grid > .product-layout[class*="col-"],
  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    float: none !important;
    flex: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  html body .knopa-product-grid .product-thumb.product-preview.knopa-product-card,
  html body .knopa-product-grid .product-preview.knopa-product-card,
  html body .knopa-product-grid .product-preview {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
  }

  html body .knopa-product-grid .product-preview__photo-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper,
  html body #product-category .knopa-product-grid .product-preview__photo-wrapper,
  html body #product-search .knopa-product-grid .product-preview__photo-wrapper,
  html body #product-special .knopa-product-grid .product-preview__photo-wrapper,
  html body.route-product-category .knopa-product-grid .product-preview__photo-wrapper,
  html body.route-product-search .knopa-product-grid .product-preview__photo-wrapper,
  html body.route-product-special .knopa-product-grid .product-preview__photo-wrapper,
  html body .knopa-category-page .knopa-product-grid .product-preview__photo-wrapper,
  html body .knopa-wishlist-page .knopa-product-grid .product-preview__photo-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% - 2px) !important;
    max-width: calc(100% - 2px) !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1 / 1 !important;
    margin: 1px auto 8px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 7px 7px 0 0 !important;
    background: #fff !important;
  }

  html body .knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo,
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo,
  html body .knopa-product-grid .product-preview__photo-wrapper img,
  html body .knopa-product-grid img.product-preview__photo,
  html body .home-cat__list.knopa-product-grid img.product-preview__photo {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  html body .knopa-product-grid .product-preview__panel-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview__panel-wrapper,
  html body .knopa-product-grid .product-preview__panel,
  html body .home-cat__list.knopa-product-grid .product-preview__panel {
    width: calc(100% - 18px) !important;
    max-width: calc(100% - 18px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body .knopa-product-grid .product-preview__title,
  html body .home-cat__list.knopa-product-grid .product-preview__title,
  html body .knopa-product-grid .product-preview__heading,
  html body .home-cat__list.knopa-product-grid .product-preview__heading {
    color: #003c80 !important;
    font-size: 13px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
  }

  html body .knopa-product-grid .product-preview__title,
  html body .home-cat__list.knopa-product-grid .product-preview__title {
    display: -webkit-box !important;
    min-height: 48px !important;
    max-height: 48px !important;
    margin: 0 0 8px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
  }

  html body .knopa-product-grid .product-status,
  html body .home-cat__list.knopa-product-grid .product-status {
    margin: 0 0 8px !important;
    font-size: 12px !important;
    line-height: 17px !important;
    font-weight: 700 !important;
  }

  html body .knopa-product-grid .product-preview__prices,
  html body .home-cat__list.knopa-product-grid .product-preview__prices,
  html body .knopa-product-grid .price,
  html body .home-cat__list.knopa-product-grid .price {
    margin: 6px 0 10px !important;
    color: #0b1020 !important;
    font-size: 18px !important;
    line-height: 22px !important;
    font-weight: 900 !important;
  }

  html body .knopa-product-grid .count-wrapper,
  html body .home-cat__list.knopa-product-grid .count-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: 44px minmax(0, 1fr) 44px !important;
    min-height: 40px !important;
    margin: 0 0 8px !important;
    border-radius: 7px !important;
    overflow: hidden !important;
  }

  html body .knopa-product-grid .count-wrapper__button,
  html body .home-cat__list.knopa-product-grid .count-wrapper__button,
  html body .knopa-product-grid .count-wrapper__input,
  html body .home-cat__list.knopa-product-grid .count-wrapper__input {
    height: 40px !important;
    min-height: 40px !important;
    line-height: 40px !important;
    font-size: 13px !important;
  }

  html body .knopa-product-grid .product-preview__submit,
  html body .home-cat__list.knopa-product-grid .product-preview__submit {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 8px 6px !important;
    border-radius: 7px !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    white-space: normal !important;
  }
}

@media only screen and (min-width: 768px) {
  html body .knopa-product-grid .product-preview__photo-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper,
  html body #product-category .knopa-product-grid .product-preview__photo-wrapper,
  html body #product-search .knopa-product-grid .product-preview__photo-wrapper,
  html body #product-special .knopa-product-grid .product-preview__photo-wrapper,
  html body.route-product-category .knopa-product-grid .product-preview__photo-wrapper,
  html body.route-product-search .knopa-product-grid .product-preview__photo-wrapper,
  html body.route-product-special .knopa-product-grid .product-preview__photo-wrapper,
  html body .knopa-category-page .knopa-product-grid .product-preview__photo-wrapper,
  html body .knopa-wishlist-page .knopa-product-grid .product-preview__photo-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% - 2px) !important;
    max-width: calc(100% - 2px) !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1 / 1 !important;
    margin: 1px auto 10px !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  html body .knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo,
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo,
  html body .knopa-product-grid .product-preview__photo-wrapper img,
  html body .knopa-product-grid img.product-preview__photo,
  html body .home-cat__list.knopa-product-grid img.product-preview__photo {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  html body .knopa-product-grid .product-preview__panel-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview__panel-wrapper,
  html body .knopa-product-grid .product-preview__panel,
  html body .home-cat__list.knopa-product-grid .product-preview__panel {
    width: calc(100% - 20px) !important;
    max-width: calc(100% - 20px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body .knopa-product-grid .product-preview__submit,
  html body .home-cat__list.knopa-product-grid .product-preview__submit {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 42px !important;
    height: 42px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
}
/* === /Knopa product-grid parity with main site === */

/* === Knopa strict main-site image fit override, 2026-07-05 === */
@media only screen and (max-width: 767px) {
  html body .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body .knopa-product-grid .product-thumb.product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body #product-category .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body #product-search .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body #product-special .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body.route-product-category .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body.route-product-search .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body.route-product-special .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper {
    width: calc(100% - 2px) !important;
    max-width: calc(100% - 2px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 1 / 1 !important;
    margin: 1px auto 8px !important;
    padding: 0 !important;
    border-radius: 7px 7px 0 0 !important;
  }

  html body .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body .knopa-product-grid .product-thumb.product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-category .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-search .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-special .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-category .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-search .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-special .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  html body .knopa-product-grid .product-preview.knopa-product-card > .product-preview__panel-wrapper,
  html body .knopa-product-grid .product-thumb.product-preview.knopa-product-card > .product-preview__panel-wrapper,
  html body .knopa-product-grid .product-preview.knopa-product-card .product-preview__panel {
    width: calc(100% - 18px) !important;
    max-width: calc(100% - 18px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .knopa-product-grid .product-preview.knopa-product-card .count-wrapper,
  html body .knopa-product-grid .product-preview.knopa-product-card .product-preview__submit {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media only screen and (min-width: 768px) {
  html body .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body .knopa-product-grid .product-thumb.product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body #product-category .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body #product-search .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body #product-special .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body.route-product-category .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body.route-product-search .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper,
  html body.route-product-special .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper {
    width: calc(100% - 2px) !important;
    max-width: calc(100% - 2px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 1 / 1 !important;
    margin: 1px auto 10px !important;
    padding: 0 !important;
  }

  html body .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body .knopa-product-grid .product-thumb.product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-category .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-search .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-special .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-category .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-search .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-special .knopa-product-grid .product-preview.knopa-product-card > a.product-preview__photo-wrapper > img.product-preview__photo {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  html body .knopa-product-grid .product-preview.knopa-product-card > .product-preview__panel-wrapper,
  html body .knopa-product-grid .product-thumb.product-preview.knopa-product-card > .product-preview__panel-wrapper,
  html body .knopa-product-grid .product-preview.knopa-product-card .product-preview__panel {
    width: calc(100% - 20px) !important;
    max-width: calc(100% - 20px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
/* === /Knopa strict main-site image fit override === */

/* === Knopa actual OpenCart grid DOM parity, 2026-07-05 === */
@media only screen and (max-width: 767px) {
  html body .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body #product-category .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body #product-search .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body #product-special .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body.route-product-category .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body.route-product-search .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body.route-product-special .knopa-product-grid .product-preview > a.product-preview__photo-wrapper {
    width: calc(100% - 2px) !important;
    max-width: calc(100% - 2px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 1 / 1 !important;
    margin: 1px auto 8px !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body .home-cat__list.knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-category .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-search .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-special .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-category .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-search .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-special .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  html body .knopa-product-grid .product-preview > .product-preview__panel-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview > .product-preview__panel-wrapper,
  html body #product-category .knopa-product-grid .product-preview > .product-preview__panel-wrapper,
  html body #product-search .knopa-product-grid .product-preview > .product-preview__panel-wrapper,
  html body #product-special .knopa-product-grid .product-preview > .product-preview__panel-wrapper {
    width: calc(100% - 18px) !important;
    max-width: calc(100% - 18px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .knopa-product-grid .product-preview .product-preview__panel,
  html body .home-cat__list.knopa-product-grid .product-preview .product-preview__panel,
  html body #product-category .knopa-product-grid .product-preview .product-preview__panel,
  html body #product-search .knopa-product-grid .product-preview .product-preview__panel,
  html body #product-special .knopa-product-grid .product-preview .product-preview__panel {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

@media only screen and (min-width: 768px) {
  html body .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body #product-category .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body #product-search .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body #product-special .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body.route-product-category .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body.route-product-search .knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body.route-product-special .knopa-product-grid .product-preview > a.product-preview__photo-wrapper {
    width: calc(100% - 2px) !important;
    max-width: calc(100% - 2px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 1 / 1 !important;
    margin: 1px auto 10px !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body .home-cat__list.knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-category .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-search .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body #product-special .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-category .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-search .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body.route-product-special .knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  html body .knopa-product-grid .product-preview > .product-preview__panel-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview > .product-preview__panel-wrapper,
  html body #product-category .knopa-product-grid .product-preview > .product-preview__panel-wrapper,
  html body #product-search .knopa-product-grid .product-preview > .product-preview__panel-wrapper,
  html body #product-special .knopa-product-grid .product-preview > .product-preview__panel-wrapper {
    width: calc(100% - 20px) !important;
    max-width: calc(100% - 20px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .knopa-product-grid .product-preview .product-preview__panel,
  html body .home-cat__list.knopa-product-grid .product-preview .product-preview__panel,
  html body #product-category .knopa-product-grid .product-preview .product-preview__panel,
  html body #product-search .knopa-product-grid .product-preview .product-preview__panel,
  html body #product-special .knopa-product-grid .product-preview .product-preview__panel {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
/* === /Knopa actual OpenCart grid DOM parity === */

/* === Knopa mobile grid width parity with main site, 2026-07-05 === */
@media only screen and (max-width: 767px) {
  html body #product-category > .container.knopa-live-container,
  html body #product-search > .container.knopa-live-container,
  html body #product-special > .container.knopa-live-container,
  html body.route-product-category main > .container.knopa-live-container,
  html body.route-product-search main > .container.knopa-live-container,
  html body.route-product-special main > .container.knopa-live-container {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  html body #product-category .knopa-category-layout,
  html body #product-search .knopa-category-layout,
  html body #product-special .knopa-category-layout,
  html body #product-category #content.knopa-category-content,
  html body #product-search #content,
  html body #product-special #content {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body #product-category .knopa-product-grid,
  html body #product-search .knopa-product-grid,
  html body #product-special .knopa-product-grid,
  html body.route-product-category .knopa-product-grid,
  html body.route-product-search .knopa-product-grid,
  html body.route-product-special .knopa-product-grid {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    gap: 8px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  html body .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    gap: 6px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > li.home-cat__item > .product-preview > a.product-preview__photo-wrapper,
  html body .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > li.home-cat__item > .product-preview > a.product-preview__photo-wrapper {
    width: calc(100% - 2px) !important;
    max-width: calc(100% - 2px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 1 / 1 !important;
    margin: 1px auto 8px !important;
    padding: 0 !important;
  }

  html body .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > li.home-cat__item > .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo,
  html body .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > li.home-cat__item > .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }
}
/* === /Knopa mobile grid width parity with main site === */

/* === Knopa mobile category/listing alignment parity, 2026-07-05 === */
@media only screen and (max-width: 767px) {
  html body.knopa-live-page .codex-mobile-search-header .mob-header__container.knopa-live-container {
    width: calc(100% - 18px) !important;
    max-width: none !important;
    margin-left: 9px !important;
    margin-right: 9px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  html body.knopa-live-page .codex-mobile-search-header__top,
  html body.knopa-live-page .codex-mobile-search-header__search-row {
    width: 100% !important;
    max-width: 100% !important;
  }

  html body.knopa-live-page .codex-mobile-search-header__logo,
  html body.knopa-live-page .codex-mobile-search-header__logo img {
    width: clamp(112px, 31vw, 126px) !important;
    max-width: clamp(112px, 31vw, 126px) !important;
    height: 42px !important;
    object-fit: contain !important;
  }

  html body.knopa-live-page .codex-mobile-search-header__actions {
    gap: 6px !important;
  }

  html body.knopa-live-page .codex-mobile-search-header__icon-link {
    width: 42px !important;
    height: 42px !important;
    flex: 0 0 42px !important;
  }

  html body.knopa-live-page .codex-mobile-search-header__search-row {
    display: grid !important;
    grid-template-columns: clamp(132px, 37vw, 160px) minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: stretch !important;
  }

  html body.knopa-live-page .codex-mobile-search-header__catalog {
    width: auto !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  html body.knopa-live-page .codex-mobile-search-header__search-row #search,
  html body.knopa-live-page .codex-mobile-search-header__search-row #search.input-group,
  html body.knopa-live-page .codex-mobile-search-header__search-row #search .input-group {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  html body #product-category > .container.knopa-live-container,
  html body #product-search > .container.knopa-live-container,
  html body #product-special > .container.knopa-live-container,
  html body.route-product-category main > .container.knopa-live-container,
  html body.route-product-search main > .container.knopa-live-container,
  html body.route-product-special main > .container.knopa-live-container {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
  }

  html body #product-category .knopa-category-breadcrumb {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 8px !important;
    padding: 7px 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  html body #product-category .knopa-category-breadcrumb > li {
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    color: #9aa8b8 !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  html body #product-category .knopa-category-breadcrumb > li + li::before {
    content: "-" !important;
    display: inline-block !important;
    margin: 0 7px 0 0 !important;
    color: #b8c3cf !important;
    border: 0 !important;
    width: auto !important;
    height: auto !important;
  }

  html body #product-category .knopa-category-breadcrumb > li::after,
  html body #product-category .knopa-category-breadcrumb > li::before {
    border: 0 !important;
    box-shadow: none !important;
  }

  html body #product-category .knopa-category-breadcrumb a {
    color: #99a8b8 !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
  }

  html body #product-category .category-hero,
  html body #product-search .category-hero,
  html body #product-special .category-hero {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body #product-category .knopa-toolbar,
  html body #product-search .knopa-toolbar,
  html body #product-special .knopa-toolbar {
    width: 100% !important;
    max-width: 100% !important;
    margin: 10px 0 8px !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    box-sizing: border-box !important;
  }

  html body #product-category .knopa-toolbar-filter-button,
  html body #product-category .knopa-sort-links,
  html body #product-search .knopa-toolbar-filter-button,
  html body #product-search .knopa-sort-links,
  html body #product-special .knopa-toolbar-filter-button,
  html body #product-special .knopa-sort-links {
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  html body #product-category .knopa-limit-links,
  html body #product-search .knopa-limit-links,
  html body #product-special .knopa-limit-links {
    display: none !important;
  }

  html body #product-category .knopa-product-grid,
  html body #product-search .knopa-product-grid,
  html body #product-special .knopa-product-grid,
  html body.route-product-category .knopa-product-grid,
  html body.route-product-search .knopa-product-grid,
  html body.route-product-special .knopa-product-grid {
    width: 100% !important;
    max-width: 100% !important;
    margin: 8px 0 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    box-sizing: border-box !important;
  }

  html body #product-category .knopa-product-grid > .product-layout,
  html body #product-search .knopa-product-grid > .product-layout,
  html body #product-special .knopa-product-grid > .product-layout,
  html body.route-product-category .knopa-product-grid > .product-layout,
  html body.route-product-search .knopa-product-grid > .product-layout,
  html body.route-product-special .knopa-product-grid > .product-layout {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }
}
/* === /Knopa mobile category/listing alignment parity === */

/* === Knopa unified mobile product grids, 2026-07-06 === */
@media only screen and (max-width: 767px) {
  html body.route-common-home .knopa-home-products,
  html body.route-common-home .knopa-home-products .home-cats__container,
  html body.route-common-home .knopa-home-products .home-cats__content,
  html body.route-common-home .knopa-home-products .home-cat,
  html body.route-common-home .knopa-home-products .home-cat.active {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  html body #product-category .knopa-product-grid,
  html body #product-search .knopa-product-grid,
  html body #product-special .knopa-product-grid,
  html body #product-latest .knopa-product-grid,
  html body.route-product-category .knopa-product-grid,
  html body.route-product-search .knopa-product-grid,
  html body.route-product-special .knopa-product-grid,
  html body.route-product-latest .knopa-product-grid,
  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid,
  html body .knopa-module-products.knopa-product-grid {
    width: 100% !important;
    max-width: 100% !important;
    margin: 5px 0 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 5px !important;
    box-sizing: border-box !important;
  }

  html body #product-category .knopa-product-grid > .product-layout,
  html body #product-search .knopa-product-grid > .product-layout,
  html body #product-special .knopa-product-grid > .product-layout,
  html body #product-latest .knopa-product-grid > .product-layout,
  html body.route-product-category .knopa-product-grid > .product-layout,
  html body.route-product-search .knopa-product-grid > .product-layout,
  html body.route-product-special .knopa-product-grid > .product-layout,
  html body.route-product-latest .knopa-product-grid > .product-layout,
  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item,
  html body .knopa-module-products.knopa-product-grid > .product-layout {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x {
    grid-column: span 2 !important;
  }
}
/* === /Knopa unified mobile product grids === */

/* === Knopa product card photo edge + left meta, 2026-07-06 === */
html body .knopa-product-grid .product-preview,
html body .home-cat__list.knopa-product-grid .product-preview,
html body .knopa-module-products.knopa-product-grid .product-preview,
html body .knopa-related-products.knopa-product-grid .product-preview {
  overflow: hidden !important;
}

@media only screen and (min-width: 768px) {
  html body .knopa-product-grid .product-preview__photo-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper,
  html body .knopa-module-products.knopa-product-grid .product-preview__photo-wrapper,
  html body .knopa-related-products.knopa-product-grid .product-preview__photo-wrapper {
    width: calc(100% + 24px) !important;
    max-width: calc(100% + 24px) !important;
    margin: -12px -12px 12px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 12px 12px 0 0 !important;
    background: #fff !important;
  }

  html body .knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo,
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo,
  html body .knopa-module-products.knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo,
  html body .knopa-related-products.knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo,
  html body .knopa-product-grid .product-preview__photo,
  html body .home-cat__list.knopa-product-grid .product-preview__photo,
  html body .knopa-module-products.knopa-product-grid .product-preview__photo,
  html body .knopa-related-products.knopa-product-grid .product-preview__photo {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
}

html body .knopa-product-grid .product-min,
html body .home-cat__list.knopa-product-grid .product-min,
html body .knopa-module-products.knopa-product-grid .product-min,
html body .knopa-related-products.knopa-product-grid .product-min,
html body .knopa-product-grid .product-box-desc,
html body .home-cat__list.knopa-product-grid .product-box-desc,
html body .knopa-module-products.knopa-product-grid .product-box-desc,
html body .knopa-related-products.knopa-product-grid .product-box-desc,
html body .knopa-product-grid .knopa-pack-text,
html body .home-cat__list.knopa-product-grid .knopa-pack-text,
html body .knopa-module-products.knopa-product-grid .knopa-pack-text,
html body .knopa-related-products.knopa-product-grid .knopa-pack-text {
  display: block !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
  align-self: stretch !important;
  justify-content: flex-start !important;
}
/* === /Knopa product card photo edge + left meta === */

/* === Knopa product card media/text polish, 2026-07-06 === */
html body .knopa-product-grid .product-preview__panel,
html body .home-cat__list.knopa-product-grid .product-preview__panel,
html body .knopa-home-products .product-preview__panel,
html body .knopa-module-products.knopa-product-grid .product-preview__panel,
html body .knopa-related-products.knopa-product-grid .product-preview__panel {
  padding-left: 8px !important;
  padding-right: 8px !important;
  box-sizing: border-box !important;
}

html body .knopa-product-grid .product-preview__title,
html body .home-cat__list.knopa-product-grid .product-preview__title,
html body .knopa-home-products .product-preview__title,
html body .knopa-module-products.knopa-product-grid .product-preview__title,
html body .knopa-related-products.knopa-product-grid .product-preview__title,
html body .knopa-product-grid .product-preview__heading,
html body .home-cat__list.knopa-product-grid .product-preview__heading,
html body .knopa-home-products .product-preview__heading,
html body .knopa-module-products.knopa-product-grid .product-preview__heading,
html body .knopa-related-products.knopa-product-grid .product-preview__heading {
  width: 100% !important;
  max-width: 100% !important;
  font-family: Roboto, "Open Sans", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 16px !important;
  letter-spacing: .2px !important;
  color: #003c80 !important;
  text-align: left !important;
}

html body .knopa-product-grid .product-preview__prices,
html body .home-cat__list.knopa-product-grid .product-preview__prices,
html body .knopa-home-products .product-preview__prices,
html body .knopa-module-products.knopa-product-grid .product-preview__prices,
html body .knopa-related-products.knopa-product-grid .product-preview__prices {
  width: 100% !important;
  min-height: 0 !important;
  margin: 7px 0 7px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  text-align: left !important;
}

html body .knopa-product-grid .product-preview__prices span:not(.product-price-label),
html body .home-cat__list.knopa-product-grid .product-preview__prices span:not(.product-price-label),
html body .knopa-home-products .product-preview__prices span:not(.product-price-label),
html body .knopa-module-products.knopa-product-grid .product-preview__prices span:not(.product-price-label),
html body .knopa-related-products.knopa-product-grid .product-preview__prices span:not(.product-price-label),
html body .knopa-product-grid .product-preview__prices ins,
html body .home-cat__list.knopa-product-grid .product-preview__prices ins,
html body .knopa-home-products .product-preview__prices ins,
html body .knopa-module-products.knopa-product-grid .product-preview__prices ins,
html body .knopa-related-products.knopa-product-grid .product-preview__prices ins {
  font-size: 20px !important;
  line-height: 1.15 !important;
}

@media only screen and (min-width: 768px) {
  html body .knopa-product-grid .product-preview__photo-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper,
  html body .knopa-home-products .product-preview__photo-wrapper,
  html body .knopa-module-products.knopa-product-grid .product-preview__photo-wrapper,
  html body .knopa-related-products.knopa-product-grid .product-preview__photo-wrapper {
    width: calc(100% + 3rem) !important;
    max-width: calc(100% + 3rem) !important;
    margin: -1.5rem -1.5rem 10px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 8px 8px 0 0 !important;
    background: #fff !important;
  }

  html body .knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .knopa-home-products .product-preview__photo-wrapper img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .knopa-module-products.knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .knopa-related-products.knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]) {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1.08) !important;
    transform-origin: center center !important;
  }
}

@media only screen and (max-width: 767px) {
  html body .knopa-product-grid .product-preview__panel,
  html body .home-cat__list.knopa-product-grid .product-preview__panel,
  html body .knopa-home-products .product-preview__panel,
  html body .knopa-module-products.knopa-product-grid .product-preview__panel,
  html body .knopa-related-products.knopa-product-grid .product-preview__panel {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }

  html body .knopa-product-grid .product-preview__photo-wrapper,
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper,
  html body .knopa-home-products .product-preview__photo-wrapper,
  html body .knopa-module-products.knopa-product-grid .product-preview__photo-wrapper,
  html body .knopa-related-products.knopa-product-grid .product-preview__photo-wrapper {
    width: calc(100% + 16px) !important;
    max-width: calc(100% + 16px) !important;
    margin: -8px -8px 9px !important;
  }

  html body .knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .home-cat__list.knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .knopa-home-products .product-preview__photo-wrapper img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .knopa-module-products.knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .knopa-related-products.knopa-product-grid .product-preview__photo-wrapper img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]) {
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1.08) !important;
    transform-origin: center center !important;
  }
}
/* === /Knopa product card media/text polish === */

/* === Knopa product card title parity, 2026-07-06 === */
html body .knopa-product-grid .product-preview__title,
html body .home-cat__list.knopa-product-grid .product-preview__title,
html body .knopa-home-products .product-preview__title,
html body .knopa-module-products.knopa-product-grid .product-preview__title,
html body .knopa-related-products.knopa-product-grid .product-preview__title {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: calc(14px * 1.32 * 3) !important;
  margin: 0 0 8px !important;
  color: #0a4a7a !important;
  text-decoration: none !important;
  text-align: left !important;
}

html body .knopa-product-grid .product-preview__heading,
html body .home-cat__list.knopa-product-grid .product-preview__heading,
html body .knopa-home-products .product-preview__heading,
html body .knopa-module-products.knopa-product-grid .product-preview__heading,
html body .knopa-related-products.knopa-product-grid .product-preview__heading {
  display: -webkit-box !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
  font-family: Roboto, "Open Sans", Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.32 !important;
  letter-spacing: 0 !important;
  color: #0a4a7a !important;
  text-align: left !important;
}
/* === /Knopa product card title parity === */

/* === Knopa home desktop product card edge fit, 2026-07-06 === */
@media only screen and (min-width: 1024px) {
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview {
    overflow: hidden !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__photo-wrapper {
    display: flex !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    width: calc(100% + 2px) !important;
    max-width: calc(100% + 2px) !important;
    min-height: 228px !important;
    height: clamp(228px, 16vw, 252px) !important;
    margin: -1px -1px 10px !important;
    padding: 0 !important;
    border-radius: 8px 8px 0 0 !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]) {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1.13) !important;
    transform-origin: center center !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__panel-wrapper,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__panel {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    align-items: stretch !important;
    text-align: left !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__panel {
    padding: 8px 10px 12px !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__title,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__heading,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-status,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__prices,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__controls,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .count-wrapper,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-box-desc,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-min,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .knopa-pack-text {
    align-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-box-desc,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-min,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .knopa-pack-text {
    justify-content: flex-start !important;
    color: #8a94a6 !important;
  }
}
/* === /Knopa home desktop product card edge fit === */

/* === Knopa home desktop grid size parity with category cards, 2026-07-06 === */
@media only screen and (min-width: 1024px) {
  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    gap: 14px !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 10px 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item {
    display: flex !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x {
    grid-column: span 2 !important;
  }

  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item > .product-preview,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item > .product-preview {
    width: 100% !important;
    max-width: 100% !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__photo-wrapper {
    width: calc(100% + 2px) !important;
    max-width: calc(100% + 2px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 1 / 1 !important;
    margin: -1px -1px 10px !important;
    padding: 0 !important;
  }
}

@media only screen and (min-width: 1600px) {
  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
    grid-template-columns: repeat(auto-fill, minmax(285px, 1fr)) !important;
  }
}
/* === /Knopa home desktop grid size parity with category cards === */

/* === Knopa home desktop five-column product grid, 2026-07-06 === */
@media only screen and (min-width: 1024px) and (max-width: 1279.98px) {
  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}

@media only screen and (min-width: 1280px) {
  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid > .home-cat__item--2x {
    grid-column: span 2 !important;
  }
}
/* === /Knopa home desktop five-column product grid === */

/* === Knopa home desktop full-bleed product card media, 2026-07-06 === */
@media only screen and (min-width: 1024px) {
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview {
    overflow: hidden !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview > a.product-preview__photo-wrapper,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__photo-wrapper {
    width: calc(100% + 30px) !important;
    max-width: calc(100% + 30px) !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: -15px -15px 10px !important;
    padding: 0 !important;
    border-radius: 8px 8px 0 0 !important;
    background: #fff !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__photo-wrapper > img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]) {
    position: static !important;
    inset: auto !important;
    display: block !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview > .product-preview__panel-wrapper,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__panel-wrapper {
    width: calc(100% + 30px) !important;
    max-width: calc(100% + 30px) !important;
    margin: 0 -15px !important;
    display: flex !important;
    flex: 1 1 auto !important;
    box-sizing: border-box !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview .product-preview__panel {
    width: 100% !important;
    max-width: none !important;
    padding: 10px 10px 12px !important;
    background: #fff !important;
    border-radius: 0 0 8px 8px !important;
    box-shadow: none !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__title,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__heading,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-status,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__prices,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-preview__controls,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .count-wrapper,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-box-desc,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .product-min,
  html body.route-common-home .knopa-home-products .home-cat__list.knopa-product-grid .knopa-pack-text {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }
}
/* === /Knopa home desktop full-bleed product card media === */

/* === Knopa catalog desktop full-bleed product card media, 2026-07-06 === */
@media only screen and (min-width: 1024px) {
  html body .catalog-list .product-preview {
    overflow: hidden !important;
  }

  html body .catalog-list .product-preview > a.product-preview__photo-wrapper,
  html body .catalog-list .product-preview__photo-wrapper {
    width: calc(100% + 30px) !important;
    max-width: calc(100% + 30px) !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: -15px -15px 10px !important;
    padding: 0 !important;
    border-radius: 8px 8px 0 0 !important;
    background: #fff !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  html body .catalog-list .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .catalog-list .product-preview__photo-wrapper > img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .catalog-list img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]) {
    position: static !important;
    inset: auto !important;
    display: block !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  html body .catalog-list .product-preview > .product-preview__panel-wrapper,
  html body .catalog-list .product-preview__panel-wrapper {
    width: calc(100% + 30px) !important;
    max-width: calc(100% + 30px) !important;
    margin: 0 -15px !important;
    display: flex !important;
    flex: 1 1 auto !important;
    box-sizing: border-box !important;
  }

  html body .catalog-list .product-preview .product-preview__panel {
    width: 100% !important;
    max-width: none !important;
    padding: 10px 10px 12px !important;
    background: #fff !important;
    border-radius: 0 0 8px 8px !important;
    box-shadow: none !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  html body .catalog-list .product-preview__title,
  html body .catalog-list .product-preview__heading,
  html body .catalog-list .product-status,
  html body .catalog-list .product-preview__prices,
  html body .catalog-list .product-preview__controls,
  html body .catalog-list .count-wrapper,
  html body .catalog-list .product-box-desc,
  html body .catalog-list .product-min,
  html body .catalog-list .knopa-pack-text {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }
}
/* === /Knopa catalog desktop full-bleed product card media === */

/* === Knopa shared desktop full-bleed product cards, 2026-07-06 === */
@media only screen and (min-width: 1024px) {
  html body .knopa-product-grid > .product-layout > .product-preview {
    overflow: hidden !important;
  }

  html body .knopa-product-grid > .product-layout > .product-preview > a.product-preview__photo-wrapper,
  html body .knopa-product-grid > .product-layout > .product-preview .product-preview__photo-wrapper {
    width: calc(100% + 30px) !important;
    max-width: calc(100% + 30px) !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: -15px -15px 10px !important;
    padding: 0 !important;
    border-radius: 8px 8px 0 0 !important;
    background: #fff !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  html body .knopa-product-grid > .product-layout > .product-preview > a.product-preview__photo-wrapper > img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .knopa-product-grid > .product-layout > .product-preview .product-preview__photo-wrapper > img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body .knopa-product-grid > .product-layout > .product-preview img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]) {
    position: static !important;
    inset: auto !important;
    display: block !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  html body .knopa-product-grid > .product-layout > .product-preview > .product-preview__panel-wrapper,
  html body .knopa-product-grid > .product-layout > .product-preview .product-preview__panel-wrapper {
    width: calc(100% + 30px) !important;
    max-width: calc(100% + 30px) !important;
    margin: 0 -15px !important;
    display: flex !important;
    flex: 1 1 auto !important;
    box-sizing: border-box !important;
  }

  html body .knopa-product-grid > .product-layout > .product-preview .product-preview__panel {
    width: 100% !important;
    max-width: none !important;
    padding: 10px 10px 12px !important;
    background: #fff !important;
    border-radius: 0 0 8px 8px !important;
    box-shadow: none !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  html body .knopa-product-grid > .product-layout > .product-preview .product-preview__title,
  html body .knopa-product-grid > .product-layout > .product-preview .product-preview__heading,
  html body .knopa-product-grid > .product-layout > .product-preview .product-status,
  html body .knopa-product-grid > .product-layout > .product-preview .product-preview__prices,
  html body .knopa-product-grid > .product-layout > .product-preview .product-preview__controls,
  html body .knopa-product-grid > .product-layout > .product-preview .count-wrapper,
  html body .knopa-product-grid > .product-layout > .product-preview .product-box-desc,
  html body .knopa-product-grid > .product-layout > .product-preview .product-min,
  html body .knopa-product-grid > .product-layout > .product-preview .knopa-pack-text {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }
}
/* === /Knopa shared desktop full-bleed product cards === */

/* === Knopa high-specificity desktop product media override, 2026-07-06 === */
@media only screen and (min-width: 1024px) {
  html body #product-category .knopa-product-grid > .product-layout > .product-preview,
  html body #product-search .knopa-product-grid > .product-layout > .product-preview,
  html body #product-special .knopa-product-grid > .product-layout > .product-preview {
    overflow: hidden !important;
  }

  html body #product-category .knopa-product-grid > .product-layout > .product-preview > .product-preview__photo-wrapper,
  html body #product-search .knopa-product-grid > .product-layout > .product-preview > .product-preview__photo-wrapper,
  html body #product-special .knopa-product-grid > .product-layout > .product-preview > .product-preview__photo-wrapper {
    width: calc(100% + 30px) !important;
    max-width: calc(100% + 30px) !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    margin: -15px -15px 10px !important;
    padding: 0 !important;
    border-radius: 8px 8px 0 0 !important;
    background: #fff !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  html body #product-category .knopa-product-grid > .product-layout > .product-preview > .product-preview__photo-wrapper > img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body #product-search .knopa-product-grid > .product-layout > .product-preview > .product-preview__photo-wrapper > img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]),
  html body #product-special .knopa-product-grid > .product-layout > .product-preview > .product-preview__photo-wrapper > img.product-preview__photo:not([src*="no_image"]):not([src*="placeholder"]) {
    position: static !important;
    inset: auto !important;
    display: block !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  html body #product-category .knopa-product-grid > .product-layout > .product-preview > .product-preview__panel-wrapper,
  html body #product-search .knopa-product-grid > .product-layout > .product-preview > .product-preview__panel-wrapper,
  html body #product-special .knopa-product-grid > .product-layout > .product-preview > .product-preview__panel-wrapper {
    width: calc(100% + 30px) !important;
    max-width: calc(100% + 30px) !important;
    margin: 0 -15px !important;
    display: flex !important;
    flex: 1 1 auto !important;
    box-sizing: border-box !important;
  }

  html body #product-category .knopa-product-grid > .product-layout > .product-preview .product-preview__panel,
  html body #product-search .knopa-product-grid > .product-layout > .product-preview .product-preview__panel,
  html body #product-special .knopa-product-grid > .product-layout > .product-preview .product-preview__panel {
    width: 100% !important;
    max-width: none !important;
    padding: 10px 10px 12px !important;
    background: #fff !important;
    border-radius: 0 0 8px 8px !important;
    box-shadow: none !important;
    transform: none !important;
    box-sizing: border-box !important;
  }
}
/* === /Knopa high-specificity desktop product media override === */

/* === Knopa home final compact spacing after categories, 2026-07-07 === */
html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
  margin: 0 !important;
}

html body.route-common-home .knopa-home-categories {
  box-shadow: 0 14px 34px -30px rgba(7, 18, 37, .16), 0 1px 0 rgba(221, 232, 243, .72) !important;
}

@media only screen and (min-width: 1024px) {
  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
    gap: 12px !important;
  }
}

@media only screen and (max-width: 767.98px) {
  html body.route-common-home .home-cats.knopa-home-products {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html body.route-common-home .knopa-home-products .home-cats__container,
  html body.route-common-home .knopa-home-products .home-cats__content,
  html body.route-common-home .knopa-home-products .home-cat,
  html body.route-common-home .knopa-home-products .home-cat.active,
  html body.route-common-home .knopa-home-products .home-cat > ul.home-cat__list.knopa-product-grid,
  html body.route-common-home .knopa-home-products .home-cat.active > ul.home-cat__list.knopa-product-grid {
    width: 100% !important;
    max-width: 100% !important;
  }

  html body.route-common-home .knopa-home-category--banner {
    min-height: 108px !important;
  }

  html body.route-common-home .knopa-home-category--banner .knopa-home-category-copy {
    grid-column: 1 / -1 !important;
    width: 68% !important;
    max-width: 68% !important;
    gap: 3px !important;
  }

  html body.route-common-home .knopa-home-category--banner .knopa-home-category-name {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 12.5px !important;
    line-height: 1.08 !important;
  }
}
/* === /Knopa home final compact spacing after categories === */

/* === Knopa mobile header search: wider field and solid button, 2026-07-08 === */
@media (max-width: 767.98px) {
  html body .codex-mobile-search-header__search-row {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  html body .codex-mobile-search-header__catalog {
    flex: 0 0 112px !important;
    width: 112px !important;
    max-width: 112px !important;
    min-width: 0 !important;
    padding-right: 10px !important;
    padding-left: 10px !important;
  }

  html body .codex-mobile-search-header__catalog span {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
  }

  html body .codex-mobile-search-header__search-row #search,
  html body .codex-mobile-search-header__search-row #search.input-group,
  html body .codex-mobile-search-header__search-row #search .input-group {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 52px !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 2px solid #e6004f !important;
    border-radius: 15px !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  html body .codex-mobile-search-header__search-row #search input {
    display: block !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 126px 0 16px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #10233e !important;
    font-size: 15.5px !important;
    font-weight: 800 !important;
    line-height: 48px !important;
  }

  html body .codex-mobile-search-header__search-row .knopa-search-voice {
    position: absolute !important;
    top: 50% !important;
    right: 88px !important;
    z-index: 3 !important;
    width: 30px !important;
    height: 30px !important;
    margin-top: 0 !important;
    transform: translateY(-50%) !important;
    color: #637082 !important;
    font-size: 20px !important;
    line-height: 30px !important;
  }

  html body .codex-mobile-search-header__search-row #search .input-group-btn {
    position: absolute !important;
    top: 5px !important;
    right: 5px !important;
    z-index: 4 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 78px !important;
    width: 78px !important;
    min-width: 78px !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 !important;
  }

  html body .codex-mobile-search-header__search-row #search .btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 78px !important;
    min-width: 78px !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 10px !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: #e6004f !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    text-shadow: none !important;
    -webkit-font-smoothing: antialiased !important;
    text-rendering: geometricPrecision !important;
  }

  html body .codex-mobile-search-header__search-row #search .btn span {
    display: inline-block !important;
    min-width: 0 !important;
    overflow: visible !important;
    font-size: inherit !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 374.98px) {
  html body .codex-mobile-search-header__catalog {
    flex-basis: 104px !important;
    width: 104px !important;
    max-width: 104px !important;
    font-size: 12.5px !important;
  }

  html body .codex-mobile-search-header__search-row #search input {
    padding-right: 116px !important;
    padding-left: 14px !important;
    font-size: 14.5px !important;
  }

  html body .codex-mobile-search-header__search-row .knopa-search-voice {
    right: 80px !important;
  }

  html body .codex-mobile-search-header__search-row #search .input-group-btn,
  html body .codex-mobile-search-header__search-row #search .btn {
    width: 72px !important;
    min-width: 72px !important;
  }

  html body .codex-mobile-search-header__search-row #search .btn {
    padding-right: 8px !important;
    padding-left: 8px !important;
    font-size: 13px !important;
  }
}
/* === /Knopa mobile header search === */

/* === Knopa mobile header search hard layout override, 2026-07-08 === */
@media (max-width: 767.98px) {
  html body .mob-header.codex-mobile-search-header .mob-header__content > .codex-mobile-search-header__search-row {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-top: 8px !important;
    overflow: visible !important;
  }

  html body .mob-header.codex-mobile-search-header .mob-header__content > .codex-mobile-search-header__search-row > .codex-mobile-search-header__catalog {
    flex: 0 0 112px !important;
    width: 112px !important;
    max-width: 112px !important;
    min-width: 0 !important;
  }

  html body .mob-header.codex-mobile-search-header .mob-header__content > .codex-mobile-search-header__search-row > #search,
  html body .mob-header.codex-mobile-search-header .mob-header__content > .codex-mobile-search-header__search-row > #search.input-group {
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-left: 0 !important;
  }
}

@media (max-width: 374.98px) {
  html body .mob-header.codex-mobile-search-header .mob-header__content > .codex-mobile-search-header__search-row > .codex-mobile-search-header__catalog {
    flex-basis: 104px !important;
    width: 104px !important;
    max-width: 104px !important;
  }
}
/* === /Knopa mobile header search hard layout override === */

/* === Knopa mobile input zoom guard, 2026-07-08 === */
@media (max-width: 767.98px) {
  html {
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
  }

  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  img,
  video,
  iframe,
  table {
    max-width: 100%;
  }

  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
  select,
  textarea {
    max-width: 100% !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
  }

  input[type="text"],
  input[type="search"],
  input[type="number"],
  input[type="tel"],
  input[type="email"],
  input[type="password"],
  input:not([type]),
  select {
    min-height: 42px;
  }

  textarea {
    min-height: 44px;
  }

  html body .codex-mobile-search-header__search-row #search input,
  html body .mob-header.codex-mobile-search-header .codex-mobile-search-header__search-row #search input {
    font-size: 16px !important;
    line-height: 48px !important;
  }

  .knopa-cart-qty-control input[name^="quantity"],
  .product-thumb input[name="quantity"],
  .product-layout input[name="quantity"],
  #product input[name="quantity"],
  #input-quantity,
  html body input[name="quantity"],
  html body input[name^="quantity["],
  html body input[id^="knopa-qty-"],
  html body input[id^="knopa-home-qty-"] {
    font-size: 16px !important;
    line-height: 1.2 !important;
  }

  .knopa-checkout-fields input,
  .knopa-checkout-carrier-fields input,
  .knopa-checkout-comment textarea,
  .knopa-quick-view-modal input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
  .knopa-quick-view-modal select,
  .knopa-quick-view-modal textarea {
    font-size: 16px !important;
  }

  html body.knopa-live-page .knopa-category-page .product-preview__controls .count-wrapper.knopa-qty input.count-wrapper__input[name="quantity"],
  html body.knopa-live-page #product-category .product-preview__controls .count-wrapper.knopa-qty input.count-wrapper__input[name="quantity"],
  html body.knopa-live-page #product-search .product-preview__controls .count-wrapper.knopa-qty input.count-wrapper__input[name="quantity"],
  html body.knopa-live-page .knopa-wishlist-page .product-preview__controls .count-wrapper.knopa-qty input.count-wrapper__input[name="quantity"],
  html body.knopa-live-page .knopa-product-grid .product-preview__controls .count-wrapper.knopa-qty input.count-wrapper__input[name="quantity"] {
    font-size: 16px !important;
  }

  html body.knopa-live-page#checkout-cart .knopa-checkout-options .knopa-np-field input[type="text"],
  html body.knopa-live-page#checkout-cart .knopa-checkout-options--delivery .knopa-np-field input[type="text"],
  html body.knopa-live-page #checkout-cart .knopa-checkout-options .knopa-np-field input[type="text"],
  html body.knopa-live-page #checkout-cart .knopa-checkout-options--delivery .knopa-np-field input[type="text"] {
    font-size: 16px !important;
  }
}
/* === /Knopa mobile input zoom guard === */
