/* =================================================================
   NX SHOP — nowoczesny styl sklepu nutra (GeneratePress child)
   -----------------------------------------------------------------
   • Wszystko oskopowane pod .nx — nie koliduje z motywem.
   • Motyw = zmienne na .nx (inny produkt: podmień --brand/--lime).
   • .nx-breakout — owiń .nx, jeśli kontener GP jest wąski,
     a chcesz pełną szerokość: <div class="nx-breakout"><div class="nx">…
   ================================================================= */

.nx{
  /* MOTYW — podmień pod produkt */
  --brand:#0fa958; --brand-d:#0a7f42;          /* zieleń CTA */
  --lime:#d9f24f;  --lime-d:#c4e02e; --lime-soft:#f3fada;
  --gold:#f2b41c;

  /* BAZA */
  --ink:#0d120f; --dark:#101711; --dark-2:#16211a;
  --bg:#f5f6f2; --card:#ffffff;
  --text:#171c18; --muted:#68736c;
  --line:#e5e9e1; --line-2:#d7ddd2;
  --r:16px; --r-lg:24px;
  --sh-sm:0 1px 2px rgba(13,18,15,.05),0 10px 26px -14px rgba(13,18,15,.14);
  --sh:0 2px 8px rgba(13,18,15,.06),0 30px 70px -30px rgba(13,18,15,.28);
  --fd:'Space Grotesk',ui-sans-serif,system-ui,"Segoe UI",Arial,sans-serif;
  --ft:'Inter',ui-sans-serif,system-ui,"Segoe UI",Arial,sans-serif;
  --maxw:1240px;

  color:var(--text); background:var(--bg); font-family:var(--ft);
  font-size:16px; line-height:1.6; -webkit-font-smoothing:antialiased;
}
.nx *,.nx *::before,.nx *::after{box-sizing:border-box}
.nx img{max-width:100%;display:block}
.nx a{color:inherit;text-decoration:none}
.nx button{font-family:inherit}
.nx h1,.nx h2,.nx h3,.nx h4,.nx p,.nx ul{margin:0;padding:0}
.nx ul{list-style:none}
.nx h1,.nx h2,.nx h3,.nx h4{font-family:var(--fd);font-weight:700;letter-spacing:-.02em;line-height:1.08}
.nx .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.nx :focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.nx-breakout{width:100vw;position:relative;left:50%;margin-left:-50vw}

/* podświetlenie w nagłówku (marker) */
.nx .hl{background:linear-gradient(to top,var(--lime) 34%,transparent 34%)}
.nx .kick{display:inline-flex;align-items:center;gap:8px;background:var(--lime-soft);border:1px solid #e2eebf;
  color:#3d4a12;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:7px 14px;border-radius:999px}
.nx .kick::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--brand)}

/* animacje wejścia (JS dodaje .in) */
.nx .rv{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}
.nx .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .nx .rv{opacity:1;transform:none;transition:none}
  .nx .mtrack{animation:none!important}
  .nx *{transition-duration:.01ms!important;animation-duration:.01ms!important}
}

