:root {
  --ndx-color-accent: #599406;
  --ndx-color-accent-hover: #4a7a05;
  --ndx-color-btn: #599406;
  --ndx-color-btn-hover: #4a7a05;
  --ndx-font-weight-heading: 600;
  --ndx-color-price: #599406;
  --ndx-color-surface-warm: #f8f8ef;
  --ndx-color-surface-muted: #f8f8ef;
  --ndx-color-card-bg: #ffffff;
  --ndx-color-card-border: #d4d4cc;
  --ndx-color-text: #2e3607;
  --ndx-color-text-muted: #4a5240;
  --ndx-color-border: #d4d4cc;
  --ndx-header-bg: #f8f8ef;
  --ndx-color-page-top: #f8f8ef;
  --ndx-header-glow: #f8f8ef;
  --ndx-color-nav-bg: #383e31;
  --ndx-color-nav-link: #ebf4c3;
  --ndx-color-nav-link-hover: #ffffff;
  --ndx-color-footer-bg: #599406;
  --ndx-color-footer-text: #ffffff;
  --ndx-color-footer-heading: #f4fbd4;
  --ndx-ir-footer-gradient: linear-gradient(
    180deg,
    #b8dc4a 0%,
    #7faf3c 38%,
    #599406 72%,
    #4a7a05 100%
  );
  --ndx-body-bg: #ffffff;
  --ndx-ir-page-bg: #f8f8ef;
  --ndx-ir-nav-gradient: linear-gradient(180deg, #95b637 0%, #82a439 100%);
  --ndx-font-family: Arial, Helvetica, sans-serif;
  --ndx-header-h: 9rem;
  --ndx-header-h-compact: 4.75rem;
}

html {
  background: url("../img/gbline.png") repeat-x center top var(--ndx-ir-page-bg);
  scroll-padding-top: var(--ndx-header-h);
}

a:not(.btn) {
  color: var(--ndx-color-accent);
}

a:not(.btn):hover {
  color: var(--ndx-color-accent-hover);
}

body {
  font-family: var(--ndx-font-family);
  font-size: 12px;
  line-height: 1.1667;
  background: var(--ndx-body-bg) url("../img/imgbg.png") no-repeat center top;
}

#header {
  background-color: #fff;
}

#wrapper {
  max-width: 61.3125rem; /* legacy 981px + padding */
  margin: 0 auto;
}

#wrapper .columns-container.container {
  max-width: 61.3125rem;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
}

#header .header-bottom {
  background-color: var(--ndx-ir-page-bg);
  border-bottom: 1px solid var(--ndx-color-border);
  min-height: 0;
  padding: 0.625rem 0;
}

#header .header-bottom__logo {
  flex: 0 0 auto;
  margin: 0;
  line-height: 0;
}

#header .header-bottom .header-bottom__h1,
#header .header-bottom .header-bottom__h1.mb-0 {
  margin: 0;
  line-height: 0;
}

#header .header-bottom .header-bottom__h1 img,
#header .header-bottom .header-bottom__logo img,
#header .header-bottom .header-bottom__logo .logo {
  display: block;
  width: auto;
  height: auto;
  max-width: 12.5rem;
  max-height: 3.5rem;
  object-fit: contain;
}

/* JPG logo: białe tło → multiply w krem (bez zielonego glow — dawał plamę). */
#header .header-bottom__logo .navbar-brand {
  display: block;
  line-height: 0;
}

#header .header-bottom__logo .logo {
  border-radius: 0.35rem;
  mix-blend-mode: multiply;
}

.ndx-header-top {
  background-color: var(--ndx-ir-page-bg);
  overflow: visible;
}

.ndx-header-top__row {
  min-height: 1.5rem;
  padding: 0.125rem 0;
}

.ndx-header-top__nav {
  display: flex;
  align-items: center;
}

.ndx-header-top .ndx-cmsnav__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 1.35rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ndx-header-top .ndx-cmsnav__item {
  margin: 0;
}

.ndx-header-top .ndx-cmsnav__link {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  color: #555;
  font-size: 0.8125rem;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
}

.ndx-header-top .ndx-cmsnav__link .material-icons.ndx-cmsnav__icon {
  font-size: 1rem;
  line-height: 1;
  color: #74a144;
}

.ndx-header-top .ndx-cmsnav__icon--num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0.875rem;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1;
  color: #74a144;
}

.ndx-header-top .ndx-cmsnav__link:hover,
.ndx-header-top .ndx-cmsnav__link:focus {
  color: #444;
  text-decoration: none;
}

.ndx-header-top .ndx-cmsnav__label:hover,
.ndx-header-top .ndx-cmsnav__link:focus-visible .ndx-cmsnav__label {
  text-decoration: underline;
}

.ndx-header-top__selectors {
  font-size: 0.8125rem;
  color: #555;
  overflow: visible;
}

.ndx-header-top__label {
  color: #666;
  white-space: nowrap;
}

.ndx-header-top__selectors .language-selector,
.ndx-header-top__selectors .currency-selector {
  position: relative;
  margin: 0;
}

.ndx-header-top__selectors .language-selector::after,
.ndx-header-top__selectors .currency-selector::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 0.375rem;
}

.ndx-header-top__selectors .language-selector > span,
.ndx-header-top__selectors .currency-selector > span {
  color: #74a144;
  cursor: pointer;
  white-space: nowrap;
  font-weight: 600;
}

.ndx-header-top__selectors .language-selector > span::after,
.ndx-header-top__selectors .currency-selector > span::after {
  content: " \25BE";
}

.ndx-header-top__selectors .language-selector > ul,
.ndx-header-top__selectors .currency-selector > ul {
  position: absolute;
  top: calc(100% + 0.375rem);
  right: 0;
  z-index: 1050;
  display: none;
  min-width: 8rem;
  margin: 0;
  padding: 0.5rem 0;
  list-style: none;
  background: var(--ndx-ir-page-bg);
  color: var(--ndx-color-text);
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.5rem;
  box-shadow: 0 0.625rem 1.875rem rgba(46, 54, 7, 0.18);
}

.ndx-header-top__selectors .language-selector:hover > ul,
.ndx-header-top__selectors .language-selector:focus-within > ul,
.ndx-header-top__selectors .currency-selector:hover > ul,
.ndx-header-top__selectors .currency-selector:focus-within > ul {
  display: block;
}

.ndx-header-top__selectors .language-selector > ul a,
.ndx-header-top__selectors .currency-selector > ul a {
  display: block;
  padding: 0.375rem 1rem;
  color: var(--ndx-color-text);
  white-space: nowrap;
  text-decoration: none;
}

.ndx-header-top__selectors .language-selector > ul .current a,
.ndx-header-top__selectors .currency-selector > ul .current a {
  color: var(--ndx-color-accent);
  font-weight: 700;
}

.ndx-header-top__selectors .language-selector > ul a:hover,
.ndx-header-top__selectors .currency-selector > ul a:hover {
  color: var(--ndx-color-accent-hover);
  background: var(--ndx-color-surface-muted);
  text-decoration: none;
}

.header-nav-full-width.ndx-main-nav {
  background: transparent;
  padding: 0 0 0.375rem;
}

.header-nav-full-width.ndx-main-nav .header-nav-full-width__container {
  position: relative;
  max-width: 61.3125rem;
  margin: 0 auto;
  padding: 0;
  overflow: visible;
  background: var(--ndx-ir-nav-gradient);
  border-radius: 0.5rem 0.5rem 0 0;
}

.header-nav-full-width.ndx-main-nav .ps-mainmenu--desktop,
.header-nav-full-width.ndx-main-nav .ps-mainmenu__desktop {
  overflow: visible;
}

.header-nav-full-width.ndx-main-nav .ps-mainmenu--desktop {
  background: none;
}

@media (min-width: 992px) {
  .header-nav-full-width.ndx-main-nav .ps-mainmenu__mobile-toggle {
    display: none !important;
  }
}

.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  gap: 0 0.25rem;
  margin: 0;
  padding: 0.35rem 0.75rem 0.45rem;
  list-style: none;
}

.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree-item-wrapper {
  display: flex;
  align-items: center;
}

.header-nav-full-width.ndx-main-nav .ndx-ir-menu-item--has-dropdown .ps-mainmenu__tree-item-wrapper {
  position: relative;
}

/* Mostek hover — pod linkiem PRODUKTY (jak koszyk) */
.header-nav-full-width.ndx-main-nav .ndx-ir-menu-item--has-dropdown .ps-mainmenu__tree-item-wrapper::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 0.75rem;
  z-index: 1001;
}

