/* NeuroSnax customizer styles — auto-split from customizer-overrides.css */

/**
 * NeuroSnax — styles migrated from WP Customizer > Additional CSS.
 * Safe to clear "Dodatkowy CSS" in Wygląd → Dostosuj — this file is the source of truth.
 */

/* Brutalist Features Box Styling */
.features-container .feature-box {
    background: #ffffff;
    border: 4px solid #000000 !important;
    border-radius: 0px !important;
    box-shadow: 8px 8px 0px #FF2D9B !important;
    padding: 20px;
}
.feature-box .feature-text {
    font-weight: 900 !important;
    text-transform: uppercase;
    font-size: 16px;
    letter-spacing: -0.5px;
}

/* FULL WIDTH FIX */
html { width: 100% !important; }
body {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
}
.ns-announce,
.ns-nav,
.ns-mobile-menu,
.ns-site-wrap,
.ns-footer,
footer,
nav,
main,
.wp-site-blocks {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Logo fix */
.ns-nav-logo img {
  height: 64px !important;
  width: auto !important;
  mix-blend-mode: multiply !important;
  filter: contrast(11) !important;
}

/* Fix broken Add to Cart buttons on cart page */
.woocommerce-cart .button,
.woocommerce-cart .add_to_cart_button,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button,
.ns-ajax-cart {
    height: auto !important;
    min-height: unset !important;
    max-height: unset !important;
    overflow: visible !important;
    display: inline-block !important;
    width: auto !important;
    min-width: unset !important;
    padding: 12px 24px !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}

/* Fix community section bleeding */
.ns-community {
    background: var(--pink) !important;
    width: 100% !important;
    overflow: hidden !important;
}

.ns-footer {
    position: relative !important;
    z-index: 10 !important;
    background: #0a0a0a !important;
    width: 100% !important;
    left: 0 !important;
    margin-left: 0 !important;
}

/* ── FAQ GLOBAL FIX ── */
.ns-faq-item {
    background: #fff !important;
    border: 3px solid #0a0a0a !important;
    box-shadow: 4px 4px 0 #0a0a0a !important;
    margin-bottom: 12px !important;
    overflow: hidden !important;
}
.ns-faq-item .ns-faq-q {
    padding: 20px 24px !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 900 !important;
    font-size: 16px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    color: #0a0a0a !important;
    cursor: pointer !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    background: transparent !important;
}
.ns-faq-item .ns-faq-a {
    padding: 0 24px !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.3s ease, padding 0.3s ease !important;
    color: rgba(10,10,10,0.65) !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
    display: block !important;
}
.ns-faq-item.ns-open .ns-faq-a {
    max-height: 300px !important;
    padding: 0 24px 20px !important;
}
.ns-faq-item.ns-open .ns-faq-q {
    color: #FF2D9B !important;
    border-bottom: 2px solid rgba(0,0,0,0.08) !important;
}
.ns-faq-item.ns-open {
    box-shadow: 4px 4px 0 #FF2D9B !important;
}

/* ── DARK FAQ ── */
.dark-faq .ns-faq-item {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    margin-bottom: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
}
.dark-faq .ns-faq-item .ns-faq-q {
    color: #fff !important;
    padding: 20px 0 !important;
    background: transparent !important;
}
.dark-faq .ns-faq-item .ns-faq-a {
    max-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    color: rgba(255,255,255,0.85) !important;
    background: transparent !important;
    border-left: none !important;
    margin: 0 !important;
    transition: max-height 0.3s ease, padding 0.3s ease !important;
}
.dark-faq .ns-faq-item.ns-open .ns-faq-a {
    max-height: 300px !important;
    padding: 0 0 20px 16px !important;
    border-left: 3px solid #FFE500 !important;
}
.dark-faq .ns-faq-item.ns-open .ns-faq-q {
    color: #FFE500 !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.dark-faq .ns-faq-item.ns-open {
    box-shadow: none !important;
}
.dark-faq .ns-faq-plus {
    color: #FFE500 !important;
}

/* Sticky mobile buy bar */
.ns-mobile-cta-bar {
  position: fixed;
  bottom: 0; left: 0; right: 0;
  background: #FFE500;
  border-top: 3px solid #0a0a0a;
  padding: 12px 20px;
  display: none;
  z-index: 9999;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0 -4px 0 #FF2D9B;
}
.ns-mobile-cta-bar span {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 900;
  font-size: 16px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #0a0a0a;
}
.ns-mobile-cta-bar a {
  background: #0a0a0a;
  color: #FFE500;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 900;
  font-size: 14px;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 10px 24px;
  text-decoration: none;
  border: 2px solid #0a0a0a;
}
@media (max-width: 768px) {
  .ns-mobile-cta-bar { display: flex !important; }
  body { padding-bottom: 70px; }
}

/* ── OVERFLOW & MOBILE FINAL FIX ── */
html, body {
  overflow-x: hidden !important;
  max-width: 100vw !important;
}

/* ── CART BLOCK CHECKOUT BUTTON FIX ── */
.wc-block-cart__submit-button,
.wc-block-components-button.wc-block-cart__submit-button,
.wp-block-woocommerce-proceed-to-checkout-block a,
.wc-block-cart__submit-container a,
.wc-block-cart__submit-container button {
  background: #FFE500 !important;
  background-color: #FFE500 !important;
  color: #0a0a0a !important;
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 22px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  padding: 20px 40px !important;
  border: 4px solid #0a0a0a !important;
  box-shadow: 6px 6px 0 #FF2D9B !important;
  border-radius: 0 !important;
  width: 100% !important;
  min-height: unset !important;
  margin-top: 12px !important;
}
.wc-block-cart__submit-button:hover,
.wc-block-components-button.wc-block-cart__submit-button:hover {
  background: #FFE500 !important;
  background-color: #FFE500 !important;
  color: #0a0a0a !important;
  transform: translate(-3px, -3px) !important;
  box-shadow: 9px 9px 0 #FF2D9B !important;
  opacity: 1 !important;
}
.wc-block-cart__submit-button.contained {
  background: #FFE500 !important;
  color: #0a0a0a !important;
}

/* Trust icons */
.ns-sp-trust-item img {
  mix-blend-mode: multiply !important;
  background: transparent !important;
  width: 56px !important;
  height: 56px !important;
  object-fit: contain !important;
}
.ns-sp-trust-item { background: #ffffff !important; }
.ns-sp-trust-item:hover { background: #FFE500 !important; }
.ns-sp-trust-item:hover img { mix-blend-mode: multiply !important; }

/* ── PRODUCT PAGE BLACK SCREEN FIX ── */
body.single-product,
body.single-product #page,
body.single-product #content,
body.single-product main,
body.single-product .ns-site-wrap {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

/* Cart icon */
.ns-cart-btn {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 0 20px !important;
  height: 68px !important;
}
.ns-cart-icon-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex-shrink: 0;
}
.ns-cart-icon-wrap img {
  width: 32px !important;
  height: 32px !important;
  object-fit: contain !important;
  mix-blend-mode: multiply !important;
  display: block !important;
  transition: transform 0.15s !important;
}
.ns-cart-btn:hover .ns-cart-icon-wrap img {
  transform: scale(1.1) !important;
}
.ns-cart-count {
  background: #0a0a0a !important;
  color: #FFE500 !important;
  border-radius: 50% !important;
  width: 22px !important;
  height: 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  flex-shrink: 0 !important;
}

/* Drop card hide buttons */
.ns-drop-card-dark .ns-btn-add,
.ns-drop-card-dark a.button,
.ns-drop-card-dark .button.add_to_cart_button,
.ns-drop-card-dark .added_to_cart {
  display: none !important;
}

/* ── BUTTON FIXES ── */
.ns-btn-secondary {
  background: #0a0a0a !important;
  color: #FFE500 !important;
  border: 3px solid #0a0a0a !important;
  box-shadow: 5px 5px 0 #FF2D9B !important;
}
.ns-btn-secondary:hover {
  background: #FF2D9B !important;
  color: #fff !important;
  border-color: #FF2D9B !important;
}
.ns-products-header .ns-btn-secondary,
.ns-products .ns-btn-secondary {
  background: #0a0a0a !important;
  color: #FFE500 !important;
  border-color: #0a0a0a !important;
  box-shadow: 5px 5px 0 #FF2D9B !important;
}
.ns-community .ns-btn-secondary,
.ns-newsletter .ns-btn-secondary,
.ns-faq .ns-btn-secondary,
section[style*="background:#0a0a0a"] .ns-btn-secondary,
section[style*="background:var(--black)"] .ns-btn-secondary {
  background: #FFE500 !important;
  color: #0a0a0a !important;
  border-color: #0a0a0a !important;
  box-shadow: 5px 5px 0 #FF2D9B !important;
}
section[style*="background:#0a0a0a"] .ns-btn-secondary:hover,
section[style*="background:var(--black)"] .ns-btn-secondary:hover {
  background: #FF2D9B !important;
  color: #fff !important;
}

/* ── LOGO CLEAN PNG FIX ── */
.ns-nav-logo {
  background: transparent !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
}
.ns-nav-logo img {
  height: 56px !important;
  width: auto !important;
  display: block !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  mix-blend-mode: multiply !important;
  filter: contrast(1.15) saturate(1.2) !important;
}
@media (max-width: 768px) {
  .ns-nav-logo img {
    height: 44px !important;
    mix-blend-mode: multiply !important;
    filter: contrast(1.15) saturate(1.2) !important;
  }
}

@media(max-width:768px){
  #ns-tab-howto > div { padding: 40px 20px !important; }
}

/* ── NAV REDESIGN v3 ── */
.ns-nav {
  padding: 0 48px !important;
  height: 72px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 32px !important;
  background: #FFE500 !important;
}
.ns-nav-links {
  display: flex !important;
  align-items: center !important;
  gap: 40px !important;
  list-style: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  flex: 1 !important;
  justify-content: center !important;
}
.ns-nav-links li a,
.ns-nav-link {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: rgba(10,10,10,0.45) !important;
  text-decoration: none !important;
  transition: color 0.15s !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
  box-shadow: none !important;
}
.ns-nav-links li a:hover { color: #0a0a0a !important; }
.ns-nav-hydration,
.ns-nav-links li:first-child a {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 900 !important;
  font-size: 15px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #0a0a0a !important;
  text-decoration: none !important;
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 0 6px 0 !important;
  border-bottom: 3px solid #FF2D9B !important;
  display: inline-block !important;
  transition: border-color 0.15s !important;
}
.ns-nav-hydration:hover {
  color: #FF2D9B !important;
  border-bottom-color: #FF2D9B !important;
  background: none !important;
  box-shadow: none !important;
  transform: none !important;
}
.ns-nav-right {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  flex-shrink: 0 !important;
}
.ns-cart-btn {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  text-decoration: none !important;
  padding: 8px !important;
  border: none !important;
  background: none !important;
  transition: opacity 0.15s !important;
  height: auto !important;
}
.ns-cart-btn:hover { opacity: 0.7 !important; }
.ns-cart-icon-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
}
.ns-cart-icon-wrap img {
  display: block !important;
  width: 32px !important;
  height: 32px !important;
  object-fit: contain !important;
  mix-blend-mode: multiply !important;
  filter: none !important;
}
.ns-cart-icon-wrap svg { display: none !important; }
.ns-cart-count {
  background: #0a0a0a !important;
  color: #FFE500 !important;
  border-radius: 50% !important;
  width: 22px !important;
  height: 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  flex-shrink: 0 !important;
  border: none !important;
}
.ns-cart-count.ns-cart-has-items {
  background: #FF2D9B !important;
  color: #fff !important;
}
.ns-nav-cta-primary {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: #0a0a0a !important;
  color: #FFE500 !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  padding: 14px 28px !important;
  border: none !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: background 0.15s !important;
  white-space: nowrap !important;
}
.ns-nav-cta-primary:hover {
  background: #FF2D9B !important;
  color: #fff !important;
  transform: none !important;
  box-shadow: none !important;
}
a.ns-nav-cta:not(.ns-nav-cta-primary) { display: none !important; }

@media (max-width: 768px) {
  .ns-nav {
    padding: 0 16px !important;
    height: 64px !important;
    gap: 0 !important;
  }
  .ns-nav-links { display: none !important; }
  .ns-nav-cta-primary { display: none !important; }
  .ns-mob-hydration {
    font-weight: 900 !important;
    color: #0a0a0a !important;
    background: #FFE500 !important;
    display: block !important;
    padding: 14px 20px !important;
    border-left: 4px solid #FF2D9B !important;
  }
  .ns-mob-secondary {
    font-size: 13px !important;
    color: rgba(10,10,10,0.4) !important;
  }
  .ns-mob-divider {
    height: 1px !important;
    background: rgba(0,0,0,0.08) !important;
    margin: 8px 0 !important;
    list-style: none !important;
    padding: 0 !important;
  }
}

/* Kup teraz button */
.ns-btn-add {
  background: #FFE500 !important;
  color: #0a0a0a !important;
  border: 2px solid #0a0a0a !important;
  box-shadow: 3px 3px 0 #0a0a0a !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  padding: 10px 18px !important;
  cursor: pointer !important;
  border-radius: 0 !important;
  transition: all 0.15s !important;
  white-space: nowrap !important;
}
.ns-btn-add:hover {
  background: #0a0a0a !important;
  color: #FFE500 !important;
  transform: translate(-2px, -2px) !important;
  box-shadow: 5px 5px 0 #FF2D9B !important;
}
.ns-card-overlay { display: none !important; }

@media (max-width: 768px) {
  .ns-reviews-header {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 24px !important;
  }
  .ns-reviews-header > div {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .ns-reviews-score {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }
  .ns-section-title { text-align: center !important; }
  .ns-section-tag { text-align: center !important; }
}

@media (max-width: 768px) {
  section[style*="background:#0a0a0a"] div[style*="grid-template-columns:1fr 1fr 1fr 1fr"] {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px !important;
  }
  section[style*="background:#0a0a0a"] div[style*="aspect-ratio:3/4"] {
    aspect-ratio: 4/3 !important;
    height: 200px !important;
  }
  section[style*="background:#0a0a0a"] {
    padding: 40px 20px !important;
  }
  section[style*="background:#0a0a0a"] > div > div[style*="font-size:clamp(52px"] {
    font-size: 48px !important;
    margin-bottom: 32px !important;
  }
  section[style*="background:#0a0a0a"] div[style*="justify-content:space-between;border-top"] {
    flex-direction: column !important;
    gap: 24px !important;
    align-items: flex-start !important;
  }
  section[style*="background:#0a0a0a"] div[style*="justify-content:space-between;border-top"] a {
    width: 100% !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 480px) {
  section[style*="background:#0a0a0a"] div[style*="grid-template-columns:1fr 1fr 1fr 1fr"] {
    grid-template-columns: 1fr !important;
  }
}

/* ── STAR RATING FIX ── */
.comment-form-rating .stars {
  display: flex !important;
  flex-direction: row !important;
  gap: 6px !important;
  margin: 8px 0 16px !important;
}
.comment-form-rating .stars a {
  font-size: 0 !important;
  display: inline-block !important;
  width: 36px !important;
  height: 36px !important;
  position: relative !important;
  text-decoration: none !important;
  cursor: pointer !important;
  color: rgba(0,0,0,0.15) !important;
  transition: color 0.1s !important;
}
.comment-form-rating .stars a span { display: none !important; }
.comment-form-rating .stars a::before {
  content: '★' !important;
  font-size: 32px !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  color: inherit !important;
  line-height: 1 !important;
  text-indent: 0 !important;
}
.comment-form-rating label {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 900 !important;
  font-size: 12px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: #0a0a0a !important;
  display: block !important;
  margin-bottom: 4px !important;
}

/* ── WYŚLIJ BUTTON ── */
#review_form .form-submit,
.comment-form .form-submit {
  margin-top: 20px !important;
}
#review_form .form-submit input[type="submit"],
.comment-form .form-submit input[type="submit"],
#submit {
  background: #FFE500 !important;
  color: #0a0a0a !important;
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 22px !important;
  letter-spacing: 3px !important;
  padding: 16px 48px !important;
  border: 3px solid #0a0a0a !important;
  box-shadow: 5px 5px 0 #0a0a0a !important;
  cursor: pointer !important;
  border-radius: 0 !important;
  width: 100% !important;
  text-align: center !important;
  transition: all 0.15s !important;
  display: block !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
#review_form .form-submit input[type="submit"]:hover,
.comment-form .form-submit input[type="submit"]:hover {
  background: #0a0a0a !important;
  color: #FFE500 !important;
  transform: translate(-2px,-2px) !important;
  box-shadow: 7px 7px 0 #FF2D9B !important;
}

/* ── WooCommerce cross-sells hide ── */
.woocommerce-cart .cross-sells,
.woocommerce .cross-sells {
  display: none !important;
}

/* ── DROP CARD STYLES ── */
.ns-drop-card-dark {
  background: #0a0a0a !important;
  border: 3px solid #FFE500 !important;
  box-shadow: 4px 4px 0 #FFE500 !important;
  overflow: hidden !important;
}
.ns-drop-card-dark .ns-product-img-wrap {
  background: #0a0a0a !important;
  border-bottom: 3px solid #FFE500 !important;
  position: relative !important;
  overflow: hidden !important;
  min-height: 260px !important;
  height: 260px !important;
  display: block !important;
}
.ns-drop-card-dark .ns-product-name a { color: #fff !important; }
.ns-drop-card-dark .ns-product-price {
  color: rgba(255,255,255,0.2) !important;
  text-decoration: line-through !important;
}
.ns-drop-card-dark .ns-btn-add { display: none !important; }
.ns-drop-card-dark .ns-product-flavor { color: #FF2D9B !important; }

/* ── DROP OVERLAY ── */
.ns-drop-overlay-inner {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: rgba(10,10,10,0.88) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  z-index: 999 !important;
  padding: 16px !important;
  box-sizing: border-box !important;
}
.ns-drop-badge-lim {
  background: #FF2D9B;
  color: #fff;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 900;
  font-size: 13px;
  letter-spacing: 4px;
  text-transform: uppercase;
  padding: 8px 20px;
  border: 3px solid #fff;
  box-shadow: 3px 3px 0 rgba(255,255,255,0.3);
}
.ns-drop-start-lbl {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 9px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.4);
}
.ns-drop-timer-row {
  display: flex;
  align-items: center;
  gap: 4px;
}
.ns-drop-unit {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.ns-drop-num {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 36px;
  line-height: 1;
  color: #FFE500;
  background: rgba(255,229,0,0.08);
  border: 2px solid rgba(255,229,0,0.25);
  padding: 5px 12px;
  min-width: 58px;
  text-align: center;
  letter-spacing: 2px;
}
.ns-drop-unit-lbl {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 8px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.3);
}
.ns-drop-colon {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 28px;
  color: rgba(255,229,0,0.3);
  margin-bottom: 12px;
}
.ns-drop-footer-btn {
  background: #FFE500;
  color: #0a0a0a;
  border: 3px solid #0a0a0a;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 900;
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 12px 20px;
  box-shadow: 4px 4px 0 #0a0a0a;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: all 0.15s;
  width: 100%;
  justify-content: center;
}
.ns-drop-footer-btn:hover {
  background: #FF2D9B;
  border-color: #FF2D9B;
  color: #fff;
  transform: translate(-2px,-2px);
  box-shadow: 6px 6px 0 #0a0a0a;
}

/* Drop grid fix */
.ns-products-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
}
.ns-products-grid > * {
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

@media (max-width: 768px) {
  .ns-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .ns-drop-card-dark .ns-product-img-wrap {
    min-height: 220px !important;
    height: 220px !important;
  }
  .ns-drop-num {
    font-size: 26px !important;
    min-width: 40px !important;
    padding: 4px 8px !important;
  }
  .ns-drop-badge-lim {
    font-size: 11px !important;
    padding: 6px 12px !important;
    letter-spacing: 2px !important;
  }
}

@media (max-width: 480px) {
  .ns-products-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ── SINGLE PRODUCT REVIEWS ── */
.woocommerce-Reviews ol.commentlist {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.woocommerce-Reviews ol.commentlist li {
  padding: 24px !important;
  margin-bottom: 16px !important;
  background: #f5f0e8 !important;
  border: 2px solid #0a0a0a !important;
  box-shadow: 4px 4px 0 #0a0a0a !important;
  list-style: none !important;
}
.woocommerce-Reviews .woocommerce-review__author {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: #0a0a0a !important;
}
.woocommerce-Reviews .description p {
  font-size: 14px !important;
  color: rgba(0,0,0,0.7) !important;
  line-height: 1.7 !important;
  margin-top: 8px !important;
}
.woocommerce-Reviews-title { display: none !important; }
.woocommerce-Reviews .comment_container img.avatar { display: none !important; }

/* ── SHOP GRID NUCLEAR MOBILE FIX ── */
@media (max-width: 768px) {
  .ns-shop-wrap {
    width: 100vw !important;
    max-width: 100vw !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    margin: 0 !important;
    left: 0 !important;
    position: relative !important;
  }

  .ns-shop-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .ns-product-card {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    margin: 0 !important;
  }

  .ns-product-img-wrap {
    width: 100% !important;
    max-width: 100% !important;
  }

  .ns-product-img {
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
  }

  .ns-filter-cats {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    width: 100% !important;
  }

  .ns-shop-filters {
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
  }

  .ns-shop-sort select {
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 400px) {
  .ns-shop-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ── STAR RATING COMPLETE FIX ── */
.comment-form-rating .stars {
  display: flex !important;
  flex-direction: row !important;
  gap: 6px !important;
  margin: 8px 0 16px !important;
}

.comment-form-rating .stars a {
  display: inline-block !important;
  width: 36px !important;
  height: 36px !important;
  cursor: pointer !important;
  text-decoration: none !important;
  font-size: 0 !important;
  position: relative !important;
}

.comment-form-rating .stars a span {
  display: none !important;
}

.comment-form-rating .stars a::before {
  content: '★' !important;
  font-size: 32px !important;
  display: block !important;
  line-height: 1 !important;
  color: rgba(0,0,0,0.15) !important;
}

/* Fix cart and checkout page inner wrapper width */
.woocommerce-cart .ns-site-wrap > div,
.woocommerce-checkout .ns-site-wrap > div {
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

/* WooCommerce cart block full width */
.woocommerce-cart .wp-block-woocommerce-cart,
.woocommerce-checkout .wp-block-woocommerce-checkout {
    max-width: 100% !important;
    width: 100% !important;
}

/* Checkout - Kupuję i płacę button */
.wc-block-checkout__actions .wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button {
    background-color: #FFE500 !important;
    color: #0a0a0a !important;
    border: 3px solid #0a0a0a !important;
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: 20px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 #0a0a0a !important;
    width: 100% !important;
    padding: 16px !important;
}

.wc-block-checkout__actions .wc-block-components-checkout-place-order-button:hover {
    background-color: #FF2D9B !important;
    color: #fff !important;
    box-shadow: 4px 4px 0 #0a0a0a !important;
}

/* Cart upsell - Dodaj do koszyka buttons */
.woocommerce-cart a.add_to_cart_button,
.woocommerce-cart a.ajax_add_to_cart {
    background-color: #FFE500 !important;
    color: #0a0a0a !important;
    border: 3px solid #0a0a0a !important;
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: 18px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 #0a0a0a !important;
    padding: 12px 20px !important;
    text-decoration: none !important;
    display: inline-block !important;
}

.woocommerce-cart a.add_to_cart_button:hover,
.woocommerce-cart a.ajax_add_to_cart:hover {
    background-color: #FF2D9B !important;
    color: #fff !important;
    box-shadow: 4px 4px 0 #0a0a0a !important;
}

/* Cross-sells block - fix button and title colors */
.wc-block-cart__cross-sells .wc-block-components-product-button a,
.wc-block-cart__cross-sells .wp-block-button__link,
.wc-block-cart__cross-sells a.add_to_cart_button {
    background-color: #FFE500 !important;
    color: #0a0a0a !important;
    border: 3px solid #0a0a0a !important;
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: 18px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 #0a0a0a !important;
    padding: 12px 20px !important;
    text-decoration: none !important;
}

.wc-block-cart__cross-sells .wc-block-components-product-button a:hover,
.wc-block-cart__cross-sells .wp-block-button__link:hover {
    background-color: #FF2D9B !important;
    color: #fff !important;
}

/* Fix blue product title color */
.wc-block-cart__cross-sells .wc-block-components-product-name,
.wc-block-cart__cross-sells .wc-block-components-product-name a {
    color: #0a0a0a !important;
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: 18px !important;
    text-decoration: none !important;
}

/* Cross-sells Dodaj do koszyka button */
button.wc-block-components-product-button__button {
    background-color: #FFE500 !important;
    color: #0a0a0a !important;
    border: 3px solid #0a0a0a !important;
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: 18px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 #0a0a0a !important;
    padding: 12px 20px !important;
    width: 100% !important;
}

button.wc-block-components-product-button__button:hover {
    background-color: #FF2D9B !important;
    color: #fff !important;
    box-shadow: 4px 4px 0 #0a0a0a !important;
}

/* Hero product cards — mobile fix */
@media (max-width: 768px) {
  /* Stack the 2 hero cards vertically */
  .ns-products > div[style*="grid-template-columns:1fr 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  /* Switch each card from horizontal to vertical layout */
  .ns-products > div[style*="grid-template-columns:1fr 1fr"] > div {
    grid-template-columns: 1fr !important;
    display: flex !important;
    flex-direction: column !important;
  }

  /* Image takes full width, fixed height */
  .ns-products > div[style*="grid-template-columns:1fr 1fr"] > div > div:first-child {
    border-right: none !important;
    border-bottom: 3px solid #0a0a0a !important;
    height: 220px !important;
    width: 100% !important;
  }

  /* Content padding adjustment */
  .ns-products > div[style*="grid-template-columns:1fr 1fr"] > div > div:last-child {
    padding: 16px !important;
  }
}

/* Mobile hero product cards — image fix */
@media (max-width: 768px) {
  /* Fix image not cropping */
  .ns-products > div[style*="grid-template-columns:1fr 1fr"] > div > div:first-child img {
    object-fit: cover !important;
    object-position: center !important;
    width: 100% !important;
    height: 100% !important;
  }

  /* Fix section header stacking on mobile */
  .ns-products .ns-products-header {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }

  .ns-products .ns-products-header a {
    width: 100% !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  /* Prevent any horizontal overflow */
  .ns-products {
    overflow: hidden !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .ns-products > div[style*="grid-template-columns:1fr 1fr"] > div > div:first-child {
    height: 260px !important;
  }
}

/* How it works — mobile fix */
@media (max-width: 768px) {
  /* Stack steps vertically */
  .ns-products ~ section > div > div[style*="grid-template-columns:1fr 1fr 1fr 1fr"],
  section > div > div[style*="grid-template-columns:1fr 1fr 1fr 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  /* Fix section padding */
  section[style*="padding:90px 80px"] {
    padding: 48px 16px !important;
  }

  /* Fix bottom CTA row in how it works */
  section[style*="padding:90px 80px"] div[style*="justify-content:space-between"] {
    flex-direction: column !important;
    gap: 24px !important;
    align-items: flex-start !important;
  }

  section[style*="padding:90px 80px"] div[style*="justify-content:space-between"] a {
    width: 100% !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  /* Fix benefits grid */
  div[style*="grid-template-columns:repeat(4,1fr)"] {
    grid-template-columns: 1fr 1fr !important;
  }

  /* Fix feature strip grid */
  div[style*="grid-template-columns:1fr 400px"] {
    grid-template-columns: 1fr !important;
    padding: 32px 16px !important;
  }

  /* Fix social proof grid */
  div[style*="grid-template-columns:200px 1fr"] {
    grid-template-columns: 1fr !important;
    padding: 28px 16px !important;
    gap: 16px !important;
  }
}

/* Feature strip — mobile fix */
@media (max-width: 768px) {
  div[style*="grid-template-columns:1fr 1fr"][style*="background:var(--yellow)"],
  div[style*="grid-template-columns:1fr 1fr"][style*="background:#FFE500"] {
    grid-template-columns: 1fr !important;
    padding: 32px 16px !important;
    gap: 24px !important;
  }

  /* Fix the 4 feature mini cards inside to 2 columns */
  div[style*="grid-template-columns:1fr 1fr"][style*="background:var(--yellow)"] > div:last-child,
  div[style*="grid-template-columns:1fr 1fr"][style*="background:#FFE500"] > div:last-child {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 768px) {
  /* Single column on shop page mobile */
  .ns-shop-grid {
    grid-template-columns: 1fr !important;
  }

  /* Reset card back to vertical (not horizontal) */
  .ns-product-card {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
  }

  /* Full width image on top */
  .ns-product-img-wrap {
    width: 100% !important;
    height: 240px !important;
    border-right: none !important;
    border-bottom: 3px solid #0a0a0a !important;
  }

  .ns-product-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  /* Content below */
  .ns-product-body {
    padding: 16px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* Single product page — mobile fixes */
@media (max-width: 768px) {

  /* Jak stosować — stack steps vertically */
  #ns-tab-howto > div > div[style*="grid-template-columns:repeat(3,1fr)"] {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  #ns-tab-howto > div {
    padding: 32px 16px !important;
  }

  /* Składniki — stack columns vertically */
  #ns-tab-ingredients > div {
    padding: 32px 16px !important;
  }

  #ns-tab-ingredients > div > div[style*="grid-template-columns:1fr 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  /* Full nutrition table — fix on mobile */
  #ns-tab-ingredients .ns-full-ing-box,
  #ns-tab-ingredients div[style*="background:var(--off)"] {
    overflow-x: auto !important;
  }

  /* Use case icons — 3 per row on mobile */
  #ns-tab-ingredients div[style*="grid-template-columns:repeat(5,1fr)"] {
    grid-template-columns: repeat(3, 1fr) !important;
  }

  /* Bottom flavor bar — stack on mobile */
  #ns-tab-ingredients div[style*="display:flex;align-items:center;justify-content:space-between;background:#0a0a0a"] {
    flex-direction: column !important;
    gap: 12px !important;
    align-items: flex-start !important;
  }

  #ns-tab-ingredients div[style*="display:flex;align-items:center;justify-content:space-between;background:#0a0a0a"] > div:last-child {
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  /* Tab nav scrollable */
  .ns-tabs-nav {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .ns-tab-btn {
    font-size: 11px !important;
    padding: 14px 16px !important;
  }

  /* Jak stosować step boxes min height fix */
  #ns-tab-howto div[style*="height:260px"] {
    height: 200px !important;
  }
}

/* Shop page — full bleed product images */
.ns-product-img-wrap,
.ns-product-img {
    background: transparent !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
}

.ns-product-card .ns-product-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* Product description — full width */
#ns-tab-description .ns-tab-inner {
    max-width: 100% !important;
    padding: 0 !important;
}

#ns-tab-description {
    padding: 0 !important;
}

/* Description padding */
.ns-desc {
    padding: 40px 80px !important;
}

/* FORCE flavor section always side by side */
.ns-desc-flavor {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0 !important;
    border: 3px solid #0a0a0a !important;
    margin-bottom: 40px !important;
    overflow: hidden !important;
}

.ns-desc-flavor-visual {
    border-right: 3px solid #0a0a0a !important;
    border-bottom: none !important;
    min-height: 280px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: 40px 32px !important;
}

.ns-desc-flavor-details {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: 32px !important;
    background: #fff !important;
    gap: 12px !important;
}

/* Fix Perfect for labels */
.ns-desc-perfect {
    background: #0a0a0a !important;
}

.ns-desc-perfect-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 16px 14px !important;
}

.ns-desc-perfect-icon {
    font-size: 28px !important;
    display: block !important;
    margin-bottom: 8px !important;
    line-height: 1 !important;
}

.ns-desc-perfect-label {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: rgba(255,255,255,0.7) !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 900 !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

/* Mobile */
@media (max-width: 768px) {
    .ns-desc {
        padding: 24px 16px !important;
    }
    .ns-desc-flavor {
        grid-template-columns: 1fr !important;
    }
    .ns-desc-flavor-visual {
        border-right: none !important;
        border-bottom: 3px solid #0a0a0a !important;
    }
}

/* Smaki tab — show full product images without cropping */
.ns-flavor-swatch img {
    object-fit: contain !important;
    object-position: center !important;
    padding: 8px !important;
    background: inherit !important;
}

.ns-flavor-swatch {
    height: 180px !important;
    overflow: hidden !important;
}

@media (max-width: 768px) {
  .ns-starter-inner {
    grid-template-columns: 1fr !important;
    padding: 40px 16px !important;
    gap: 32px !important;
  }

  .ns-starter-cta {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 16px !important;
    width: 100% !important;
  }

  .ns-starter-cta a {
    width: 100% !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  .ns-starter-cta > div {
    text-align: left !important;
  }
}

/* ====== NS-DESC PRODUCT DESCRIPTION CSS ====== */
.ns-desc{font-family:'Barlow',sans-serif;color:#0a0a0a;max-width:100%;overflow:hidden;}
.ns-desc *{box-sizing:border-box;}
.ns-desc-intro{padding:40px 0 32px;border-bottom:3px solid #0a0a0a;margin-bottom:40px;}
.ns-desc-intro-tag{display:inline-block;background:#FF2D9B;color:#fff;font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:10px;letter-spacing:4px;text-transform:uppercase;padding:5px 14px;margin-bottom:16px;}
.ns-desc-intro-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(36px,5vw,56px);line-height:0.95;letter-spacing:2px;color:#0a0a0a;margin:0 0 20px;}
.ns-desc-intro-title span{color:#FF2D9B;}
.ns-desc-intro-text{font-size:16px;color:rgba(10,10,10,0.65);line-height:1.8;max-width:640px;font-weight:500;}
.ns-desc-benefits{margin-bottom:40px;}
.ns-desc-benefits-title{font-family:'Bebas Neue',sans-serif;font-size:28px;letter-spacing:2px;color:#0a0a0a;margin-bottom:20px;}
.ns-desc-benefits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
.ns-desc-benefit{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border:3px solid #0a0a0a;background:#fff;transition:all 0.15s;cursor:default;}
.ns-desc-benefit:hover{background:#FF2D9B;transform:translate(-2px,-2px);box-shadow:4px 4px 0 #0a0a0a;}
.ns-desc-benefit:hover .ns-desc-benefit-name,
.ns-desc-benefit:hover .ns-desc-benefit-text{color:#fff;}
.ns-desc-benefit-icon{font-size:24px;flex-shrink:0;line-height:1;}
.ns-desc-benefit-name{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:14px;letter-spacing:1px;text-transform:uppercase;color:#0a0a0a;margin-bottom:3px;transition:color 0.15s;}
.ns-desc-benefit-text{font-size:12px;color:rgba(10,10,10,0.55);line-height:1.5;font-weight:500;transition:color 0.15s;}
.ns-desc-perfect{background:#0a0a0a;padding:32px;margin-bottom:40px;border:3px solid #0a0a0a;}
.ns-desc-perfect-title{font-family:'Bebas Neue',sans-serif;font-size:28px;letter-spacing:2px;color:#FF2D9B;margin-bottom:20px;}
.ns-desc-perfect-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.ns-desc-perfect-item{background:rgba(255,255,255,0.05);border:1px solid rgba(255,45,155,0.2);padding:16px 14px;text-align:center;transition:all 0.15s;}
.ns-desc-perfect-item:hover{background:rgba(255,45,155,0.15);border-color:rgba(255,45,155,0.5);}
.ns-desc-perfect-icon{font-size:28px;display:block;margin-bottom:8px;}
.ns-desc-perfect-label{display:block;visibility:visible;opacity:1;color:rgba(255,255,255,0.7);font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:11px;letter-spacing:2px;text-transform:uppercase;line-height:1.3;text-align:center;}
.ns-desc-flavor{display:grid !important;grid-template-columns:1fr 1fr !important;gap:0 !important;border:3px solid #0a0a0a !important;margin-bottom:40px !important;overflow:hidden !important;}
.ns-desc-flavor-visual{border-right:3px solid #0a0a0a !important;border-bottom:none !important;min-height:280px !important;display:flex !important;flex-direction:column !important;justify-content:center !important;padding:40px 32px !important;}
.ns-desc-flavor-emoji{font-size:64px;margin-bottom:16px;display:block;}
.ns-desc-flavor-name{font-family:'Bebas Neue',sans-serif;font-size:42px;letter-spacing:2px;line-height:0.95;margin-bottom:8px;}
.ns-desc-flavor-sub{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:12px;letter-spacing:3px;text-transform:uppercase;}
.ns-desc-flavor-details{padding:32px !important;background:#fff !important;display:flex !important;flex-direction:column !important;justify-content:center !important;gap:12px !important;}
.ns-desc-flavor-detail{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid rgba(0,0,0,0.06);}
.ns-desc-flavor-detail:last-child{border-bottom:none;}
.ns-desc-flavor-detail-icon{width:32px;height:32px;border:2px solid #0a0a0a;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;}
.ns-desc-flavor-detail-text{font-size:13px;color:#0a0a0a;font-weight:600;line-height:1.4;}
.ns-desc-flavor-detail-text strong{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:14px;letter-spacing:1px;text-transform:uppercase;display:block;margin-bottom:1px;}
.ns-desc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:3px solid #0a0a0a;margin-bottom:40px;}
.ns-desc-stat{padding:24px 16px;text-align:center;border-right:2px solid rgba(0,0,0,0.1);background:#F5F0E8;transition:background 0.15s;}
.ns-desc-stat:last-child{border-right:none;}
.ns-desc-stat:hover{background:#FF2D9B;}
.ns-desc-stat:hover .ns-desc-stat-num,
.ns-desc-stat:hover .ns-desc-stat-label{color:#fff;}
.ns-desc-stat-num{font-family:'Bebas Neue',sans-serif;font-size:42px;color:#0a0a0a;letter-spacing:2px;line-height:1;display:block;transition:color 0.15s;}
.ns-desc-stat-label{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:rgba(10,10,10,0.45);margin-top:4px;display:block;transition:color 0.15s;}
.ns-desc-usage{margin-bottom:40px;}
.ns-desc-usage-title{font-family:'Bebas Neue',sans-serif;font-size:28px;letter-spacing:2px;color:#0a0a0a;margin-bottom:20px;}
.ns-desc-usage-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.ns-desc-usage-step{border:3px solid #0a0a0a;padding:24px 20px;position:relative;background:#fff;box-shadow:4px 4px 0 #0a0a0a;}
.ns-desc-usage-num{font-family:'Bebas Neue',sans-serif;font-size:64px;color:rgba(0,0,0,0.06);line-height:1;margin-bottom:8px;}
.ns-desc-usage-icon{font-size:28px;display:block;margin-bottom:10px;}
.ns-desc-usage-step-title{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:15px;letter-spacing:1px;text-transform:uppercase;color:#0a0a0a;margin-bottom:6px;}
.ns-desc-usage-step-text{font-size:12px;color:rgba(10,10,10,0.55);line-height:1.6;}
.ns-desc-usage-step:nth-child(2){background:#FF2D9B;}
.ns-desc-usage-step:nth-child(2) .ns-desc-usage-num{color:rgba(255,255,255,0.1);}
.ns-desc-usage-step:nth-child(2) .ns-desc-usage-step-title,
.ns-desc-usage-step:nth-child(2) .ns-desc-usage-step-text{color:#fff;}
.ns-desc-usage-step:nth-child(2) .ns-desc-usage-step-text{color:rgba(255,255,255,0.7);}
.ns-desc-cta{background:#FF2D9B;border:3px solid #0a0a0a;padding:28px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;box-shadow:6px 6px 0 #0a0a0a;margin-bottom:8px;}
.ns-desc-cta-text{font-family:'Bebas Neue',sans-serif;font-size:clamp(22px,3vw,32px);color:#fff;letter-spacing:2px;line-height:1.1;}
.ns-desc-cta-btn{background:#FFE500;color:#0a0a0a;font-family:'Bebas Neue',sans-serif;font-size:18px;letter-spacing:2px;padding:14px 32px;border:3px solid #0a0a0a;text-decoration:none;display:inline-block;white-space:nowrap;transition:all 0.15s;box-shadow:3px 3px 0 #0a0a0a;}
.ns-desc-cta-btn:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 #0a0a0a;color:#0a0a0a;}

/* Mobile */
@media(max-width:768px){
  .ns-desc{padding:24px 16px !important;}
  .ns-desc-benefits-grid{grid-template-columns:1fr !important;}
  .ns-desc-perfect-grid{grid-template-columns:repeat(2,1fr) !important;}
  .ns-desc-flavor{grid-template-columns:1fr !important;}
  .ns-desc-flavor-visual{border-right:none !important;border-bottom:3px solid #0a0a0a !important;}
  .ns-desc-stats{grid-template-columns:repeat(2,1fr) !important;}
  .ns-desc-usage-steps{grid-template-columns:1fr !important;}
  .ns-desc-cta{flex-direction:column !important;align-items:flex-start !important;}
  .ns-desc-cta-btn{width:100% !important;text-align:center !important;}
}

/* Homepage yellow feature strip — mobile */
@media (max-width: 768px) {
  div[style*="background:var(--yellow)"][style*="grid-template-columns:1fr 1fr"] {
    grid-template-columns: 1fr !important;
    padding: 32px 16px !important;
    gap: 24px !important;
  }

  div[style*="background:var(--yellow)"][style*="grid-template-columns:1fr 1fr"] > div:last-child {
    grid-template-columns: 1fr 1fr !important;
  }

  /* Benefits grid — fix text cutting */
  div[style*="grid-template-columns:repeat(4,1fr)"][style*="border:3px solid var(--black)"] {
    grid-template-columns: 1fr 1fr !important;
  }

  div[style*="grid-template-columns:repeat(4,1fr)"][style*="border:3px solid var(--black)"] > div {
    border-right: none !important;
    border-bottom: 3px solid #0a0a0a !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
  }

  div[style*="grid-template-columns:repeat(4,1fr)"][style*="border:3px solid var(--black)"] .ns-desc-benefit-name,
  div[style*="grid-template-columns:repeat(4,1fr)"][style*="border:3px solid var(--black)"] div[style*="font-family:'Barlow Condensed'"] {
    word-break: break-word !important;
    hyphens: auto !important;
  }

  /* General benefits card fix */
  div[style*="padding:40px 32px"] {
    padding: 20px 16px !important;
    word-break: break-word !important;
  }

  div[style*="font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:16px"] {
    font-size: 13px !important;
    word-break: break-word !important;
    hyphens: auto !important;
  }
}

/* Homepage yellow feature strip cards — fix height on mobile */
@media (max-width: 768px) {
  div[style*="background:rgba(10,10,10,0.08)"] {
    min-height: unset !important;
    height: auto !important;
  }

  /* Fix the outer yellow section grid */
  div[style*="padding:32px 80px"][style*="grid-template-columns:1fr 1fr"] {
    grid-template-columns: 1fr !important;
    padding: 32px 16px !important;
  }

  /* Make feature mini cards 2 columns */
  div[style*="padding:32px 80px"] > div:last-child,
  div[style*="padding:32px 16px"] > div:last-child {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
  }
}

/* Cookie banner — NeuroSnax theme style */
.cookie-notice-container,
#cookie-notice,
.cmplz-cookiebanner,
.cc-window,
[class*="cookie-banner"],
[class*="cookiebanner"],
[id*="cookie-banner"] {
    background: #0a0a0a !important;
    border-top: 3px solid #FFE500 !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    color: rgba(255,255,255,0.7) !important;
    padding: 20px 24px !important;
}

/* Cookie text */
.cookie-notice-container p,
.cmplz-cookiebanner p,
.cc-message,
[class*="cookie-banner"] p {
    font-family: 'Barlow', sans-serif !important;
    font-size: 13px !important;
    color: rgba(255,255,255,0.6) !important;
    line-height: 1.6 !important;
}

/* Title */
.cookie-notice-container strong,
.cmplz-cookiebanner .cmplz-title,
[class*="cookie-banner"] strong {
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: 20px !important;
    letter-spacing: 2px !important;
    color: #FFE500 !important;
    display: block !important;
    margin-bottom: 8px !important;
}

/* Accept button */
.cookie-notice-container .button,
.cmplz-accept,
.cc-btn.cc-allow,
[class*="cookie"] [class*="accept"],
[class*="cookie"] [class*="allow"] {
    background: #FFE500 !important;
    color: #0a0a0a !important;
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: 16px !important;
    letter-spacing: 2px !important;
    border: 3px solid #0a0a0a !important;
    box-shadow: 3px 3px 0 #FF2D9B !important;
    padding: 10px 24px !important;
    border-radius: 0 !important;
    text-transform: uppercase !important;
}

/* Settings/customize button */
.cookie-notice-container .cn-set-cookie,
.cmplz-deny,
.cc-btn.cc-deny,
[class*="cookie"] [class*="settings"],
[class*="cookie"] [class*="dostosuj"] {
    background: transparent !important;
    color: rgba(255,255,255,0.5) !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 12px !important;
    letter-spacing: 2px !important;
    border: 2px solid rgba(255,255,255,0.2) !important;
    padding: 10px 20px !important;
    border-radius: 0 !important;
    text-transform: uppercase !important;
}

/* Move NeuroBOT button up on mobile to avoid sticky bar overlap */
@media (max-width: 768px) {
  #nb-trigger-fixed {
    bottom: 80px !important;
  }

  #nb-window-fixed {
    bottom: 140px !important;
  }
}

/* Team cards — smaller photos */
.on-card-avatar {
  aspect-ratio: 4/4 !important;
}

.on-card-name {
  font-size: 28px !important;
}

.on-team-grid {
  gap: 16px !important;
}

.on-team-card {
  max-width: 340px !important;
}

.on-team-section {
  padding: 60px !important;
}
.ns-section-tag {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 900 !important;
  font-size: 11px !important;
  letter-spacing: 5px !important;
  text-transform: uppercase !important;
  display: block !important;
  line-height: 1.4 !important;
  padding: 4px 0 !important;
  background: transparent !important;
}

/* Light backgrounds → pink */
.ns-products .ns-section-tag,
.ns-community .ns-section-tag,
section[style*="--off"] .ns-section-tag {
  color: #FF2D9B !important;
}

/* Reviews dark background → pink still works */
.ns-reviews .ns-section-tag {
  color: #FF2D9B !important;
  background: transparent !important;
}

/* Dark sections → yellow */
.ns-faq .ns-section-tag,
.ns-newsletter .ns-section-tag {
  color: #FFE500 !important;
}

.ns-section-tag {
  display: block !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  width: auto !important;
  max-width: fit-content !important;
  background: transparent !important;
}

/* Community section (pink bg) */
.ns-community .ns-section-tag {
  color: #fff !important;
}

/* FAQ section (off-white bg) */
.ns-faq .ns-section-tag {
  color: #FFE500 !important;
}

/* ══ TEAM SECTION — MOBILE ══ */
@media (max-width: 768px) {

  /* Stack cards vertically */
  .on-team-grid,
  div[style*="grid-template-columns:repeat(3,1fr)"],
  div[style*="grid-template-columns: repeat(3, 1fr)"] {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  /* Hide big "03" number */
  .on-team-count { display: none !important; }

  /* Photo height + centering */
  .on-card-avatar {
    height: 260px !important;
    aspect-ratio: unset !important;
    overflow: hidden !important;
  }
  .on-card-avatar img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center 15% !important;
  }

  /* Inline homepage team cards */
  div[style*="aspect-ratio:3/4"] {
    aspect-ratio: unset !important;
    height: 260px !important;
  }
  div[style*="aspect-ratio:3/4"] img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center 15% !important;
  }

  /* Reduce section padding */
  .on-team-section { padding: 40px 16px !important; }
  .on-team-title { font-size: 48px !important; }
  .on-team-header { margin-bottom: 24px !important; }
}

/* ══ REVIEWS CAROUSEL — MOBILE ══ */
@media (max-width: 768px) {

  /* Faster scroll on mobile */
  .ns-carousel-track {
    animation-duration: 18s !important;
  }

  /* Wider cards */
  .ns-rc {
    width: 82vw !important;
    max-width: 300px !important;
  }

  /* Photo height */
  .ns-rc-photo,
  .ns-rc-initials {
    height: 200px !important;
  }

  /* Header stacked */
  .ns-reviews-header {
    padding: 0 16px 32px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 20px !important;
  }

  /* Score block horizontal on mobile */
  .ns-reviews-score {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    padding: 14px 16px !important;
    text-align: left !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .ns-big-score { font-size: 48px !important; }

  /* UGC banner stacked */
  .ns-ugc-banner {
    padding: 16px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }
  .ns-ugc-handles {
    width: 100% !important;
    display: flex !important;
  }
  .ns-ugc-handle {
    flex: 1 !important;
    justify-content: center !important;
    font-size: 11px !important;
    padding: 10px 8px !important;
  }
}

/* ══ FIX 1: NeuroBOT button — move up so nothing hidden behind it ══ */
#neurobot-trigger,
.neurobot-trigger,
[id*="neurobot"],
[class*="neurobot-btn"],
[class*="neurobot-trigger"] {
  bottom: 80px !important; /* above mobile CTA bar */
  z-index: 9990 !important;
}

/* Also push mobile CTA bar above bottom safe area */
.ns-mobile-cta-bar {
  bottom: 0 !important;
  padding-bottom: env(safe-area-inset-bottom, 0px) !important;
  z-index: 9980 !important;
}

/* ══ FIX 3: How it works — 2-col grid, images centered ══ */
@media (max-width: 768px) {
  .ns-how-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    margin-bottom: 32px !important;
  }

  /* Each step takes full width of its column */
  .ns-how-grid > div {
    width: 100% !important;
  }

  /* Image container — full width, centered */
  .ns-how-grid > div > div:first-child {
    width: 100% !important;
    aspect-ratio: 3/4 !important;
    margin-bottom: 12px !important;
    box-shadow: 3px 3px 0 var(--yellow) !important;
  }

  /* Image fills container */
  .ns-how-grid > div > div:first-child img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  /* Step text smaller on mobile */
  .ns-how-grid > div > div:not(:first-child) {
    font-size: 12px !important;
  }

  /* Step numbers smaller */
  .ns-how-grid > div > div:first-child div[style*="font-size:20px"] {
    font-size: 14px !important;
    padding: 2px 7px !important;
  }

  /* Step title text smaller */
  .ns-how-grid > div > div:first-child div[style*="font-size:22px"] {
    font-size: 15px !important;
  }
}

/* Homepage product cards — fix image height */
.ns-products > div[style*="grid-template-columns:1fr 1fr"] > div > div:first-child {
  height: 220px !important;
  max-height: 220px !important;
}

/* Desktop — slightly taller */
@media (min-width: 769px) {
  .ns-products > div[style*="grid-template-columns:1fr 1fr"] > div > div:first-child {
    height: 260px !important;
    max-height: 260px !important;
  }
}

/* Flash toast hidden by default */
.ns-flash {
  transform: translateX(calc(100% + 40px)) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.ns-flash.show {
  transform: translateX(0) !important;
  opacity: 1 !important;
}
@media (max-width: 600px) {
  .ns-flash {
    transform: translateY(calc(100% + 40px)) !important;
  }
  .ns-flash.show {
    transform: translateY(0) !important;
  }
}

/* ══ CART ALIGNWIDE FIX ══ */
@media (max-width: 768px) {
  .wp-block-woocommerce-cart.alignwide,
  .wp-block-woocommerce-checkout.alignwide {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 768px) {
  /* The grid parent of the cart block — force single column */
  .ns-page-wrap > div,
  .ns-page-wrap > div[style] {
    display: block !important;
    width: 100% !important;
    grid-template-columns: 1fr !important;
  }

  /* Cart/checkout block full width */
  .wp-block-woocommerce-cart.alignwide,
  .wp-block-woocommerce-checkout.alignwide {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Homepage product cards — Dodaj+ full width */
@media (max-width: 768px) {
  .ns-ajax-cart[data-id] {
    width: 100% !important;
    display: block !important;
    box-sizing: border-box !important;
  }
}

/* Single product — DODAJ+ full width */
@media (max-width: 768px) {
  .ns-add-to-cart-wrap {
    display: block !important;
  }
  .ns-add-to-cart-wrap > div {
    width: 100% !important;
  }
  .ns-sp-btn-cart {
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* Products section title — force dark color */
.ns-products .ns-section-title,
.ns-products .ns-products-header .ns-section-title {
  color: #0a0a0a !important;
  -webkit-text-stroke: 0 !important;
}

.ns-products .ns-section-tag {
  color: #FF2D9B !important;
}

/* ══ SINGLE PRODUCT — ROOT FIX ══ */
@media (max-width: 768px) {
  .ns-sp-wrap {
    display: block !important;
    padding: 16px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .ns-sp-gallery,
  .ns-sp-info {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  .ns-sp-main-img {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .ns-sp-main-img img {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* ══ PRODUCT DESCRIPTION STYLES ══ */
.nsd{font-family:'Barlow',sans-serif;color:#0a0a0a;overflow:hidden;padding:0;margin:0;}
.nsd *{box-sizing:border-box;}
.nsd-intro{background:#FFE500;border:3px solid #0a0a0a;box-shadow:6px 6px 0 #FF2D9B;padding:40px;margin-bottom:32px;}
.nsd-intro-kicker{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:11px;letter-spacing:5px;text-transform:uppercase;color:rgba(10,10,10,0.5);margin-bottom:12px;}
.nsd-intro-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(40px,6vw,64px);line-height:0.9;letter-spacing:2px;color:#0a0a0a;margin-bottom:16px;}
.nsd-intro-title span{color:#FF2D9B;}
.nsd-intro-body{font-size:15px;color:rgba(10,10,10,0.7);line-height:1.8;max-width:560px;}
.nsd-stats{display:grid;grid-template-columns:repeat(4,1fr);background:#0a0a0a;border:3px solid #0a0a0a;margin-bottom:32px;}
.nsd-stat{padding:24px 12px;text-align:center;border-right:2px solid rgba(255,255,255,0.08);}
.nsd-stat:last-child{border-right:none;}
.nsd-stat-n{font-family:'Bebas Neue',sans-serif;font-size:44px;color:#FFE500;letter-spacing:2px;line-height:1;display:block;}
.nsd-stat-l{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:10px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.4);display:block;margin-top:4px;}
.nsd-bens{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:32px;}
.nsd-ben{border:3px solid #0a0a0a;padding:28px 24px;background:#fff;position:relative;overflow:hidden;transition:all 0.2s;cursor:default;}
.nsd-ben::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;}
.nsd-ben:nth-child(1)::before{background:#FFE500;}
.nsd-ben:nth-child(2)::before{background:#FF2D9B;}
.nsd-ben:nth-child(3)::before{background:#0057FF;}
.nsd-ben:nth-child(4)::before{background:#FF2D00;}
.nsd-ben:nth-child(5)::before{background:#FF2D9B;}
.nsd-ben:nth-child(6)::before{background:#FFE500;}
.nsd-ben:hover{background:#0a0a0a;box-shadow:6px 6px 0 #FF2D9B;transform:translate(-3px,-3px);}
.nsd-ben:hover .nsd-ben-title,.nsd-ben:hover .nsd-ben-desc{color:#fff;}
.nsd-ben-icon{font-size:28px;display:block;margin-bottom:12px;line-height:1;}
.nsd-ben-title{font-family:'Bebas Neue',sans-serif;font-size:20px;letter-spacing:2px;color:#0a0a0a;margin-bottom:6px;transition:color 0.2s;}
.nsd-ben-desc{font-size:13px;color:rgba(10,10,10,0.6);line-height:1.6;font-weight:500;transition:color 0.2s;}
.nsd-use{background:#0a0a0a;border:3px solid #0a0a0a;padding:32px;margin-bottom:32px;}
.nsd-use-title{font-family:'Bebas Neue',sans-serif;font-size:32px;letter-spacing:2px;color:#FFE500;margin-bottom:4px;}
.nsd-use-sub{font-size:13px;color:rgba(255,255,255,0.4);margin-bottom:24px;}
.nsd-use-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.nsd-use-card{background:rgba(255,255,255,0.05);border:2px solid rgba(255,255,255,0.1);padding:20px 12px;text-align:center;transition:all 0.2s;}
.nsd-use-card:hover{background:rgba(255,45,155,0.2);border-color:#FF2D9B;transform:translateY(-3px);}
.nsd-use-icon{font-size:28px;display:block;margin-bottom:10px;}
.nsd-use-lbl{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.6);line-height:1.4;}
.nsd-ing{border:3px solid #0a0a0a;margin-bottom:32px;overflow:hidden;}
.nsd-ing-header{background:#0a0a0a;padding:20px 28px;}
.nsd-ing-header-title{font-family:'Bebas Neue',sans-serif;font-size:28px;letter-spacing:2px;color:#FFE500;}
.nsd-ing-body{padding:24px 28px;background:#F5F0E8;}
.nsd-ing-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid rgba(0,0,0,0.08);}
.nsd-ing-row:last-child{border-bottom:none;}
.nsd-ing-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;}
.nsd-ing-info{flex:1;}
.nsd-ing-name{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#0a0a0a;margin-bottom:4px;}
.nsd-ing-bar{height:5px;background:rgba(0,0,0,0.1);}
.nsd-ing-fill{height:100%;}
.nsd-ing-pct{font-size:10px;color:rgba(10,10,10,0.4);font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:1px;margin-top:2px;}
.nsd-ing-amt{font-family:'Bebas Neue',sans-serif;font-size:20px;letter-spacing:1px;color:#0a0a0a;flex-shrink:0;min-width:72px;text-align:right;}
.nsd-zeros{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;}
.nsd-zero{display:flex;align-items:center;gap:8px;padding:10px 14px;background:rgba(34,197,94,0.08);border:2px solid rgba(34,197,94,0.3);}
.nsd-zero-lbl{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#15803d;flex:1;}
.nsd-zero-val{font-family:'Bebas Neue',sans-serif;font-size:18px;color:#15803d;}
.nsd-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px;}
.nsd-tag{background:#f0fdf4;border:2px solid #15803d;color:#15803d;font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:11px;letter-spacing:1px;padding:4px 10px;}
.nsd-cta{background:#FF2D9B;border:3px solid #0a0a0a;box-shadow:6px 6px 0 #0a0a0a;padding:32px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.nsd-cta-text{font-family:'Bebas Neue',sans-serif;font-size:clamp(28px,4vw,40px);color:#fff;letter-spacing:2px;line-height:1;}
.nsd-cta-text span{color:#FFE500;}
.nsd-cta-btn{display:inline-flex;align-items:center;gap:8px;background:#FFE500;color:#0a0a0a;font-family:'Bebas Neue',sans-serif;font-size:18px;letter-spacing:3px;padding:16px 32px;border:3px solid #0a0a0a;text-decoration:none;box-shadow:4px 4px 0 #0a0a0a;transition:all 0.15s;white-space:nowrap;flex-shrink:0;}
.nsd-cta-btn:hover{transform:translate(-3px,-3px);box-shadow:7px 7px 0 #0a0a0a;color:#0a0a0a;}

/* Description tab — remove max-width constraint */
#ns-tab-description > div {
  width:100% !important;
  max-width:100% !important;
  padding:0 !important;
}

@media(max-width:768px){
  .nsd-intro{padding:24px;}
  .nsd-stats{grid-template-columns:1fr 1fr;}
  .nsd-stat:nth-child(2){border-right:none;}
  .nsd-bens{grid-template-columns:1fr;}
  .nsd-use-grid{grid-template-columns:1fr 1fr;}
  .nsd-zeros{grid-template-columns:1fr;}
  .nsd-cta{flex-direction:column;align-items:flex-start;}
  .nsd-cta-btn{width:100%;justify-content:center;}
}

@media (min-width:1025px){
  .ns-sp-gallery .ns-sp-trust,
  .ns-sp-gallery .ns-sp-delivery,
  .ns-sp-gallery #nsBuyNowBtn{ margin-top:16px; }
  .ns-sp-gallery #nsBuyNowBtn{ display:flex; }
}

.ns-add-to-cart-wrap{
  display:block !important;
}
.ns-add-to-cart-wrap > div{
  width:100% !important;
}

/* ═══ MOBILE FIX: All Legal Pages ═══ */
@media (max-width: 768px) {

  /* Hero sections */
  .ns-legal-hero,
  .ns-contact-hero {
    padding: 40px 20px !important;
    border-bottom: 3px solid !important;
  }

  .ns-legal-hero h1,
  .ns-contact-hero h1 {
    font-size: 42px !important;
    line-height: 0.95 !important;
  }

  /* Body wrapper */
  .ns-legal-body {
    padding: 40px 20px !important;
    background: #f5f5f0;
  }

  /* Legal sections */
  .ns-legal-section {
    padding: 24px 16px !important;
    margin-bottom: 16px !important;
    box-shadow: 3px 3px 0 #0a0a0a !important;
    border: 3px solid #0a0a0a !important;
  }

  .ns-legal-section h3 {
    font-size: 16px !important;
    padding-bottom: 8px !important;
    margin-bottom: 16px !important;
  }

  .ns-legal-section p,
  .ns-legal-section li {
    font-size: 13px !important;
    line-height: 1.6 !important;
  }

  .ns-legal-section ul {
    padding-left: 16px !important;
  }

  /* Yellow highlight boxes */
  .ns-legal-highlight {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
    padding: 16px !important;
    margin: 12px 0 !important;
  }

  .ns-legal-highlight span {
    font-size: 24px !important;
  }

  .ns-legal-highlight > div:last-child {
    width: 100%;
  }

  /* Contact box */
  .ns-legal-contact {
    padding: 20px 16px !important;
    margin-top: 20px !important;
    border: 3px solid !important;
  }

  .ns-legal-contact p {
    font-size: 13px !important;
    margin-bottom: 6px !important;
  }

  .ns-legal-tag {
    font-size: 10px !important;
    padding: 4px 10px !important;
    margin-bottom: 12px !important;
  }

  /* Contact page cards */
  .ns-contact-cards {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    margin-top: 32px !important;
    box-shadow: 3px 3px 0 #0a0a0a !important;
  }

  .ns-contact-card {
    border-right: none !important;
    border-bottom: 3px solid #0a0a0a !important;
    padding: 20px 16px !important;
  }

  .ns-contact-card:last-child {
    border-bottom: none !important;
  }

  .ns-contact-icon {
    font-size: 28px !important;
    margin-bottom: 10px !important;
  }

  .ns-contact-type {
    font-size: 10px !important;
  }

  .ns-contact-title {
    font-size: 18px !important;
  }

  .ns-contact-value {
    font-size: 14px !important;
  }

  /* Contact layout stacking */
  .ns-contact-layout {
    grid-template-columns: 1fr !important;
    border-bottom: none !important;
  }

  .ns-contact-form-wrap {
    padding: 40px 20px !important;
    border-right: none !important;
    border-bottom: 3px solid #0a0a0a !important;
  }

  .ns-contact-form-wrap h2 {
    font-size: 36px !important;
  }

  .ns-contact-info {
    padding: 40px 20px !important;
  }

  .ns-contact-info h2 {
    font-size: 36px !important;
  }

  /* Form elements */
  .ns-form-input,
  .ns-form-textarea,
  .ns-form-select {
    font-size: 14px !important;
    padding: 12px 14px !important;
  }

  .ns-form-row {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .ns-btn-submit {
    font-size: 16px !important;
    padding: 16px 20px !important;
    box-shadow: 4px 4px 0 #FF2D9B !important;
  }

  /* Info blocks */
  .ns-info-block {
    margin-bottom: 16px !important;
    box-shadow: 3px 3px 0 #0a0a0a !important;
  }

  .ns-info-block-header {
    font-size: 12px !important;
    padding: 12px 16px !important;
  }

  .ns-info-row {
    font-size: 13px !important;
    padding: 8px 0 !important;
  }

  /* Social cards */
  .ns-contact-socials {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    box-shadow: 3px 3px 0 #0a0a0a !important;
    margin-top: 16px !important;
  }

  .ns-social-card {
    border-right: none !important;
    border-bottom: 3px solid #0a0a0a !important;
    padding: 16px !important;
  }

  .ns-social-card:nth-child(even) {
    border-right: none !important;
  }

  .ns-social-card:nth-child(3),
  .ns-social-card:nth-child(4) {
    border-bottom: none !important;
  }

  .ns-social-icon {
    width: 36px !important;
    height: 36px !important;
    font-size: 12px !important;
  }

  .ns-social-name {
    font-size: 12px !important;
  }

  /* FAQ section */
  .ns-contact-faq {
    padding: 40px 20px !important;
  }

  .ns-faq-layout {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  .ns-faq-list {
    box-shadow: 3px 3px 0 #0a0a0a !important;
  }

  .ns-faq-q {
    font-size: 14px !important;
    padding: 16px !important;
  }

  .ns-faq-plus {
    font-size: 18px !important;
    margin-left: 8px !important;
  }

  .ns-faq-a {
    font-size: 13px !important;
    padding: 12px 16px 16px !important;
  }

}

/* ═══ MOBILE FIX: Dostawa i Zwroty Page ═══ */
@media (max-width: 768px) {

  /* Main wrapper */
  .ns-legal {
    max-width: 100% !important;
    padding: 40px 20px !important;
  }

  /* Hero */
  .ns-legal-hero {
    padding: 40px 20px !important;
    margin-bottom: 0 !important;
    border-bottom: 3px solid #FFE500 !important;
  }

  .ns-legal-hero h1 {
    font-size: 42px !important;
    line-height: 0.95 !important;
    letter-spacing: 2px !important;
  }

  /* Body */
  .ns-legal-body {
    padding: 40px 20px !important;
    background: #f5f5f0;
  }

  /* Sections */
  .ns-legal-section {
    padding: 24px 16px !important;
    margin-bottom: 16px !important;
    box-shadow: 3px 3px 0 #0a0a0a !important;
    border: 3px solid #0a0a0a !important;
  }

  .ns-legal-section h3 {
    font-size: 16px !important;
    padding-bottom: 8px !important;
    margin-bottom: 16px !important;
    letter-spacing: 1px !important;
  }

  /* Subheadings (h4) */
  .ns-legal-section h4 {
    font-size: 13px !important;
    letter-spacing: 0.5px !important;
    margin: 14px 0 8px !important;
  }

  /* Paragraphs and lists */
  .ns-legal-section p {
    font-size: 13px !important;
    line-height: 1.6 !important;
    margin-bottom: 10px !important;
  }

  .ns-legal-section ul {
    padding-left: 16px !important;
    margin-bottom: 10px !important;
  }

  .ns-legal-section ul li {
    font-size: 13px !important;
    line-height: 1.6 !important;
    margin-bottom: 5px !important;
  }

  /* Contact section */
  .ns-legal-contact {
    padding: 20px 16px !important;
    margin-top: 20px !important;
    border: 3px solid #FFE500 !important;
    background: #0a0a0a;
  }

  .ns-legal-contact p {
    font-size: 13px !important;
    margin-bottom: 6px !important;
  }

  .ns-legal-contact a {
    word-break: break-word;
  }

  /* Date at bottom */
  .ns-legal-date {
    font-size: 11px !important;
    margin-top: 16px !important;
  }

  /* Tag styling */
  .ns-legal-tag {
    font-size: 10px !important;
    padding: 4px 10px !important;
    margin-bottom: 12px !important;
  }

}
/* Hide assurance box, buy button, and free shipping promo on mobile/tablet */
@media (max-width: 1024px) {
  .ns-sp-assurance {
    display: none !important;
  }

  #nsBuyNowBtn {
    display: none !important;
  }

  .ns-sp-price-promo {
    display: none !important;
  }
}