/** Shopify CDN: Minification failed

Line 3157:104 Expected "}" to go with "{"

**/
/*================================= table css start =========================================== */

/* !-- CSS for Dropdown Styling Start --> */
.filters_variants {
    display: flex;
    justify-content: flex-start;
    gap: 20px;
    flex-wrap: wrap;
}
.dropdown-example {
  position: relative;
  display: inline-block;
}

.dropdown-btn {
    color: #222831;
    padding: 10px 20px;
    font-size: 16px;
    border: 1px solid #222831;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 20px;
    background: #fff;
    border-radius: 5px;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #fff;
    min-width: 208px;
    box-shadow: 0 8px 16px #0001;
    padding: 10px;
    z-index: 999;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.dropdown-content label {
    display: block;
    padding: 5px;
    font-size: 14px;
    cursor: pointer;
    color: #222831;
    font-weight: 400;
    text-transform: capitalize;
}

.dropdown-example:hover .dropdown-content,
.dropdown-type:hover .dropdown-content,
.dropdown-offer:hover .dropdown-content {
  display: block;
}

.dropdown-content input[type="checkbox"] {
  margin-right: 10px;
}
.variant_detail ul > li.bullet-point--bestPrice p {
  opacity: 0;
}

/* !-- CSS for Dropdown Styling End --> */

/* ================ Price Range Bar Css Start ================= */
.price-range-filter {
    display: flex;
    flex-direction: row;
    gap: 20px;
    /* margin-bottom: 0; */
    align-items: center;
}

input[type=range] {
    -webkit-appearance: none;
    width: 100%;
    height: 4px;
    background: #ddd;
    border-radius: 5px;
    outline: none;
    opacity: .7;
    transition: opacity .2s;
}

.price-range-filter>div label {
    font-weight: 500;
    font-size: 14px;
}

input[type="range"]:hover {
  opacity: 1; /* Fully visible on hover */
}

input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 20px; /* Width of the thumb */
  height: 20px; /* Height of the thumb */
  background: #4caf50; /* Thumb color */
  border-radius: 50%; /* Circular thumb */
  cursor: pointer; /* Cursor on hover */
}

input[type="range"]::-moz-range-thumb {
  width: 20px; /* Width of the thumb */
  height: 20px; /* Height of the thumb */
  background: #4caf50; /* Thumb color */
  border-radius: 50%; /* Circular thumb */
  cursor: pointer; /* Cursor on hover */
}

label {
  font-weight: bold;
}

/* ==================== Price Range Bar Css End =================== */





/*css for cart bubble  */
.cart-count-bubble.above-two-dig{
    top: 5px;
    right: -5px;
    height: 20px;
    width: auto;
    min-width: 24px;
}
/*css for cart bubble  */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  height: 100%;
  width: 100%;
}

.hero-section {
  width: 100%;
  height: 100%;
  padding: 40px 40px;
}

.w-100 {
  width: 100%;
}

.min-h-28 {
  min-height: 28px;
}

.color-mid-gray {
  color: #393e46;
}

.color-red-mid {
  color: #df091d;
}

.color-lit-gray {
  color: #656f84;
}
.text-right-align {
  text-align: right;
}
.text-left-align {
  text-align: left;
}

.container {
  max-width: 1340px;
  width: 100%;
  margin: 0 auto;
}

.set-table-x {
  overflow-x: auto;
  margin-left: -50px;
  padding-left: 50px;
}

.veriations-table {
  display: flex;
  flex-direction: column;
}

.veriations-table-sorters {
  display: flex;
  gap: 16px;
  margin: 16px 0px;
  align-items: center;
}

.min-title {
  font-weight: 700;
  font-size: 16px;
}
/*========================= mobile needed chnages start===============  */
.properties-list-detail.accordion {
  height: 0;
  overflow: hidden;
  transition: height 0.5s ease-in-out;
}
.properties-list-detail.accordion-open {
  height: 155px;
}

.sticky-mobile-addtocart {
  height: 100%;
  width: 100%;
  z-index: 9999999;
  position: fixed;
  top: 0;
  left: 0;
  background: #00000080;
  display: none;
}
.sticky-add-modal-content {
  background: #fff;
  border-radius: 18px 18px 0 0;
  bottom: -100%;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1);
  left: 0;
  padding: 14px 20px;
  position: fixed;
  transition: all 0.5s ease-in-out;
  width: 100%;
  z-index: 40000;
}

.sticky-mobile-addtocart.open-cart {
  display: block;
}
.sticky-add-modal-content.visible {
  bottom: 0;
  transition: all 0.5s ease-in-out;
}
.sticky-add-modal-content .d-flex {
  display: flex;
  justify-content: space-between;
}
.d-flex > div {
  text-align: start;
}
.d-flex > img {
  width: 15px;
  height: 15px;
}
.d-flex > div > p:last-child {
  font-size: 12px;
  margin: 4px 0 12px;
}
.sticky-add-modal-content .mb-discount-btn-container {
  display: flex;
  margin-bottom: 16px;
}
.sticky-add-modal-content .mb-discount-btn-container > button {
  background: #fff;
  border: 1px solid #cbcbcb;
  border-radius: 3px;
  flex-direction: column;
  margin-right: 10px;
  padding: 10px 15px;
  touch-action: manipulation;
  width: auto;
  display: flex;
  text-align: center;
  gap: 5px;
}
.mb-discount-btn-container > button > div > span {
  font-size: 14px;
  color: #222831;
}

/* .mobile-cell .sticky-add-modal-content .align-quantity-btn {
    justify-content: space-between;
} */
.mobile-cell .quantity-btn {
  height: 40px;
}
.mobile-cell .article-quantity-btn {
  width: 40px;
}
.mobile-cell .article-quantity-input {
  width: 56px;
  font-size: 20px;
}
.mobile-cell .set-addcard-btn {
  width: 38px;
  height: 38px;
  border-radius: 8px;
}
.mobile-price-holder {
  display: flex;
  gap: 15px;
  align-items: center;
}
.desktop-price-hide {
  display: flex;
  flex-direction: column;
}
.desktop-price-hide > span:first-child {
  font-size: 14px;
  color: #656f84;
  font-weight: 400;
  line-height: 1.2;
}
.desktop-price-hide > span:last-child {
  font-size: 16px;
  color: #222831;
  background: linear-gradient(
    180deg,
    hsla(0, 0%, 100%, 0) 40%,
    #fcedc7 40%,
    #fcedc7 100%
  );
}
/*========================= mobile needed chnages end===============  */
.set-sorters-title {
  border-left: 5px solid;
  padding-left: 6px;
  min-height: 28px;
  font-size: 16px;
  display: flex;
  align-items: center;
}

.set-thead::before {
  background-color: #fff;
  content: "";
  display: block;
  height: 100%;

  margin-left: -50px;
  position: absolute;
  width: 100%;
  z-index: -1;
}

.br-red {
  border-color: #df091d;
}

.br-green {
  border-color: #46b275;
}

.set-thead {
  position: sticky;
  top: 0%;
  z-index: 10;
  background-color: #ffffff;
}
.set-data-table {
  border-spacing: 0;
  border-collapse: initial;
}

.set-data-table th {
  padding: 0.5rem 1rem;
  font-size: 11px;
  border: 1px solid #fff;
  font-weight: 700;
  color: #222831;
  background-color: #e0e4ea;
  vertical-align: middle;
  text-align: center;
}

.pricehead-content {
  display: flex;
  align-items: center;
  width: 100% !important;
}

.price-headcell {
  padding: 0 !important;
  position: relative;
  z-index: 1;
}

.pricehead-title {
  flex: 1;
  padding: 20px 10px;
  width: auto !important;
}

.compact {
  width: 1%;
}

.alert-promo {
  align-self: flex-start;
  background-color: #cf0000;
  color: #fff;
  flex: 0 0 auto;
  font-size: 11px;
  padding: 10px;
  width: auto !important;
}

.set-col-corol th {
  text-wrap: nowrap;
}

.set-col-corol th:nth-child(1) {
  background-color: #cf000060;
}

.set-col-corol th:nth-child(2) {
  background-color: #d0000070;
}

.set-col-corol th:nth-child(3) {
  background-color: #cf000080;
}

.set-col-corol th:nth-child(4) {
  background-color: #cf000090;
}

.set-col-corol th:nth-child(5) {
  background-color: #cf0000;
}

.set-tbody tr {
  position: relative;
}

.set-tbody td a:first-child {
    text-decoration: none;
    color: #cf0000;
    text-transform: capitalize;
}

.set-tbody td {
  padding: 5px 10px;
  vertical-align: middle;
  font-size: 11px;
  font-weight: 500;
  text-align: center;
  color: rgba(0, 0, 0, 0.76);
  border: 1px solid #fff;
  background-color: #f1f4f9;
}

.bulletPoints {
  bottom: 0;
  height: 28px;
  left: 0;
  padding-right: 0;
  position: absolute;
  top: 50%;
  transform: translate(-100%, -50%);
  display: flex;
  list-style: none;
}

.bullet-point--eco {
  background-color: #46b275;
  margin-right: 6px;
  width: 4px;
}

.bullet-point--bestPrice {
  background-color: #df091d;
  margin-right: 6px;
  width: 4px;
}

.rjnxt-price {
  color: #222831;
}

.set-par-btn {
    align-items: center;
    /* background: linear-gradient(90deg,#6121f5,#276ef1); */
    background: #414141;
    border: none;
    color: #fff;
    cursor: pointer;
    display: flex;
    font-size: 12px;
    font-weight: 700;
    height: 30px;
    justify-content: center;
    letter-spacing: .86px;
    outline: 0;
    padding: 0 13px;
    position: relative;
    text-align: center;
    text-transform: uppercase;
    border-radius: 3px;
}

.align-quantity-btn {
  display: flex;
  align-items: center;
  gap: 4px;
}
.bulk-add-button-holder {
  display: flex;
  margin: 24px;
  align-items: center;
  justify-content: center;
}
.bulk-add-cart-btn {
    /* background: linear-gradient(90deg,#6121f5,#276ef1); */
    background: #414141;
    padding: 12px 20px;
    color: #fff;
    border-radius: 3rem;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    width: max-content;
    letter-spacing: .88px;
    cursor: pointer;
}

.quantity-btn {
  align-items: center;
  border: 1px solid #cbcbcb;
  border-radius: 8px;
  display: flex;
  height: 30px;
  overflow: hidden;
}
.quantity-btn .article-quantity-input {
  border-width: unset;
  border-style: unset;
}
.article-quantity-btn {
  color: #cbcbcb;
  background-color: #ffffff;
  width: 28px;
  height: 100%;
  position: relative;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.article-quantity-input {
  width: 40px;
  background-color: #ffffff;
  height: 100%;
  border: none;
  text-align: center;
}

.article-quantity-input:focus,
.article-quantity-btn:focus {
  outline: none;
}

.add-br-right {
  border-right: 1px solid;
}

.add-br-left {
  border-left: 1px solid;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.set-addcard-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: none;
  cursor: pointer;
  border-radius: 4px;
  /* background: linear-gradient(90deg, #6121f5, #276ef1); */
   background: #414141;
  
}

.set-os-col td {
  color: rgba(152, 153, 154) !important;
}

.set-os-col td .rjnxt-price {
  color: rgba(152, 153, 154) !important;
}

.set-os-col td a {
  color: #8fb4f6 !important;
}

.set-popup-btn {
  display: flex;
  flex-direction: column;
  margin-left: 5px;
  gap: 4px;
}

.set-col-blue {
  color: #276ef1 !important;
  text-decoration: underline;
  font-size: 10px;
  letter-spacing: 0.88px;
}

.set-col-blue:hover {
  text-decoration: none;
  transition: all 0.3s ease;
}

.set-popup-btn button {
  display: flex;
  gap: 10px;
  align-items: center;
  border: none;
  background-color: transparent;
  cursor: pointer;
  text-align: left;
}
.mobile-cell {
  display: none;
}

.mobile-cell--container {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.08);
  display: flex;
  flex-direction: column;
  padding: 12px 12px 8px;
  position: relative;
}