.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree-link {
  color: #f5f9ec;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.2;
  padding: 0.45rem 0.85rem;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree-link:hover,
.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree-link:focus,
.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree-item:hover > .ps-mainmenu__tree-item-wrapper .ps-mainmenu__tree-link,
.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree-item:focus-within > .ps-mainmenu__tree-item-wrapper .ps-mainmenu__tree-link,
.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree-item.current .ps-mainmenu__tree-link {
  color: #fff;
}

.header-nav-full-width.ndx-main-nav .ndx-ir-menu-item--has-dropdown .ps-mainmenu__tree-link::after {
  content: " \25BE";
  font-size: 0.75em;
  opacity: 0.9;
}

.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree-dropdown-toggle {
  display: none;
}

.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree-item:hover > .submenu,
.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree-item:focus-within > .submenu {
  display: block;
}

.header-nav-full-width.ndx-main-nav .ps-mainmenu__tree-item[data-id="category-116"] {
  position: static;
}

.header-nav-full-width.ndx-main-nav .ndx-ir-products.submenu {
  left: 0;
  right: 0;
  width: 100%;
  margin-top: -0.75rem;
  padding-top: 0.75rem;
}

.ndx-ir-products__panel {
  background: var(--ndx-ir-page-bg);
  border: 1px solid var(--ndx-color-border);
  border-top: 2px solid #6d9430;
  border-radius: 0 0 0.65rem 0.65rem;
  box-shadow: 0 0.35rem 1.25rem rgba(46, 54, 7, 0.1);
  padding: 0;
  width: 100%;
  max-width: 61.3125rem;
  max-height: min(70vh, 28rem);
  margin: 0 auto;
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.ndx-ir-products__featured {
  margin: 0;
  padding: 0.65rem 1rem;
  border-bottom: 1px solid var(--ndx-color-border);
  background: linear-gradient(180deg, #eef4d8 0%, var(--ndx-ir-page-bg) 100%);
}

.ndx-ir-products__featured .ndx-ir-products__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem 0.65rem;
}

.ndx-ir-products__grid {
  display: grid;
  gap: 0.85rem 0;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  padding: 0.85rem 0.65rem 1rem;
}

.ndx-ir-products__col {
  min-width: 0;
  padding: 0 0.65rem;
  border-right: 1px solid rgba(212, 212, 204, 0.85);
}

.ndx-ir-products__col:nth-child(5n),
.ndx-ir-products__col:last-child {
  border-right: 0;
}

.ndx-ir-products__heading {
  margin: 0 0 0.5rem;
  padding-bottom: 0.35rem;
  border-bottom: 1px solid rgba(130, 164, 57, 0.28);
  color: var(--ndx-color-accent);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.3;
  text-transform: uppercase;
}

.ndx-ir-products__list {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

a.ndx-ir-products__link {
  display: block;
  padding: 0.28rem 0.4rem;
  border-radius: 0.3rem;
  color: var(--ndx-color-text);
  font-size: 0.75rem;
  line-height: 1.35;
  text-decoration: none;
  transition: background-color 0.15s ease, color 0.15s ease;
}

a.ndx-ir-products__link--all {
  display: inline-flex;
  align-items: center;
  padding: 0.35rem 0.85rem;
  border-radius: 999px;
  background: #82a439;
  color: #f5f9ec;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

a.ndx-ir-products__link--all:hover,
a.ndx-ir-products__link--all:focus {
  background: #6d9430;
  color: #fff;
  text-decoration: none;
}

a.ndx-ir-products__link:not(.ndx-ir-products__link--all):hover,
a.ndx-ir-products__link:not(.ndx-ir-products__link--all):focus {
  background: rgba(130, 164, 57, 0.14);
  color: #4a7a05;
  text-decoration: none;
}

@media (max-width: 1199.98px) {
  .ndx-ir-products__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .ndx-ir-products__col:nth-child(5n) {
    border-right: 1px solid rgba(212, 212, 204, 0.85);
  }

  .ndx-ir-products__col:nth-child(3n),
  .ndx-ir-products__col:last-child {
    border-right: 0;
  }
}

@media (max-width: 767.98px) {
  .ndx-ir-products__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ndx-ir-products__col:nth-child(3n) {
    border-right: 1px solid rgba(212, 212, 204, 0.85);
  }

  .ndx-ir-products__col:nth-child(2n),
  .ndx-ir-products__col:last-child {
    border-right: 0;
  }
}

.ndx-header-tools {
  background: none;
  min-height: 0;
  min-width: 0;
  max-width: none;
  padding: 0;
  margin-left: auto;
}

.left-column {
  background-color: var(--ndx-color-surface-warm);
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.25rem;
  padding: 0.5rem;
}

.left-column .block,
.left-column section {
  margin-bottom: 0.75rem;
}

.wrapper,
.center-column.page {
  background-color: var(--ndx-ir-page-bg);
  padding: 0.4375rem;
}

.page-content--home {
  background-color: var(--ndx-ir-page-bg);
}

.page-content--home .ps-featuredproducts .section-title,
.page-content--home .ps-featuredproducts .ndx-section-title,
.page-content--home .ps-newproducts .section-title,
.page-content--home .ps-newproducts .ndx-section-title {
  background: url("../img/blockheader.png") no-repeat 0 0;
  background-size: 100% 100%;
  border: none;
  border-radius: 0;
  color: #fff;
  display: block;
  font-size: 1.125rem;
  margin: 0 0 0.75rem;
  padding: 0.9375rem 0.9375rem 0.9375rem 3.125rem;
  text-shadow: 0 1px 0 #000;
  text-transform: none;
}

.page-content--home .ndx-section-title--active {
  background: url("../img/blockheader.png") no-repeat 0 0;
  background-size: 100% 100%;
}

.page-content--home .product-miniature {
  background-color: var(--ndx-ir-page-bg);
  border-color: var(--ndx-color-border);
  min-height: 12.625rem;
}

.page-content--home .product-miniature .price {
  color: var(--ndx-color-price);
}

.ndx-ir-footer-before {
  background-color: #f8f8ef;
}

.ndx-home-seo {
  background-color: var(--ndx-color-surface-warm);
  margin-top: 1.5rem;
}

.ndx-home-about__contact {
  background-color: var(--ndx-ir-page-bg);
  border: 1px solid var(--ndx-color-border);
}

/* Footer styles: themes/ir/assets/css/footer.css */

/* ============================================================
   Shared controls — IR palette on Hummingbird base
   ============================================================ */
.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-hover-color: #fff;
  --bs-btn-active-color: #fff;
  --bs-btn-disabled-color: #fff;
  --bs-btn-bg: var(--ndx-color-accent);
  --bs-btn-border-color: var(--ndx-color-accent);
  --bs-btn-hover-bg: var(--ndx-color-accent-hover);
  --bs-btn-hover-border-color: var(--ndx-color-accent-hover);
  --bs-btn-active-bg: var(--ndx-color-accent-hover);
  --bs-btn-active-border-color: var(--ndx-color-accent-hover);
  --bs-btn-disabled-bg: var(--ndx-color-accent);
  --bs-btn-disabled-border-color: var(--ndx-color-accent);
  color: #fff;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
}

.btn-outline-primary {
  --bs-btn-color: var(--ndx-color-accent);
  --bs-btn-border-color: var(--ndx-color-accent);
  --bs-btn-hover-bg: var(--ndx-color-accent);
  --bs-btn-hover-border-color: var(--ndx-color-accent);
  --bs-btn-active-bg: var(--ndx-color-accent-hover);
  --bs-btn-active-border-color: var(--ndx-color-accent-hover);
}

.form-control:focus,
.form-select:focus {
  border-color: var(--ndx-color-accent);
  box-shadow: 0 0 0 0.2rem rgba(89, 148, 6, 0.2);
}

.page-header {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0.5rem 0.875rem 0.25rem;
  margin-bottom: 0.5rem;
}

.page-header h1,
.page-header .h1,
.page-title,
.page-header .page-title-section,
.page-header .page-title-section__title {
  color: var(--ndx-color-text);
  font-size: 1.125rem;
  font-weight: 700;
  margin: 0;
}

/* ============================================================
   Category description — truncate long SEO text
   ============================================================ */
.category__description-block {
  margin: 0.5rem 0 0.75rem;
}

.category__description {
  margin: 0;
}

.category__description.is-collapsed {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
}

.category__description-toggle {
  display: inline-block;
  margin: 0.35rem 0 0;
  padding: 0;
  border: 0;
  background: none;
  color: var(--ndx-color-accent);
  font: inherit;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
}

.category__description-toggle:hover,
.category__description-toggle:focus {
  color: var(--ndx-color-accent-hover);
  text-decoration: underline;
}

/* ============================================================
   Category / product listing
   ============================================================ */
.left-column .block-categories,
.left-column [id*="search_filters"],
.left-column .ps-category-tree,
#left-column > section,
#left-column > div {
  background-color: var(--ndx-color-surface-muted);
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.25rem;
  padding: 0.75rem;
  margin-bottom: 0.75rem;
}

#left-column .h6,
#left-column h3,
#left-column h4,
.left-column .block-categories .h6 {
  color: var(--ndx-color-text);
}

#left-column a {
  color: var(--ndx-color-accent);
}

#left-column a:hover {
  color: var(--ndx-color-accent-hover);
}

#products .product-miniature,
.featured-products .product-miniature {
  background-color: var(--ndx-color-surface-muted);
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.25rem;
}

#products .product-miniature__title,
.featured-products .product-miniature__title {
  color: var(--ndx-color-text);
}

#products .product-miniature__title:hover,
.featured-products .product-miniature__title:hover {
  color: var(--ndx-color-accent);
}