/* ---------- PASEK MARQUEE (announcement) ---------- */
.nx .annc{background:var(--ink);color:#dfe8de;overflow:hidden;font-size:13px;font-weight:600}
.nx .mtrack{display:inline-flex;white-space:nowrap;animation:nxmarq 30s linear infinite}
.nx .mgrp{display:inline-flex;align-items:center;gap:40px;padding:11px 20px 11px 40px}
.nx .mgrp i{font-style:normal;color:var(--lime)}
@keyframes nxmarq{to{transform:translateX(-50%)}}

/* ---------- HEADER (glass) ---------- */
.nx .hd{position:sticky;top:0;z-index:60;background:rgba(245,246,242,.82);backdrop-filter:blur(14px) saturate(160%);border-bottom:1px solid var(--line)}
.nx .hd-in{display:flex;align-items:center;gap:26px;height:74px}
.nx .logo{font-family:var(--fd);font-weight:700;font-size:24px;letter-spacing:-.03em;display:inline-flex;align-items:center}
.nx .logo span{color:var(--brand)}
.nx .logo .dot{width:8px;height:8px;border-radius:50%;background:var(--lime);margin-left:5px;box-shadow:0 0 0 4px var(--lime-soft)}
.nx .menu{display:flex;gap:2px;margin-left:8px}
.nx .menu a{padding:9px 14px;border-radius:999px;font-weight:600;font-size:14.5px;color:#3c453f;transition:.15s;cursor:pointer}
.nx .menu a:hover{background:#fff;color:var(--ink);box-shadow:var(--sh-sm)}
.nx .tools{margin-left:auto;display:flex;align-items:center;gap:8px}
.nx .tbtn{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:999px;border:1px solid var(--line-2);background:#fff;color:#333d36;cursor:pointer;transition:.15s}
.nx .tbtn:hover{border-color:var(--brand);color:var(--brand)}
.nx .cartp{position:relative;display:inline-flex;align-items:center;gap:9px;height:42px;padding:0 18px;border-radius:999px;background:var(--ink);color:#fff;font-weight:700;font-size:14px;border:0;cursor:pointer;transition:.15s}
.nx .cartp:hover{transform:translateY(-1px);box-shadow:var(--sh-sm)}
.nx .cartp .bdg{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:var(--lime);color:var(--ink);font-size:11.5px;font-weight:800}
@media(max-width:1060px){.nx .menu{display:none}}
@media(max-width:520px){.nx .cartp .lbl{display:none}}

/* ---------- BREADCRUMB ---------- */
.nx .crumbs{font-size:13px;color:var(--muted);padding:18px 0 4px}
.nx .crumbs a:hover{color:var(--brand)}
.nx .crumbs b{color:var(--text);font-weight:600}

/* ---------- HERO ---------- */
.nx .hero{padding:14px 0 42px}
.nx .hgrid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr) 360px;gap:26px;align-items:start}
@media(max-width:1080px){.nx .hgrid{grid-template-columns:1fr 1fr}}
@media(max-width:780px){.nx .hgrid{grid-template-columns:1fr}}

/* galeria — ciemna scena z poświatą */
.nx .stage{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:1/1.04;display:grid;place-items:center;
  background:radial-gradient(90% 70% at 70% 12%,rgba(217,242,79,.16),transparent 55%),
             radial-gradient(80% 80% at 12% 88%,rgba(15,169,88,.22),transparent 60%),
             linear-gradient(160deg,#141c15,#0c110d 70%);
  box-shadow:var(--sh)}
.nx .stage::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:22px 22px}
.nx .blob{position:absolute;width:62%;aspect-ratio:1;border-radius:50%;filter:blur(46px);opacity:.5;
  background:conic-gradient(from 0deg,#0fa958,#d9f24f,#0fa958);animation:nxspin 14s linear infinite}
@keyframes nxspin{to{transform:rotate(360deg)}}
.nx .view{position:relative;z-index:2;width:100%;height:100%;display:none;place-items:center}
.nx .view.on{display:grid}
.nx .view svg{width:66%;height:auto;filter:drop-shadow(0 30px 34px rgba(0,0,0,.45))}
.nx .chip{position:absolute;z-index:3;backdrop-filter:blur(8px)}
.nx .chip.off{top:20px;left:20px;background:var(--lime);color:var(--ink);font-family:var(--fd);font-weight:700;font-size:17px;
  padding:10px 16px;border-radius:14px;transform:rotate(-6deg);box-shadow:0 12px 26px -10px rgba(217,242,79,.7)}
.nx .chip.caps{top:22px;right:22px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#eef4ec;
  font-size:12.5px;font-weight:600;padding:8px 13px;border-radius:999px}
.nx .chip.rt{bottom:20px;left:20px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#fff;
  font-weight:700;font-size:14px;padding:9px 14px;border-radius:999px;display:inline-flex;gap:8px;align-items:center}
.nx .chip.rt b{color:var(--lime)}
.nx .thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}
.nx .thumbs button{position:relative;background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:10px;cursor:pointer;transition:.16s;aspect-ratio:1/1;display:grid;place-items:center}
.nx .thumbs button:hover{border-color:var(--brand);transform:translateY(-2px)}
.nx .thumbs button.active{border-color:var(--ink);box-shadow:var(--sh-sm)}
.nx .thumbs .n{position:absolute;bottom:6px;left:9px;font-size:10px;font-weight:700;color:var(--muted)}
.nx .thumbs svg{width:70%;height:auto}

/* info */
.nx .pinfo h1{font-size:clamp(42px,5.4vw,68px);margin-top:16px}
.nx .pinfo .sub{color:var(--muted);font-size:17.5px;margin-top:12px;max-width:44ch}
.nx .rating{display:flex;align-items:center;gap:11px;margin-top:18px;flex-wrap:wrap}
.nx .stars{color:var(--gold);letter-spacing:2px;font-size:16px}
.nx .rating b{font-family:var(--fd);font-size:17px}
.nx .rating a{color:var(--muted);font-size:14px;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-2);cursor:pointer}
.nx .rating a:hover{color:var(--brand)}
.nx .stock{display:inline-flex;align-items:center;gap:7px;color:#0a7f42;font-weight:700;font-size:13.5px;background:#eaf7ef;border:1px solid #cdebd9;border-radius:999px;padding:6px 12px}
.nx .stock::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 3px rgba(15,169,88,.2)}
.nx .proof{display:flex;align-items:center;gap:12px;margin-top:20px}
.nx .avs{display:flex}
.nx .avs span{width:34px;height:34px;border-radius:50%;border:2px solid var(--bg);display:grid;place-items:center;
  font-size:11px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand-d));margin-left:-8px}
.nx .avs span:first-child{margin-left:0}
.nx .proof small{font-size:13px;color:var(--muted);font-weight:600}
.nx .proof small b{color:var(--text)}
.nx .checks{margin-top:22px;display:flex;flex-direction:column;gap:12px}
.nx .checks li{display:flex;gap:12px;align-items:flex-start;font-size:15.5px;color:#28322b}
.nx .checks .ck{flex:0 0 auto;width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:var(--lime);color:var(--ink);margin-top:1px}
.nx .checks .ck svg{width:13px;height:13px}
.nx .bento3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}
@media(max-width:460px){.nx .bento3{grid-template-columns:1fr}}
.nx .b3{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px 14px;text-align:center;transition:.16s}
.nx .b3:hover{transform:translateY(-3px);box-shadow:var(--sh-sm)}
.nx .b3 .ic{display:grid;place-items:center;color:var(--brand);margin-bottom:8px}
.nx .b3 b{display:block;font-family:var(--fd);font-size:14px}
.nx .b3 small{font-size:11.5px;color:var(--muted)}

/* buybox */
.nx .buy{position:sticky;top:92px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;box-shadow:var(--sh)}
@media(max-width:1080px){.nx .buy{position:static;grid-column:1/-1}}
.nx .buy .bt{font-family:var(--fd);font-size:15px;font-weight:700}
.nx .packs{display:flex;flex-direction:column;gap:10px;margin:14px 0 16px}
.nx .pk{position:relative;display:flex;align-items:center;gap:12px;border:1.5px solid var(--line);border-radius:14px;padding:13px 15px;cursor:pointer;transition:.15s;background:#fff}
.nx .pk:hover{border-color:var(--line-2)}
.nx .pk.active{border-color:var(--ink);box-shadow:0 0 0 3px var(--lime-soft)}
.nx .pk .rd{width:20px;height:20px;border-radius:50%;border:2px solid var(--line-2);display:grid;place-items:center;flex:0 0 auto;transition:.15s}
.nx .pk.active .rd{border-color:var(--ink)}
.nx .pk.active .rd::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--ink)}
.nx .pk .t1{font-family:var(--fd);font-weight:700;font-size:15px}
.nx .pk .t2{font-size:12px;color:var(--muted)}
.nx .pk .pr{margin-left:auto;text-align:right;font-family:var(--fd);font-weight:700;font-size:15.5px}
.nx .pk .pr small{display:block;font-size:10.5px;color:var(--muted);font-weight:600;font-family:var(--ft)}
.nx .pk .fl{position:absolute;top:-10px;right:12px;background:var(--lime);color:var(--ink);font-size:10.5px;font-weight:800;padding:3px 10px;border-radius:999px;letter-spacing:.02em}
.nx .priceline{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.nx .priceline .now{font-family:var(--fd);font-size:40px;font-weight:700;letter-spacing:-.03em;line-height:1}
.nx .priceline .was{color:var(--muted);text-decoration:line-through;font-size:17px;font-weight:600}
.nx .priceline .sv{background:var(--lime);color:var(--ink);font-weight:800;font-size:12px;padding:5px 10px;border-radius:999px}
.nx .cd{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--lime-soft);border:1px solid #e2eebf;border-radius:12px;padding:11px 14px;margin:14px 0}
.nx .cd small{font-size:12px;font-weight:700;color:#4c5a17;letter-spacing:.03em;text-transform:uppercase}
.nx .cd b{font-family:var(--fd);font-size:18px;font-variant-numeric:tabular-nums;color:var(--ink)}
.nx .qtytot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.nx .stepper{display:flex;align-items:center;border:1px solid var(--line-2);border-radius:999px;overflow:hidden}
.nx .stepper button{width:42px;height:44px;border:0;background:#fff;font-size:19px;font-weight:700;cursor:pointer;color:#333d36}
.nx .stepper button:hover{color:var(--brand)}
.nx .stepper input{width:44px;height:44px;border:0;text-align:center;font-family:var(--fd);font-weight:700;font-size:16px;color:var(--text)}
.nx .tot{text-align:right}
.nx .tot small{display:block;font-size:11.5px;color:var(--muted);font-weight:600}
.nx .tot b{font-family:var(--fd);font-size:22px;font-weight:700}
.nx .btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;border:0;cursor:pointer;font-family:var(--fd);font-weight:700;border-radius:999px;transition:.18s;font-size:16.5px;letter-spacing:.01em}
.nx .btn-cta{background:linear-gradient(135deg,var(--brand),var(--brand-d));color:#fff;padding:17px 22px;box-shadow:0 18px 34px -14px rgba(15,169,88,.55)}
.nx .btn-cta:hover{transform:translateY(-2px);box-shadow:0 24px 44px -14px rgba(15,169,88,.65)}
.nx .btn-cta .arr{transition:transform .2s}
.nx .btn-cta:hover .arr{transform:translateX(4px)}
.nx .btn-line{background:#fff;color:var(--ink);border:1.5px solid var(--ink);padding:14px 22px;margin-top:10px}
.nx .btn-line:hover{background:var(--ink);color:#fff}
.nx .assure{display:flex;justify-content:space-between;gap:10px;margin-top:14px;font-size:12px;color:var(--muted);font-weight:600;flex-wrap:wrap}
.nx .assure span{display:inline-flex;align-items:center;gap:6px}
.nx .paymini{display:flex;gap:6px;margin-top:12px;flex-wrap:wrap;justify-content:center}
.nx .paymini span{border:1px solid var(--line);border-radius:8px;padding:4px 9px;font-size:10.5px;font-weight:800;color:var(--muted);letter-spacing:.04em}

/* ---------- STRIP marquee składników ---------- */
.nx .strip{background:var(--dark);color:#e8f0e6;overflow:hidden;border-block:1px solid #1e2b21}
.nx .strip .mgrp{gap:34px;padding:15px 17px 15px 34px;font-family:var(--fd);font-weight:600;font-size:14.5px;letter-spacing:.04em;text-transform:uppercase}
.nx .strip i{color:var(--lime)}

/* ---------- ZAKŁADKI ---------- */
.nx .tabsec{padding:34px 0 50px}
.nx .tnav{position:sticky;top:82px;z-index:40;display:flex;gap:6px;background:rgba(255,255,255,.85);backdrop-filter:blur(12px);
  border:1px solid var(--line);border-radius:999px;padding:6px;overflow-x:auto;scrollbar-width:none;box-shadow:var(--sh-sm)}
.nx .tnav::-webkit-scrollbar{display:none}
.nx .tnav button{flex:1;white-space:nowrap;border:0;background:transparent;color:var(--muted);font-family:var(--fd);font-weight:600;
  font-size:14.5px;padding:12px 18px;border-radius:999px;cursor:pointer;transition:.16s}
.nx .tnav button:hover{color:var(--text)}
.nx .tnav button.active{background:var(--ink);color:#fff}
.nx .tp{display:none;padding-top:36px}
.nx .tp.on{display:block;animation:nxfade .3s ease}
@keyframes nxfade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.nx .tp h2{font-size:clamp(26px,3.4vw,38px);margin-top:12px}
.nx .tp h3{font-size:19px;margin-top:4px}
.nx .tp .lead,.nx .tp p{color:#39443c;font-size:16.5px;margin-top:14px;line-height:1.7;max-width:66ch}
.nx .two{display:grid;grid-template-columns:1fr 1fr;gap:40px}
@media(max-width:780px){.nx .two{grid-template-columns:1fr;gap:26px}}
.nx .feats{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.nx .feat{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#2c362f;background:#fff;border:1px solid var(--line);padding:8px 14px;border-radius:999px}
.nx .feat::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--brand)}

/* dla kogo — bento */
.nx .aud{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}
@media(max-width:640px){.nx .aud{grid-template-columns:1fr}}
.nx .aud .bx{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px;transition:.16s}
.nx .aud .bx:hover{transform:translateY(-3px);box-shadow:var(--sh-sm)}
.nx .aud .ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--lime);color:var(--ink);margin-bottom:13px}
.nx .aud h3{font-size:18px}
.nx .aud p{font-size:14.5px;color:var(--muted);margin-top:7px;max-width:none}

/* skład — karty z dużym numerem */
.nx .ings{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px;counter-reset:nxing}
@media(max-width:880px){.nx .ings{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.nx .ings{grid-template-columns:1fr}}
.nx .ing{counter-increment:nxing;position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;overflow:hidden;transition:.18s}
.nx .ing:hover{transform:translateY(-4px);box-shadow:var(--sh-sm);border-color:#cfe8cf}
.nx .ing::before{content:counter(nxing,decimal-leading-zero);position:absolute;right:14px;top:6px;font-family:var(--fd);font-weight:700;
  font-size:52px;color:var(--bg);-webkit-text-stroke:1px var(--line-2);letter-spacing:-.04em}
.nx .ing h3{font-size:17px;position:relative}
.nx .ing .role{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#4c5a17;background:var(--lime-soft);border-radius:999px;padding:3px 9px;margin-top:8px}
.nx .ing p{font-size:14px;color:var(--muted);margin-top:10px;max-width:none}
.nx .note{margin-top:24px;background:var(--card);border:1px dashed var(--line-2);border-radius:var(--r);padding:16px 20px;font-size:14px;color:#39443c}

/* stosowanie */
.nx .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}
@media(max-width:760px){.nx .steps{grid-template-columns:1fr}}
.nx .step{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.nx .step .num{font-family:var(--fd);font-weight:700;font-size:15px;color:var(--ink);background:var(--lime);width:38px;height:38px;border-radius:12px;display:grid;place-items:center;margin-bottom:13px}
.nx .step h3{font-size:17px}
.nx .step p{font-size:14px;color:var(--muted);margin-top:7px;max-width:none}
.nx .tml{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
@media(max-width:760px){.nx .tml{grid-template-columns:1fr}}
.nx .tl{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px;position:relative;overflow:hidden}
.nx .tl::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(var(--brand),var(--lime))}
.nx .tl .when{font-family:var(--fd);font-weight:700;color:var(--brand-d);font-size:14px}
.nx .tl h3{font-size:16px;margin-top:5px}
.nx .tl p{font-size:13.5px;color:var(--muted);margin-top:5px;max-width:none}

/* opinie */
.nx .rtop{display:grid;grid-template-columns:250px 1fr;gap:26px;align-items:stretch;margin-top:26px}
@media(max-width:680px){.nx .rtop{grid-template-columns:1fr}}
.nx .score{background:var(--dark);color:#fff;border-radius:var(--r-lg);padding:28px;text-align:center;display:grid;place-content:center;gap:4px}
.nx .score .big{font-family:var(--fd);font-size:62px;font-weight:700;line-height:1}
.nx .score .stars{font-size:19px}
.nx .score small{color:#9db5a4;font-size:12.5px;margin-top:6px}
.nx .bars{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px 24px;display:flex;flex-direction:column;justify-content:center;gap:11px}
.nx .bar{display:flex;align-items:center;gap:13px;font-size:12.5px;color:var(--muted);font-weight:700}
.nx .bar .tr{flex:1;height:8px;border-radius:999px;background:var(--bg);overflow:hidden}
.nx .bar .fl{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,var(--brand),var(--lime));transition:width 1s cubic-bezier(.2,.7,.3,1) .15s}
.nx .bars.in .fl{width:var(--w)}
.nx .pcx{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
@media(max-width:560px){.nx .pcx{grid-template-columns:1fr}}
.nx .pcb{border-radius:var(--r);padding:20px;border:1px solid var(--line);background:var(--card)}
.nx .pcb.plus{border-color:#cdebd9;background:#f2faf5}
.nx .pcb h4{font-family:var(--fd);font-size:14px;margin-bottom:10px}
.nx .pcb li{display:flex;gap:10px;align-items:center;font-size:14.5px;font-weight:600;padding:6px 0}
.nx .pcb li::before{content:"";width:7px;height:7px;border-radius:50%;flex:0 0 auto}
.nx .pcb.plus li::before{background:var(--brand)}
.nx .pcb.minus li::before{background:#e2a23c}
.nx .testi{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
@media(max-width:880px){.nx .testi{grid-template-columns:1fr}}
.nx .t{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;position:relative}
.nx .t::before{content:"\201C";position:absolute;top:8px;right:16px;font-family:var(--fd);font-size:54px;color:var(--lime);line-height:1}
.nx .t.doc{background:var(--dark);color:#e9f2ea;border:0}
.nx .t .hd2{display:flex;align-items:center;gap:11px}
.nx .t .av{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:13px;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand-d));flex:0 0 auto}
.nx .t.doc .av{background:var(--lime);color:var(--ink)}
.nx .t .who{font-family:var(--fd);font-weight:700;font-size:14.5px}
.nx .t .ro{font-size:12px;color:var(--muted)}
.nx .t.doc .ro{color:#9db5a4}
.nx .t .stars{font-size:13.5px;margin:11px 0 8px;display:block}
.nx .t p{font-size:14px;color:#39443c;max-width:none}
.nx .t.doc p{color:#cfe0d2}
.nx .t .vf{display:inline-flex;align-items:center;gap:6px;margin-top:11px;font-size:11.5px;font-weight:800;color:var(--brand-d)}
.nx .t.doc .vf{color:var(--lime)}

/* bezpieczeństwo */
.nx .safety{margin-top:22px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.nx .safety li{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:17px 22px;font-size:15px;color:#39443c;border-top:1px solid var(--line)}
.nx .safety li:first-child{border-top:0}
@media(max-width:560px){.nx .safety li{grid-template-columns:1fr;gap:4px}}
.nx .safety .lb{font-family:var(--fd);font-weight:700;font-size:13px;color:var(--brand-d)}

/* faq */
.nx .faq{margin-top:22px;display:flex;flex-direction:column;gap:10px}
.nx .faq details{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:.15s}
.nx .faq details[open]{border-color:var(--line-2);box-shadow:var(--sh-sm)}
.nx .faq summary{list-style:none;cursor:pointer;padding:18px 22px;font-family:var(--fd);font-weight:600;font-size:16.5px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.nx .faq summary::-webkit-details-marker{display:none}
.nx .faq .pl{flex:0 0 auto;width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:var(--lime-soft);color:var(--brand-d);font-size:18px;font-weight:700;transition:.2s}
.nx .faq details[open] .pl{transform:rotate(45deg);background:var(--lime);color:var(--ink)}
.nx .faq .a{padding:0 22px 20px;color:var(--muted);font-size:15px;line-height:1.7;max-width:75ch}

/* ---------- CTA ---------- */
.nx .cta{position:relative;overflow:hidden;background:
  radial-gradient(70% 90% at 85% 10%,rgba(217,242,79,.16),transparent 55%),
  radial-gradient(70% 90% at 8% 90%,rgba(15,169,88,.25),transparent 55%),
  linear-gradient(150deg,#131b14,#0b100c);
  color:#fff;border-radius:var(--r-lg);padding:clamp(30px,5vw,56px);display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;margin:8px 0 48px;box-shadow:var(--sh)}
@media(max-width:740px){.nx .cta{grid-template-columns:1fr;text-align:center}}
.nx .cta h2{font-size:clamp(26px,4vw,44px)}
.nx .cta h2 .hl{background:linear-gradient(to top,rgba(217,242,79,.35) 34%,transparent 34%)}
.nx .cta p{color:#a9bcae;margin-top:10px;max-width:52ch}
@media(max-width:740px){.nx .cta p{margin-inline:auto}}
.nx .cta .pr{display:flex;align-items:baseline;gap:12px;margin-top:16px;font-family:var(--fd)}
@media(max-width:740px){.nx .cta .pr{justify-content:center}}
.nx .cta .pr .n{font-size:42px;font-weight:700}
.nx .cta .pr .w{font-size:20px;color:#6e8274;text-decoration:line-through}
.nx .cta .btn-lm{background:var(--lime);color:var(--ink);padding:18px 34px;font-size:17px;width:auto;box-shadow:0 18px 40px -14px rgba(217,242,79,.5)}
.nx .cta .btn-lm:hover{transform:translateY(-2px);background:var(--lime-d)}
.nx .cta .cap{position:absolute;border-radius:999px;opacity:.5;filter:blur(1px)}
.nx .cta .cap.c1{width:90px;height:34px;background:linear-gradient(90deg,var(--lime) 50%,#fff 50%);top:14%;right:30%;transform:rotate(-24deg)}
.nx .cta .cap.c2{width:64px;height:24px;background:linear-gradient(90deg,var(--brand) 50%,#dfe8de 50%);bottom:16%;right:12%;transform:rotate(18deg)}

/* ---------- FOOTER ---------- */
.nx footer{background:var(--ink);color:#93a397;border-radius:var(--r-lg) var(--r-lg) 0 0}
.nx .fcols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px;padding:52px 0 30px}
@media(max-width:860px){.nx .fcols{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.nx .fcols{grid-template-columns:1fr}}
.nx .flogo{font-family:var(--fd);font-weight:700;font-size:24px;color:#fff;margin-bottom:12px}
.nx .flogo span{color:var(--lime)}
.nx footer p{font-size:13.5px;line-height:1.7;color:#7d8f82;max-width:36ch}
.nx footer h4{color:#fff;font-family:var(--fd);font-size:13.5px;font-weight:700;margin-bottom:14px}
.nx footer li{margin-bottom:9px}
.nx footer li a{font-size:13.5px;color:#93a397;transition:.15s}
.nx footer li a:hover{color:var(--lime)}
.nx .fpay{display:flex;gap:7px;margin-top:16px;flex-wrap:wrap}
.nx .fpay span{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:5px 10px;font-size:10.5px;font-weight:800;color:#c4d1c6;letter-spacing:.04em}
.nx .fbot{border-top:1px solid rgba(255,255,255,.08);padding:20px 0 32px}
.nx .fbot .disc{font-size:11.5px;color:#66786b;line-height:1.7;max-width:940px}
.nx .fbot .cp{font-size:12px;color:#586b5d;margin-top:12px}

/* ---------- STICKY BAR + TOAST ---------- */
.nx .stickybar{position:fixed;left:0;right:0;bottom:0;z-index:70;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);
  border-top:1px solid var(--line);box-shadow:0 -14px 34px -18px rgba(13,18,15,.3);transform:translateY(120%);transition:.3s;padding:10px 16px}
.nx .stickybar.show{transform:none}
.nx .stickybar .in2{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;gap:14px}
.nx .stickybar .nm{font-family:var(--fd);font-weight:700;font-size:15px}
.nx .stickybar .pp b{font-family:var(--fd);color:var(--brand-d);font-size:16px}
.nx .stickybar .pp s{color:var(--muted);font-size:12px;margin-left:6px}
.nx .stickybar .btn-cta{width:auto;margin-left:auto;padding:12px 24px;font-size:15px}
.nx .toast{position:fixed;top:92px;right:20px;z-index:80;background:var(--ink);color:#fff;padding:14px 18px;border-radius:14px;
  box-shadow:var(--sh);font-weight:600;font-size:14px;display:flex;align-items:center;gap:10px;transform:translateX(140%);transition:.35s}
.nx .toast.show{transform:none}
.nx .toast .ok{width:22px;height:22px;border-radius:50%;background:var(--lime);color:var(--ink);display:grid;place-items:center;font-weight:800;font-size:12px}
/* =================================================================
   NX EROBOOST HYBRID 1.1
   Normalny header/footer WordPressa + środek produktu NX.
   ================================================================= */
body.nx-hybrid-product #page,
body.nx-hybrid-product .site,
body.nx-hybrid-product .site.grid-container,
body.nx-hybrid-product .container.grid-container {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

body.nx-hybrid-product #content.site-content,
body.nx-hybrid-product .site-content,
body.nx-hybrid-product .nxeh-primary,
body.nx-hybrid-product .nxeh-main,
body.nx-hybrid-product .nxeh-product-entry,
body.nx-hybrid-product .nxeh-entry-content {
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

body.nx-hybrid-product .widget-area,
body.nx-hybrid-product #right-sidebar,
body.nx-hybrid-product #left-sidebar {
  display:none !important;
}

body.nx-hybrid-product .nxeh-product-entry {
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

body.nx-hybrid-product .nxeh-entry-content > p:empty {
  display:none !important;
}

body.nx-hybrid-product .nxeh-entry-content > .nx {
  width:100%;
  max-width:none;
  margin:0;
  overflow:hidden;
  background:var(--bg,#f5f6f2);
}

/* Zostaje normalny nagłówek WordPressa. Drugi nagłówek z demo znika. */
body.nx-hybrid-product .nx .hd {
  display:none !important;
}

/* Zostaje normalna stopka WordPressa. Druga stopka z demo znika. */
body.nx-hybrid-product .nx footer {
  display:none !important;
}

/* Breadcrumb projektu łączy header WP z produktem. */
body.nx-hybrid-product .nx .crumbs {
  padding-top:18px;
}

body.nx-hybrid-product .nx .hero {
  padding-top:14px;
}

body.nx-hybrid-product .nx .wrap {
  width:100%;
  max-width:1240px;
  margin-right:auto;
  margin-left:auto;
  padding-right:24px;
  padding-left:24px;
}

body.nx-hybrid-product .nx .tnav {
  top:10px;
}

/* Reset marginesów GeneratePress tylko wewnątrz NX. */
body.nx-hybrid-product .entry-content .nx h1,
body.nx-hybrid-product .entry-content .nx h2,
body.nx-hybrid-product .entry-content .nx h3,
body.nx-hybrid-product .entry-content .nx h4,
body.nx-hybrid-product .entry-content .nx p,
body.nx-hybrid-product .entry-content .nx ul,
body.nx-hybrid-product .entry-content .nx ol {
  margin-top:0;
  margin-bottom:0;
}

/* Awaryjnie treść pozostaje widoczna nawet, gdy Cloudflare opóźni JS. */
body.nx-hybrid-product .nx .rv {
  opacity:1;
  transform:none;
}

body.nx-hybrid-product .nx.nx-js .rv {
  opacity:0;
  transform:translateY(16px);
}

body.nx-hybrid-product .nx.nx-js .rv.in {
  opacity:1;
  transform:none;
}

body.nx-hybrid-product .nx .cta {
  margin-bottom:48px;
}

@media (max-width:768px) {
  body.nx-hybrid-product .nx .wrap {
    padding-right:16px;
    padding-left:16px;
  }

  body.nx-hybrid-product .nx .crumbs {
    padding-top:14px;
  }
}

/* NXEH VERSION 1.2.0 */

/* ================================================================
   NX EROBOOST DEMO FIX 2.0.0
   Agresywny fallback front-end: normalny WP + środek identyczny z demo.
   ================================================================ */

body.nxdf-active #content.site-content,
body.nxdf-active .site-content,
body.nxdf-active #primary,
body.nxdf-active .content-area,
body.nxdf-active #main,
body.nxdf-active .site-main,
body.nxdf-active .nxdf-product-entry,
body.nxdf-active .nxdf-product-entry .entry-content {
  display:block !important;
  float:none !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

body.nxdf-active .widget-area,
body.nxdf-active #left-sidebar,
body.nxdf-active #right-sidebar {
  display:none !important;
}

body.nxdf-active .nxdf-product-entry {
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}

/* Blok wysuwa się na pełną szerokość, ale header i footer WP zostają. */
body.nxdf-active .nx {
  width:100vw !important;
  max-width:none !important;
  position:relative !important;
  left:50% !important;
  margin-left:-50vw !important;
  overflow:hidden !important;
  background:var(--bg,#f5f6f2) !important;
}

/* Normalny WordPress na zewnątrz, więc drugi nagłówek i footer demo znikają. */
body.nxdf-active .nx .hd,
body.nxdf-active .nx footer {
  display:none !important;
}

body.nxdf-active .nx .crumbs {
  padding-top:18px !important;
}

body.nxdf-active .nx .hero {
  padding-top:14px !important;
}

body.nxdf-active .nx .wrap {
  width:100% !important;
  max-width:1240px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:24px !important;
  padding-right:24px !important;
}

/* Kluczowa poprawka galerii. */
body.nxdf-active .nx .gallery {
  min-width:0 !important;
}

body.nxdf-active .nx .stage {
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  min-height:0 !important;
  border-radius:24px !important;
  overflow:hidden !important;
  isolation:isolate !important;
}

body.nxdf-active .nx .view[data-v="1"] {
  display:none;
  align-items:center !important;
  justify-items:center !important;
  padding:34px 24px 22px !important;
}

body.nxdf-active .nx .view[data-v="1"].on {
  display:grid !important;
}

body.nxdf-active .nx .nx-real-product-image {
  display:block !important;
  width:auto !important;
  height:88% !important;
  max-width:86% !important;
  max-height:88% !important;
  object-fit:contain !important;
  object-position:center !important;
  clip-path:inset(.7%) !important;
  transform:scale(1.015) !important;
  filter:drop-shadow(0 30px 30px rgba(0,0,0,.48)) !important;
  position:relative !important;
  z-index:2 !important;
}

/* Zabezpieczenie przed regułami WooCommerce/GeneratePress dla obrazków. */
body.nxdf-active .nx .stage img.nx-real-product-image {
  margin:0 auto !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}

body.nxdf-active .nx .rv {
  opacity:1;
  transform:none;
}

body.nxdf-active .nx.nx-js .rv {
  opacity:0;
  transform:translateY(16px);
}

body.nxdf-active .nx.nx-js .rv.in {
  opacity:1;
  transform:none;
}

@media (max-width:1080px) {
  body.nxdf-active .nx .hgrid {
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  }
  body.nxdf-active .nx .buy {
    grid-column:1 / -1 !important;
  }
}

@media (max-width:780px) {
  body.nxdf-active .nx .wrap {
    padding-left:16px !important;
    padding-right:16px !important;
  }
  body.nxdf-active .nx .hgrid {
    grid-template-columns:1fr !important;
  }
  body.nxdf-active .nx .stage {
    aspect-ratio:1 / 1 !important;
  }
  body.nxdf-active .nx .nx-real-product-image {
    height:86% !important;
    max-height:86% !important;
    max-width:88% !important;
  }
}


/* ================================================================
   NX EROBOOST DEMO FIX 3.0.0 — HERO ZAWSZE W LINII
   ================================================================ */

body.nxdf-active .nx .hero .hgrid {
  display:grid !important;
  width:100% !important;
  max-width:1240px !important;
  align-items:start !important;
  grid-auto-flow:row !important;
}

body.nxdf-active .nx .hero .gallery,
body.nxdf-active .nx .hero .pinfo,
body.nxdf-active .nx .hero .buy {
  float:none !important;
  clear:none !important;
  min-width:0 !important;
  max-width:none !important;
  width:auto !important;
  margin:0 !important;
}

body.nxdf-active .nx .stage,
body.nxdf-active .nx .view,
body.nxdf-active .nx .nx-product-image-frame {
  width:100% !important;
  height:100% !important;
}

body.nxdf-active .nx .nx-product-image-frame {
  position:absolute !important;
  inset:0 !important;
  display:grid !important;
  place-items:center !important;
  padding:46px 38px 36px !important;
}

body.nxdf-active .nx .nx-real-product-image {
  position:relative !important;
  inset:auto !important;
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:82% !important;
  max-height:84% !important;
  margin:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
  z-index:2 !important;
}

body.nxdf-active .nx .nx-real-product-image.nx-tall {
  max-width:66% !important;
  max-height:88% !important;
}

body.nxdf-active .nx .nx-real-product-image.nx-wide {
  max-width:88% !important;
  max-height:68% !important;
}

body.nxdf-active .nx .nx-real-product-image.nx-square {
  max-width:80% !important;
  max-height:82% !important;
}

@media (min-width:1180px) {
  body.nxdf-active .nx .hero .hgrid {
    grid-template-columns:
      minmax(330px,1.02fr)
      minmax(320px,.98fr)
      minmax(320px,360px) !important;
    gap:26px !important;
  }

  body.nxdf-active .nx .hero .gallery {
    grid-column:1 !important;
    grid-row:1 !important;
  }

  body.nxdf-active .nx .hero .pinfo {
    grid-column:2 !important;
    grid-row:1 !important;
  }

  body.nxdf-active .nx .hero .buy {
    grid-column:3 !important;
    grid-row:1 !important;
    position:sticky !important;
    top:24px !important;
  }
}

@media (min-width:781px) and (max-width:1179px) {
  body.nxdf-active .nx .hero .hgrid {
    grid-template-columns:
      minmax(300px,1fr)
      minmax(300px,1fr) !important;
    gap:24px !important;
  }

  body.nxdf-active .nx .hero .gallery {
    grid-column:1 !important;
    grid-row:1 !important;
  }

  body.nxdf-active .nx .hero .pinfo {
    grid-column:2 !important;
    grid-row:1 !important;
  }

  body.nxdf-active .nx .hero .buy {
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    position:static !important;
  }
}

@media (max-width:780px) {
  body.nxdf-active .nx .hero .hgrid {
    grid-template-columns:minmax(0,1fr) !important;
    gap:20px !important;
  }

  body.nxdf-active .nx .hero .gallery {
    grid-column:1 !important;
    grid-row:1 !important;
  }

  body.nxdf-active .nx .hero .pinfo {
    grid-column:1 !important;
    grid-row:2 !important;
  }

  body.nxdf-active .nx .hero .buy {
    grid-column:1 !important;
    grid-row:3 !important;
    position:static !important;
  }

  body.nxdf-active .nx .nx-product-image-frame {
    padding:32px 24px 26px !important;
  }
}


/* ================================================================
   NX EROBOOST DEMO FIX 3.1.0
   PEŁNE ZDJĘCIE W KWADRACIE — BEZ OBCINANIA
   ================================================================ */

body.nxdf-active .nx .stage {
  position:relative !important;
  aspect-ratio:1 / 1 !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .stage .view[data-v="1"],
body.nxdf-active .nx .stage .view[data-v="1"].on,
body.nxdf-active .nx .stage .nx-real-view {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  display:block !important;
}

body.nxdf-active .nx .stage .nx-product-image-frame {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  padding:0 !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}

/*
 * Celowo obejmuje również nazwę klasy ze starszej wersji,
 * aby stary element z pamięci przeglądarki nie został obcięty.
 */
body.nxdf-active .nx .stage img.nx-real-product-image,
body.nxdf-active .nx .stage img.nx-real-image,
body.nxdf-active .nx .stage .view[data-v="1"] img {
  position:static !important;
  inset:auto !important;
  display:block !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:0 auto !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  transform:none !important;
  transform-origin:center center !important;
}

/* Awaryjne dopasowanie przed wykonaniem JavaScriptu. */
body.nxdf-active .nx .stage img.nx-real-product-image,
body.nxdf-active .nx .stage img.nx-real-image {
  width:auto !important;
  height:auto !important;
  max-width:84% !important;
  max-height:84% !important;
}


/* ================================================================
   NX EROBOOST DEMO FIX 3.2.0
   WYRAŹNE ZDJĘCIE + 4 MINIATURY W JEDNEJ LINII
   ================================================================ */

/* Każdy widok galerii jest osobnym slajdem. */
body.nxdf-active .nx .stage .view {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .stage .view.on {
  display:grid !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}

body.nxdf-active .nx .stage .view[data-v="1"].on {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/*
 * Zdjęcie produktu nie jest już tłem galerii.
 * Jest osobną jasną kartą umieszczoną w ciemnym kwadracie.
 */
body.nxdf-active .nx .nx-product-image-frame {
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  padding:0 !important;
}

body.nxdf-active .nx .nx-product-photo-card {
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  border:1px solid rgba(255,255,255,.78) !important;
  border-radius:15px !important;
  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.98),
      rgba(239,244,234,.94)
    ) !important;
  box-shadow:
    0 22px 42px -18px rgba(0,0,0,.66),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
  transform:translateY(-7px) !important;
  z-index:3 !important;
}

body.nxdf-active .nx .nx-real-product-image {
  position:static !important;
  display:block !important;
  flex:0 0 auto !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  z-index:2 !important;
}

/* Etykiety zawsze są nad zdjęciem i mają czytelne tło. */
body.nxdf-active .nx .stage .chip {
  z-index:30 !important;
  isolation:isolate !important;
}

body.nxdf-active .nx .stage .chip.off {
  top:15px !important;
  left:15px !important;
}

body.nxdf-active .nx .stage .chip.caps {
  top:15px !important;
  right:15px !important;
  max-width:48% !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
  color:#fff !important;
  background:rgba(12,18,13,.88) !important;
  border:1px solid rgba(255,255,255,.28) !important;
  box-shadow:0 8px 20px -12px rgba(0,0,0,.8) !important;
}

body.nxdf-active .nx .stage .chip.rt {
  bottom:15px !important;
  left:15px !important;
  color:#fff !important;
  background:rgba(12,18,13,.88) !important;
  border:1px solid rgba(255,255,255,.28) !important;
  box-shadow:0 8px 20px -12px rgba(0,0,0,.8) !important;
}

/* Cztery miniatury zawsze pozostają w jednej linii. */
body.nxdf-active .nx .thumbs,
body.nxdf-active .nx #nxthumbs {
  display:flex !important;
  flex-flow:row nowrap !important;
  align-items:stretch !important;
  width:100% !important;
  min-width:0 !important;
  gap:9px !important;
  margin-top:12px !important;
  overflow:visible !important;
}

body.nxdf-active .nx #nxthumbs > button {
  flex:1 1 0 !important;
  width:0 !important;
  min-width:0 !important;
  max-width:none !important;
  aspect-ratio:1 / 1 !important;
  margin:0 !important;
  padding:8px !important;
  overflow:hidden !important;
  display:grid !important;
  place-items:center !important;
}

body.nxdf-active .nx #nxthumbs > button svg {
  width:68% !important;
  max-width:42px !important;
  height:auto !important;
}

body.nxdf-active .nx #nxthumbs .nx-thumb-product {
  display:block !important;
  width:82% !important;
  height:82% !important;
  object-fit:contain !important;
  object-position:center !important;
  margin:auto !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Numer miniatury jest widoczny, ale nie zasłania podglądu. */
body.nxdf-active .nx #nxthumbs .n {
  z-index:5 !important;
  padding:1px 4px !important;
  border-radius:5px !important;
  background:rgba(255,255,255,.86) !important;
}

/* Nieaktywne slajdy nigdy nie mogą pozostać jako tło. */
body.nxdf-active .nx .stage .view:not(.on),
body.nxdf-active .nx .stage .view[data-v="1"]:not(.on),
body.nxdf-active .nx .stage .nx-real-view:not(.on) {
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* Widoki 02–04 prezentują własny SVG na środku. */
body.nxdf-active .nx .stage .view.on:not([data-v="1"]) svg {
  display:block !important;
  width:62% !important;
  max-width:250px !important;
  height:auto !important;
  margin:auto !important;
  filter:drop-shadow(0 24px 30px rgba(0,0,0,.42)) !important;
}

@media (max-width:560px) {
  body.nxdf-active .nx #nxthumbs {
    gap:7px !important;
  }

  body.nxdf-active .nx #nxthumbs > button {
    padding:6px !important;
  }

  body.nxdf-active .nx .stage .chip.caps {
    max-width:52% !important;
    font-size:10.5px !important;
  }
}


/* ================================================================
   NX EROBOOST DEMO FIX 3.3.0
   STABILNE WIDOKI GALERII + RÓWNE MINIATURY
   ================================================================ */

/* GRID zamiast flexa — wszystkie 4 pola zawsze mają tę samą szerokość. */
body.nxdf-active .nx .thumbs,
body.nxdf-active .nx #nxthumbs {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  grid-auto-flow:column !important;
  width:100% !important;
  min-width:0 !important;
  gap:10px !important;
  overflow:visible !important;
}

body.nxdf-active .nx #nxthumbs > button {
  display:grid !important;
  grid-template:1fr / 1fr !important;
  place-items:center !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  margin:0 !important;
  padding:8px !important;
  overflow:hidden !important;
}

body.nxdf-active .nx #nxthumbs > button > * {
  grid-area:1 / 1 !important;
}

body.nxdf-active .nx #nxthumbs .n {
  align-self:end !important;
  justify-self:start !important;
  z-index:6 !important;
  margin:0 0 1px 1px !important;
  line-height:1.2 !important;
}

body.nxdf-active .nx .nx-thumb-preview {
  display:grid !important;
  place-items:center !important;
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .nx-thumb-preview img.nx-thumb-product {
  display:block !important;
  width:72% !important;
  height:72% !important;
  max-width:72% !important;
  max-height:72% !important;
  min-width:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  margin:auto !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Miniatura 02 */
body.nxdf-active .nx .nx-mini-pill {
  display:block !important;
  width:44% !important;
  height:18% !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,var(--lime) 50%,#f1f4ec 50%) !important;
  box-shadow:0 3px 8px rgba(13,18,15,.13) !important;
}

/* Miniatura 03 */
body.nxdf-active .nx .nx-mini-card {
  position:relative !important;
  display:block !important;
  width:38% !important;
  height:52% !important;
  border-radius:5px !important;
  background:#f3f5ec !important;
  border:1px solid #cfd6c6 !important;
}

body.nxdf-active .nx .nx-mini-card b {
  position:absolute !important;
  left:-1px !important;
  right:-1px !important;
  top:-1px !important;
  height:22% !important;
  border-radius:5px 5px 2px 2px !important;
  background:#182619 !important;
}

/* Miniatura 04 */
body.nxdf-active .nx .nx-mini-star {
  display:block !important;
  color:var(--lime) !important;
  font-style:normal !important;
  font-size:clamp(22px,2.4vw,36px) !important;
  line-height:1 !important;
  -webkit-text-stroke:1px #8ea91f !important;
  text-shadow:0 4px 10px rgba(217,242,79,.24) !important;
}

/* Pierwsze zdjęcie — szersza karta, żeby nie wyglądało na ściśnięte. */
body.nxdf-active .nx .nx-product-photo-card {
  min-width:58% !important;
  max-width:76% !important;
  min-height:58% !important;
  max-height:76% !important;
}

/* Widoki 02–04 są samodzielnymi kartami HTML, bez podatnego SVG. */
body.nxdf-active .nx .stage .view.on:not([data-v="1"]) {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:54px 40px 42px !important;
}

body.nxdf-active .nx .stage .view:not([data-v="1"]) svg {
  display:none !important;
}

body.nxdf-active .nx .nx-demo-panel {
  position:relative !important;
  z-index:5 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:min(72%,280px) !important;
  aspect-ratio:1 / 1.08 !important;
  margin:auto !important;
  overflow:hidden !important;
}

/* WIDOK 02 — kapsułki */
body.nxdf-active .nx .nx-capsules-panel {
  background:transparent !important;
}

body.nxdf-active .nx .nx-capsule {
  position:absolute !important;
  height:18% !important;
  border-radius:999px !important;
  overflow:hidden !important;
  box-shadow:0 18px 30px -18px rgba(0,0,0,.75) !important;
}

body.nxdf-active .nx .nx-capsule span,
body.nxdf-active .nx .nx-capsule i {
  position:absolute !important;
  top:0 !important;
  bottom:0 !important;
  width:52% !important;
}

body.nxdf-active .nx .nx-capsule span {
  left:0 !important;
}

body.nxdf-active .nx .nx-capsule i {
  right:0 !important;
  background:#f3f5ec !important;
}

body.nxdf-active .nx .nx-capsule-a {
  width:78% !important;
  left:11% !important;
  top:33% !important;
  transform:rotate(-22deg) !important;
}

body.nxdf-active .nx .nx-capsule-a span {
  background:linear-gradient(135deg,var(--lime),#9dbf1e) !important;
}

body.nxdf-active .nx .nx-capsule-b {
  width:66% !important;
  left:22% !important;
  top:62% !important;
  transform:rotate(17deg) !important;
}

body.nxdf-active .nx .nx-capsule-b span {
  background:#182619 !important;
}

body.nxdf-active .nx .nx-capsule-dot {
  position:absolute !important;
  border-radius:50% !important;
  box-shadow:0 12px 22px -12px rgba(0,0,0,.7) !important;
}

body.nxdf-active .nx .nx-dot-a {
  width:14% !important;
  aspect-ratio:1 !important;
  right:8% !important;
  top:12% !important;
  background:var(--lime) !important;
}

body.nxdf-active .nx .nx-dot-b {
  width:9% !important;
  aspect-ratio:1 !important;
  left:10% !important;
  top:12% !important;
  background:#182619 !important;
}

/* WIDOK 03 — skład dokładnie w jednej karcie */
body.nxdf-active .nx .nx-ingredients-panel {
  flex-direction:column !important;
  justify-content:flex-start !important;
  align-items:stretch !important;
  width:min(68%,250px) !important;
  aspect-ratio:auto !important;
  min-height:72% !important;
  border-radius:14px !important;
  background:#f3f5ec !important;
  box-shadow:0 28px 42px -24px rgba(0,0,0,.72) !important;
}

body.nxdf-active .nx .nx-panel-head {
  flex:0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:46px !important;
  padding:9px 14px !important;
  border-radius:14px 14px 0 0 !important;
  background:#182619 !important;
  color:var(--lime) !important;
  font-family:var(--fd) !important;
  font-size:15px !important;
  font-weight:800 !important;
  letter-spacing:.04em !important;
  line-height:1 !important;
}

body.nxdf-active .nx .nx-ingredients-panel ul {
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:10px !important;
  flex:1 1 auto !important;
  width:100% !important;
  margin:0 !important;
  padding:18px 22px 20px !important;
  list-style:none !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .nx-ingredients-panel li {
  position:relative !important;
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 0 0 20px !important;
  color:#2c362f !important;
  font-family:var(--ft) !important;
  font-size:clamp(10px,1.05vw,12px) !important;
  font-weight:700 !important;
  line-height:1.25 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

body.nxdf-active .nx .nx-ingredients-panel li::before {
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:50% !important;
  width:7px !important;
  height:7px !important;
  border-radius:50% !important;
  background:var(--brand) !important;
  transform:translateY(-50%) !important;
}

/* WIDOK 04 — jakość */
body.nxdf-active .nx .nx-quality-panel {
  flex-direction:column !important;
  gap:12px !important;
  color:#eef4ec !important;
  text-align:center !important;
}

body.nxdf-active .nx .nx-quality-ring {
  display:grid !important;
  place-items:center !important;
  width:66% !important;
  aspect-ratio:1 !important;
  border:2px solid rgba(243,245,236,.8) !important;
  border-radius:50% !important;
  box-shadow:inset 0 0 0 16px rgba(217,242,79,.03) !important;
}

body.nxdf-active .nx .nx-quality-ring::before {
  content:"" !important;
  position:absolute !important;
  width:50% !important;
  aspect-ratio:1 !important;
  border:1.5px dashed var(--lime) !important;
  border-radius:50% !important;
}

body.nxdf-active .nx .nx-quality-star {
  position:relative !important;
  z-index:2 !important;
  color:var(--lime) !important;
  font-size:clamp(52px,6vw,90px) !important;
  line-height:1 !important;
  text-shadow:0 18px 26px rgba(217,242,79,.22) !important;
}

body.nxdf-active .nx .nx-quality-panel strong {
  color:#f3f5ec !important;
  font-family:var(--fd) !important;
  font-size:clamp(12px,1.25vw,15px) !important;
  letter-spacing:.03em !important;
}

body.nxdf-active .nx .nx-quality-panel > span {
  color:#8fa392 !important;
  font-size:10px !important;
  font-weight:700 !important;
  letter-spacing:.18em !important;
}

/* W nieaktywnych widokach ukrywamy także całą kartę HTML. */
body.nxdf-active .nx .stage .view:not(.on) .nx-demo-panel {
  display:none !important;
}

@media(max-width:560px) {
  body.nxdf-active .nx .thumbs,
  body.nxdf-active .nx #nxthumbs {
    gap:7px !important;
  }

  body.nxdf-active .nx .stage .view.on:not([data-v="1"]) {
    padding:46px 24px 34px !important;
  }

  body.nxdf-active .nx .nx-demo-panel {
    width:min(78%,260px) !important;
  }

  body.nxdf-active .nx .nx-ingredients-panel {
    width:min(76%,240px) !important;
  }
}


/* ================================================================
   NX EROBOOST DEMO FIX 3.4.0
   4 RÓWNE KWADRATY + SZEROKIE WIDOKI 02–04
   ================================================================ */

/*
 * Twardy układ czterech identycznych pól.
 * Resetujemy wszystkie starsze reguły buttonów, flexów i pseudo-elementów.
 */
body.nxdf-active .nx #nxthumbs {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  grid-template-rows:1fr !important;
  width:100% !important;
  min-width:0 !important;
  gap:10px !important;
  margin:12px 0 0 !important;
  padding:0 !important;
  overflow:visible !important;
}

body.nxdf-active .nx #nxthumbs > button.nx-gallery-thumb {
  position:relative !important;
  display:block !important;
  float:none !important;
  clear:none !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:1 / 1 !important;
  margin:0 !important;
  padding:8px !important;
  border:1.5px solid var(--line) !important;
  border-radius:14px !important;
  background:#fff !important;
  box-shadow:none !important;
  overflow:hidden !important;
  transform:none !important;
  appearance:none !important;
  -webkit-appearance:none !important;
}

body.nxdf-active .nx #nxthumbs > button.nx-gallery-thumb::before,
body.nxdf-active .nx #nxthumbs > button.nx-gallery-thumb::after {
  content:none !important;
  display:none !important;
}

body.nxdf-active .nx #nxthumbs > button.nx-gallery-thumb.active {
  border-color:var(--ink) !important;
  box-shadow:0 7px 18px -12px rgba(13,18,15,.38) !important;
}

body.nxdf-active .nx .nx-gallery-thumb-preview {
  position:absolute !important;
  inset:8px !important;
  display:grid !important;
  place-items:center !important;
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .nx-gallery-thumb-preview-1 img {
  display:block !important;
  width:74% !important;
  height:74% !important;
  max-width:74% !important;
  max-height:74% !important;
  min-width:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  margin:auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:3px !important;
  box-shadow:none !important;
}

/* Podgląd kapsułek */
body.nxdf-active .nx .nx-gallery-thumb-preview-2 {
  position:absolute !important;
}

body.nxdf-active .nx .nx-thumb-capsule {
  position:absolute !important;
  display:block !important;
  width:50% !important;
  height:16% !important;
  border-radius:999px !important;
  box-shadow:0 4px 9px rgba(13,18,15,.14) !important;
}

body.nxdf-active .nx .nx-thumb-capsule-a {
  left:24% !important;
  top:37% !important;
  background:linear-gradient(90deg,var(--lime) 50%,#eef2e8 50%) !important;
  transform:rotate(-18deg) !important;
}

body.nxdf-active .nx .nx-thumb-capsule-b {
  left:28% !important;
  top:58% !important;
  width:44% !important;
  background:linear-gradient(90deg,#182619 50%,#eef2e8 50%) !important;
  transform:rotate(15deg) !important;
}

/* Podgląd karty składu */
body.nxdf-active .nx .nx-thumb-sheet {
  position:relative !important;
  display:block !important;
  width:44% !important;
  height:62% !important;
  border:1px solid #cfd6c6 !important;
  border-radius:6px !important;
  background:#f3f5ec !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .nx-thumb-sheet b {
  display:block !important;
  width:100% !important;
  height:22% !important;
  background:#182619 !important;
}

body.nxdf-active .nx .nx-thumb-sheet i {
  display:block !important;
  width:62% !important;
  height:4% !important;
  margin:10% auto 0 !important;
  border-radius:999px !important;
  background:#0fa958 !important;
}

/* Podgląd jakości */
body.nxdf-active .nx .nx-thumb-star {
  display:block !important;
  color:var(--lime) !important;
  font-size:clamp(25px,2.8vw,42px) !important;
  line-height:1 !important;
  -webkit-text-stroke:1px #8fa920 !important;
  text-shadow:0 5px 12px rgba(217,242,79,.22) !important;
}

body.nxdf-active .nx #nxthumbs .n {
  position:absolute !important;
  left:8px !important;
  bottom:6px !important;
  z-index:8 !important;
  display:block !important;
  width:auto !important;
  height:auto !important;
  margin:0 !important;
  padding:1px 4px !important;
  border:0 !important;
  border-radius:5px !important;
  background:rgba(255,255,255,.9) !important;
  color:var(--muted) !important;
  font-size:10px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}

/*
 * Widoki 02–04 zajmują prawie całą szerokość ciemnej ramki.
 */
body.nxdf-active .nx .stage .view.on:not([data-v="1"]) {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:42px 22px 34px !important;
}

body.nxdf-active .nx .nx-demo-panel {
  width:min(88%,360px) !important;
  max-width:88% !important;
  margin:auto !important;
}

/* Karta składników szeroka i bez ucinania tekstu */
body.nxdf-active .nx .nx-ingredients-panel {
  width:min(86%,340px) !important;
  max-width:86% !important;
  min-height:72% !important;
  max-height:78% !important;
  aspect-ratio:auto !important;
  border-radius:16px !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .nx-panel-head {
  min-height:48px !important;
  padding:10px 16px !important;
  font-size:16px !important;
}

body.nxdf-active .nx .nx-ingredients-panel ul {
  justify-content:space-evenly !important;
  gap:5px !important;
  margin:0 !important;
  padding:14px 22px 16px !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .nx-ingredients-panel li {
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 0 0 20px !important;
  color:#263128 !important;
  font-size:clamp(11px,1.12vw,13px) !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  word-break:normal !important;
}

/* Kapsułki i jakość również większe */
body.nxdf-active .nx .nx-capsules-panel {
  width:min(86%,350px) !important;
  max-width:86% !important;
}

body.nxdf-active .nx .nx-quality-panel {
  width:min(84%,340px) !important;
  max-width:84% !important;
}

@media(max-width:560px) {
  body.nxdf-active .nx #nxthumbs {
    gap:7px !important;
  }

  body.nxdf-active .nx #nxthumbs > button.nx-gallery-thumb {
    padding:5px !important;
    border-radius:11px !important;
  }

  body.nxdf-active .nx .nx-gallery-thumb-preview {
    inset:5px !important;
  }

  body.nxdf-active .nx .stage .view.on:not([data-v="1"]) {
    padding:40px 14px 30px !important;
  }

  body.nxdf-active .nx .nx-ingredients-panel {
    width:min(90%,320px) !important;
    max-width:90% !important;
  }
}


/* ================================================================
   NX EROBOOST DEMO FIX 3.5.0
   DYNAMICZNA WYSOKOŚĆ GALERII
   ================================================================ */

/*
 * Główna ramka nie ma już na stałe wymuszonego kwadratu.
 * JS ustawia wysokość tylko dla zdjęcia. Pozostałe widoki
 * rosną automatycznie wraz z zawartością.
 */
body.nxdf-active .nx .stage {
  position:relative !important;
  aspect-ratio:auto !important;
  height:auto;
  min-height:0 !important;
  max-height:none !important;
}

/* Nieaktywne widoki całkowicie znikają. */
body.nxdf-active .nx .stage .view {
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/*
 * Aktywne widoki 02–04 są elementami normalnego układu,
 * dlatego ich zawartość ustala wysokość głównej ramki.
 */
body.nxdf-active .nx .stage .view.on:not([data-v="1"]) {
  position:relative !important;
  inset:auto !important;
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  height:auto !important;
  min-height:360px !important;
  max-height:none !important;
  margin:0 !important;
  padding:78px 18px 62px !important;
  overflow:visible !important;
}

/* Widok zdjęcia nadal jest osobnym polem zbliżonym do kwadratu. */
body.nxdf-active .nx .stage .view[data-v="1"].on {
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}

/*
 * Skład wykorzystuje niemal całą szerokość ramki
 * i nie ma żadnego limitu wysokości.
 */
body.nxdf-active .nx .nx-ingredients-panel {
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  width:calc(100% - 16px) !important;
  max-width:430px !important;
  min-height:0 !important;
  max-height:none !important;
  height:auto !important;
  aspect-ratio:auto !important;
  margin:0 auto !important;
  padding:0 !important;
  overflow:visible !important;
  border-radius:16px !important;
  background:#f3f5ec !important;
  box-shadow:0 28px 42px -24px rgba(0,0,0,.72) !important;
}

body.nxdf-active .nx .nx-ingredients-panel .nx-panel-head {
  flex:0 0 auto !important;
  width:100% !important;
  min-height:50px !important;
  padding:12px 18px !important;
  border-radius:16px 16px 0 0 !important;
  background:#182619 !important;
  color:var(--lime) !important;
  font-size:16px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}

body.nxdf-active .nx .nx-ingredients-panel ul {
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  margin:0 !important;
  padding:20px 24px 22px !important;
  overflow:visible !important;
}

body.nxdf-active .nx .nx-ingredients-panel li {
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 0 0 22px !important;
  overflow:visible !important;
  color:#263128 !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.4 !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:anywhere !important;
  text-overflow:clip !important;
}

body.nxdf-active .nx .nx-ingredients-panel li::before {
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:.55em !important;
  width:8px !important;
  height:8px !important;
  border-radius:50% !important;
  background:var(--brand) !important;
}

/*
 * Kapsułki — duży stabilny obszar, bez aspect-ratio
 * i bez przycinania przez rodzica.
 */
body.nxdf-active .nx .nx-capsules-panel {
  position:relative !important;
  display:block !important;
  width:calc(100% - 20px) !important;
  max-width:410px !important;
  height:330px !important;
  min-height:330px !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  margin:0 auto !important;
  overflow:visible !important;
}

body.nxdf-active .nx .nx-capsule {
  position:absolute !important;
  display:block !important;
  overflow:hidden !important;
  border-radius:999px !important;
  box-shadow:0 18px 30px -18px rgba(0,0,0,.75) !important;
  opacity:1 !important;
  visibility:visible !important;
}

body.nxdf-active .nx .nx-capsule-a {
  left:8% !important;
  top:28% !important;
  width:78% !important;
  height:68px !important;
  transform:rotate(-17deg) !important;
}

body.nxdf-active .nx .nx-capsule-b {
  left:25% !important;
  top:61% !important;
  width:66% !important;
  height:58px !important;
  transform:rotate(14deg) !important;
}

body.nxdf-active .nx .nx-capsule span,
body.nxdf-active .nx .nx-capsule i {
  position:absolute !important;
  top:0 !important;
  bottom:0 !important;
  display:block !important;
  width:52% !important;
  opacity:1 !important;
  visibility:visible !important;
}

body.nxdf-active .nx .nx-capsule span {
  left:0 !important;
}

body.nxdf-active .nx .nx-capsule i {
  right:0 !important;
  background:#f3f5ec !important;
}

body.nxdf-active .nx .nx-capsule-a span {
  background:linear-gradient(
    135deg,
    var(--lime),
    #9dbf1e
  ) !important;
}

body.nxdf-active .nx .nx-capsule-b span {
  background:#182619 !important;
}

body.nxdf-active .nx .nx-capsule-dot {
  position:absolute !important;
  display:block !important;
  border-radius:50% !important;
  opacity:1 !important;
  visibility:visible !important;
  box-shadow:0 12px 22px -12px rgba(0,0,0,.7) !important;
}

body.nxdf-active .nx .nx-dot-a {
  right:7% !important;
  top:8% !important;
  width:52px !important;
  height:52px !important;
  background:var(--lime) !important;
}

body.nxdf-active .nx .nx-dot-b {
  left:8% !important;
  top:11% !important;
  width:34px !important;
  height:34px !important;
  background:#182619 !important;
}

/*
 * Jakość — pełna wysokość i brak obcinania dolnego tekstu.
 */
body.nxdf-active .nx .nx-quality-panel {
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  width:calc(100% - 20px) !important;
  max-width:410px !important;
  min-height:340px !important;
  height:auto !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  margin:0 auto !important;
  padding:20px !important;
  overflow:visible !important;
  color:#eef4ec !important;
  text-align:center !important;
}

body.nxdf-active .nx .nx-quality-ring {
  position:relative !important;
  flex:0 0 auto !important;
  display:grid !important;
  place-items:center !important;
  width:180px !important;
  height:180px !important;
  border:2px solid rgba(243,245,236,.82) !important;
  border-radius:50% !important;
  overflow:visible !important;
}

body.nxdf-active .nx .nx-quality-ring::before {
  content:"" !important;
  position:absolute !important;
  inset:20px !important;
  width:auto !important;
  height:auto !important;
  border:1.5px dashed var(--lime) !important;
  border-radius:50% !important;
}

body.nxdf-active .nx .nx-quality-star {
  position:relative !important;
  z-index:2 !important;
  color:var(--lime) !important;
  font-size:92px !important;
  line-height:1 !important;
}

body.nxdf-active .nx .nx-quality-panel strong {
  display:block !important;
  color:#f3f5ec !important;
  font-size:15px !important;
  line-height:1.3 !important;
}

body.nxdf-active .nx .nx-quality-panel > span {
  display:block !important;
  color:#9db5a4 !important;
  font-size:11px !important;
  font-weight:700 !important;
  line-height:1.4 !important;
  letter-spacing:.16em !important;
}

/*
 * Chipy pozostają nad treścią, ale nie wpływają na dynamiczną wysokość.
 */
body.nxdf-active .nx .stage .chip {
  z-index:40 !important;
}

@media(max-width:560px) {
  body.nxdf-active .nx .stage .view.on:not([data-v="1"]) {
    min-height:320px !important;
    padding:72px 12px 58px !important;
  }

  body.nxdf-active .nx .nx-ingredients-panel {
    width:100% !important;
    max-width:none !important;
  }

  body.nxdf-active .nx .nx-ingredients-panel ul {
    gap:9px !important;
    padding:18px 18px 20px !important;
  }

  body.nxdf-active .nx .nx-capsules-panel,
  body.nxdf-active .nx .nx-quality-panel {
    width:100% !important;
    max-width:none !important;
  }

  body.nxdf-active .nx .nx-capsule-a {
    height:58px !important;
  }

  body.nxdf-active .nx .nx-capsule-b {
    height:50px !important;
  }
}


/* ================================================================
   NX EROBOOST DEMO FIX 3.6.0
   DYNAMICZNA FORMA PRODUKTU
   ================================================================ */

body.nxdf-active .nx .nx-product-form-panel {
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  width:calc(100% - 18px) !important;
  max-width:420px !important;
  min-height:340px !important;
  height:auto !important;
  margin:0 auto !important;
  padding:22px 24px 24px !important;
  overflow:visible !important;
  color:#eef4ec !important;
  text-align:center !important;
}

body.nxdf-active .nx .nx-form-title {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:7px 13px !important;
  border:1px solid rgba(217,242,79,.24) !important;
  border-radius:999px !important;
  background:rgba(217,242,79,.08) !important;
  color:var(--lime) !important;
  font-family:var(--fd) !important;
  font-size:11px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.1em !important;
}

body.nxdf-active .nx .nx-form-visual {
  position:relative !important;
  display:grid !important;
  place-items:center !important;
  width:100% !important;
  height:230px !important;
  overflow:visible !important;
}

body.nxdf-active .nx .nx-product-form-panel > strong {
  color:#f3f5ec !important;
  font-family:var(--fd) !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  letter-spacing:.08em !important;
}

/* ---------- KAPSUŁKI ---------- */

body.nxdf-active .nx .nx-form-capsules {
  position:relative !important;
  display:block !important;
  width:100% !important;
  max-width:340px !important;
  height:220px !important;
}

body.nxdf-active .nx .nx-form-capsule {
  position:absolute !important;
  display:block !important;
  height:62px !important;
  border-radius:999px !important;
  overflow:hidden !important;
  box-shadow:0 20px 32px -18px rgba(0,0,0,.78) !important;
}

body.nxdf-active .nx .nx-form-capsule::before,
body.nxdf-active .nx .nx-form-capsule i {
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  bottom:0 !important;
  width:52% !important;
}

body.nxdf-active .nx .nx-form-capsule::before {
  left:0 !important;
  background:linear-gradient(135deg,var(--lime),#9dbf1e) !important;
}

body.nxdf-active .nx .nx-form-capsule i {
  right:0 !important;
  background:#f3f5ec !important;
}

body.nxdf-active .nx .nx-form-capsule-1 {
  left:7% !important;
  top:40px !important;
  width:80% !important;
  transform:rotate(-17deg) !important;
}

body.nxdf-active .nx .nx-form-capsule-2 {
  left:25% !important;
  top:135px !important;
  width:66% !important;
  height:54px !important;
  transform:rotate(14deg) !important;
}

body.nxdf-active .nx .nx-form-capsule-2::before {
  background:#182619 !important;
}

body.nxdf-active .nx .nx-form-small-dot {
  position:absolute !important;
  display:block !important;
  border-radius:50% !important;
}

body.nxdf-active .nx .nx-form-dot-1 {
  right:4% !important;
  top:8px !important;
  width:46px !important;
  height:46px !important;
  background:var(--lime) !important;
}

body.nxdf-active .nx .nx-form-dot-2 {
  left:6% !important;
  top:10px !important;
  width:30px !important;
  height:30px !important;
  background:#182619 !important;
}

/* ---------- TABLETKI ---------- */

body.nxdf-active .nx .nx-form-tablets {
  position:relative !important;
  width:100% !important;
  max-width:330px !important;
  height:220px !important;
}

body.nxdf-active .nx .nx-form-blister {
  position:absolute !important;
  left:50% !important;
  top:20px !important;
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:14px !important;
  width:210px !important;
  padding:20px !important;
  border:2px solid rgba(255,255,255,.5) !important;
  border-radius:18px !important;
  background:linear-gradient(145deg,#cbd2ca,#f5f7f2) !important;
  box-shadow:0 24px 36px -20px rgba(0,0,0,.7) !important;
  transform:translateX(-50%) rotate(-7deg) !important;
}

body.nxdf-active .nx .nx-form-blister i {
  display:block !important;
  width:42px !important;
  height:42px !important;
  border-radius:50% !important;
  background:
    radial-gradient(circle at 36% 30%,#fff,#d7ddd2 55%,#bcc5bb) !important;
  box-shadow:
    inset 0 3px 6px rgba(255,255,255,.9),
    0 3px 8px rgba(0,0,0,.14) !important;
}

body.nxdf-active .nx .nx-form-loose-tablet {
  position:absolute !important;
  display:block !important;
  width:48px !important;
  height:48px !important;
  border-radius:50% !important;
  background:var(--lime) !important;
  box-shadow:0 12px 20px -12px rgba(0,0,0,.7) !important;
}

body.nxdf-active .nx .nx-form-loose-tablet-1 {
  left:18px !important;
  bottom:16px !important;
}

body.nxdf-active .nx .nx-form-loose-tablet-2 {
  right:20px !important;
  bottom:8px !important;
  width:38px !important;
  height:38px !important;
  background:#f3f5ec !important;
}

/* ---------- PROSZEK ---------- */

body.nxdf-active .nx .nx-form-powder {
  position:relative !important;
  width:100% !important;
  max-width:330px !important;
  height:230px !important;
}

body.nxdf-active .nx .nx-form-pouch {
  position:absolute !important;
  left:50% !important;
  top:8px !important;
  width:170px !important;
  height:205px !important;
  border-radius:18px 18px 24px 24px !important;
  background:linear-gradient(155deg,#f9fbf6,#dfe7dc) !important;
  box-shadow:0 26px 40px -22px rgba(0,0,0,.72) !important;
  transform:translateX(-50%) rotate(-3deg) !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .nx-form-pouch b {
  display:block !important;
  height:24px !important;
  background:#182619 !important;
}

body.nxdf-active .nx .nx-form-pouch strong {
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:78px !important;
  color:#182619 !important;
  font-size:18px !important;
  letter-spacing:.08em !important;
}

body.nxdf-active .nx .nx-form-pouch span {
  position:absolute !important;
  left:26px !important;
  right:26px !important;
  bottom:36px !important;
  height:8px !important;
  border-radius:999px !important;
  background:var(--lime) !important;
}

body.nxdf-active .nx .nx-form-scoop {
  position:absolute !important;
  right:20px !important;
  bottom:20px !important;
  width:92px !important;
  height:34px !important;
  border-radius:999px 18px 18px 999px !important;
  background:var(--lime) !important;
  transform:rotate(16deg) !important;
  box-shadow:0 14px 24px -14px rgba(0,0,0,.7) !important;
}

body.nxdf-active .nx .nx-form-scoop i {
  position:absolute !important;
  right:-40px !important;
  top:13px !important;
  width:52px !important;
  height:8px !important;
  border-radius:999px !important;
  background:#f3f5ec !important;
}

/* ---------- KREM / ŻEL ---------- */

body.nxdf-active .nx .nx-form-cream {
  position:relative !important;
  width:100% !important;
  max-width:330px !important;
  height:225px !important;
}

body.nxdf-active .nx .nx-form-tube {
  position:absolute !important;
  left:50% !important;
  top:6px !important;
  width:122px !important;
  height:205px !important;
  border-radius:18px 18px 10px 10px !important;
  background:linear-gradient(150deg,#f9fbf7,#dfe7dc) !important;
  box-shadow:0 26px 40px -22px rgba(0,0,0,.72) !important;
  transform:translateX(-50%) rotate(4deg) !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .nx-form-tube b {
  display:block !important;
  height:30px !important;
  background:#182619 !important;
}

body.nxdf-active .nx .nx-form-tube span {
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:88px !important;
  color:#182619 !important;
  font-size:18px !important;
  font-weight:800 !important;
}

body.nxdf-active .nx .nx-form-tube i {
  position:absolute !important;
  left:30px !important;
  right:30px !important;
  bottom:28px !important;
  height:8px !important;
  border-radius:999px !important;
  background:var(--lime) !important;
}

body.nxdf-active .nx .nx-form-cream-drop {
  position:absolute !important;
  right:28px !important;
  bottom:28px !important;
  width:72px !important;
  height:34px !important;
  border-radius:50% !important;
  background:#f3f5ec !important;
  box-shadow:0 14px 24px -14px rgba(0,0,0,.72) !important;
  transform:rotate(-14deg) !important;
}

body.nxdf-active .nx .nx-form-gel .nx-form-tube i,
body.nxdf-active .nx .nx-form-gel .nx-form-cream-drop {
  background:linear-gradient(90deg,#81e5d1,#0fa958) !important;
}

/* ---------- KROPLE ---------- */

body.nxdf-active .nx .nx-form-drops {
  position:relative !important;
  width:100% !important;
  max-width:320px !important;
  height:225px !important;
}

body.nxdf-active .nx .nx-form-dropper {
  position:absolute !important;
  left:50% !important;
  top:34px !important;
  width:105px !important;
  height:172px !important;
  border-radius:18px 18px 25px 25px !important;
  background:linear-gradient(150deg,#f9fbf7,#dfe7dc) !important;
  box-shadow:0 26px 40px -22px rgba(0,0,0,.72) !important;
  transform:translateX(-50%) !important;
  overflow:visible !important;
}

body.nxdf-active .nx .nx-form-dropper b {
  position:absolute !important;
  left:12px !important;
  right:12px !important;
  top:-28px !important;
  height:42px !important;
  border-radius:12px 12px 5px 5px !important;
  background:#182619 !important;
}

body.nxdf-active .nx .nx-form-dropper span {
  position:absolute !important;
  left:18px !important;
  right:18px !important;
  top:64px !important;
  height:52px !important;
  border-radius:10px !important;
  background:var(--lime-soft) !important;
  border:1px solid #dce8b7 !important;
}

body.nxdf-active .nx .nx-form-dropper i {
  position:absolute !important;
  left:34px !important;
  right:34px !important;
  bottom:22px !important;
  height:7px !important;
  border-radius:999px !important;
  background:var(--lime) !important;
}

body.nxdf-active .nx .nx-form-drop {
  position:absolute !important;
  width:22px !important;
  height:30px !important;
  border-radius:60% 60% 70% 70% / 70% 70% 45% 45% !important;
  background:var(--lime) !important;
  transform:rotate(45deg) !important;
}

body.nxdf-active .nx .nx-form-drop-1 {
  left:34px !important;
  top:46px !important;
}

body.nxdf-active .nx .nx-form-drop-2 {
  right:36px !important;
  bottom:26px !important;
  width:17px !important;
  height:23px !important;
}

/* ---------- SPRAY ---------- */

body.nxdf-active .nx .nx-form-spray {
  position:relative !important;
  width:100% !important;
  max-width:330px !important;
  height:225px !important;
}

body.nxdf-active .nx .nx-form-spray-bottle {
  position:absolute !important;
  left:44% !important;
  top:50px !important;
  width:105px !important;
  height:158px !important;
  border-radius:17px 17px 25px 25px !important;
  background:linear-gradient(150deg,#f9fbf7,#dfe7dc) !important;
  transform:translateX(-50%) !important;
  box-shadow:0 26px 40px -22px rgba(0,0,0,.72) !important;
}

body.nxdf-active .nx .nx-form-spray-bottle b {
  position:absolute !important;
  left:24px !important;
  top:-34px !important;
  width:62px !important;
  height:42px !important;
  border-radius:12px 6px 4px 4px !important;
  background:#182619 !important;
}

body.nxdf-active .nx .nx-form-spray-bottle b::after {
  content:"" !important;
  position:absolute !important;
  right:-42px !important;
  top:5px !important;
  width:50px !important;
  height:14px !important;
  border-radius:2px 999px 999px 2px !important;
  background:#182619 !important;
}

body.nxdf-active .nx .nx-form-spray-bottle span {
  position:absolute !important;
  left:18px !important;
  right:18px !important;
  top:62px !important;
  height:48px !important;
  border-radius:10px !important;
  background:var(--lime-soft) !important;
}

body.nxdf-active .nx .nx-form-spray-cloud {
  position:absolute !important;
  right:20px !important;
  top:42px !important;
  display:flex !important;
  gap:13px !important;
}

body.nxdf-active .nx .nx-form-spray-cloud i {
  display:block !important;
  width:10px !important;
  height:10px !important;
  border-radius:50% !important;
  background:rgba(217,242,79,.86) !important;
}

/* ---------- PŁYN ---------- */

body.nxdf-active .nx .nx-form-liquid {
  position:relative !important;
  width:100% !important;
  max-width:320px !important;
  height:225px !important;
}

body.nxdf-active .nx .nx-form-liquid-bottle {
  position:absolute !important;
  left:50% !important;
  top:26px !important;
  width:120px !important;
  height:188px !important;
  border-radius:15px 15px 30px 30px !important;
  background:linear-gradient(150deg,#f9fbf7,#dfe7dc) !important;
  transform:translateX(-50%) !important;
  box-shadow:0 26px 40px -22px rgba(0,0,0,.72) !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .nx-form-liquid-bottle b {
  display:block !important;
  width:58px !important;
  height:32px !important;
  margin:0 auto !important;
  border-radius:0 0 8px 8px !important;
  background:#182619 !important;
}

body.nxdf-active .nx .nx-form-liquid-bottle span {
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:86px !important;
  color:#182619 !important;
  font-size:18px !important;
  font-weight:800 !important;
}

body.nxdf-active .nx .nx-form-liquid-bottle i {
  position:absolute !important;
  left:24px !important;
  right:24px !important;
  bottom:30px !important;
  height:38px !important;
  border-radius:14px !important;
  background:linear-gradient(180deg,#d9f24f,#83b820) !important;
}

body.nxdf-active .nx .nx-form-liquid-wave {
  position:absolute !important;
  left:22px !important;
  right:22px !important;
  bottom:3px !important;
  height:18px !important;
  border-radius:50% !important;
  background:rgba(217,242,79,.24) !important;
  filter:blur(3px) !important;
}

/* ---------- ŻELKI ---------- */

body.nxdf-active .nx .nx-form-gummies {
  position:relative !important;
  width:100% !important;
  max-width:300px !important;
  height:220px !important;
}

body.nxdf-active .nx .nx-form-gummies i {
  position:absolute !important;
  display:block !important;
  width:70px !important;
  height:78px !important;
  border-radius:45% 45% 35% 35% !important;
  background:linear-gradient(145deg,var(--lime),#9dbf1e) !important;
  box-shadow:0 18px 26px -16px rgba(0,0,0,.72) !important;
}

body.nxdf-active .nx .nx-form-gummies i:nth-child(1) {
  left:16px !important;
  top:35px !important;
  transform:rotate(-12deg) !important;
}

body.nxdf-active .nx .nx-form-gummies i:nth-child(2) {
  left:104px !important;
  top:8px !important;
  background:linear-gradient(145deg,#f2b41c,#dd7d19) !important;
}

body.nxdf-active .nx .nx-form-gummies i:nth-child(3) {
  right:18px !important;
  top:42px !important;
  background:linear-gradient(145deg,#81e5d1,#0fa958) !important;
  transform:rotate(13deg) !important;
}

body.nxdf-active .nx .nx-form-gummies i:nth-child(4) {
  left:64px !important;
  bottom:12px !important;
  width:60px !important;
  height:66px !important;
  background:linear-gradient(145deg,#e8a8db,#b350a5) !important;
}

body.nxdf-active .nx .nx-form-gummies i:nth-child(5) {
  right:66px !important;
  bottom:6px !important;
  width:58px !important;
  height:64px !important;
}

/* ---------- PLASTRY ---------- */

body.nxdf-active .nx .nx-form-patches {
  position:relative !important;
  width:100% !important;
  max-width:310px !important;
  height:220px !important;
}

body.nxdf-active .nx .nx-form-patches i {
  position:absolute !important;
  display:block !important;
  width:160px !important;
  height:72px !important;
  border-radius:999px !important;
  background:
    linear-gradient(
      90deg,
      #e6d2b8 35%,
      #f8efe2 35%,
      #f8efe2 65%,
      #e6d2b8 65%
    ) !important;
  box-shadow:0 16px 26px -16px rgba(0,0,0,.7) !important;
}

body.nxdf-active .nx .nx-form-patches i:nth-child(1) {
  left:16px !important;
  top:30px !important;
  transform:rotate(-20deg) !important;
}

body.nxdf-active .nx .nx-form-patches i:nth-child(2) {
  right:8px !important;
  top:84px !important;
  transform:rotate(16deg) !important;
}

body.nxdf-active .nx .nx-form-patches i:nth-child(3) {
  left:76px !important;
  bottom:2px !important;
  width:130px !important;
  height:58px !important;
  transform:rotate(-3deg) !important;
}

/* ---------- GENERIC ---------- */

body.nxdf-active .nx .nx-form-generic {
  display:grid !important;
  place-items:center !important;
  width:100% !important;
  max-width:300px !important;
  height:220px !important;
}

body.nxdf-active .nx .nx-form-generic-pack {
  position:relative !important;
  width:130px !important;
  height:190px !important;
  border-radius:18px !important;
  background:linear-gradient(150deg,#f9fbf7,#dfe7dc) !important;
  box-shadow:0 26px 40px -22px rgba(0,0,0,.72) !important;
  overflow:hidden !important;
}

body.nxdf-active .nx .nx-form-generic-pack b {
  display:block !important;
  height:34px !important;
  background:#182619 !important;
}

body.nxdf-active .nx .nx-form-generic-pack span {
  position:absolute !important;
  left:24px !important;
  right:24px !important;
  bottom:32px !important;
  height:8px !important;
  border-radius:999px !important;
  background:var(--lime) !important;
}

/* ---------- DYNAMICZNE MINIATURY ---------- */

body.nxdf-active .nx .nx-gallery-thumb-preview-2 > i,
body.nxdf-active .nx .nx-gallery-thumb-preview-2 > span {
  position:absolute !important;
  display:block !important;
}

body.nxdf-active .nx .nx-dyn-thumb-capsule {
  width:52% !important;
  height:16% !important;
  left:24% !important;
  top:38% !important;
  border-radius:999px !important;
  background:
    linear-gradient(90deg,var(--lime) 50%,#eef2e8 50%) !important;
  transform:rotate(-17deg) !important;
}

body.nxdf-active .nx .nx-dyn-thumb-capsule-2 {
  top:59% !important;
  width:45% !important;
  left:29% !important;
  background:
    linear-gradient(90deg,#182619 50%,#eef2e8 50%) !important;
  transform:rotate(15deg) !important;
}

body.nxdf-active .nx .nx-dyn-thumb-blister {
  width:50% !important;
  height:58% !important;
  left:25% !important;
  top:19% !important;
  border-radius:7px !important;
  background:
    radial-gradient(circle at 28% 30%,#fff 0 7%,#d7ddd2 8% 16%,transparent 17%),
    radial-gradient(circle at 72% 30%,#fff 0 7%,#d7ddd2 8% 16%,transparent 17%),
    radial-gradient(circle at 28% 70%,#fff 0 7%,#d7ddd2 8% 16%,transparent 17%),
    radial-gradient(circle at 72% 70%,#fff 0 7%,#d7ddd2 8% 16%,transparent 17%),
    linear-gradient(145deg,#cbd2ca,#f5f7f2) !important;
  transform:rotate(-6deg) !important;
}

body.nxdf-active .nx .nx-dyn-thumb-pouch {
  width:42% !important;
  height:62% !important;
  left:29% !important;
  top:16% !important;
  border-radius:7px 7px 10px 10px !important;
  background:
    linear-gradient(#182619 0 18%,transparent 18%),
    linear-gradient(150deg,#f9fbf7,#dfe7dc) !important;
}

body.nxdf-active .nx .nx-dyn-thumb-tube {
  left:33% !important;
  top:14% !important;
  display:grid !important;
  place-items:center !important;
  width:34% !important;
  height:66% !important;
  border-radius:8px 8px 4px 4px !important;
  background:
    linear-gradient(#182619 0 18%,transparent 18%),
    linear-gradient(150deg,#f9fbf7,#dfe7dc) !important;
  color:#182619 !important;
  font-size:10px !important;
  font-style:normal !important;
  font-weight:800 !important;
}

body.nxdf-active .nx .nx-dyn-thumb-dropper,
body.nxdf-active .nx .nx-dyn-thumb-spray,
body.nxdf-active .nx .nx-dyn-thumb-bottle {
  left:35% !important;
  top:21% !important;
  width:30% !important;
  height:58% !important;
  border-radius:6px 6px 10px 10px !important;
  background:
    linear-gradient(#182619 0 20%,transparent 20%),
    linear-gradient(150deg,#f9fbf7,#dfe7dc) !important;
}

body.nxdf-active .nx .nx-dyn-thumb-spray::after {
  content:"" !important;
  position:absolute !important;
  right:-18px !important;
  top:0 !important;
  width:22px !important;
  height:8px !important;
  border-radius:0 999px 999px 0 !important;
  background:#182619 !important;
}

body.nxdf-active .nx .nx-dyn-thumb-gummy {
  left:22% !important;
  top:31% !important;
  width:30% !important;
  height:36% !important;
  border-radius:45% 45% 35% 35% !important;
  background:var(--lime) !important;
  transform:rotate(-12deg) !important;
}

body.nxdf-active .nx .nx-dyn-thumb-gummy-2 {
  left:auto !important;
  right:21% !important;
  top:39% !important;
  background:#f2b41c !important;
  transform:rotate(13deg) !important;
}

body.nxdf-active .nx .nx-dyn-thumb-patch {
  left:20% !important;
  top:38% !important;
  width:60% !important;
  height:23% !important;
  border-radius:999px !important;
  background:
    linear-gradient(
      90deg,
      #e6d2b8 35%,
      #f8efe2 35%,
      #f8efe2 65%,
      #e6d2b8 65%
    ) !important;
  transform:rotate(-15deg) !important;
}

body.nxdf-active .nx .nx-dyn-thumb-pack {
  left:34% !important;
  top:18% !important;
  width:32% !important;
  height:62% !important;
  border-radius:7px !important;
  background:
    linear-gradient(#182619 0 20%,transparent 20%),
    linear-gradient(150deg,#f9fbf7,#dfe7dc) !important;
}

@media(max-width:560px) {
  body.nxdf-active .nx .nx-product-form-panel {
    width:100% !important;
    max-width:none !important;
    min-height:315px !important;
    padding:18px 12px 20px !important;
  }

  body.nxdf-active .nx .nx-form-visual {
    height:215px !important;
  }
}