.set-mobile-cell-to {
  display: flex;
  align-items: center;
  flex: 0 1 auto;
  gap: 8px;
}
.set-cell-lab {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.cell-lab-title {
  display: flex;
  align-items: center;
  gap: 8px;
}

.set-link-lab {
  color: #276ef1;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  line-height: 1;
}

.link-lab-tag {
  background-color: #df091d;
  color: #fff;
  padding: 2px 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.link-lab-tag span {
  font-size: 10px;
  font-weight: 700;
}

.colisage-tag {
  width: fit-content;
  background: #f1f4f9;
  color: #656f84;
  border-radius: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  height: 17px;
  font-size: 10px;
  padding: 0 8px;
  text-transform: uppercase;
}

.price-list-align {
  margin-left: auto;
  width: auto;
  display: flex;
  flex-direction: column;
  text-align: right;
}

.product-sku-t {
  color: #656f84;
  font-size: 10px;
  font-weight: 400;
  line-height: 0.5;
  margin: 5px 0px;
}

.product-sku-price {
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  color: #222831;
}

.product-sku-price span {
  background: linear-gradient(
    180deg,
    hsla(0, 0%, 100%, 0) 40%,
    #fcedc7 40%,
    #fcedc7 100%
  );
}

.card-more-btn {
  background: linear-gradient(90deg, #6121f5, #276ef1);
  border-radius: 44px;
  color: #fff;
  cursor: pointer;
  flex: 0 0 auto;
  font-size: 35px;
  font-weight: 400;
  height: 44px;
  line-height: 30px;
  border: none;
  outline: 0;
  padding: 0;
  width: 44px;
}
.card-more-btn svg {
  display: inline;
}
.properties-list {
  width: 100%;
  text-align: left;
}

.properties-list-title {
  align-items: center;
  background: #fff;
  border-radius: 4px;
  border-top: 1px solid #e0e4ea;
  display: grid;
  grid-template-columns: 48% auto;
  line-height: 14px;
  margin-top: 10px;
  padding: 8px 4px;
}
.fos-12 {
  font-size: 12px;
  font-weight: 700;
}

.list-detail-align {
  align-items: center;

  border-radius: 4px;
  display: grid;
  grid-template-columns: 48% auto;
  line-height: 14px;
  padding: 8px 4px;
}
.list-detail-align:nth-child(odd) {
  background: #f1f4f9;
}
/* .detail-align-white {

  background-color: #fff;

}

.detail-align-gray {
  background-color: #f1f4f9;
}  */

.see-more-less {
  display: flex;
  margin: 0 auto;
  align-items: center;
  cursor: pointer;
  border: none;
  outline: none;
  background-color: transparent;
}

@media (max-width: 1024px) {
  .set-thead,
  .compact,
  .price-cell,
  .set-first-td,
  .content-format--buttonPallet,
  .content-format--addToCart,
  .veriations-table-sorters {
    display: none;
  }

  .mobile-cell {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    padding: 0;
  }
  .bulk-add-button-holder {
    display: none;
  }
  .set-table-x {
    margin-left: 0px;
    padding-left: 0px;
  }
  .filters_variants {
      padding: 0 70px 50px 70px;
  }
}

@media (max-width: 768px) {
  .hero-section {
    padding: 0px 16px;
  }
  .mobile-cell .article-quantity-input {
    font-size: 18px;
  }
  .filters_variants {
      padding: 0 20px 50px 20px;
  }
  .hero-section .container {
      padding: 0;
  }
  .set-tbody td {
      border: 1px solid #f7f7f7;
      background-color: #f7f7f7;
  }
}
@media (max-width: 580px) {
  .sticky-add-modal-content {
    padding: 14px 15px;
  }
  .mobile-cell .article-quantity-input {
    font-size: 16px;
  }
  .sticky-add-modal-content .mb-discount-btn-container {
    margin-bottom: 10px;
  }
  .sticky-add-modal-content .mb-discount-btn-container > button {
    margin-right: 0px;
    padding: 10px 10px;
  }
  .sticky-add-modal-content .mb-discount-btn-container {
    flex-wrap: wrap;
    gap: 5px;
  }
  .filters_variants,.price-range-filter {
      gap: 15px;
  }
  .dropdown-btn {
      padding: 8px 15px;
      font-size: 14px;
      gap: 15px;
  }
  
}
/* Elimină double-tap zoom pe butoanele interactive (iOS Safari) */
.article-quantity-btn,
.mb-discount-btn-container button,
.set-addcard-btn {
  touch-action: manipulation;
}

/* Border roșu pe mobil pentru tier-ul selectat din modal */
@media (max-width: 990px){
  .sticky-mobile-addtocart .mb-discount-btn-container button.selected{
    border-width: 1px !important;
    border-style: solid !important;
    border-color: #ef4444 !important;
    border-radius: 6px;
  }
}

/* ------ Variant Tabel (mobil) ------ */
.variant-tabel .mobile-right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}

/* insigna Stoc epuizat */
.variant-tabel .badge-soldout{
  display:inline-block;
  padding:.35rem .6rem;
  border-radius:999px;
  font-weight:600;
  background:#fee2e2;   /* roșu deschis */
  color:#b91c1c;         /* roșu */
  line-height:1;
  white-space:nowrap;
}

/* butonul existent pentru deschiderea prețurilor (coș la variante disponibile) */
.variant-tabel .card-more-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:8px 12px;
  border-radius:999px;
}

/* ===== Mobile: Bulină gri pentru stoc epuizat ===== */
@media (max-width: 1024px) {
  .variant-tabel .card-more-btn.oos {
    background: #CBD5E1 !important;   /* gri deschis */
    color: #FFFFFF !important;
    border: none !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 9999px !important;
    box-shadow: none !important;
  }

  .variant-tabel .card-more-btn.oos svg path,
  .variant-tabel .card-more-btn.oos svg circle,
  .variant-tabel .card-more-btn.oos svg rect {
    fill: #FFFFFF !important;   /* icon alb */
    stroke: #FFFFFF !important;
  }

  .variant-tabel .card-more-btn.oos:hover {
    background: #94A3B8 !important; /* gri un pic mai închis la hover */
  }
}

/* ===== Netpack mobile palette – calm/armonizat ===== */
/* === NPX mobile palette (fără modificări la Add to Cart) === */
:root{
  --np-brand: ;
  --np-ink: #1F2937;        /* charcoal */
  --np-ink-2: #6B7280;      /* slate */
  --np-border: #E5E7EB;
  --np-surface-muted: #F3F4F6;
  --np-kraft-tint: #F4EEE6; /* bej cald, discret */
  --np-kraft-border: #C7A57A;
}

/* ===== Doar mobil / tabletă ===== */
@media (max-width: 990px){

  /* butonul rotund „Vezi/Alege varianta” (NU Add to Cart) */
  .card-more-btn{
    background: var(--np-ink);
    color:#fff;
    border:0;
    border-radius:999px;
    width:44px; height:44px;
    display:inline-flex; align-items:center; justify-content:center;
    box-shadow:0 2px 6px rgba(17,24,39,.15);
    transition:transform .08s ease, box-shadow .12s ease;
  }
  .card-more-btn svg path{ fill:#fff; }
  .card-more-btn:hover{ box-shadow:0 4px 10px rgba(17,24,39,.18); }
  .card-more-btn:active{ transform: translateY(1px); }

  /* micro-texte din dreapta (de deasupra butonului) */
  .price-list-align .product-sku-t{ color: var(--np-ink) !important; }
  .price-list-align .product-sku-price{ color: var(--np-ink-2); }

  /* selectoarele de prag (4-, 5+, 10+) — calm, cu highlight bej */
  .mb-discount-btn-container button{
    background:#fff;
    border:1px solid var(--np-border);
    border-radius:12px;
    padding:12px 14px;
    color:var(--np-ink);
    transition: background .15s ease, border-color .15s ease;
  }
  .mb-discount-btn-container button:hover{ background: var(--np-surface-muted); }
  .mb-discount-btn-container button.selected{
    background: var(--np-kraft-tint);
    border-color: var(--np-kraft-border);
  }

  /* minus/plus + input cantitate (fără a atinge butonul de coș) */
  .article-quantity-btn{
    background:#fff;
    border:1px solid var(--np-border);
  }
  .article-quantity-btn:hover{ background: var(--np-surface-muted); }
  .article-quantity-input{
    border:1px solid var(--np-border);
    color: var(--np-ink);
  }

  /* titlul/linkul variantei – nu albastru */
  .mobile-cell .set-link-lab,
  a.set-link-lab, a.set-link-lab:visited{
    color: var(--np-ink) !important;
    text-decoration: none !important;
  }
}
@media (max-width: 990px){
  .variant-tabel .mobile-right{ gap:12px; }
  .price-list-align .product-sku-t{
    color: var(--np-ink) !important;
    font-weight: 600;
  }
}
@media (max-width: 990px){
  .price-list-align .product-sku-price span{
    background: linear-gradient(180deg, transparent 60%, #FFF4D6 60%);
  }
}
@media (max-width: 990px){
  .sticky-mobile-addtocart .mb-discount-btn-container button.selected{
    background: var(--np-kraft-tint) !important;   /* #F4EEE6 */
    border-color: var(--np-kraft-border) !important; /* #C7A57A */
  }
}
/* TIER SELECT — nu atinge .set-addcard-btn */
@media (max-width: 990px){
  .mb-discount-btn-container button{
    background:#fff;
    border:1px solid #E5E7EB;
    color:#1F2937;
    border-radius:12px;
    padding:12px 14px;
  }
  .mb-discount-btn-container button.selected{
    background:#F4EEE6;      /* kraft tint */
    border-color:#C7A57A;     /* kraft border */
  }
}
@media (max-width: 990px){
  a.set-link-lab, a.set-link-lab:visited{
    color:#1F2937 !important;
    text-decoration:none !important;
  }
  a.set-link-lab:hover{ opacity:.9; }
}
/* ==== Variabile brand (o singură dată dacă nu există) ==== */
:root{
  --np-brand: ;
  --np-ink: #1F2937;            /* text principal */
  --np-border: #E5E7EB;         /* borduri subtile */
  --np-surface: #FAFBFC;        /* fundal celule */
  --np-surface-2: #F3F4F6;      /* head */
  --np-kraft-tint: #F4EEE6;     /* highlight selectat */
  --np-kraft-border: #C7A57A;   /* contur highlight */
}

/* ===== Desktop (≥1024px) ===== */
@media (min-width: 1024px){

  /* Head & celule mai calme */
  .set-data-table th{
    background: var(--np-surface-2);
    color: var(--np-ink);
  }
  .set-tbody td{
    background: var(--np-surface);
    color: var(--np-ink);
  }

  /* Hover discret pe rând */
  .set-tbody tr:hover td{
    background: #F7F7F9;
  }

  /* Highlight pe treapta activă (din JS: .is-active) — fără border negru */
  .price-cell{
    transition: background .15s ease, box-shadow .15s ease, border-color .15s ease;
    border-color: transparent !important;      /* anulăm fallback-urile */
  }
  .price-cell.is-active{
    background: var(--np-kraft-tint);
    box-shadow: inset 0 0 0 1px var(--np-kraft-border);
    border-color: var(--np-kraft-border) !important;
  }

  /* Controale cantitate puțin mai mari pe desktop */
  .quantity-btn{ height: 36px; }
  .article-quantity-input{ width: 54px; font-size: 16px; }

  /* “+ box” & buton bulk în charcoal (nu roșu) */
  .set-par-btn{ background:#1F2937; }
  .bulk-add-cart-btn{ background:#1F2937; }
  .bulk-add-cart-btn.is-inactive{ opacity:.5; pointer-events:none; }
  
  /* Add disabled = vizibil, dar estompat (NU îl ascundem) */
  .set-addcard-btn[disabled]{ opacity:.55; }
}
/* ===== Desktop fine-tuning (≥1024px) ===== */
@media (min-width:1024px){

  /* 1) Head sticky cu shadow discret (delimitează tabelul la scroll) */
  .set-thead{
    box-shadow: 0 1px 0 var(--np-border), 0 8px 15px rgba(0,0,0,.03);
  }

  /* 2) Aliniere numerică + cifre tabulare (prețurile nu mai „dansează”) */
  .set-data-table th.num,
  .set-data-table td.num,
  .price-cell .rjnxt-price{
    text-align: right;
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum" 1;
  }

  /* 3) Treapta activă: și textul devine mai „greu” */
  .price-cell.is-active .rjnxt-price{ font-weight:700; }

  /* 4) Hover pe rând – subtil (ai deja, doar îl întăresc puțin) */
  .set-tbody tr:hover td{ background:#F7F8FA; }

  /* 5) Accesibilitate: focus evident când navighezi cu tastatura */
  .set-tbody td:focus-within{
    outline:2px solid var(--np-brand);
    outline-offset:-2px;
  }

  /* 6) Butonul “Adaugă toate în coș” rămâne la vedere pe tabele lungi */
  .bulk-add-button-holder{
    position: sticky;
    bottom: 8px;
    padding-top: 12px;
    background: linear-gradient(to top, rgba(255,255,255,.96), rgba(255,255,255,0));
    z-index: 5;
  }
}

/* Offset corect sub headerul sticky când facem scroll la #refs-anchor */
.js-ref-anchor { scroll-margin-top: 152px; }                 /* mobil */
@media (min-width: 768px){ .js-ref-anchor { scroll-margin-top: 132px; } }  /* tabletă */
@media (min-width: 992px){ .js-ref-anchor { scroll-margin-top: 116px; } }  /* desktop */

/* Override pentru intervalul 991–1024px */
@media (max-width: 1024px) {
  .variant-tabel .card-more-btn{
    background: var(--np-ink) !important;
    color:#fff !important;
    border:0;
    border-radius:999px;
    width:44px; height:44px;
    display:inline-flex; align-items:center; justify-content:center;
    box-shadow:0 2px 6px rgba(17,24,39,.15);
  }
  .variant-tabel .mobile-right{ gap:12px; }

  .price-list-align .product-sku-t{
    color: var(--np-ink) !important;
    font-weight:600;
  }
  .price-list-align .product-sku-price span{
    background: linear-gradient(180deg, transparent 60%, #FFF4D6 60%);
  }

  .mb-discount-btn-container button{
    background:#fff;
    border:1px solid #E5E7EB;
    color:#1F2937;
    border-radius:12px;
    padding:12px 14px;
  }
  .mb-discount-btn-container button.selected{
    background:#F4EEE6;
    border-color:#C7A57A;
  }
  .sticky-mobile-addtocart .mb-discount-btn-container button.selected{
    background: var(--np-kraft-tint) !important;
    border-color: var(--np-kraft-border) !important;
  }

  .mobile-cell .set-link-lab,
  a.set-link-lab, a.set-link-lab:visited{
    color:#1F2937 !important;
    text-decoration:none !important;
  }
}

/* Micșorează vizual imaginea din tab-ul de colecție */
.m-collection-tab__image {
  transform: scale(.52);           /* ajustează 0.70–0.92 după cum vrei */
}

/* ================== NPX — HERO + RAIL (refactor, desktop OK / mobile fără BW & hover) ================== */
/* ================== NPX — HERO + RAIL (refactor, desktop OK / mobile fără BW & hover) ================== */

/* Paletă utilă */
:root{
  --np-brand: ;
  --np-ink: #0B0B0C;
  --npx-hero-tone: #F5F1EA;
  --npx-rail-ring: rgba(199,165,122,.55); /* contur bej discret */
  --npx-rail-shadow: rgba(0,0,0,.08);
}

/* ===== Layout: rail 180px + scenă ===== */
.npx-hero.page-width{
  max-width:1440px;
  margin:0 auto;
  padding:24px 0 8px;
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:24px;
  align-items:stretch;
}

/* ===== Scena ===== */
.npx-hero__stage{
  position:relative;
  height:680px;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
}
.npx-hero__stage picture,
.npx-hero__stage img{display:block;width:100%;height:100%;}
.npx-hero__img{object-fit:cover;object-position:72% center;}

/* ===== Text suprapus (desktop) ===== */
.npx-hero__text{
  position:absolute;
  left:clamp(36px,5vw,96px);
  top:3px; /* margine minimă sus */
  max-width:630px;
  color:var(--np-ink);
  z-index:3;
}
.npx-eyebrow{margin:0 0 8px;font-weight:800;font-size:14px;color:#E11D2E;}
.npx-hero__title{margin:0 0 12px;font-size:clamp(44px,4.8vw,64px);line-height:1.02;font-weight:900;letter-spacing:-.02em;}
.npx-hero__sub{
  font-size:170%;
  line-height:1.4;
  max-width:500px;   /* rupe curat pe 2+ rânduri */
  word-break:break-word;
  margin:0 0 28px;
}

/* ===== CTA ===== */
.npx-btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:19px 40px;             /* ~+20% */
  border-radius:12px;
  background:#E11D2E;color:#fff;font-weight:800;
  text-decoration:none;
  font-size:22px;                /* text mai mare */
}
.npx-btn::after{
  content:" \2192";              /* → */
  margin-left:8px;
  font-weight:900;
  line-height:1;
  display:inline-block;
  transform:translateY(1px);
}

/* ===== Quick buttons (desktop): bară întinsă jos, space-between ===== */
@media (min-width:1025px){
  .npx-hero__quick{
    position:absolute;
    left:clamp(36px,5vw,96px);
    right:clamp(36px,5vw,96px);
    bottom:clamp(16px,2.6vh,28px);
    display:flex;
    justify-content:space-between;
    gap:0;
    z-index:4;
  }
  .npx-qbtn{
    flex:1 1 0;
    min-width:120px;max-width:230px;margin-inline:8px;
    display:inline-flex;align-items:center;gap:10px;
    padding:12px 16px;
    background:rgba(255,255,255,.98);
    border:1px solid rgba(0,0,0,.06);
    border-radius:16px;
    backdrop-filter:saturate(1.1) blur(2px);
    text-decoration:none;color:var(--np-ink);font-weight:800;line-height:1;
    box-shadow:0 1px 4px rgba(0,0,0,.07);
    transition:transform .06s ease, box-shadow .12s ease, background .12s ease;
  }
  .npx-qbtn:hover{ box-shadow:0 2px 8px rgba(0,0,0,.10); }
  .npx-qbtn:active{ transform:translateY(1px); }
  .npx-qbtn:focus-visible{ outline:2px solid var(--np-brand); outline-offset:2px; }
  .npx-qbtn__icon{ width:26px;height:26px;object-fit:contain; }
  .npx-qbtn__label{ font-size:14px;font-weight:800; }

  /* Rail (buline) — cerc cu inel, păstrează culorile naturale */
  .npx-rail.npx-rail--single{ display:flex;flex-direction:column;gap:16px;align-items:center; }
  .npx-rail .rail-item__icon{
    width:115px;height:115px;border-radius:999px;
    background:#fff;
    border:2px solid var(--npx-rail-ring);
    box-shadow:0 2px 8px var(--npx-rail-shadow);
    display:grid;place-items:center;
    overflow:hidden;
    transition:transform .08s ease, box-shadow .12s ease;
  }
  .npx-rail .rail-item__icon img{
    width:86px;height:86px;object-fit:contain; /* fără filtre */
  }
  .npx-rail .rail-item:hover .rail-item__icon{
    box-shadow:0 4px 12px rgba(0,0,0,.12);
    transform:translateY(-1px);
  }
}

/* Desktop (≥1025px) – păstrezi ce aveai deja aici, FĂRĂ @media în interior */
@media (min-width:1025px){
  /* … restul stilurilor tale de desktop rămân neschimbate … */
}

/* Tooltip DOAR pe desktop și DOAR când există hover */
@media (min-width:1025px) and (hover:hover){
  .npx-rail .rail-item{ position:relative; }
  .npx-rail .rail-item:hover::after{
    content: attr(aria-label);
    position:absolute; left:calc(100% + 10px); top:50%;
    transform:translateY(-50%);
    background:#fff; color:#111827;
    border:1px solid rgba(0,0,0,.08);
    padding:6px 10px; border-radius:10px;
    box-shadow:0 6px 16px rgba(0,0,0,.12);
    white-space:nowrap; font-weight:700; font-size:13px; z-index:6;
  }
  .npx-rail .rail-item:hover::before{
    content:""; position:absolute; left:calc(100% + 4px); top:50%;
    width:8px;height:8px; background:#fff;
    border-left:1px solid rgba(0,0,0,.08);
    border-top:1px solid rgba(0,0,0,.08);
    transform:translateY(-50%) rotate(45deg); z-index:7;
  }
}



/* ====== Mobile & Tablet (≤1024px) — fără BW, fără hover, fără tooltip ====== */
@media (max-width:1024px){
  /* Text sub imagine, ca în mockup */
  .npx-hero.page-width{ grid-template-columns:1fr; gap:16px; padding:12px 0; }
  .npx-hero__stage{ height:auto; border-radius:0; }
  .npx-hero__img{ height:auto; object-position:center; }
  .npx-hero__text{ position:static; padding:16px 16px 0; max-width:none; }

  .npx-hero__title{
    margin-top:3px;
    font-size:clamp(38px, 8.6vw, 52px);
    line-height:1.03; letter-spacing:-0.02em;
  }
  .npx-hero__sub{
    font-size:clamp(17px, 3.9vw, 20px); /* ~ +10% */
    line-height:1.35;
    max-width:28ch;
    margin:10px 0 16px;
  }

  .npx-btn{
    display:inline-flex; align-items:center; gap:8px;
    padding:16px 28px;
    font-size:18px;
    border-radius:14px;
  }
  .npx-btn::after{ content:"→"; font-weight:800; line-height:1; }

  /* Butoanele cu pictograme – 3 coloane, card alb */
  .npx-hero__quick{
    position:static; margin:14px 16px 0;
    display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
  }
  .npx-qbtn{
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    text-decoration:none;
    background:#fff; border:1px solid rgba(0,0,0,.06);
    border-radius:18px; box-shadow:0 6px 18px rgba(0,0,0,.06);
    padding:14px 10px; aspect-ratio:1/1;
  }
  .npx-qbtn__icon{ width:56px; height:56px; object-fit:contain; margin-bottom:8px; }
  .npx-qbtn__label{ font-size:18px; font-weight:800; color:#0B0B0C; line-height:1.1; text-align:center; }

  /* Rail – scroller orizontal, IMAGINI COLOR, FĂRĂ BW & FĂRĂ HOVER */
  .npx-rail{
    order:3;
    display:grid; grid-auto-flow:column; 
    gap:12px; padding:16px;
    overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none;
  }
  .npx-rail::-webkit-scrollbar{ display:none; }
  .npx-rail .rail-item__icon{
    width:84px; height:84px; background:#fff;
    border:1px solid rgba(0,0,0,.06); border-radius:999px;
    box-shadow:0 4px 12px rgba(0,0,0,.05);
    display:grid; place-items:center; overflow:hidden;
  }
  .npx-rail .rail-item__icon img{
    width:56px; height:56px; object-fit:contain;
    filter:none !important;              /* ← fără alb-negru */
    transition:none !important;          /* ← fără hover */
  }
  /* Fără tooltip pe mobile/tabletă */
  .npx-rail .rail-item::before,
  .npx-rail .rail-item::after{ content:none !important; }
}

/* Mic retuș tabletă */
@media (min-width:641px) and (max-width:1024px){
  .npx-hero__quick{ margin-top:10px; }
}
/* Ascunde eticheta sub buline, pe toate dispozitivele */
.npx-rail .rail-item__label{ display:none !important; }

/* ===== NPX — Mobile/Tablet: text + picto-butoane suprapuse peste hero ===== */
@media (max-width: 1024px){

  /* Scena rămâne relativă și are o înălțime clară ca să poată găzdui overlay-ul */
  .npx-hero__stage{
    position: relative !important;
    height: min(92vh, 720px) !important;   /* 650–760 după gust; mockup-like */
    border-radius: 0 !important;
    overflow: hidden !important;
  }

  /* Imaginea umple scena pe înălțime */
  .npx-hero__stage picture,
  .npx-hero__stage img{
    display: block !important;
    width: 100% !important;
    height: 100% !important;
  }
  .npx-hero__img{
    object-fit: cover !important;
    object-position: center !important;   /* joacă cu '70% center' dacă vrei mai la dreapta */
  }

  /* TEXT: revine absolut, aliniat sus-stânga, cu stilurile din mockup */
  .npx-hero__text{
    position: absolute !important;
    left: 16px !important;
    right: 16px !important;
    top: 10px !important;                 /* margine mică de sus */
    z-index: 3 !important;
    padding: 0 !important;
    max-width: none !important;
    color: #0B0B0C !important;
  }
  .npx-hero__title{
    margin-top: 0 !important;
    font-size: clamp(38px, 8.6vw, 52px) !important;
    line-height: 1.03 !important;
    letter-spacing: -0.02em !important;
  }
  .npx-hero__sub{
    font-size: clamp(17px, 3.9vw, 20px) !important; /* ~+10% */
    line-height: 1.35 !important;
    max-width: 28ch !important;                      /* forțează ruperea ca în mockup */
    margin: 10px 0 16px !important;
  }
  .npx-btn{
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 16px 28px !important;
    font-size: 18px !important;
    border-radius: 14px !important;
  }
  .npx-btn::after{ content: "→"; font-weight: 800; line-height: 1; }

  /* BUTOANELE CU PICTOGRAME: absolute jos peste imagine, 3 coloane */
  .npx-hero__quick{
    position: absolute !important;
    left: 16px !important;
    right: 16px !important;
    bottom: 12px !important;
    z-index: 3 !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 0 !important;                 /* anulăm marginul de layout anterior */
  }
  .npx-qbtn{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff !important;
    border: 1px solid rgba(0,0,0,.06) !important;
    border-radius: 18px !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.06) !important;
    padding: 14px 10px !important;
    aspect-ratio: 1 / 1 !important;
    text-decoration: none !important;
  }
  .npx-qbtn__icon{ width: 56px !important; height: 56px !important; object-fit: contain !important; margin-bottom: 8px !important; }
  .npx-qbtn__label{ font-size: 18px !important; font-weight: 800 !important; color: #0B0B0C !important; line-height: 1.1 !important; text-align: center !important; }

  /* RAILUL cu buline rămâne sub hero (după secțiune) — scroller, fără BW/hover/tooltip */
  .npx-rail{
    order: 3 !important;
    display: grid !important;
    grid-auto-flow: column !important;
    /*
    grid-auto-columns: minmax(84px, 1fr) !important;
    */
    gap: 12px !important;
    padding: 16px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .npx-rail::-webkit-scrollbar{ display: none; }
  .npx-rail .rail-item__icon{
    width: 130px !important; height: 130px !important;
    background: #fff !important;
    border: 1px solid rgba(0,0,0,.06) !important;
    border-radius: 999px !important;
    box-shadow: 0 4px 12px rgba(0,0,0,.05) !important;
    display: grid; place-items: center; overflow: hidden;
  }
  .npx-rail .rail-item__icon img{
    width: 86px !important; height: 86px !important; object-fit: contain !important;
    filter: none !important;       /* fără alb-negru */
    transition: none !important;   /* fără hover */
  }
  .npx-rail .rail-item::before,
  .npx-rail .rail-item::after{ content: none !important; } /* fără tooltip */
}

/* ===== Mobile: font mai mic la textul butoanelor pictograme ===== */
@media (max-width: 1024px){
  .npx-qbtn__label{
    font-size: 14px !important;   /* mai mic decât 18px */
    font-weight: 700 !important;
  }
}

@media (max-width: 1024px){
  .npx-btn{
    font-size: clamp(14px, 3.8vw, 16px) !important;
    padding: clamp(10px, 2.8vw, 12px) clamp(18px, 5vw, 22px) !important;
    border-radius: 12px !important;
  }
}

/* === NPX — Quick icon buttons: responsive sizing ===================== */
/* Desktop / large screens */
@media (min-width: 1025px){
  .npx-hero__quick{
    gap: 0;            /* păstrăm space-between deja setat */
  }
  .npx-qbtn{
    /* lățime flexibilă dar limitată; formă mai „card” rotunjit */
    min-width: clamp(120px, 18vw, 220px);
    max-width: clamp(140px, 22vw, 240px);
    padding: clamp(10px, 1.2vw, 14px) clamp(12px, 1.6vw, 16px);
    border-radius: clamp(12px, 1.4vw, 16px);
  }
  .npx-qbtn__icon{
    width: clamp(22px, 1.8vw, 28px);
    height: clamp(22px, 1.8vw, 28px);
  }
  .npx-qbtn__label{
    font-size: clamp(12px, 1.2vw, 14px);
  }
}

/* Tabletă & Mobile */
@media (max-width: 1024px){
  /* 3 coloane, carduri pătrate și puțin mai mici decât acum */
  .npx-hero__quick{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;                     /* un pic mai strâns */
    margin: 12px 14px 0 !important;
  }
  .npx-qbtn{
    aspect-ratio: 1 / 1;           /* pătrat */
    padding: clamp(10px, 2.5vw, 14px) clamp(8px, 2vw, 12px);
    border-radius: clamp(12px, 3vw, 16px);
    box-shadow: 0 5px 16px rgba(0,0,0,.06);
  }
  .npx-qbtn__icon{
    /* icon ușor mai mic decât înainte */
    width: clamp(40px, 8.5vw, 52px);
    height: clamp(40px, 8.5vw, 52px);
    margin-bottom: clamp(6px, 1.6vw, 8px);
  }
  .npx-qbtn__label{
    /* text mai mic pe mobil, dar lizibil */
    font-size: clamp(13px, 3.4vw, 15px) !important;
    line-height: 1.15;
  }
}

/* Butoane pictograme – stil comun */
.rail-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
}

/* Eticheta text sub pictogramă (adaptează dacă ai altă clasă) */
.rail-item__label,
.rail-item .label,
.rail-item span[aria-hidden="label"]{
  /* Responsive fără să se facă imens pe desktop */
  font-size: clamp(10px, 2.6vw, 14px);
  line-height: 1.2;
  text-align: center;
  max-width: 9.5rem;           /* limitează lățimea textului */
  display: -webkit-box;         /* limitează numărul de rânduri */
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;             /* taie elegant peste 2 rânduri */
  text-overflow: ellipsis;
  word-break: break-word;
}

/* Păstrează butonul compact; reduce padding pe mobil */
@media (max-width: 480px){
  .rail-item{
    padding: 8px 10px;          /* mai mic decât pe desktop */
    min-height: auto;
  }
  .rail-item__icon{             /* opțional: micșorează și pictograma */
    transform: scale(0.9);
  }
  .rail-item__label,
  .rail-item .label,
  .rail-item span[aria-hidden="label"]{
    font-size: clamp(9px, 3.2vw, 12px);  /* și mai mic pe ecrane înguste */
    max-width: 8.5rem;
  }
}

/* Dacă butoanele trebuie să rămână mai „pătrate” */
.rail-item{
  aspect-ratio: 1 / 1;          /* pătrat fluid; necesită suport modern */
}

/* Dacă aspect-ratio nu e dorit, comentează linia de mai sus. */

/* === NPX Quick icon buttons — fix responsive label & prevenire "alungire" === */
@media (max-width:1024px){
  /* grilă 3 coloane, spațiu strâns */
  .npx-hero__quick{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  /* buton pătrat, padding mic (nu crește pe înălțime) */
  .npx-qbtn{
    aspect-ratio: 1 / 1 !important;
    padding: clamp(8px, 2.2vw, 12px) clamp(8px, 2vw, 12px) !important;
    overflow: hidden !important;             /* taie orice depășire internă */
  }

  /* iconul scalează relativ la buton */
  .npx-qbtn__icon{
    width: min(56px, 32%) !important;
    height: min(56px, 32%) !important;
    flex: 0 0 auto !important;
    margin-bottom: clamp(6px, 1.6vw, 8px) !important;
  }

  /* LABEL: font cu clamp + 2 rânduri max + elipsare; nu mai întinde butonul */
  .npx-qbtn__label{
    font-size: clamp(12px, 3.2vw, 14px) !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
    text-align: center !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: break-word !important;
    hyphens: auto !important;
    max-width: 100% !important;
  }
}

/* === FIX 1: Quick buttons (Horeca / E-commerce / Medical) — arată textul pe mobile/tabletă === */
@media (max-width:1024px){
  .npx-qbtn__label{
    display: -webkit-box !important;   /* forțează afișarea */
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: break-word !important;
    hyphens: auto !important;
    font-size: clamp(12px, 3.2vw, 14px) !important;
    line-height: 1.15 !important;
    color: #0B0B0C !important;
    text-align: center !important;
    max-width: 100% !important;
  }
}

/* === FIX 2: Buline colecții (RAIL) — ascuns pe desktop, VIZIBIL pe mobile === */
/* ai în CSS: .npx-rail .rail-item__label{ display:none !important; } — îl anulăm DOAR pe mobile */
@media (max-width:1024px){
  .npx-rail .rail-item{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:16px !important;
  }
  /*
  .npx-rail .rail-item__icon{
    width:84px !important;
    height:84px !important;
  }
    */
  .npx-rail .rail-item__label{
    display: -webkit-box !important;     /* re-afișează eticheta pe mobile */
    margin-top: 6px !important;
    text-align: center !important;
    max-width: 84px !important;          /* cât icon-ul, ca să nu lungească butonul */
    font-size: clamp(11px, 3.4vw, 13px) !important;
    line-height: 1.15 !important;
    -webkit-line-clamp: 2 !important;    /* 1–2 rânduri */
    -webkit-box-orient: vertical !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    color: #0B0B0C !important;
  }
}

/* === NPX — Mobile: label vizibil sub pictograme (quick buttons) + fallback din aria-label === */
@media (max-width:1024px){
  /* păstrăm pătratul dar facem loc pentru 2 rânduri de text */
  .npx-qbtn{
    aspect-ratio: 1 / 1 !important;
    padding: 12px 10px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
  }

  /* pictograma puțin mai mică pentru a încăpea și textul */
  .npx-qbtn__icon{
    width: clamp(44px, 8.2vw, 56px) !important;
    height: clamp(44px, 8.2vw, 56px) !important;
    margin-bottom: 2px !important;
    flex: 0 0 auto !important;
  }

  /* dacă există .npx-qbtn__label în HTML, arată-l corect */
  .npx-qbtn__label{
    display: -webkit-box !important;
    font-size: clamp(12px, 3.3vw, 14px) !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
    text-align: center !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: break-word !important;
    color: #0B0B0C !important;
    max-width: 100% !important;
  }

  /* FALLBACK: dacă NU există .npx-qbtn__label, ia textul din aria-label */
  .npx-qbtn[aria-label]:not(:has(.npx-qbtn__label))::after{
    content: attr(aria-label);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
    margin-top: 2px;
    font-size: clamp(12px, 3.3vw, 14px);
    line-height: 1.15;
    font-weight: 700;
    text-align: center;
    color: #0B0B0C;
  }
}

/* === RAIL (buline colecții) — arată eticheta doar pe mobil; fallback din aria-label dacă lipsește elementul === */
@media (max-width:1024px){
  /* dacă ai o regulă globală cu display:none, suprascriem aici */
  .npx-rail .rail-item__label{
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: normal !important;
    max-width: 84px !important;   /* cât bulina */
    font-size: clamp(11px, 3.4vw, 13px) !important;
    line-height: 1.15 !important;
    color: #0B0B0C !important;
    margin-top: 6px !important;
    text-align: center !important;
  }

  /* FALLBACK: dacă nu există .rail-item__label, generează-l din aria-label */
  .npx-rail .rail-item[aria-label]:not(:has(.rail-item__label))::after{
    content: attr(aria-label);
    display: block;
    max-width: 84px;
    margin-top: 6px;
    font-size: clamp(11px, 3.4vw, 13px);
    line-height: 1.15;
    color: #0B0B0C;
    text-align: center;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

/* (opțional) dacă vrei în continuare ascuns pe desktop: */
@media (min-width:1025px){
  .npx-rail .rail-item__label{ display:none !important; }
}

/* === NPX — Quick buttons: icon + etichetă vizibilă pe mobil === */
@media (max-width:1024px){
  .npx-hero__quick{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .npx-qbtn{
    aspect-ratio: 1 / 1 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 12px 10px !important;     /* puțin loc pentru text */
    overflow: hidden !important;
  }

  .npx-qbtn__icon{
    width: clamp(44px, 8.2vw, 56px) !important;
    height: clamp(44px, 8.2vw, 56px) !important;  /* icon ceva mai mic */
    margin: 0 !important;
    flex: 0 0 auto !important;
  }

  .npx-qbtn__label{
    display: -webkit-box !important;   /* asigură afișarea */
    -webkit-line-clamp: 2 !important;  /* max 2 rânduri */
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: break-word !important;
    font-size: clamp(12px, 3.3vw, 14px) !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
    color: #0B0B0C !important;
    text-align: center !important;
    max-width: 100% !important;
  }
}

/* Mobil + Light mode: fără overlay, fără întunecare */
@media (max-width:1024px) and (prefers-color-scheme: light){
  .npx-hero__stage::before{ content: none !important; } /* taie pseudo-elementul */
  .npx-hero__img{ filter: none !important; }            /* asigură lipsa oricărui filter */
}

/* Mobil + Dark mode: overlay discret ca textul să rămână lizibil */
@media (max-width:1024px) and (prefers-color-scheme: dark){
  .npx-hero__stage::before{
    content:"";
    position:absolute; inset:0; z-index:2; pointer-events:none;
    background: linear-gradient(180deg, rgba(17,24,39,.22) 0%, rgba(17,24,39,0) 60%);
  }
}


:root{
  --npx-bullet-bg: #FFFFFF;          /* alb */
  --npx-bullet-br: rgba(0,0,0,.06);  /* contur fin */
}


.npx-rail .rail-item__icon{
  background: var(--npx-bullet-bg) !important;
  border-color: var(--npx-bullet-br) !important;
  box-shadow: 0 4px 12px rgba(0,0,0,.06);
}

/* NPX — mobile: ridică bara de qbtn + fundal ușor transparent */
@media (max-width:1024px){
  .npx-hero__quick{
    position: absolute !important;
    /* mai sus decât înainte + respectă zona cu notch */
    bottom: calc(env(safe-area-inset-bottom) + clamp(28px, 5vh, 42px)) !important;
    left: 16px !important; 
    right: 16px !important;
  }

  /* doar fundalul devine semitransparent, nu și conținutul */
  .npx-qbtn{
    background: rgba(255,255,255,.85) !important;  /* 0.85–0.92 după gust */
    border: 1px solid rgba(0,0,0,.06) !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.08) !important;
    backdrop-filter: saturate(1.1) blur(2px);
  }
}

/* NPX — mobile: mută qbtn mai sus */
@media (max-width:1024px){
  .npx-hero__quick{
    /* mai sus decât înainte */
    bottom: calc(env(safe-area-inset-bottom) + clamp(72px, 12vh, 140px)) !important;
  }
}

/* (opțional) pe ecrane foarte scunde, păstrează un offset mai mic ca să nu calce peste titlu */
@media (max-width:1024px) and (max-height:700px){
  .npx-hero__quick{
    bottom: calc(env(safe-area-inset-bottom) + clamp(44px, 7vh, 72px)) !important;
  }
}

/* Desktop (≥1025px): qbtn mai compacte, dar iconul rămâne mare și clar */
@media (min-width:1025px){
  .npx-hero__quick{
    justify-content: center !important;   /* opțional: grupează-le frumos */
    gap: 16px !important;
  }

  .npx-qbtn{
    flex: 0 0 auto !important;
    /* mai înguste, fără să devină „pastile” prea mici */
    min-width: clamp(120px, 14vw, 180px) !important;
    max-width: clamp(140px, 16vw, 200px) !important;

    /* padding puțin redus, dar nu tăiem din conținut */
    padding: clamp(10px, 0.9vw, 12px) clamp(12px, 1.1vw, 14px) !important;
    border-radius: clamp(12px, 1.1vw, 14px) !important;
    gap: 8px !important;
  }

  /* ICON: NU mai scalăm agresiv; păstrăm minimum consistent vizual */
  .npx-qbtn__icon{
    width:  clamp(28px, 1.2vw, 32px) !important;
    height: clamp(28px, 1.2vw, 32px) !important;
    flex: 0 0 auto !important;
  }

  /* Label ușor mai mic, dar lizibil */
  .npx-qbtn__label{
    font-size: clamp(12px, 1.05vw, 14px) !important;
    line-height: 1.15 !important;
    white-space: nowrap;         /* pe desktop încercăm 1 rând */
  }
}

/* 1) Aplică 100% DOAR pe imaginea din <picture> (nu pe toate img din stage) */
.npx-hero__stage > picture,
.npx-hero__stage > picture > img{
  display:block;
  width:100%;
  height:100%;
}

/* 2) Reset ferm pentru orice <img> din quick buttons (desktop + general) */
.npx-hero__quick img{
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  opacity: 1 !important;
  filter: none !important;
}

/* 3) Desktop: qbtn mai compacte, dar pictograma rămâne clară (nu mai e „micșorată”) */
@media (min-width:1025px){
  .npx-hero__quick{ justify-content:center !important; gap:16px !important; }

  .npx-qbtn{
    flex: 0 0 auto !important;
    min-width: clamp(120px, 14vw, 180px) !important;
    max-width: clamp(140px, 16vw, 200px) !important;
    padding: clamp(10px, 0.9vw, 12px) clamp(12px, 1.1vw, 14px) !important;
    border-radius: clamp(12px, 1.1vw, 14px) !important;
    gap: 8px !important;
  }

  .npx-qbtn__icon{
    width: 32px !important;   /* forțăm dimensiunea reală a pictogramei */
    height: 32px !important;
    object-fit: contain !important;
    flex: 0 0 auto !important;
    display: block !important;
  }

  .npx-qbtn__label{
    font-size: clamp(12px, 1.05vw, 14px) !important;
    line-height: 1.15 !important;
    white-space: nowrap;
  }
}

@media (min-width:1025px){
  .npx-hero__quick{
    bottom: 20px !important;        /* le cobor un pic, nu stau „lipite” de elemente */
    justify-content: center !important;
    gap: 14px !important;
  }
  .npx-qbtn{
    flex: 0 0 auto !important;
    min-width: 136px !important;     /* mici, dar nu „pastile” */
    max-width: 156px !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.96) !important;
    border: 1px solid rgba(0,0,0,.06) !important;
    box-shadow: 0 4px 10px rgba(0,0,0,.08) !important;
    backdrop-filter: saturate(1.05) blur(1.5px);
    gap: 8px !important;
  }
  .npx-qbtn__icon{
    width: 30px !important;          /* icon clar, nu mai micșorăm agresiv */
    height: 30px !important;
    object-fit: contain !important;
  }
  .npx-qbtn__label{
    font-size: 12px !important;      /* lizibil, dar discret */
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }
  .npx-qbtn:hover{ transform: translateY(1px); box-shadow: 0 6px 14px rgba(0,0,0,.10) !important; }
  .npx-qbtn:focus-visible{ outline:2px solid var(--np-brand); outline-offset:2px; }
}

/* aplică 100% doar pe imaginea mare, nu pe icon-urile qbtn */
.npx-hero__stage > picture,
.npx-hero__stage > picture > img{ display:block; width:100%; height:100%; }
/* reset explicit pentru imagini din qbtn */
.npx-hero__quick img{
  width:auto !important; height:auto !important;
  max-width:100% !important; max-height:100% !important;
}

@media (min-width:1025px){
  .npx-hero__stage::before{
    content:""; position:absolute; inset:0; pointer-events:none; z-index:2;
    background: linear-gradient(90deg, rgba(255,255,255,.38) 0%, rgba(255,255,255,0) 42%);
  }
}

@media (min-width:1025px){
  .npx-rail .rail-item__icon{ width: 96px; height: 96px; }
  .npx-rail{ gap: 18px; }
}

/* dacă secțiunea are clasa .npx-hero.page-width, micșorează „golul” de sub ea */
.npx-hero.page-width{ margin-bottom: 24px; }   /* era vizibil mai mare în captură */


/* ===== Hero – lizibilitate subtitlu (MOBILE) ===== */
@media (max-width: 1024px){
  /* 1) Scut discret DOAR sub subtitlu */
  .npx-hero__sub{
    position: relative;
    z-index: 4;              /* peste imagine */
  }
  .npx-hero__sub::before{
    content:"";
    position:absolute;
    inset: -6px -12px;       /* margini mici în jurul textului */
    border-radius: 14px;
    background: linear-gradient(90deg,
      rgba(255,255,255,.94) 0%,
      rgba(255,255,255,.88) 60%,
      rgba(255,255,255,0) 100%);
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
    z-index:-1;              /* rămâne sub text */
    backdrop-filter: saturate(1.1) blur(2px);
    -webkit-backdrop-filter: saturate(1.1) blur(2px); /* iOS */
  }

  /* 2) Scrim foarte subtil în colțul stânga-sus al scenei */
  .npx-hero__stage{ position: relative; }
  .npx-hero__stage::after{
    content:"";
    position:absolute; inset:0;
    background: radial-gradient(120% 70% at 14% 18%,
      rgba(255,255,255,.92) 0%,
      rgba(255,255,255,.78) 32%,
      rgba(255,255,255,0) 60%);
    pointer-events:none;
    z-index: 2;   /* sub .npx-hero__text (care e z-index:3+) */
  }

  /* 3) Ușor boost de contrast la subtitlu */
  .npx-hero__sub{
    color:#0B0B0C;
    text-shadow: 0 1px 0 rgba(255,255,255,.35);
  }
}

/* ==== QBTN — ICON SUS, LABEL DEDESUBT (mereu vizibil) ==== */
/* Bază: pentru toate view-urile forțăm coloană (icon sus, text jos) */
.npx-hero__quick > .npx-qbtn{
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  overflow: hidden !important;     /* prevenim întinderi ciudate */
}

/* Labelul NU mai e ascuns niciodată */
.npx-qbtn .npx-qbtn__label{
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-align: center !important;
  color: #0B0B0C !important;
  line-height: 1.15 !important;
  max-width: 100% !important;
  margin: 0 !important;
}

/* 2 rânduri max, cu elipsare (dacă textul e mai lung) */
@supports (-webkit-line-clamp: 2){
  .npx-qbtn .npx-qbtn__label{
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: break-word !important;
  }
}

/* Fallback: dacă HTML-ul butonului NU are .npx-qbtn__label,
   luăm textul din aria-label ca să fie tot timpul vizibil */
.npx-qbtn[aria-label]:not(:has(.npx-qbtn__label))::after{
  content: attr(aria-label);
  display: block;
  margin-top: 4px;
  text-align: center;
  line-height: 1.15;
  color: #0B0B0C;
}

/* ==== DIMENSIONARE ==== */

/* Mobil & tabletă (<=1024px) — icon mare, text lizibil */
@media (max-width:1024px){
  .npx-qbtn{ aspect-ratio: 1 / 1 !important; padding: 12px 10px !important; }
  .npx-qbtn__icon{ width: clamp(44px, 8.2vw, 56px) !important; height: clamp(44px, 8.2vw, 56px) !important; }
  .npx-qbtn__label{ font-size: clamp(12px, 3.3vw, 14px) !important; }
  .npx-qbtn[aria-label]:not(:has(.npx-qbtn__label))::after{ font-size: clamp(12px, 3.3vw, 14px); }
}

/* Desktop (>=1025px) — butoane compacte, icon 22–24px, label 12–12.5px */
@media (min-width:1025px){
  .npx-hero__quick{
    display: flex !important;                 /* ne asigurăm că nu rămâne grid */
    gap: 12px !important;
    bottom: 18px !important;
  }
  .npx-hero__quick > .npx-qbtn{
    aspect-ratio: auto !important;            /* nu mai pătrățim pe desktop */
    min-width: 120px !important;
    max-width: 148px !important;
    padding: 9px 12px !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.96) !important;
    border: 1px solid rgba(0,0,0,.06) !important;
    box-shadow: 0 4px 10px rgba(0,0,0,.08) !important;
  }
  .npx-qbtn__icon{ width: 22px !important; height: 22px !important; object-fit: contain !important; }
  .npx-qbtn__label{ font-size: 12px !important; }
  .npx-qbtn[aria-label]:not(:has(.npx-qbtn__label))::after{ font-size: 12px; }
}

/* Desktop mare (>=1361px) — un pic mai aerisit */
@media (min-width:1361px){
  .npx-hero__quick{ gap: 14px !important; bottom: 20px !important; }
  .npx-hero__quick > .npx-qbtn{ min-width: 126px !important; max-width: 156px !important; }
  .npx-qbtn__icon{ width: 24px !important; height: 24px !important; }
  .npx-qbtn__label{ font-size: 12.5px !important; }
}

/* ==== MOBILE FIX — label sub pictogramă, mereu vizibil (fără :has) ==== */
@media (max-width:1024px){
  /* aranjare icon sus, label jos */
  .npx-hero__quick .npx-qbtn{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
  }

  /* dacă există elementul .npx-qbtn__label în HTML, arată-l clar */
  .npx-hero__quick .npx-qbtn__label{
    display:block !important;
    margin-top:4px !important;
    text-align:center !important;
    color:#0B0B0C !important;
    line-height:1.15 !important;
    font-weight:700 !important;
    font-size:clamp(12px,3.3vw,14px) !important;
  }

  /* FALLBACK robust: dacă nu există .npx-qbtn__label, ia textul din aria-label */
  .npx-hero__quick .npx-qbtn[aria-label]::after{
    content: attr(aria-label);
    display:block;
    margin-top:4px;
    text-align:center;
    color:#0B0B0C;
    line-height:1.15;
    font-weight:700;
    font-size:clamp(12px,3.3vw,14px);
  }

  /* Optional: dacă browserul suportă :has, ascunde fallback-ul când există label real */
  @supports selector(:has(*)){
    .npx-hero__quick .npx-qbtn:has(.npx-qbtn__label)::after{
      content:none; display:none;
    }
  }
}
/* === NPX — QBTN: icon sus, label jos, vizibil pe mobil & desktop === */
.npx-hero__quick .npx-qbtn{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
}

/* Forțează afișarea label-ului indiferent de utilitare "hidden" din temă */
.npx-hero__quick .npx-qbtn .npx-qbtn__label{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  position:static !important;
  width:100% !important; height:auto !important;
  clip:auto !important; clip-path:none !important;
  overflow:visible !important;
  white-space:normal !important;

  text-align:center !important;
  color:#0B0B0C !important;
  font-weight:700 !important;
  line-height:1.15 !important;
}

/* Mobil: fă loc pentru 2 rânduri de text și previno tăierea */
@media (max-width:1024px){
  .npx-hero__quick .npx-qbtn{
    aspect-ratio:auto !important;   /* anulează pătratul care taie textul */
    min-height:96px;                 /* 92–108px după preferință */
    padding:12px 10px !important;
  }
  .npx-hero__quick .npx-qbtn__label{
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:clamp(12px,3.3vw,14px) !important;
  }
  .npx-hero__quick .npx-qbtn__icon{
    width:clamp(42px,8vw,54px) !important;
    height:clamp(42px,8vw,54px) !important;
    margin:0 !important;
    flex:0 0 auto !important;
  }
}

/* Fallback: dacă din greșeală lipsește span-ul cu label, folosește aria-label */
@media (max-width:1024px){
  .npx-hero__quick .npx-qbtn[aria-label]::after{
    content: attr(aria-label);
    display:block;
    margin-top:2px;
    text-align:center;
    color:#0B0B0C;
    font-weight:700;
    line-height:1.15;
    font-size:clamp(12px,3.3vw,14px);
  }
  /* dacă există label real, ascunde fallback-ul */
  @supports selector(:has(*)){
    .npx-hero__quick .npx-qbtn:has(.npx-qbtn__label)::after{ content:none; }
  }
}

/* NPX – strapline sub hero (o singură linie) */
.npx-strapline{
  margin: 8px 0 14px;
  text-align: center;
  color: #0B0B0C;
  font-weight: 700;
  letter-spacing: .1px;
  white-space: nowrap;          /* forțează un singur rând */
  overflow: hidden;             /* dacă ecranul e foarte îngust */
  text-overflow: ellipsis;      /* taie elegant la nevoie */
  font-size: clamp(14px, 1.2vw, 16px);
}
.npx-strapline .sep{ margin: 0 .55em; opacity: .45; }

@media (max-width: 480px){
  .npx-strapline{ font-size: 13px; margin: 6px 0 12px; }
}

/* Rând dedicat în grila Hero: pe desktop se întinde pe ambele coloane */
.npx-strapline-row{
  grid-column: 1 / -1;           /* span across rail + stage */
  display: flex;
  justify-content: center;       /* centrează conținutul */
}

/* Paragraful, o singură linie, centrat, cu fallback elegant */
.npx-strapline{
  margin: 8px 0 18px;
  text-align: center;
  color: #0B0B0C;
  font-weight: 700;
  letter-spacing: .1px;
  white-space: nowrap;           /* un singur rând */
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: clamp(14px, 1.1vw, 16px);
}
@media (max-width: 1024px){
  .npx-strapline{ margin: 6px 0 14px; font-size: 14px; }
}

/* Desktop: rail = aceeași înălțime cu hero + scroll vertical discret */
@media (min-width:1025px){
  /* Containerul de grid întinde ambele coloane pe aceeași înălțime */
  .npx-hero.page-width{ align-items: stretch; }

  /* Rail-ul devine coloană full-height, cu scroll doar când e nevoie */
  .npx-rail{
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 12px 8px;
    height: 100%;                 /* ia exact înălțimea hero-ului */
    overflow: auto;               /* apare scroll doar dacă e necesar */
    overscroll-behavior: contain; /* nu „trage” pagina la capete */
    scrollbar-width: thin;        /* Firefox */
    scrollbar-color: rgba(17,24,39,.28) transparent;
    /* fade subtil sus/jos, ca să indice că se poate scrolla */
    -webkit-mask-image: linear-gradient(to bottom,
                          transparent 0, black 16px,
                          black calc(100% - 16px), transparent 100%);
            mask-image: linear-gradient(to bottom,
                          transparent 0, black 16px,
                          black calc(100% - 16px), transparent 100%);
  }
  /* WebKit scrollbar subțire și discret */
  .npx-rail::-webkit-scrollbar{ width: 6px; }
  .npx-rail::-webkit-scrollbar-track{ background: transparent; }
  .npx-rail::-webkit-scrollbar-thumb{
    background: rgba(17,24,39,.28);
    border-radius: 999px;
  }
  .npx-rail:hover::-webkit-scrollbar-thumb{ background: rgba(17,24,39,.45); }

  /* Bulele nu se întind; rămân la dimensiunea lor naturală */
  .npx-rail .rail-item{ flex: 0 0 auto; }
}

/* Păstrăm comportamentul orizontal pe mobil/tabletă (nimic de schimbat aici) */

/* ===== Desktop: rail = înălțimea hero + scroll discret; fără border pe buline ===== */
@media (min-width:1025px){

  /* asigură că ambele coloane din grid se întind pe aceeași înălțime */
  .npx-hero.page-width{ align-items: stretch; }

  /* rail-ul stă pe toată înălțimea rândului (adică a scenei) și devine scrollabil */
  .npx-hero.page-width .npx-rail{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    height: 100%;                 /* = înălțimea .npx-hero__stage */
    max-height: 100%;
    overflow-y: auto;             /* scroll doar când e nevoie */
    overscroll-behavior: contain; /* nu „trag” restul paginii la scroll */
    padding: 8px 4px 12px;
    scrollbar-width: thin;        /* Firefox */
    scrollbar-color: rgba(0,0,0,.18) transparent;
  }
  .npx-hero.page-width .npx-rail::-webkit-scrollbar{ width: 8px; }            /* Chrome/Edge */
  .npx-hero.page-width .npx-rail::-webkit-scrollbar-thumb{
    background: rgba(0,0,0,.16);
    border-radius: 999px;
  }

  /* bulina: fără border, doar umbră fină */
  .npx-rail .rail-item__icon{
    border: 0 !important;         /* scoate conturul */
    background: #fff;
    box-shadow: 0 4px 12px rgba(0,0,0,.06);
  }

  /* dimensiuni confortabile pe desktop */
  .npx-rail .rail-item__icon{ width: 96px; height: 96px; }
  .npx-rail .rail-item__icon img{ width: 72px; height: 72px; object-fit: contain; }
}

/* ==== Desktop: rail = fix cât hero, cu scroll vertical; fără border pe buline ==== */
@media (min-width:1025px){
  /* întinde ambele coloane pe aceeași înălțime */
  .npx-hero.page-width{ align-items: stretch; }

  /* IMPORTANT: permite itemilor din grid să se "strângă" la înălțimea track-ului */
  .npx-hero.page-width > .npx-rail,
  .npx-hero.page-width > .npx-hero__stage{
    min-height: 0;
  }

  /* rail = exact înălțimea rândului (adică a .npx-hero__stage) + scroll discret */
  .npx-hero.page-width > .npx-rail{
    height: 100%;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 8px 4px 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;

    /* scroller discret */
    scrollbar-width: thin;
    scrollbar-color: rgba(0,0,0,.18) transparent;
  }
  .npx-hero.page-width > .npx-rail::-webkit-scrollbar{ width: 8px; }
  .npx-hero.page-width > .npx-rail::-webkit-scrollbar-thumb{
    background: rgba(0,0,0,.18);
    border-radius: 999px;
  }

  /* scoatem conturul bulinelor pe desktop (override sigur) */
  .npx-hero.page-width .npx-rail .rail-item__icon{
    border: 0 !important;
    background: #fff;
    box-shadow: 0 4px 12px rgba(0,0,0,.06);
  }

  /* (opțional) dimensiuni confortabile */
  .npx-hero.page-width .npx-rail .rail-item__icon{ width:96px; height:96px; }
  .npx-hero.page-width .npx-rail .rail-item__icon img{ width:72px; height:72px; object-fit:contain; }
}

/* ==== NPX — Desktop: rail = fix cât hero, cu scroll; fără border pe buline ==== */
@media (min-width:1025px){
  /* 1) Primul rând al grilei are exact înălțimea hero-ului */
  .npx-hero.page-width{
    /* dacă vrei altă înălțime, schimbă aici o singură valoare */
    --hero-h: 680px;
    grid-template-rows: var(--hero-h) auto;  /* <<< rând 1 fix + rând 2 pentru strapline */
    align-items: stretch;
  }
  /* asigură coerența: și scena are exact aceeași înălțime */
  .npx-hero__stage{ height: var(--hero-h) !important; }

  /* 2) Itemii din rând pot "încăpea" în track-ul fix */
  .npx-hero.page-width > .npx-rail,
  .npx-hero.page-width > .npx-hero__stage{ min-height: 0 !important; }

  /* 3) Rail = scroll vertical discret în limita rândului */
  .npx-hero.page-width > .npx-rail{
    height: 100%;
    max-height: var(--hero-h);
    overflow-y: auto;
    overscroll-behavior: contain;  /* nu trage pagina la capete */
    display: flex; flex-direction: column; align-items: center;
    gap: 14px; padding: 8px 4px 12px;

    /* bara de scroll discretă */
    scrollbar-width: thin;
    scrollbar-color: rgba(0,0,0,.18) transparent;
  }
  .npx-hero.page-width > .npx-rail::-webkit-scrollbar{ width: 8px; }
  .npx-hero.page-width > .npx-rail::-webkit-scrollbar-thumb{
    background: rgba(0,0,0,.18);
    border-radius: 999px;
  }

  /* 4) Fără border la buline pe desktop — override sigur */
  .npx-hero.page-width .npx-rail .rail-item__icon{
    border: 0 !important;
    background: #fff;
    box-shadow: 0 4px 12px rgba(0,0,0,.06);
    width: 96px; height: 96px;
  }
  .npx-hero.page-width .npx-rail .rail-item__icon img{
    width: 72px; height: 72px; object-fit: contain;
  }

  /* bulinele nu se întind */
  .npx-hero.page-width .npx-rail .rail-item{ flex: 0 0 auto; }
}

/* ==== NPX — Tooltip sub bulină (desktop, cu hover) ==== */
@media (min-width:1025px) and (hover:hover){
  .npx-rail .rail-item{ position: relative; }

  /* bulină → tooltip sub ea, centrat pe orizontală */
  .npx-rail .rail-item:hover::after{
    content: attr(aria-label);
    position: absolute;
    left: 50%;
    top: calc(100% + 10px);          /* SUB bulină */
    transform: translateX(-50%);
    background: #fff;
    color: #111827;
    border: 1px solid rgba(0,0,0,.08);
    padding: 6px 10px;
    border-radius: 10px;
    box-shadow: 0 6px 16px rgba(0,0,0,.12);
    white-space: nowrap;
    font-weight: 700;
    font-size: 13px;
    z-index: 6;
    pointer-events: none;             /* nu „agață” scroll-ul */
  }

  /* săgeată mică între bulină și tooltip */
  .npx-rail .rail-item:hover::before{
    content: "";
    position: absolute;
    left: 50%;
    top: calc(100% + 2px);
    width: 8px; height: 8px;
    background: #fff;
    border-top: 1px solid rgba(0,0,0,.08);
    border-left: 1px solid rgba(0,0,0,.08);
    transform: translateX(-50%) rotate(45deg);
    z-index: 6;
    pointer-events: none;
  }
}

@media (max-width: 480px){
  .npx-strapline{ font-size: 12.5px; }
}

/* Strapline – mobile: păstrează 1 rând, scurtează mesajul */
@media (max-width: 520px){
  .npx-strapline{ font-size: 13px; letter-spacing: 0; }
}
@media (max-width: 420px){
  .npx-strapline .strap-extra,
  .npx-strapline .sep-extra{ display: none; }  /* taie doar „extra” + punctul dinainte */
  .npx-strapline{ font-size: 13px; }
}
@media (max-width: 360px){
  .npx-strapline{ font-size: 12.5px; }
}

.npx-only-desktop{ display:none!important; }
.npx-only-mobile{ display:inline-flex!important; }
@media (min-width:1025px){
  .npx-only-desktop{ display:inline-flex!important; }
  .npx-only-mobile{ display:none!important; }
}
.npx-wa-top{
  display:inline-flex; align-items:center; gap:.4rem;
  margin-left:.75rem; padding-left:.75rem;
  border-left:1px solid rgba(0,0,0,.1);
  opacity:.9; color:inherit; text-decoration:none;
}
.npx-wa-top:hover{ opacity:1; color:#25D366; }
.npx-wa-text{ white-space:nowrap; font-size:.95rem; line-height:1; }
.npx-wa-mobile{
  width:40px; height:40px; align-items:center; justify-content:center;
  opacity:.9; color:inherit; text-decoration:none;
}
.npx-wa-mobile:hover{ opacity:1; color:#25D366; }

/* === NPX — Muta "bulinele" sub HERO pe desktop (override hard) === */
@media (min-width:1025px){
  /* 1) Hero = o singură coloană, două rânduri: rând 1 = imaginea, rând 2 = bulinele */
  .npx-hero.page-width{
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    gap: 16px !important;
  }

  /* 2) Rail-ul (bulinele) devine rândul 2, pe toată lățimea */
  .npx-hero.page-width .npx-rail{
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: 96px !important;    /* lățimea "bulinei" */
    justify-content: center !important;
    gap: 14px !important;
    height: auto !important;
    overflow: visible !important;
    padding: 6px 0 0 !important;
  }

  /* 3) Dimensiunea "bulinei" pe desktop */
  .npx-hero.page-width .npx-rail .rail-item__icon{
    width: 96px !important;
    height: 96px !important;
    border-radius: 9999px !important;
  }
}

/* (opțional) pe desktop vrei și etichetele sub buline? decomentează: */

@media (min-width:1025px){
  .npx-rail .rail-item__label{ 
    display:block !important; 
    text-align:center; 
    font-weight:700; 
    font-size:12.5px;
    margin-top:6px;
  }
}

/* NPX — mută bulinele sub strapline + stil curat, luminos (desktop) */
@media (min-width:1025px){
  /* grilă cu 3 rânduri: 1=hero, 2=strapline, 3=buline */
  .npx-hero.page-width{
    --hero-h: 680px;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: var(--hero-h) auto auto !important;
    gap: 14px !important;
  }
  .npx-hero__stage{ height: var(--hero-h) !important; }
  .npx-strapline-row{ grid-row: 2 !important; grid-column: 1 / -1 !important; }
  .npx-rail{
    grid-row: 3 !important; grid-column: 1 / -1 !important;
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: 96px !important;     /* lățimea bulinei */
    justify-content: center !important;
    gap: 14px !important;
    padding: 6px 0 0 !important;
    overflow: visible !important;
  }

  /* bulină luminoasă */
  .npx-rail .rail-item__icon{
    width: 96px !important; height: 96px !important;
    border-radius: 9999px !important;
    background: #fff !important;
    border: 1px solid rgba(0,0,0,.06) !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.06) !important;
  }
  .npx-rail .rail-item__icon img{
    width: 68px !important; height: 68px !important; object-fit: contain !important;
  }
  .npx-rail .rail-item:hover .rail-item__icon{
    transform: translateY(-1px); transition: transform .08s ease, box-shadow .12s ease;
    box-shadow: 0 10px 22px rgba(0,0,0,.10) !important;
  }
 
/* === NPX — DESKTOP: buline SUB hero, 6 vizibile, restul pe scroll === */
@media (min-width:1025px){
  .npx-hero.page-width{
    --hero-h: 680px;
    --bullet: 112px;            /* diametrul bulinei (poți schimba) */
    --bullet-gap: 16px;         /* spațiul dintre buline */
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: var(--hero-h) auto auto !important;  /* hero / strapline / buline */
    gap: 14px !important;
  }
  .npx-hero__stage{ height: var(--hero-h) !important; }
  .npx-strapline-row{ grid-row: 2 !important; grid-column: 1 / -1 !important; }

  .npx-hero.page-width .npx-rail{
    grid-row: 3 !important; grid-column: 1 / -1 !important;

    /* 6 la vedere; restul -> overflow orizontal */
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: var(--bullet) !important;
    grid-template-columns: repeat(6, var(--bullet)) !important;
    justify-content: center !important;
    gap: var(--bullet-gap) !important;

    width: calc(6 * var(--bullet) + 5 * var(--bullet-gap)) !important;
    margin-inline: auto !important;

    overflow-x: auto !important; overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    padding-top: 6px !important;

    /* fade pe margini = indiciu că se poate scrolla */
    -webkit-mask-image: linear-gradient(to right,
      transparent 0, black 18px, black calc(100% - 18px), transparent 100%);
            mask-image: linear-gradient(to right,
      transparent 0, black 18px, black calc(100% - 18px), transparent 100%);
  }
  .npx-rail .rail-item{ scroll-snap-align: center; }

  /* bulină mare, curată, luminoasă */
  .npx-rail .rail-item__icon{
    width: var(--bullet) !important; height: var(--bullet) !important;
    border-radius: 9999px !important;
    background:#fff !important;
    border:1px solid rgba(0,0,0,.06) !important;
    box-shadow:0 6px 18px rgba(0,0,0,.08) !important;
  }
  .npx-rail .rail-item__icon img{
    width: calc(var(--bullet) * .72) !important;   /* ~80px la 112 */
    height: calc(var(--bullet) * .72) !important;
    object-fit: contain !important;
  }
  .npx-rail .rail-item:hover .rail-item__icon{
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(0,0,0,.12) !important;
    transition: transform .08s ease, box-shadow .12s ease;
  }

  /* eticheta sub bulină — vizibilă pe desktop */
  .npx-rail .rail-item__label{
    display:block !important;
    text-align:center !important;
    font-weight:700 !important;
    font-size:12.5px !important;
    white-space:nowrap !important;
    margin-top:6px !important;
    color:#0B0B0C !important;
  }
}

/* ——— Desktop: 6 buline sub HERO, mai mari, restul ascunse ——— */
@media (min-width:1025px){
  /* grilă: 1=hero, 2=strapline, 3=buline */
  .npx-hero.page-width{
    --hero-h: 680px;
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows: var(--hero-h) auto auto !important;
    gap:14px !important;
  }
  .npx-hero__stage{ height:var(--hero-h) !important; }

  /* buline sub hero, centrate, 6 vizibile */
  .npx-rail{
    grid-row:3 !important;
    display:grid !important;
    grid-auto-flow:column !important;
    grid-auto-columns:104px !important;
    justify-content:center !important;
    gap:16px !important;
    padding-top:6px !important;
    overflow:visible !important;
  }
  .npx-rail .rail-item:nth-child(n+7){ display:none !important; } /* doar primele 6 */

  .npx-rail .rail-item__icon{
    width:104px !important; height:104px !important;
    border-radius:9999px !important;
    background:#fff !important;
    border:1px solid rgba(0,0,0,.06) !important;
    box-shadow:0 6px 18px rgba(0,0,0,.06) !important;
  }
  .npx-rail .rail-item__icon img{
    width:76px !important; height:76px !important; object-fit:contain !important;
  }
  .npx-rail .rail-item__label{
    display:block !important;
    margin-top:6px !important;
    text-align:center !important;
    font-weight:700 !important;
    font-size:12.5px !important;
    max-width:104px !important;
    line-height:1.15 !important;
  }

  /* un pic de „aer” între headline și quick tiles din scena hero */
  .npx-hero__quick{ bottom:20px !important; }

  /* strapline compact, pe o singură linie */
  .npx-strapline{ margin:8px 0 14px; white-space:nowrap; }
}

/* ——— Mobile rămâne cu carusel orizontal (nimic de schimbat) ——— */

/* pe wrapperul care are overflow-x:auto (caruselul bulinelor) */
.carousel-bullets{
  -ms-overflow-style: none;     /* IE/Edge vechi */
  scrollbar-width: none;        /* Firefox */
}
.carousel-bullets::-webkit-scrollbar{ display:none; }  /* Chrome/Safari */

@media (min-width:1025px){
  .npx-hero__quick{ bottom: 22px; }
}

/* DESKTOP — 6 buline vizibile + SCROLL orizontal cu bară vizibilă */
@media (min-width:1025px){
  .npx-hero.page-width .npx-rail{
    display: grid !important;
    grid-auto-flow: column !important;
    --bullet: 112px;               /* poți schimba */
    --bullet-gap: 16px;
    grid-auto-columns: var(--bullet) !important;
    grid-template-columns: repeat(6, var(--bullet)) !important;
    justify-content: center !important;
    gap: var(--bullet-gap) !important;
    width: calc(6 * var(--bullet) + 5 * var(--bullet-gap)) !important;
    margin-inline: auto !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    /* IMPORTANT: scoate fade-ul care ascundea bara */
    -webkit-mask-image: none !important;
            mask-image: none !important;

    /* fă bara vizibilă și decentă */
    scrollbar-width: auto;                /* Firefox */
  }
  .npx-hero.page-width .npx-rail::-webkit-scrollbar{ height: 8px; }
  .npx-hero.page-width .npx-rail::-webkit-scrollbar-thumb{
    background: rgba(0,0,0,.25); border-radius: 999px;
  }

  /* nu mai ascunde itemii 7+ pe desktop */
  .npx-rail .rail-item:nth-child(n+7){ display: block !important; }
}

/* === FIX FINAL — MOBILE/TABLET (≤1024px): buline mari & luminoase ca pe desktop; scroll rămâne === */
@media (max-width:1024px){
  /* Layout & sizing */
  .npx-rail{
    --bullet: 112px;                 /* diametrul bulinei (poți pune 96/104/112) */
    --gap: 16px;
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: var(--bullet) !important;
    gap: var(--gap) !important;
    padding: 16px !important;

    /* Păstrăm caruselul orizontal pe mobil */
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .npx-rail::-webkit-scrollbar{ display: none; }

  /* Bulina: albă, luminoasă, mare (ca pe desktop) */
  .npx-rail .rail-item__icon{
    width: var(--bullet) !important;
    height: var(--bullet) !important;
    border-radius: 9999px !important;
    background: #fff !important;
    border: 1px solid rgba(0,0,0,.06) !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.08) !important;
  }
  .npx-rail .rail-item__icon img{
    width: calc(var(--bullet) * .72) !important;
    height: calc(var(--bullet) * .72) !important;
    object-fit: contain !important;
    filter: none !important;            /* fără alb-negru */
    opacity: 1 !important;
  }

  /* Eticheta sub bulină: vizibilă pe mobil, max 2 rânduri */
  .npx-rail .rail-item__label{
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;

    max-width: var(--bullet) !important;
    margin-top: 6px !important;
    text-align: center !important;
    font-weight: 700 !important;
    font-size: clamp(12px, 3.5vw, 14px) !important;
    color: #0B0B0C !important;
  }

  /* Fallback: dacă lipsește .rail-item__label, arată aria-label ca text */
  .npx-rail .rail-item[aria-label]:not(:has(.rail-item__label))::after{
    content: attr(aria-label);
    display: block;
    max-width: var(--bullet);
    margin-top: 6px;
    text-align: center;
    font-weight: 700;
    font-size: clamp(12px, 3.5vw, 14px);
    color: #0B0B0C;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}



/* Desktop */
@media (min-width:1025px){
  .npx-rail .rail-item__icon{
    width: var(--bullet-desktop) !important;
    height: var(--bullet-desktop) !important;
  }
  .npx-rail .rail-item__icon img{
    width: calc(var(--bullet-desktop)*.72) !important;
    height: calc(var(--bullet-desktop)*.72) !important;
  }
}

/* Mobile/Tablet */
@media (max-width:1024px){
  .npx-rail{
    grid-auto-columns: var(--bullet-mobile) !important; /* păstrează caruselul */
  }
  .npx-rail .rail-item__icon{
    width: var(--bullet-mobile) !important;
    height: var(--bullet-mobile) !important;
  }
  .npx-rail .rail-item__icon img{
    width: calc(var(--bullet-mobile)*.66) !important;
    height: calc(var(--bullet-mobile)*.66) !important;
  }
}

/* === OVERRIDE FINAL – mobil: dimensiunea bulinelor === */
:root{
  --bullet-desktop: 112px;   /* ajustează după nevoie */
  --bullet-mobile: 200px;    /* setează ce vrei pe mobil */
}

/* Desktop */
@media (min-width:1025px){
  .npx-hero.page-width .npx-rail .rail-item__icon{
    width: var(--bullet-desktop) !important;
    height: var(--bullet-desktop) !important;
  }
  .npx-hero.page-width .npx-rail .rail-item__icon img{
    width: calc(var(--bullet-desktop)*.72) !important;
    height: calc(var(--bullet-desktop)*.72) !important;
  }
}

/* Mobile / Tablet */
@media (max-width:1024px){
  .npx-hero.page-width .npx-rail{
    grid-auto-columns: var(--bullet-mobile) !important;
  }
  .npx-hero.page-width .npx-rail .rail-item__icon{
    width: var(--bullet-mobile) !important;
    height: var(--bullet-mobile) !important;
    transform: none !important; /* anulează scale-ul de la ≤480px */
  }
  .npx-hero.page-width .npx-rail .rail-item__icon img{
    width: calc(var(--bullet-mobile)*.66) !important;
    height: calc(var(--bullet-mobile)*.66) !important;
  }
}

/* Anulează micșorarea de pe ecrane foarte mici */
@media (max-width:480px){
  .npx-hero.page-width .npx-rail .rail-item__icon{ transform:none !important; }
}

/* === HARD OVERRIDE — Buline mari pe mobil/tabletă (fără .page-width) === */
:root{ --bullet-mobile: 200px; } /* schimbă după nevoie */

@media (max-width:1024px){
  .npx-rail{
    grid-auto-columns: var(--bullet-mobile) !important;
  }

  /* creștem bulina — selector egal/superior ca specificitate + !important */
  .npx-rail .rail-item__icon,
  .npx-rail .rail-item .rail-item__icon{
    width: var(--bullet-mobile) !important;
    height: var(--bullet-mobile) !important;
    transform: none !important; /* anulează scale-ul de la ≤480px */
  }

  .npx-rail .rail-item__icon img,
  .npx-rail .rail-item .rail-item__icon img{
    width: calc(var(--bullet-mobile) * .66) !important;
    height: calc(var(--bullet-mobile) * .66) !important;
  }
}

/* ≤480px: siguranță — taie orice scale global */
@media (max-width:480px){
  .rail-item__icon{ transform:none !important; }
}

:root{ --bullet-mobile: 200px; } /* ajustează 140–220px după gust */

@media (max-width:1024px){
  .npx-rail{
    grid-auto-columns: var(--bullet-mobile) !important;
  }
  .npx-rail .rail-item__icon{
    width: var(--bullet-mobile) !important;
    height: var(--bullet-mobile) !important;
    transform: none !important;              /* anulează orice scale pe mobil */
  }
  .npx-rail .rail-item__icon img{
    width: calc(var(--bullet-mobile)*.66) !important;
    height: calc(var(--bullet-mobile)*.66) !important;
  }
}



:root{
  --bullet-mobile: 200px;   /* diametrul bulinei pe mobil */
  --bullet-gap: 14px;       /* distanța dintre buline (poți pune 14–18px) */

}

@media (max-width:1024px){
  .npx-rail{
    display: flex !important;
    gap: var(--bullet-gap) !important;       /* SPAȚIUL DINTRE BULINE */
    overflow-x: auto !important;
    padding: 12px !important;
    -webkit-overflow-scrolling: touch;
  }
  .npx-rail .rail-item{
    flex: 0 0 auto !important;
    width: var(--bullet-mobile) !important;   /* fiecare item are lățimea bulinei */
  }
  .npx-rail .rail-item__icon{
    width: var(--bullet-mobile) !important;
    height: var(--bullet-mobile) !important;
  }
}

/* ===== Netpack — STOP „fuga” la Total (desktop) ===== */
.npx-desk-total{               /* wrapper-ul pe care îl inserează JS */
  white-space: nowrap;         /* nu rupe pe 2 rânduri */
}
.npx-desk-total .val,
[id^="dsk-total-wrap"] .val{   /* fallback după id */
  display: inline-block;
  min-width: 9.5ch;            /* rezervă loc pt. ex. „12 345,67 lei” */
  text-align: right;
  font-variant-numeric: tabular-nums;   /* cifre cu lățime egală */
  font-feature-settings: "tnum" 1, "lnum" 1;
  font-weight: 700;            /* greutate constantă = lățime constantă */
}

/* păstrează coloana de acțiuni stabilă, ca să nu „pulsese” rândul */
.set-data-table td.content-format--addToCart{
  width: 172px;                /* ajustează 164–188px după layoutul tău */
}

/* opțional: aliniază numeric toate totalurile/prețurile */
.price-cell .rjnxt-price,
.npx-desk-total .val,
[id^="dsk-total-wrap"] .val{
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
}

/* dacă inputul mai variază în lățime, îl fixăm ușor mai lat */
@media (min-width:1024px){
  .quantity-btn{ height:36px; }
  .article-quantity-input{ width:54px; } /* era 40px */
}

/* ——— Scoate COMPLET wishlist-ul (inima) ——— */

/* Header / icon link */
.header__icons a[href*="wishlist"],
a.header__icon--wishlist, .m-header__icon--wishlist,
.m-header__icons a[href*="wishlist"]{
  display:none !important;
}

/* Carduri produs (colecții, recomandate etc.) */
button.m-wishlist-button,
.m-wishlist-button,
.m-product-card__wishlist, .m-product-card__wishlist * ,
.m-product-card__action .m-wishlist-button,
.m-product-card__addons .m-wishlist-button,
.product-item [class*="wishlist"]{
  display:none !important;
  pointer-events:none !important;
}

/* Fallback pe atribute (RO/EN) – acoperă teme/aplicații diferite */
[aria-label*="dorin"],
[aria-label*="wishlist"],
[aria-label*="favorite"],
a[href*="/pages/wishlist"],
a[href*="wishlist"]{
  display:none !important;
  pointer-events:none !important;
}

/* ===== Anti-„salt” pe desktop: păstrează spațiul totalului de rând ===== */
@media (min-width: 991px){
  .npx-desk-total{
    display:inline-flex !important;
    align-items:center;
    gap:8px;
  }
  .npx-desk-total .val{
    display:inline-block;
    min-width:14ch;           /* mărește dacă ai sume mai lungi */
    text-align:right;
    font-variant-numeric: tabular-nums;
  }
  /* qty=0 -> ascunde DOAR cifrele, dar păstrează spațiul ocupat */
  .npx-desk-total.is-zero .val{
    visibility:hidden;
  }
}


/*=========================================== table css end ========================================= */