#products .product-miniature__price,
#products .product-miniature .price,
.featured-products .product-miniature__price {
  color: var(--ndx-color-price);
  font-weight: 700;
}

#products .product-miniature .product-img-link,
#products .product-miniature img {
  border: 1px solid var(--ndx-color-border);
}

.product-flag.new,
.product-flags .new,
.product-flag.on-sale,
.product-flags .discount {
  background-color: #990000;
  color: #fff;
}

.products-sort-order .select-title,
.facet-title,
.h6.facet-title {
  color: var(--ndx-color-text);
}

.pagination .page-link {
  color: var(--ndx-color-accent);
}

.pagination .page-item.active .page-link {
  background-color: var(--ndx-color-accent);
  border-color: var(--ndx-color-accent);
  color: #fff;
}

/* ============================================================
   Product page
   ============================================================ */
#product .product-information,
#product .product-container:not(.ndx-ir-product__card),
#product .tabs,
#product .product-tabs {
  background-color: var(--ndx-color-surface-muted);
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.25rem;
}

#product .ndx-ir-product__card.product-container,
#product .ndx-ir-product__content {
  background-color: #f7f9e8;
  border: 1px solid #aaaaaa;
  border-radius: 15px;
}

#product .product-prices,
#product .current-price,
#product .product-price,
#product .price {
  color: var(--ndx-color-price);
}

#product .current-price .price,
#product .product-price.current-price {
  font-weight: 700;
}

#product .product-cover img,
#product .product-images img,
#product .js-qv-product-cover {
  border: 1px solid var(--ndx-color-border);
}

#product .nav-tabs .nav-link.active,
#product .tabs .nav-link.active {
  color: var(--ndx-color-accent);
  border-bottom-color: var(--ndx-color-accent);
}

#product .product-discount .discount,
#product .has-discount .discount {
  background-color: #990000;
}

/* ============================================================
   Cart + checkout
   ============================================================ */
.cart-summary,
.cart-detailed-totals,
.checkout-step,
#checkout .card,
.order-confirmation-table {
  background-color: var(--ndx-color-surface-muted);
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.25rem;
}

.page-cart .cart-grid__aside-wrapper {
  background-color: var(--ndx-ir-page-bg);
  border: 1px solid #d4d4cc;
  border-radius: 10px;
  padding: 10px;
}

.page-cart .cart-grid__aside-wrapper .cart-summary,
.page-cart .cart-grid__aside-wrapper .cart-detailed-totals,
.page-cart .cart-grid__aside-wrapper .cart-summary__totals {
  background-color: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
}

.page-cart .product-line__item--small-info {
  display: none;
}

.cart-summary .cart-summary-line .value,
.cart-total .value,
.cart-summary-totals .cart-total .value {
  color: var(--ndx-color-price);
  font-weight: 700;
}

.checkout-step .step-title,
.cart-grid__aside-wrapper h2,
.checkout-step.-current .step-title {
  color: var(--ndx-color-text);
}

.checkout-step.-current .content {
  border-color: var(--ndx-color-accent);
}

.cart-empty .cart-empty__icon,
.page-not-found .icon {
  color: var(--ndx-color-accent);
}

/* ============================================================
   Customer account (login / register / addresses / orders)
   ============================================================ */
.login__form-wrapper,
.login__register-prompt,
.register-form,
.page-customer-account .page-content,
#authentication .login-form,
#identity .account-information,
#history .orders,
#addresses .address,
.account-links .link-item {
  background-color: var(--ndx-color-surface-muted);
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.25rem;
}

.account-links .link-item {
  color: var(--ndx-color-text);
}

.account-links .link-item:hover {
  border-color: var(--ndx-color-accent);
  color: var(--ndx-color-accent);
}

.page-customer-account a,
#history a,
#addresses a {
  color: var(--ndx-color-accent);
}

.page-customer-account a:hover,
#history a:hover,
#addresses a:hover {
  color: var(--ndx-color-accent-hover);
}

/* ============================================================
   CMS + contact
   ============================================================ */
.page-content--general,
.page-content--cms,
#cms .rich-text,
#contact .contact-form,
.contact-form,
.contact-rich {
  background-color: var(--ndx-ir-page-bg);
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.5rem;
  padding: 1rem;
  margin-top: 0;
}

.page-content--general h1,
.page-content--cms h1,
.contact-form h1,
.rich-text h2,
.rich-text h3 {
  color: var(--ndx-color-text);
}

.page-content--general a,
.page-content--cms a,
.contact-form a {
  color: var(--ndx-color-accent);
}

.page-content--general a:hover,
.page-content--cms a:hover,
.contact-form a:hover {
  color: var(--ndx-color-accent-hover);
}

/* CMS — Opinie / trust content */
.page-content--cms .ndx-ir-cms-trust {
  display: grid;
  gap: 1.25rem;
}

.page-content--cms .ndx-ir-cms-trust__lead {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.55;
  color: var(--ndx-color-text);
}

.page-content--cms .ndx-ir-cms-trust__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.page-content--cms .ndx-ir-cms-trust__stats li {
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem 0.65rem;
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.5rem;
  background: #fff;
  text-align: center;
}

.page-content--cms .ndx-ir-cms-trust__stats strong {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--ndx-color-accent);
}

.page-content--cms .ndx-ir-cms-trust__stats span {
  font-size: 0.72rem;
  line-height: 1.3;
  color: var(--ndx-color-text-muted);
}

.page-content--cms .ndx-ir-cms-trust__card,
.page-content--cms .ndx-ir-cms-trust__sister {
  padding: 1rem 1.1rem;
  border: 1px solid rgba(130, 164, 57, 0.28);
  border-radius: 0.65rem;
  background: #fff;
}

.page-content--cms .ndx-ir-cms-trust__card--book {
  display: grid;
  grid-template-columns: 7.5rem 1fr;
  gap: 1rem 1.15rem;
  align-items: center;
}

.page-content--cms .ndx-ir-cms-trust__book {
  margin: 0;
  justify-self: center;
}

.page-content--cms .ndx-ir-cms-trust__book img {
  display: block;
  width: 7.5rem;
  max-width: 100%;
  height: auto;
  border-radius: 0.35rem;
  box-shadow:
    0 0.35rem 0.9rem rgba(46, 54, 7, 0.18),
    0 0.1rem 0.25rem rgba(46, 54, 7, 0.12);
  background: #f0f0e8;
}

.page-content--cms .ndx-ir-cms-trust__book-body {
  min-width: 0;
}

.page-content--cms .ndx-ir-cms-trust__book-body .ndx-ir-cms-trust__card-title {
  margin-bottom: 0.45rem;
}

.page-content--cms .ndx-ir-cms-trust__book-body p:last-child {
  margin-bottom: 0;
}

@media (max-width: 419.98px) {
  .page-content--cms .ndx-ir-cms-trust__card--book {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
  }

  .page-content--cms .ndx-ir-cms-trust__book img {
    width: 6.5rem;
  }

  .page-content--cms .ndx-ir-cms-trust__book-body {
    text-align: left;
  }
}

.page-content--cms .ndx-ir-cms-trust__eyebrow {
  margin: 0 0 0.35rem;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ndx-color-accent);
}

.page-content--cms .ndx-ir-cms-trust__card-title,
.page-content--cms .ndx-ir-cms-trust__sister-title {
  margin: 0 0 0.55rem;
  font-family: inherit;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--ndx-color-text);
}

.page-content--cms .ndx-ir-cms-trust__card p,
.page-content--cms .ndx-ir-cms-trust__sister p {
  margin: 0 0 0.65rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--ndx-color-text);
}

.page-content--cms .ndx-ir-cms-trust__card p:last-child,
.page-content--cms .ndx-ir-cms-trust__sister p:last-child {
  margin-bottom: 0;
}

.page-content--cms .ndx-ir-cms-trust__sister {
  display: grid;
  grid-template-columns: 7.5rem 1fr;
  gap: 1rem 1.15rem;
  align-items: center;
  background: linear-gradient(180deg, #f8f8ef 0%, #fff 100%);
  border-color: rgba(89, 148, 6, 0.35);
}

.page-content--cms .ndx-ir-cms-trust__sister-logo {
  margin: 0;
  justify-self: center;
}

.page-content--cms .ndx-ir-cms-trust__sister-logo a {
  display: block;
  line-height: 0;
}

.page-content--cms .ndx-ir-cms-trust__sister-logo img {
  display: block;
  width: 7.5rem;
  max-width: 100%;
  height: auto;
  border-radius: 0.35rem;
  background: #fff;
  padding: 0.45rem;
  box-shadow:
    0 0.25rem 0.7rem rgba(46, 54, 7, 0.12),
    0 0.05rem 0.2rem rgba(46, 54, 7, 0.08);
}

.page-content--cms .ndx-ir-cms-trust__sister-body {
  min-width: 0;
}

.page-content--cms .ndx-ir-cms-trust__sister-body .ndx-ir-cms-trust__sister-title {
  margin-bottom: 0.45rem;
}

.page-content--cms .ndx-ir-cms-trust__sister-body p:last-child {
  margin-bottom: 0;
}

@media (max-width: 419.98px) {
  .page-content--cms .ndx-ir-cms-trust__sister {
    grid-template-columns: 1fr;
    justify-items: center;
  }

  .page-content--cms .ndx-ir-cms-trust__sister-logo img {
    width: 6.75rem;
  }

  .page-content--cms .ndx-ir-cms-trust__sister-body {
    text-align: left;
    width: 100%;
  }
}

.page-content--cms .ndx-ir-cms-trust__note {
  font-size: 0.8rem !important;
  color: var(--ndx-color-text-muted) !important;
}

.page-content--cms .ndx-ir-cms-trust__cta {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.45;
}

.page-content--cms .ndx-ir-cms-trust__reasons {
  padding: 1rem 1.1rem;
  border: 1px solid rgba(130, 164, 57, 0.28);
  border-radius: 0.65rem;
  background: #fff;
}

.page-content--cms .ndx-ir-cms-trust__reasons-list {
  display: grid;
  gap: 0.65rem;
  margin: 0.75rem 0 0;
  padding: 0;
  list-style: none;
  counter-reset: ndx-reason;
}

.page-content--cms .ndx-ir-cms-trust__reasons-list li {
  display: grid;
  grid-template-columns: 1.75rem 1fr;
  gap: 0.65rem;
  align-items: start;
  counter-increment: ndx-reason;
}

.page-content--cms .ndx-ir-cms-trust__reasons-list li::before {
  content: counter(ndx-reason);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 999px;
  background: linear-gradient(135deg, #95b637, #599406);
  color: #fff;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1;
}

.page-content--cms .ndx-ir-cms-trust__reason-text {
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--ndx-color-text);
  padding-top: 0.2rem;
}

@media (max-width: 575.98px) {
  .page-content--cms .ndx-ir-cms-trust__stats {
    grid-template-columns: 1fr;
  }

  .page-content--cms .ndx-ir-cms-trust__stats li {
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 0.5rem 0.75rem;
    text-align: left;
  }
}

/* CMS — info / shipping / payments blocks */
.page-content--cms .ndx-ir-cms-trust__notice {
  margin: 0;
  padding: 0.9rem 1.05rem;
  border: 1px solid rgba(180, 120, 20, 0.35);
  border-radius: 0.65rem;
  background: linear-gradient(180deg, #fff8e8 0%, #fffdf6 100%);
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--ndx-color-text);
}

.page-content--cms .ndx-ir-cms-trust__notice strong {
  display: block;
  margin-bottom: 0.25rem;
  font-size: 0.8rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #9a6a10;
}

.page-content--cms .ndx-ir-cms-trust__facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.page-content--cms .ndx-ir-cms-trust__facts li {
  display: grid;
  gap: 0.15rem;
  padding: 0.75rem 0.65rem;
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.5rem;
  background: #fff;
  text-align: center;
}

.page-content--cms .ndx-ir-cms-trust__facts strong {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--ndx-color-accent);
}

.page-content--cms .ndx-ir-cms-trust__facts span {
  font-size: 0.72rem;
  line-height: 1.3;
  color: var(--ndx-color-text-muted);
}

.page-content--cms .ndx-ir-cms-trust__bank {
  margin: 0.75rem 0 0;
  padding: 0.9rem 1rem;
  border: 1px dashed rgba(89, 148, 6, 0.45);
  border-radius: 0.5rem;
  background: #f8faf3;
}

.page-content--cms .ndx-ir-cms-trust__bank-label {
  margin: 0 0 0.35rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--ndx-color-text-muted);
}

.page-content--cms .ndx-ir-cms-trust__iban {
  margin: 0 0 0.65rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.35;
  color: var(--ndx-color-text);
  word-break: break-word;
}

.page-content--cms .ndx-ir-cms-trust__bank-meta {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.45;
  color: var(--ndx-color-text);
}

.page-content--cms .ndx-ir-cms-trust__bank-meta + .ndx-ir-cms-trust__bank-meta {
  margin-top: 0.15rem;
}

.page-content--cms .ndx-ir-cms-trust__pay-img {
  display: block;
  max-width: min(100%, 22rem);
  height: auto;
  margin: 0.75rem 0 0;
  border-radius: 0.35rem;
}

.page-content--cms .ndx-ir-cms-trust__list {
  display: grid;
  gap: 0.55rem;
  margin: 0.75rem 0 0;
  padding: 0;
  list-style: none;
}

.page-content--cms .ndx-ir-cms-trust__list li {
  position: relative;
  padding-left: 1.15rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--ndx-color-text);
}

.page-content--cms .ndx-ir-cms-trust__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55rem;
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: var(--ndx-color-accent);
}

@media (max-width: 575.98px) {
  .page-content--cms .ndx-ir-cms-trust__facts {
    grid-template-columns: 1fr;
  }

  .page-content--cms .ndx-ir-cms-trust__facts li {
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 0.5rem 0.75rem;
    text-align: left;
  }
}

@media (max-width: 991.98px) {
  .header-bottom__logo {
    position: static;
    left: auto;
    top: auto;
  }

  #header .header-bottom {
    min-height: 0;
  }

  #header .header-bottom .header-bottom__h1 img,
  #header .header-bottom .header-bottom__logo img,
  #header .header-bottom .header-bottom__logo .logo {
    max-height: 2.5rem;
    max-width: 8rem;
  }
}

/* ============================================================
   Header layout — search, cart, sticky (wzorzec lawana)
   ============================================================ */
#header .ndx-header-top .container-md,
#header .header-bottom__container.container-md,
#header .header-nav-full-width .container-md,
#header .header-nav-full-width .header-nav-full-width__container {
  max-width: 61.3125rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

#header .header-bottom__row {
  align-items: center;
  flex-wrap: nowrap;
  gap: 1rem;
}

#header .header-bottom .ndx-header-search {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: stretch;
  padding: 0;
  position: relative;
  z-index: 2;
}

.ndx-header-side,
#blockcart-wrapper {
  position: relative;
  z-index: 3;
  flex: 0 0 auto;
}

.ndx-header-contact {
  flex: 0 0 auto;
}

#header .header-bottom .ndx-header-search .ndx-searchbar-wrap,
#header .header-bottom .ndx-header-search #_desktop_ps_searchbar,
#header .header-bottom .ndx-header-search .ps-searchbar,
#header .header-bottom .ndx-header-search #ps_searchbar {
  width: 100%;
  max-width: none;
}

#header .header-bottom .ndx-header-search .ps-searchbar__form,
#header .header-bottom .ndx-header-search .ndx-ir-searchbar__form {
  position: relative;
  display: flex;
  align-items: stretch;
  width: 100%;
  margin: 0;
  padding: 0;
  background: #fff;
  border: 1px solid #b8c98a;
  border-radius: 999px;
  overflow: hidden;
  box-shadow: none;
}

#header .header-bottom .ndx-header-search .ps-searchbar__input {
  flex: 1 1 auto;
  width: auto;
  min-width: 0;
  height: 2.375rem;
  padding: 0 0.5rem 0 1rem;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--ndx-color-text);
  font-size: 0.875rem;
  box-shadow: none;
}

#header .header-bottom .ndx-header-search .ps-searchbar__input::placeholder {
  color: #999;
  opacity: 1;
}

#header .header-bottom .ndx-header-search .ps-searchbar__input:focus {
  outline: none;
  border-color: transparent;
  box-shadow: none;
}

#header .header-bottom .ndx-ir-searchbar__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 2.75rem;
  width: 2.75rem;
  height: 2.375rem;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: linear-gradient(180deg, #8fc424 0%, #599406 100%);
  color: #fff;
  cursor: pointer;
}

#header .header-bottom .ndx-ir-searchbar__submit .material-icons {
  font-size: 1.25rem;
  line-height: 1;
}

#header .header-bottom .ndx-ir-searchbar__submit:hover,
#header .header-bottom .ndx-ir-searchbar__submit:focus {
  background: linear-gradient(180deg, #7fb01f 0%, #4a7a05 100%);
}

#header .header-bottom .ndx-header-search .ps-searchbar__magnifier {
  display: none;
}

#header .header-bottom .ndx-header-search .ps-searchbar__clear {
  position: absolute;
  right: 3rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--ndx-color-text-muted);
}

.ndx-header-contact__inner {
  line-height: 1.25;
}

.ndx-header-contact__link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: inherit;
  text-decoration: none;
}

.ndx-header-contact__link:hover,
.ndx-header-contact__link:focus {
  color: inherit;
  text-decoration: none;
}

.ndx-header-contact__link:hover .ndx-header-contact__email,
.ndx-header-contact__link:focus .ndx-header-contact__email {
  color: var(--ndx-color-accent);
}

.ndx-header-contact__icon {
  flex: 0 0 auto;
  font-size: 1.5rem;
  line-height: 1;
  color: #74a144;
}

.ndx-header-contact__body {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}

.ndx-header-contact__email {
  color: #333;
  font-size: 0.875rem;
  font-weight: 700;
  white-space: nowrap;
}

#blockcart-wrapper,
.ndx-header-side,
#header .header-bottom {
  overflow: visible;
}

.ndx-cart {
  position: relative;
}

/* Mostek hover — tylko pod linkiem koszyka (nie pod cały dropdown) */
.ndx-cart::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  width: auto;
  height: 0.75rem;
}

.ndx-cart .header {
  background: transparent;
  padding: 0;
  border: 0;
}

#header .header-bottom .ndx-cart__link {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  color: inherit;
  text-decoration: none;
  white-space: nowrap;
}

#header .header-bottom .ndx-cart__link:hover,
#header .header-bottom .ndx-cart__link:focus {
  color: inherit;
  text-decoration: none;
}

#header .header-bottom .ndx-cart__icon-box {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 2.75rem;
  width: 2.75rem;
  height: 2.75rem;
  background: #e8f2c8;
  border-radius: 0.5rem;
}

#header .header-bottom .ndx-cart__icon {
  font-size: 1.5rem;
  line-height: 1;
  color: var(--ndx-color-accent);
}

#header .header-bottom .ndx-cart__badge {
  position: absolute;
  top: -0.3rem;
  right: -0.3rem;
  min-width: 1.125rem;
  height: 1.125rem;
  padding: 0 0.25rem;
  border-radius: 999px;
  background: var(--ndx-color-accent);
  color: #fff;
  font-size: 0.6875rem;
  font-weight: 700;
  line-height: 1.125rem;
  text-align: center;
}

#header .header-bottom .ndx-cart__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.1rem;
  line-height: 1.2;
}

#header .header-bottom .ndx-cart__title {
  color: var(--ndx-color-accent);
  font-size: 1rem;
  font-weight: 700;
}

#header .header-bottom .ndx-cart__view {
  color: #555;
  font-size: 0.8125rem;
  font-weight: 400;
}

#header .header-bottom .ndx-cart__link:hover .ndx-cart__title,
#header .header-bottom .ndx-cart__link:focus .ndx-cart__title {
  color: var(--ndx-color-accent-hover);
}

.ndx-cart .body {
  position: absolute;
  top: calc(100% + 0.75rem);
  right: 0;
  z-index: 1050;
  display: none;
  flex-direction: column;
  min-width: 26.875rem;
  max-height: min(calc(100vh - 6rem), 32rem);
  margin-top: 0;
  padding: 1.375rem 1.625rem;
  overflow: hidden;
  text-align: left;
  background: var(--ndx-ir-page-bg);
  color: var(--ndx-color-text);
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.5rem;
  box-shadow: 0 0.625rem 1.875rem rgba(46, 54, 7, 0.18);
  font-size: 1rem;
}

.ndx-cart .body .cart-currency {
  flex-shrink: 0;
  margin: 0 0 0.875rem;
  padding-bottom: 0.625rem;
  border-bottom: 1px solid var(--ndx-color-border);
  color: var(--ndx-color-text-muted);
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.ndx-cart .body .cart-lines {
  flex: 1 1 auto;
  min-height: 0;
  max-height: 14rem;
  margin: 0;
  padding-right: 0.5rem;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: auto;
  scrollbar-color: rgba(94, 123, 43, 0.65) rgba(94, 123, 43, 0.12);
  -webkit-overflow-scrolling: touch;
}

.ndx-cart .body .cart-lines::-webkit-scrollbar {
  width: 0.5rem;
}

.ndx-cart .body .cart-lines::-webkit-scrollbar-track {
  border-radius: 999px;
  background: rgba(94, 123, 43, 0.12);
}

.ndx-cart .body .cart-lines::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(94, 123, 43, 0.65);
}

.ndx-cart .body .cart-line {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 1.125rem;
  align-items: start;
  padding-bottom: 0.875rem;
  border-bottom: 1px solid var(--ndx-color-border);
  margin-bottom: 1rem;
}

.ndx-cart .body .cart-line:last-child {
  margin-bottom: 0;
}

.ndx-cart .body .cart-subtotals {
  flex-shrink: 0;
  margin: 0.875rem 0 0;
  padding-top: 0.875rem;
  border-top: 1px solid var(--ndx-color-border);
}

.ndx-cart .body .product-name {
  font-weight: 600;
  line-height: 1.35;
}

.ndx-cart .body .product-price {
  font-weight: 600;
  white-space: nowrap;
  text-align: right;
}

.ndx-cart .body .remove {
  display: inline-block;
  margin-top: 0.3125rem;
  color: var(--ndx-color-accent);
  font-size: 0.9375rem;
  text-decoration: none;
}

.ndx-cart .body .remove:hover,
.ndx-cart .body .remove:focus {
  color: var(--ndx-color-accent-hover);
  text-decoration: underline;
}

.ndx-cart .body .summary-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 1.25rem;
  margin: 0.375rem 0;
}

.ndx-cart .body .summary-row.total,
.ndx-cart .body .cart-total {
  flex-shrink: 0;
  font-size: 1.125rem;
  font-weight: 700;
  border-top: 1px solid var(--ndx-color-border);
  padding-top: 0.625rem;
  margin-top: 0.625rem;
}

.ndx-cart .body .summary-row.total .value,
.ndx-cart .body .cart-total .value {
  color: var(--ndx-color-price);
}

.ndx-cart:hover .body,
.ndx-cart:focus-within .body {
  display: flex;
}

@media (min-width: 992px) {
  #header.js-sticky-header {
    position: sticky;
    top: 0;
    z-index: 1030;
    transform: none !important;
  }

  #header.js-sticky-header.is-hidden {
    transform: none !important;
  }

  #header.js-sticky-header .ndx-header-top,
  #header.js-sticky-header .header-nav-full-width {
    transition: opacity 0.25s ease, max-height 0.25s ease, visibility 0.25s ease;
    max-height: 6rem;
  }

  #header.js-sticky-header.is-compact .ndx-header-top,
  #header.js-sticky-header.is-compact:not(.is-products-menu-open) .header-nav-full-width {
    overflow: hidden;
    opacity: 0;
    max-height: 0;
    visibility: hidden;
    pointer-events: none;
    border-width: 0;
    margin: 0;
    padding: 0;
  }

  #header.js-sticky-header.is-compact.is-products-menu-open .header-nav-full-width,
  #header.js-sticky-header.is-products-menu-open .header-nav-full-width {
    overflow: visible;
    opacity: 1;
    max-height: none;
    visibility: visible;
    pointer-events: auto;
  }

  #header.js-sticky-header.is-compact.is-logo-menu-open .header-nav-full-width {
    overflow: visible;
    opacity: 1;
    max-height: none;
    visibility: visible;
    pointer-events: auto;
    position: fixed;
    top: var(--ndx-ir-compact-nav-top, 4.75rem);
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1040;
    margin: 0;
    padding: 0 0 0.375rem;
    border-width: 0;
    background: transparent;
  }

  #header.js-sticky-header.is-compact.is-logo-menu-open .header-nav-full-width__container {
    max-width: 61.3125rem;
    margin: 0 auto;
    padding: 0 1rem;
  }

  #header.js-sticky-header.is-compact.is-logo-menu-open .ps-mainmenu__tree > .ps-mainmenu__tree-item:not([data-id="category-116"]) {
    display: none !important;
  }

  #header.js-sticky-header.is-compact.is-logo-menu-open .ps-mainmenu__tree-item[data-id="category-116"] {
    position: static;
    width: 100%;
  }

  #header.js-sticky-header.is-compact.is-logo-menu-open .ps-mainmenu__tree-item[data-id="category-116"] .ps-mainmenu__tree-link {
    display: none;
  }

  #header.js-sticky-header.is-compact.is-logo-menu-open .ps-mainmenu__tree-item[data-id="category-116"] .submenu,
  #header.js-sticky-header.is-compact.is-logo-menu-open .ps-mainmenu__tree-item[data-id="category-116"] .ndx-ir-products {
    display: block !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    width: 100%;
  }

  #header.js-sticky-header.is-compact.is-logo-menu-open .ndx-ir-products__panel {
    max-width: none;
    margin: 0.35rem auto 0.5rem;
  }

  #header.js-sticky-header.is-compact.is-logo-menu-open .ndx-ir-products__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  #header.js-sticky-header.is-compact .ndx-ir-logo-menu-trigger {
    cursor: pointer;
  }

  #header.js-sticky-header.is-compact,
  #header.js-sticky-header.is-scrolled {
    box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.12);
  }
}

@media (prefers-reduced-motion: reduce) {
  #header.js-sticky-header .ndx-header-top,
  #header.js-sticky-header .header-nav-full-width {
    transition: none !important;
  }
}

/* Brands grid */
.brand__list {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr);
  list-style: none;
  margin: 0;
  padding: 0;
}

@media (min-width: 576px) {
  .brand__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  .brand__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) {
  .brand__list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Category tree — kompaktowe drzewo (wzorzec lawana, paleta IR) */
#left-column .category-tree,
.left-column .category-tree {
  background: linear-gradient(180deg, #383e31 0%, #2e3607 50%, #383e31 100%);
  border: 1px solid #2e3607;
  border-radius: 0.25rem;
  padding: 0;
  overflow: hidden;
}

.category-tree ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.category-tree li {
  margin: 0;
}

.category-tree > ul > li,
.category-tree > ul > li > ul > li {
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.category-tree > ul > li:first-child,
.category-tree > ul > li > ul > li:first-child {
  border-top: none;
}

#left-column .category-tree a,
.left-column .category-tree a {
  display: block;
  box-sizing: border-box;
  padding: 10px;
  margin: 0;
  min-height: 2.5rem;
  color: var(--ndx-color-nav-link);
  font-size: 0.875rem;
  line-height: 1.25;
  text-decoration: none;
  background: transparent;
  transition: color 0.15s ease, background-color 0.15s ease;
}

#left-column .category-tree a.category-tree__link--current,
.left-column .category-tree a.category-tree__link--current {
  background-color: var(--ndx-color-accent);
  color: #fff;
}

#left-column .category-tree a:hover,
#left-column .category-tree a:focus,
.left-column .category-tree a:hover,
.left-column .category-tree a:focus {
  color: #fff;
  background-color: rgba(46, 54, 7, 0.85);
  text-decoration: none;
}

#left-column .category-tree div ul a,
.left-column .category-tree div ul a {
  padding: 10px 10px 10px 1.9rem;
  font-size: 0.8125rem;
  color: #d4e88a;
}

#left-column .category-tree div div ul a,
.left-column .category-tree div div ul a {
  padding-left: 2.9rem;
  font-size: 0.75rem;
}

/* Product listing — ulepszenia z lawana */
#products .product-miniature__title,
.featured-products .product-miniature__title {
  display: block;
  text-align: center;
}

#products .product-miniature__prices,
.featured-products .product-miniature__prices {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  width: 100%;
  text-align: right;
}

#products .product-miniature__price,
#products .product-miniature .price,
.featured-products .product-miniature__price {
  white-space: nowrap;
}

#products .product-miniature__add.btn-primary,
.featured-products .product-miniature__add.btn-primary,
#product .product__add-to-cart-button.btn-primary {
  --bs-btn-bg: var(--ndx-color-accent);
  --bs-btn-border-color: var(--ndx-color-accent);
  --bs-btn-hover-bg: var(--ndx-color-accent-hover);
  --bs-btn-hover-border-color: var(--ndx-color-accent-hover);
}

/* Product page — miniatury i accordion */
#product .product__name {
  padding-top: 10px;
  padding-bottom: 10px;
}

#product .product__add-to-cart.add {
  margin-left: 10px;
  margin-right: 10px;
}

#product .product__thumbnails-list {
  gap: 1.25rem 1.75rem;
  grid-template-columns: repeat(auto-fill, minmax(7.25rem, max-content));
  overflow: visible;
}

#product .product__thumbnail {
  display: block;
  width: calc(5rem + 22px);
  height: calc(5rem + 22px);
  margin: 0;
  padding: 0;
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.25rem;
  background-color: #fff;
  line-height: 0;
  overflow: visible;
  flex-shrink: 0;
}

#product .product__thumbnail.active {
  border-color: var(--ndx-color-accent);
  box-shadow: inset 0 4px 0 0 rgba(89, 148, 6, 0.35);
}

#product .product__bottom .accordion-button {
  color: var(--ndx-color-text);
}

#product .product__bottom .accordion-button:not(.collapsed) {
  color: var(--ndx-color-accent);
}

#product .product__bottom .accordion-body {
  background-color: var(--ndx-color-surface-muted);
}

/* Checkout — delivery & payment cards (Magiczne style, IR greens) */
#checkout .delivery-options__list,
#order .delivery-options__list,
#checkout .payment-options__list,
#order .payment-options__list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

#checkout .delivery-option__item,
#order .delivery-option__item,
#checkout .payment-option,
#order .payment-option {
  background: var(--ndx-color-surface-warm);
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.625rem;
  box-shadow: none;
  margin: 0;
  overflow: hidden;
  padding: 0;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

#checkout .delivery-option__item:hover,
#order .delivery-option__item:hover,
#checkout .payment-option:hover,
#order .payment-option:hover {
  border-color: var(--ndx-color-accent);
  box-shadow: 0 0.25rem 0.75rem rgba(89, 148, 6, 0.08);
}

#checkout .delivery-option__item:has(.form-check-input:checked),
#order .delivery-option__item:has(.form-check-input:checked),
#checkout .payment-option:has(.payment-option__input:checked),
#order .payment-option:has(.payment-option__input:checked) {
  background: #fff;
  border-color: var(--ndx-color-accent);
  box-shadow: 0 0 0 1px var(--ndx-color-accent), 0 0.25rem 0.75rem rgba(89, 148, 6, 0.1);
}

#checkout .delivery-option__label,
#order .delivery-option__label {
  align-items: center;
  color: var(--ndx-color-text);
  cursor: pointer;
  display: grid;
  gap: 0.25rem 0.75rem;
  grid-template-columns: minmax(0, 1fr) auto;
  margin: 0;
  padding: 0.875rem 1rem;
}

#checkout .delivery-option__left,
#order .delivery-option__left {
  align-items: center;
  display: flex;
  gap: 0.65rem;
  grid-column: 1;
  min-width: 0;
}

#checkout .delivery-option__check,
#order .delivery-option__check {
  display: flex;
  flex: 0 0 auto;
  margin: 0;
  padding: 0;
}

#checkout .delivery-option__check .form-check-input,
#order .delivery-option__check .form-check-input,
#checkout .payment-option__input.form-check-input,
#order .payment-option__input.form-check-input {
  --bs-form-check-bg: #fff;
  background-color: #fff;
  border-color: rgba(46, 54, 7, 0.35);
  cursor: pointer;
  float: none;
  height: 1.2rem;
  margin: 0;
  position: static;
  width: 1.2rem;
}

#checkout .delivery-option__check .form-check-input:checked,
#order .delivery-option__check .form-check-input:checked,
#checkout .payment-option__input.form-check-input:checked,
#order .payment-option__input.form-check-input:checked {
  background-color: var(--ndx-color-accent);
  border-color: var(--ndx-color-accent);
}

#checkout .delivery-option__check .form-check-input:focus,
#order .delivery-option__check .form-check-input:focus,
#checkout .payment-option__input.form-check-input:focus,
#order .payment-option__input.form-check-input:focus {
  border-color: var(--ndx-color-accent);
  box-shadow: 0 0 0 0.2rem rgba(89, 148, 6, 0.2);
}

#checkout .delivery-option__carrier-name,
#order .delivery-option__carrier-name {
  color: var(--ndx-color-text);
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.3;
}

#checkout .delivery-option__item:has(.form-check-input:checked) .delivery-option__carrier-name,
#order .delivery-option__item:has(.form-check-input:checked) .delivery-option__carrier-name {
  color: var(--ndx-color-accent-hover);
}

#checkout .delivery-option__carrier-logo,
#order .delivery-option__carrier-logo {
  display: block;
  max-height: 1.75rem;
  max-width: 4.5rem;
  object-fit: contain;
}

#checkout .delivery-option__content,
#order .delivery-option__content {
  color: var(--ndx-color-text-muted);
  font-size: 0.8125rem;
  grid-column: 1;
  line-height: 1.35;
  padding: 0 0 0 calc(1.2rem + 0.65rem);
}

#checkout .delivery-option__price,
#order .delivery-option__price {
  align-self: center;
  color: var(--ndx-color-price);
  font-size: 0.9375rem;
  font-weight: 700;
  grid-column: 2;
  grid-row: 1 / span 2;
  white-space: nowrap;
}

#checkout .delivery-option__extra,
#order .delivery-option__extra {
  border-top: 1px solid var(--ndx-color-border);
  color: var(--ndx-color-text-muted);
  font-size: 0.875rem;
  padding: 0.75rem 1rem;
}

#checkout .delivery-option__extra:not([data-active]),
#order .delivery-option__extra:not([data-active]) {
  display: none;
}

#checkout .payment-option__label,
#order .payment-option__label {
  align-items: center;
  color: var(--ndx-color-text);
  cursor: pointer;
  display: flex;
  gap: 0.75rem;
  margin: 0;
  min-height: 3.25rem;
  padding: 0.875rem 1rem;
  width: 100%;
}

#checkout .payment-option__input.form-check-input,
#order .payment-option__input.form-check-input {
  flex: 0 0 auto;
}

#checkout .payment-option__logo,
#order .payment-option__logo {
  display: block;
  flex: 0 0 auto;
  max-height: 1.75rem;
  max-width: 5.5rem;
  object-fit: contain;
  width: auto;
}

#checkout .payment-option__text,
#order .payment-option__text {
  color: var(--ndx-color-text);
  flex: 1 1 auto;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.35;
  min-width: 0;
}

#checkout .payment-option:has(.payment-option__input:checked) .payment-option__text,
#order .payment-option:has(.payment-option__input:checked) .payment-option__text {
  color: var(--ndx-color-accent-hover);
}

#checkout .payment-option__additional-information,
#order .payment-option__additional-information {
  border-top: 1px solid rgba(89, 148, 6, 0.15);
  color: var(--ndx-color-text-muted);
  font-size: 0.875rem;
  line-height: 1.5;
  padding: 0.875rem 1rem 1rem;
}

#checkout .payment-option__additional-information p,
#order .payment-option__additional-information p {
  margin: 0;
}

#checkout .payment-option__additional-information p + p,
#order .payment-option__additional-information p + p {
  margin-top: 0.35rem;
}

@media (max-width: 575.98px) {
  #checkout .delivery-option__label,
  #order .delivery-option__label {
    grid-template-columns: minmax(0, 1fr);
  }

  #checkout .delivery-option__price,
  #order .delivery-option__price {
    grid-column: 1;
    grid-row: auto;
    justify-self: start;
    padding-left: calc(1.2rem + 0.65rem);
  }
}

/* ============================================================
   Mobile menu — IR (krem + zielony, jak panel PRODUKTY)
   ============================================================ */
#mobileMenu.ps-mainmenu--mobile.offcanvas {
  background: var(--ndx-ir-page-bg) !important;
  box-shadow: 0.5rem 0 2rem rgba(46, 54, 7, 0.22);
  color: var(--ndx-color-text);
  display: flex !important;
  flex-direction: column !important;
  height: 100vh !important;
  max-width: 25rem !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  width: min(25rem, 92vw) !important;
  z-index: 1050;
}

#mobileMenu.ps-mainmenu--mobile.offcanvas .offcanvas-header {
  align-items: center;
  background: var(--ndx-ir-nav-gradient);
  border-bottom: 2px solid #6d9430;
  flex: 0 0 auto;
  gap: 0.5rem;
  min-height: 4.5rem;
  padding: 0.85rem 1rem;
}

#mobileMenu .ndx-ir-mobile-menu-heading {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  line-height: 1.2;
  min-width: 0;
}

#mobileMenu .ndx-ir-mobile-menu-heading__brand {
  color: #eef4d8;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

#mobileMenu .ndx-ir-mobile-menu-heading__title {
  color: #fff;
  font-size: 1.125rem;
  font-weight: 700;
}

#mobileMenu .ps-mainmenu__back-button:has(.js-back-button:not(.d-none)) + .ndx-ir-mobile-menu-heading {
  display: none;
}

#mobileMenu .ps-mainmenu__back-button .js-back-button {
  align-items: center;
  color: #f5f9ec;
  display: flex;
  font-size: 0.9375rem;
  font-weight: 600;
  gap: 0.25rem;
  min-height: 2.5rem;
  padding: 0.25rem 0.35rem;
  text-decoration: none;
}

#mobileMenu .ps-mainmenu__back-button .js-back-button:hover,
#mobileMenu .ps-mainmenu__back-button .js-back-button:focus-visible {
  color: #fff;
}

#mobileMenu .btn-close {
  background-color: rgba(255, 255, 255, 0.16);
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 50%;
  filter: invert(1);
  flex: 0 0 2.5rem;
  height: 2.5rem;
  margin: 0;
  opacity: 0.95;
  padding: 0.7rem;
  width: 2.5rem;
}

#mobileMenu .btn-close:hover,
#mobileMenu .btn-close:focus-visible {
  background-color: rgba(255, 255, 255, 0.28);
  opacity: 1;
}

#mobileMenu .ps-mainmenu__mobile {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  padding: 0;
  position: relative;
  touch-action: pan-y;
}

#mobileMenu .menu--mobile {
  background: transparent;
  height: 100%;
  left: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 0.85rem 0.85rem 1.25rem;
  position: absolute;
  right: 0;
  scrollbar-color: rgba(89, 148, 6, 0.35) transparent;
  top: 0;
  transform: translateX(100%);
  transition: transform 0.24s ease, visibility 0.24s ease;
  visibility: hidden;
  width: 100%;
  z-index: 1;
}

#mobileMenu .menu--mobile.menu--current {
  transform: translateX(0);
  visibility: visible;
  z-index: 2;
}

#mobileMenu .menu--mobile.menu--parent {
  transform: translateX(-28%);
  visibility: visible;
  z-index: 1;
}

#mobileMenu .menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

#mobileMenu .menu__list > li:not(.menu__title) {
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.65rem;
  box-shadow: 0 0.15rem 0.55rem rgba(46, 54, 7, 0.06);
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: 0.5rem;
  min-height: 3.25rem;
  overflow: hidden;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

#mobileMenu .menu__list > li:not(.menu__title):hover,
#mobileMenu .menu__list > li:not(.menu__title):focus-within {
  background: #fff;
  border-color: rgba(130, 164, 57, 0.45);
}

#mobileMenu .menu__list > li.current:not(.menu__title) {
  background: #eef4d8;
  border-color: rgba(130, 164, 57, 0.55);
  box-shadow: inset 0.22rem 0 #82a439;
}

#mobileMenu a.menu__link {
  align-items: center;
  color: var(--ndx-color-text);
  display: flex;
  font-size: 0.9375rem;
  font-weight: 600;
  gap: 0.65rem;
  min-height: 3.25rem;
  min-width: 0;
  padding: 0.7rem 0.35rem 0.7rem 0.9rem;
  text-decoration: none;
}

#mobileMenu a.menu__link::before {
  background: #82a439;
  border-radius: 0.1rem;
  box-shadow: 0 0 0 0.18rem rgba(130, 164, 57, 0.18);
  content: "";
  flex: 0 0 0.4rem;
  height: 0.4rem;
  transform: rotate(45deg);
  width: 0.4rem;
}

#mobileMenu a.menu__link:hover,
#mobileMenu a.menu__link:focus-visible {
  color: #4a7a05;
}

#mobileMenu .menu__toggle-child {
  align-items: center;
  border: 0;
  border-left: 1px solid rgba(212, 212, 204, 0.9);
  border-radius: 0;
  color: var(--ndx-color-accent);
  display: flex;
  justify-content: center;
  margin: 0;
  min-height: 3.25rem;
  padding: 0;
  width: 3.25rem;
}

#mobileMenu .menu__toggle-child:hover,
#mobileMenu .menu__toggle-child:focus-visible {
  background: rgba(130, 164, 57, 0.14);
  color: #4a7a05;
}

#mobileMenu .menu[data-depth="0"] > .menu__list > li:first-child {
  background: linear-gradient(135deg, #eef4d8, #e2ecc0);
  border-color: rgba(130, 164, 57, 0.4);
}

#mobileMenu .menu[data-depth="0"] > .menu__list > li:first-child a.menu__link {
  color: #3f5f12;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

#mobileMenu .menu__title {
  color: var(--ndx-color-accent);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  list-style: none;
  margin: 0 0 0.55rem;
  padding: 0.25rem 0.15rem 0.45rem;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(130, 164, 57, 0.28);
}

.offcanvas-backdrop.show {
  background-color: #2e3607;
  opacity: 0.45;
}

/* ============================================================
   Mobile search — header icon + bottom nav + offcanvas/modal
   ============================================================ */
@media (max-width: 991.98px) {
  @media (max-width: 767.98px) {
    #header .header-bottom .ndx-header-search {
      flex: 0 0 auto;
      width: auto;
    }
  }

  #header .ps-searchbar--mobile .header-block__action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--ndx-ir-accent, #599406);
    line-height: 1;
  }

  #header .ps-searchbar--mobile .header-block__icon {
    font-size: 1.75rem;
    line-height: 1;
  }

  #header #_mobile_ps_customersignin .ndx-header-account-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.15rem;
    color: #599406;
    text-decoration: none;
  }

  #header #_mobile_ps_customersignin .ndx-header-account-btn__label {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1;
    text-transform: uppercase;
    color: #599406;
  }

  .header-nav-full-width.ndx-main-nav .ps-mainmenu__mobile-toggle {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem 0.3rem;
    width: 100%;
    min-height: 2.625rem;
    padding: 0.3rem 0.4rem 0.3rem 0.1rem;
  }

  .header-nav-full-width.ndx-main-nav .ps-mainmenu__mobile-toggle .menu-toggle {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.15rem;
    padding: 0.3rem 0.35rem 0.3rem 0.25rem;
    color: #fff;
    text-decoration: none;
  }

  .header-nav-full-width.ndx-main-nav .ps-mainmenu__mobile-toggle .menu-toggle .material-icons {
    font-size: 1.65rem;
    line-height: 1;
  }

  .header-nav-full-width.ndx-main-nav .ps-mainmenu__mobile-toggle .menu-toggle__label {
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1;
    text-transform: uppercase;
  }

  /* Stay on MENU row; wrap as a group only when content no longer fits */
  .ndx-mobile-cms--top {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0.22rem;
    margin-left: auto;
  }

  .ndx-mobile-cms__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.28rem 0.45rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.18);
    color: #fff !important;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: 0.01em;
    text-decoration: none !important;
    white-space: nowrap;
  }

  .ndx-mobile-cms__link:hover,
  .ndx-mobile-cms__link:focus {
    background: rgba(255, 255, 255, 0.28);
    color: #fff !important;
  }

  .ndx-mobile-cms__link:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
  }

  /* Only very narrow screens: second row for the 3 links */
  @media (max-width: 339.98px) {
    .header-nav-full-width.ndx-main-nav .ps-mainmenu__mobile-toggle {
      align-items: flex-start;
      padding-top: 0.35rem;
      padding-bottom: 0.35rem;
    }

    .ndx-mobile-cms--top {
      flex: 1 1 100%;
      justify-content: flex-start;
      margin-left: 0;
    }
  }

  .ndx-mobile-nav-spacer {
    display: block !important;
    height: calc(4rem + env(safe-area-inset-bottom)) !important;
  }

  .ndx-mobile-nav {
    position: fixed !important;
    z-index: 1080 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    min-height: 4rem !important;
    padding: 0.25rem 0 calc(0.25rem + env(safe-area-inset-bottom)) !important;
    background: rgba(248, 248, 239, 0.97) !important;
    border-top: 1px solid rgba(130, 164, 57, 0.28) !important;
    box-shadow: 0 -0.25rem 1rem rgba(46, 54, 7, 0.12) !important;
  }

  .ndx-mobile-nav__item,
  .ndx-mobile-nav__item:hover,
  .ndx-mobile-nav__item:focus-visible {
    color: #2e3607;
  }

  .ndx-mobile-nav__item--active,
  .ndx-mobile-nav__item--active:hover {
    color: #599406;
  }

  .ndx-mobile-nav__search-icon {
    background: linear-gradient(135deg, #95b637, #599406) !important;
    border-color: #f8f8ef !important;
    box-shadow: 0 0.2rem 0.6rem rgba(89, 148, 6, 0.35) !important;
  }

  .ndx-mobile-nav__badge {
    background: #599406;
  }

  .ndx-mobile-search {
    position: fixed;
    z-index: 1085;
    right: 0;
    bottom: calc(4rem + env(safe-area-inset-bottom));
    left: 0;
    display: none;
    padding: 0.65rem 0.75rem;
    background: #f8f8ef;
    border-top: 1px solid rgba(130, 164, 57, 0.28);
    box-shadow: 0 -0.35rem 1rem rgba(46, 54, 7, 0.12);
  }

  .ndx-mobile-search.is-open,
  .ndx-mobile-search:not([hidden]) {
    display: block;
  }

  .ndx-mobile-search__bar {
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }

  .ndx-mobile-search__form {
    display: flex;
    position: relative;
    flex: 1 1 auto;
    align-items: stretch;
    min-width: 0;
  }

  .ndx-mobile-search__input {
    width: 100%;
    min-width: 0;
    height: 2.75rem;
    padding: 0 5.5rem 0 1rem;
    border: 1px solid #d4d4cc;
    border-radius: 999px;
    background: #fff;
    color: #2e3607;
    font-size: 1rem;
  }

  .ndx-mobile-search__input:focus {
    border-color: #82a439;
    box-shadow: 0 0 0 0.2rem rgba(130, 164, 57, 0.2);
    outline: 0;
  }

  .ndx-mobile-search__voice,
  .ndx-mobile-search__submit {
    display: grid;
    position: absolute;
    top: 0.2rem;
    width: 2.35rem;
    height: 2.35rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    place-items: center;
  }

  .ndx-mobile-search__voice {
    right: 2.7rem;
    color: #666;
    background: transparent;
  }

  .ndx-mobile-search__submit {
    right: 0.2rem;
    color: #fff;
    background: linear-gradient(135deg, #95b637, #599406);
  }

  .ndx-mobile-search__close {
    flex: 0 0 auto;
    display: inline-grid;
    place-items: center;
    width: 2.35rem;
    height: 2.35rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: #2e3607;
    background: transparent;
  }

  .ndx-mobile-search__close .material-icons {
    font-size: 1.5rem;
  }
}

/* Shipping delay notice (above breadcrumb / page content) */
.ndx-shipping-notice {
  box-sizing: border-box;
  width: 100%;
  max-width: 61.3125rem; /* same as #wrapper / main */
  margin: 0 auto;
  padding: 0.75rem 1rem;
  border: 1px solid #e6d9a8;
  border-radius: 0.5rem;
  color: #2e3607;
  background: #fff8e1;
}

.ndx-shipping-notice__inner {
  display: grid;
  gap: 0.25rem;
  max-width: none;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
  margin: 0;
}

.ndx-shipping-notice__title {
  display: flex;
  gap: 0.35rem;
  align-items: center;
  margin: 0;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.3;
}

.ndx-shipping-notice__icon {
  font-size: 1.15rem;
  color: #b8860b;
}

.ndx-shipping-notice__text {
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.4;
  color: #4a5240;
}

/* Notify-me (checkout pause) — keep honeypot off-screen even when CCC lags */
.ndx-cp-notify__hp {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

@media (max-width: 575.98px) {
  .ndx-shipping-notice {
    padding: 0.65rem 0;
  }

  .ndx-shipping-notice__title {
    font-size: 0.88rem;
  }

  .ndx-shipping-notice__text {
    font-size: 0.8rem;
  }
}

/* displayFooter hosts wishlist Vue roots — hide layout junk from other modules */
.ndx-footer-hooks > .col-md-4,
.ndx-footer-hooks > .col-lg-3,
.ndx-footer-hooks > .ps-contactinfo {
  display: none !important;
}

/* Hidden wishlist modals steal clicks when idle */
.wishlist-modal:not(.show) {
  display: none !important;
  pointer-events: none !important;
}

.wishlist-modal:not(.show) * {
  pointer-events: none !important;
}

.wishlist-modal.show {
  display: block !important;
  z-index: 1055;
}

.wishlist-add-to:has(.wishlist-modal.show) {
  position: relative;
  z-index: 1055;
}

.wishlist-add-to .wishlist-modal.show {
  z-index: 1055;
}

.wishlist-add-to .modal-backdrop.in {
  z-index: 1050;
}

.wishlist-create:has(.wishlist-modal.show),
.wishlist-rename:has(.wishlist-modal.show),
.wishlist-share:has(.wishlist-modal.show),
.wishlist-delete:has(.wishlist-modal.show),
.wishlist-login:has(.wishlist-modal.show) {
  position: relative;
  z-index: 1080;
}

.wishlist-create .wishlist-modal.show,
.wishlist-rename .wishlist-modal.show,
.wishlist-share .wishlist-modal.show,
.wishlist-delete .wishlist-modal.show,
.wishlist-login .wishlist-modal.show {
  z-index: 1085 !important;
}

.wishlist-create .modal-backdrop.in,
.wishlist-rename .modal-backdrop.in,
.wishlist-share .modal-backdrop.in,
.wishlist-delete .modal-backdrop.in,
.wishlist-login .modal-backdrop.in {
  z-index: 1080 !important;
}

.ndx-footer-hooks:has(.wishlist-modal.show) {
  position: relative;
  z-index: 1080;
}

.wishlist-create .modal-backdrop:not(.in),
.wishlist-rename .modal-backdrop:not(.in),
.wishlist-share .modal-backdrop:not(.in),
.wishlist-delete .modal-backdrop:not(.in),
.wishlist-login .modal-backdrop:not(.in),
.wishlist-add-to .modal-backdrop:not(.in) {
  display: none !important;
  pointer-events: none !important;
}

.wishlist-create .modal-backdrop.in,
.wishlist-rename .modal-backdrop.in,
.wishlist-share .modal-backdrop.in,
.wishlist-delete .modal-backdrop.in,
.wishlist-login .modal-backdrop.in,
.wishlist-add-to .modal-backdrop.in,
.wishlist-modal + .modal-backdrop.show,
.wishlist-modal.show + .modal-backdrop {
  display: block !important;
  background-color: rgba(46, 54, 7, 0.5) !important;
  opacity: 1 !important;
}

.wishlist-modal .modal-dialog {
  position: relative;
  z-index: 1;
}

.wishlist-modal .modal-content {
  background: #fff !important;
  background-color: #fff !important;
  border: 1px solid var(--ndx-color-border);
  border-radius: 0.5rem;
  box-shadow: 0 0.75rem 2rem rgba(46, 54, 7, 0.22);
  color: var(--ndx-color-text);
}

.wishlist-modal .modal-header {
  align-items: flex-start;
  border-bottom: 1px solid var(--ndx-color-border);
  padding: 1.25rem 1.5rem 0.75rem !important;
}

.wishlist-modal .modal-header .modal-title,
.wishlist-modal .modal-header .h5,
.ndx-footer-hooks .wishlist-modal .modal-title,
.ndx-footer-hooks .wishlist-modal .h5 {
  background: none !important;
  background-image: none !important;
  border-radius: 0 !important;
  color: var(--ndx-color-text) !important;
  font-weight: var(--ndx-font-weight-heading);
  margin: 0;
  padding: 0 2rem 0 0 !important;
}

.wishlist-modal .modal-body {
  padding: 1.25rem 1.5rem 1rem !important;
}

.wishlist-modal .modal-footer {
  border-top: 1px solid var(--ndx-color-border);
  gap: 0.5rem;
  padding: 1rem 1.5rem 1.25rem !important;
}

.wishlist-modal .modal-footer .btn-secondary,
.wishlist-modal .modal-footer .modal-cancel {
  background: #fff;
  border: 1px solid var(--ndx-color-border);
  color: var(--ndx-color-text);
}

.wishlist-modal .modal-footer .btn-primary {
  background-color: var(--ndx-color-btn);
  border-color: var(--ndx-color-btn);
  color: #fff;
}

.wishlist-modal a.text-primary,
.wishlist-modal .text-primary {
  color: var(--ndx-color-accent) !important;
}
